|
@@ -3708,6 +3708,20 @@ public class BizProcessInspecionController extends BaseController {
|
|
|
@Transactional
|
|
|
public AjaxResult remove(@PathVariable List<Long> ids) {
|
|
|
List<BizProcessInspectionDetail> bizProcessInspectionDetails = processInspectionDetailService.query().in("process_inspection_id", ids).list();
|
|
|
+ // 当有外协检查时 且是最新的检查时
|
|
|
+ List<BizProcessInspecion> outsourceProcessInspecion = bizProcessInspecionService.query().in("id", ids).eq("is_outsourced_inspection", 1).isNull("recheck_date").list();
|
|
|
+ // 查询之前的检查
|
|
|
+ List<BizProcessInspecion> oldOutsourceProcessInspecion = bizProcessInspecionService.query().in("outsource_order_detail_id", outsourceProcessInspecion.stream().map(BizProcessInspecion::getOutsourceOrderDetailId).collect(Collectors.toList())).isNotNull("recheck_date").list();
|
|
|
+ List<BizProcessInspecion> change = new ArrayList<>();
|
|
|
+ outsourceProcessInspecion.forEach(l -> {
|
|
|
+ BizProcessInspecion latest = oldOutsourceProcessInspecion.stream().filter(v -> v.getOutsourceOrderDetailId().equals(l.getOutsourceOrderDetailId())).max(Comparator.comparing(BizProcessInspecion::getRecheckDate)).orElse(null);
|
|
|
+ if (latest != null) {
|
|
|
+ latest.setRecheckDate(null);
|
|
|
+ change.add(latest);
|
|
|
+ }
|
|
|
+
|
|
|
+ });
|
|
|
+
|
|
|
List<BizDayworkCarrier> carriers = bizDayworkCarrierService.query().in("process_inspection_id", ids).list();
|
|
|
List<BizDayworkItemReject> rejects = bizDayworkItemRejectService.query().in("process_inspection_id", ids).list();
|
|
|
List<BizDayworkItemConsult> consults = bizDayworkItemConsultService.query().in("process_inspection_id", ids).list();
|
|
@@ -3719,6 +3733,7 @@ public class BizProcessInspecionController extends BaseController {
|
|
|
bizDayworkItemRejectService.removeBatchByIds(rejects);
|
|
|
bizDayworkCarrierService.removeBatchByIds(carriers);
|
|
|
bizDayworkItemConsultService.removeBatchByIds(consults);
|
|
|
+ bizProcessInspecionService.updateBatchById(change);
|
|
|
return toAjax(bizProcessInspecionService.removeBatchByIds(ids));
|
|
|
}
|
|
|
|