luolinsong 2 месяцев назад
Родитель
Сommit
194dc6e88e

+ 3 - 3
fs-admin/src/main/java/com/fs/hisStore/controller/FsStoreHealthOrderScrmController.java

@@ -494,9 +494,9 @@ public class FsStoreHealthOrderScrmController extends BaseController {
                 setCellValue(sheet, 15, startCol + i, String.valueOf(cartInfo.getPrice()));//金额(元)
                 FsStoreProductScrm fsStoreProductScrm = fsStoreProductService.selectFsStoreProductById(cartInfo.getProductId());
                 setCellValue(sheet, 10, startCol + i, fsStoreProductScrm != null && fsStoreProductScrm.getManufacturer()!= null ?fsStoreProductScrm.getManufacturer(): "");//生产企业名称
-                setCellValue(sheet, 8, startCol + i, cartInfo.getProductName() == null ? fsStoreProductScrm != null && fsStoreProductScrm.getCommonName()!= null ?fsStoreProductScrm.getCommonName() : cartInfo.getProductName():"");//商品名称
-                setCellValue(sheet, 11, 1, orderItems.get(i).getBatchNumber());//生产批号(药品) / 序列号(器械)
-                setCellValue(sheet, 12, 1, orderItems.get(i).getVerifyCode());//有效期/追溯码
+                setCellValue(sheet, 8, startCol + i, cartInfo.getProductName() != null && !"-".equals(cartInfo.getProductName()) ? cartInfo.getProductName() : (fsStoreProductScrm != null && fsStoreProductScrm.getCommonName() != null ? fsStoreProductScrm.getCommonName() : ""));//商品名称
+                setCellValue(sheet, 11, startCol + i, orderItems.get(i).getBatchNumber());//生产批号(药品) / 序列号(器械)
+                setCellValue(sheet, 12, startCol + i, orderItems.get(i).getVerifyCode());//有效期/追溯码
             }
             String payTimeStr = null;
             Date payTime = fsStoreOrderScrm.getPayTime();

+ 30 - 10
fs-service/src/main/java/com/fs/hisStore/service/impl/FsStoreOrderScrmServiceImpl.java

@@ -571,18 +571,38 @@ public class FsStoreOrderScrmServiceImpl implements IFsStoreOrderScrmService {
     @Override
     public List<FsStoreOrderVO> selectFsStoreOrderListVO(FsStoreOrderParam param) {
         List<FsStoreOrderVO> list = fsStoreOrderMapper.selectFsStoreOrderListVO(param);
-        for (FsStoreOrderVO vo : list) {
-            String nickName = vo.getUserPhone().replaceAll("(\\d{3})\\d*(\\d{4})", "$1****$2");
-            vo.setNickname(nickName);
-            if (StringUtils.isNotEmpty(vo.getItemJson())) {
-                JSONArray jsonArray = JSONUtil.parseArray(vo.getItemJson());
-                List<FsStoreOrderItemVO> items = JSONUtil.toList(jsonArray, FsStoreOrderItemVO.class);
-                if (items.size() > 0) {
-                    vo.setItems(items);
+        if(!list.isEmpty()){
+            List<Long> orderIds = list.stream().map(FsStoreOrderVO::getId).collect(Collectors.toList());
+            Map<Long,FsStoreOrderItemScrm> itemMap = fsStoreOrderItemMapper.selectOrderItemSpliceByOrderIds(orderIds).stream().collect(Collectors.toMap(FsStoreOrderItemScrm::getOrderId, item -> item));
+            for (FsStoreOrderVO vo : list) {
+                String nickName = vo.getUserPhone().replaceAll("(\\d{3})\\d*(\\d{4})", "$1****$2");
+                vo.setNickname(nickName);
+                if (StringUtils.isNotEmpty(vo.getItemJson())) {
+                    JSONArray jsonArray = JSONUtil.parseArray(vo.getItemJson());
+                    List<FsStoreOrderItemVO> items = JSONUtil.toList(jsonArray, FsStoreOrderItemVO.class);
+                    if (items.size() > 0) {
+                        vo.setItems(items);
+                    }
                 }
+                if(itemMap.containsKey(vo.getId())){
+                    FsStoreOrderItemScrm item = itemMap.get(vo.getId());
+                    if(item.getBatchNumber() != null){
+                        vo.setBatchNumber(item.getBatchNumber());
+                    }else {
+                        vo.setBatchNumber(null);
+                    }
+                    if(item.getVerifyCode() != null){
+                        vo.setVerifyCode(item.getVerifyCode());
+                    }else {
+                        vo.setVerifyCode(null);
+                    }
+                }else {
+                    vo.setBatchNumber(null);
+                    vo.setVerifyCode(null);
+                }
+                //List<FsStoreOrderItemVO> items=storeOrderItemService.selectFsStoreOrderItemListByOrderId(vo.getId());
+                //vo.setItems(items);
             }
-            //List<FsStoreOrderItemVO> items=storeOrderItemService.selectFsStoreOrderItemListByOrderId(vo.getId());
-            //vo.setItems(items);
         }
         return list;
     }