Bladeren bron

Merge branch 'master' of http://git.dayaedu.com/yonge/mec

zouxuan 4 jaren geleden
bovenliggende
commit
4a936e0e85

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

@@ -245,7 +245,9 @@ public interface MusicGroupDao extends BaseDAO<String, MusicGroup> {
 
     List<MusicGroupRegisterDto> getMusicGroupRegister(@Param("musicGroupStatusList") List<MusicGroupStatusEnum> musicGroupStatusList, @Param("organIds") String organIds);
 
-    List<RegisterSubjectDto> getRegisterSubjectNum(@Param("musicGroupIds") List<String> musicGroupIds, @Param("studentMusicGroupStatus") StudentMusicGroupStatusEnum studentMusicGroupStatus);
+    List<RegisterSubjectDto> getRegisterSubjectNum(@Param("musicGroupIds") List<String> musicGroupIds,
+                                                   @Param("studentMusicGroupStatus") StudentMusicGroupStatusEnum studentMusicGroupStatus,
+                                                   @Param("payStatus") Integer payStatus);
 
     List<MusicGroupRegisterDto> getMusicGroupRegisterOrder(@Param("musicGroupIds") List<String> musicGroupIds);
 

+ 18 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/CourseGroupExportDto.java

@@ -12,6 +12,8 @@ public class CourseGroupExportDto {
     private Integer teacherId;
     private String teacherIds;
     private String teacherName;
+    private String eduTeacherIds;
+    private String eduTeacherName;
     private Date expireDate;
     private Date classStartDate;
     private Date classEndDate;
@@ -115,4 +117,20 @@ public class CourseGroupExportDto {
     public void setTeacherIds(String teacherIds) {
         this.teacherIds = teacherIds;
     }
+
+    public String getEduTeacherIds() {
+        return eduTeacherIds;
+    }
+
+    public void setEduTeacherIds(String eduTeacherIds) {
+        this.eduTeacherIds = eduTeacherIds;
+    }
+
+    public String getEduTeacherName() {
+        return eduTeacherName;
+    }
+
+    public void setEduTeacherName(String eduTeacherName) {
+        this.eduTeacherName = eduTeacherName;
+    }
 }

+ 129 - 18
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/HfMemberDto.java

@@ -1,41 +1,56 @@
 package com.ym.mec.biz.dal.dto;
 
-import org.apache.poi.ss.formula.functions.T;
+import io.swagger.annotations.ApiModelProperty;
 import org.springframework.web.multipart.MultipartFile;
 
 public class HfMemberDto {
-    //商户号
+    @ApiModelProperty(value = "商户号",required = true)
     private String memberId;
-    //公司名称
+
+    @ApiModelProperty(value = "公司名称",required = true)
     private String name;
-    //省份编号
+
+    @ApiModelProperty(value = "省份编号",required = true)
     private String provCode;
-    //城市编号
+
+    @ApiModelProperty(value = "城市编号",required = true)
     private String areaCode;
-    //统一社会信用码
+
+    @ApiModelProperty(value = "统一社会信用码",required = true)
     private String socialCreditCode;
-    //统一社会信用码有效期
+
+    @ApiModelProperty(value = "统一社会信用码有效期",required = true)
     private String socialCreditCodeExpires;
-    //经营范围
+
+    @ApiModelProperty(value = "经营范围",required = true)
     private String businessScope;
-    //法人
+
+    @ApiModelProperty(value = "法人",required = true)
     private String legalPerson;
-    //法人身份证号
+
+    @ApiModelProperty(value = "法人身份证号",required = true)
     private String legalCertId;
-    //身份证有效期
+
+    @ApiModelProperty(value = "身份证有效期",required = true)
     private String legalCertIdExpires;
-    //法人手机号
+
+    @ApiModelProperty(value = "法人手机号",required = true)
     private String legalMp;
-    //公司地址
+
+    @ApiModelProperty(value = "公司地址",required = true)
     private String address;
-    //邮编
+
+    @ApiModelProperty(value = "邮编",required = true)
     private String zipCode;
-    //银行卡号
+
+    @ApiModelProperty(value = "银行卡号",required = true)
     private String cardNo;
-    //银行编码
+
+    @ApiModelProperty(value = "银行编码",required = true)
     private String bankCode;
-    //文件
-    private MultipartFile path;
+
+    @ApiModelProperty(value = "证照文件",required = true)
+    private MultipartFile multipartFile;
 
     public String getMemberId() {
         return memberId;
@@ -68,4 +83,100 @@ public class HfMemberDto {
     public void setAreaCode(String areaCode) {
         this.areaCode = areaCode;
     }
+
+    public String getSocialCreditCode() {
+        return socialCreditCode;
+    }
+
+    public void setSocialCreditCode(String socialCreditCode) {
+        this.socialCreditCode = socialCreditCode;
+    }
+
+    public String getSocialCreditCodeExpires() {
+        return socialCreditCodeExpires;
+    }
+
+    public void setSocialCreditCodeExpires(String socialCreditCodeExpires) {
+        this.socialCreditCodeExpires = socialCreditCodeExpires;
+    }
+
+    public String getBusinessScope() {
+        return businessScope;
+    }
+
+    public void setBusinessScope(String businessScope) {
+        this.businessScope = businessScope;
+    }
+
+    public String getLegalPerson() {
+        return legalPerson;
+    }
+
+    public void setLegalPerson(String legalPerson) {
+        this.legalPerson = legalPerson;
+    }
+
+    public String getLegalCertId() {
+        return legalCertId;
+    }
+
+    public void setLegalCertId(String legalCertId) {
+        this.legalCertId = legalCertId;
+    }
+
+    public String getLegalCertIdExpires() {
+        return legalCertIdExpires;
+    }
+
+    public void setLegalCertIdExpires(String legalCertIdExpires) {
+        this.legalCertIdExpires = legalCertIdExpires;
+    }
+
+    public String getLegalMp() {
+        return legalMp;
+    }
+
+    public void setLegalMp(String legalMp) {
+        this.legalMp = legalMp;
+    }
+
+    public String getAddress() {
+        return address;
+    }
+
+    public void setAddress(String address) {
+        this.address = address;
+    }
+
+    public String getZipCode() {
+        return zipCode;
+    }
+
+    public void setZipCode(String zipCode) {
+        this.zipCode = zipCode;
+    }
+
+    public String getCardNo() {
+        return cardNo;
+    }
+
+    public void setCardNo(String cardNo) {
+        this.cardNo = cardNo;
+    }
+
+    public String getBankCode() {
+        return bankCode;
+    }
+
+    public void setBankCode(String bankCode) {
+        this.bankCode = bankCode;
+    }
+
+    public MultipartFile getMultipartFile() {
+        return multipartFile;
+    }
+
+    public void setMultipartFile(MultipartFile multipartFile) {
+        this.multipartFile = multipartFile;
+    }
 }

+ 8 - 9
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java

@@ -2110,17 +2110,12 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 
 			BigDecimal teacherSalary=BigDecimal.ZERO;
 
+			Map<String, BigDecimal> salaryMap = vipGroupService.countVipGroupPredictFee(vipGroup, vipGroup.getUserId(), null, null);
+
 			ClassGroupTeacherSalary classGroupTeacherSalary = classGroupTeacherSalaryDao.findByVipGoupAndTeacher(vipGroupCourseAdjustInfo.getVipGroupId().intValue(), courseSchedules.get(0).getActualTeacherId());
 
 			if(Objects.nonNull(classGroupTeacherSalary)){
-				teacherSalary=vipGroupCourseAdjustInfo.getTeachMode().equals(TeachModeEnum.OFFLINE)?classGroupTeacherSalary.getSalary():classGroupTeacherSalary.getOnlineClassesSalary();
-			}
-			if(Objects.isNull(teacherSalary)||teacherSalary.compareTo(BigDecimal.ZERO)<=0){
-				TeacherDefaultVipGroupSalary tdvs = teacherDefaultVipGroupSalaryDao.findByTeacherAndCategory(courseSchedules.get(0).getActualTeacherId(),vipGroup.getVipGroupCategoryId());
-				if (tdvs == null||Objects.isNull(tdvs.getOfflineClassesSalary())) {
-					throw new BizException("老师[]没有设置默认课酬,请先设置", courseSchedules.get(0).getActualTeacherId());
-				}
-				teacherSalary=tdvs.getOfflineClassesSalary();
+				teacherSalary=vipGroupCourseAdjustInfo.getTeachMode().equals(TeachModeEnum.OFFLINE)?salaryMap.get("offlineTeacherSalary"):salaryMap.get("onlineTeacherSalary");
 			}
 
 			courseScheduleTeacherSalaryDao.batchUpdateCourseSalarys(courseScheduleIds, teacherSalary);
@@ -2360,6 +2355,10 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
             if (Objects.isNull(newCourseSchedule.getGroupType())) {
                 newCourseSchedule.setGroupType(oldCourseSchedule.getGroupType());
             }
+
+            if(CourseStatusEnum.OVER.equals(oldCourseSchedule.getStatus())&&newCourseSchedule.getStartClassTime().compareTo(now)<0){
+            	throw new BizException("调整无效");
+			}
             
             //课程是否已结算
             int settlementNum = courseScheduleTeacherSalaryDao.checkCourseIsSettlement(oldCourseSchedule.getId().intValue());
@@ -2591,7 +2590,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 			int newMinutes = DateUtil.minutesBetween(newCourseSchedule.getStartClassTime(), newCourseSchedule.getEndClassTime());
 
 			// 如果修改了老师、课程类型、课程时长、教学模式,需要修改课酬
-			if (!ListUtil.isEquals(oldTeacherIdList, newTeacherIdList) || newCourseSchedule.getType() != oldCourseSchedule.getType()
+			if (VIP.equals(newCourseSchedule.getGroupType())||!ListUtil.isEquals(oldTeacherIdList, newTeacherIdList) || newCourseSchedule.getType() != oldCourseSchedule.getType()
 					|| newCourseSchedule.getTeachMode() != oldCourseSchedule.getTeachMode() || oldMinutes != newMinutes) {
 
 				Map<Integer, Teacher> teacherMap = null;

+ 26 - 14
mec-biz/src/main/java/com/ym/mec/biz/service/impl/VipGroupServiceImpl.java

@@ -1070,23 +1070,25 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 
 		results.put("totalPrice",totalPrice.setScale(0,BigDecimal.ROUND_CEILING));
 
-		if(JobNatureEnum.PART_TIME.equals(teacher.getJobNature())||vipGroupCategory.getStudentNum()>1){
-			int normalStudentNum = 0;
-			BigDecimal ots = teacherDefaultVipGroupSalary.getOfflineClassesSalary();
-			BigDecimal ofts = teacherDefaultVipGroupSalary.getOfflineClassesSalary();
-			if(Objects.nonNull(vipGroup.getId())){
-				normalStudentNum = classGroupStudentMapperDao.countGroupNormalStudentNum(GroupType.VIP, vipGroup.getId().toString());
-			}
-			if(normalStudentNum>0&&normalStudentNum!=vipGroupCategory.getStudentNum()){
-				ots = ots.divide(new BigDecimal(vipGroupCategory.getStudentNum()),CommonConstants.DECIMAL_PLACE, BigDecimal.ROUND_DOWN).multiply(new BigDecimal(normalStudentNum)).setScale(CommonConstants.DECIMAL_FINAL_PLACE, BigDecimal.ROUND_HALF_UP);
-				ofts = ofts.divide(new BigDecimal(vipGroupCategory.getStudentNum()),CommonConstants.DECIMAL_PLACE, BigDecimal.ROUND_DOWN).multiply(new BigDecimal(normalStudentNum)).setScale(CommonConstants.DECIMAL_FINAL_PLACE, BigDecimal.ROUND_HALF_UP);
-			}
 
-			results.put("onlineTeacherSalary", ots);
-			results.put("offlineTeacherSalary", ofts);
-			return results;
+		int normalStudentNum = 0;
+		if(Objects.nonNull(vipGroup.getId())){
+			normalStudentNum = classGroupStudentMapperDao.countGroupNormalStudentNum(GroupType.VIP, vipGroup.getId().toString());
 		}
 
+//		if(JobNatureEnum.PART_TIME.equals(teacher.getJobNature())){
+//			BigDecimal ots = teacherDefaultVipGroupSalary.getOfflineClassesSalary();
+//			BigDecimal ofts = teacherDefaultVipGroupSalary.getOfflineClassesSalary();
+//			if(normalStudentNum>0&&normalStudentNum!=vipGroupCategory.getStudentNum()){
+//				ots = ots.divide(new BigDecimal(vipGroupCategory.getStudentNum()),CommonConstants.DECIMAL_PLACE, BigDecimal.ROUND_DOWN).multiply(new BigDecimal(normalStudentNum)).setScale(CommonConstants.DECIMAL_FINAL_PLACE, BigDecimal.ROUND_HALF_UP);
+//				ofts = ofts.divide(new BigDecimal(vipGroupCategory.getStudentNum()),CommonConstants.DECIMAL_PLACE, BigDecimal.ROUND_DOWN).multiply(new BigDecimal(normalStudentNum)).setScale(CommonConstants.DECIMAL_FINAL_PLACE, BigDecimal.ROUND_HALF_UP);
+//			}
+//
+//			results.put("onlineTeacherSalary", ots);
+//			results.put("offlineTeacherSalary", ofts);
+//			return results;
+//		}
+
 		//教师课酬线上单课酬计算
 		if(Objects.nonNull(vipGroupSalarySettlementDto.getOnlineSalarySettlement())){
 			if(Objects.isNull(teacherOnlineSalary)){
@@ -1146,6 +1148,16 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 			}
 		}
 
+		BigDecimal ots = results.get("onlineTeacherSalary");
+		BigDecimal ofts = results.get("offlineTeacherSalary");
+		if(Objects.nonNull(vipGroup.getStatus())&&normalStudentNum!=vipGroupCategory.getStudentNum()){
+			ots = ots.divide(new BigDecimal(vipGroupCategory.getStudentNum()),CommonConstants.DECIMAL_PLACE, BigDecimal.ROUND_DOWN).multiply(new BigDecimal(normalStudentNum)).setScale(CommonConstants.DECIMAL_FINAL_PLACE, BigDecimal.ROUND_HALF_UP);
+			ofts = ofts.divide(new BigDecimal(vipGroupCategory.getStudentNum()),CommonConstants.DECIMAL_PLACE, BigDecimal.ROUND_DOWN).multiply(new BigDecimal(normalStudentNum)).setScale(CommonConstants.DECIMAL_FINAL_PLACE, BigDecimal.ROUND_HALF_UP);
+		}
+
+		results.put("onlineTeacherSalary", ots);
+		results.put("offlineTeacherSalary", ofts);
+
         return results;
     }
 

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

@@ -3023,11 +3023,14 @@
     <select id="getVipGroupExport" resultMap="com.ym.mec.biz.dal.dao.PracticeGroupDao.courseGroupExport">
         SELECT cssp.user_id_ student_id_,
         su.username_ student_name_,
-        o.name_ organ_name_
+        o.name_ organ_name_,
+        GROUP_CONCAT(DISTINCT edut.`real_name_`) edu_teacher_name_,
+        GROUP_CONCAT(DISTINCT edut.`id_`) edu_teacher_ids_
         FROM `course_schedule_student_payment` cssp
         LEFT JOIN `vip_group` vg ON vg.`id_` = cssp.`music_group_id_` AND cssp.`group_type_` = 'VIP'
         LEFT JOIN `organization` o ON o.`id_` = vg.`organ_id_`
         LEFT JOIN `sys_user` su ON su.`id_` = cssp.`user_id_`
+        LEFT JOIN `sys_user` edut ON edut.`id_` = vg.`educational_teacher_id_`
         WHERE cssp.`group_type_` = 'VIP'
         <if test="organIds != null and organIds != ''">
             AND FIND_IN_SET(vg.organ_id_, #{organIds})

+ 10 - 5
mec-biz/src/main/resources/config/mybatis/MusicGroupMapper.xml

@@ -508,8 +508,8 @@
     <select id="getMusicGroupRegister" resultType="com.ym.mec.biz.dal.dto.MusicGroupRegisterDto">
         SELECT mg.id_ musicGroupId ,o.name_ organName, mg.name_ musicGroupName, mg.status_ musicGroupStatus,
         COUNT(sr.id_) registerNum,SUM(IF(sr.music_group_status_='NORMAL',1,0)) normalNum
-        FROM student_registration sr
-        LEFT JOIN music_group mg ON mg.id_ = sr.music_group_id_
+        FROM music_group mg
+        LEFT JOIN student_registration sr ON mg.id_ = sr.music_group_id_
         LEFT JOIN organization o on o.id_ = mg.organ_id_
         <where>
             <if test="musicGroupStatusList != null">
@@ -522,8 +522,10 @@
             <if test="organIds != null">
                 AND FIND_IN_SET (mg.organ_id_,#{organIds})
             </if>
+            AND (mg.del_flag_ IS NULL OR mg.del_flag_=0)
         </where>
-        GROUP BY sr.music_group_id_
+        GROUP BY mg.id_
+        ORDER BY mg.create_time_ ASC
     </select>
 
     <select id="getRegisterSubjectNum" resultType="com.ym.mec.biz.dal.dto.RegisterSubjectDto">
@@ -535,9 +537,12 @@
             #{musicGroupId}
         </foreach>
         <if test="studentMusicGroupStatus != null">
-            AND sr.music_group_status_ = #{studentMusicGroupStatus,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
+            AND sr.music_group_status_ =
+            #{studentMusicGroupStatus,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
+        </if>
+        <if test="payStatus != null">
+            AND sr.payment_status_ = #{payStatus}
         </if>
-        AND sr.payment_status_ = 2
         GROUP BY sr.music_group_id_,sr.actual_subject_id_
     </select>
 

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

@@ -504,6 +504,8 @@
         <result column="teacher_id_" property="teacherId"/>
         <result column="teacher_ids_" property="teacherIds"/>
         <result column="teacher_name_" property="teacherName"/>
+        <result column="edu_teacher_ids_" property="eduTeacherIds"/>
+        <result column="edu_teacher_name_" property="eduTeacherName"/>
         <result column="expire_date_" property="expireDate"/>
         <result column="class_start_date_" property="classStartDate"/>
         <result column="class_end_date_" property="classEndDate"/>
@@ -516,10 +518,13 @@
         su.username_ student_name_,
         o.name_ organ_name_,
         MAX(pg.courses_expire_date_) expire_date_,
-        CASE WHEN MAX(pg.buy_months_) IS NULL THEN 0 ELSE 1 END buy_practice_
+        CASE WHEN MAX(pg.buy_months_) IS NULL THEN 0 ELSE 1 END buy_practice_,
+        GROUP_CONCAT(DISTINCT edut.`real_name_`) edu_teacher_name_,
+        GROUP_CONCAT(DISTINCT edut.`id_`) edu_teacher_ids_
         FROM practice_group pg
         LEFT JOIN organization o on o.id_ = pg.organ_id_
         LEFT JOIN sys_user su ON su.id_ = pg.student_id_
+        left join sys_user edut ON edut.id_ = pg.educational_teacher_id_
         WHERE pg.group_status_ IN ('NORMAL','FINISH')
         <if test="organIds != null and organIds != ''">
             AND FIND_IN_SET(pg.organ_id_, #{organIds})

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

@@ -685,5 +685,6 @@
         <if test="endTime != null"><![CDATA[
         AND spo.create_time_ <= #{endTime}
         ]]></if>
+        AND spo.actual_amount_ > 0
     </select>
 </mapper>

+ 54 - 8
mec-web/src/main/java/com/ym/mec/web/controller/AdapayController.java

@@ -1,17 +1,31 @@
 package com.ym.mec.web.controller;
 
+import com.ym.mec.biz.dal.dto.HfMemberDto;
+import com.ym.mec.common.entity.HttpResponseResult;
+import com.ym.mec.common.exception.BizException;
 import com.ym.mec.thirdparty.adapay.CorpMember;
 import com.ym.mec.common.controller.BaseController;
+import com.ym.mec.util.upload.UploadUtil;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
+import org.apache.commons.io.FileUtils;
+import org.apache.commons.io.IOUtils;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.core.io.Resource;
+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;
 import org.springframework.web.multipart.MultipartFile;
 
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
 import java.math.BigDecimal;
 import java.util.Date;
 import java.util.HashMap;
+import java.util.Map;
 
 @RequestMapping("adapay")
 @Api(tags = "汇付服务")
@@ -21,18 +35,50 @@ public class AdapayController extends BaseController {
 
     @ApiOperation("新建企业用户")
     @PostMapping(value = "createMember")
-    public Object queryRegisterContract(MultipartFile file) throws Exception {
+    public HttpResponseResult createMember(HfMemberDto member) throws Exception {
 
-        HashMap<String, Object> memberParams = new HashMap<>();
-        memberParams.put("order_no", "corp_mem_" + System.currentTimeMillis());
+        File file = new File("/var/tmp/" + member.getMultipartFile().getOriginalFilename());
+        InputStream inputStream = member.getMultipartFile().getInputStream();
 
-        memberParams.put("bank_acct_type", "1");
-        memberParams.put("card_name", "武汉大雅乐盟教育咨询有限公司");
+        try {
+            if (!file.getParentFile().exists()) {
+                file.getParentFile().mkdirs();
+            }
+            FileOutputStream fos = new FileOutputStream(file);
+            IOUtils.copy(inputStream, fos);
 
-        String path = "C:/Users/river/Desktop/imgzip/武汉大雅乐盟教育咨询有限公司.zip";
+            HashMap<String, Object> memberParams = new HashMap<>();
+            memberParams.put("order_no", "corp_mem_" + System.currentTimeMillis());
+            memberParams.put("member_id", member.getMemberId());
+            memberParams.put("name", member.getName());
+            memberParams.put("prov_code", member.getProvCode());
+            memberParams.put("area_code", member.getAreaCode());
+            memberParams.put("social_credit_code", member.getSocialCreditCode());
+            memberParams.put("social_credit_code_expires", member.getSocialCreditCodeExpires());
+            memberParams.put("business_scope", member.getBusinessScope());
+            memberParams.put("legal_person", member.getLegalPerson());
+            memberParams.put("legal_cert_id", member.getLegalCertId());
+            memberParams.put("legal_cert_id_expires", member.getLegalCertIdExpires());
+            memberParams.put("legal_mp", member.getLegalMp());
+            memberParams.put("address", member.getAddress());
+            memberParams.put("zip_code", member.getZipCode());
+            memberParams.put("bank_code", member.getBankCode());
+            memberParams.put("bank_acct_type", "1");
+            memberParams.put("card_no", member.getCardNo());
+            memberParams.put("card_name", member.getName());
+            return succeed(new CorpMember().executeCreateMember(memberParams, file));
+        } catch (IOException e) {
+            throw new BizException("文件上传失败,请重试");
+        } finally {
+            IOUtils.closeQuietly(inputStream);
+            file.deleteOnExit();
+        }
+    }
 
-        new CorpMember().executeCreateMember(memberParams,path);
-        return true;
+    @ApiOperation("查询企业用户信息")
+    @GetMapping(value = "getMemberInfo")
+    public HttpResponseResult getMemberInfo(String memberId) throws Exception {
+        return succeed(new CorpMember().executeQueryMember(memberId));
     }
 
 

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

@@ -1131,8 +1131,8 @@ public class ExportController extends BaseController {
         }
 
         try {
-            String[] header = {"分部", "学生编号", "学生姓名", "网管课老师id", "网管课老师", "有效期截止时间", "课程截止时间", "总课时", "剩余课时", "是否购买"};
-            String[] body = {"organName", "studentId", "studentName", "teacherIds", "teacherName", "expireDate", "classEndDate", "totalClassTimes", "noStartClassTimes", "buyPractice.msg"};
+            String[] header = {"分部", "学生编号", "学生姓名", "网管课老师id", "网管课老师", "教务老师id", "教务老师", "有效期截止时间", "课程截止时间", "总课时", "剩余课时", "是否购买"};
+            String[] body = {"organName", "studentId", "studentName", "teacherIds", "teacherName", "eduTeacherIds", "eduTeacherName", "expireDate", "classEndDate", "totalClassTimes", "noStartClassTimes", "buyPractice.msg"};
             HSSFWorkbook workbook = POIUtil.exportExcel(header, body, practiceGroupExports);
             response.setContentType("application/octet-stream");
             response.setHeader("Content-Disposition", "attachment;filename=lender-" + DateUtil.getDate(new Date()) + ".xls");
@@ -1203,8 +1203,8 @@ public class ExportController extends BaseController {
         }
 
         try {
-            String[] header = {"分部", "学生编号", "学生姓名", "指导老师id", "指导老师", "课程开始时间", "课程截止时间", "总课时", "剩余课时"};
-            String[] body = {"organName", "studentId", "studentName", "teacherIds", "teacherName", "classStartDate", "classEndDate", "totalClassTimes", "noStartClassTimes"};
+            String[] header = {"分部", "学生编号", "学生姓名", "指导老师id", "指导老师", "教务老师id", "教务老师", "课程开始时间", "课程截止时间", "总课时", "剩余课时"};
+            String[] body = {"organName", "studentId", "studentName", "teacherIds", "teacherName", "eduTeacherIds", "eduTeacherName", "classStartDate", "classEndDate", "totalClassTimes", "noStartClassTimes"};
             HSSFWorkbook workbook = POIUtil.exportExcel(header, body, vipGroupExports);
             response.setContentType("application/octet-stream");
             response.setHeader("Content-Disposition", "attachment;filename=lender-" + DateUtil.getDate(new Date()) + ".xls");
@@ -1711,7 +1711,7 @@ public class ExportController extends BaseController {
         musicGroupStatusList.add(MusicGroupStatusEnum.APPLY);
         musicGroupStatusList.add(MusicGroupStatusEnum.PAY);
 
-        List<MusicGroupRegisterDto> musicGroupRegisters = musicGroupDao.getMusicGroupRegister(musicGroupStatusList,organIds);
+        List<MusicGroupRegisterDto> musicGroupRegisters = musicGroupDao.getMusicGroupRegister(musicGroupStatusList, organIds);
 
         if (musicGroupRegisters.size() <= 0) {
             response.setStatus(200);
@@ -1722,7 +1722,7 @@ public class ExportController extends BaseController {
         }
         List<String> musicGroupIds = musicGroupRegisters.stream().map(MusicGroupRegisterDto::getMusicGroupId).collect(Collectors.toList());
 
-        List<RegisterSubjectDto> registerSubjects = musicGroupDao.getRegisterSubjectNum(musicGroupIds,null);
+        List<RegisterSubjectDto> registerSubjects = musicGroupDao.getRegisterSubjectNum(musicGroupIds, null, 2);
         List<MusicGroupRegisterDto> musicGroupRegisterOrders = musicGroupDao.getMusicGroupRegisterOrder(musicGroupIds);
         List<MusicGroupRegisterDto> musicGroupRegisterTotalMoneys = musicGroupDao.getMusicGroupRegisterTotalMoney(musicGroupIds);
 
@@ -2041,7 +2041,13 @@ public class ExportController extends BaseController {
                 organIds = employee.getOrganIdList();
             }
         }
-        List<MusicGroupRegisterDto> musicGroupRegisters = musicGroupDao.getMusicGroupRegister(null,organIds);
+
+        List<MusicGroupStatusEnum> musicGroupStatusList = new ArrayList<>();
+        musicGroupStatusList.add(MusicGroupStatusEnum.PAY);
+        musicGroupStatusList.add(MusicGroupStatusEnum.PREPARE);
+        musicGroupStatusList.add(MusicGroupStatusEnum.PROGRESS);
+        musicGroupStatusList.add(MusicGroupStatusEnum.PAUSE);
+        List<MusicGroupRegisterDto> musicGroupRegisters = musicGroupDao.getMusicGroupRegister(musicGroupStatusList, organIds);
 
         if (musicGroupRegisters.size() <= 0) {
             response.setStatus(200);
@@ -2052,7 +2058,7 @@ public class ExportController extends BaseController {
         }
         List<String> musicGroupIds = musicGroupRegisters.stream().map(MusicGroupRegisterDto::getMusicGroupId).collect(Collectors.toList());
 
-        List<RegisterSubjectDto> registerSubjects = musicGroupDao.getRegisterSubjectNum(musicGroupIds,StudentMusicGroupStatusEnum.NORMAL);
+        List<RegisterSubjectDto> registerSubjects = musicGroupDao.getRegisterSubjectNum(musicGroupIds, StudentMusicGroupStatusEnum.NORMAL, null);
 
         HashSet<Integer> added = new HashSet<>();
         List<String> header = new ArrayList<>();
@@ -2123,7 +2129,7 @@ public class ExportController extends BaseController {
     @ApiOperation(value = "回款统计")
     @RequestMapping("export/studentOrder")
     @PreAuthorize("@pcs.hasPermissions('export/studentOrder')")
-    public void studentOrder(String organIds,Date date, HttpServletResponse response) throws IOException {
+    public void studentOrder(String organIds, Date date, HttpServletResponse response) throws IOException {
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         if (!sysUser.getIsSuperAdmin()) {
             Employee employee = employeeDao.get(sysUser.getId());
@@ -2134,12 +2140,12 @@ public class ExportController extends BaseController {
         Date startTime = DateUtil.getFirstDayOfMonth(date);
         Date EndTime = DateUtil.getLastSecondWithDay(DateUtil.getLastDayOfMonth(date));
 
-        List<OrderTypeEnum> orderTypeList = new  ArrayList<>();
+        List<OrderTypeEnum> orderTypeList = new ArrayList<>();
         orderTypeList.add(OrderTypeEnum.SPORADIC);
         orderTypeList.add(OrderTypeEnum.PRACTICE_GROUP_BUY);
         orderTypeList.add(OrderTypeEnum.PRACTICE_GROUP_RENEW);
         orderTypeList.add(OrderTypeEnum.SMALL_CLASS_TO_BUY);
-        List<OrderByTypeExportDto> orders = studentPaymentOrderDao.getOrderByMonthAndType(organIds, orderTypeList,startTime,EndTime);
+        List<OrderByTypeExportDto> orders = studentPaymentOrderDao.getOrderByMonthAndType(organIds, orderTypeList, startTime, EndTime);
 
         if (orders.size() <= 0) {
             response.setStatus(200);
@@ -2153,23 +2159,23 @@ public class ExportController extends BaseController {
 
         List<VipBuyResultDto> vipGroupTeachers = new ArrayList<>();
         List<PracticeCourseDto> practiceGroupsTeacher = new ArrayList<>();
-        if(vipGroupIds.size() > 0){
+        if (vipGroupIds.size() > 0) {
             vipGroupTeachers = vipGroupDao.getGroupTeachers(vipGroupIds);
         }
 
-        if(practiceGroupIds.size() >0){
+        if (practiceGroupIds.size() > 0) {
             practiceGroupsTeacher = practiceGroupDao.getPracticeGroupByIds(practiceGroupIds);
         }
 
         for (OrderByTypeExportDto order : orders) {
             for (VipBuyResultDto vipGroupTeacher : vipGroupTeachers) {
-                if(order.getGroupType().equals(GroupType.VIP) && order.getMusicGroupId().equals(vipGroupTeacher.getVipGroupId().longValue())){
+                if (order.getGroupType().equals(GroupType.VIP) && order.getMusicGroupId().equals(vipGroupTeacher.getVipGroupId().longValue())) {
                     order.setTeacherName(vipGroupTeacher.getTeacherName());
                     order.setEduTeacherName(vipGroupTeacher.getEduTeacherName());
                 }
             }
             for (PracticeCourseDto practiceCourseDto : practiceGroupsTeacher) {
-                if(order.getGroupType().equals(GroupType.PRACTICE) && order.getMusicGroupId().equals(practiceCourseDto.getId())){
+                if (order.getGroupType().equals(GroupType.PRACTICE) && order.getMusicGroupId().equals(practiceCourseDto.getId())) {
                     order.setTeacherName(practiceCourseDto.getTeacherName());
                     order.setEduTeacherName(practiceCourseDto.getEduTeacherName());
                 }