|
@@ -598,22 +598,24 @@ public class BizArchiveInputServiceImpl extends ServiceImpl<BizArchiveInputMappe
|
|
|
List<BizWorkOrderRecord> records = workOrderRecordService.query().in("work_order_id", workOrders.stream().map(BizWorkOrder::getId).collect(Collectors.toList())).list();
|
|
|
AtomicBoolean status = new AtomicBoolean(true);
|
|
|
workOrders.forEach(l -> {
|
|
|
- // 除了删除的工单明细之外的工单
|
|
|
- l.setDetails(otherDetails.stream().filter(v -> v.getWorkOrderId().equals(l.getId())).collect(Collectors.toList()));
|
|
|
- // 完成的部分
|
|
|
- l.setRecords(records.stream().filter(v -> v.getWorkOrderId().equals(l.getId())).collect(Collectors.toList()));
|
|
|
- if (l.getStartMonth() != null) {
|
|
|
- // 余下明细的结束月
|
|
|
- Integer monthNun = l.getDetails().stream().mapToInt(v -> v.getServiceNum() + v.getFreeNum()).sum();
|
|
|
- DateTime startDate = DateTime.of(l.getStartMonth());
|
|
|
- DateTime endDate = startDate.offsetNew(DateField.MONTH, monthNun - 1);
|
|
|
- if (records.stream().noneMatch(v -> (v.getYear() + v.getMonth()).compareTo(endDate.toString("yyyyMM")) >= 0)) {
|
|
|
- status.set(false);
|
|
|
+ if (otherDetails.size()>0 &&records.size()>0) {
|
|
|
+ // 除了删除的工单明细之外的工单
|
|
|
+ l.setDetails(otherDetails.stream().filter(v -> v.getWorkOrderId().equals(l.getId())).collect(Collectors.toList()));
|
|
|
+ // 完成的部分
|
|
|
+ l.setRecords(records.stream().filter(v -> v.getWorkOrderId().equals(l.getId())).collect(Collectors.toList()));
|
|
|
+ if (l.getStartMonth() != null) {
|
|
|
+ // 余下明细的结束月
|
|
|
+ Integer monthNun = l.getDetails().stream().mapToInt(v -> v.getServiceNum() + v.getFreeNum()).sum();
|
|
|
+ DateTime startDate = DateTime.of(l.getStartMonth());
|
|
|
+ DateTime endDate = startDate.offsetNew(DateField.MONTH, monthNun - 1);
|
|
|
+ if (records.stream().noneMatch(v -> (v.getYear() + v.getMonth()).compareTo(endDate.toString("yyyyMM")) >= 0)) {
|
|
|
+ status.set(false);
|
|
|
+ } else {
|
|
|
+ status.set(status.get());
|
|
|
+ }
|
|
|
} else {
|
|
|
status.set(status.get());
|
|
|
}
|
|
|
- } else {
|
|
|
- status.set(status.get());
|
|
|
}
|
|
|
});
|
|
|
return status.get();
|