Browse Source

Merge remote-tracking branch 'origin/master'

zouxuan 4 years ago
parent
commit
5f5afe057b

+ 12 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/StudentAttendanceDto.java

@@ -1,6 +1,7 @@
 package com.ym.mec.biz.dal.dto;
 
 import com.ym.mec.biz.dal.entity.StudentAttendance;
+import io.swagger.annotations.ApiModelProperty;
 
 import java.util.List;
 
@@ -16,8 +17,19 @@ public class StudentAttendanceDto {
 
     private Long courseScheduleId;
 
+    @ApiModelProperty(value = "备注",required = false)
+    private String remark;
+
     private List<StudentAttendance> studentAttendances;
 
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
     public Long getCourseScheduleId() {
         return courseScheduleId;
     }

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

@@ -22,7 +22,7 @@ public interface StudentAttendanceService extends BaseService<Long, StudentAtten
 	 * @Date: 2019/9/11
 	 * 批量插入学生上课签到信息
 	 */
-	void addStudentAttendances(StudentAttendanceDto studentAttendanceInfo);
+	Map<String, Object> addStudentAttendances(StudentAttendanceDto studentAttendanceInfo);
 
 	/**
 	 * @describe 更新学生点名信息

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

@@ -28,6 +28,8 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Isolation;
 import org.springframework.transaction.annotation.Transactional;
+import org.springframework.transaction.interceptor.TransactionAspectSupport;
+import org.springframework.transaction.interceptor.TransactionalProxy;
 import org.springframework.util.CollectionUtils;
 
 import java.util.*;
@@ -80,7 +82,7 @@ public class StudentAttendanceServiceImpl extends BaseServiceImpl<Long, StudentA
 
     @Override
     @Transactional(rollbackFor = Exception.class, isolation = Isolation.READ_COMMITTED)
-    public void addStudentAttendances(StudentAttendanceDto studentAttendanceInfos) {
+    public Map<String, Object> addStudentAttendances(StudentAttendanceDto studentAttendanceInfos) {
         List<StudentAttendance> studentAttendances = studentAttendanceInfos.getStudentAttendances();
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         if (Objects.isNull(sysUser)) {
@@ -174,8 +176,11 @@ public class StudentAttendanceServiceImpl extends BaseServiceImpl<Long, StudentA
         courseSchedule.setLeaveStudentNum(leaveStudentNum);
         courseScheduleDao.update(courseSchedule);
 
+        Map<String, Object> result = new HashMap<>();
+
         if (!courseSchedule.getType().equals(CourseSchedule.CourseScheduleType.VIP)) {
-            return;
+            result.put("status",0);
+            return result;
         }
 
         if (StringUtils.isBlank(studentAttendanceInfos.getSignInLongitudeLatitude())) {
@@ -205,6 +210,13 @@ public class StudentAttendanceServiceImpl extends BaseServiceImpl<Long, StudentA
             }
         }
 
+        if(StringUtils.isEmpty(studentAttendanceInfos.getRemark())&&!isInScore){
+            //当前为异常签到,请填写原因!
+            result.put("status",2);
+            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+            return result;
+        }
+
         TeacherAttendance teacherAttendance = teacherAttendanceDao.findByTeacherAttendanceInfo(sysUser.getId().longValue(), courseSchedule.getId());
 
         teacherAttendance.setSignInLongitudeLatitude(studentAttendanceInfos.getSignInLongitudeLatitude());
@@ -226,6 +238,10 @@ public class StudentAttendanceServiceImpl extends BaseServiceImpl<Long, StudentA
         } else {
             teacherAttendanceDao.insert(teacherAttendance);
         }
+
+        result.put("status",0);
+        result.put("currentTime",date);
+        return result;
     }
 
     @Override

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

@@ -172,11 +172,15 @@ public class StudentPaymentRouteOrderServiceImpl extends BaseServiceImpl<Long, S
         }
 
         Date nowDate = new Date();
+        String orderNo = idGeneratorService.generatorId("payment") + "";
 
         studentPaymentRouteOrder.setUpdateBy(operatorId);
         studentPaymentRouteOrder.setUpdateTime(nowDate);
         studentPaymentRouteOrder.setAuditComment(memo);
         studentPaymentRouteOrder.setAuditStatus(auditStatus);
+        if (auditStatus == AuditStatusEnum.PASS) {
+            studentPaymentRouteOrder.setOrderNo(orderNo);
+        }
 
         studentPaymentRouteOrderDao.update(studentPaymentRouteOrder);
 
@@ -197,6 +201,7 @@ public class StudentPaymentRouteOrderServiceImpl extends BaseServiceImpl<Long, S
             studentPaymentOrder.setUserId(studentPaymentRouteOrder.getUserId());
             studentPaymentOrder.setPayTime(studentPaymentRouteOrder.getPayTime());
             studentPaymentOrder.setTransNo(studentPaymentRouteOrder.getTransNo());
+            studentPaymentOrder.setOrderNo(orderNo);
 
             studentPaymentRouteOrderDao.insertOrder(studentPaymentOrder);
 
@@ -280,6 +285,10 @@ public class StudentPaymentRouteOrderServiceImpl extends BaseServiceImpl<Long, S
                 sellOrderDao.batchInsert(sellOrderList);
             }
 
+            if (studentPaymentRouteOrder.getCalenderId() == null) {
+                return true;
+            }
+
             //根据学校缴费项id,确定缴费状态
             BigDecimal amount = studentPaymentRouteOrderDao.sumAmountByCalenderId(studentPaymentRouteOrder.getCalenderId());
             List<MusicGroupPaymentCalenderDetail> calenderDetails = musicGroupPaymentCalenderDetailDao.getCalenderDetailWithCalender(studentPaymentRouteOrder.getCalenderId());
@@ -470,7 +479,7 @@ public class StudentPaymentRouteOrderServiceImpl extends BaseServiceImpl<Long, S
                     if (studentPaymentRouteOrder.getSaleAmount() == null) {
                         throw new BizException("导入失败:交易流水号{},收入类型为销售收入时,销售金额不可为空", studentPaymentRouteOrder.getTransNo());
                     }
-                    studentPaymentRouteOrder.setServiceAmount(null);
+                    studentPaymentRouteOrder.setServiceAmount(BigDecimal.ZERO);
                     String goodsIds = studentPaymentRouteOrder.getGoodsIds();
                     String goodsNums = studentPaymentRouteOrder.getGoodsNums();
 
@@ -502,11 +511,13 @@ public class StudentPaymentRouteOrderServiceImpl extends BaseServiceImpl<Long, S
                     studentPaymentRouteOrder.setGoodsJson(goodsJSON.toJSONString());
                     //服务收入
                 } else {
-                    studentPaymentRouteOrder.setSaleAmount(null);
+                    studentPaymentRouteOrder.setSaleAmount(BigDecimal.ZERO);
                     if (studentPaymentRouteOrder.getServiceAmount() == null) {
                         throw new BizException("导入失败:交易流水号{},收入类型为服务收入时,服务金额不可为空", studentPaymentRouteOrder.getTransNo());
                     }
                 }
+                studentPaymentRouteOrder.setRouteBalanceAmount(BigDecimal.ZERO);
+                studentPaymentRouteOrder.setRouteAmount(studentPaymentRouteOrder.getSaleAmount().add(studentPaymentRouteOrder.getServiceAmount()));
                 studentPaymentRouteOrder.setCreateBy(sysUser.getId());
                 studentPaymentRouteOrder.setUpdateBy(sysUser.getId());
                 studentPaymentRouteOrder.setUserId(sysUser.getId());

+ 1 - 2
mec-teacher/src/main/java/com/ym/mec/teacher/controller/TeacherAttendanceController.java

@@ -54,8 +54,7 @@ public class TeacherAttendanceController extends BaseController {
     @ApiOperation(value = "点名")
     @PostMapping("/addStudentAttendances")
     public Object addStudentAttendances(@RequestBody StudentAttendanceDto studentAttendanceInfo){
-        studentAttendanceService.addStudentAttendances(studentAttendanceInfo);
-        return succeed();
+        return succeed(studentAttendanceService.addStudentAttendances(studentAttendanceInfo));
     }
 
     @ApiOperation(value = "获取签退详情")