Browse Source

Merge remote-tracking branch 'origin/master'

周箭河 5 years ago
parent
commit
48611ab65f

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

@@ -32,6 +32,7 @@ import org.springframework.util.CollectionUtils;
 import java.time.DayOfWeek;
 import java.time.LocalDate;
 import java.time.LocalDateTime;
+import java.time.temporal.ChronoUnit;
 import java.util.*;
 import java.util.stream.Collectors;
 import com.ym.mec.biz.dal.entity.CourseSchedule.CourseScheduleType;
@@ -116,7 +117,26 @@ public class StudentCourseHomeworkServiceImpl extends BaseServiceImpl<Long, Stud
         LocalDate monDayDate = nowDate.with(DateUtil.weekFields.dayOfWeek(), DayOfWeek.MONDAY.getValue());
         LocalDate createDateTime = LocalDateTime.ofInstant(courseSchedule.getClassDate().toInstant(), DateUtil.zoneId).toLocalDate();
         LocalDate createMonday = createDateTime.with(DateUtil.weekFields.dayOfWeek(), DayOfWeek.MONDAY.getValue());
-        if(createDateTime.isBefore(monDayDate)){
+        LocalDate homeworkCreateDateTime = LocalDateTime.ofInstant(existHomework.getCreateTime().toInstant(), DateUtil.zoneId).toLocalDate();
+        boolean isOk=false;
+        switch (createDateTime.getDayOfWeek()){
+            case SATURDAY:
+                if(createDateTime.until(homeworkCreateDateTime, ChronoUnit.DAYS)<4){
+                    isOk=true;
+                }
+                break;
+            case SUNDAY:
+                if(createDateTime.until(homeworkCreateDateTime, ChronoUnit.DAYS)<3){
+                    isOk=true;
+                }
+                break;
+            default:
+                if(createDateTime.get(DateUtil.weekFields.weekOfYear())==homeworkCreateDateTime.get(DateUtil.weekFields.weekOfYear())){
+                    isOk=true;
+                }
+                break;
+        }
+        if(createDateTime.isBefore(monDayDate)&&isOk){
             StudentExtracurricularExercisesSituation studentExercisesSituation = studentExtracurricularExercisesSituationDao.findStudentExercisesSituationsWithMonDay(createMonday.toString(), existHomework.getUserId());
             if(Objects.nonNull(studentExercisesSituation)){
                 studentExercisesSituation.setExercisesReplyNum(1);
@@ -202,7 +222,27 @@ public class StudentCourseHomeworkServiceImpl extends BaseServiceImpl<Long, Stud
             LocalDate monDayDate = nowDate.with(DateUtil.weekFields.dayOfWeek(), DayOfWeek.MONDAY.getValue());
             LocalDate createDateTime = LocalDateTime.ofInstant(courseSchedule.getClassDate().toInstant(), DateUtil.zoneId).toLocalDate();
             LocalDate createMonday = createDateTime.with(DateUtil.weekFields.dayOfWeek(), DayOfWeek.MONDAY.getValue());
-            if(createDateTime.isBefore(monDayDate)){
+
+            LocalDate homeworkCreateDateTime = LocalDateTime.ofInstant(byStudentAndCourseHomewok.getCreateTime().toInstant(), DateUtil.zoneId).toLocalDate();
+            boolean isOk=false;
+            switch (createDateTime.getDayOfWeek()){
+                case SATURDAY:
+                    if(createDateTime.until(homeworkCreateDateTime, ChronoUnit.DAYS)<4){
+                        isOk=true;
+                    }
+                    break;
+                case SUNDAY:
+                    if(createDateTime.until(homeworkCreateDateTime, ChronoUnit.DAYS)<3){
+                        isOk=true;
+                    }
+                    break;
+                default:
+                    if(createDateTime.get(DateUtil.weekFields.weekOfYear())==homeworkCreateDateTime.get(DateUtil.weekFields.weekOfYear())){
+                        isOk=true;
+                    }
+                    break;
+            }
+            if(createDateTime.isBefore(monDayDate)&&isOk){
                 StudentExtracurricularExercisesSituation studentExercisesSituation = studentExtracurricularExercisesSituationDao.findStudentExercisesSituationsWithMonDay(createMonday.toString(), byStudentAndCourseHomewok.getUserId());
                 if(Objects.nonNull(studentExercisesSituation)){
                     if(YesOrNoEnum.YES.equals(byStudentAndCourseHomewok.getIsReplied())){

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

@@ -2769,16 +2769,18 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 
 			for (StudentPaymentOrder studentPaymentOrder:studentPaymentOrders){
 				//生成账户资金明细
-				sysUserCashAccountService.updateBalance(studentPaymentOrder.getUserId(),studentPaymentOrder.getActualAmount());
-				SysUserCashAccount sysUserCashAccount = sysUserCashAccountService.get(studentPaymentOrder.getUserId());
-				SysUserCashAccountDetail sysUserIncomeCashAccountDetail = new SysUserCashAccountDetail();
-				sysUserIncomeCashAccountDetail.setUserId(studentPaymentOrder.getUserId());
-				sysUserIncomeCashAccountDetail.setType(PlatformCashAccountDetailTypeEnum.REFUNDS);
-				sysUserIncomeCashAccountDetail.setStatus(DealStatusEnum.SUCCESS);
-				sysUserIncomeCashAccountDetail.setAmount(studentPaymentOrder.getActualAmount());
-				sysUserIncomeCashAccountDetail.setBalance(sysUserCashAccount.getBalance());
-				sysUserIncomeCashAccountDetail.setAttribute(studentPaymentOrder.getTransNo());
-				userCashAccountDetails.add(sysUserIncomeCashAccountDetail);
+				if(studentPaymentOrder.getExpectAmount().compareTo(BigDecimal.ZERO)>0){
+					sysUserCashAccountService.updateBalance(studentPaymentOrder.getUserId(),studentPaymentOrder.getExpectAmount());
+					SysUserCashAccount sysUserCashAccount = sysUserCashAccountService.get(studentPaymentOrder.getUserId());
+					SysUserCashAccountDetail sysUserIncomeCashAccountDetail = new SysUserCashAccountDetail();
+					sysUserIncomeCashAccountDetail.setUserId(studentPaymentOrder.getUserId());
+					sysUserIncomeCashAccountDetail.setType(PlatformCashAccountDetailTypeEnum.REFUNDS);
+					sysUserIncomeCashAccountDetail.setStatus(DealStatusEnum.SUCCESS);
+					sysUserIncomeCashAccountDetail.setAmount(studentPaymentOrder.getExpectAmount());
+					sysUserIncomeCashAccountDetail.setBalance(sysUserCashAccount.getBalance());
+					sysUserIncomeCashAccountDetail.setAttribute(studentPaymentOrder.getTransNo());
+					userCashAccountDetails.add(sysUserIncomeCashAccountDetail);
+				}
 			}
 			classGroupStudentMapperDao.updateVipGroupStudentStatus(noCreateSuccessVipGroup.getId().toString(),GroupType.VIP.getCode(),ClassGroupStudentStatusEnum.QUIT.getCode());
 		}