|
|
@@ -1,5 +1,6 @@
|
|
|
package com.ruoyi.system.service.impl;
|
|
|
|
|
|
+import java.math.BigDecimal;
|
|
|
import java.sql.SQLException;
|
|
|
import java.sql.SQLIntegrityConstraintViolationException;
|
|
|
import java.time.*;
|
|
|
@@ -926,6 +927,14 @@ public class SysUserServiceImpl implements ISysUserService
|
|
|
|
|
|
@Override
|
|
|
public void updateUserClockDetails(UserClockDetailsInput in) {
|
|
|
+ BigDecimal amount = BigDecimal.ZERO;
|
|
|
+ for (ProjectStaffRecord e : in.getList()) {
|
|
|
+ amount = amount.add(BigDecimal.valueOf(e.getCheckDuration()));
|
|
|
+ }
|
|
|
+ UserRecord userRecord = userRecordMapper.selectByPrimaryKey(in.getId());
|
|
|
+ if (amount.compareTo(BigDecimal.valueOf(userRecord.getSumDuration())) > 0){
|
|
|
+ throw new ServiceException(String.format("核算统计[%s]间超过打卡工时[%s],请重新输入!",amount,userRecord.getSumDuration()));
|
|
|
+ }
|
|
|
for (ProjectStaffRecord projectStaffRecord : in.getList()) {
|
|
|
projectStaffRecord.setCheckStatus(1);
|
|
|
projectStaffRecordMapper.updateByPrimaryKeySelective(projectStaffRecord);
|