diff --git a/ghy-admin/src/main/java/com/ghy/web/controller/order/OrderController.java b/ghy-admin/src/main/java/com/ghy/web/controller/order/OrderController.java index c3cf7a3a..0ff3398e 100644 --- a/ghy-admin/src/main/java/com/ghy/web/controller/order/OrderController.java +++ b/ghy-admin/src/main/java/com/ghy/web/controller/order/OrderController.java @@ -1632,17 +1632,24 @@ public class OrderController extends BaseController { // 查询售后记录 List afterServiceRecords = new ArrayList<>(); + List mewAfterServiceRecords = new ArrayList<>(); List detailOrderList = orderDetailService.selectByOrderMasterId(master.getId()); + boolean hasMatchingAfterService = false; detailOrderList.stream().forEach(detail -> { - // 只显示子单师傅ID和主单师傅ID一致的售后订单 - if (detail.getWorkerId() != null && detail.getWorkerId().equals(master.getWorkerId())) { - AfterServiceRecord afterServiceRecordQry = new AfterServiceRecord(); - afterServiceRecordQry.setOrderDetailId(detail.getId()); - List records = afterServiceRecordService - .selectAfterServiceRecordList(afterServiceRecordQry); - afterServiceRecords.addAll(records); + AfterServiceRecord afterServiceRecordQry = new AfterServiceRecord(); + afterServiceRecordQry.setOrderDetailId(detail.getId()); + List records = afterServiceRecordService + .selectAfterServiceRecordList(afterServiceRecordQry); + // 检查子单师傅ID是否与主单师傅ID一致且有售后记录 + afterServiceRecords.addAll(records); + if (detail.getWorkerId() != null && detail.getWorkerId().equals(master.getWorkerId()) && !records.isEmpty()) { + mewAfterServiceRecords.addAll(records); } }); + // 设置是否显示售后记录字段 + if (!mewAfterServiceRecords.isEmpty()) { + hasMatchingAfterService = true; + } for (OrderGoods orderGoods : orderStandardList) { OrderStandard orderStandard = new OrderStandard(); @@ -1692,6 +1699,7 @@ public class OrderController extends BaseController { orderListResponse.setTimeout(master.getTimeout()); orderListResponse.setTimeoutFineTimes(master.getTimeoutFineTimes()); orderListResponse.setAfterServiceRecordList(afterServiceRecords); + orderListResponse.setShowAfterServiceRecord(hasMatchingAfterService ? 1 : 0); orderListResponse.setCreateTime(master.getCreateTime()); orderListResponse.setUpdateTime(master.getUpdateTime()); orderListResponses.add(orderListResponse); @@ -1973,17 +1981,24 @@ public class OrderController extends BaseController { // 查询售后记录 List afterServiceRecords = new ArrayList<>(); + List mewAfterServiceRecords = new ArrayList<>(); List detailOrderList = orderDetailService.selectByOrderMasterId(master.getId()); + boolean hasMatchingAfterService = false; detailOrderList.stream().forEach(detail -> { - // 只显示子单师傅ID和主单师傅ID一致的售后订单 - if (detail.getWorkerId() != null && detail.getWorkerId().equals(master.getWorkerId())) { - AfterServiceRecord afterServiceRecordQry = new AfterServiceRecord(); - afterServiceRecordQry.setOrderDetailId(detail.getId()); - List records = afterServiceRecordService - .selectAfterServiceRecordList(afterServiceRecordQry); - afterServiceRecords.addAll(records); + AfterServiceRecord afterServiceRecordQry = new AfterServiceRecord(); + afterServiceRecordQry.setOrderDetailId(detail.getId()); + List records = afterServiceRecordService + .selectAfterServiceRecordList(afterServiceRecordQry); + // 检查子单师傅ID是否与主单师傅ID一致且有售后记录 + afterServiceRecords.addAll(records); + if (detail.getWorkerId() != null && detail.getWorkerId().equals(master.getWorkerId()) && !records.isEmpty()) { + mewAfterServiceRecords.addAll(records); } }); + // 设置是否显示售后记录字段 + if (!mewAfterServiceRecords.isEmpty()) { + hasMatchingAfterService = true; + } for (OrderGoods orderGoods : orderStandardList) { OrderStandard orderStandard = new OrderStandard(); @@ -2001,6 +2016,7 @@ public class OrderController extends BaseController { && master.getWorkerId() != null; logger.info("是否为监控单{}主单id{}", condition, master); // 编辑返回属性 + orderListResponse.setShowAfterServiceRecord(hasMatchingAfterService ? 1 : 0); orderListResponse.setWorkerRemark(master.getWorkerRemark()); orderListResponse.setGoods(goods); orderListResponse.setIsNeedBill(master.getIsNeedBill()); @@ -2241,9 +2257,7 @@ public class OrderController extends BaseController { afterServiceRecord.setOrderDetailId(detail.getId()); List afterServiceRecordList =afterServiceRecordService.selectAfterServiceRecordList(afterServiceRecord); - if (detail.getWorkerId()!=orderMaster.getWorkerId()) { - afterServiceRecordList=null; - } + // 编辑返回属性 orderListResponse.setWorkerRemark(detail.getWorkerRemark()); orderListResponse.setGoods(goods); diff --git a/ghy-admin/src/main/java/com/ghy/web/pojo/vo/OrderListResponse.java b/ghy-admin/src/main/java/com/ghy/web/pojo/vo/OrderListResponse.java index 5dbb2794..9d20c9c0 100644 --- a/ghy-admin/src/main/java/com/ghy/web/pojo/vo/OrderListResponse.java +++ b/ghy-admin/src/main/java/com/ghy/web/pojo/vo/OrderListResponse.java @@ -320,4 +320,9 @@ public class OrderListResponse { */ @Excel(name = "是否已撤销服务主单", cellType = Excel.ColumnType.NUMERIC, readConverterExp = "0=未撤销,1=已撤销") private Integer serviceCancelled; + + /** + * 是否显示售后记录:0=不显示,1=显示 + */ + private Integer showAfterServiceRecord = 0; }