Bladeren bron

Merge branch 'feature/0529-live' of http://git.dayaedu.com/yonge/mec into feature/0529-live

liujc 2 jaren geleden
bovenliggende
commit
63be6f104d

+ 6 - 8
mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherLeaveRecordServiceImpl.java

@@ -93,15 +93,13 @@ public class TeacherLeaveRecordServiceImpl extends BaseServiceImpl<Long, Teacher
 				List<CourseSchedule> list = new ArrayList<CourseSchedule>();
 
 				for (CoursesScheduleHistory his : coursesScheduleHistoryList) {
-					if (his.getBefore().getType() != CourseScheduleType.VIP && his.getBefore().getType() != CourseScheduleType.LIVE) {
-						continue;
-					}
-					if(!teacherLeaveRecord.getEndTime().before(his.getAfter().getStartClassTime())
-							&&!teacherLeaveRecord.getStartTime().after(his.getAfter().getEndClassTime())){
-						throw new BizException("课程时间与老师请假时间存在冲突");
+					if (his.getBefore().getType() == CourseScheduleType.VIP) {
+						if(!teacherLeaveRecord.getEndTime().before(his.getAfter().getStartClassTime())
+								&&!teacherLeaveRecord.getStartTime().after(his.getAfter().getEndClassTime())){
+							throw new BizException("课程时间与老师请假时间存在冲突");
+						}
+						list.add(his.getAfter());
 					}
-
-					list.add(his.getAfter());
 				}
 			}
 		}

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

@@ -2335,6 +2335,9 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
         if (!vipGroupCategory.getMusicTheory()) {
             gofts = gofts.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);
+        } else if("LIVE".equals(vipGroup.getGroupType())){
+            gofts = gofts.multiply(new BigDecimal(normalStudentNum)).setScale(CommonConstants.DECIMAL_FINAL_PLACE, BigDecimal.ROUND_HALF_UP);
+            ofts = ofts.multiply(new BigDecimal(normalStudentNum)).setScale(CommonConstants.DECIMAL_FINAL_PLACE, BigDecimal.ROUND_HALF_UP);
         }
         results.put("offlineTeacherSalary", ofts);
         results.put("giveOfflineTeacherSalary", gofts);
@@ -4514,7 +4517,6 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
                 //关闭课程组
                 vipGroupDao.batchUpdate(noStudentGroup);
             }
-            Date now = new Date();
             if(!CollectionUtils.isEmpty(hasStudentGroup)){
                 //排课
                 for (VipGroup vipGroup : hasStudentGroup) {
@@ -4522,7 +4524,6 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
                     vipGroup.setStatus(VipGroupStatusEnum.PROGRESS);
                     Integer tenantId = vipGroup.getTenantId();
                     for (String s : vipGroup.getStudentIdList().split(",")) {
-                        Integer userId = Integer.parseInt(s);
                         classGroup.setDelFlag(0);
                         VipGroupDefaultClassesUnitPrice vipGroupDefaultClassesUnitPrice = vipGroupDefaultClassesUnitPriceDao.getByVipGroupCategory(vipGroup.getVipGroupCategoryId(),
                                 vipGroup.getOrganId(), vipGroup.getGroupType());
@@ -4607,15 +4608,9 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
                         imGroupService.create(classGroup.getId().toString(), null, classGroup.getName(), classGroup.getName(),
                                 vipGroup.getName(), null, null, vipGroup.getGroupType(), ImGroup.GroupTypeEnum.valueOf(vipGroup.getGroupType()));
                         imGroupMemberService.join(classGroup.getId().toString(), userRoleMap);
-                        imUserFriendService.refreshGroupImUserFriend(classGroup.getMusicGroupId(), classGroup.getGroupType());
-                        //更新所属分部列表
-                        List<Integer> organIds = classGroupDao.findStudentOrganIdsByClassGroup(classGroup.getId().longValue());
-                        organIds.add(vipGroup.getOrganId());
-                        HashSet<Integer> hashSet = new HashSet<>(organIds);
-                        String organIdsString = StringUtils.join(hashSet, ",");
-                        vipGroup.setOrganIdList(organIdsString);
-                        vipGroupDao.update(vipGroup);
                     }
+                    imUserFriendService.refreshGroupImUserFriend(classGroup.getMusicGroupId(), classGroup.getGroupType());
+                    vipGroupDao.update(vipGroup);
                 }
             }
         }

+ 11 - 0
mec-im/src/main/java/com/ym/common/BaseResponse.java

@@ -36,12 +36,23 @@ public class BaseResponse<T> {
         setData(data);
     }
 
+    public BaseResponse(Integer err, String errDetail, T data) {
+        setErr(err, errDetail, errDetail);
+        setData(data);
+    }
+
     public void setErr(ErrorEnum error, String errDetail) {
         this.errCode = error.getErrCode();
         this.errMsg = error.getErrMsg();
         this.errDetail = errDetail;
     }
 
+    public void setErr(Integer error, String errMsg, String errDetail) {
+        this.errCode = error;
+        this.errMsg = errMsg;
+        this.errDetail = errDetail;
+    }
+
     class BaseResponseResult<R> {
         private @Setter @Getter R result;
 

+ 2 - 0
mec-im/src/main/java/com/ym/common/ErrorEnum.java

@@ -8,6 +8,8 @@ import lombok.Getter;
 public enum ErrorEnum {
     ERR_SUCCESS(0x0000, "OK"),
     ERR_OTHER(0x00FF, "Error"),
+    ERR_BIZ_EX(500, "业务异常"),
+
     ERR_REQUEST_PARA_ERR(1, "Missing or invalid parameter"),
     ERR_INVALID_AUTH(2, "Invalid or expired authorization"),
     ERR_ACCESS_DENIED(3, "Access denied"),

+ 8 - 0
mec-im/src/main/java/com/ym/filter/GlobalExceptionHandlerAdvice.java

@@ -7,6 +7,7 @@ package com.ym.filter;
 import com.ym.common.ApiException;
 import com.ym.common.BaseResponse;
 import com.ym.common.ErrorEnum;
+import com.ym.mec.common.exception.BizException;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.ConversionNotSupportedException;
 import org.springframework.beans.TypeMismatchException;
@@ -88,6 +89,13 @@ public class GlobalExceptionHandlerAdvice {
         return getResponseData(ex);
     }
 
+    @ResponseStatus(value = HttpStatus.OK)
+    @ExceptionHandler(BizException.class)
+    public BaseResponse<Object> handleBizException(BizException ex) {
+        logException(ex);
+        return new BaseResponse<>(ex.getCode(), ex.getMessage(), "");
+    }
+
     private void logException(Exception ex) {
         log.error("caught exception:", ex);
     }