Browse Source

# 复核逻辑修改

zhongwei
haungxing 11 months ago
parent
commit
0bc016f7ca
  1. 5
      hzims-service/safeproduct/src/main/java/com/hnac/hzims/safeproduct/dto/SafetyToolBatchRecheckDTO.java
  2. 35
      hzims-service/safeproduct/src/main/java/com/hnac/hzims/safeproduct/service/impl/SafetyToolServiceImpl.java

5
hzims-service/safeproduct/src/main/java/com/hnac/hzims/safeproduct/dto/SafetyToolBatchRecheckDTO.java

@ -7,6 +7,8 @@ import org.springblade.core.tool.utils.StringUtil;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.Date;
import java.util.Set;
/**
@ -24,6 +26,9 @@ public class SafetyToolBatchRecheckDTO implements Serializable {
@NotEmpty(message = "安全工器具ID集合不能为空")
private Set<Long> toolIds;
@ApiModelProperty(value = "复核时间")
private Date checkTime;
@ApiModelProperty(value = "备注")
@NotBlank(message = "备注不能为空")
private String remark;

35
hzims-service/safeproduct/src/main/java/com/hnac/hzims/safeproduct/service/impl/SafetyToolServiceImpl.java

@ -127,37 +127,16 @@ public class SafetyToolServiceImpl extends BaseServiceImpl<SafetyToolMapper, Saf
@Override
public void doBatchRecheck(SafetyToolBatchRecheckDTO req) {
//更新工器具记录数据
Date currentTime = new Date();
Date checkTime = Func.isNotEmpty(req.getCheckTime()) ? req.getCheckTime() : new Date();
Long userId = AuthUtil.getUserId();
String userName = AuthUtil.getUserName();
List<SafetyToolEntity> safetyTools = safetyToolMapper.selectBatchIds(req.getToolIds());
for (SafetyToolEntity item : safetyTools) {
item.setLastCheckTime(currentTime);
item.setNextCheckTime(DateUtil.plusDays(currentTime, Long.valueOf(item.getSafeTime().toString())));
String noticeUsers = item.getNoticeUsers();
if (!StringUtils.isEmpty(noticeUsers)) {
String[] split = noticeUsers.split(",");
for (String s : split) {
PlanMsgRecordDto planMsgRecordDtoDto = new PlanMsgRecordDto();
planMsgRecordDtoDto.setTemplateId(item.getMessageTemplateId());
planMsgRecordDtoDto.setTaskId(item.getId());
planMsgRecordDtoDto.setDeptId(item.getCurSts());
planMsgRecordDtoDto.setCreateUser(item.getCreateUser());
planMsgRecordDtoDto.setReceiver(Long.valueOf(s));
ZoneId zoneId = ZoneId.systemDefault();
Date nextCheckTime = item.getNextCheckTime();
planMsgRecordDtoDto.setPlanTime(nextCheckTime.toInstant().atZone(zoneId).toLocalDateTime());
TemplateService templateService1 =
templateService.stream().filter(item1 -> item1.isTemplateStatus(1)).findFirst().orElse(null);
templateService1.execute(planMsgRecordDtoDto);
}
}
item.setLastCheckTime(checkTime);
item.setNextCheckTime(DateUtil.plusDays(checkTime, Long.valueOf(item.getSafeTime().toString())));
}
if (!super.updateBatchById(safetyTools)) {
throw new RuntimeException("数据库update操作失败!");
throw new ServiceException("数据库update操作失败!");
}
//插入复核记录
@ -167,15 +146,13 @@ public class SafetyToolServiceImpl extends BaseServiceImpl<SafetyToolMapper, Saf
entity.setCheckUserName(userName);
entity.setCheckUserId(userId);
entity.setToolId(item.getId());
entity.setCheckTime(currentTime);
entity.setCheckTime(checkTime);
entity.setRemark(req.getRemark());
safetyToolRechecks.add(entity);
}
if (safetyToolRecheckMapper.insertBatch(safetyToolRechecks) == 0) {
throw new RuntimeException("数据库insert操作失败!");
throw new ServiceException("数据库insert操作失败!");
}
}
@Override

Loading…
Cancel
Save