Bläddra i källkod

fix:考勤提交导出bug

caozixuan 1 år sedan
förälder
incheckning
2bf5e577fa

+ 1 - 1
sop-api/src/main/java/com/qmth/sop/server/api/TBDingSubmitController.java

@@ -146,7 +146,7 @@ public class TBDingSubmitController {
                                    @ApiParam(value = "需处理异常考勤限制") @RequestParam(required = false) Integer dingExceptionLimit,
                                    @ApiParam(value = "补卡限制") @RequestParam(required = false) Integer remainLimit,
                                    @ApiParam(value = "异常限制") @RequestParam(required = false) Integer exceptionLimit) throws Exception {
-        Map<String, Object> map = tbTaskService.saveTask(TaskTypeEnum.USER_ARCHIVES_EXPORT);
+        Map<String, Object> map = tbTaskService.saveTask(TaskTypeEnum.DING_SUBMIT_EXPORT);
         DingSubmitQuery query = new DingSubmitQuery();
         query.setServiceUnitId(SystemConstant.convertIdToLong(serviceUnitId));
         query.setDingSubmitStatusDesc(dingSubmitStatusDesc);

+ 8 - 3
sop-business/src/main/java/com/qmth/sop/business/service/impl/TBDingServiceImpl.java

@@ -213,13 +213,18 @@ public class TBDingServiceImpl extends ServiceImpl<TBDingMapper, TBDing> impleme
                 } else {
                     // 完全没有这天的打卡记录
                     DingInfoResult in = new DingInfoResult();
-                    in.setStatus(DingStatusEnum.RE_SIGN);
                     DingInfoResult out = new DingInfoResult();
-                    out.setStatus(DingStatusEnum.RE_SIGN);
+                    if (!endDate.equals(signDate)) {
+                        exceptionCount = exceptionCount + 2;
+                        in.setStatus(DingStatusEnum.RE_SIGN);
+                        out.setStatus(DingStatusEnum.RE_SIGN);
+                    } else {
+                        in.setStatus(DingStatusEnum.NO_SIGN);
+                        out.setStatus(DingStatusEnum.NO_SIGN);
+                    }
                     dingFormResult.setSignInInfo(in);
                     dingFormResult.setSignOutInfo(out);
                     dingFormResult.setSignDate(signDate);
-                    exceptionCount = exceptionCount + 2;
                 }
                 dingFormResult.setYear(year);
                 formList.add(dingFormResult);

+ 9 - 3
sop-business/src/main/java/com/qmth/sop/business/service/impl/TBDingSubmitServiceImpl.java

@@ -303,8 +303,12 @@ public class TBDingSubmitServiceImpl extends ServiceImpl<TBDingSubmitMapper, TBD
             dto.setCustomName(e.getCustomName());
             dto.setProvince(e.getProvince());
             dto.setCity(e.getCity());
-            dto.setApproachTime(DateDisposeUtils.getDateStr(e.getApproachTime()));
-            dto.setDepartureTime(DateDisposeUtils.getDateStr(e.getDepartureTime()));
+            if (e.getApproachTime() != null && e.getApproachTime() > 0){
+                dto.setApproachTime(DateDisposeUtils.getDateStr(e.getApproachTime()));
+            }
+            if (e.getDepartureTime() != null && e.getDepartureTime() > 0){
+                dto.setDepartureTime(DateDisposeUtils.getDateStr(e.getDepartureTime()));
+            }
             dto.setArchivesInfo(e.getArchivesInfo());
             dto.setRoleType(e.getRoleType().getDesc());
             dto.setSupplierName(e.getSupplierName());
@@ -319,7 +323,9 @@ public class TBDingSubmitServiceImpl extends ServiceImpl<TBDingSubmitMapper, TBD
             dto.setExceptionCount(e.getExceptionCount());
             dto.setSubmitStatus(e.getSubmitStatus().getSubmitDesc());
             dto.setSubmitUserName(e.getSubmitUserName());
-            dto.setSubmitTime(DateDisposeUtils.getDateStr(e.getSubmitTime()));
+            if (e.getSubmitTime() != null && e.getSubmitTime() > 0){
+                dto.setSubmitTime(DateDisposeUtils.getDateStr(e.getSubmitTime()));
+            }
             return Stream.of(dto);
         }).collect(Collectors.toList());
     }