Преглед изворни кода

[task-4206]子排班考勤功能开发/排班相关接口调整

gaozl пре 11 месеци
родитељ
комит
49a1777278

+ 15 - 5
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/employee/domain/AttendanceDetail.java

@@ -17,6 +17,7 @@ import com.lc.ibps.components.employee.persistence.dao.AttendanceDetailQueryDao;
 import com.lc.ibps.components.employee.repository.AttendanceDetailRepository;
 import com.lc.ibps.components.employee.repository.AttendanceDetailRepository;
 import com.lc.ibps.components.employee.persistence.entity.AttendanceDetailPo;
 import com.lc.ibps.components.employee.persistence.entity.AttendanceDetailPo;
 
 
+import java.time.Duration;
 import java.time.LocalDateTime;
 import java.time.LocalDateTime;
 import java.time.format.DateTimeFormatter;
 import java.time.format.DateTimeFormatter;
 
 
@@ -82,16 +83,25 @@ public class AttendanceDetail extends AbstractDomain<String, AttendanceDetailPo>
 				attendanceDetailPo.setZhuangTai1("正常");
 				attendanceDetailPo.setZhuangTai1("正常");
 			}else {
 			}else {
 				attendanceDetailPo.setZhuangTai1("异常");
 				attendanceDetailPo.setZhuangTai1("异常");
+				Duration duration = Duration.between(now, startTime);
+				attendanceDetailPo.setChiDaoShiChang(Math.abs(duration.toMinutes()));
 			}
 			}
 		}else {
 		}else {
 			// 下班打卡
 			// 下班打卡
 			attendanceDetailPo.setDaKaShiJian2(now.format(DATETIME_FORMATTER));
 			attendanceDetailPo.setDaKaShiJian2(now.format(DATETIME_FORMATTER));
 			attendanceDetailPo.setZhuangTai2("正常");
 			attendanceDetailPo.setZhuangTai2("正常");
-//				if (attendanceDetailPo.getDaKaShiJian1().equals("正常") && attendanceDetailPo.getDaKaShiJian2().equals("正常")){
-//					attendanceDetailPo.setKaoQinZhuangTa("正常");
-//				}else {
-//					attendanceDetailPo.setKaoQinZhuangTa("异常");
-//				}
+			Duration duration = Duration.between(now, endTime);
+			attendanceDetailPo.setJiaBanShiChang(Math.max(duration.toMinutes(),0));
+
+			LocalDateTime daKaShiJian = LocalDateTime.parse(attendanceDetailPo.getDaKaShiJian1(), DATETIME_FORMATTER);
+			Duration gongZuoShiChang = Duration.between(daKaShiJian, now);
+			attendanceDetailPo.setGongZuoShiChan(Math.abs(gongZuoShiChang.toMinutes()));
+
+			if (attendanceDetailPo.getDaKaShiJian1().equals("正常") && attendanceDetailPo.getDaKaShiJian2().equals("正常")){
+				attendanceDetailPo.setKaoQinZhuangTa("正常");
+			}else {
+				attendanceDetailPo.setKaoQinZhuangTa("异常");
+			}
 		}
 		}
 		attendanceDetailPo.setDaKaCiShu(attendanceDetailPo.getDaKaCiShu()+1);
 		attendanceDetailPo.setDaKaCiShu(attendanceDetailPo.getDaKaCiShu()+1);
 	}
 	}