From 047335ccbb800ba47860e96f8bb58c0df8244ce9 Mon Sep 17 00:00:00 2001 From: zhaoqing <1670883518@qq.com> Date: Tue, 2 Jun 2026 11:42:35 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E5=AE=A2=E6=88=B7nc=E7=BC=96?= =?UTF-8?q?=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/mhd/system/api/UserServiceFeign.java | 3 ++ .../RemoteUserFeignFallbackFactory.java | 5 ++ .../service/UserApplicationService.java | 7 +++ .../repository/mapper/UserShipperMapper.java | 4 ++ .../interfaces/facade/UserShipperAPI.java | 24 +++++++++- .../po/ReservationStockInOrderPO.java | 2 + .../todo/ReservationStockInOrderDO.java | 3 ++ .../todo/ReservationStockInOrderDTO.java | 4 ++ ...rvationStockInOrderApplicationService.java | 48 ++++++++++++++++++- 9 files changed, 97 insertions(+), 3 deletions(-) diff --git a/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/UserServiceFeign.java b/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/UserServiceFeign.java index 1af715b05..7fc8e5033 100644 --- a/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/UserServiceFeign.java +++ b/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/UserServiceFeign.java @@ -214,4 +214,7 @@ public interface UserServiceFeign { @RequestParam(value = "pushTime", required = false) String pushTime, @RequestParam(value = "pushBy", required = false) Long pushBy, @RequestParam(value = "pushByName", required = false) String pushByName); + + @PostMapping("/userShipperApi/getCustomerNcCodeBatch") + AjaxResult getCustomerNcCodeBatch(@RequestBody List shipperIdList); } \ No newline at end of file diff --git a/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/factory/RemoteUserFeignFallbackFactory.java b/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/factory/RemoteUserFeignFallbackFactory.java index 69f55037c..49d5abe21 100644 --- a/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/factory/RemoteUserFeignFallbackFactory.java +++ b/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/factory/RemoteUserFeignFallbackFactory.java @@ -206,6 +206,11 @@ public class RemoteUserFeignFallbackFactory implements FallbackFactory updatePushStatus(Long shipperId, Integer pushStatus, String pushTime, Long pushBy, String pushByName) { return AjaxResult.error("更新失败" + throwable.getMessage()); } + + @Override + public AjaxResult getCustomerNcCodeBatch(List shipperIdList) { + return AjaxResult.error("更新失败" + throwable.getMessage()); + } }; } } \ No newline at end of file diff --git a/mhd-user-center/src/main/java/com/mhd/user/application/service/UserApplicationService.java b/mhd-user-center/src/main/java/com/mhd/user/application/service/UserApplicationService.java index c14e7f0dc..eff58c760 100644 --- a/mhd-user-center/src/main/java/com/mhd/user/application/service/UserApplicationService.java +++ b/mhd-user-center/src/main/java/com/mhd/user/application/service/UserApplicationService.java @@ -50,6 +50,7 @@ import com.mhd.user.domain.roleAggregate.service.RoleMenuDomainService; import com.mhd.user.domain.userAggregate.entity.*; import com.mhd.user.domain.userAggregate.factory.UserFactory; import com.mhd.user.domain.userAggregate.repository.mapper.UserMapper; +import com.mhd.user.domain.userAggregate.repository.mapper.UserShipperMapper; import com.mhd.user.domain.userAggregate.repository.po.*; import com.mhd.user.domain.userAggregate.repository.po.UserAuthInfoPo; import com.mhd.user.domain.userAggregate.repository.po.UserAuthPo; @@ -210,6 +211,8 @@ public class UserApplicationService { @Qualifier("tokenService") @Autowired private TokenService tokenService; + @Autowired + private UserShipperMapper userShipperMapper; /** * @Description 查询用户列表 @@ -5325,4 +5328,8 @@ public class UserApplicationService { BeanUtils.copyProperties(customerDO, userDO); userDomainService.updateUser(userDO); } + + public String getCustomerNcCode(Long shipperId) { + return userShipperMapper.getCustomerNcCode(shipperId); + } } \ No newline at end of file diff --git a/mhd-user-center/src/main/java/com/mhd/user/domain/userAggregate/repository/mapper/UserShipperMapper.java b/mhd-user-center/src/main/java/com/mhd/user/domain/userAggregate/repository/mapper/UserShipperMapper.java index 3631288cb..cb52f9854 100644 --- a/mhd-user-center/src/main/java/com/mhd/user/domain/userAggregate/repository/mapper/UserShipperMapper.java +++ b/mhd-user-center/src/main/java/com/mhd/user/domain/userAggregate/repository/mapper/UserShipperMapper.java @@ -6,6 +6,7 @@ import com.mhd.user.domain.userAggregate.entity.UserShipperEntity; import com.mhd.user.domain.userAggregate.repository.todo.UserShipperDO; import com.mhd.user.domain.userAggregate.repository.po.UserShipperPo; import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; import java.util.Date; import java.util.List; @@ -36,4 +37,7 @@ public interface UserShipperMapper extends BaseMapper { * @return */ int updatePushStatus(UserShipperEntity userShipper); + + @Select("select customer_nc_code from user_shipper where user_id = #{shipperId}") + String getCustomerNcCode(@Param("shipperId") Long shipperId); } \ No newline at end of file diff --git a/mhd-user-center/src/main/java/com/mhd/user/interfaces/facade/UserShipperAPI.java b/mhd-user-center/src/main/java/com/mhd/user/interfaces/facade/UserShipperAPI.java index 0cda4e023..6a46fc017 100644 --- a/mhd-user-center/src/main/java/com/mhd/user/interfaces/facade/UserShipperAPI.java +++ b/mhd-user-center/src/main/java/com/mhd/user/interfaces/facade/UserShipperAPI.java @@ -25,8 +25,7 @@ import org.springframework.format.annotation.DateTimeFormat; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; -import java.util.Date; -import java.util.List; +import java.util.*; @Api(tags = "用户中台管理-托运人管理") @Slf4j @@ -268,4 +267,25 @@ public class UserShipperAPI extends BaseController { return getDataTable(list); } + @Log(title = "托运人管理-查询", description ="查询托运人列表",businessType = BusinessType.INQUIRE) + @ApiOperation("查询托运人列表") + @GetMapping("/userShipperList2") + public TableDataInfo userShipperList2(UserShipperDTO userShipperDTO) { + //转换实体 + UserShipperDO userShipperDO = userShipperAssember.toUserShipperDO(userShipperDTO); + List list = userShipperApplicationService.userShipperList(userShipperDO); + return getDataTable(list); + } + + @PostMapping("/getCustomerNcCodeBatch") + public AjaxResult getCustomerNcCodeBatch(@RequestBody List shipperIdList){ + Map resultMap = new HashMap<>(); + if (shipperIdList != null && !shipperIdList.isEmpty()) { + for (Long shipperId : shipperIdList) { + String ncCode = userApplicationService.getCustomerNcCode(shipperId); + resultMap.put(shipperId, ncCode); + } + } + return AjaxResult.success(resultMap); + } } diff --git a/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockInOrder/repository/po/ReservationStockInOrderPO.java b/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockInOrder/repository/po/ReservationStockInOrderPO.java index 9dc9998e7..dc2148f9b 100644 --- a/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockInOrder/repository/po/ReservationStockInOrderPO.java +++ b/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockInOrder/repository/po/ReservationStockInOrderPO.java @@ -449,4 +449,6 @@ public class ReservationStockInOrderPO extends BaseVOEntity { @Excel(name = "附件url") private String pictureUrl; + @ApiModelProperty("NC客户编码") + private String customerNcCode; } \ No newline at end of file diff --git a/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockInOrder/repository/todo/ReservationStockInOrderDO.java b/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockInOrder/repository/todo/ReservationStockInOrderDO.java index 55678eb48..74b1a2d09 100644 --- a/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockInOrder/repository/todo/ReservationStockInOrderDO.java +++ b/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockInOrder/repository/todo/ReservationStockInOrderDO.java @@ -447,4 +447,7 @@ public class ReservationStockInOrderDO extends BaseVOEntity { @ApiModelProperty("附件url") @Excel(name = "附件url") private String pictureUrl; + + @ApiModelProperty("NC客户编码") + private String customerNcCode; } \ No newline at end of file diff --git a/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockInOrder/repository/todo/ReservationStockInOrderDTO.java b/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockInOrder/repository/todo/ReservationStockInOrderDTO.java index e2173dc74..ced473732 100644 --- a/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockInOrder/repository/todo/ReservationStockInOrderDTO.java +++ b/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockInOrder/repository/todo/ReservationStockInOrderDTO.java @@ -445,4 +445,8 @@ public class ReservationStockInOrderDTO extends ReservationStockInOrderBaseDTO { @ApiModelProperty("附件url") @Excel(name = "附件url") private String pictureUrl; + + @ApiModelProperty("NC客户编码") + private String customerNcCode; + } \ No newline at end of file diff --git a/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockInOrder/service/ReservationStockInOrderApplicationService.java b/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockInOrder/service/ReservationStockInOrderApplicationService.java index 5b899b753..1cdcfa6b9 100644 --- a/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockInOrder/service/ReservationStockInOrderApplicationService.java +++ b/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockInOrder/service/ReservationStockInOrderApplicationService.java @@ -56,6 +56,7 @@ import java.math.BigDecimal; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.*; +import java.util.stream.Collectors; /** * 入库单ApplicationService @@ -2158,7 +2159,52 @@ public class ReservationStockInOrderApplicationService { // } // } // } - return stockInOrderDomainService.queryList(stockInOrderDO); + // 查询订单列表 + List list = stockInOrderDomainService.queryList(stockInOrderDO); + +// ====== 批量查询NC客户编码 ====== + Set shipperIdSet = list.stream() + .map(ReservationStockInOrderPO::getShipperId) + .filter(Objects::nonNull) + .collect(Collectors.toSet()); + + Map ncCodeMap = new HashMap<>(); + if (!shipperIdSet.isEmpty()) { + try { + + AjaxResult result = userServiceFeign.getCustomerNcCodeBatch(new ArrayList<>(shipperIdSet)); + if (result != null && "200".equals(String.valueOf(result.get("code")))) { + Map dataMap = (Map) result.get("data"); + if (dataMap != null) { + for (Map.Entry entry : dataMap.entrySet()) { + Long key = Long.valueOf(entry.getKey().toString()); + String value = entry.getValue() != null ? entry.getValue().toString() : null; + ncCodeMap.put(key, value); + } + } + } + } catch (Exception e) { + log.error("批量查询NC客户编码失败", e); + } + } + +// 前端传入的NC编码 + String filterNcCode = stockInOrderDO.getCustomerNcCode(); + +// 设置NC编码并过滤 + List filteredList = new ArrayList<>(); + for (ReservationStockInOrderPO po : list) { + String ncCode = ncCodeMap.get(po.getShipperId()); + po.setCustomerNcCode(ncCode); + + // 如果前端传了NC编码,判断是否一致 + if (filterNcCode != null && !filterNcCode.equals(ncCode)) { + continue; + } + filteredList.add(po); + } + + return filteredList; } } \ No newline at end of file