Browse Source

fix: 益兽园erp修复(商城走带scrm,非商城走不带scrm)

xdd 4 weeks ago
parent
commit
a2c00586f4
20 changed files with 279 additions and 44 deletions
  1. 37 4
      fs-admin/src/main/java/com/fs/hisStore/task/MallStoreTask.java
  2. 3 0
      fs-service/src/main/java/com/fs/erp/service/IErpGoodsService.java
  3. 15 0
      fs-service/src/main/java/com/fs/erp/service/impl/ErpGoodsServiceImpl.java
  4. 15 0
      fs-service/src/main/java/com/fs/erp/service/impl/HzOMSErpGoodsServiceImpl.java
  5. 93 0
      fs-service/src/main/java/com/fs/erp/service/impl/JSTErpGoodsServiceImpl.java
  6. 18 20
      fs-service/src/main/java/com/fs/erp/service/impl/JSTErpOrderServiceImpl.java
  7. 15 0
      fs-service/src/main/java/com/fs/erp/service/impl/K9StockScrmServiceImpl.java
  8. 15 0
      fs-service/src/main/java/com/fs/erp/service/impl/WdtErpGoodsServiceImpl.java
  9. 1 0
      fs-service/src/main/java/com/fs/his/service/impl/FsStoreProductServiceImpl.java
  10. 2 0
      fs-service/src/main/java/com/fs/hisStore/mapper/FsStoreProductAttrValueScrmMapper.java
  11. 2 0
      fs-service/src/main/java/com/fs/hisStore/mapper/FsStoreProductScrmMapper.java
  12. 9 7
      fs-service/src/main/java/com/fs/hisStore/service/IFsStoreProductAttrValueScrmService.java
  13. 3 0
      fs-service/src/main/java/com/fs/hisStore/service/IFsStoreProductScrmService.java
  14. 2 1
      fs-service/src/main/java/com/fs/hisStore/service/impl/FsStoreAfterSalesScrmServiceImpl.java
  15. 2 2
      fs-service/src/main/java/com/fs/hisStore/service/impl/FsStoreCartScrmServiceImpl.java
  16. 16 0
      fs-service/src/main/java/com/fs/hisStore/service/impl/FsStoreOrderScrmServiceImpl.java
  17. 14 8
      fs-service/src/main/java/com/fs/hisStore/service/impl/FsStoreProductAttrValueScrmServiceImpl.java
  18. 7 2
      fs-service/src/main/java/com/fs/hisStore/service/impl/FsStoreProductScrmServiceImpl.java
  19. 3 0
      fs-service/src/main/resources/mapper/hisStore/FsStoreProductAttrValueScrmMapper.xml
  20. 7 0
      fs-service/src/main/resources/mapper/hisStore/FsStoreProductScrmMapper.xml

+ 37 - 4
fs-admin/src/main/java/com/fs/hisStore/task/MallStoreTask.java

@@ -17,7 +17,9 @@ import com.fs.erp.dto.ErpOrderQueryResponse;
 import com.fs.erp.service.IErpGoodsService;
 import com.fs.erp.service.IErpOrderService;
 import com.fs.his.config.FsSysConfig;
+import com.fs.his.domain.FsStoreProductAttrValue;
 import com.fs.his.dto.ExpressInfoDTO;
+import com.fs.his.mapper.FsStoreProductAttrValueMapper;
 import com.fs.his.service.IFsExpressService;
 import com.fs.his.service.IFsUserService;
 import com.fs.his.utils.ConfigUtil;
@@ -93,7 +95,7 @@ public class MallStoreTask
     @Autowired
     private ISysConfigService configService;
     @Autowired
-    private FsStoreProductAttrValueScrmMapper fsStoreProductAttrValueMapper;
+    private FsStoreProductAttrValueMapper fsStoreProductAttrValueMapper;
     @Autowired
     private FsStorePaymentScrmMapper paymentMapper;
     @Autowired
@@ -232,8 +234,8 @@ public class MallStoreTask
         String json=configService.selectConfigByKey("store.config");
         StoreConfig config=JSONUtil.toBean(json,StoreConfig.class);
 
-        List<FsStoreProductAttrValueScrm> values = fsStoreProductAttrValueMapper.selectFsStoreProductAttrValueList(new FsStoreProductAttrValueScrm());
-        for (FsStoreProductAttrValueScrm value : values) {
+        List<FsStoreProductAttrValue> values = fsStoreProductAttrValueMapper.selectFsStoreProductAttrValueList(new FsStoreProductAttrValue());
+        for (FsStoreProductAttrValue value : values) {
             ErpGoodsQueryRequert query = new ErpGoodsQueryRequert();
             query.setCode(value.getBarCode());
             ErpGoodsQueryResponse goods = erpGoodsService.getGoods(query);
@@ -246,7 +248,7 @@ public class MallStoreTask
                     BigDecimal divide = salesPrice.multiply(new BigDecimal(config.getSalesPriceRate())).divide(new BigDecimal("100"));
                     System.out.println("代理价格"+divide);
                     System.out.println("成本价"+salesPrice);
-                    FsStoreProductAttrValueScrm va = new FsStoreProductAttrValueScrm();
+                    FsStoreProductAttrValue va = new FsStoreProductAttrValue();
                     va.setCost(salesPrice);
                     va.setAgentPrice(divide);
                     va.setId(value.getId());
@@ -255,9 +257,40 @@ public class MallStoreTask
             }
             System.out.println(goods);
         }
+    }
+
 
+    @Autowired
+    private FsStoreProductAttrValueScrmMapper fsStoreProductAttrValueScrmMapper;
+
+    public void storeProdUpdateCostPriceScrm()
+    {
+        String json=configService.selectConfigByKey("store.config");
+        StoreConfig config=JSONUtil.toBean(json,StoreConfig.class);
 
+        List<FsStoreProductAttrValueScrm> values = fsStoreProductAttrValueScrmMapper.selectFsStoreProductAttrValueList(new FsStoreProductAttrValueScrm());
+        for (FsStoreProductAttrValueScrm value : values) {
+            ErpGoodsQueryRequert query = new ErpGoodsQueryRequert();
+            query.setCode(value.getBarCode());
+            ErpGoodsQueryResponse goods = erpGoodsService.getGoodsScrm(query);
+            List<ErpGoods> items = goods.getItems();
 
+            if (items!=null&&items.size()>0){
+                ErpGoods erpGoods = items.get(0);
+                BigDecimal salesPrice = erpGoods.getSales_price();
+                if (salesPrice!=null&&salesPrice.compareTo(BigDecimal.ZERO) != 0){
+                    BigDecimal divide = salesPrice.multiply(new BigDecimal(config.getSalesPriceRate())).divide(new BigDecimal("100"));
+                    System.out.println("代理价格"+divide);
+                    System.out.println("成本价"+salesPrice);
+                    FsStoreProductAttrValueScrm va = new FsStoreProductAttrValueScrm();
+                    va.setCost(salesPrice);
+                    va.setAgentPrice(divide);
+                    va.setId(value.getId());
+                    fsStoreProductAttrValueScrmMapper.updateFsStoreProductAttrValue(va);
+                }
+            }
+            System.out.println(goods);
+        }
     }
     public void couponOp()
     {

+ 3 - 0
fs-service/src/main/java/com/fs/erp/service/IErpGoodsService.java

@@ -7,7 +7,10 @@ public interface IErpGoodsService
 {
 
     BaseResponse addGoods(ErpGoods goods);
+    BaseResponse addGoodsScrm(ErpGoods goods);
     ErpGoodsQueryResponse getGoods(ErpGoodsQueryRequert param);
+    ErpGoodsQueryResponse getGoodsScrm(ErpGoodsQueryRequert param);
     ErpGoodsStockQueryResponse getGoodsStock(ErpGoodsStockQueryRequert param);
+    ErpGoodsStockQueryResponse getGoodsStockScrm(ErpGoodsStockQueryRequert param);
 }
 

+ 15 - 0
fs-service/src/main/java/com/fs/erp/service/impl/ErpGoodsServiceImpl.java

@@ -43,6 +43,11 @@ public class ErpGoodsServiceImpl implements IErpGoodsService
         return response;
     }
 
+    @Override
+    public BaseResponse addGoodsScrm(ErpGoods goods) {
+        return null;
+    }
+
     @Override
     public ErpGoodsQueryResponse getGoods(ErpGoodsQueryRequert requert) {
         FsSysConfig sysConfig = configUtil.getSysConfig();
@@ -60,6 +65,11 @@ public class ErpGoodsServiceImpl implements IErpGoodsService
         return response;
     }
 
+    @Override
+    public ErpGoodsQueryResponse getGoodsScrm(ErpGoodsQueryRequert param) {
+        return null;
+    }
+
     @Override
     public ErpGoodsStockQueryResponse getGoodsStock(ErpGoodsStockQueryRequert requert) {
         FsSysConfig sysConfig = configUtil.getSysConfig();
@@ -76,4 +86,9 @@ public class ErpGoodsServiceImpl implements IErpGoodsService
         ErpGoodsStockQueryResponse response=JSONUtil.toBean(result, ErpGoodsStockQueryResponse.class);
         return response;
     }
+
+    @Override
+    public ErpGoodsStockQueryResponse getGoodsStockScrm(ErpGoodsStockQueryRequert param) {
+        return null;
+    }
 }

+ 15 - 0
fs-service/src/main/java/com/fs/erp/service/impl/HzOMSErpGoodsServiceImpl.java

@@ -48,16 +48,31 @@ public class HzOMSErpGoodsServiceImpl implements IErpGoodsService {
         return null;
     }
 
+    @Override
+    public BaseResponse addGoodsScrm(ErpGoods goods) {
+        return null;
+    }
+
     @Override
     public ErpGoodsQueryResponse getGoods(ErpGoodsQueryRequert param) {
         return null;
     }
 
+    @Override
+    public ErpGoodsQueryResponse getGoodsScrm(ErpGoodsQueryRequert param) {
+        return null;
+    }
+
     @Override
     public ErpGoodsStockQueryResponse getGoodsStock(ErpGoodsStockQueryRequert param) {
         return null;
     }
 
+    @Override
+    public ErpGoodsStockQueryResponse getGoodsStockScrm(ErpGoodsStockQueryRequert param) {
+        return null;
+    }
+
     /**
      * 构建店铺商品上传的参数
      *

+ 93 - 0
fs-service/src/main/java/com/fs/erp/service/impl/JSTErpGoodsServiceImpl.java

@@ -11,6 +11,10 @@ import com.fs.his.domain.FsStoreProduct;
 import com.fs.his.domain.FsStoreProductAttrValue;
 import com.fs.his.service.IFsStoreProductAttrValueService;
 import com.fs.his.service.IFsStoreProductService;
+import com.fs.hisStore.domain.FsStoreProductAttrValueScrm;
+import com.fs.hisStore.domain.FsStoreProductScrm;
+import com.fs.hisStore.service.IFsStoreProductAttrValueScrmService;
+import com.fs.hisStore.service.IFsStoreProductScrmService;
 import com.fs.voice.utils.StringUtil;
 import org.apache.commons.collections4.CollectionUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -29,9 +33,13 @@ public class JSTErpGoodsServiceImpl implements IErpGoodsService {
 
     @Autowired
     private IFsStoreProductService fsStoreProductService;
+    @Autowired
+    private IFsStoreProductScrmService fsStoreProductScrmService;
 
     @Autowired
     private IFsStoreProductAttrValueService fsStoreProductAttrValueService;
+    @Autowired
+    private IFsStoreProductAttrValueScrmService fsStoreProductAttrValueScrmService;
 
     // 每次最大处理数量
     private static final int BATCH_SIZE = 190;
@@ -52,6 +60,21 @@ public class JSTErpGoodsServiceImpl implements IErpGoodsService {
         return null;
     }
 
+    @Override
+    public BaseResponse addGoodsScrm(ErpGoods goods) {
+        List<Long> storeProductIds = goods.getProductIdList();
+        JSONArray bulidJSONArray = buildGoodsScrm(storeProductIds);
+
+        //调用接口
+        for (int i = 0; i < bulidJSONArray.size(); i += BATCH_SIZE) {
+            JSONObject request=new JSONObject();
+            int end = Math.min(i + BATCH_SIZE, bulidJSONArray.size());
+            request.put("items",bulidJSONArray.subList(i, end));
+            jstErpHttpService.uploadGoods(request);
+        }
+        return null;
+    }
+
     @Override
     public ErpGoodsQueryResponse getGoods(ErpGoodsQueryRequert param) {
         ProductQueryRequestDTO requestDTO = new ProductQueryRequestDTO();
@@ -77,11 +100,81 @@ public class JSTErpGoodsServiceImpl implements IErpGoodsService {
         return erpGoodsQueryResponse;
     }
 
+    @Override
+    public ErpGoodsQueryResponse getGoodsScrm(ErpGoodsQueryRequert param) {
+        ProductQueryRequestDTO requestDTO = new ProductQueryRequestDTO();
+        requestDTO.setSkuIds(param.getCode());
+        ProductResponseDTO productResponseDTO = jstErpHttpService.queryGoods(requestDTO);
+        List<ProductResponseDTO.ProductInfo> datas = productResponseDTO.getDatas();
+        ErpGoodsQueryResponse erpGoodsQueryResponse = new ErpGoodsQueryResponse();
+        if (CollectionUtils.isNotEmpty(datas)) {
+            List<ErpGoods> erpGoodsList = new ArrayList<>();
+            for (ProductResponseDTO.ProductInfo data : datas) {
+                ErpGoods erpGoods = new ErpGoods();
+                erpGoods.setCode(data.getSkuCode());
+                erpGoods.setName(data.getName());
+                erpGoods.setSimple_name(data.getShortName());
+                erpGoods.setCategory_code(data.getCategory());
+                erpGoods.setCost_price(data.getCostPrice());
+                erpGoods.setSales_price(data.getSalePrice());
+                erpGoods.setPurchase_price(data.getMarketPrice());
+                erpGoodsList.add(erpGoods);
+            }
+            erpGoodsQueryResponse.setItems(erpGoodsList);
+        }
+        return erpGoodsQueryResponse;
+    }
+
     @Override
     public ErpGoodsStockQueryResponse getGoodsStock(ErpGoodsStockQueryRequert param) {
         return null;
     }
 
+    @Override
+    public ErpGoodsStockQueryResponse getGoodsStockScrm(ErpGoodsStockQueryRequert param) {
+        return null;
+    }
+    /**
+     * 构建店铺商品上传的参数
+     *
+     * @param storeProductIds
+     * @return
+     */
+    public JSONArray buildGoodsScrm(List<Long> storeProductIds) {
+        JSONArray res = new JSONArray();
+        //商品
+        List<FsStoreProductScrm> fsStoreProductList = fsStoreProductScrmService.getStoreProductInProductIds(storeProductIds);
+        if (!fsStoreProductList.isEmpty()) {
+
+            Map<Long, FsStoreProductScrm> productMap = fsStoreProductList.stream().collect(Collectors.toMap(FsStoreProductScrm::getProductId, p -> p));
+            //商品规格List
+            List<FsStoreProductAttrValueScrm> fsStoreProductAttrValues = fsStoreProductAttrValueScrmService.getFsStoreProductAttrValueListInProductId(storeProductIds);
+
+            //按规格构建商品数据
+            fsStoreProductAttrValues.forEach(v -> {
+                JSONObject productJson = new JSONObject();
+                FsStoreProductScrm product = productMap.get(v.getProductId());
+                productJson.put("sku_id", v.getBarCode());//商品编码
+                productJson.put("i_id", v.getBarCode());//如果没有款式默认商品编码一致
+                productJson.put("name", v.getSku());//名称
+                productJson.put("short_name", product.getKeyword());//简称
+                if(StringUtils.isNotEmpty(product.getBrand())){
+                    productJson.put("brand", product.getBrand());//品牌
+                }
+                productJson.put("weight", v.getWeight());//重量
+                productJson.put("s_price",v.getPrice());//基本售价
+                productJson.put("c_price", v.getCost());//成本
+                productJson.put("market_price", v.getOtPrice());//市场|吊牌价
+                productJson.put("unit", product.getUnitName());//单位
+                productJson.put("sku_pic", v.getImage());//商品图片
+                productJson.put("pic", v.getImage());//图片地址(款图片)
+                productJson.put("pic_big", v.getImage());//大图地址
+                res.add(productJson);
+            });
+        }
+
+        return res;
+    }
     /**
      * 构建店铺商品上传的参数
      *

+ 18 - 20
fs-service/src/main/java/com/fs/erp/service/impl/JSTErpOrderServiceImpl.java

@@ -12,7 +12,9 @@ import com.fs.erp.domain.*;
 import com.fs.erp.dto.*;
 import com.fs.erp.http.JstErpHttpService;
 import com.fs.erp.mapper.FsJstAftersalePushMapper;
+import com.fs.erp.mapper.FsJstAftersalePushScrmMapper;
 import com.fs.erp.mapper.FsJstCodPushMapper;
+import com.fs.erp.mapper.FsJstCodPushScrmMapper;
 import com.fs.erp.service.IErpOrderService;
 import com.fs.his.domain.FsStoreOrder;
 import com.fs.his.domain.FsStoreOrderItem;
@@ -51,18 +53,10 @@ public class JSTErpOrderServiceImpl implements IErpOrderService {
     @Autowired
     private IFsStoreOrderService fsStoreOrderService;
 
-    @Autowired
-    private IFsStoreOrderScrmService fsStoreOrderScrmService;
-
     @Autowired
     private IFsStoreOrderItemService fsStoreOrderItemService;
-    @Autowired
-    private IFsStoreOrderItemScrmService fsStoreOrderItemScrmService;
-
     @Autowired
     private IFsStoreProductService fsStoreProductService;
-    @Autowired
-    private IFsStoreProductScrmService fsStoreProductScrmService;
 
     @Autowired
     private FsJstCodPushMapper fsJstCodPushMapper;
@@ -192,7 +186,7 @@ public class JSTErpOrderServiceImpl implements IErpOrderService {
 
     @Override
     public ErpOrderResponse addOrderScrm(ErpOrder order) {
-        FsStoreOrderScrm fsStoreOrder = fsStoreOrderScrmService.selectFsStoreOrderByOrderCode(order.getPlatform_code());
+        FsStoreOrder fsStoreOrder = fsStoreOrderService.selectFsStoreOrderByOrderCode(order.getPlatform_code());
         log.info("ERP订单号: {}, 订单信息: {}",order.getPlatform_code(), JSON.toJSONString(fsStoreOrder));
 
         ErpOrderPayment erpOrderPayment = order.getPayments().get(0);
@@ -235,9 +229,9 @@ public class JSTErpOrderServiceImpl implements IErpOrderService {
         // 订单商品项列表
         List<OrderItemDTO> itemDTOList = new ArrayList<>();
 
-        List<FsStoreOrderItemVO> fsStoreOrderItemVOS = fsStoreOrderItemScrmService.selectFsStoreOrderItemListByOrderId(fsStoreOrder.getId());
+        List<FsStoreOrderItem> fsStoreOrderItemVOS = fsStoreOrderItemService.selectFsStoreOrderItemListByOrderId(fsStoreOrder.getOrderId());
         log.info("fsStoreOrderItemVOS==========>{}",fsStoreOrderItemVOS);
-        for (FsStoreOrderItemVO item : fsStoreOrderItemVOS) {
+        for (FsStoreOrderItem item : fsStoreOrderItemVOS) {
             OrderItemDTO orderItemDTO = new OrderItemDTO();
             JSONObject jsonObject = JSON.parseObject(item.getJsonInfo());
 
@@ -251,7 +245,7 @@ public class JSTErpOrderServiceImpl implements IErpOrderService {
             orderItemDTO.setShopIId(orderItemDTO.getSkuId());//款式编码ID,当前没有这个目前就与SKU ID一致
             orderItemDTO.setPropertiesValue(sku);//商品属性
 
-            FsStoreProductScrm fsStoreProduct = fsStoreProductScrmService.selectFsStoreProductById(item.getProductId());
+            FsStoreProduct fsStoreProduct = fsStoreProductService.selectFsStoreProductById(item.getProductId());
 
             orderItemDTO.setAmount(fsStoreProduct.getPrice());
 
@@ -549,13 +543,17 @@ public class JSTErpOrderServiceImpl implements IErpOrderService {
     public BaseResponse refundUpdate(ErpRefundUpdateRequest param) {
 
         FsStoreOrder fsStoreOrder = fsStoreOrderService.selectFsStoreOrderByOrderCode(param.getTid());
-        //todo 待合并
-//        FsStoreDelivers byOrderCode = fsStoreDeliversMapper.findByOrderCode(fsStoreOrder.getOrderCode());
-        //todo
         // 发货后退款
-//        if(ObjectUtil.isNotNull(byOrderCode)){
+        if(ObjectUtils.equals(param.getOrderStatus(),2)){
+            FsJstAftersalePush fsJstAftersalePush = new FsJstAftersalePush();
+            fsJstAftersalePush.setOrderId(fsStoreOrder.getOrderCode());
+            fsJstAftersalePush.setTaskStatus(com.fs.hisStore.enums.TaskStatusEnum.PENDING.getCode());
+            fsJstAftersalePush.setType(String.valueOf(AfterSalesOrderStatusEnum.WAIT_SELLER_AGREE.getIndex()));
+            fsJstAftersalePush.setRetryCount(0);
+            fsJstAftersalePush.setAfterSaleId(String.valueOf(param.getStoreAfterSalesId()));
+            fsJstAftersalePushMapper.insert(fsJstAftersalePush);
 
-//        } else {
+        } else {
             // 如果是发货前退款,直接走取消订单流程
             // 如果是发货后退款,走售后流程
             OrderCancelRequestDTO requestDTO = new OrderCancelRequestDTO();
@@ -564,7 +562,7 @@ public class JSTErpOrderServiceImpl implements IErpOrderService {
             requestDTO.setRemark("用户退款");
 
             jstErpHttpService.cancel(requestDTO);
-//        }
+        }
 
 
         BaseResponse baseResponse = new BaseResponse();
@@ -574,11 +572,11 @@ public class JSTErpOrderServiceImpl implements IErpOrderService {
     }
 
     @Autowired
-    private FsJstAftersalePushMapper fsJstAftersalePushMapper;
+    private FsJstAftersalePushScrmMapper fsJstAftersalePushMapper;
 
     @Override
     public BaseResponse refundUpdateScrm(ErpRefundUpdateRequest param) {
-        FsStoreOrderScrm fsStoreOrder = fsStoreOrderScrmService.selectFsStoreOrderByOrderCode(param.getTid());
+        FsStoreOrder fsStoreOrder = fsStoreOrderService.selectFsStoreOrderByOrderCode(param.getTid());
         log.info("订单号: {},发货状态: {},是否发货后: {}",fsStoreOrder.getOrderCode(),fsStoreOrder.getStatus(),ObjectUtils.equals(fsStoreOrder.getStatus(),2));
 
         // 发货后退款

+ 15 - 0
fs-service/src/main/java/com/fs/erp/service/impl/K9StockScrmServiceImpl.java

@@ -36,11 +36,21 @@ public class K9StockScrmServiceImpl implements IErpGoodsService {
         return null;
     }
 
+    @Override
+    public BaseResponse addGoodsScrm(ErpGoods goods) {
+        return null;
+    }
+
     @Override
     public ErpGoodsQueryResponse getGoods(ErpGoodsQueryRequert param) {
         return null;
     }
 
+    @Override
+    public ErpGoodsQueryResponse getGoodsScrm(ErpGoodsQueryRequert param) {
+        return null;
+    }
+
     @Override
     public ErpGoodsStockQueryResponse getGoodsStock(ErpGoodsStockQueryRequert param) {
         String barcode = param.getBarcode();
@@ -63,6 +73,11 @@ public class K9StockScrmServiceImpl implements IErpGoodsService {
         return response;
     }
 
+    @Override
+    public ErpGoodsStockQueryResponse getGoodsStockScrm(ErpGoodsStockQueryRequert param) {
+        return null;
+    }
+
     /**
      * 查看库存
      * @param request 参数

+ 15 - 0
fs-service/src/main/java/com/fs/erp/service/impl/WdtErpGoodsServiceImpl.java

@@ -35,6 +35,11 @@ public class WdtErpGoodsServiceImpl implements IErpGoodsService {
         return null;
     }
 
+    @Override
+    public BaseResponse addGoodsScrm(ErpGoods goods) {
+        return null;
+    }
+
     @Override
     public ErpGoodsQueryResponse getGoods(ErpGoodsQueryRequert param) {
         Map<String,String> map = new HashMap<>();
@@ -81,6 +86,11 @@ public class WdtErpGoodsServiceImpl implements IErpGoodsService {
 
     }
 
+    @Override
+    public ErpGoodsQueryResponse getGoodsScrm(ErpGoodsQueryRequert param) {
+        return null;
+    }
+
     @Override
     public ErpGoodsStockQueryResponse getGoodsStock(ErpGoodsStockQueryRequert param) {
         String barcode = param.getBarcode();
@@ -115,5 +125,10 @@ public class WdtErpGoodsServiceImpl implements IErpGoodsService {
             throw new RuntimeException(e);
         }
     }
+
+    @Override
+    public ErpGoodsStockQueryResponse getGoodsStockScrm(ErpGoodsStockQueryRequert param) {
+        return null;
+    }
 }
 

+ 1 - 0
fs-service/src/main/java/com/fs/his/service/impl/FsStoreProductServiceImpl.java

@@ -527,6 +527,7 @@ public class FsStoreProductServiceImpl implements IFsStoreProductService {
                 } else if (erpType == 5){
                     //聚水潭商品同步
                     params.setProductIdList(Arrays.asList(product.getProductId()));
+                    
                     jSTErpGoodsService.addGoods(params);
                 }
             }

+ 2 - 0
fs-service/src/main/java/com/fs/hisStore/mapper/FsStoreProductAttrValueScrmMapper.java

@@ -145,4 +145,6 @@ public interface FsStoreProductAttrValueScrmMapper
             "        </foreach>"+
             "</script>"})
     void updateFsStoreProductAttrValuePrice(List<Long> ids, double v);
+
+    List<FsStoreProductAttrValueScrm> getFsStoreProductAttrValueListInProductId(List<Long> productIds);
 }

+ 2 - 0
fs-service/src/main/java/com/fs/hisStore/mapper/FsStoreProductScrmMapper.java

@@ -408,4 +408,6 @@ public interface FsStoreProductScrmMapper
     List<FsStoreProductActivityListVO> selectFsStoreProductByIdsAudit(String productIds,@Param("config") MedicalMallConfig  config);
 
     List<FsStoreProductScrm> bulkCopyFsStoreProductByIds(Long[] productIds);
+
+    List<FsStoreProductScrm> getStoreProductInProductIds(List<Long> productIds);
 }

+ 9 - 7
fs-service/src/main/java/com/fs/hisStore/service/IFsStoreProductAttrValueScrmService.java

@@ -11,7 +11,7 @@ import com.fs.hisStore.vo.FsStoreTuiProductAttrValueVO;
 
 /**
  * 商品属性值Service接口
- * 
+ *
  * @author fs
  * @date 2022-03-15
  */
@@ -19,7 +19,7 @@ public interface IFsStoreProductAttrValueScrmService
 {
     /**
      * 查询商品属性值
-     * 
+     *
      * @param id 商品属性值ID
      * @return 商品属性值
      */
@@ -27,7 +27,7 @@ public interface IFsStoreProductAttrValueScrmService
 
     /**
      * 查询商品属性值列表
-     * 
+     *
      * @param fsStoreProductAttrValue 商品属性值
      * @return 商品属性值集合
      */
@@ -35,7 +35,7 @@ public interface IFsStoreProductAttrValueScrmService
 
     /**
      * 新增商品属性值
-     * 
+     *
      * @param fsStoreProductAttrValue 商品属性值
      * @return 结果
      */
@@ -43,7 +43,7 @@ public interface IFsStoreProductAttrValueScrmService
 
     /**
      * 修改商品属性值
-     * 
+     *
      * @param fsStoreProductAttrValue 商品属性值
      * @return 结果
      */
@@ -51,7 +51,7 @@ public interface IFsStoreProductAttrValueScrmService
 
     /**
      * 批量删除商品属性值
-     * 
+     *
      * @param ids 需要删除的商品属性值ID
      * @return 结果
      */
@@ -59,7 +59,7 @@ public interface IFsStoreProductAttrValueScrmService
 
     /**
      * 删除商品属性值信息
-     * 
+     *
      * @param id 商品属性值ID
      * @return 结果
      */
@@ -75,4 +75,6 @@ public interface IFsStoreProductAttrValueScrmService
 
 
     List<FsStoreTuiProductAttrValueVO> selectStoreTuiProductAttrValueVOList(FsStoreTuiProductAttrValueParam param);
+
+    List<FsStoreProductAttrValueScrm> getFsStoreProductAttrValueListInProductId(List<Long> storeProductIds);
 }

+ 3 - 0
fs-service/src/main/java/com/fs/hisStore/service/IFsStoreProductScrmService.java

@@ -4,6 +4,7 @@ import java.util.List;
 import java.util.Map;
 
 import com.fs.common.core.domain.R;
+import com.fs.his.domain.FsStoreProduct;
 import com.fs.hisStore.domain.FsStoreProductScrm;
 import com.fs.hisStore.domain.FsStoreProductRuleScrm;
 import com.fs.his.param.FsStoreProductListSParam;
@@ -137,4 +138,6 @@ public interface IFsStoreProductScrmService
     List<FsStoreProductActivityListVO> selectFsStoreProductByIdsAudit(String productIds);
 
     R bulkCopyFsStoreProductByIds(Long[] productIds);
+
+    List<FsStoreProductScrm> getStoreProductInProductIds(List<Long> storeProductIds);
 }

+ 2 - 1
fs-service/src/main/java/com/fs/hisStore/service/impl/FsStoreAfterSalesScrmServiceImpl.java

@@ -23,6 +23,7 @@ import com.fs.erp.domain.FsJstAftersalePush;
 import com.fs.erp.dto.BaseResponse;
 import com.fs.erp.dto.ErpRefundUpdateRequest;
 import com.fs.erp.mapper.FsJstAftersalePushMapper;
+import com.fs.erp.mapper.FsJstAftersalePushScrmMapper;
 import com.fs.erp.service.IErpOrderService;
 import com.fs.his.config.FsSysConfig;
 import com.fs.his.domain.*;
@@ -834,7 +835,7 @@ public class FsStoreAfterSalesScrmServiceImpl implements IFsStoreAfterSalesScrmS
 
 
     @Autowired
-    private FsJstAftersalePushMapper fsJstAftersalePushMapper;
+    private FsJstAftersalePushScrmMapper fsJstAftersalePushMapper;
 
     //平台撤销
     @Override

+ 2 - 2
fs-service/src/main/java/com/fs/hisStore/service/impl/FsStoreCartScrmServiceImpl.java

@@ -233,7 +233,7 @@ public class FsStoreCartScrmServiceImpl implements IFsStoreCartScrmService
                 //单品
                 ErpGoodsStockQueryRequert queryRequert = new ErpGoodsStockQueryRequert();
                 queryRequert.setBarcode(productAttrValue.getBarCode());
-                ErpGoodsStockQueryResponse goodsStock = goodsService.getGoodsStock(queryRequert);
+                ErpGoodsStockQueryResponse goodsStock = goodsService.getGoodsStockScrm(queryRequert);
                 if(goodsStock != null && goodsStock.getStocks() != null && !goodsStock.getStocks().isEmpty()){
 
 //                    int stocks = Double.valueOf(goodsStock.getStocks().get(0).getSalable_qty()).intValue();
@@ -271,7 +271,7 @@ public class FsStoreCartScrmServiceImpl implements IFsStoreCartScrmService
                             FsStoreProductAttrValueScrm attrValue=valueMapper.selectFsStoreProductAttrValueById(dto.getId());
                             ErpGoodsStockQueryRequert queryRequert = new ErpGoodsStockQueryRequert();
                             queryRequert.setBarcode(attrValue.getGroupBarCode());
-                            ErpGoodsStockQueryResponse goodsStock = goodsService.getGoodsStock(queryRequert);
+                            ErpGoodsStockQueryResponse goodsStock = goodsService.getGoodsStockScrm(queryRequert);
                             if(goodsStock != null && goodsStock.getStocks() != null && !goodsStock.getStocks().isEmpty()){
                                 int stocks = Integer.valueOf(goodsStock.getStocks().get(0).getSalable_qty());
 

+ 16 - 0
fs-service/src/main/java/com/fs/hisStore/service/impl/FsStoreOrderScrmServiceImpl.java

@@ -59,6 +59,7 @@ import com.fs.his.utils.ConfigUtil;
 import com.fs.his.vo.FsInquiryOrderVO;
 import com.fs.his.vo.FsStoreOrderExcelVO;
 import com.fs.hisStore.config.FsErpConfig;
+import com.fs.hisStore.constants.ErpTypeEnum;
 import com.fs.hisStore.dto.*;
 import com.fs.hisStore.mapper.*;
 import com.fs.hisStore.param.*;
@@ -91,6 +92,7 @@ import com.github.binarywang.wxpay.service.WxPayService;
 import lombok.Synchronized;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang.ObjectUtils;
+import org.apache.http.util.Asserts;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.aop.framework.AopContext;
@@ -2938,6 +2940,20 @@ public class FsStoreOrderScrmServiceImpl implements IFsStoreOrderScrmService {
         return fsStoreOrderMapper.selectFsStoreOrderStatisticsByUserId(fsUserIdList);
     }
 
+
+    /**
+     * 获取当前ERP类型
+     * @return ERP类型
+     */
+    public ErpTypeEnum getErpType(){
+        FsSysConfig erpConfig = configUtil.getSysConfig();
+        Integer erpType = erpConfig.getErpType();
+        ErpTypeEnum byCode = ErpTypeEnum.getByCode(erpType);
+        Asserts.notNull(byCode,String.format("当前ERP 类型: %d 未找到!",erpType));
+        return byCode;
+    }
+
+
     private IErpOrderService getErpService() {
         //判断是否开启erp
         IErpOrderService erpOrderService = null;

+ 14 - 8
fs-service/src/main/java/com/fs/hisStore/service/impl/FsStoreProductAttrValueScrmServiceImpl.java

@@ -1,5 +1,6 @@
 package com.fs.hisStore.service.impl;
 
+import java.util.Collections;
 import java.util.List;
 
 import com.fs.hisStore.config.MedicalMallConfig;
@@ -17,12 +18,12 @@ import com.fs.hisStore.service.IFsStoreProductAttrValueScrmService;
 
 /**
  * 商品属性值Service业务层处理
- * 
+ *
  * @author fs
  * @date 2022-03-15
  */
 @Service
-public class FsStoreProductAttrValueScrmServiceImpl implements IFsStoreProductAttrValueScrmService 
+public class FsStoreProductAttrValueScrmServiceImpl implements IFsStoreProductAttrValueScrmService
 {
     @Autowired
     private FsStoreProductAttrValueScrmMapper fsStoreProductAttrValueMapper;
@@ -32,7 +33,7 @@ public class FsStoreProductAttrValueScrmServiceImpl implements IFsStoreProductAt
 
     /**
      * 查询商品属性值
-     * 
+     *
      * @param id 商品属性值ID
      * @return 商品属性值
      */
@@ -44,7 +45,7 @@ public class FsStoreProductAttrValueScrmServiceImpl implements IFsStoreProductAt
 
     /**
      * 查询商品属性值列表
-     * 
+     *
      * @param fsStoreProductAttrValue 商品属性值
      * @return 商品属性值
      */
@@ -56,7 +57,7 @@ public class FsStoreProductAttrValueScrmServiceImpl implements IFsStoreProductAt
 
     /**
      * 新增商品属性值
-     * 
+     *
      * @param fsStoreProductAttrValue 商品属性值
      * @return 结果
      */
@@ -68,7 +69,7 @@ public class FsStoreProductAttrValueScrmServiceImpl implements IFsStoreProductAt
 
     /**
      * 修改商品属性值
-     * 
+     *
      * @param fsStoreProductAttrValue 商品属性值
      * @return 结果
      */
@@ -80,7 +81,7 @@ public class FsStoreProductAttrValueScrmServiceImpl implements IFsStoreProductAt
 
     /**
      * 批量删除商品属性值
-     * 
+     *
      * @param ids 需要删除的商品属性值ID
      * @return 结果
      */
@@ -92,7 +93,7 @@ public class FsStoreProductAttrValueScrmServiceImpl implements IFsStoreProductAt
 
     /**
      * 删除商品属性值信息
-     * 
+     *
      * @param id 商品属性值ID
      * @return 结果
      */
@@ -127,5 +128,10 @@ public class FsStoreProductAttrValueScrmServiceImpl implements IFsStoreProductAt
         return fsStoreProductAttrValueMapper.selectStoreTuiProductAttrValueVOList(param);
     }
 
+    @Override
+    public List<FsStoreProductAttrValueScrm> getFsStoreProductAttrValueListInProductId(List<Long> productIds) {
+        return fsStoreProductAttrValueMapper.getFsStoreProductAttrValueListInProductId(productIds);
+    }
+
 
 }

+ 7 - 2
fs-service/src/main/java/com/fs/hisStore/service/impl/FsStoreProductScrmServiceImpl.java

@@ -980,7 +980,7 @@ public class FsStoreProductScrmServiceImpl implements IFsStoreProductScrmService
                         ErpGoods params = new ErpGoods();
                         params.setStoreProductId(product.getProductId());
                         //瀚智OMS 维护添加商品
-                        hzOMSErpGoodsService.addGoods(params);
+                        hzOMSErpGoodsService.addGoodsScrm(params);
                     }else if(erpType == 5){
                         jstProductIds.add(product.getProductId());
                     }
@@ -998,7 +998,7 @@ public class FsStoreProductScrmServiceImpl implements IFsStoreProductScrmService
             //同步聚水潭商品
             ErpGoods params = new ErpGoods();
             params.setProductIdList(jstProductIds);
-            jSTErpGoodsService.addGoods(params);
+            jSTErpGoodsService.addGoodsScrm(params);
         }
 
 
@@ -1145,4 +1145,9 @@ public class FsStoreProductScrmServiceImpl implements IFsStoreProductScrmService
         }
         return R.ok();
     }
+
+    @Override
+    public List<FsStoreProductScrm> getStoreProductInProductIds(List<Long> productIds) {
+        return fsStoreProductMapper.getStoreProductInProductIds(productIds);
+    }
 }

+ 3 - 0
fs-service/src/main/resources/mapper/hisStore/FsStoreProductAttrValueScrmMapper.xml

@@ -55,6 +55,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <include refid="selectFsStoreProductAttrValueVo"/>
         where id = #{id}
     </select>
+    <select id="getFsStoreProductAttrValueListInProductId" resultType="com.fs.his.domain.FsStoreProductAttrValueScrm">
+        select *,cost_price AS cost from fs_store_product_attr_value_scrm where product_id IN <foreach collection="productIds" index="index" item="item" open="(" separator="," close=")">#{item}</foreach>
+    </select>
 
     <insert id="insertFsStoreProductAttrValue" parameterType="FsStoreProductAttrValueScrm" useGeneratedKeys="true" keyProperty="id">
         insert into fs_store_product_attr_value_scrm

+ 7 - 0
fs-service/src/main/resources/mapper/hisStore/FsStoreProductScrmMapper.xml

@@ -452,4 +452,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             #{productId}
         </foreach>
     </select>
+
+    <select id="getStoreProductInProductIds" resultType="com.fs.hisStore.domain.FsStoreProductScrm">
+        <include refid="selectFsStoreProductVo"/>
+        where product_id IN <foreach collection="productIds" index="index" item="item" open="(" separator="," close=")">
+        #{item}
+    </foreach>
+    </select>
 </mapper>