diff --git a/mhd_oms/src/main/java/com/mhd/oms/application/service/businessDocumentOrder/BusinessDocumentOrderAdjustService.java b/mhd_oms/src/main/java/com/mhd/oms/application/service/businessDocumentOrder/BusinessDocumentOrderAdjustService.java index 44ce3ebbe..68de46eed 100644 --- a/mhd_oms/src/main/java/com/mhd/oms/application/service/businessDocumentOrder/BusinessDocumentOrderAdjustService.java +++ b/mhd_oms/src/main/java/com/mhd/oms/application/service/businessDocumentOrder/BusinessDocumentOrderAdjustService.java @@ -36,6 +36,7 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.Date; import java.util.List; +import java.util.Map; import java.util.stream.Collectors; /** @@ -83,7 +84,7 @@ public class BusinessDocumentOrderAdjustService { "orderStatus", "reviewStatus", "reviewId", "review", "reviewTime", "reviewOpinion", "salesManager", "auditStatus", "auditBy", "auditTime", "executeStatus", "executeId", "executeTime", "executor", - "executeOrderId", "executeOrderNumber", "adjustStatus", + "executeOrderId", "executeOrderNumber", "isDelete", "delFlag", "createBy", "createByName", "createTime", "updateBy", "updateByName", "updateTime", "pushStatus", "pushTime", "pushBy", "pushByName", @@ -250,11 +251,27 @@ public class BusinessDocumentOrderAdjustService { /** * 按业务单查询调整记录(供订单详情页"调整记录"Tab用) + * 每条记录同时带出调整后明细快照(detail),前端可自包含展示,无需再单独调详情接口 */ public List listAdjustRecordByOrder(Long orderId) { BusinessDocumentOrderAdjustQueryDTO query = new BusinessDocumentOrderAdjustQueryDTO(); query.setOrderId(orderId); - return listAdjustRecord(query); + List list = listAdjustRecord(query); + if (list == null || list.isEmpty()) { + return list; + } + // 批量取明细快照按 adjust_id 一次性拼上,避免 N+1 + List adjustIds = list.stream() + .map(BusinessDocumentOrderAdjustRecordDTO::getId) + .collect(Collectors.toList()); + List details = adjustDetailMapper.selectList( + new LambdaQueryWrapper() + .in(BusinessDocumentOrderAdjustDetail::getAdjustId, adjustIds) + .eq(BusinessDocumentOrderAdjustDetail::getDelFlag, 1)); + Map detailMap = details.stream() + .collect(Collectors.toMap(BusinessDocumentOrderAdjustDetail::getAdjustId, d -> d, (a, b) -> a)); + list.forEach(vo -> vo.setDetail(detailMap.get(vo.getId()))); + return list; } /** diff --git a/mhd_oms/src/main/java/com/mhd/oms/domain/businessDocumentOrder/entity/BusinessDocumentOrder.java b/mhd_oms/src/main/java/com/mhd/oms/domain/businessDocumentOrder/entity/BusinessDocumentOrder.java index 823941199..29f15fe9c 100644 --- a/mhd_oms/src/main/java/com/mhd/oms/domain/businessDocumentOrder/entity/BusinessDocumentOrder.java +++ b/mhd_oms/src/main/java/com/mhd/oms/domain/businessDocumentOrder/entity/BusinessDocumentOrder.java @@ -825,7 +825,4 @@ public class BusinessDocumentOrder extends BaseVOEntity{ @ApiModelProperty("车次") @Excel(name = "车次") private String shuttleNo; - - @ApiModelProperty("业务单调整状态 0-无 1-调整待审核 2-调整驳回 3-调整已通过") - private Integer adjustStatus; } diff --git a/mhd_oms/src/main/java/com/mhd/oms/domain/businessDocumentOrderAdjustDetail/entity/BusinessDocumentOrderAdjustDetail.java b/mhd_oms/src/main/java/com/mhd/oms/domain/businessDocumentOrderAdjustDetail/entity/BusinessDocumentOrderAdjustDetail.java index 178d53c4b..2587cb23d 100644 --- a/mhd_oms/src/main/java/com/mhd/oms/domain/businessDocumentOrderAdjustDetail/entity/BusinessDocumentOrderAdjustDetail.java +++ b/mhd_oms/src/main/java/com/mhd/oms/domain/businessDocumentOrderAdjustDetail/entity/BusinessDocumentOrderAdjustDetail.java @@ -3,6 +3,8 @@ package com.mhd.oms.domain.businessDocumentOrderAdjustDetail.entity; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -24,9 +26,11 @@ public class BusinessDocumentOrderAdjustDetail implements Serializable { @ApiModelProperty("主键") @TableId(type = IdType.ASSIGN_ID) + @JsonSerialize(using = ToStringSerializer.class) private Long id; @ApiModelProperty("关联调整主记录ID") + @JsonSerialize(using = ToStringSerializer.class) private Long adjustId; @ApiModelProperty("业务单ID") diff --git a/mhd_oms/src/main/java/com/mhd/oms/interfaces/dto/businessDocumentOrderAdjust/BusinessDocumentOrderAdjustRecordDTO.java b/mhd_oms/src/main/java/com/mhd/oms/interfaces/dto/businessDocumentOrderAdjust/BusinessDocumentOrderAdjustRecordDTO.java index 1a5a73888..239c67d04 100644 --- a/mhd_oms/src/main/java/com/mhd/oms/interfaces/dto/businessDocumentOrderAdjust/BusinessDocumentOrderAdjustRecordDTO.java +++ b/mhd_oms/src/main/java/com/mhd/oms/interfaces/dto/businessDocumentOrderAdjust/BusinessDocumentOrderAdjustRecordDTO.java @@ -1,5 +1,7 @@ package com.mhd.oms.interfaces.dto.businessDocumentOrderAdjust; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import com.mhd.oms.domain.businessDocumentOrderAdjustDetail.entity.BusinessDocumentOrderAdjustDetail; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -16,6 +18,7 @@ public class BusinessDocumentOrderAdjustRecordDTO implements Serializable { private static final long serialVersionUID = 1L; @ApiModelProperty("主记录ID") + @JsonSerialize(using = ToStringSerializer.class) private Long id; @ApiModelProperty("业务单ID")