瀏覽代碼

Merge branch 'feature/0427-school' of http://git.dayaedu.com/yonge/mec into master_saas

zouxuan 2 年之前
父節點
當前提交
4e7d72ba3d

+ 10 - 21
.idea/httpRequests/http-requests-log.http

@@ -1,3 +1,13 @@
+GET http://127.0.0.1:8005/vipGroupManage/liveGroupDetail/96
+Authorization: bearer b897da27-5a37-47df-8e76-54d80a61a55d
+Connection: Keep-Alive
+User-Agent: Apache-HttpClient/4.5.14 (Java/17.0.6)
+Accept-Encoding: br,deflate,gzip,x-gzip
+
+<> 2023-06-02T163244.200.json
+
+###
+
 GET http://127.0.0.1:8005/open/sysConfig/queryByParamName?paramName=open_coop_id
 Connection: Keep-Alive
 User-Agent: Apache-HttpClient/4.5.14 (Java/17.0.6)
@@ -823,24 +833,3 @@ Accept-Encoding: br,deflate,gzip,x-gzip
 
 ###
 
-POST http://127.0.0.1:8005/open/school/staffSave
-Content-Type: application/json
-coopId: 19
-tenantId: 1
-Content-Length: 129
-Connection: Keep-Alive
-User-Agent: Apache-HttpClient/4.5.14 (Java/17.0.6)
-Accept-Encoding: br,deflate,gzip,x-gzip
-
-{
-  "schoolId": 3,
-  "userType": "ORCHESTRA_LEADER",
-  "username": "测试113",
-  "mobile": "19900990114",
-  "smsCode" : 666666
-}
-
-<> 2023-05-29T183339.200.json
-
-###
-

+ 10 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentRegistrationDao.java

@@ -540,6 +540,16 @@ public interface StudentRegistrationDao extends BaseDAO<Long, StudentRegistratio
                                                   @Param("musicGroupStatus") StudentMusicGroupStatusEnum musicGroupStatus);
 
     /**
+     * @param groupIds:
+     * @return java.util.List<com.ym.mec.biz.dal.entity.StudentRegistration>
+     * @describe 获取指定乐团中的注册学员
+     * @author Joburgess
+     * @date 2021/5/24 0024
+     */
+    List<StudentRegistration> findByMusicGroupIds1(@Param("groupIds") List<String> groupIds,
+                                                  @Param("musicGroupStatus") StudentMusicGroupStatusEnum musicGroupStatus);
+
+    /**
      * 获取支付中的缴费和审核的人数
      *
      * @param musicGroupId

+ 6 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/wrapper/SchoolActivityWrapper.java

@@ -120,6 +120,12 @@ public class SchoolActivityWrapper {
         @ApiModelProperty("合作单位ID")
         private Integer cooperationOrganId;
 
+        @ApiModelProperty("合作单位名称")
+        private String cooperationOrganName;
+
+        @ApiModelProperty("合作单位头像")
+        private String cooperationOrganLogo;
+
         @ApiModelProperty(value = "活动开始日期",required = true)
         @NotNull(message = "活动开始日期不能为空")
         private Date startTime;

+ 13 - 10
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java

@@ -5390,15 +5390,6 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
     public List<DailySummaryOfClassesForTheCurrentSemesterWrapper.DailySummaryOfClassesForTheCurrentSemesterDetailDto> getSummaryOfCurrentSemesterCourses(Integer coopId) {
 		//获取合作单位关联的所有乐团列表
 		List<String> musicGroupIds = musicGroupDao.findNormalByCooperationId(coopId);
-		if(CollectionUtils.isEmpty(musicGroupIds)){
-			return Collections.EMPTY_LIST;
-		}
-		//获取当前学期
-		Date date = new Date();
-		String startTerm = DateUtil.getStartTerm(date);
-		String endTerm = DateUtil.getEndTerm(date);
-		List<DailySummaryOfClassesForTheCurrentSemesterWrapper.DailySummaryOfClassesForTheCurrentSemesterDetailDto> summary =
-				courseScheduleDao.getSummaryOfCurrentSemesterCourses(musicGroupIds, startTerm, endTerm);
 		List<CourseSchedule.CourseScheduleType> courseTypeList = Arrays.asList(
 				CourseScheduleType.SINGLE,
 				CourseScheduleType.MIX,
@@ -5409,13 +5400,25 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 				CourseScheduleType.COMPREHENSIVE,
 				CourseScheduleType.CLASSROOM
 		);
+		if(CollectionUtils.isEmpty(musicGroupIds)){
+			return this.initClassOfSummary(courseTypeList,null);
+		}
+		//获取当前学期
+		Date date = new Date();
+		String startTerm = DateUtil.getStartTerm(date);
+		String endTerm = DateUtil.getEndTerm(date);
+		List<DailySummaryOfClassesForTheCurrentSemesterWrapper.DailySummaryOfClassesForTheCurrentSemesterDetailDto> summary =
+				courseScheduleDao.getSummaryOfCurrentSemesterCourses(musicGroupIds, startTerm, endTerm);
 		return this.initClassOfSummary(courseTypeList,summary);
     }
 
 	private List<DailySummaryOfClassesForTheCurrentSemesterWrapper.DailySummaryOfClassesForTheCurrentSemesterDetailDto>
 	initClassOfSummary(List<CourseSchedule.CourseScheduleType> courseTypeList,List<DailySummaryOfClassesForTheCurrentSemesterWrapper.DailySummaryOfClassesForTheCurrentSemesterDetailDto> summary){
 		Map<CourseScheduleType, DailySummaryOfClassesForTheCurrentSemesterWrapper.DailySummaryOfClassesForTheCurrentSemesterDetailDto>
-				map = summary.stream().collect(Collectors.groupingBy(e -> e.getScheduleType(), Collectors.collectingAndThen(Collectors.toList(), v -> v.get(0))));
+				map = new HashMap<>();
+		if(CollectionUtils.isNotEmpty(summary)){
+			map = summary.stream().collect(Collectors.groupingBy(e -> e.getScheduleType(), Collectors.collectingAndThen(Collectors.toList(), v -> v.get(0))));
+		}
 		List<DailySummaryOfClassesForTheCurrentSemesterWrapper.DailySummaryOfClassesForTheCurrentSemesterDetailDto> result = new ArrayList<>();
 		for (CourseScheduleType scheduleType : courseTypeList) {
 			DailySummaryOfClassesForTheCurrentSemesterWrapper.DailySummaryOfClassesForTheCurrentSemesterDetailDto dto = map.get(scheduleType);

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

@@ -527,6 +527,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
 				// 添加用户现金账户
 				sysUserCashAccountDao.insert(new SysUserCashAccount(userId, "CNY"));
 			}else {
+				student.setCurrentClass(si.getCurrentClass());
 				student.setCurrentGradeNum(SixPlusGradeEnum.get(si.getGrade()).getCode());
 				studentDao.update(student);
 			}

+ 10 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/SchoolActivityServiceImpl.java

@@ -3,6 +3,7 @@ package com.ym.mec.biz.service.impl;
 import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ym.mec.biz.dal.entity.CooperationOrgan;
 import com.ym.mec.biz.dal.entity.SchoolActivityDetail;
 import com.ym.mec.biz.dal.enums.ESchoolActivityStatus;
 import com.ym.mec.biz.dal.wrapper.SchoolActivityDetailWrapper;
@@ -36,6 +37,8 @@ public class SchoolActivityServiceImpl extends ServiceImpl<SchoolActivityMapper,
     @Autowired
     private SchoolActivityDetailUserService schoolActivityDetailUserService;
 
+    @Autowired
+    private CooperationOrganService cooperationOrganService;
 
     @Autowired
     private SysUserService sysUserService;
@@ -61,6 +64,13 @@ public class SchoolActivityServiceImpl extends ServiceImpl<SchoolActivityMapper,
             schoolActivityInfo.setStatus(ESchoolActivityStatus.PROCESSING);
         }
 
+        // 设置机构信息
+        CooperationOrgan cooperationOrgan = cooperationOrganService.get(schoolActivity.getId());
+        if (cooperationOrgan != null) {
+            schoolActivityInfo.setCooperationOrganName(cooperationOrgan.getName());
+            schoolActivityInfo.setCooperationOrganLogo(cooperationOrgan.getLogo());
+        }
+
         // 设置节目信息
         List<SchoolActivityDetailWrapper.SchoolActivityDetail> schoolActivityDetails = schoolActivityDetailService.selectListByActivityId(id);
 

+ 22 - 4
mec-biz/src/main/java/com/ym/mec/biz/service/impl/SchoolIndexStatServiceImpl.java

@@ -34,6 +34,8 @@ public class SchoolIndexStatServiceImpl implements SchoolIndexStatService {
     @Resource
     private LessonExaminationDao lessonExaminationDao;
 
+    private static final Map<String, String> gradeMap = createGradeMap();
+
     @Override
     public SchoolIndexStatDto stat(SchoolIndexStatWrapper.QueryDto queryDto) {
         List<String> musicGroupIds = new ArrayList<>();
@@ -46,7 +48,7 @@ public class SchoolIndexStatServiceImpl implements SchoolIndexStatService {
         if(CollectionUtils.isEmpty(musicGroupIds)){
             return result;
         }
-        List<StudentRegistration> studentRegistrations = studentRegistrationDao.findByMusicGroupIds(musicGroupIds, StudentMusicGroupStatusEnum.NORMAL);
+        List<StudentRegistration> studentRegistrations = studentRegistrationDao.findByMusicGroupIds1(musicGroupIds, StudentMusicGroupStatusEnum.NORMAL);
         if(CollectionUtils.isEmpty(studentRegistrations)){
             return result;
         }
@@ -57,9 +59,8 @@ public class SchoolIndexStatServiceImpl implements SchoolIndexStatService {
         //年级分布
         List<SchoolIndexStatWrapper.GradeDistribution> gradeDistributions = studentRegistrations.stream()
                 .map(e -> {
-                    if (e.getCurrentGrade() == null) {
-                        e.setCurrentGrade("一年级");
-                    }
+                    String gradeName = createGradeMap().getOrDefault(e.getCurrentGrade(), "一年级");
+                    e.setCurrentGrade(gradeName);
                     return e;
                 })
                 .collect(Collectors.groupingBy(
@@ -229,6 +230,23 @@ public class SchoolIndexStatServiceImpl implements SchoolIndexStatService {
             }
         }
     }
+    // 辅助方法:创建年级映射
+    private static Map<String, String> createGradeMap() {
+        Map<String, String> gradeMap = new HashMap<>();
+        gradeMap.put("1", "一年级");
+        gradeMap.put("2", "二年级");
+        gradeMap.put("3", "三年级");
+        gradeMap.put("4", "四年级");
+        gradeMap.put("5", "五年级");
+        gradeMap.put("6", "六年级");
+        gradeMap.put("7", "七年级");
+        gradeMap.put("8", "八年级");
+        gradeMap.put("9", "九年级");
+        gradeMap.put("10", "高一");
+        gradeMap.put("11", "高二");
+        gradeMap.put("12", "高三");
+        return gradeMap;
+    }
 
     // 定义自定义顺序的列表
     List<String> gradeOrder = Arrays.asList(

+ 16 - 0
mec-biz/src/main/resources/config/mybatis/StudentRegistrationMapper.xml

@@ -1347,6 +1347,22 @@
             AND music_group_status_ = #{musicGroupStatus, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
         </if>
     </select>
+    <select id="findByMusicGroupIds1" resultMap="StudentRegistration">
+        select sr.id_, sr.user_id_, sr.name_, sr.music_group_id_,s.current_grade_num_ current_grade_, sr.current_grade_num_, sr.current_grade_date_,
+        sr.current_class_, sr.subject_id_, sr.actual_subject_id_, sr.is_allow_adjust_, sr.kit_purchase_method_, sr.remark_,
+        sr.parents_name_, sr.parents_phone_, sr.parents_company_, sr.payment_status_, sr.class_group_id_, sr.temporary_course_fee_,
+        sr.music_group_status_, sr.surplus_course_fee_, sr.is_merge_, sr.paying_status_, sr.has_cloud_teacher_, sr.none_need_cloud_teacher_, sr.music_group_payment_calender_id_,
+        sr.membership_end_time_, sr.create_time_, sr.update_time_, sr.tenant_id_, sr.original_flag_, sr.expect_surplus_course_fee_
+        from student_registration sr
+        left join student s ON s.user_id_ = sr.user_id_
+        WHERE sr.music_group_id_ IN
+        <foreach collection="groupIds" item="groupId" open="(" close=")" separator=",">
+            #{groupId}
+        </foreach>
+        <if test="musicGroupStatus != null">
+            AND sr.music_group_status_ = #{musicGroupStatus, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
+        </if>
+    </select>
 
     <update id="quitAllStudent">
         UPDATE student_registration