Explorar el Código

feat(order): 优化订单分配功能并增加供应商伙伴商名称显示

- 在订单分配服务中新增子订单ID字段用于关联新创建的订单
- 集成供应商和伙伴商远程服务以支持按ID批量查询名称
- 重构订单分配页面实现分配对象名称的实时展示
- 增加供应商和伙伴商服务的名称查询接口及实现方法
- 优化订单分配时子订单编号生成逻辑使用序列工具
- 移除订单分配记录中错误的父订单ID赋值修复数据关联问题
hurx hace 2 meses
padre
commit
ea7e2939af
Se han modificado 18 ficheros con 285 adiciones y 110 borrados
  1. 12 0
      ruoyi-api/ruoyi-api-customer/src/main/java/org/dromara/customer/api/RemotePartnerInfoService.java
  2. 8 0
      ruoyi-api/ruoyi-api-customer/src/main/java/org/dromara/customer/api/RemoteSupplierInfoService.java
  3. 1 1
      ruoyi-modules/ruoyi-bill/src/main/java/org/dromara/bill/service/impl/StatementInvoiceServiceImpl.java
  4. 2 3
      ruoyi-modules/ruoyi-bill/src/main/java/org/dromara/bill/service/impl/StatementOrderServiceImpl.java
  5. 25 0
      ruoyi-modules/ruoyi-customer/src/main/java/org/dromara/customer/dubbo/RemotePartnerInfoServiceImpl.java
  6. 9 0
      ruoyi-modules/ruoyi-customer/src/main/java/org/dromara/customer/dubbo/RemoteSupplierInfoServiceImpl.java
  7. 6 1
      ruoyi-modules/ruoyi-customer/src/main/java/org/dromara/customer/service/IPartnerInfoService.java
  8. 8 1
      ruoyi-modules/ruoyi-customer/src/main/java/org/dromara/customer/service/ISupplierInfoService.java
  9. 32 7
      ruoyi-modules/ruoyi-customer/src/main/java/org/dromara/customer/service/impl/PartnerInfoServiceImpl.java
  10. 82 59
      ruoyi-modules/ruoyi-customer/src/main/java/org/dromara/customer/service/impl/SupplierInfoServiceImpl.java
  11. 5 0
      ruoyi-modules/ruoyi-order/src/main/java/org/dromara/order/domain/OrderAssignment.java
  12. 13 0
      ruoyi-modules/ruoyi-order/src/main/java/org/dromara/order/domain/vo/OrderAssignmentVo.java
  13. 60 12
      ruoyi-modules/ruoyi-order/src/main/java/org/dromara/order/service/impl/OrderAssignmentServiceImpl.java
  14. 5 5
      ruoyi-modules/ruoyi-order/src/main/java/org/dromara/order/service/impl/OrderDeliverServiceImpl.java
  15. 1 2
      ruoyi-modules/ruoyi-order/src/main/java/org/dromara/order/service/impl/OrderMainServiceImpl.java
  16. 14 14
      ruoyi-modules/ruoyi-order/src/main/java/org/dromara/order/service/impl/OrderOperateLogServiceImpl.java
  17. 1 4
      ruoyi-modules/ruoyi-order/src/main/java/org/dromara/order/service/impl/OrderReturnServiceImpl.java
  18. 1 1
      ruoyi-modules/ruoyi-order/src/main/java/org/dromara/order/service/impl/OrderRevenueHeaderServiceImpl.java

+ 12 - 0
ruoyi-api/ruoyi-api-customer/src/main/java/org/dromara/customer/api/RemotePartnerInfoService.java

@@ -0,0 +1,12 @@
+package org.dromara.customer.api;
+
+import java.util.Map;
+import java.util.Set;
+
+public interface RemotePartnerInfoService {
+
+    /**
+     * 根据ids查询伙伴商名称
+     */
+    Map<Long, String> selectPartnerNameByIds(Set<Long> ids);
+}

+ 8 - 0
ruoyi-api/ruoyi-api-customer/src/main/java/org/dromara/customer/api/RemoteSupplierInfoService.java

@@ -1,5 +1,8 @@
 package org.dromara.customer.api;
 
+import java.util.Map;
+import java.util.Set;
+
 /**
  * author
  * 时间:2026/1/23,9:43
@@ -9,4 +12,9 @@ public interface RemoteSupplierInfoService {
      * 通过生效状态下判断有效期来更新是否停用
      */
     int updateIsDisable();
+
+    /**
+     * 根据ids查询供应商名称
+     */
+    Map<Long, String> selectSupplierNameByIds(Set<Long> ids);
 }

+ 1 - 1
ruoyi-modules/ruoyi-bill/src/main/java/org/dromara/bill/service/impl/StatementInvoiceServiceImpl.java

@@ -121,7 +121,7 @@ public class StatementInvoiceServiceImpl extends ServiceImpl<StatementInvoiceMap
     private LambdaQueryWrapper<StatementInvoice> buildQueryWrapper(StatementInvoiceBo bo) {
         Map<String, Object> params = bo.getParams();
         LambdaQueryWrapper<StatementInvoice> lqw = Wrappers.lambdaQuery();
-        lqw.orderByAsc(StatementInvoice::getId);
+        lqw.orderByDesc(StatementInvoice::getId);
         lqw.eq(StringUtils.isNotBlank(bo.getStatementInvoiceNo()), StatementInvoice::getStatementInvoiceNo, bo.getStatementInvoiceNo());
         lqw.eq(bo.getCustomerId() != null, StatementInvoice::getCustomerId, bo.getCustomerId());
         lqw.eq(StringUtils.isNotBlank(bo.getCustomerNo()), StatementInvoice::getCustomerNo, bo.getCustomerNo());

+ 2 - 3
ruoyi-modules/ruoyi-bill/src/main/java/org/dromara/bill/service/impl/StatementOrderServiceImpl.java

@@ -22,7 +22,6 @@ import org.dromara.bill.mapper.StatementDetailMapper;
 import org.dromara.bill.mapper.StatementOrderMapper;
 import org.dromara.bill.mapper.StatementProductMapper;
 import org.dromara.bill.service.IStatementOrderService;
-import org.dromara.common.core.enums.InvoiceStatus;
 import org.dromara.common.core.utils.MapstructUtils;
 import org.dromara.common.core.utils.StringUtils;
 import org.dromara.common.mybatis.core.page.PageQuery;
@@ -151,7 +150,7 @@ public class StatementOrderServiceImpl extends ServiceImpl<StatementOrderMapper,
         // 查询明细(分页)
         LambdaQueryWrapper<StatementDetail> detailWrapper = new LambdaQueryWrapper<>();
         detailWrapper.in(StatementDetail::getStatementOrderId, statementOrderIds)
-            .eq(StatementDetail::getDelFlag, "0");
+            .eq(StatementDetail::getDelFlag, "0").orderByDesc(StatementDetail::getId);
 
         Page<StatementDetailVo> pageResult = statementDetailMapper.selectVoPage(pageQuery.build(), detailWrapper);
 
@@ -206,7 +205,7 @@ public class StatementOrderServiceImpl extends ServiceImpl<StatementOrderMapper,
     private LambdaQueryWrapper<StatementOrder> buildQueryWrapper(StatementOrderBo bo) {
         Map<String, Object> params = bo.getParams();
         LambdaQueryWrapper<StatementOrder> lqw = Wrappers.lambdaQuery();
-        lqw.orderByAsc(StatementOrder::getId);
+        lqw.orderByDesc(StatementOrder::getId);
         lqw.eq(StringUtils.isNotBlank(bo.getStatementOrderNo()), StatementOrder::getStatementOrderNo, bo.getStatementOrderNo());
         lqw.eq(bo.getCustomerId() != null, StatementOrder::getCustomerId, bo.getCustomerId());
         lqw.eq(StringUtils.isNotBlank(bo.getCustomerNo()), StatementOrder::getCustomerNo, bo.getCustomerNo());

+ 25 - 0
ruoyi-modules/ruoyi-customer/src/main/java/org/dromara/customer/dubbo/RemotePartnerInfoServiceImpl.java

@@ -0,0 +1,25 @@
+package org.dromara.customer.dubbo;
+
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.dubbo.config.annotation.DubboService;
+import org.dromara.customer.api.RemotePartnerInfoService;
+import org.dromara.customer.service.IPartnerInfoService;
+import org.springframework.stereotype.Service;
+
+import java.util.Map;
+import java.util.Set;
+
+@Slf4j
+@Service
+@RequiredArgsConstructor
+@DubboService
+public class RemotePartnerInfoServiceImpl implements RemotePartnerInfoService {
+
+    private final IPartnerInfoService partnerInfoService;
+
+    @Override
+    public Map<Long, String> selectPartnerNameByIds(Set<Long> ids) {
+        return partnerInfoService.selectPartnerNameByIds(ids);
+    }
+}

+ 9 - 0
ruoyi-modules/ruoyi-customer/src/main/java/org/dromara/customer/dubbo/RemoteSupplierInfoServiceImpl.java

@@ -7,6 +7,9 @@ import org.dromara.customer.api.RemoteSupplierInfoService;
 import org.dromara.customer.service.ISupplierInfoService;
 import org.springframework.stereotype.Service;
 
+import java.util.Map;
+import java.util.Set;
+
 /**
  * author
  * 时间:2026/1/23,9:42
@@ -18,8 +21,14 @@ import org.springframework.stereotype.Service;
 public class RemoteSupplierInfoServiceImpl implements RemoteSupplierInfoService {
 
     private final ISupplierInfoService supplierInfoService;
+
     @Override
     public int updateIsDisable() {
         return supplierInfoService.updateIsDisable();
     }
+
+    @Override
+    public Map<Long, String> selectSupplierNameByIds(Set<Long> ids) {
+        return supplierInfoService.selectSupplierNameByIds(ids);
+    }
 }

+ 6 - 1
ruoyi-modules/ruoyi-customer/src/main/java/org/dromara/customer/service/IPartnerInfoService.java

@@ -9,6 +9,8 @@ import org.dromara.common.mybatis.core.page.PageQuery;
 
 import java.util.Collection;
 import java.util.List;
+import java.util.Map;
+import java.util.Set;
 
 /**
  * 伙伴商基本信息Service接口
@@ -16,7 +18,7 @@ import java.util.List;
  * @author LionLi
  * @date 2026-01-21
  */
-public interface IPartnerInfoService extends IService<PartnerInfo>{
+public interface IPartnerInfoService extends IService<PartnerInfo> {
 
     /**
      * 查询伙伴商基本信息
@@ -74,4 +76,7 @@ public interface IPartnerInfoService extends IService<PartnerInfo>{
      * @return 伙伴商基本信息
      */
     PartnerInfoVo queryCurrentPartnerInfo();
+
+    /*根据ids查询伙伴商名称*/
+    Map<Long, String> selectPartnerNameByIds(Set<Long> ids);
 }

+ 8 - 1
ruoyi-modules/ruoyi-customer/src/main/java/org/dromara/customer/service/ISupplierInfoService.java

@@ -12,6 +12,8 @@ import org.dromara.common.mybatis.core.page.PageQuery;
 
 import java.util.Collection;
 import java.util.List;
+import java.util.Map;
+import java.util.Set;
 
 /**
  * 供应商信息Service接口
@@ -19,7 +21,7 @@ import java.util.List;
  * @author LionLi
  * @date 2026-01-09
  */
-public interface ISupplierInfoService extends IService<SupplierInfo>{
+public interface ISupplierInfoService extends IService<SupplierInfo> {
 
     /**
      * 查询供应商信息
@@ -37,6 +39,7 @@ public interface ISupplierInfoService extends IService<SupplierInfo>{
      * @return 供应商信息分页列表
      */
     TableDataInfo<SupplierInfoVo> queryPageList(SupplierInfoBo bo, PageQuery pageQuery);
+
     /**
      * 获取供应商信息列表
      *
@@ -49,6 +52,7 @@ public interface ISupplierInfoService extends IService<SupplierInfo>{
 
     /**
      * 获取供应商审核列表
+     *
      * @param bo
      * @param pageQuery
      * @return
@@ -92,4 +96,7 @@ public interface ISupplierInfoService extends IService<SupplierInfo>{
     IPage<SupplierInfo> getSupplyCapacityList(SupplierAuthorizeBo bo, PageQuery pageQuery);
 
     int updateIsDisable();
+
+    /*根据ids查询供应商名称*/
+    Map<Long, String> selectSupplierNameByIds(Set<Long> ids);
 }

+ 32 - 7
ruoyi-modules/ruoyi-customer/src/main/java/org/dromara/customer/service/impl/PartnerInfoServiceImpl.java

@@ -10,6 +10,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
+import org.dromara.customer.domain.SupplierInfo;
 import org.springframework.stereotype.Service;
 import org.dromara.customer.domain.bo.PartnerInfoBo;
 import org.dromara.customer.domain.vo.PartnerInfoVo;
@@ -20,9 +21,7 @@ import org.dromara.customer.mapper.PartnerUserMapper;
 import org.dromara.customer.service.IPartnerInfoService;
 import org.dromara.common.satoken.utils.LoginHelper;
 
-import java.util.List;
-import java.util.Map;
-import java.util.Collection;
+import java.util.*;
 
 /**
  * 伙伴商基本信息Service业务层处理
@@ -33,7 +32,7 @@ import java.util.Collection;
 @Slf4j
 @RequiredArgsConstructor
 @Service
-public class PartnerInfoServiceImpl  extends ServiceImpl<PartnerInfoMapper, PartnerInfo> implements IPartnerInfoService {
+public class PartnerInfoServiceImpl extends ServiceImpl<PartnerInfoMapper, PartnerInfo> implements IPartnerInfoService {
 
     private final PartnerInfoMapper baseMapper;
     private final PartnerUserMapper partnerUserMapper;
@@ -45,7 +44,7 @@ public class PartnerInfoServiceImpl  extends ServiceImpl<PartnerInfoMapper, Part
      * @return 伙伴商基本信息
      */
     @Override
-    public PartnerInfoVo queryById(Long id){
+    public PartnerInfoVo queryById(Long id) {
         return baseMapper.selectVoById(id);
     }
 
@@ -126,7 +125,7 @@ public class PartnerInfoServiceImpl  extends ServiceImpl<PartnerInfoMapper, Part
     /**
      * 保存前的数据校验
      */
-    private void validEntityBeforeSave(PartnerInfo entity){
+    private void validEntityBeforeSave(PartnerInfo entity) {
         //TODO 做一些数据校验,如唯一约束
     }
 
@@ -139,7 +138,7 @@ public class PartnerInfoServiceImpl  extends ServiceImpl<PartnerInfoMapper, Part
      */
     @Override
     public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
-        if(isValid){
+        if (isValid) {
             //TODO 做一些业务上的校验,判断是否需要校验
         }
         return baseMapper.deleteByIds(ids) > 0;
@@ -161,4 +160,30 @@ public class PartnerInfoServiceImpl  extends ServiceImpl<PartnerInfoMapper, Part
         }
         return baseMapper.selectVoById(partnerUser.getPartnerId());
     }
+
+    @Override
+    public Map<Long, String> selectPartnerNameByIds(Set<Long> ids) {
+        if (ids == null || ids.isEmpty()) {
+            return Collections.emptyMap();
+        }
+
+        // 限制批量大小
+        if (ids.size() > 1000) {
+            throw new IllegalArgumentException("Batch size exceeds limit: " + ids.size());
+        }
+
+        List<PartnerInfo> partnerInfoList = baseMapper.selectByIds(ids);
+        Map<Long, String> resultMap = new HashMap<>(ids.size());
+
+        // 初始化所有请求的 ID 为 null
+        ids.forEach(id -> resultMap.put(id, null));
+
+        if (partnerInfoList != null) {
+            partnerInfoList.stream()
+                .filter(partner -> partner.getId() != null && partner.getPartnerName() != null)
+                .forEach(partner -> resultMap.put(partner.getId(), partner.getPartnerName()));
+        }
+
+        return resultMap;
+    }
 }

+ 82 - 59
ruoyi-modules/ruoyi-customer/src/main/java/org/dromara/customer/service/impl/SupplierInfoServiceImpl.java

@@ -17,9 +17,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
-import org.dromara.customer.domain.SupplierBusinessInfo;
-import org.dromara.customer.domain.SupplierProcurement;
-import org.dromara.customer.domain.SupplyArea;
+import org.dromara.customer.domain.*;
 import org.dromara.customer.domain.bo.EnterpriseScaleBo;
 import org.dromara.customer.domain.bo.SupplierAuthorizeBo;
 import org.dromara.customer.domain.vo.EnterpriseScaleVo;
@@ -39,7 +37,6 @@ import org.springframework.beans.BeanUtils;
 import org.springframework.stereotype.Service;
 import org.dromara.customer.domain.bo.SupplierInfoBo;
 import org.dromara.customer.domain.vo.SupplierInfoVo;
-import org.dromara.customer.domain.SupplierInfo;
 import org.dromara.customer.mapper.SupplierInfoMapper;
 import org.springframework.util.CollectionUtils;
 
@@ -55,7 +52,7 @@ import java.util.stream.Collectors;
 @Slf4j
 @RequiredArgsConstructor
 @Service
-public class SupplierInfoServiceImpl  extends ServiceImpl<SupplierInfoMapper, SupplierInfo> implements ISupplierInfoService {
+public class SupplierInfoServiceImpl extends ServiceImpl<SupplierInfoMapper, SupplierInfo> implements ISupplierInfoService {
 
     private final SupplierInfoMapper baseMapper;
 
@@ -82,8 +79,6 @@ public class SupplierInfoServiceImpl  extends ServiceImpl<SupplierInfoMapper, Su
     private final RemoteSupplierTypeService remoteSupplierTypeService;
 
 
-
-
     /**
      * 新增供应商信息
      *
@@ -98,7 +93,7 @@ public class SupplierInfoServiceImpl  extends ServiceImpl<SupplierInfoMapper, Su
             .orderByDesc(SupplierInfo::getSupplierNo)
             .last("LIMIT 1");
         SupplierInfo maxSupplier = baseMapper.selectOne(lambdaQueryWrapper);
-        long l = Long.parseLong(maxSupplier.getSupplierNo())+1;
+        long l = Long.parseLong(maxSupplier.getSupplierNo()) + 1;
         String supplierNo = String.valueOf(l);
         SupplierInfo add = MapstructUtils.convert(bo, SupplierInfo.class);
         add.setSupplierNo(supplierNo);
@@ -113,11 +108,12 @@ public class SupplierInfoServiceImpl  extends ServiceImpl<SupplierInfoMapper, Su
         }
         return flag;
     }
+
     /**
      * 从JSON字符串解析工商信息并保存
      *
      * @param otherCustomersJson JSON格式的工商信息
-     * @param supplierId 供应商ID
+     * @param supplierId         供应商ID
      */
     private void saveSupplierBusinessInfoFromJson(String otherCustomersJson, Long supplierId) {
         if (StringUtils.isBlank(otherCustomersJson)) {
@@ -149,7 +145,6 @@ public class SupplierInfoServiceImpl  extends ServiceImpl<SupplierInfoMapper, Su
     }
 
 
-
     /**
      * 修改供应商信息
      *
@@ -180,7 +175,7 @@ public class SupplierInfoServiceImpl  extends ServiceImpl<SupplierInfoMapper, Su
         }
 
         // 审核不通过->待审核
-        if (supplierInfoVo.getSupplyStatus()==SupplierStatusEnum.REVIEW_FAILED.getCode() && supplierInfoVo.getSupplyStatus() != bo.getSupplyStatus() && bo.getSupplyStatus() == SupplierStatusEnum.PENDING_REVIEW.getCode()) {
+        if (supplierInfoVo.getSupplyStatus() == SupplierStatusEnum.REVIEW_FAILED.getCode() && supplierInfoVo.getSupplyStatus() != bo.getSupplyStatus() && bo.getSupplyStatus() == SupplierStatusEnum.PENDING_REVIEW.getCode()) {
             SupplierInfo update = MapstructUtils.convert(bo, SupplierInfo.class);
             update.setCooperative(0l);
             return baseMapper.updateById(update) > 0;
@@ -202,7 +197,7 @@ public class SupplierInfoServiceImpl  extends ServiceImpl<SupplierInfoMapper, Su
      */
     @Override
     public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
-        if(isValid){
+        if (isValid) {
             //TODO 做一些业务上的校验,判断是否需要校验
         }
         return baseMapper.deleteByIds(ids) > 0;
@@ -230,7 +225,6 @@ public class SupplierInfoServiceImpl  extends ServiceImpl<SupplierInfoMapper, Su
     }
 
 
-
     /**
      * 分页查询供应商信息列表
      *
@@ -249,20 +243,19 @@ public class SupplierInfoServiceImpl  extends ServiceImpl<SupplierInfoMapper, Su
     public TableDataInfo<SupplierInfoVo> getSupplierInformation(SupplierInfoBo bo, PageQuery pageQuery) {
         LambdaQueryWrapper<SupplierInfo> lqw = new LambdaQueryWrapper<>();
         // 1. 基础分页查询
-        if (bo.getSupplyStatus() == null){
+        if (bo.getSupplyStatus() == null) {
             //正式供应商
             lqw.eq(SupplierInfo::getSupplyStatus, 1L);
-        }else {
-            lqw.eq(SupplierInfo::getSupplyStatus,bo.getSupplyStatus());
+        } else {
+            lqw.eq(SupplierInfo::getSupplyStatus, bo.getSupplyStatus());
         }
 
 
-
         // 2. 添加品牌条件
-        if (bo.getOperatingBrand()!= null && StringUtils.isNotBlank(bo.getOperatingBrand())){
-            if (StringUtils.isNotBlank(bo.getOperatingBrand())){
+        if (bo.getOperatingBrand() != null && StringUtils.isNotBlank(bo.getOperatingBrand())) {
+            if (StringUtils.isNotBlank(bo.getOperatingBrand())) {
                 Long productBrandIdByName = remoteProductService.getProductBrandIdByName(bo.getOperatingBrand());
-                if (productBrandIdByName != null){
+                if (productBrandIdByName != null) {
                     lqw.like(SupplierInfo::getOperatingBrand, productBrandIdByName);
                 }
             }
@@ -315,15 +308,15 @@ public class SupplierInfoServiceImpl  extends ServiceImpl<SupplierInfoMapper, Su
         if (bo.getSupplyStatus() == null) {
             List<Long> status = Arrays.asList(0L, 4L);
             lqw.in(SupplierInfo::getSupplyStatus, status);
-        }else {
-            lqw.eq(SupplierInfo::getSupplyStatus,bo.getSupplyStatus());
+        } else {
+            lqw.eq(SupplierInfo::getSupplyStatus, bo.getSupplyStatus());
         }
 
         // 2.添加品牌条件
-        if (bo.getOperatingBrand()!= null && StringUtils.isNotBlank(bo.getOperatingBrand())){
-            if (StringUtils.isNotBlank(bo.getOperatingBrand())){
+        if (bo.getOperatingBrand() != null && StringUtils.isNotBlank(bo.getOperatingBrand())) {
+            if (StringUtils.isNotBlank(bo.getOperatingBrand())) {
                 Long productBrandIdByName = remoteProductService.getProductBrandIdByName(bo.getOperatingBrand());
-                if (productBrandIdByName != null){
+                if (productBrandIdByName != null) {
                     lqw.like(SupplierInfo::getOperatingBrand, productBrandIdByName);
                 }
             }
@@ -376,9 +369,9 @@ public class SupplierInfoServiceImpl  extends ServiceImpl<SupplierInfoMapper, Su
         lqw.eq(StringUtils.isNotBlank(bo.getSupplierName()), SupplierInfo::getEnterpriseName, bo.getSupplierName());
 
         //可供应品牌
-        if (StringUtils.isNotBlank(bo.getSupplyBrand())){
+        if (StringUtils.isNotBlank(bo.getSupplyBrand())) {
             Long productBrandIdByName = remoteProductService.getProductBrandIdByName(bo.getSupplyBrand());
-            if (productBrandIdByName != null){
+            if (productBrandIdByName != null) {
                 lqw.like(SupplierInfo::getOperatingBrand, productBrandIdByName);
             }
         }
@@ -386,10 +379,10 @@ public class SupplierInfoServiceImpl  extends ServiceImpl<SupplierInfoMapper, Su
         if (StringUtils.isNotBlank(bo.getProvince()) || StringUtils.isNotBlank(bo.getCity())) {
             // 查询符合条件的供应商ID列表
             List<Long> supplierIds = supplyAreaService.getSupplierIdsByArea(bo.getProvince(), bo.getCity());
-            if (supplierIds != null &&!supplierIds.isEmpty()) {
+            if (supplierIds != null && !supplierIds.isEmpty()) {
                 lqw.in(SupplierInfo::getId, supplierIds);
 
-            }else {
+            } else {
                 lqw.in(SupplierInfo::getId, -1L);
 
             }
@@ -399,9 +392,9 @@ public class SupplierInfoServiceImpl  extends ServiceImpl<SupplierInfoMapper, Su
         if (StringUtils.isNotBlank(bo.getBrandName())) {
             // 通过SupplierAuthorizeService查询符合条件的供应商ID
             List<Long> supplierIdsByBrand = commonSupplierAuthorizeMapper.getSupplierIdsByBrandName(bo.getBrandName());
-            if (supplierIdsByBrand!=null &&!supplierIdsByBrand.isEmpty()) {
+            if (supplierIdsByBrand != null && !supplierIdsByBrand.isEmpty()) {
                 lqw.in(SupplierInfo::getId, supplierIdsByBrand);
-            }else {
+            } else {
                 lqw.in(SupplierInfo::getId, -1L);
 
             }
@@ -434,6 +427,32 @@ public class SupplierInfoServiceImpl  extends ServiceImpl<SupplierInfoMapper, Su
 
     }
 
+    @Override
+    public Map<Long, String> selectSupplierNameByIds(Set<Long> ids) {
+        if (ids == null || ids.isEmpty()) {
+            return Collections.emptyMap();
+        }
+
+        // 限制批量大小
+        if (ids.size() > 1000) {
+            throw new IllegalArgumentException("Batch size exceeds limit: " + ids.size());
+        }
+
+        List<SupplierInfo> supplierInfoList = baseMapper.selectByIds(ids);
+        Map<Long, String> resultMap = new HashMap<>(ids.size());
+
+        // 初始化所有请求的 ID 为 null
+        ids.forEach(id -> resultMap.put(id, null));
+
+        if (supplierInfoList != null) {
+            supplierInfoList.stream()
+                .filter(supplier -> supplier.getId() != null && supplier.getSupplierName() != null)
+                .forEach(supplier -> resultMap.put(supplier.getId(), supplier.getSupplierName()));
+        }
+
+        return resultMap;
+    }
+
     /**
      * 将工商信息复制到供应商信息VO中
      *
@@ -455,6 +474,7 @@ public class SupplierInfoServiceImpl  extends ServiceImpl<SupplierInfoMapper, Su
     }
 
     // ========== 3. 数据转换 - 映射构建方法 ==========
+
     /**
      * 构建品牌ID→名称映射表
      */
@@ -536,6 +556,7 @@ public class SupplierInfoServiceImpl  extends ServiceImpl<SupplierInfoMapper, Su
                 Collectors.mapping(SupplyArea::getAreaName, Collectors.toList())
             ));
     }
+
     /**
      * 构建企业规模ID→名称映射表
      */
@@ -558,6 +579,7 @@ public class SupplierInfoServiceImpl  extends ServiceImpl<SupplierInfoMapper, Su
         }
         return scaleMap;
     }
+
     /**
      * 构建供应商品类ID→名称映射表
      */
@@ -873,6 +895,7 @@ public class SupplierInfoServiceImpl  extends ServiceImpl<SupplierInfoMapper, Su
     }
 
     // ========== 5. 工具方法 ==========
+
     /**
      * 收集供应商列表中的所有品牌ID
      */
@@ -932,33 +955,32 @@ public class SupplierInfoServiceImpl  extends ServiceImpl<SupplierInfoMapper, Su
     }
 
 
-
     private SupplierInfoVo handleProcurementInfo(SupplierInfoVo records) {
 
-            // 查询管理人员和采购人员
-            Long id = records.getId();
-            //查询供应地区
-            LambdaQueryWrapper<SupplyArea> supplyProvinceAreaLqw = Wrappers.lambdaQuery();
-            supplyProvinceAreaLqw.eq(SupplyArea::getSupplierId, id)
-                .eq(SupplyArea::getLevel,"1");
-            List<SupplyArea> supplyProvinceArealist = supplyAreaService.list(supplyProvinceAreaLqw);
-
-            LambdaQueryWrapper<SupplyArea> supplyCityAreaLqw = Wrappers.lambdaQuery();
-            supplyCityAreaLqw.eq(SupplyArea::getSupplierId, id)
-                .eq(SupplyArea::getLevel,"2");
-            List<SupplyArea> supplyCityArealist = supplyAreaService.list(supplyCityAreaLqw);
-
-            // 拼接省份名称
-            String provinceNames = supplyProvinceArealist.stream()
-                .map(SupplyArea::getAreaName)
-                .filter(Objects::nonNull)
-                .collect(Collectors.joining(","));
+        // 查询管理人员和采购人员
+        Long id = records.getId();
+        //查询供应地区
+        LambdaQueryWrapper<SupplyArea> supplyProvinceAreaLqw = Wrappers.lambdaQuery();
+        supplyProvinceAreaLqw.eq(SupplyArea::getSupplierId, id)
+            .eq(SupplyArea::getLevel, "1");
+        List<SupplyArea> supplyProvinceArealist = supplyAreaService.list(supplyProvinceAreaLqw);
+
+        LambdaQueryWrapper<SupplyArea> supplyCityAreaLqw = Wrappers.lambdaQuery();
+        supplyCityAreaLqw.eq(SupplyArea::getSupplierId, id)
+            .eq(SupplyArea::getLevel, "2");
+        List<SupplyArea> supplyCityArealist = supplyAreaService.list(supplyCityAreaLqw);
+
+        // 拼接省份名称
+        String provinceNames = supplyProvinceArealist.stream()
+            .map(SupplyArea::getAreaName)
+            .filter(Objects::nonNull)
+            .collect(Collectors.joining(","));
 
-            // 拼接城市名称
-            String cityNames = supplyCityArealist.stream()
-                .map(SupplyArea::getAreaName)
-                .filter(Objects::nonNull)
-                .collect(Collectors.joining(","));
+        // 拼接城市名称
+        String cityNames = supplyCityArealist.stream()
+            .map(SupplyArea::getAreaName)
+            .filter(Objects::nonNull)
+            .collect(Collectors.joining(","));
 
         records.setProvince(provinceNames);
         records.setCity(cityNames);
@@ -1076,7 +1098,6 @@ public class SupplierInfoServiceImpl  extends ServiceImpl<SupplierInfoMapper, Su
     }*/
 
 
-
     /**
      * 处理采购员和产品经理信息和品牌和供应商类型
      */
@@ -1163,12 +1184,12 @@ public class SupplierInfoServiceImpl  extends ServiceImpl<SupplierInfoMapper, Su
             // 2. 查询供应地区(原有逻辑)
             LambdaQueryWrapper<SupplyArea> supplyProvinceAreaLqw = Wrappers.lambdaQuery();
             supplyProvinceAreaLqw.eq(SupplyArea::getSupplierId, id)
-                .eq(SupplyArea::getLevel,"1");
+                .eq(SupplyArea::getLevel, "1");
             List<SupplyArea> supplyProvinceArealist = supplyAreaService.list(supplyProvinceAreaLqw);
 
             LambdaQueryWrapper<SupplyArea> supplyCityAreaLqw = Wrappers.lambdaQuery();
             supplyCityAreaLqw.eq(SupplyArea::getSupplierId, id)
-                .eq(SupplyArea::getLevel,"2");
+                .eq(SupplyArea::getLevel, "2");
             List<SupplyArea> supplyCityArealist = supplyAreaService.list(supplyCityAreaLqw);
 
             if (!supplyProvinceArealist.isEmpty()) {
@@ -1372,8 +1393,9 @@ public class SupplierInfoServiceImpl  extends ServiceImpl<SupplierInfoMapper, Su
 
     /**
      * 复制分页结果(保持原分页的总数/页码/页大小,仅替换数据列表)
+     *
      * @param originalPage 原分页对象(包含总数、页码等元数据)
-     * @param newRecords 新的数据集
+     * @param newRecords   新的数据集
      * @return 新的分页对象
      */
     private Page<SupplierInfoVo> copyPageResult(Page<SupplierInfoVo> originalPage, List<SupplierInfoVo> newRecords) {
@@ -1391,6 +1413,7 @@ public class SupplierInfoServiceImpl  extends ServiceImpl<SupplierInfoMapper, Su
 
         return newPage;
     }
+
     private LambdaQueryWrapper<SupplierInfo> buildQueryWrapper(SupplierInfoBo bo) {
         Map<String, Object> params = bo.getParams();
         LambdaQueryWrapper<SupplierInfo> lqw = Wrappers.lambdaQuery();

+ 5 - 0
ruoyi-modules/ruoyi-order/src/main/java/org/dromara/order/domain/OrderAssignment.java

@@ -38,6 +38,11 @@ public class OrderAssignment extends TenantEntity {
 
     private String orderNo;
 
+    /**
+     * 子订单ID 分配后新的订单的ID
+     */
+    private Long childOrderId;
+
     /**
      * 分配前平台
      */

+ 13 - 0
ruoyi-modules/ruoyi-order/src/main/java/org/dromara/order/domain/vo/OrderAssignmentVo.java

@@ -44,6 +44,11 @@ public class OrderAssignmentVo implements Serializable {
 
     private String orderNo;
 
+    /**
+     * 子订单ID 分配后新的订单的ID
+     */
+    private Long childOrderId;
+
     /**
      * 分配前平台
      */
@@ -92,10 +97,18 @@ public class OrderAssignmentVo implements Serializable {
      */
     private Long assigneeId;
 
+    private String assigneeName;
+
     /**
      * 分配对象类型(srm=供应商, bp=伙伴商)
      */
     private String assigneeType;
 
+    private Long createBy;
+
+    private String createName;
+
+    private Date createTime;
+
 
 }

+ 60 - 12
ruoyi-modules/ruoyi-order/src/main/java/org/dromara/order/service/impl/OrderAssignmentServiceImpl.java

@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.dubbo.config.annotation.DubboReference;
 import org.dromara.common.core.context.PlatformContext;
 import org.dromara.common.core.enums.AssigneeTypeConstants;
 import org.dromara.common.core.enums.OrderAssignStatus;
@@ -20,6 +21,8 @@ import org.dromara.common.mybatis.core.page.PageQuery;
 import org.dromara.common.mybatis.core.page.TableDataInfo;
 import org.dromara.common.redis.utils.SequenceUtils;
 import org.dromara.common.satoken.utils.LoginHelper;
+import org.dromara.customer.api.RemotePartnerInfoService;
+import org.dromara.customer.api.RemoteSupplierInfoService;
 import org.dromara.order.domain.OrderAssignment;
 import org.dromara.order.domain.OrderMain;
 import org.dromara.order.domain.OrderProduct;
@@ -33,6 +36,7 @@ import org.dromara.order.mapper.OrderAssignmentMapper;
 import org.dromara.order.mapper.OrderMainMapper;
 import org.dromara.order.mapper.OrderProductMapper;
 import org.dromara.order.service.IOrderAssignmentService;
+import org.dromara.system.api.RemoteUserService;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -55,6 +59,15 @@ public class OrderAssignmentServiceImpl extends ServiceImpl<OrderAssignmentMappe
 
     private static final String CHILD_ORDER_NO_KEY = "order_main:child_order_no";
 
+    @DubboReference
+    private RemotePartnerInfoService remotePartnerInfoService;
+
+    @DubboReference
+    private RemoteSupplierInfoService remoteSupplierInfoService;
+
+    @DubboReference
+    private RemoteUserService remoteUserService;
+
     private final OrderAssignmentMapper baseMapper;
 
     private final OrderMainMapper orderMainMapper;
@@ -83,6 +96,47 @@ public class OrderAssignmentServiceImpl extends ServiceImpl<OrderAssignmentMappe
     public TableDataInfo<OrderAssignmentVo> queryPageList(OrderAssignmentBo bo, PageQuery pageQuery) {
         LambdaQueryWrapper<OrderAssignment> lqw = buildQueryWrapper(bo);
         Page<OrderAssignmentVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
+        List<OrderAssignmentVo> records = result.getRecords();
+        if (CollUtil.isNotEmpty(records)) {
+            Set<Long> createUserIds = records.stream().map(OrderAssignmentVo::getCreateBy).collect(Collectors.toSet());
+
+
+            Set<Long> partnerIds = records.stream()
+                .filter(r -> AssigneeTypeConstants.PARTNER.getCode().equals(r.getAssignType()))
+                .map(OrderAssignmentVo::getAssigneeId)
+                .filter(Objects::nonNull)
+                .collect(Collectors.toSet());
+
+            Set<Long> supplierIds = records.stream()
+                .filter(r -> AssigneeTypeConstants.SUPPLIER.getCode().equals(r.getAssignType()))
+                .map(OrderAssignmentVo::getAssigneeId)
+                .filter(Objects::nonNull)
+                .collect(Collectors.toSet());
+            // 批量查询名称
+            Map<Long, String> createUserNameMap = remoteUserService.selectUserNamesByIds(createUserIds.stream().toList());
+            Map<Long, String> partnerNameMap = remotePartnerInfoService.selectPartnerNameByIds(partnerIds);
+            Map<Long, String> supplierNameMap = remoteSupplierInfoService.selectSupplierNameByIds(supplierIds);
+
+            // 设置 assigneeName
+            for (OrderAssignmentVo record : records) {
+                Long assigneeId = record.getAssigneeId();
+                String assignType = record.getAssignType();
+
+                if (assigneeId == null || assignType == null) {
+                    record.setAssigneeName(null);
+                    continue;
+                }
+
+                String name = null;
+                if (AssigneeTypeConstants.PARTNER.getCode().equals(assignType)) {
+                    name = partnerNameMap.get(assigneeId);
+                } else if (AssigneeTypeConstants.SUPPLIER.getCode().equals(assignType)) {
+                    name = supplierNameMap.get(assigneeId);
+                }
+                record.setAssigneeName(name);
+                record.setCreateName(createUserNameMap.get(record.getCreateBy()));
+            }
+        }
         return TableDataInfo.build(result);
     }
 
@@ -101,7 +155,7 @@ public class OrderAssignmentServiceImpl extends ServiceImpl<OrderAssignmentMappe
     private LambdaQueryWrapper<OrderAssignment> buildQueryWrapper(OrderAssignmentBo bo) {
         Map<String, Object> params = bo.getParams();
         LambdaQueryWrapper<OrderAssignment> lqw = Wrappers.lambdaQuery();
-        lqw.orderByAsc(OrderAssignment::getId);
+        lqw.orderByDesc(OrderAssignment::getId);
         lqw.eq(bo.getOrderId() != null, OrderAssignment::getOrderId, bo.getOrderId());
         lqw.eq(StringUtils.isNotBlank(bo.getPlatformBefore()), OrderAssignment::getPlatformBefore, bo.getPlatformBefore());
         lqw.eq(StringUtils.isNotBlank(bo.getPlatformAfter()), OrderAssignment::getPlatformAfter, bo.getPlatformAfter());
@@ -327,8 +381,9 @@ public class OrderAssignmentServiceImpl extends ServiceImpl<OrderAssignmentMappe
 
             // 插入分配记录(分配动作日志)
             OrderAssignment assignment = new OrderAssignment();
-            assignment.setOrderId(childOrderId);
-            assignment.setOrderNo(childOrder.getOrderNo());
+            assignment.setOrderId(parentOrder.getId());
+            assignment.setOrderNo(parentOrder.getOrderNo());
+            assignment.setChildOrderId(childOrderId);
             assignment.setPlatformBefore(parentOrder.getPlatformCode());
             assignment.setAssignedBy(operatorId);
             assignment.setAssignTime(now);
@@ -336,7 +391,7 @@ public class OrderAssignmentServiceImpl extends ServiceImpl<OrderAssignmentMappe
             assignment.setRemark(bo.getRemark());
             assignment.setAssigneeId(key.id());
             assignment.setAssigneeType(key.type());
-            baseMapper.insert(assignment); // 假设是 OrderAssignmentMapper
+            baseMapper.insert(assignment);
         }
 
         // 5. 更新主订单的拆分状态和分配状态
@@ -393,12 +448,10 @@ public class OrderAssignmentServiceImpl extends ServiceImpl<OrderAssignmentMappe
 
     private OrderMain copyParentToChild(OrderMain parent, Long assigneeId, String assigneeType) {
         OrderMain child = new OrderMain();
-        String childSeqKey = "child_order_seq:" + parent.getOrderNo();
-        String paddedSeq = SequenceUtils.nextPaddedIdStr(childSeqKey, Duration.ofDays(90), 2);
 
         child.setParentOrderId(parent.getId());
         child.setIsSplitChild("0"); // 0=是子订单
-        child.setOrderNo(parent.getOrderNo() + paddedSeq);
+        child.setOrderNo(SequenceUtils.generateOrderCode("ZD"));
         child.setCompanyId(parent.getCompanyId());
         child.setCustomerId(parent.getCustomerId());
         child.setCustomerCode(parent.getCustomerCode());
@@ -436,11 +489,6 @@ public class OrderAssignmentServiceImpl extends ServiceImpl<OrderAssignmentMappe
         // 子订单状态初始化
         child.setSplitStatus(OrderSplitStatus.WAIT_SPLIT.getCode()); // 子订单默认未拆(通常不再拆)
         child.setAssignmentStatus(OrderAssignStatus.ASSIGNED.getCode()); // 已分配
-        child.setStatus("0"); // 正常
-        child.setDelFlag("0");
-        child.setCreateTime(new Date());
-        child.setUpdateTime(new Date());
-
         return child;
     }
 

+ 5 - 5
ruoyi-modules/ruoyi-order/src/main/java/org/dromara/order/service/impl/OrderDeliverServiceImpl.java

@@ -10,7 +10,6 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.dubbo.config.annotation.DubboReference;
-import org.dromara.common.core.enums.InvoiceStatus;
 import org.dromara.common.core.enums.OrderStatus;
 import org.dromara.common.core.exception.ServiceException;
 import org.dromara.common.core.utils.MapstructUtils;
@@ -22,10 +21,11 @@ import org.dromara.customer.api.RemoteCustomerService;
 import org.dromara.order.domain.OrderDeliver;
 import org.dromara.order.domain.OrderDeliverProduct;
 import org.dromara.order.domain.OrderMain;
-import org.dromara.order.domain.OrderProduct;
 import org.dromara.order.domain.bo.OrderDeliverBo;
 import org.dromara.order.domain.bo.OrderDeliverProductBo;
-import org.dromara.order.domain.vo.*;
+import org.dromara.order.domain.vo.OrderDeliverProductVo;
+import org.dromara.order.domain.vo.OrderDeliverVo;
+import org.dromara.order.domain.vo.OrderQuantitySummary;
 import org.dromara.order.mapper.OrderDeliverMapper;
 import org.dromara.order.mapper.OrderDeliverProductMapper;
 import org.dromara.order.mapper.OrderMainMapper;
@@ -142,7 +142,7 @@ public class OrderDeliverServiceImpl extends ServiceImpl<OrderDeliverMapper, Ord
     private LambdaQueryWrapper<OrderDeliver> buildQueryWrapper(OrderDeliverBo bo) {
         Map<String, Object> params = bo.getParams();
         LambdaQueryWrapper<OrderDeliver> lqw = Wrappers.lambdaQuery();
-        lqw.orderByAsc(OrderDeliver::getId);
+        lqw.orderByDesc(OrderDeliver::getId);
         lqw.eq(bo.getOrderId() != null, OrderDeliver::getOrderId, bo.getOrderId());
         lqw.eq(StringUtils.isNotBlank(bo.getOrderCode()), OrderDeliver::getOrderCode, bo.getOrderCode());
         lqw.eq(StringUtils.isNotBlank(bo.getLogisticPackNo()), OrderDeliver::getLogisticPackNo, bo.getLogisticPackNo());
@@ -375,7 +375,7 @@ public class OrderDeliverServiceImpl extends ServiceImpl<OrderDeliverMapper, Ord
         // 查询明细(分页)
         LambdaQueryWrapper<OrderDeliver> deliverWrapper = new LambdaQueryWrapper<>();
         deliverWrapper.in(OrderDeliver::getOrderId, orderIds)
-            .eq(OrderDeliver::getDelFlag, "0");
+            .eq(OrderDeliver::getDelFlag, "0").orderByDesc(OrderDeliver::getId);
 
         Page<OrderDeliverVo> pageResult = baseMapper.selectVoPage(pageQuery.build(), deliverWrapper);
         List<OrderDeliverVo> records = pageResult.getRecords();

+ 1 - 2
ruoyi-modules/ruoyi-order/src/main/java/org/dromara/order/service/impl/OrderMainServiceImpl.java

@@ -35,7 +35,6 @@ import org.dromara.system.api.RemoteUserService;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
-import java.math.BigDecimal;
 import java.util.*;
 import java.util.stream.Collectors;
 
@@ -172,7 +171,7 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain
     private LambdaQueryWrapper<OrderMain> buildQueryWrapper(OrderMainBo bo) {
         Map<String, Object> params = bo.getParams();
         LambdaQueryWrapper<OrderMain> lqw = Wrappers.lambdaQuery();
-        lqw.orderByAsc(OrderMain::getId);
+        lqw.orderByDesc(OrderMain::getId);
         lqw.eq(StringUtils.isNotBlank(bo.getOrderNo()), OrderMain::getOrderNo, bo.getOrderNo());
         lqw.eq(StringUtils.isNotBlank(bo.getCustomerCode()), OrderMain::getCustomerCode, bo.getCustomerCode());
         lqw.eq(StringUtils.isNotBlank(bo.getShipmentNo()), OrderMain::getShipmentNo, bo.getShipmentNo());

+ 14 - 14
ruoyi-modules/ruoyi-order/src/main/java/org/dromara/order/service/impl/OrderOperateLogServiceImpl.java

@@ -1,25 +1,25 @@
 package org.dromara.order.service.impl;
 
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import org.dromara.common.core.utils.MapstructUtils;
-import org.dromara.common.core.utils.StringUtils;
-import org.dromara.common.mybatis.core.page.TableDataInfo;
-import org.dromara.common.mybatis.core.page.PageQuery;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
-import org.springframework.stereotype.Service;
+import org.dromara.common.core.utils.MapstructUtils;
+import org.dromara.common.core.utils.StringUtils;
+import org.dromara.common.mybatis.core.page.PageQuery;
+import org.dromara.common.mybatis.core.page.TableDataInfo;
+import org.dromara.order.domain.OrderOperateLog;
 import org.dromara.order.domain.bo.OrderOperateLogBo;
 import org.dromara.order.domain.vo.OrderOperateLogVo;
-import org.dromara.order.domain.OrderOperateLog;
 import org.dromara.order.mapper.OrderOperateLogMapper;
 import org.dromara.order.service.IOrderOperateLogService;
+import org.springframework.stereotype.Service;
 
+import java.util.Collection;
 import java.util.List;
 import java.util.Map;
-import java.util.Collection;
 
 /**
  * 订单操作记录Service业务层处理
@@ -30,7 +30,7 @@ import java.util.Collection;
 @Slf4j
 @RequiredArgsConstructor
 @Service
-public class OrderOperateLogServiceImpl  extends ServiceImpl<OrderOperateLogMapper, OrderOperateLog> implements IOrderOperateLogService {
+public class OrderOperateLogServiceImpl extends ServiceImpl<OrderOperateLogMapper, OrderOperateLog> implements IOrderOperateLogService {
 
     private final OrderOperateLogMapper baseMapper;
 
@@ -41,7 +41,7 @@ public class OrderOperateLogServiceImpl  extends ServiceImpl<OrderOperateLogMapp
      * @return 订单操作记录
      */
     @Override
-    public OrderOperateLogVo queryById(Long id){
+    public OrderOperateLogVo queryById(Long id) {
         return baseMapper.selectVoById(id);
     }
 
@@ -74,7 +74,7 @@ public class OrderOperateLogServiceImpl  extends ServiceImpl<OrderOperateLogMapp
     private LambdaQueryWrapper<OrderOperateLog> buildQueryWrapper(OrderOperateLogBo bo) {
         Map<String, Object> params = bo.getParams();
         LambdaQueryWrapper<OrderOperateLog> lqw = Wrappers.lambdaQuery();
-        lqw.orderByAsc(OrderOperateLog::getId);
+        lqw.orderByDesc(OrderOperateLog::getId);
         lqw.eq(bo.getOrderId() != null, OrderOperateLog::getOrderId, bo.getOrderId());
         lqw.eq(StringUtils.isNotBlank(bo.getAction()), OrderOperateLog::getAction, bo.getAction());
         lqw.like(StringUtils.isNotBlank(bo.getUserName()), OrderOperateLog::getUserName, bo.getUserName());
@@ -115,7 +115,7 @@ public class OrderOperateLogServiceImpl  extends ServiceImpl<OrderOperateLogMapp
     /**
      * 保存前的数据校验
      */
-    private void validEntityBeforeSave(OrderOperateLog entity){
+    private void validEntityBeforeSave(OrderOperateLog entity) {
         //TODO 做一些数据校验,如唯一约束
     }
 
@@ -128,7 +128,7 @@ public class OrderOperateLogServiceImpl  extends ServiceImpl<OrderOperateLogMapp
      */
     @Override
     public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
-        if(isValid){
+        if (isValid) {
             //TODO 做一些业务上的校验,判断是否需要校验
         }
         return baseMapper.deleteByIds(ids) > 0;

+ 1 - 4
ruoyi-modules/ruoyi-order/src/main/java/org/dromara/order/service/impl/OrderReturnServiceImpl.java

@@ -11,17 +11,14 @@ import org.dromara.common.core.utils.StringUtils;
 import org.dromara.common.mybatis.core.page.PageQuery;
 import org.dromara.common.mybatis.core.page.TableDataInfo;
 import org.dromara.common.redis.utils.SequenceUtils;
-import org.dromara.order.domain.OrderMain;
 import org.dromara.order.domain.OrderReturn;
 import org.dromara.order.domain.OrderReturnItem;
-import org.dromara.order.domain.OrderRevenueHeader;
 import org.dromara.order.domain.bo.OrderReturnBo;
 import org.dromara.order.domain.bo.OrderReturnItemBo;
 import org.dromara.order.domain.vo.OrderReturnVo;
 import org.dromara.order.mapper.OrderReturnItemMapper;
 import org.dromara.order.mapper.OrderReturnMapper;
 import org.dromara.order.service.IOrderReturnService;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -89,7 +86,7 @@ public class OrderReturnServiceImpl extends ServiceImpl<OrderReturnMapper, Order
     private LambdaQueryWrapper<OrderReturn> buildQueryWrapper(OrderReturnBo bo) {
         Map<String, Object> params = bo.getParams();
         LambdaQueryWrapper<OrderReturn> lqw = Wrappers.lambdaQuery();
-        lqw.orderByAsc(OrderReturn::getId);
+        lqw.orderByDesc(OrderReturn::getId);
         lqw.eq(bo.getOrderId() != null, OrderReturn::getOrderId, bo.getOrderId());
         lqw.eq(StringUtils.isNotBlank(bo.getOrderNo()), OrderReturn::getOrderNo, bo.getOrderNo());
         lqw.eq(StringUtils.isNotBlank(bo.getServiceType()), OrderReturn::getServiceType, bo.getServiceType());

+ 1 - 1
ruoyi-modules/ruoyi-order/src/main/java/org/dromara/order/service/impl/OrderRevenueHeaderServiceImpl.java

@@ -125,7 +125,7 @@ public class OrderRevenueHeaderServiceImpl extends ServiceImpl<OrderRevenueHeade
     private LambdaQueryWrapper<OrderRevenueHeader> buildQueryWrapper(OrderRevenueHeaderBo bo) {
         Map<String, Object> params = bo.getParams();
         LambdaQueryWrapper<OrderRevenueHeader> lqw = Wrappers.lambdaQuery();
-        lqw.orderByAsc(OrderRevenueHeader::getId);
+        lqw.orderByDesc(OrderRevenueHeader::getId);
         lqw.eq(StringUtils.isNotBlank(bo.getRevenueType()), OrderRevenueHeader::getRevenueType, bo.getRevenueType());
         lqw.eq(StringUtils.isNotBlank(bo.getOrderRevenueCode()), OrderRevenueHeader::getOrderRevenueCode, bo.getOrderRevenueCode());
         lqw.eq(StringUtils.isNotBlank(bo.getIncomeOrderCode()), OrderRevenueHeader::getIncomeOrderCode, bo.getIncomeOrderCode());