This commit is contained in:
parent
1bea1f7f8b
commit
20159734dd
|
|
@ -1104,57 +1104,7 @@ public class RepairServiceImpl implements RepairService {
|
||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public int batchQualified(ArrayList<Long> ids) {
|
public int batchQualified(ArrayList<Long> ids) {
|
||||||
int result = 0;
|
return repairMapper.batchQualified(ids, SecurityUtils.getLoginUser().getUserid());
|
||||||
try {
|
|
||||||
// 根据id查询任务状态
|
|
||||||
RepairAuditDetails dto = repairApplyDetailsMapper.selectById(ids.get(0));
|
|
||||||
List<RepairTaskDetails> detailsList = repairApplyDetailsMapper.getRepairDetailsWhichNotSent(dto.getTaskId());
|
|
||||||
if (!CollectionUtils.isEmpty(detailsList)) {
|
|
||||||
Set<Long> idsSet = new HashSet<>(ids);
|
|
||||||
// 如果detailsList中的status除了ids中的数据,其余皆为已完成,则不需要创建新的维修单
|
|
||||||
boolean hasStatus = false;
|
|
||||||
for (RepairTaskDetails details : detailsList) {
|
|
||||||
if (!idsSet.contains(details.getId()) && "0".equals(details.getStatus())) {
|
|
||||||
hasStatus = true;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (hasStatus) {
|
|
||||||
// 查询协议ID
|
|
||||||
Long agreementId = taskAgreementMapper.selectAgreementIdByTaskId(dto.getTaskId());
|
|
||||||
// 插入任务表
|
|
||||||
Long newTaskId = insertTt(SecurityUtils.getUsername());
|
|
||||||
// 插入协议任务表
|
|
||||||
int res = insertTta(newTaskId, agreementId);
|
|
||||||
if (res <= 0) {
|
|
||||||
throw new ServiceException("协议任务表插入失败");
|
|
||||||
}
|
|
||||||
List<RepairTaskDetails> list = repairApplyDetailsMapper.getList(ids);
|
|
||||||
for (RepairTaskDetails details : list) {
|
|
||||||
RepairDeviceVO bean = new RepairDeviceVO();
|
|
||||||
bean.setTaskId(newTaskId);
|
|
||||||
bean.setMaId(details.getMaId() == null ? null :Long.valueOf(details.getMaId()));
|
|
||||||
bean.setTypeId(Long.valueOf(details.getTypeId()));
|
|
||||||
bean.setRepairNum(details.getRepairNum().subtract(details.getRepairedNum() == null ? BigDecimal.ZERO : details.getRepairedNum()));
|
|
||||||
bean.setRepairedNum(details.getRepairNum().subtract(details.getRepairedNum() == null ? BigDecimal.ZERO : details.getRepairedNum()));
|
|
||||||
bean.setStatus("1");
|
|
||||||
bean.setCreateBy(SecurityUtils.getUsername());
|
|
||||||
bean.setBackId(details.getBackId());
|
|
||||||
bean.setParentId(details.getId());
|
|
||||||
bean.setLevel((StringUtils.isNotBlank(details.getLevel())) ? String.valueOf(Integer.parseInt(details.getLevel()) + 1) : "1");
|
|
||||||
if ("0".equals(details.getStatus())) {
|
|
||||||
repairMapper.insertRepaired(bean);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
result += repairMapper.batchQualified(ids, SecurityUtils.getLoginUser().getUserid());
|
|
||||||
} catch (NumberFormatException e) {
|
|
||||||
e.printStackTrace();
|
|
||||||
} catch (ServiceException e) {
|
|
||||||
e.printStackTrace();
|
|
||||||
}
|
|
||||||
return result;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue