Ver código fonte

增加班级调整接口

周箭河 5 anos atrás
pai
commit
3142eedc0f

+ 110 - 100
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentRegistrationDao.java

@@ -14,104 +14,114 @@ import java.util.Map;
 
 public interface StudentRegistrationDao extends BaseDAO<Long, StudentRegistration> {
 
-	/**
-	 * 获取乐团学员报名详情
-	 *
-	 * @param params
-	 * @return
-	 */
-	List<StudentApplyDetailDto> queryStudentDetailPage(Map<String, Object> params);
-
-	/**
-	 * 获取乐团学员报名详情条数
-	 *
-	 * @param params
-	 * @return
-	 */
-	int queryStudentDetailCount(Map<String, Object> params);
-
-	/**
-	 * 根据乐团编号和声部获取缴费学员人数
-	 *
-	 * @param musicGroupId
-	 * @return
-	 */
-	List<Map<Integer, Integer>> countPayNum(@Param("musicGroupId") String musicGroupId);
-
-	/**
-	 * 学生报名缴费金额详情
-	 *
-	 * @param studentId
-	 * @param musicGroupId
-	 * @return
-	 */
-	StudentFeeDto queryFeeDetail(Integer studentId, String musicGroupId);
-
-	/**
-	 * 获取乐团声部未分配的班级的学生
-	 *
-	 * @param musicGroupId    乐团id
-	 * @param actualSubjectId 科目id
-	 * @return
-	 */
-	List<StudentRegistration> getNoClassStuBySubjectId(@Param("musicGroupId") String musicGroupId, @Param("actualSubjectId") String actualSubjectId);
-
-	/**
-	 * 获取乐团声部未分配学生数
-	 *
-	 * @param musicGroupId
-	 * @return
-	 */
-	List<Map<Integer, Long>> getNoClassStuCountBySubjectId(@Param("musicGroupId") String musicGroupId);
-
-	/**
-	 * 根据乐团id和user_id 更新
-	 *
-	 * @param studentRegistration
-	 * @return
-	 */
-	Integer updateByUserIdAndMusicGroupId(@Param("studentRegistration") StudentRegistration studentRegistration);
-
-	/**
-	 * 查询学生信息
-	 *
-	 * @param userId
-	 * @return
-	 */
-	StudentInfo queryStudentInfo(Integer userId);
-
-	/**
-	 * 查询用户指定乐团的报名信息
-	 *
-	 * @param userId       用户编号
-	 * @param musicGroupId 乐团编号
-	 * @return
-	 */
-	StudentRegistration queryByUserIdAndMusicGroupId(@Param("userId") Integer userId, @Param("musicGroupId") String musicGroupId);
-
-
-	/**
-	 * 查询手机是否已注册
-	 *
-	 * @param musicGroupId
-	 * @param parentsPhone
-	 * @return
-	 */
-	StudentRegistration getByPhoneAndMusicGroupId(@Param("musicGroupId") String musicGroupId, @Param("parentsPhone") String parentsPhone);
-
-	/**
-	 * 查询用户是否存在
-	 *
-	 * @param phone
-	 * @return
-	 */
-	SysUser getSysUserByPhone(String phone);
-
-	/**
-	 * 获取班级学生
-	 * @param musicGroupId
-	 * @param classGroupId
-	 * @return
-	 */
-	List<StudentRegistration> findClassGroupStu(@Param("musicGroupId") String musicGroupId, @Param("classGroupId") Integer classGroupId);
+    /**
+     * 获取乐团学员报名详情
+     *
+     * @param params
+     * @return
+     */
+    List<StudentApplyDetailDto> queryStudentDetailPage(Map<String, Object> params);
+
+    /**
+     * 获取乐团学员报名详情条数
+     *
+     * @param params
+     * @return
+     */
+    int queryStudentDetailCount(Map<String, Object> params);
+
+    /**
+     * 根据乐团编号和声部获取缴费学员人数
+     *
+     * @param musicGroupId
+     * @return
+     */
+    List<Map<Integer, Integer>> countPayNum(@Param("musicGroupId") String musicGroupId);
+
+    /**
+     * 学生报名缴费金额详情
+     *
+     * @param studentId
+     * @param musicGroupId
+     * @return
+     */
+    StudentFeeDto queryFeeDetail(Integer studentId, String musicGroupId);
+
+    /**
+     * 获取乐团声部未分配的班级的学生
+     *
+     * @param musicGroupId    乐团id
+     * @param actualSubjectId 科目id
+     * @return
+     */
+    List<StudentRegistration> getNoClassStuBySubjectId(@Param("musicGroupId") String musicGroupId, @Param("actualSubjectId") String actualSubjectId);
+
+    /**
+     * 获取乐团声部未分配学生数
+     *
+     * @param musicGroupId
+     * @return
+     */
+    List<Map<Integer, Long>> getNoClassStuCountBySubjectId(@Param("musicGroupId") String musicGroupId);
+
+    /**
+     * 根据乐团id和user_id 更新
+     *
+     * @param studentRegistration
+     * @return
+     */
+    Integer updateByUserIdAndMusicGroupId(@Param("studentRegistration") StudentRegistration studentRegistration);
+
+    /**
+     * 查询学生信息
+     *
+     * @param userId
+     * @return
+     */
+    StudentInfo queryStudentInfo(Integer userId);
+
+    /**
+     * 查询用户指定乐团的报名信息
+     *
+     * @param userId       用户编号
+     * @param musicGroupId 乐团编号
+     * @return
+     */
+    StudentRegistration queryByUserIdAndMusicGroupId(@Param("userId") Integer userId, @Param("musicGroupId") String musicGroupId);
+
+
+    /**
+     * 查询手机是否已注册
+     *
+     * @param musicGroupId
+     * @param parentsPhone
+     * @return
+     */
+    StudentRegistration getByPhoneAndMusicGroupId(@Param("musicGroupId") String musicGroupId, @Param("parentsPhone") String parentsPhone);
+
+    /**
+     * 查询用户是否存在
+     *
+     * @param phone
+     * @return
+     */
+    SysUser getSysUserByPhone(String phone);
+
+    /**
+     * 获取班级学生
+     *
+     * @param musicGroupId
+     * @param classGroupId
+     * @return
+     */
+    List<StudentRegistration> findClassGroupStu(@Param("musicGroupId") String musicGroupId, @Param("classGroupId") Integer classGroupId);
+
+    /**
+     * 查询乐团的学生
+     *
+     * @param musicGroupId
+     * @param actualSubjectId
+     * @return
+     */
+    List<StudentRegistration> findMusicGroupStudent(@Param("musicGroupId") String musicGroupId, @Param("actualSubjectId") Integer actualSubjectId);
 }

+ 12 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/MusicGroup.java

@@ -1,6 +1,7 @@
 package com.ym.mec.biz.dal.entity;
 
 import com.ym.mec.biz.dal.enums.MusicGroupStatusEnum;
+import com.ym.mec.biz.dal.enums.SalarySettlementTypeEnum;
 import com.ym.mec.biz.dal.enums.YesOrNoEnum;
 
 import io.swagger.annotations.ApiModelProperty;
@@ -58,6 +59,9 @@ public class MusicGroup {
 	
 	@ApiModelProperty(value = "课程形态",required = false)
 	private String courseForm;
+
+	@ApiModelProperty(value = "老师课酬结算方式",required = false)
+	private SalarySettlementTypeEnum settlementType;
 	
 	/**  */
 	private java.util.Date createTime;
@@ -344,6 +348,14 @@ public class MusicGroup {
 		this.operatorUserId = operatorUserId;
 	}
 
+	public SalarySettlementTypeEnum getSettlementType() {
+		return settlementType;
+	}
+
+	public void setSettlementType(SalarySettlementTypeEnum settlementType) {
+		this.settlementType = settlementType;
+	}
+
 	@Override
 	public String toString() {
 		return ToStringBuilder.reflectionToString(this);

+ 9 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/StudentRegistrationService.java

@@ -148,4 +148,13 @@ public interface StudentRegistrationService extends BaseService<Long, StudentReg
 	 */
 	StudentPaymentOrder updateApplyOrder(StudentPaymentOrder studentPaymentOrder);
 
+	/**
+	 * 获取乐团科目的学生
+	 *
+	 * @param musicGroupId    乐团id
+	 * @param actualSubjectId 科目id
+	 * @return
+	 */
+	List<StudentRegistration> getMusicGroupStu(String musicGroupId, Integer actualSubjectId);
+
 }

+ 5 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentRegistrationServiceImpl.java

@@ -447,4 +447,9 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
 
         return studentPaymentOrder;
     }
+
+    @Override
+    public List<StudentRegistration> getMusicGroupStu(String musicGroupId, Integer actualSubjectId) {
+        return studentRegistrationDao.findMusicGroupStudent(musicGroupId,actualSubjectId);
+    }
 }

+ 4 - 0
mec-biz/src/main/resources/config/mybatis/MusicGroupMapper.xml

@@ -26,6 +26,7 @@
 		<result column="parent_meeting_time_" property="parentMeetingTime" />
 		<result column="img_" property="img" />
 		<result column="director_user_id_" property="directorUserId" />
+		<result column="settlement_type_" property="settlementType" />
 	</resultMap>
 
 	<!-- 根据主键查询一条记录 -->
@@ -119,6 +120,9 @@
 			<if test="directorUserId != null">
 				director_user_id_ = #{directorUserId},
 			</if>
+			<if test="settlementType != null">
+				settlement_type = #{settlementType},
+			</if>
 		</set>
 		WHERE id_ = #{id}
 	</update>

+ 23 - 10
mec-biz/src/main/resources/config/mybatis/StudentRegistrationMapper.xml

@@ -30,7 +30,7 @@
                 typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
         <result column="music_group_status_" property="musicGroupStatus"/>
     </resultMap>
-    
+
     <resultMap type="com.ym.mec.biz.dal.dto.StudentInfo" id="StudentInfo">
         <result column="id_" property="id"/>
         <result column="username_" property="username"/>
@@ -198,7 +198,8 @@
     </resultMap>
     <select id="queryStudentDetailPage" resultMap="studentApplyDetail">
         SELECT sr.name_ username_,sr.parents_name_,sr.current_class_,sr.current_grade_,
-        su.gender_,sr.is_allow_adjust_, s.name_ subject_name_,ss.name_ actual_subject_name_,sr.parents_phone_,sr.payment_status_
+        su.gender_,sr.is_allow_adjust_, s.name_ subject_name_,ss.name_
+        actual_subject_name_,sr.parents_phone_,sr.payment_status_
         FROM student_registration sr
         LEFT JOIN sys_user su ON sr.subject_id_ = su.id_
         LEFT JOIN `subject` s ON sr.subject_id_ = s.id_
@@ -231,7 +232,7 @@
         SELECT sr.* FROM student_registration sr
         WHERE sr.user_id_ NOT IN (
         SELECT DISTINCT cgsm.user_id_ FROM class_group_student_mapper cgsm
-        LEFT JOIN class_group cg ON cg.id_ =  cgsm.class_group_id_
+        LEFT JOIN class_group cg ON cg.id_ = cgsm.class_group_id_
         WHERE cg.music_group_id_ = #{musicGroupId})
         AND sr.music_group_id_ = #{musicGroupId}
         <if test="actualSubjectId != null">
@@ -244,21 +245,23 @@
         SELECT COUNT(DISTINCT sr.user_id_) `value`,sr.actual_subject_id_ `key` FROM student_registration sr
         WHERE sr.user_id_ NOT IN (
         SELECT DISTINCT cgsm.user_id_ FROM class_group_student_mapper cgsm
-        LEFT JOIN class_group cg ON cg.id_ =  cgsm.class_group_id_
+        LEFT JOIN class_group cg ON cg.id_ = cgsm.class_group_id_
         WHERE cg.music_group_id_ = #{musicGroupId})
         AND sr.music_group_id_ = #{musicGroupId} GROUP BY sr.actual_subject_id_
     </select>
 
     <update id="updateByUserIdAndMusicGroupId" parameterType="com.ym.mec.biz.dal.entity.StudentRegistration">
-        UPDATE student_registration SET class_group_id_ = #{studentRegistration.classGroupId} WHERE user_id_ = #{studentRegistration.userId} AND music_group_id_ = #{studentRegistration.musicGroupId}
+        UPDATE student_registration SET class_group_id_ = #{studentRegistration.classGroupId} WHERE user_id_ =
+        #{studentRegistration.userId} AND music_group_id_ = #{studentRegistration.musicGroupId}
     </update>
-    
+
     <select id="queryStudentInfo" resultMap="StudentInfo">
-        SELECT u.*,sr.name_,sr.current_class_,sr.current_grade_,sr.actual_subject_id_ FROM sys_user u left join student_registration  sr on u.id_ = sr.user_id_ where u.id_ = #{userId} order by sr.create_time_ desc limit 0,1
+        SELECT u.*,sr.name_,sr.current_class_,sr.current_grade_,sr.actual_subject_id_ FROM sys_user u left join
+        student_registration sr on u.id_ = sr.user_id_ where u.id_ = #{userId} order by sr.create_time_ desc limit 0,1
     </select>
-    
+
     <select id="queryByUserIdAndMusicGroupId" resultMap="StudentRegistration" parameterType="map">
-    	select * from student_registration where music_group_id_ = #{musicGroupId} and user_id_ = #{userId}
+        select * from student_registration where music_group_id_ = #{musicGroupId} and user_id_ = #{userId}
     </select>
 
     <!-- 根据乐团编号和手机号查询注册乐团注册信息-->
@@ -295,6 +298,16 @@
 
     <!-- 获取班级下的学生 -->
     <select id="findClassGroupStu" resultMap="StudentRegistration">
-        SELECT * FROM student_registration WHERE music_group_id_= #{musicGroupId} AND FIND_IN_SET(#{classGroupId},class_group_id_)
+        SELECT * FROM student_registration WHERE music_group_id_= #{musicGroupId} AND
+        FIND_IN_SET(#{classGroupId},class_group_id_)
+    </select>
+
+    <!-- 获取乐团的学生 -->
+    <select id="findMusicGroupStudent" resultMap="StudentRegistration">
+        SELECT * FROM student_registration WHERE music_group_id_ = #{musicGroup}
+        <if test="actualSubjectId != null and actualSubjectId !=''">
+            AND actual_subject_id_ = #{actualSubjectId}
+        </if>
+        AND payment_status_ = 1
     </select>
 </mapper>

+ 11 - 2
mec-web/src/main/java/com/ym/mec/web/controller/StudentRegistrationController.java

@@ -56,7 +56,7 @@ public class StudentRegistrationController extends BaseController {
     @ApiOperation(value = "批量调剂学生报名专业")
     @PostMapping("/batchUpdateSubject")
     @PreAuthorize("@pcs.hasPermissions('studentRegistration/batchUpdateSubject')")
-    public Object batchUpdateSubject(String userId,Integer subId) {
+    public Object batchUpdateSubject(String userId, Integer subId) {
         if (StringUtils.isEmpty(userId) || subId == null) {
             return failed();
         }
@@ -75,7 +75,7 @@ public class StudentRegistrationController extends BaseController {
     @PreAuthorize("@pcs.hasPermissions('studentRegistration/queryFeeDetail')")
     @ApiImplicitParams({@ApiImplicitParam(name = "studentId", value = "学生编号", required = true, dataType = "Integer"),
             @ApiImplicitParam(name = "musicGroupId", value = "乐团编号", required = true, dataType = "String")})
-    public Object queryFeeDetail(String studentId,String musicGroupId) {
+    public Object queryFeeDetail(String studentId, String musicGroupId) {
         if (StringUtils.isEmpty(studentId) || StringUtils.isEmpty(musicGroupId)) {
             return failed("参数校验异常");
         }
@@ -100,4 +100,13 @@ public class StudentRegistrationController extends BaseController {
         return succeed(studentRegistrationService.findClassGroupStu(musicGroupId, classGroupId));
     }
 
+    @ApiOperation(value = "获取乐团的学生")
+    @GetMapping("/getMusicGroupStu")
+    @PreAuthorize("@pcs.hasPermissions('studentRegistration/getMusicGroupStu')")
+    @ApiImplicitParams({@ApiImplicitParam(name = "musicGroupId", value = "乐团编号", required = true, dataType = "String"),
+            @ApiImplicitParam(name = "actualSubjectId", value = "科目(声部)id,", required = true, dataType = "int")})
+    public Object getMusicGroupStu(String musicGroupId, Integer actualSubjectId) {
+        return succeed(studentRegistrationService.getMusicGroupStu(musicGroupId, actualSubjectId));
+    }
+
 }