Parcourir la source

add 退团加退云教练

周箭河 il y a 4 ans
Parent
commit
c283da98c9

+ 41 - 37
mec-biz/src/main/java/com/ym/mec/biz/service/impl/SubjectServiceImpl.java

@@ -1,16 +1,15 @@
 package com.ym.mec.biz.service.impl;
 
 import com.alibaba.fastjson.JSONObject;
-import com.ym.mec.biz.dal.dao.ChargeTypeOrganizationFeeDao;
-import com.ym.mec.biz.dal.dao.StudentRegistrationDao;
-import com.ym.mec.biz.dal.dao.SubjectDao;
-import com.ym.mec.biz.dal.dao.SubjectGoodsMapperDao;
+import com.ym.mec.biz.dal.dao.*;
 import com.ym.mec.biz.dal.dto.ConditionDto;
 import com.ym.mec.biz.dal.dto.SubFeeSettingDto;
 import com.ym.mec.biz.dal.dto.SubjectApplyDetailDto;
 import com.ym.mec.biz.dal.entity.ChargeTypeOrganizationFee;
+import com.ym.mec.biz.dal.entity.MusicGroup;
 import com.ym.mec.biz.dal.entity.Subject;
 import com.ym.mec.biz.dal.entity.SubjectGoodsMapper;
+import com.ym.mec.biz.dal.enums.CourseViewTypeEnum;
 import com.ym.mec.biz.dal.enums.YesOrNoEnum;
 import com.ym.mec.biz.dal.page.SubjectQueryInfo;
 import com.ym.mec.biz.service.SubjectService;
@@ -28,7 +27,7 @@ import java.util.*;
 import java.util.stream.Collectors;
 
 @Service
-public class SubjectServiceImpl extends BaseServiceImpl<Integer, Subject>  implements SubjectService {
+public class SubjectServiceImpl extends BaseServiceImpl<Integer, Subject> implements SubjectService {
 
     @Autowired
     private SubjectDao subjectDao;
@@ -38,6 +37,8 @@ public class SubjectServiceImpl extends BaseServiceImpl<Integer, Subject>  imple
     private SubjectGoodsMapperDao subjectGoodsMapperDao;
     @Autowired
     private ChargeTypeOrganizationFeeDao chargeTypeOrganizationFeeDao;
+    @Autowired
+    private MusicGroupDao musicGroupDao;
 
     @Override
     public BaseDAO<Integer, Subject> getDAO() {
@@ -52,19 +53,19 @@ public class SubjectServiceImpl extends BaseServiceImpl<Integer, Subject>  imple
     @Override
     public PageInfo<Subject> queryPageTree(SubjectQueryInfo queryInfo) {
         PageInfo<Subject> pageInfo = queryPage(queryInfo);
-        for (Subject subject:pageInfo.getRows()) {
-            subject = getTree(subject,queryInfo.getDelFlag(),queryInfo.getTenantId());
+        for (Subject subject : pageInfo.getRows()) {
+            subject = getTree(subject, queryInfo.getDelFlag(), queryInfo.getTenantId());
         }
         return pageInfo;
     }
 
     @Override
-    public List<Subject> findDefaultSubByChargeTypeId(Integer chargeTypeId,Integer organId,Integer number) {
+    public List<Subject> findDefaultSubByChargeTypeId(Integer chargeTypeId, Integer organId, Integer number) {
         List<Subject> subByChargeTypeId = subjectDao.findDefaultSubByChargeTypeId(chargeTypeId);
         ChargeTypeOrganizationFee byOrganId = chargeTypeOrganizationFeeDao.findByOrganId(chargeTypeId, organId);
-        if(byOrganId != null){
+        if (byOrganId != null) {
             BigDecimal bigDecimal = new BigDecimal(number);
-            subByChargeTypeId.forEach(e->{
+            subByChargeTypeId.forEach(e -> {
                 e.setFee(byOrganId.getCourseFee().multiply(bigDecimal));
             });
         }
@@ -74,41 +75,44 @@ public class SubjectServiceImpl extends BaseServiceImpl<Integer, Subject>  imple
     @Override
     public List<SubjectApplyDetailDto> findSubApplyDetail(String musicGroupId) {
         List<SubjectApplyDetailDto> subApplyDetail = subjectDao.findSubApplyDetail(musicGroupId);
+        MusicGroup musicGroup = musicGroupDao.get(musicGroupId);
 //        //统计当前乐团不同声部的报名人数
-        Map<Integer,Integer> applyNum = JSONObject.parseObject(JSONObject.toJSONString(MapUtil.convertIntegerMap(studentRegistrationDao.countApplyNum(musicGroupId))),HashMap.class);
-        Map<Integer, Integer> payNumMap = JSONObject.parseObject(JSONObject.toJSONString(MapUtil.convertIntegerMap(studentRegistrationDao.countPayNum(musicGroupId))),HashMap.class);
-        subApplyDetail.forEach(detail ->{
+        Map<Integer, Integer> applyNum = JSONObject.parseObject(JSONObject.toJSONString(MapUtil.convertIntegerMap(studentRegistrationDao.countApplyNum(musicGroupId))), HashMap.class);
+        Map<Integer, Integer> payNumMap = JSONObject.parseObject(JSONObject.toJSONString(MapUtil.convertIntegerMap(studentRegistrationDao.countPayNum(musicGroupId))), HashMap.class);
+        subApplyDetail.forEach(detail -> {
             Integer num = payNumMap.get(detail.getSubjectId());
-            detail.setPayNum(num == null?0:num);
-            num = applyNum.get(detail.getSubjectId());
-            detail.setApplyStudentNum(num == null?0:num);
+            detail.setPayNum(num == null ? 0 : num);
+            if (!musicGroup.getCourseViewType().equals(CourseViewTypeEnum.CLOUD_TEACHER)) {
+                num = applyNum.get(detail.getSubjectId());
+                detail.setApplyStudentNum(num == null ? 0 : num);
+            }
         });
         return subApplyDetail;
     }
 
     @Override
     public void upSetSubject(Subject subject) {
-        if(subject.getDelFlag() == YesOrNoEnum.YES){
+        if (subject.getDelFlag() == YesOrNoEnum.YES) {
             subjectDao.delete(subject.getId());
             return;
         }
         Integer parentId = upset(subject, null);
         List<Subject> subjects = subject.getSubjects();
-        if(subjects != null && subjects.size() > 0){
-            subjects.forEach(e->{
+        if (subjects != null && subjects.size() > 0) {
+            subjects.forEach(e -> {
                 upset(e, parentId);
             });
         }
     }
 
-    private Integer upset(Subject subject,Integer parentId){
-        if(parentId != null){
+    private Integer upset(Subject subject, Integer parentId) {
+        if (parentId != null) {
             subject.setParentSubjectId(parentId);
         }
-        if(subject.getId() != null){
+        if (subject.getId() != null) {
             subject.setUpdateTime(new Date());
             subjectDao.update(subject);
-        }else {
+        } else {
             subjectDao.insert(subject);
         }
         return subject.getId();
@@ -116,36 +120,36 @@ public class SubjectServiceImpl extends BaseServiceImpl<Integer, Subject>  imple
 
     @Override
     public void markGoods(List<SubjectGoodsMapper> subjectGoodsMappers) {
-        subjectGoodsMappers.forEach(e->{
+        subjectGoodsMappers.forEach(e -> {
             upsetGoods(e);
         });
     }
 
-    private void upsetGoods(SubjectGoodsMapper subjectGoodsMapper){
-        if(subjectGoodsMapper.getId() != null){
-            if(subjectGoodsMapper.getDelFlag()){
+    private void upsetGoods(SubjectGoodsMapper subjectGoodsMapper) {
+        if (subjectGoodsMapper.getId() != null) {
+            if (subjectGoodsMapper.getDelFlag()) {
                 subjectGoodsMapperDao.delete(subjectGoodsMapper.getId());
                 return;
             }
             subjectGoodsMapper.setUpdateTime(new Date());
             subjectGoodsMapperDao.update(subjectGoodsMapper);
-        }else {
+        } else {
             subjectGoodsMapperDao.insert(subjectGoodsMapper);
         }
     }
 
 
-    private Subject getTree(Subject sub,YesOrNoEnum yesOrNoEnum,Integer tenantId){
+    private Subject getTree(Subject sub, YesOrNoEnum yesOrNoEnum, Integer tenantId) {
         //得到根节点对象
         //获取子节点list
-        List<Subject> subjects = subjectDao.findByParentId(sub.getId(),yesOrNoEnum,tenantId);
+        List<Subject> subjects = subjectDao.findByParentId(sub.getId(), yesOrNoEnum, tenantId);
         //如果存在子节点
-        if(subjects != null && subjects.size() > 0) {
+        if (subjects != null && subjects.size() > 0) {
             //将子节点list放入父节点对象
             sub.setSubjects(subjects);
             //遍历子节点....
             for (Subject subject : subjects) {
-                getTree(subject,yesOrNoEnum,tenantId);
+                getTree(subject, yesOrNoEnum, tenantId);
             }
         }
         return sub;
@@ -163,15 +167,15 @@ public class SubjectServiceImpl extends BaseServiceImpl<Integer, Subject>  imple
 
     @Override
     public Map<Long, String> findSubjectMapBySubjectIdsList(List<String> subjectIdsList) {
-        if(CollectionUtils.isEmpty(subjectIdsList)){
+        if (CollectionUtils.isEmpty(subjectIdsList)) {
             return new HashMap<>();
         }
         String subjectIdsString = StringUtils.join(subjectIdsList, ",");
         String[] split = subjectIdsString.split(",");
-        List<String> subjectIds=new ArrayList<>(Arrays.asList(split));
+        List<String> subjectIds = new ArrayList<>(Arrays.asList(split));
         subjectIds = subjectIds.stream().distinct().collect(Collectors.toList());
-        List<Map<Long, String>> bySubjecIds = subjectDao.findBySubjecIds(StringUtils.join(subjectIds,","));
-        Map<Long,String> subjectIdAndName = MapUtil.convertMybatisMap(bySubjecIds);
+        List<Map<Long, String>> bySubjecIds = subjectDao.findBySubjecIds(StringUtils.join(subjectIds, ","));
+        Map<Long, String> subjectIdAndName = MapUtil.convertMybatisMap(bySubjecIds);
         return subjectIdAndName;
     }
 
@@ -182,7 +186,7 @@ public class SubjectServiceImpl extends BaseServiceImpl<Integer, Subject>  imple
 
     @Override
     public List<Subject> findBySubjectByIdList(List<Integer> subjectIdList) {
-        return subjectDao.findBySubjectByIdList(StringUtils.join(subjectIdList,","));
+        return subjectDao.findBySubjectByIdList(StringUtils.join(subjectIdList, ","));
     }
 
     @Override