Selaa lähdekoodia

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

zouxuan 5 vuotta sitten
vanhempi
commit
9100f2c92b

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

@@ -1,5 +1,8 @@
 package com.ym.mec.biz.service.impl;
 
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
 import com.ym.mec.auth.api.client.SysUserFeignService;
 import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.dao.*;
@@ -86,6 +89,8 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
     private ImFeignService imFeignService;
     @Autowired
     private JiaRiFeignService jiaRiFeignService;
+    @Autowired
+    private SysConfigService sysConfigService;
 
 
     @Override
@@ -418,16 +423,43 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
     public List<ClassGroupTeachersDto> getClassGroupAndTeacherSalary(String musicGroupId, SalarySettlementTypeEnum type, Integer classGroupId) throws Exception {
         //乐团班级及班级老师
         List<ClassGroupTeachersDto> classGroupAndTeachers = getClassGroupAndTeachers(musicGroupId, "NORMAL,MIX,HIGH", classGroupId);
-
+        BigDecimal zeroSalary = new BigDecimal(0);
         for (ClassGroupTeachersDto classGroupAndTeacher : classGroupAndTeachers) {
             //班级的教师列表
             List<ClassGroupTeacherMapper> classGroupTeacherMapperList = classGroupAndTeacher.getClassGroupTeacherMapperList();
             for (ClassGroupTeacherMapper classGroupTeacherMapper : classGroupTeacherMapperList) {
                 //获取老师的默认课酬
                 String courseType = classGroupAndTeacher.getType().equals(ClassGroupTypeEnum.NORMAL) ? "SINGLE" : classGroupAndTeacher.getType().getCode();
+
                 List<TeacherDefaultMusicGroupSalary> teacherSalaryByUserIdAndType = teacherDefaultMusicGroupSalaryService.getTeacherSalaryByUserIdAndType(classGroupTeacherMapper.getUserId(), courseType, type);
-                if (teacherSalaryByUserIdAndType == null) {
-                    throw new Exception("userId:" + classGroupTeacherMapper.getUserId() + "名字:" + classGroupTeacherMapper.getUserName() + " 老师没有设置课酬");
+                //老师课酬没有设置,设置成0
+                if (teacherSalaryByUserIdAndType == null || teacherSalaryByUserIdAndType.size()==0) {
+                    if (type.equals(SalarySettlementTypeEnum.GRADIENT_SALARY)) {
+                        String paramName = courseType.equals("SINGLE") ? "sigle_gradient_settlement_rule" : (courseType.equals("MIX") ? "max_gradient_settlement_rule" : "high_gradient_settlement_rule");
+                        SysConfig sysConfig = sysConfigService.findByParamName(paramName);
+
+                        List<Map<String, String>> configs = JSONArray.parseObject(sysConfig.getParanValue(), List.class);
+                        for (Map<String, String> config : configs) {
+                            TeacherDefaultMusicGroupSalary teacherDefaultMusicGroupSalary = new TeacherDefaultMusicGroupSalary();
+                            teacherDefaultMusicGroupSalary.setDurationMin(Integer.parseInt(config.get("min")));
+                            teacherDefaultMusicGroupSalary.setDurationMax(Integer.parseInt(config.get("max")));
+                            teacherDefaultMusicGroupSalary.setSettlementType(type);
+                            teacherDefaultMusicGroupSalary.setUserId(classGroupTeacherMapper.getUserId());
+                            teacherDefaultMusicGroupSalary.setAssistantTeacherSalary(zeroSalary);
+                            teacherDefaultMusicGroupSalary.setMainTeacherSalary(zeroSalary);
+
+                            teacherSalaryByUserIdAndType.add(teacherDefaultMusicGroupSalary);
+                        }
+                    } else {
+                        TeacherDefaultMusicGroupSalary teacherDefaultMusicGroupSalary = new TeacherDefaultMusicGroupSalary();
+                        teacherDefaultMusicGroupSalary.setAssistantTeacherSalary(zeroSalary);
+                        teacherDefaultMusicGroupSalary.setMainTeacherSalary(zeroSalary);
+                        teacherDefaultMusicGroupSalary.setSettlementType(type);
+                        teacherDefaultMusicGroupSalary.setUserId(classGroupTeacherMapper.getUserId());
+
+                        teacherSalaryByUserIdAndType.add(teacherDefaultMusicGroupSalary);
+                    }
+
                 }
                 classGroupTeacherMapper.setTeacherDefaultMusicGroupSalaryList(teacherSalaryByUserIdAndType);
             }
@@ -521,7 +553,7 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
             Map<Integer, Long> numsMap = MapUtil.convertMybatisMap(nums);
             imGroupModels.forEach(e -> {
                 Long num = numsMap.get(Integer.parseInt(e.getId()));
-                e.setCount((int)(num == null ? 0L : num) + e.getCount());
+                e.setCount((int) (num == null ? 0L : num) + e.getCount());
             });
         }
         return imGroupModels;
@@ -530,7 +562,7 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
     @Override
     public List<ImUserModel> findGroupUsers(Integer groupId) {
         List<ImUserModel> students = classGroupDao.findGroupUsers(groupId);
-        if(students == null){
+        if (students == null) {
             students = new ArrayList<>();
         }
         List<ImUserModel> teachers = classGroupDao.findGroupTeacher(groupId);
@@ -867,7 +899,7 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
         int times = 0;
 
         Map<String, Integer> holidayDays = new HashMap<>();
-        if(classGroup4MixDto.getHoliday()) {
+        if (classGroup4MixDto.getHoliday()) {
             Map<Integer, Map<String, Integer>> holiday = jiaRiFeignService.query(now.getYear());
             holidayDays = holiday.get(now.getYear());
         }
@@ -1068,7 +1100,7 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
         BigDecimal expectPrice = new BigDecimal("0");
         int times = 0;
         Map<String, Integer> holidayDays = new HashMap<>();
-        if(classGroup4MixDto.getHoliday()) {
+        if (classGroup4MixDto.getHoliday()) {
             Map<Integer, Map<String, Integer>> holiday = jiaRiFeignService.query(now.getYear());
             holidayDays = holiday.get(now.getYear());
         }
@@ -1266,7 +1298,7 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
         BigDecimal expectPrice = new BigDecimal("0");
         int times = 0;
         Map<String, Integer> holidayDays = new HashMap<>();
-        if(classGroup4MixDto.getHoliday()) {
+        if (classGroup4MixDto.getHoliday()) {
             Map<Integer, Map<String, Integer>> holiday = jiaRiFeignService.query(now.getYear());
             holidayDays = holiday.get(now.getYear());
         }

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

@@ -114,7 +114,7 @@ public class ClassGroupTeacherMapperServiceImpl extends BaseServiceImpl<Long, Cl
                 continue;
             }
             //课时长度
-            int duration = DateUtil.minutesBetween(classGroupNoStartCourseSchedule.getEndClassTime(), classGroupNoStartCourseSchedule.getStartClassTime());
+            int duration = DateUtil.minutesBetween(classGroupNoStartCourseSchedule.getStartClassTime(),classGroupNoStartCourseSchedule.getEndClassTime());
             for (ClassGroupTeacherMapper classGroupTeacherMapper : classGroupTeacherMapperList) {
                 if (!classGroupTeacherMapper.getClassGroupId().equals(classGroupNoStartCourseSchedule.getClassGroupId())) {
                     continue;
@@ -126,7 +126,7 @@ public class ClassGroupTeacherMapperServiceImpl extends BaseServiceImpl<Long, Cl
                     BigDecimal baseSalary = classGroupTeacherMapper.getTeacherRole().equals(TeachTypeEnum.BISHOP) ? teacherDefaultMusicGroupSalary.getMainTeacherSalary() : teacherDefaultMusicGroupSalary.getAssistantTeacherSalary();
                     //基准课酬
                     if (teacherDefaultMusicGroupSalary.getSettlementType().equals(SalarySettlementTypeEnum.TEACHER_DEFAULT)) {
-                        salary = new BigDecimal(duration).divide(new BigDecimal(30)).multiply(baseSalary).setScale(2, BigDecimal.ROUND_HALF_UP);
+                        salary = new BigDecimal(duration).divide(new BigDecimal(30),8,BigDecimal.ROUND_HALF_UP).multiply(baseSalary).setScale(2, BigDecimal.ROUND_HALF_UP);
                         break;
                     }
                     //阶梯课酬

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

@@ -723,7 +723,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 			Map payMap = payService.getPayMap(
 					vipGroup.getTotalPrice(),
 					byStudentVipGroup.getOrderNo(),
-					"https://dyme.utools.club/api-student/studentOrder/notify",
+					"http://mstudev.dayaedu.com/api-student/studentOrder/notify",
 					"http://mstudev.dayaedu.com/#/paymentResult",
 					"vip课购买",
 					vipGroup.getName());

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

@@ -240,7 +240,7 @@ public class MusicGroupController extends BaseController {
         Map payMap = payService.getPayMap(
                 orderAmount,
                 orderNo,
-                "https://dyme.utools.club/api-student/studentOrder/notify",
+                "http://mstudev.dayaedu.com/api-student/studentOrder/notify",
                 "http://mstudev.dayaedu.com/#/paymentResult",
                 "测试订单",
                 "测试订单");