package com.sztzjy.linkCommerce.mapper; import com.sztzjy.linkCommerce.entity.TeachingClassStudent; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import java.util.List; @Mapper public interface TeachingClassStudentMapper { long countByTeachingClassId(String teachingClassId); long countByStudentUserIdAndTeachingClassId(@Param("studentUserId") String studentUserId, @Param("teachingClassId") String teachingClassId); long countByStudentUserIdExcludingTeachingClass(@Param("studentUserId") String studentUserId, @Param("teachingClassId") String teachingClassId); int insertSelective(TeachingClassStudent record); TeachingClassStudent selectActiveByStudentUserId(String studentUserId); TeachingClassStudent selectByStudentUserIdAndTeachingClassId(@Param("studentUserId") String studentUserId, @Param("teachingClassId") String teachingClassId); int exitActiveByStudentUserIdExceptClass(@Param("studentUserId") String studentUserId, @Param("teachingClassId") String teachingClassId); int updateMembershipToActive(@Param("studentUserId") String studentUserId, @Param("teachingClassId") String teachingClassId, @Param("adminClassId") String adminClassId, @Param("joinReason") String joinReason); int deleteByTeachingClassId(String teachingClassId); int deleteByStudentUserIdAndTeachingClassId(@Param("studentUserId") String studentUserId, @Param("teachingClassId") String teachingClassId); List selectByTeachingClassId(String teachingClassId); }