yangdamao il y a 1 an
Parent
commit
e3aca21ebb

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/mapper/OrderMapper.java

@@ -66,4 +66,6 @@ public interface OrderMapper extends BaseMapper<Order> {
     Integer getStudeCountByCodeNoTenant(String sevenCode);
 
     List<TopOldOrderInvoiceVo> getOrderInvoiceList(String orderSn);
+
+    List<String> getBusinessNameBySn(String orderSn);
 }

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/service/IOrderService.java

@@ -126,4 +126,6 @@ public interface IOrderService extends IService<Order> {
 	QuestionOpenImportVo questionGoodsOpenImport(List<QuestionOpenImportBo> importBoList,Long userId,String userName);
 
     List<TopOldOrderInvoiceVo> getOrderInvoiceList(String orderSn);
+
+    List<String> getBusinessNameBySn(String orderSn);
 }

+ 5 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/service/impl/OrderServiceImpl.java

@@ -3036,6 +3036,11 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
         return baseMapper.getOrderInvoiceList(orderSn);
     }
 
+    @Override
+    public List<String> getBusinessNameBySn(String orderSn) {
+        return baseMapper.getBusinessNameBySn(orderSn);
+    }
+
     private void questionOpen(User user, QuestionMerchant merchant,UserSubscribe userSubscribe,Long loginId,String loginName) {
         //商家商品
         Goods merGoods = iGoodsService.getOne(new LambdaQueryWrapper<Goods>()

+ 18 - 2
zhongzheng-system/src/main/java/com/zhongzheng/modules/top/goods/service/impl/TopOldOrderServiceImpl.java

@@ -403,8 +403,24 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
             //订单业务类型
             orderVoList.forEach(item -> {
                 item.setUserCheckStatus(1);
-                List<String> businessNames = baseMapper.queryBusinessBySn(item.getOrderSn());
-                item.setBusinessNames(businessNames);
+                Set<String> businessNames = new HashSet<>();
+                if (item.getOrderFrom() == 1 ){
+                    //新系统
+                    List<String> bNames = orderService.getBusinessNameBySn(item.getOrderSn());
+                    businessNames.addAll(bNames);
+                }else {
+                    List<TopOldOrderGoods> list = topOrderGoodsService.list(new LambdaQueryWrapper<TopOldOrderGoods>()
+                            .eq(TopOldOrderGoods::getOrderSn, item.getOrderSn())
+                            .eq(TopOldOrderGoods::getStatus, 1));
+                    if (CollectionUtils.isNotEmpty(list)){
+                        for (TopOldOrderGoods orderGoods : list) {
+                            String substring = orderGoods.getBusinessFullName().substring(5, 8);
+                            String format = String.format("%s-%s", substring, orderGoods.getBusinessName());
+                            businessNames.add(format);
+                        }
+                    }
+                }
+                item.setBusinessNames(businessNames.stream().collect(Collectors.toList()));
                 //订单转账凭证
                 List<TopOldOrderAttachment> attachmentList = topOrderAttachmentService
                         .list(new LambdaQueryWrapper<TopOldOrderAttachment>()

+ 15 - 0
zhongzheng-system/src/main/resources/mapper/modules/order/OrderMapper.xml

@@ -680,4 +680,19 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
                       ) + ( SELECT COUNT( DISTINCT cgut.user_id ) FROM class_grade_user_temp cgut WHERE cgut.grade_id = cg.grade_id AND cgut.`status` = 1 )
                   ) <![CDATA[ < ]]>  cg.student_upper
     </select>
+
+    <select id="getBusinessNameBySn" resultType="java.lang.String" parameterType="java.lang.String">
+        SELECT
+            CONCAT( cet.education_name, '-', cb.business_name, cpt.project_name ) AS business_name
+        FROM
+            order_goods og
+                LEFT JOIN goods g ON og.goods_id = g.goods_id
+                LEFT JOIN course_education_type cet ON g.education_type_id = cet.id
+                LEFT JOIN course_project_type cpt ON g.project_id = cpt.id
+                LEFT JOIN course_business cb ON g.business_id = cb.id
+        WHERE
+            og.`status` = 1
+          AND og.order_sn = #{orderSn}
+    </select>
+
 </mapper>