浏览代码

Merge remote-tracking branch 'origin/master'

Joburgess 4 年之前
父节点
当前提交
3a1b39ca6e
共有 24 个文件被更改,包括 205 次插入127 次删除
  1. 12 3
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/MusicGroupQuitDao.java
  2. 2 2
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentPaymentOrderDetailDao.java
  3. 13 2
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/SubjectDao.java
  4. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/TeacherDao.java
  5. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/dal/dto/MusicGroupStudentApplyDto.java
  6. 11 1
      mec-biz/src/main/java/com/ym/mec/biz/dal/dto/MusicalListDetailDto.java
  7. 2 2
      mec-biz/src/main/java/com/ym/mec/biz/dal/dto/PracticeGroupStatisDto.java
  8. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/dal/dto/PracticeStatisDto.java
  9. 11 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dto/StudentManageBaseInfoOfMusicGroupDto.java
  10. 2 3
      mec-biz/src/main/java/com/ym/mec/biz/service/StudentPaymentOrderDetailService.java
  11. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/service/TeacherService.java
  12. 9 4
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/HfMemberSserviceImpl.java
  13. 17 17
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupServiceImpl.java
  14. 70 62
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentManageServiceImpl.java
  15. 11 9
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentPaymentOrderDetailServiceImpl.java
  16. 3 3
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherServiceImpl.java
  17. 9 3
      mec-biz/src/main/resources/config/mybatis/HfMemberMapper.xml
  18. 4 0
      mec-biz/src/main/resources/config/mybatis/MusicGroupQuitMapper.xml
  19. 1 1
      mec-biz/src/main/resources/config/mybatis/StudentPaymentOrderDetailMapper.xml
  20. 14 4
      mec-biz/src/main/resources/config/mybatis/SubjectMapper.xml
  21. 1 1
      mec-biz/src/main/resources/config/mybatis/TeacherMapper.xml
  22. 1 2
      mec-student/src/main/java/com/ym/mec/student/controller/StudentOrderController.java
  23. 5 1
      mec-web/src/main/java/com/ym/mec/web/controller/AdapayController.java
  24. 3 3
      mec-web/src/main/java/com/ym/mec/web/controller/ExportController.java

+ 12 - 3
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/MusicGroupQuitDao.java

@@ -2,16 +2,25 @@ package com.ym.mec.biz.dal.dao;
 
 
 import com.ym.mec.biz.dal.entity.MusicGroupQuit;
 import com.ym.mec.biz.dal.entity.MusicGroupQuit;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.dal.BaseDAO;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
 
 
 public interface MusicGroupQuitDao extends BaseDAO<Long, MusicGroupQuit> {
 public interface MusicGroupQuitDao extends BaseDAO<Long, MusicGroupQuit> {
 
 
     /**
     /**
+     * @param musicGroupId: 乐团编号
+     * @return int
      * @describe 统计指定乐团退团人数
      * @describe 统计指定乐团退团人数
      * @author Joburgess
      * @author Joburgess
      * @date 2019/10/28
      * @date 2019/10/28
-     * @param musicGroupId: 乐团编号
-     * @return int
      */
      */
     int countMusicGroupQuitNum(String musicGroupId);
     int countMusicGroupQuitNum(String musicGroupId);
-	
+
+    /**
+     * 获取用户退出的乐团
+     * @param userId
+     * @return
+     */
+    List<MusicGroupQuit> getUserMusicQuit(@Param("userId") Integer userId);
 }
 }

+ 2 - 2
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentPaymentOrderDetailDao.java

@@ -1,6 +1,6 @@
 package com.ym.mec.biz.dal.dao;
 package com.ym.mec.biz.dal.dao;
 
 
-import com.ym.mec.biz.dal.dto.musicalListDetailDto;
+import com.ym.mec.biz.dal.dto.MusicalListDetailDto;
 import com.ym.mec.biz.dal.entity.StudentPaymentOrderDetail;
 import com.ym.mec.biz.dal.entity.StudentPaymentOrderDetail;
 import com.ym.mec.biz.dal.enums.DealStatusEnum;
 import com.ym.mec.biz.dal.enums.DealStatusEnum;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.dal.BaseDAO;
@@ -53,7 +53,7 @@ public interface StudentPaymentOrderDetailDao extends BaseDAO<Long, StudentPayme
      * @param musicGroupId
      * @param musicGroupId
      * @return
      * @return
      */
      */
-    List<musicalListDetailDto> getMusicalListDetail(String musicGroupId);
+    List<MusicalListDetailDto> getMusicalListDetail(String musicGroupId);
 
 
     /**
     /**
      * 获取商品名称列表
      * 获取商品名称列表

+ 13 - 2
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/SubjectDao.java

@@ -3,6 +3,7 @@ package com.ym.mec.biz.dal.dao;
 import com.ym.mec.biz.dal.dto.ConditionDto;
 import com.ym.mec.biz.dal.dto.ConditionDto;
 import com.ym.mec.biz.dal.dto.StudentAttendanceViewDto;
 import com.ym.mec.biz.dal.dto.StudentAttendanceViewDto;
 import com.ym.mec.biz.dal.dto.SubjectApplyDetailDto;
 import com.ym.mec.biz.dal.dto.SubjectApplyDetailDto;
+import com.ym.mec.biz.dal.entity.StudentRegistration;
 import com.ym.mec.biz.dal.entity.Subject;
 import com.ym.mec.biz.dal.entity.Subject;
 import com.ym.mec.biz.dal.enums.YesOrNoEnum;
 import com.ym.mec.biz.dal.enums.YesOrNoEnum;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.dal.BaseDAO;
@@ -106,8 +107,8 @@ public interface SubjectDao extends BaseDAO<Integer, Subject> {
      * @param userIds: 用户编号列表
      * @param userIds: 用户编号列表
      * @return java.util.List<java.util.Map<java.lang.Integer,java.lang.String>>
      * @return java.util.List<java.util.Map<java.lang.Integer,java.lang.String>>
      */
      */
-    List<Map<Integer,String>> findByMusicGroupAndUsers(@Param("musicGroupId") String musicGroupId,
-                                                       @Param("userIds") List<Integer> userIds);
+    List<Map<Integer,String>> findByMusicGroupUserSubject(@Param("musicGroupId") String musicGroupId,
+                                                          @Param("userIds") List<Integer> userIds);
 
 
     /**
     /**
      * @describe
      * @describe
@@ -142,4 +143,14 @@ public interface SubjectDao extends BaseDAO<Integer, Subject> {
      * @return
      * @return
      */
      */
     String findNames(String subjectIdList);
     String findNames(String subjectIdList);
+
+
+    /**
+     * 获取学生报名的声部
+     * @param musicGroupId
+     * @param userIds
+     * @return
+     */
+    List<StudentRegistration> getRegisterSubject(@Param("musicGroupId") String musicGroupId,
+                                                 @Param("userIds") List<Integer> userIds);
 }
 }

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/TeacherDao.java

@@ -229,7 +229,7 @@ public interface TeacherDao extends BaseDAO<Integer, Teacher> {
      * @param params
      * @param params
      * @return
      * @return
      */
      */
-    List<musicGroupStudentApplyDto> queryMusicGroupStudentApply(Map<String, Object> params);
+    List<MusicGroupStudentApplyDto> queryMusicGroupStudentApply(Map<String, Object> params);
 
 
     /**
     /**
      * COUNT乐团学员报名列表
      * COUNT乐团学员报名列表

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/musicGroupStudentApplyDto.java → mec-biz/src/main/java/com/ym/mec/biz/dal/dto/MusicGroupStudentApplyDto.java

@@ -3,7 +3,7 @@ package com.ym.mec.biz.dal.dto;
 import java.math.BigDecimal;
 import java.math.BigDecimal;
 import java.util.Date;
 import java.util.Date;
 
 
-public class musicGroupStudentApplyDto {
+public class MusicGroupStudentApplyDto {
     private Integer userId;
     private Integer userId;
 
 
     private String userName;
     private String userName;

+ 11 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/musicalListDetailDto.java → mec-biz/src/main/java/com/ym/mec/biz/dal/dto/MusicalListDetailDto.java

@@ -4,7 +4,7 @@ import com.ym.mec.biz.dal.enums.KitGroupPurchaseTypeEnum;
 
 
 import java.math.BigDecimal;
 import java.math.BigDecimal;
 
 
-public class musicalListDetailDto {
+public class MusicalListDetailDto {
     private Long paymentOrderId;
     private Long paymentOrderId;
 
 
     private Integer userId;
     private Integer userId;
@@ -27,6 +27,8 @@ public class musicalListDetailDto {
 
 
     private BigDecimal orderAmount;
     private BigDecimal orderAmount;
 
 
+    private String subjectName;
+
     public Long getPaymentOrderId() {
     public Long getPaymentOrderId() {
         return paymentOrderId;
         return paymentOrderId;
     }
     }
@@ -114,4 +116,12 @@ public class musicalListDetailDto {
     public void setOrderAmount(BigDecimal orderAmount) {
     public void setOrderAmount(BigDecimal orderAmount) {
         this.orderAmount = orderAmount;
         this.orderAmount = orderAmount;
     }
     }
+
+    public String getSubjectName() {
+        return subjectName;
+    }
+
+    public void setSubjectName(String subjectName) {
+        this.subjectName = subjectName;
+    }
 }
 }

+ 2 - 2
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/practiceGroupStatisDto.java → mec-biz/src/main/java/com/ym/mec/biz/dal/dto/PracticeGroupStatisDto.java

@@ -3,7 +3,7 @@ package com.ym.mec.biz.dal.dto;
 import java.math.BigDecimal;
 import java.math.BigDecimal;
 import java.util.List;
 import java.util.List;
 
 
-public class practiceGroupStatisDto {
+public class PracticeGroupStatisDto {
     private List<PracticeGroupsDto> practiceGroupsDtoList;
     private List<PracticeGroupsDto> practiceGroupsDtoList;
     private BigDecimal totalMoney;
     private BigDecimal totalMoney;
     private Integer totalNum = 0;
     private Integer totalNum = 0;
@@ -17,7 +17,7 @@ public class practiceGroupStatisDto {
     private BigDecimal monthBuyMoney = BigDecimal.ZERO;
     private BigDecimal monthBuyMoney = BigDecimal.ZERO;
     private BigDecimal monthRenewMoney= BigDecimal.ZERO;
     private BigDecimal monthRenewMoney= BigDecimal.ZERO;
 
 
-    public practiceGroupStatisDto() {
+    public PracticeGroupStatisDto() {
     }
     }
 
 
     public List<PracticeGroupsDto> getPracticeGroupsDtoList() {
     public List<PracticeGroupsDto> getPracticeGroupsDtoList() {

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/practiceStatisDto.java → mec-biz/src/main/java/com/ym/mec/biz/dal/dto/PracticeStatisDto.java

@@ -5,7 +5,7 @@ import io.swagger.annotations.ApiModelProperty;
 import java.math.BigDecimal;
 import java.math.BigDecimal;
 import java.util.List;
 import java.util.List;
 
 
-public class practiceStatisDto {
+public class PracticeStatisDto {
     @ApiModelProperty(value = "个分部数据", required = false)
     @ApiModelProperty(value = "个分部数据", required = false)
     private List<Practice4OrganDto> practice4OrganDtoList;
     private List<Practice4OrganDto> practice4OrganDtoList;
     @ApiModelProperty(value = "体验人数", required = false)
     @ApiModelProperty(value = "体验人数", required = false)

+ 11 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/StudentManageBaseInfoOfMusicGroupDto.java

@@ -35,6 +35,9 @@ public class StudentManageBaseInfoOfMusicGroupDto {
     @ApiModelProperty(value = "加入乐团时间",required = false)
     @ApiModelProperty(value = "加入乐团时间",required = false)
     private Date joinMusicGroupDate;
     private Date joinMusicGroupDate;
 
 
+    @ApiModelProperty(value = "退出乐团时间",required = false)
+    private Date quitMusicGroupDate;
+
     @ApiModelProperty(value = "科目ID",required = false)
     @ApiModelProperty(value = "科目ID",required = false)
     private Integer subjectId;
     private Integer subjectId;
 
 
@@ -138,4 +141,12 @@ public class StudentManageBaseInfoOfMusicGroupDto {
     public void setKitPurchaseMethod(KitPurchaseMethodEnum kitPurchaseMethod) {
     public void setKitPurchaseMethod(KitPurchaseMethodEnum kitPurchaseMethod) {
         this.kitPurchaseMethod = kitPurchaseMethod;
         this.kitPurchaseMethod = kitPurchaseMethod;
     }
     }
+
+    public Date getQuitMusicGroupDate() {
+        return quitMusicGroupDate;
+    }
+
+    public void setQuitMusicGroupDate(Date quitMusicGroupDate) {
+        this.quitMusicGroupDate = quitMusicGroupDate;
+    }
 }
 }

+ 2 - 3
mec-biz/src/main/java/com/ym/mec/biz/service/StudentPaymentOrderDetailService.java

@@ -1,12 +1,11 @@
 package com.ym.mec.biz.service;
 package com.ym.mec.biz.service;
 
 
-import com.ym.mec.biz.dal.dto.musicalListDetailDto;
+import com.ym.mec.biz.dal.dto.MusicalListDetailDto;
 import com.ym.mec.biz.dal.entity.Goods;
 import com.ym.mec.biz.dal.entity.Goods;
 import com.ym.mec.biz.dal.entity.StudentPaymentOrderDetail;
 import com.ym.mec.biz.dal.entity.StudentPaymentOrderDetail;
 import com.ym.mec.biz.dal.enums.DealStatusEnum;
 import com.ym.mec.biz.dal.enums.DealStatusEnum;
 import com.ym.mec.common.exception.BizException;
 import com.ym.mec.common.exception.BizException;
 import com.ym.mec.common.service.BaseService;
 import com.ym.mec.common.service.BaseService;
-import org.apache.ibatis.annotations.Param;
 
 
 import java.util.List;
 import java.util.List;
 
 
@@ -63,7 +62,7 @@ public interface StudentPaymentOrderDetailService extends BaseService<Long, Stud
      * @param musicGroupId
      * @param musicGroupId
      * @return
      * @return
      */
      */
-    List<musicalListDetailDto> getMusicalListDetail(String musicGroupId);
+    List<MusicalListDetailDto> getMusicalListDetail(String musicGroupId);
 
 
     /**
     /**
      * 获取订单的乐器信息
      * 获取订单的乐器信息

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

@@ -139,7 +139,7 @@ public interface TeacherService extends BaseService<Integer, Teacher> {
      * @param queryInfo
      * @param queryInfo
      * @return
      * @return
      */
      */
-    PageInfo<musicGroupStudentApplyDto> queryMusicGroupStudentApply(queryMusicGroupStudentQueryInfo queryInfo);
+    PageInfo<MusicGroupStudentApplyDto> queryMusicGroupStudentApply(queryMusicGroupStudentQueryInfo queryInfo);
 
 
     /**
     /**
      * 获取分部下教师
      * 获取分部下教师

+ 9 - 4
mec-biz/src/main/java/com/ym/mec/biz/service/impl/HfMemberSserviceImpl.java

@@ -8,6 +8,7 @@ import com.ym.mec.common.exception.BizException;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
 import com.ym.mec.thirdparty.adapay.CorpMember;
 import com.ym.mec.thirdparty.adapay.CorpMember;
 import com.ym.mec.thirdparty.adapay.SettleAccount;
 import com.ym.mec.thirdparty.adapay.SettleAccount;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.annotation.Transactional;
@@ -116,12 +117,11 @@ public class HfMemberSserviceImpl extends BaseServiceImpl<Integer, HfMember> imp
         }
         }
         hfMember.setCardNo(cardNo);
         hfMember.setCardNo(cardNo);
         hfMember.setBankCode(bankCode);
         hfMember.setBankCode(bankCode);
-        if (hfMemberDao.update(hfMember) <= 0) {
-            throw new BizException("绑卡失败,请重试");
-        }
 
 
         //删除结算账户
         //删除结算账户
-        SettleAccount.executeDeleteSettleAccount(hfMember.getSettleAccountId(), memberId);
+        if (StringUtils.isNotBlank(hfMember.getSettleAccountId())) {
+            SettleAccount.executeDeleteSettleAccount(hfMember.getSettleAccountId(), memberId);
+        }
 
 
         Map<String, Object> accountInfo = new HashMap<String, Object>();
         Map<String, Object> accountInfo = new HashMap<String, Object>();
         accountInfo.put("card_id", cardNo);
         accountInfo.put("card_id", cardNo);
@@ -134,6 +134,11 @@ public class HfMemberSserviceImpl extends BaseServiceImpl<Integer, HfMember> imp
 
 
         //创建结算账户
         //创建结算账户
         Map<String, Object> objectMap = SettleAccount.executeCreateSettleAccount(memberId, accountInfo);
         Map<String, Object> objectMap = SettleAccount.executeCreateSettleAccount(memberId, accountInfo);
+
+        hfMember.setSettleAccountId(objectMap.get("id").toString());
+        if (hfMemberDao.update(hfMember) <= 0) {
+            throw new BizException("绑卡失败,请重试");
+        }
         return objectMap;
         return objectMap;
     }
     }
 }
 }

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

@@ -2268,23 +2268,23 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
         musicGroupBuildLogDao.insert(new MusicGroupBuildLog(musicGroupId, event, sysUser.getId(), ""));
         musicGroupBuildLogDao.insert(new MusicGroupBuildLog(musicGroupId, event, sysUser.getId(), ""));
         musicGroup.setStatus(MusicGroupStatusEnum.PREPARE);
         musicGroup.setStatus(MusicGroupStatusEnum.PREPARE);
         musicGroupDao.update(musicGroup);
         musicGroupDao.update(musicGroup);
-        if (musicGroup.getOwnershipType() != null && musicGroup.getOwnershipType() == CooperationOrgan.OwnershipType.OWN) {
-            //给家长发送乐团基础训练课短信
-            //获取所有乐团学员列表
-            List<StudentRegistration> students = studentRegistrationDao.queryStudentByMusicGroupId(musicGroupId);
-            if (students != null && students.size() > 0) {
-                // 获取所有家长电话
-                Set<String> parentsPhones = students.stream().map(StudentRegistration::getParentsPhone).collect(Collectors.toSet());
-                // 获取对应家长的用户编号
-                Map<Integer, String> userIds = MapUtil.convertMybatisMap(studentRegistrationDao.findParentId(StringUtils.join(parentsPhones, ",")));
-                userIds = JSONObject.parseObject(JSONObject.toJSONString(userIds), HashMap.class);
-                if (userIds != null && userIds.size() > 0) {
-                    String studentApplyUrl = sysConfigDao.findConfigValue(SysConfigService.STUDENT_APPLY_URL) + musicGroupId;
-                    String serverPhone = sysConfigDao.findConfigValue(SysConfigService.SERVER_PHONE);
-                    sysMessageService.batchSendMessage(MessageSender.YIMEI, MessageTypeEnum.SMS_BASICS_SKILL_APPLY_MESSAGE, userIds, null, 0, "", "", musicGroup.getName(), studentApplyUrl, serverPhone);
-                }
-            }
-        }
+//        if (musicGroup.getOwnershipType() != null && musicGroup.getOwnershipType() == CooperationOrgan.OwnershipType.OWN) {
+//            //给家长发送乐团基础训练课短信
+//            //获取所有乐团学员列表
+//            List<StudentRegistration> students = studentRegistrationDao.queryStudentByMusicGroupId(musicGroupId);
+//            if (students != null && students.size() > 0) {
+//                // 获取所有家长电话
+//                Set<String> parentsPhones = students.stream().map(StudentRegistration::getParentsPhone).collect(Collectors.toSet());
+//                // 获取对应家长的用户编号
+//                Map<Integer, String> userIds = MapUtil.convertMybatisMap(studentRegistrationDao.findParentId(StringUtils.join(parentsPhones, ",")));
+//                userIds = JSONObject.parseObject(JSONObject.toJSONString(userIds), HashMap.class);
+//                if (userIds != null && userIds.size() > 0) {
+//                    String studentApplyUrl = sysConfigDao.findConfigValue(SysConfigService.STUDENT_APPLY_URL) + musicGroupId;
+//                    String serverPhone = sysConfigDao.findConfigValue(SysConfigService.SERVER_PHONE);
+//                    sysMessageService.batchSendMessage(MessageSender.YIMEI, MessageTypeEnum.SMS_BASICS_SKILL_APPLY_MESSAGE, userIds, null, 0, "", "", musicGroup.getName(), studentApplyUrl, serverPhone);
+//                }
+//            }
+//        }
         Set<Integer> roleIds = new HashSet<>(1);
         Set<Integer> roleIds = new HashSet<>(1);
         roleIds.add(SysUserRole.SECTION_MANAGER);
         roleIds.add(SysUserRole.SECTION_MANAGER);
         sysMessageService.batchSeoMessage(musicGroupDao.queryUserIdByRoleId(roleIds, musicGroup.getOrganId()), MessageTypeEnum.BACKSTAGE_MUSIC_GROUP_MARKING, "", musicGroup.getName());
         sysMessageService.batchSeoMessage(musicGroupDao.queryUserIdByRoleId(roleIds, musicGroup.getOrganId()), MessageTypeEnum.BACKSTAGE_MUSIC_GROUP_MARKING, "", musicGroup.getName());

+ 70 - 62
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentManageServiceImpl.java

@@ -4,10 +4,7 @@ import com.ym.mec.auth.api.client.SysUserFeignService;
 import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.dao.*;
 import com.ym.mec.biz.dal.dao.*;
 import com.ym.mec.biz.dal.dto.*;
 import com.ym.mec.biz.dal.dto.*;
-import com.ym.mec.biz.dal.entity.Student;
-import com.ym.mec.biz.dal.entity.StudentRegistration;
-import com.ym.mec.biz.dal.entity.SysUserCashAccount;
-import com.ym.mec.biz.dal.entity.Teacher;
+import com.ym.mec.biz.dal.entity.*;
 import com.ym.mec.biz.dal.enums.YesOrNoEnum;
 import com.ym.mec.biz.dal.enums.YesOrNoEnum;
 import com.ym.mec.biz.dal.page.*;
 import com.ym.mec.biz.dal.page.*;
 import com.ym.mec.biz.service.StudentManageService;
 import com.ym.mec.biz.service.StudentManageService;
@@ -67,6 +64,8 @@ public class StudentManageServiceImpl implements StudentManageService {
     private StudentDao studentDao;
     private StudentDao studentDao;
     @Autowired
     @Autowired
     private StudentExtracurricularExercisesSituationDao studentExtracurricularExercisesSituationDao;
     private StudentExtracurricularExercisesSituationDao studentExtracurricularExercisesSituationDao;
+    @Autowired
+    private MusicGroupQuitDao musicGroupQuitDao;
 
 
     @Override
     @Override
     public PageInfo<StudentManageListDto> findStudentsByOrganId(StudentManageQueryInfo queryInfo) {
     public PageInfo<StudentManageListDto> findStudentsByOrganId(StudentManageQueryInfo queryInfo) {
@@ -78,35 +77,35 @@ public class StudentManageServiceImpl implements StudentManageService {
         params.put("offset", pageInfo.getOffset());
         params.put("offset", pageInfo.getOffset());
         int count = 0;
         int count = 0;
         Set<Integer> paramUserIds = null;
         Set<Integer> paramUserIds = null;
-        if(hasPracticeCourse != null){
+        if (hasPracticeCourse != null) {
             //是否有陪练课
             //是否有陪练课
-            if(hasPracticeCourse){
+            if (hasPracticeCourse) {
                 paramUserIds = studentManageDao.queryHasPracticeCourse(params);
                 paramUserIds = studentManageDao.queryHasPracticeCourse(params);
-            }else {
+            } else {
                 paramUserIds = studentManageDao.queryNotPracticeCourse(params);
                 paramUserIds = studentManageDao.queryNotPracticeCourse(params);
             }
             }
-            if(paramUserIds.size() == 0){
+            if (paramUserIds.size() == 0) {
                 return pageInfo;
                 return pageInfo;
             }
             }
-            params.put("userIds",paramUserIds);
+            params.put("userIds", paramUserIds);
         }
         }
-        if(hasCourse != null){
-            if(hasCourse){
+        if (hasCourse != null) {
+            if (hasCourse) {
                 paramUserIds = studentManageDao.queryHasCourse(params);
                 paramUserIds = studentManageDao.queryHasCourse(params);
                 count = studentManageDao.countHasCourse(params);
                 count = studentManageDao.countHasCourse(params);
-            }else {
+            } else {
                 paramUserIds = studentManageDao.queryNotCourse(params);
                 paramUserIds = studentManageDao.queryNotCourse(params);
                 count = studentManageDao.countNotCourse(params);
                 count = studentManageDao.countNotCourse(params);
             }
             }
-            if(paramUserIds.size() == 0){
+            if (paramUserIds.size() == 0) {
                 return pageInfo;
                 return pageInfo;
             }
             }
             params.remove("offset");
             params.remove("offset");
-            params.put("userIds",paramUserIds);
-        }else {
+            params.put("userIds", paramUserIds);
+        } else {
             count = studentManageDao.countStudentByOrganId(params);
             count = studentManageDao.countStudentByOrganId(params);
         }
         }
-        if(queryInfo.getIsExport() && count > 50000){
+        if (queryInfo.getIsExport() && count > 50000) {
             throw new BizException("数据集太大,不能导出.最大数据集不能超过50000");
             throw new BizException("数据集太大,不能导出.最大数据集不能超过50000");
         }
         }
         List<StudentManageListDto> dataList = null;
         List<StudentManageListDto> dataList = null;
@@ -118,21 +117,21 @@ public class StudentManageServiceImpl implements StudentManageService {
             List<SysUserCashAccount> byUserIds = sysUserCashAccountDao.findByUserIds(userIds);
             List<SysUserCashAccount> byUserIds = sysUserCashAccountDao.findByUserIds(userIds);
             Map<Integer, SysUserCashAccount> collect = byUserIds.stream()
             Map<Integer, SysUserCashAccount> collect = byUserIds.stream()
                     .collect(Collectors.toMap(SysUserCashAccount::getUserId, sysUserCashAccount -> sysUserCashAccount));
                     .collect(Collectors.toMap(SysUserCashAccount::getUserId, sysUserCashAccount -> sysUserCashAccount));
-            Map<Integer,Integer> hasPracticeCourseMap = MapUtil.convertIntegerMap(studentManageDao.getHasPracticeCourse(userIds));
+            Map<Integer, Integer> hasPracticeCourseMap = MapUtil.convertIntegerMap(studentManageDao.getHasPracticeCourse(userIds));
             //获取用户分部
             //获取用户分部
-            Map<Integer,String> organNames = MapUtil.convertMybatisMap(organizationDao.findOrganNameMapList(organIds));
+            Map<Integer, String> organNames = MapUtil.convertMybatisMap(organizationDao.findOrganNameMapList(organIds));
             //获取所在乐团
             //获取所在乐团
-            Map<Integer,String> musicGroupNames = MapUtil.convertMybatisMap(musicGroupDao.queryUserMusicNames(userIds));
+            Map<Integer, String> musicGroupNames = MapUtil.convertMybatisMap(musicGroupDao.queryUserMusicNames(userIds));
             //获取所在vip
             //获取所在vip
-            Map<Integer,String> vipGroupNames = MapUtil.convertMybatisMap(vipGroupDao.queryUserVipNames(userIds));
+            Map<Integer, String> vipGroupNames = MapUtil.convertMybatisMap(vipGroupDao.queryUserVipNames(userIds));
             //获取所在乐团状态
             //获取所在乐团状态
-            Map<Integer,String> musicGroupStatus = MapUtil.convertMybatisMap(musicGroupDao.queryUserMusicStatus(userIds));
+            Map<Integer, String> musicGroupStatus = MapUtil.convertMybatisMap(musicGroupDao.queryUserMusicStatus(userIds));
             //获取所在vip状态
             //获取所在vip状态
-            Map<Integer,String> vipGroupStatus = MapUtil.convertMybatisMap(vipGroupDao.queryUserVipStatus(userIds));
+            Map<Integer, String> vipGroupStatus = MapUtil.convertMybatisMap(vipGroupDao.queryUserVipStatus(userIds));
             //获取所在声部
             //获取所在声部
-            Map<Integer,String> subjectNames = MapUtil.convertMybatisMap(studentManageDao.querySubjectNames(userIds));
+            Map<Integer, String> subjectNames = MapUtil.convertMybatisMap(studentManageDao.querySubjectNames(userIds));
             //学员是否有课
             //学员是否有课
-            Map<Integer,Integer> hasCourseMap = MapUtil.convertMybatisMap(studentManageDao.queryHasCourseMap(userIds));
+            Map<Integer, Integer> hasCourseMap = MapUtil.convertMybatisMap(studentManageDao.queryHasCourseMap(userIds));
             dataList.forEach(e -> {
             dataList.forEach(e -> {
                 e.setOrganName(organNames.get(e.getOrganId()));
                 e.setOrganName(organNames.get(e.getOrganId()));
                 e.setMusicGroupName(musicGroupNames.get(e.getUserId().longValue()));
                 e.setMusicGroupName(musicGroupNames.get(e.getUserId().longValue()));
@@ -140,7 +139,7 @@ public class StudentManageServiceImpl implements StudentManageService {
                 e.setSubjectName(subjectNames.get(e.getUserId().longValue()));
                 e.setSubjectName(subjectNames.get(e.getUserId().longValue()));
                 e.setMusicGroupStatus(musicGroupStatus.get(e.getUserId().longValue()));
                 e.setMusicGroupStatus(musicGroupStatus.get(e.getUserId().longValue()));
                 e.setVipGroupStatus(vipGroupStatus.get(e.getUserId()));
                 e.setVipGroupStatus(vipGroupStatus.get(e.getUserId()));
-                e.setHasCourse(hasCourseMap.get(e.getUserId())==null?YesOrNoEnum.NO:YesOrNoEnum.YES);
+                e.setHasCourse(hasCourseMap.get(e.getUserId()) == null ? YesOrNoEnum.NO : YesOrNoEnum.YES);
                 /*if(hasCourse == null){
                 /*if(hasCourse == null){
                     Integer course = studentManageDao.getHasCourse(e.getUserId());
                     Integer course = studentManageDao.getHasCourse(e.getUserId());
                     e.setHasCourse(course==null?YesOrNoEnum.NO:course==0?YesOrNoEnum.NO:YesOrNoEnum.YES);
                     e.setHasCourse(course==null?YesOrNoEnum.NO:course==0?YesOrNoEnum.NO:YesOrNoEnum.YES);
@@ -151,8 +150,8 @@ public class StudentManageServiceImpl implements StudentManageService {
                         e.setHasCourse(YesOrNoEnum.NO);
                         e.setHasCourse(YesOrNoEnum.NO);
                     }
                     }
                 }*/
                 }*/
-                e.setHasPracticeCourse(hasPracticeCourseMap.get(e.getUserId()) == null?YesOrNoEnum.NO:YesOrNoEnum.YES);
-                if(collect.get(e.getUserId()) != null){
+                e.setHasPracticeCourse(hasPracticeCourseMap.get(e.getUserId()) == null ? YesOrNoEnum.NO : YesOrNoEnum.YES);
+                if (collect.get(e.getUserId()) != null) {
                     e.setCourseBalance(collect.get(e.getUserId()).getCourseBalance());
                     e.setCourseBalance(collect.get(e.getUserId()).getCourseBalance());
                 }
                 }
             });
             });
@@ -171,19 +170,19 @@ public class StudentManageServiceImpl implements StudentManageService {
         MapUtil.populateMap(params, queryInfo);
         MapUtil.populateMap(params, queryInfo);
 
 
         Teacher teacher = teacherDao.get(queryInfo.getTeacherId());
         Teacher teacher = teacherDao.get(queryInfo.getTeacherId());
-        if(Objects.isNull(teacher)){
+        if (Objects.isNull(teacher)) {
             return null;
             return null;
         }
         }
-        List<Integer> organIds=new ArrayList<>();
-        if(Objects.nonNull(teacher.getTeacherOrganId())){
+        List<Integer> organIds = new ArrayList<>();
+        if (Objects.nonNull(teacher.getTeacherOrganId())) {
             organIds.add(teacher.getTeacherOrganId());
             organIds.add(teacher.getTeacherOrganId());
         }
         }
-        if(StringUtils.isNotBlank(teacher.getFlowOrganRange())){
+        if (StringUtils.isNotBlank(teacher.getFlowOrganRange())) {
             List<Integer> flowOrganRangeIds = Arrays.stream(teacher.getFlowOrganRange().split(",")).map(e -> Integer.valueOf(e)).collect(Collectors.toList());
             List<Integer> flowOrganRangeIds = Arrays.stream(teacher.getFlowOrganRange().split(",")).map(e -> Integer.valueOf(e)).collect(Collectors.toList());
             organIds.addAll(flowOrganRangeIds);
             organIds.addAll(flowOrganRangeIds);
         }
         }
 
 
-        if(CollectionUtils.isEmpty(organIds)){
+        if (CollectionUtils.isEmpty(organIds)) {
             return null;
             return null;
         }
         }
 
 
@@ -212,11 +211,20 @@ public class StudentManageServiceImpl implements StudentManageService {
     public List<StudentManageBaseInfoOfMusicGroupDto> findStudentMusicGroupsByUserId(Integer userId) {
     public List<StudentManageBaseInfoOfMusicGroupDto> findStudentMusicGroupsByUserId(Integer userId) {
         List<StudentManageBaseInfoOfMusicGroupDto> musicGroups = studentManageDao.findStudentMusicGroupsByUserId(userId);
         List<StudentManageBaseInfoOfMusicGroupDto> musicGroups = studentManageDao.findStudentMusicGroupsByUserId(userId);
         //获取学员报名时所选乐器
         //获取学员报名时所选乐器
-        if(musicGroups != null && musicGroups.size() > 0){
-            for (StudentManageBaseInfoOfMusicGroupDto e:musicGroups) {
-                e.setUserGoodsDtos(studentPaymentOrderDao.findGoodsIds(e.getMusicGroupId(),e.getUserId()));
+        if (musicGroups.size() > 0) {
+            for (StudentManageBaseInfoOfMusicGroupDto e : musicGroups) {
+                e.setUserGoodsDtos(studentPaymentOrderDao.findGoodsIds(e.getMusicGroupId(), e.getUserId()));
+            }
+        }
+        List<MusicGroupQuit> userMusicQuits = musicGroupQuitDao.getUserMusicQuit(userId);
+        for (StudentManageBaseInfoOfMusicGroupDto musicGroup : musicGroups) {
+            for (MusicGroupQuit userMusicQuit : userMusicQuits) {
+                if (musicGroup.getMusicGroupId().equals(userMusicQuit.getMusicGroupId())) {
+                    musicGroup.setQuitMusicGroupDate(userMusicQuit.getQuitDate());
+                }
             }
             }
         }
         }
+
         return musicGroups;
         return musicGroups;
     }
     }
 
 
@@ -313,7 +321,7 @@ public class StudentManageServiceImpl implements StudentManageService {
 
 
         List<MusicGroupStudentsDto> dataList = null;
         List<MusicGroupStudentsDto> dataList = null;
         int count = studentManageDao.countMusicGroupStudent(params);
         int count = studentManageDao.countMusicGroupStudent(params);
-        if(queryInfo.getIsExport() && count > 50000){
+        if (queryInfo.getIsExport() && count > 50000) {
             throw new BizException("数据集太大,不能导出.最大数据集不能超过50000");
             throw new BizException("数据集太大,不能导出.最大数据集不能超过50000");
         }
         }
         if (count > 0) {
         if (count > 0) {
@@ -334,13 +342,13 @@ public class StudentManageServiceImpl implements StudentManageService {
 
 
     @Override
     @Override
     public Object musicGroupStudentsSum(String musicGroupId) {
     public Object musicGroupStudentsSum(String musicGroupId) {
-        Map<String,Integer> resultMap = new HashMap<>(3);
+        Map<String, Integer> resultMap = new HashMap<>(3);
         //乐团在读人数
         //乐团在读人数
-        resultMap.put("studying",studentManageDao.countStudyNum(musicGroupId));
+        resultMap.put("studying", studentManageDao.countStudyNum(musicGroupId));
         //退团人数
         //退团人数
-        resultMap.put("quit",studentManageDao.countQuitNum(musicGroupId));
+        resultMap.put("quit", studentManageDao.countQuitNum(musicGroupId));
         //新增人数
         //新增人数
-        resultMap.put("add",studentManageDao.countAddNum(musicGroupId));
+        resultMap.put("add", studentManageDao.countAddNum(musicGroupId));
         return resultMap;
         return resultMap;
     }
     }
 
 
@@ -366,7 +374,7 @@ public class StudentManageServiceImpl implements StudentManageService {
 
 
     @Override
     @Override
     public List<ConditionDto> queryStudentClassGroup(String musicGroupId, Integer teacherId) {
     public List<ConditionDto> queryStudentClassGroup(String musicGroupId, Integer teacherId) {
-        return classGroupDao.queryStudentClassGroup(musicGroupId,teacherId);
+        return classGroupDao.queryStudentClassGroup(musicGroupId, teacherId);
     }
     }
 
 
     @Override
     @Override
@@ -396,7 +404,7 @@ public class StudentManageServiceImpl implements StudentManageService {
             teacherIds.addAll(dataList.stream().map(e -> e.getEduTeacherId()).collect(Collectors.toSet()));
             teacherIds.addAll(dataList.stream().map(e -> e.getEduTeacherId()).collect(Collectors.toSet()));
             List<Map<Integer, String>> maps = teacherDao.queryNameByIds(StringUtils.join(teacherIds, ","));
             List<Map<Integer, String>> maps = teacherDao.queryNameByIds(StringUtils.join(teacherIds, ","));
             Map<Integer, String> teacherNameMap = MapUtil.convertMybatisMap(maps);
             Map<Integer, String> teacherNameMap = MapUtil.convertMybatisMap(maps);
-            dataList.forEach(e->{
+            dataList.forEach(e -> {
                 e.setTeacherName(teacherNameMap.get(e.getTeacherId()));
                 e.setTeacherName(teacherNameMap.get(e.getTeacherId()));
                 e.setEduTeacherName(teacherNameMap.get(e.getEduTeacherId()));
                 e.setEduTeacherName(teacherNameMap.get(e.getEduTeacherId()));
             });
             });
@@ -411,14 +419,14 @@ public class StudentManageServiceImpl implements StudentManageService {
     @Override
     @Override
     @Transactional(rollbackFor = Exception.class)
     @Transactional(rollbackFor = Exception.class)
     public int studentRegister(SysUser sysUser) {
     public int studentRegister(SysUser sysUser) {
-        if(sysUser == null || StringUtils.isEmpty(sysUser.getPhone())){
+        if (sysUser == null || StringUtils.isEmpty(sysUser.getPhone())) {
             throw new BizException("参数校验失败");
             throw new BizException("参数校验失败");
         }
         }
         SysUser sysUser1 = sysUserFeignService.queryUserByMobile(sysUser.getPhone());
         SysUser sysUser1 = sysUserFeignService.queryUserByMobile(sysUser.getPhone());
-        if(sysUser1 != null){
-            if(sysUser1.getUserType().contains("STUDENT")){
+        if (sysUser1 != null) {
+            if (sysUser1.getUserType().contains("STUDENT")) {
                 throw new BizException("手机号已被占用");
                 throw new BizException("手机号已被占用");
-            }else {
+            } else {
                 sysUser.setId(sysUser1.getId());
                 sysUser.setId(sysUser1.getId());
                 sysUser.setUserType(sysUser1.getUserType() + ",STUDENT");
                 sysUser.setUserType(sysUser1.getUserType() + ",STUDENT");
                 teacherDao.updateUser(sysUser);
                 teacherDao.updateUser(sysUser);
@@ -444,21 +452,21 @@ public class StudentManageServiceImpl implements StudentManageService {
     @Transactional(rollbackFor = Exception.class)
     @Transactional(rollbackFor = Exception.class)
     public int studentUpdate(SysUser sysUser) {
     public int studentUpdate(SysUser sysUser) {
         Integer userId = sysUser.getId();
         Integer userId = sysUser.getId();
-        if(userId == null || StringUtils.isEmpty(sysUser.getPhone())){
+        if (userId == null || StringUtils.isEmpty(sysUser.getPhone())) {
             throw new BizException("参数校验失败");
             throw new BizException("参数校验失败");
         }
         }
         SysUser sysUser1 = sysUserFeignService.queryUserByMobile(sysUser.getPhone());
         SysUser sysUser1 = sysUserFeignService.queryUserByMobile(sysUser.getPhone());
-        if(sysUser1 != null && !userId.equals(sysUser1.getId())){
+        if (sysUser1 != null && !userId.equals(sysUser1.getId())) {
             throw new BizException("手机号已被占用");
             throw new BizException("手机号已被占用");
         }
         }
         teacherDao.updateUser(sysUser);
         teacherDao.updateUser(sysUser);
         Student student = new Student(userId, studentRegistrationDao.getSubjectIds(userId));
         Student student = new Student(userId, studentRegistrationDao.getSubjectIds(userId));
         student.setOperatingTag(sysUser.getOperatingTag());
         student.setOperatingTag(sysUser.getOperatingTag());
-    	student.setOperatingTempTag(0);
-        student.setServiceTag(sysUser.getServiceTag()==0?2:1);
+        student.setOperatingTempTag(0);
+        student.setServiceTag(sysUser.getServiceTag() == 0 ? 2 : 1);
         student.setTeacherId(sysUser.getTeacherId());
         student.setTeacherId(sysUser.getTeacherId());
         studentService.upSet(student);
         studentService.upSet(student);
-        if(new Integer(2).equals(student.getServiceTag())){
+        if (new Integer(2).equals(student.getServiceTag())) {
             studentExtracurricularExercisesSituationDao.deleteByStudent(sysUser.getId());
             studentExtracurricularExercisesSituationDao.deleteByStudent(sysUser.getId());
         }
         }
         return userId;
         return userId;
@@ -493,17 +501,17 @@ public class StudentManageServiceImpl implements StudentManageService {
     public Map<String, Integer> sumStudentAttendance(Integer courseScheduleId) {
     public Map<String, Integer> sumStudentAttendance(Integer courseScheduleId) {
         Map<String, Integer> sum = new HashMap<>(5);
         Map<String, Integer> sum = new HashMap<>(5);
         Integer studentNum = scheduleStudentPaymentDao.countStudentNum(courseScheduleId);
         Integer studentNum = scheduleStudentPaymentDao.countStudentNum(courseScheduleId);
-        sum.put("studentNum",studentNum);
+        sum.put("studentNum", studentNum);
         Integer signInNum = studentManageDao.countStudentSignInNum(courseScheduleId, "NORMAL");
         Integer signInNum = studentManageDao.countStudentSignInNum(courseScheduleId, "NORMAL");
-        sum.put("signInNum",signInNum);
+        sum.put("signInNum", signInNum);
         Integer leaveNum = studentManageDao.countStudentSignInNum(courseScheduleId, "LEAVE");
         Integer leaveNum = studentManageDao.countStudentSignInNum(courseScheduleId, "LEAVE");
-        sum.put("leaveNum",leaveNum);
-        studentNum = studentNum==null?0:studentNum;
-        signInNum = signInNum==null?0:signInNum;
-        leaveNum = leaveNum==null?0:leaveNum;
-        sum.put("truantNum",studentNum-signInNum-leaveNum);
-        sum.put("homeworkNum",studentManageDao.countHomeworkNum(courseScheduleId));
-        sum.put("repliedNum",studentManageDao.countRepliedNum(courseScheduleId));
+        sum.put("leaveNum", leaveNum);
+        studentNum = studentNum == null ? 0 : studentNum;
+        signInNum = signInNum == null ? 0 : signInNum;
+        leaveNum = leaveNum == null ? 0 : leaveNum;
+        sum.put("truantNum", studentNum - signInNum - leaveNum);
+        sum.put("homeworkNum", studentManageDao.countHomeworkNum(courseScheduleId));
+        sum.put("repliedNum", studentManageDao.countRepliedNum(courseScheduleId));
         return sum;
         return sum;
     }
     }
 
 
@@ -517,7 +525,7 @@ public class StudentManageServiceImpl implements StudentManageService {
 
 
         List<Student4operating> dataList = new ArrayList<>();
         List<Student4operating> dataList = new ArrayList<>();
 
 
-        if(count > 0){
+        if (count > 0) {
             pageInfo.setTotal(count);
             pageInfo.setTotal(count);
             dataList = studentDao.getOperatingStudents(params);
             dataList = studentDao.getOperatingStudents(params);
         }
         }
@@ -527,6 +535,6 @@ public class StudentManageServiceImpl implements StudentManageService {
 
 
     @Override
     @Override
     public List<BasicUserDto> queryCanAddStudent(String musicGroupId, Long musicGroupPaymentCalenderId) {
     public List<BasicUserDto> queryCanAddStudent(String musicGroupId, Long musicGroupPaymentCalenderId) {
-        return studentManageDao.queryCanAddStudent(musicGroupId,musicGroupPaymentCalenderId);
+        return studentManageDao.queryCanAddStudent(musicGroupId, musicGroupPaymentCalenderId);
     }
     }
 }
 }

+ 11 - 9
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentPaymentOrderDetailServiceImpl.java

@@ -9,14 +9,12 @@ import java.util.Map;
 import java.util.stream.Collectors;
 import java.util.stream.Collectors;
 
 
 import com.ym.mec.biz.dal.dao.*;
 import com.ym.mec.biz.dal.dao.*;
-import com.ym.mec.biz.dal.dto.musicalListDetailDto;
+import com.ym.mec.biz.dal.dto.MusicalListDetailDto;
 import com.ym.mec.biz.dal.entity.*;
 import com.ym.mec.biz.dal.entity.*;
 import com.ym.mec.biz.dal.enums.KitGroupPurchaseTypeEnum;
 import com.ym.mec.biz.dal.enums.KitGroupPurchaseTypeEnum;
-import com.ym.mec.biz.service.MusicGroupService;
 import com.ym.mec.util.collection.MapUtil;
 import com.ym.mec.util.collection.MapUtil;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.context.annotation.Lazy;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 
 
 import com.ym.mec.biz.dal.enums.DealStatusEnum;
 import com.ym.mec.biz.dal.enums.DealStatusEnum;
@@ -45,6 +43,8 @@ public class StudentPaymentOrderDetailServiceImpl extends BaseServiceImpl<Long,
     private StudentPaymentOrderDao studentPaymentOrderDao;
     private StudentPaymentOrderDao studentPaymentOrderDao;
     @Autowired
     @Autowired
     private StudentRegistrationDao studentRegistrationDao;
     private StudentRegistrationDao studentRegistrationDao;
+    @Autowired
+    private SubjectDao subjectDao;
 
 
     @Override
     @Override
     public BaseDAO<Long, StudentPaymentOrderDetail> getDAO() {
     public BaseDAO<Long, StudentPaymentOrderDetail> getDAO() {
@@ -172,11 +172,11 @@ public class StudentPaymentOrderDetailServiceImpl extends BaseServiceImpl<Long,
     }
     }
 
 
     @Override
     @Override
-    public List<musicalListDetailDto> getMusicalListDetail(String musicGroupId) {
-        List<musicalListDetailDto> musicalListDetailDtos = studentPaymentOrderDetailDao.getMusicalListDetail(musicGroupId);
+    public List<MusicalListDetailDto> getMusicalListDetail(String musicGroupId) {
+        List<MusicalListDetailDto> musicalListDetailDtos = studentPaymentOrderDetailDao.getMusicalListDetail(musicGroupId);
         if(musicalListDetailDtos != null && musicalListDetailDtos.size() > 0){
         if(musicalListDetailDtos != null && musicalListDetailDtos.size() > 0){
-            List<Long> paymentOrderNo = musicalListDetailDtos.stream().map(e -> e.getPaymentOrderId()).collect(Collectors.toList());
-            List<Integer> userIds = musicalListDetailDtos.stream().map(e -> e.getUserId()).collect(Collectors.toList());
+            List<Long> paymentOrderNo = musicalListDetailDtos.stream().map(MusicalListDetailDto::getPaymentOrderId).collect(Collectors.toList());
+            List<Integer> userIds = musicalListDetailDtos.stream().map(MusicalListDetailDto::getUserId).collect(Collectors.toList());
             //商品名称
             //商品名称
             MusicGroup musicGroup = musicGroupDao.get(musicGroupId);
             MusicGroup musicGroup = musicGroupDao.get(musicGroupId);
             Organization organization = organizationDao.get(musicGroup.getOrganId());
             Organization organization = organizationDao.get(musicGroup.getOrganId());
@@ -187,6 +187,7 @@ public class StudentPaymentOrderDetailServiceImpl extends BaseServiceImpl<Long,
             Map<Long, BigDecimal> accessoriesAmountMap = MapUtil.convertIntegerMap(studentPaymentOrderDetailDao.queryGoodsPrice(paymentOrderNo,"ACCESSORIES"));
             Map<Long, BigDecimal> accessoriesAmountMap = MapUtil.convertIntegerMap(studentPaymentOrderDetailDao.queryGoodsPrice(paymentOrderNo,"ACCESSORIES"));
             Map<Long, BigDecimal> courseAmountMap = MapUtil.convertIntegerMap(studentPaymentOrderDetailDao.queryGoodsPrice(paymentOrderNo,"COURSE"));
             Map<Long, BigDecimal> courseAmountMap = MapUtil.convertIntegerMap(studentPaymentOrderDetailDao.queryGoodsPrice(paymentOrderNo,"COURSE"));
             Map<Long, String> purchaseTypeMap = MapUtil.convertIntegerMap(studentRegistrationDao.queryPurchaseTypeMap(musicGroupId));
             Map<Long, String> purchaseTypeMap = MapUtil.convertIntegerMap(studentRegistrationDao.queryPurchaseTypeMap(musicGroupId));
+            Map<Integer, String> userSubjectMap = subjectDao.getRegisterSubject(musicGroupId, userIds).stream().collect(Collectors.toMap(StudentRegistration::getUserId, StudentRegistration::getSubjectName));
             musicalListDetailDtos.forEach(e->{
             musicalListDetailDtos.forEach(e->{
                 e.setGoodsNames(goodsNameMap.get(e.getPaymentOrderId()));
                 e.setGoodsNames(goodsNameMap.get(e.getPaymentOrderId()));
                 e.setMusicGroupName(musicGroup.getName());
                 e.setMusicGroupName(musicGroup.getName());
@@ -196,9 +197,10 @@ public class StudentPaymentOrderDetailServiceImpl extends BaseServiceImpl<Long,
                 e.setAccessoriesAmount(accessoriesAmountMap.get(e.getPaymentOrderId()));
                 e.setAccessoriesAmount(accessoriesAmountMap.get(e.getPaymentOrderId()));
                 e.setOrderAmount(actualAmountMap.get(e.getPaymentOrderId()));
                 e.setOrderAmount(actualAmountMap.get(e.getPaymentOrderId()));
                 e.setCourseAmount(courseAmountMap.get(e.getPaymentOrderId()));
                 e.setCourseAmount(courseAmountMap.get(e.getPaymentOrderId()));
-                String s = purchaseTypeMap.get(e.getUserId());
+                e.setSubjectName(userSubjectMap.get(e.getUserId()));
+                String s = purchaseTypeMap.get(e.getUserId().longValue());
                 if(StringUtils.isNotEmpty(s)){
                 if(StringUtils.isNotEmpty(s)){
-                    e.setKitGroupPurchaseTypeEnum(KitGroupPurchaseTypeEnum.valueOf(purchaseTypeMap.get(e.getUserId())));
+                    e.setKitGroupPurchaseTypeEnum(KitGroupPurchaseTypeEnum.valueOf(purchaseTypeMap.get(e.getUserId().longValue())));
                 }
                 }
             });
             });
         }
         }

+ 3 - 3
mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherServiceImpl.java

@@ -339,12 +339,12 @@ public class TeacherServiceImpl extends BaseServiceImpl<Integer, Teacher>  imple
 	}
 	}
 
 
 	@Override
 	@Override
-	public PageInfo<musicGroupStudentApplyDto> queryMusicGroupStudentApply(queryMusicGroupStudentQueryInfo queryInfo) {
-		PageInfo<musicGroupStudentApplyDto> pageInfo = new PageInfo<>(queryInfo.getPage(), queryInfo.getRows());
+	public PageInfo<MusicGroupStudentApplyDto> queryMusicGroupStudentApply(queryMusicGroupStudentQueryInfo queryInfo) {
+		PageInfo<MusicGroupStudentApplyDto> pageInfo = new PageInfo<>(queryInfo.getPage(), queryInfo.getRows());
 		Map<String, Object> params = new HashMap<>();
 		Map<String, Object> params = new HashMap<>();
 		MapUtil.populateMap(params, queryInfo);
 		MapUtil.populateMap(params, queryInfo);
 
 
-		List<musicGroupStudentApplyDto> dataList = null;
+		List<MusicGroupStudentApplyDto> dataList = null;
 		int count = teacherDao.countMusicGroupStudentApply(params);
 		int count = teacherDao.countMusicGroupStudentApply(params);
 		if (count > 0) {
 		if (count > 0) {
 			pageInfo.setTotal(count);
 			pageInfo.setTotal(count);

+ 9 - 3
mec-biz/src/main/resources/config/mybatis/HfMemberMapper.xml

@@ -137,7 +137,7 @@
     <sql id="queryPageSql">
     <sql id="queryPageSql">
         <where>
         <where>
             <if test="name != null">
             <if test="name != null">
-                AND name_ = #{name}
+                AND name_ LIKE CONCAT( '%', #{name}, '%' )
             </if>
             </if>
             <if test="memberId != null">
             <if test="memberId != null">
                 AND member_id_ = #{memberId}
                 AND member_id_ = #{memberId}
@@ -155,10 +155,16 @@
     </select>
     </select>
 
 
     <select id="getByMemberId" resultMap="hfMember">
     <select id="getByMemberId" resultMap="hfMember">
-        SELECT * FROM hf_member WHERE member_id_ = #{memberId} LIMIT 1
+        SELECT *
+        FROM hf_member
+        WHERE member_id_ = #{memberId}
+        LIMIT 1
     </select>
     </select>
 
 
     <select id="getByName" resultMap="hfMember">
     <select id="getByName" resultMap="hfMember">
-        SELECT * FROM hf_member WHERE name_ = #{name} LIMIT 1
+        SELECT *
+        FROM hf_member
+        WHERE name_ = #{name}
+        LIMIT 1
     </select>
     </select>
 </mapper>
 </mapper>

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

@@ -92,4 +92,8 @@
 		FROM music_group_quit
 		FROM music_group_quit
 		WHERE music_group_id_=#{musicGroupId} AND status_='APPROVED'
 		WHERE music_group_id_=#{musicGroupId} AND status_='APPROVED'
 	</select>
 	</select>
+
+	<select id="getUserMusicQuit" resultMap="MusicGroupQuit">
+		SELECT * FROM music_group_quit WHERE user_id_=#{userId} AND status_='APPROVED' ORDER BY id_ ASC
+	</select>
 </mapper>
 </mapper>

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

@@ -121,7 +121,7 @@
         AND spo.status_=#{status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
         AND spo.status_=#{status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
         AND spo.type_ = 'APPLY'
         AND spo.type_ = 'APPLY'
     </select>
     </select>
-    <resultMap id="musicalListDetailDtoMap" type="com.ym.mec.biz.dal.dto.musicalListDetailDto">
+    <resultMap id="musicalListDetailDtoMap" type="com.ym.mec.biz.dal.dto.MusicalListDetailDto">
         <result property="paymentOrderId" column="payment_order_id_"/>
         <result property="paymentOrderId" column="payment_order_id_"/>
         <result property="username" column="username_"/>
         <result property="username" column="username_"/>
         <result property="userId" column="user_id_"/>
         <result property="userId" column="user_id_"/>

+ 14 - 4
mec-biz/src/main/resources/config/mybatis/SubjectMapper.xml

@@ -20,7 +20,7 @@
 
 
     <!-- 根据主键查询一条记录 -->
     <!-- 根据主键查询一条记录 -->
     <select id="get" resultMap="Subject">
     <select id="get" resultMap="Subject">
-		SELECT * FROM subject WHERE id_ = #{id} 
+		SELECT * FROM subject WHERE id_ = #{id}
 	</select>
 	</select>
 
 
     <!-- 全查询 -->
     <!-- 全查询 -->
@@ -164,10 +164,10 @@
         SELECT * FROM `subject` WHERE del_flag_ = 0 AND FIND_IN_SET(id_,#{subjectIdList})
         SELECT * FROM `subject` WHERE del_flag_ = 0 AND FIND_IN_SET(id_,#{subjectIdList})
     </select>
     </select>
 
 
-    <select id="findByMusicGroupAndUsers" resultType="map">
+    <select id="findByMusicGroupUserSubject" resultType="map">
         SELECT
         SELECT
-            sr.user_id_ AS 'key',
-            s.name_ AS 'value'
+            sr.user_id_ AS `key`,
+            s.name_ AS `value`
         FROM
         FROM
             student_registration sr
             student_registration sr
             LEFT JOIN `subject` s ON sr.actual_subject_id_=s.id_
             LEFT JOIN `subject` s ON sr.actual_subject_id_=s.id_
@@ -229,4 +229,14 @@
           #{subjectId}
           #{subjectId}
       </foreach>
       </foreach>
     </select>
     </select>
+
+    <select id="getRegisterSubject" resultMap="com.ym.mec.biz.dal.dao.StudentRegistrationDao.StudentRegistration">
+        SELECT sr.user_id_, s.name_ subject_name_ FROM student_registration sr
+        LEFT JOIN subject s ON sr.actual_subject_id_=s.id_
+        WHERE sr.music_group_id_=#{musicGroupId} AND s.del_flag_ = 0 AND sr.music_group_status_ != 'QUIT'
+        AND sr.user_id_ IN
+        <foreach collection="userIds" item="userId" open="(" close=")" separator=",">
+            #{userId}
+        </foreach>
+    </select>
 </mapper>
 </mapper>

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

@@ -639,7 +639,7 @@
     <select id="queryNameById" resultType="java.lang.String">
     <select id="queryNameById" resultType="java.lang.String">
         select real_name_ FROM sys_user s WHERE id_ = #{userId} LIMIT 1
         select real_name_ FROM sys_user s WHERE id_ = #{userId} LIMIT 1
     </select>
     </select>
-    <resultMap id="musicGroupStudentApplyDto" type="com.ym.mec.biz.dal.dto.musicGroupStudentApplyDto">
+    <resultMap id="musicGroupStudentApplyDto" type="com.ym.mec.biz.dal.dto.MusicGroupStudentApplyDto">
         <result property="userId" column="user_id_"/>
         <result property="userId" column="user_id_"/>
         <result property="userName" column="username_"/>
         <result property="userName" column="username_"/>
         <result property="currentClass" column="current_class_"/>
         <result property="currentClass" column="current_class_"/>

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

@@ -6,7 +6,6 @@ import com.ym.mec.biz.dal.dto.*;
 import com.ym.mec.biz.dal.entity.*;
 import com.ym.mec.biz.dal.entity.*;
 import com.ym.mec.biz.dal.enums.OrderTypeEnum;
 import com.ym.mec.biz.dal.enums.OrderTypeEnum;
 import com.ym.mec.biz.service.*;
 import com.ym.mec.biz.service.*;
-import com.ym.mec.biz.service.impl.PayServiceImpl;
 import com.ym.mec.thirdparty.adapay.ConfigInit;
 import com.ym.mec.thirdparty.adapay.ConfigInit;
 import com.ym.mec.thirdparty.adapay.Payment;
 import com.ym.mec.thirdparty.adapay.Payment;
 import com.ym.mec.util.date.DateUtil;
 import com.ym.mec.util.date.DateUtil;
@@ -519,7 +518,7 @@ public class StudentOrderController extends BaseController {
         }
         }
         practiceGroups = practiceGroups.stream().sorted(Comparator.comparingDouble(PracticeGroupsDto::getBuyScale).reversed()).collect(Collectors.toList());
         practiceGroups = practiceGroups.stream().sorted(Comparator.comparingDouble(PracticeGroupsDto::getBuyScale).reversed()).collect(Collectors.toList());
 
 
-        practiceGroupStatisDto practiceGroupStatisDto = new practiceGroupStatisDto();
+        PracticeGroupStatisDto practiceGroupStatisDto = new PracticeGroupStatisDto();
         practiceGroupStatisDto.setPracticeGroupsDtoList(practiceGroups);
         practiceGroupStatisDto.setPracticeGroupsDtoList(practiceGroups);
         practiceGroupStatisDto.setTotalMoney(totalMoney);
         practiceGroupStatisDto.setTotalMoney(totalMoney);
         practiceGroupStatisDto.setTotalNum(totalNum);
         practiceGroupStatisDto.setTotalNum(totalNum);

+ 5 - 1
mec-web/src/main/java/com/ym/mec/web/controller/AdapayController.java

@@ -101,7 +101,11 @@ public class AdapayController extends BaseController {
     @PostMapping(value = "createSettleAccount")
     @PostMapping(value = "createSettleAccount")
     @PreAuthorize("@pcs.hasPermissions('adapay/createSettleAccount')")
     @PreAuthorize("@pcs.hasPermissions('adapay/createSettleAccount')")
     public HttpResponseResult<Map<String, Object>> createSettleAccount(String memberId, String cardNo, String bankCode) throws Exception {
     public HttpResponseResult<Map<String, Object>> createSettleAccount(String memberId, String cardNo, String bankCode) throws Exception {
-        return succeed(hfMemberService.createSettleAccount(memberId, cardNo, bankCode));
+        try {
+            return succeed(hfMemberService.createSettleAccount(memberId, cardNo, bankCode));
+        } catch (Exception e) {
+            return failed(e.getMessage());
+        }
     }
     }
 
 
     @ApiOperation("查询企业用户信息")
     @ApiOperation("查询企业用户信息")

+ 3 - 3
mec-web/src/main/java/com/ym/mec/web/controller/ExportController.java

@@ -708,14 +708,14 @@ public class ExportController extends BaseController {
     @PostMapping("order/musicalListDetailExport")
     @PostMapping("order/musicalListDetailExport")
     @PreAuthorize("@pcs.hasPermissions('order/musicalListDetailExport')")
     @PreAuthorize("@pcs.hasPermissions('order/musicalListDetailExport')")
     public void musicalListDetailExport(HttpServletResponse response, String musicGroupId) throws IOException {
     public void musicalListDetailExport(HttpServletResponse response, String musicGroupId) throws IOException {
-        List<musicalListDetailDto> musicalList = studentPaymentOrderDetailService.getMusicalListDetail(musicGroupId);
+        List<MusicalListDetailDto> musicalList = studentPaymentOrderDetailService.getMusicalListDetail(musicGroupId);
         if (musicalList.size() > 50000) {
         if (musicalList.size() > 50000) {
             throw new BizException("数据集太大,不能导出.最大数据集不能超过50000");
             throw new BizException("数据集太大,不能导出.最大数据集不能超过50000");
         }
         }
         OutputStream outputStream = response.getOutputStream();
         OutputStream outputStream = response.getOutputStream();
         try {
         try {
-            HSSFWorkbook workbook = POIUtil.exportExcel(new String[]{"分部", "乐团", "学员编号", "学员姓名", "购买商品", "采购方式", "乐器金额", "教辅金额", "课程金额", "订单总价"}, new String[]{
-                    "organName", "musicGroupName", "userId", "username", "goodsNames", "kitGroupPurchaseTypeEnum.msg", "musicalAmount", "accessoriesAmount", "courseAmount", "orderAmount"}, musicalList);
+            HSSFWorkbook workbook = POIUtil.exportExcel(new String[]{"分部", "乐团", "学员编号", "学员姓名","声部", "购买商品", "采购方式", "乐器金额", "教辅金额", "课程金额", "订单总价"}, new String[]{
+                    "organName", "musicGroupName", "userId", "username","subjectName", "goodsNames", "kitGroupPurchaseTypeEnum.msg", "musicalAmount", "accessoriesAmount", "courseAmount", "orderAmount"}, musicalList);
             response.setContentType("application/octet-stream");
             response.setContentType("application/octet-stream");
             response.setHeader("Content-Disposition", "attachment;filename=lender-" + DateUtil.getDate(new Date()) + ".xls");
             response.setHeader("Content-Disposition", "attachment;filename=lender-" + DateUtil.getDate(new Date()) + ".xls");
             response.flushBuffer();
             response.flushBuffer();