Przeglądaj źródła

Merge remote-tracking branch 'origin/master'

# Conflicts:
#	mec-biz/src/main/resources/config/mybatis/StudentRepairMapper.xml
Joburgess 5 lat temu
rodzic
commit
1190568512

+ 5 - 0
cms/src/main/java/com/ym/mec/cms/controller/HelpCenterCatalogController.java

@@ -3,6 +3,7 @@ package com.ym.mec.cms.controller;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
+import io.swagger.annotations.ApiOperation;
 
 import java.util.Date;
 import java.util.List;
@@ -31,6 +32,7 @@ public class HelpCenterCatalogController extends BaseController {
 	@Autowired
 	private HelpCenterContentService helpCenterContentService;
 
+	@ApiOperation("分类列表分页查询")
 	@GetMapping(value = "list")
 	@ApiImplicitParams({ @ApiImplicitParam(name = "parentId", value = "父分类编号(可为空)", required = true, dataType = "Integer"),
 			@ApiImplicitParam(name = "status", value = "状态(1,显示 0,隐藏;可为空)", required = true, dataType = "Integer") })
@@ -39,6 +41,7 @@ public class HelpCenterCatalogController extends BaseController {
 		return succeed(dataList);
 	}
 
+	@ApiOperation("分类详情查询")
 	@GetMapping(value = "get")
 	@ApiImplicitParam(name = "id", value = "分类编号", required = true, dataType = "Integer", paramType = "path")
 	public Object findHelpCatalogById(Integer id) {
@@ -47,6 +50,7 @@ public class HelpCenterCatalogController extends BaseController {
 		return succeed(helpCenterCatalogService.get(id));
 	}
 
+	@ApiOperation("修改分类")
 	@PostMapping(value = "modify", consumes = MediaType.APPLICATION_FORM_URLENCODED_VALUE, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
 	public Object modifyHelpCatalog(HelpCenterCatalog helpCatalog) {
 		if (helpCatalog == null)
@@ -63,6 +67,7 @@ public class HelpCenterCatalogController extends BaseController {
 		}
 	}
 
+	@ApiOperation("删除分类")
 	@PostMapping(value = "delete", consumes = MediaType.APPLICATION_FORM_URLENCODED_VALUE, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
 	@ApiImplicitParam(name = "id", value = "分类编号", required = true, dataType = "Integer", paramType = "path")
 	public Object delHelpCatalog(Integer id) {

+ 5 - 0
cms/src/main/java/com/ym/mec/cms/controller/HelpCenterContentControlller.java

@@ -2,6 +2,7 @@ package com.ym.mec.cms.controller;
 
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiOperation;
 
 import java.util.Date;
 
@@ -31,6 +32,7 @@ public class HelpCenterContentControlller extends BaseController {
 	@Autowired
 	private HelpCenterCatalogService helpCenterCatalogService;
 
+	@ApiOperation("帮助中心内容列表分页查询")
 	@GetMapping(value = "list")
 	public Object findHelpContentByCondition(HelpCenterContentQueryInfo queryInfo) {
 
@@ -40,6 +42,7 @@ public class HelpCenterContentControlller extends BaseController {
 		return succeed(data);
 	}
 
+	@ApiOperation("帮助中心内容明细查询")
 	@GetMapping(value = "get")
 	@ApiImplicitParam(name = "id", value = "编号", required = true, dataType = "Integer", paramType = "path")
 	public Object findHelpContentByKey(Integer id) {
@@ -49,6 +52,7 @@ public class HelpCenterContentControlller extends BaseController {
 		return succeed(helpCenterContentService.get(id));
 	}
 
+	@ApiOperation("修改帮助中心内容")
 	@PostMapping(value = "modify", consumes = MediaType.APPLICATION_FORM_URLENCODED_VALUE, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
 	public Object modifyHelpContent(HelpCenterContent helpContent) {
 		if (helpContent == null) {
@@ -73,6 +77,7 @@ public class HelpCenterContentControlller extends BaseController {
 		}
 	}
 
+	@ApiOperation("删除帮助中心内容")
 	@PostMapping(value = "delete", consumes = MediaType.APPLICATION_FORM_URLENCODED_VALUE, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
 	@ApiImplicitParam(name = "id", value = "编号", required = true, dataType = "Integer", paramType = "path")
 	public Object delHelpContent(Integer id) {

+ 6 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CourseScheduleDao.java

@@ -1510,4 +1510,10 @@ public interface CourseScheduleDao extends BaseDAO<Long, CourseSchedule> {
      * @return
      */
     Date getLastTime(@Param("practiceGroupId") Long practiceGroupId, @Param("groupType") String groupType);
+
+    /**
+     * 重置上课学生人数
+     * @param courseScheduleId
+     */
+    void resetStudentNum(@Param("courseScheduleId") List<Long> courseScheduleId);
 }

+ 54 - 38
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentRepairDao.java

@@ -11,42 +11,58 @@ import java.util.Map;
 import java.util.Set;
 
 public interface StudentRepairDao extends com.ym.mec.common.dal.BaseDAO<Integer, StudentRepair> {
-     /**
-      * 获取学生列表
-      *
-      * @param params
-      * @return
-      */
-     List<BasicUserDto> getStudents(Map<String, Object> params);
-
-     /**
-      * 获取学生总数
-      *
-      * @param params
-      * @return
-      */
-     Integer getStudentsCount(Map<String, Object> params);
-
-     /**
-      * 获取学生乐团列表
-      *
-      * @param userIds
-      * @return
-      */
-     List<MusicGroup> getUserMusicGroup(@Param("userIds") Set<Integer> userIds);
-
-     /**
-      * 获取学生信息
-      *
-      * @param studentId
-      * @return
-      */
-     BasicUserDto getStudentInfo(@Param("studentId") Integer studentId);
-
-     /**
-      * 获取维修单信息
-      * @param id
-      * @return
-      */
-     StudentRepair getRepairInfo(@Param("id") Integer id);
+    /**
+     * 获取学生列表
+     *
+     * @param params
+     * @return
+     */
+    List<BasicUserDto> getStudents(Map<String, Object> params);
+
+    /**
+     * 获取学生总数
+     *
+     * @param params
+     * @return
+     */
+    Integer getStudentsCount(Map<String, Object> params);
+
+    /**
+     * 获取学生乐团列表
+     *
+     * @param userIds
+     * @return
+     */
+    List<MusicGroup> getUserMusicGroup(@Param("userIds") Set<Integer> userIds);
+
+    /**
+     * 获取学生信息
+     *
+     * @param studentId
+     * @return
+     */
+    BasicUserDto getStudentInfo(@Param("studentId") Integer studentId);
+
+    /**
+     * 获取维修单信息
+     *
+     * @param id
+     * @return
+     */
+    StudentRepair getRepairInfo(@Param("id") Integer id);
+
+    /**
+     * 获取乐团的维修技师
+     *
+     * @param studentId
+     * @return
+     */
+    BasicUserDto getStudentMusicGroupRepairer(@Param("studentId") Integer studentId);
+
+    /**
+     * 获取获取一个分部的维修技师
+     * @param organId
+     * @return
+     */
+    BasicUserDto getStudentOrganRepairer(@Param("organId") Integer organId);
 }

+ 0 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/StudentRepair.java

@@ -5,7 +5,6 @@ import java.util.Date;
 
 public class StudentRepair {
     private Integer id;
-
     /**
     * 维修单号
     */

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/StudentRepairService.java

@@ -59,5 +59,5 @@ public interface StudentRepairService extends BaseService<Integer, StudentRepair
      * @param studentId
      * @return
      */
-    BasicUserDto getRepairer(Integer studentId);
+    BasicUserDto getStudentRepairer(Integer studentId,Integer organId);
 }

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ClassGroupServiceImpl.java

@@ -711,7 +711,7 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
     public List<ImGroupModel> queryUserGroups(Integer userId, String search) {
         List<ImGroupModel> imGroupModels = classGroupDao.queryUserMusicGroups(userId, search);
         imGroupModels.addAll(classGroupDao.queryUserVipGroups(userId, search));
-        imGroupModels.addAll(classGroupDao.queryUserPracticeGroups(userId, search));
+//        imGroupModels.addAll(classGroupDao.queryUserPracticeGroups(userId, search));
         imGroupModels.addAll(classGroupDao.queryUserCommGroups(userId, search));
         if (imGroupModels != null && imGroupModels.size() > 0) {
             imGroupModels.forEach(e -> {

+ 2 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java

@@ -3994,6 +3994,8 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
         }
         teacherAttendanceDao.batchCleanCourseTeacherSignInfo(courseScheduleId);
         studentAttendanceDao.deleteByCourseSchedules(courseScheduleId);
+        //重置学生人数
+		courseScheduleDao.resetStudentNum(courseScheduleId);
     }
 
 	@Override

+ 7 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupServiceImpl.java

@@ -48,6 +48,8 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
     @Autowired
     private TeacherDao teacherDao;
     @Autowired
+    private StudentDao studentDao;
+    @Autowired
     private IdGeneratorService idGeneratorService;
     @Autowired
     private SchoolDao schoolDao;
@@ -1114,6 +1116,11 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
         teacherIds.addAll(teacherDao.findVipEducationalTeacherId(studentId));
         //获取对外课程务老师
         teacherIds.addAll(teacherDao.findCommEducationalTeacherId(studentId));
+        //获取关联的指导老师
+        Student student = studentDao.get(studentId);
+        if(student != null && student.getTeacherId() != null){
+            teacherIds.add(student.getTeacherId());
+        }
         if(teacherIds.size() > 0){
         	return teacherDao.queryTeacherBaseInfo(teacherIds,search);
         }

+ 7 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentAttendanceServiceImpl.java

@@ -471,7 +471,12 @@ public class StudentAttendanceServiceImpl extends BaseServiceImpl<Long, StudentA
 			studentAttendance.setMusicGroupId(classGroup.getMusicGroupId());
 			studentAttendance.setUserId(userId);
 			studentAttendance.setTeacherId(courseSchedule.getActualTeacherId());
-
+			if(signStatusEnum == SignStatusEnum.SIGN_IN){
+				if(courseSchedule.getStudentNum() == null){
+					courseSchedule.setStudentNum(0);
+				}
+				courseSchedule.setStudentNum(courseSchedule.getStudentNum() + 1);
+			}
 			studentAttendanceDao.insert(studentAttendance);
 		}else {
 			studentAttendance.setTeacherId(courseSchedule.getActualTeacherId());
@@ -495,7 +500,7 @@ public class StudentAttendanceServiceImpl extends BaseServiceImpl<Long, StudentA
 				studentAttendance.setSignInTime(date);
 
 				courseSchedule.setUpdateTime(date);
-				courseSchedule.setStudentNum((courseSchedule.getStudentNum() == null?0:courseSchedule.getStudentNum()) + 1);
+//				courseSchedule.setStudentNum((courseSchedule.getStudentNum() == null?0:courseSchedule.getStudentNum()) + 1);
 				courseScheduleDao.update(courseSchedule);
 			}
 		}else if(signStatusEnum == SignStatusEnum.SIGN_OUT){

+ 13 - 9
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentRepairServiceImpl.java

@@ -164,7 +164,7 @@ public class StudentRepairServiceImpl extends BaseServiceImpl<Integer, StudentRe
 
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public void repairSuccess(Integer id, String description,Integer repairStatus) {
+    public void repairSuccess(Integer id, String description, Integer repairStatus) {
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         if (sysUser == null) {
             throw new BizException("用户信息获取失败");
@@ -173,7 +173,7 @@ public class StudentRepairServiceImpl extends BaseServiceImpl<Integer, StudentRe
         if (studentRepair == null) {
             throw new BizException("维修信息不存在");
         }
-        if(repairStatus != null){
+        if (repairStatus != null) {
             studentRepair.setRepairStatus(1);
             studentRepair.setFinishTime(new Date());
         }
@@ -196,11 +196,11 @@ public class StudentRepairServiceImpl extends BaseServiceImpl<Integer, StudentRe
     @Override
     @Transactional(rollbackFor = Exception.class)
     public Map payRepair(StudentRepair repairInfo) throws Exception {
-        if(repairInfo.getSendType().equals(1) &&
-                (repairInfo.getContactName() ==null ||repairInfo.getContactName().isEmpty()) &&
-                (repairInfo.getContactMobile() ==null ||repairInfo.getContactMobile().isEmpty()) &&
-                (repairInfo.getAddress() ==null ||repairInfo.getAddress().isEmpty())
-        ){
+        if (repairInfo.getSendType().equals(1) &&
+                (repairInfo.getContactName() == null || repairInfo.getContactName().isEmpty()) &&
+                (repairInfo.getContactMobile() == null || repairInfo.getContactMobile().isEmpty()) &&
+                (repairInfo.getAddress() == null || repairInfo.getAddress().isEmpty())
+        ) {
             throw new BizException("邮寄信息必填");
         }
         Date date = new Date();
@@ -278,8 +278,12 @@ public class StudentRepairServiceImpl extends BaseServiceImpl<Integer, StudentRe
     }
 
     @Override
-    public BasicUserDto getRepairer(Integer studentId) {
-        return null;
+    public BasicUserDto getStudentRepairer(Integer studentId, Integer organId) {
+        BasicUserDto repairer = studentRepairDao.getStudentMusicGroupRepairer(studentId);
+        if (repairer == null) {
+            repairer = studentRepairDao.getStudentOrganRepairer(organId);
+        }
+        return repairer;
     }
 
 }

+ 7 - 1
mec-biz/src/main/resources/config/mybatis/CourseScheduleMapper.xml

@@ -2906,7 +2906,13 @@
         UPDATE course_schedule
         SET name_=#{name}
         WHERE group_type_ = #{groupType, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
-          AND music_group_id_ = #{groupId};
+          AND music_group_id_ = #{groupId}
+    </update>
+    <update id="resetStudentNum">
+        UPDATE course_schedule cs SET cs.student_num_ = 0 WHERE cs.id_ IN
+        <foreach collection="courseScheduleId" separator="," open="(" close=")" item="id">
+            #{id}
+        </foreach>
     </update>
 
     <select id="getStudentCourseScheduleNum" resultMap="com.ym.mec.biz.dal.dao.PracticeGroupDao.courseGroupExport">

+ 32 - 7
mec-biz/src/main/resources/config/mybatis/StudentRepairMapper.xml

@@ -31,7 +31,9 @@
     </resultMap>
     <!-- 根据主键查询一条记录 -->
     <select id="get" resultMap="StudentRepair">
-        SELECT * FROM student_repair WHERE id_=#{id}
+        SELECT *
+        FROM student_repair
+        WHERE id_ = #{id}
     </select>
 
     <insert id="insert" parameterType="com.ym.mec.biz.dal.entity.StudentRepair" useGeneratedKeys="true" keyColumn="id"
@@ -55,7 +57,6 @@
         #{updateTime,jdbcType=TIMESTAMP},#{repairStatus})
     </insert>
     <update id="update" parameterType="com.ym.mec.biz.dal.entity.StudentRepair">
-        <!--@mbg.generated-->
         UPDATE student_repair
         <set>
             <if test="transNo != null">
@@ -110,7 +111,7 @@
                 contact_name_ = #{contactName},
             </if>
             <if test="contactMobile != null">
-                contact_mobile_ = #{contactName},
+                contact_mobile_ = #{contactMobile},
             </if>
             <if test="address != null">
                 address_ = #{address},
@@ -228,9 +229,33 @@
     </select>
 
     <select id="getRepairInfo" resultMap="StudentRepair">
-        SELECT sr.*,su.phone_ employee_phone_,e.contact_address_ employee_address_ FROM student_repair sr
-        LEFT JOIN sys_user su ON su.id_=sr.employee_id_
-        LEFT JOIN employee e ON sr.employee_id_ = e.user_id_
+        SELECT sr.*, su.phone_ employee_phone_, e.contact_address_ employee_address_
+        FROM student_repair sr
+                 LEFT JOIN sys_user su ON su.id_ = sr.employee_id_
+                 LEFT JOIN employee e ON sr.employee_id_ = e.user_id_
         WHERE sr.id_ = #{id}
     </select>
-</mapper>
+
+    <select id="getStudentMusicGroupRepairer" resultMap="com.ym.mec.biz.dal.dao.MusicGroupDao.BasicUserDto">
+        SELECT su.real_name_ username_, su.id_ user_id_, su.avatar_ head_url_
+        FROM music_group mg
+                 LEFT JOIN student_registration sr on sr.music_group_id_ = mg.id_
+                 LEFT JOIN sys_user su ON su.id_ = sr.id_
+        WHERE sr.user_id_ = #{studentId}
+          AND mg.status_ = 'PROGRESS'
+          AND mg.repair_user_id_ IS NOT NULL
+        ORDER BY id_ DESC
+        LIMIT 1
+    </select>
+
+    <select id="getStudentOrganRepairer" resultMap="com.ym.mec.biz.dal.dao.MusicGroupDao.BasicUserDto">
+        SELECT su.real_name_ username_, su.id_ user_id_, su.avatar_ head_url_
+        FROM employee e
+                 LEFT JOIN sys_user su ON su.id_ = e.user_id_
+                 LEFT JOIN sys_user_role sur ON sur.user_id_ = su.id_
+        WHERE FIND_IN_SET(#{organId}, e.organ_id_list_)
+          AND sur.role_id_ = 37
+        ORDER BY RAND()
+        LIMIT 1
+    </select>
+</mapper>

+ 2 - 0
mec-biz/src/main/resources/config/mybatis/TeacherMapper.xml

@@ -983,6 +983,8 @@
         SELECT cssp.user_id_ FROM practice_group pg
         LEFT JOIN course_schedule_student_payment cssp ON pg.id_ = cssp.music_group_id_
         WHERE pg.educational_teacher_id_ = #{teacherId} AND cssp.group_type_ = 'PRACTICE'
+        UNION ALL
+        SELECT s.user_id_ FROM student s WHERE s.teacher_id_ = #{teacherId}
     </select>
     <select id="queryCourseClassTeacherIds" resultType="java.lang.Integer">
         SELECT csts.user_id_ FROM music_group mg

+ 1 - 1
mec-student/src/main/java/com/ym/mec/student/controller/RepairController.java

@@ -74,7 +74,7 @@ public class RepairController extends BaseController {
         if (sysUser == null) {
             return failed(HttpStatus.FORBIDDEN, "请登录");
         }
-        return succeed(studentRepairService.getRepairer(sysUser.getId()));
+        return succeed(studentRepairService.getStudentRepairer(sysUser.getId(),sysUser.getOrganId()));
     }
 
 

+ 2 - 1
mec-web/src/main/java/com/ym/mec/web/controller/StudentRepairController.java

@@ -17,6 +17,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpStatus;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
@@ -67,7 +68,7 @@ public class StudentRepairController extends BaseController {
 
 
     @ApiOperation("维修完成")
-    @GetMapping(value = "/repairSuccess")
+    @PostMapping(value = "/repairSuccess")
     @PreAuthorize("@pcs.hasPermissions('studentRepair/repairSuccess')")
     public HttpResponseResult repairSuccess(Integer id,String description,Integer repairStatus) {
         studentRepairService.repairSuccess(id,description,repairStatus);