zyp vor 1 Monat
Ursprung
Commit
2c8fefff3b

+ 0 - 1
.gitignore

@@ -6,7 +6,6 @@ target/
 !**/src/main/**/target/
 !**/src/test/**/target/
 #*.yml
-logback.xml
 
 ### STS ###
 .apt_generated

+ 7 - 194
fs-common/src/main/java/com/fs/common/config/FSSysConfig.java

@@ -11,6 +11,7 @@ import org.springframework.stereotype.Component;
 
  */
 @Component
+@Data
 @ConfigurationProperties(prefix = "fs-config")
 public class FSSysConfig
 {
@@ -29,7 +30,7 @@ public class FSSysConfig
     String appId;
     String manuId;
     String callbackUrl;
-    //erp接口
+    //管易云erp接口
     Integer erpOpen;//是否开启ERP
     String erpAppKey;
     String erpSessionKey;
@@ -43,197 +44,9 @@ public class FSSysConfig
     String payGateWayUrl;
     String payNotifyUrl;
     String refundNotifyUrl;
-
-
-    public String getKdnId() {
-        return kdnId;
-    }
-
-    public void setKdnId(String kdnId) {
-        this.kdnId = kdnId;
-    }
-
-    public String getKdnKeyId() {
-        return kdnKeyId;
-    }
-
-    public void setKdnKeyId(String kdnKeyId) {
-        this.kdnKeyId = kdnKeyId;
-    }
-
-    public String getKdnUrl() {
-        return kdnUrl;
-    }
-
-    public void setKdnUrl(String kdnUrl) {
-        this.kdnUrl = kdnUrl;
-    }
-
-    public String getKdnSubscribeUrl() {
-        return kdnSubscribeUrl;
-    }
-
-    public void setKdnSubscribeUrl(String kdnSubscribeUrl) {
-        this.kdnSubscribeUrl = kdnSubscribeUrl;
-    }
-
-    public String getKdnAddressUrl() {
-        return kdnAddressUrl;
-    }
-
-    public void setKdnAddressUrl(String kdnAddressUrl) {
-        this.kdnAddressUrl = kdnAddressUrl;
-    }
-
-    public Long getSdkAppId() {
-        return sdkAppId;
-    }
-
-    public void setSdkAppId(Long sdkAppId) {
-        this.sdkAppId = sdkAppId;
-    }
-
-    public String getSdkAppKey() {
-        return sdkAppKey;
-    }
-
-    public void setSdkAppKey(String sdkAppKey) {
-        this.sdkAppKey = sdkAppKey;
-    }
-
-    public String getPrescribeUrl() {
-        return prescribeUrl;
-    }
-
-    public void setPrescribeUrl(String prescribeUrl) {
-        this.prescribeUrl = prescribeUrl;
-    }
-
-    public String getActId() {
-        return actId;
-    }
-
-    public void setActId(String actId) {
-        this.actId = actId;
-    }
-
-    public String getAppId() {
-        return appId;
-    }
-
-    public void setAppId(String appId) {
-        this.appId = appId;
-    }
-
-    public String getManuId() {
-        return manuId;
-    }
-
-    public void setManuId(String manuId) {
-        this.manuId = manuId;
-    }
-
-    public String getCallbackUrl() {
-        return callbackUrl;
-    }
-
-    public void setCallbackUrl(String callbackUrl) {
-        this.callbackUrl = callbackUrl;
-    }
-
-    public Integer getErpOpen() {
-        return erpOpen;
-    }
-
-    public void setErpOpen(Integer erpOpen) {
-        this.erpOpen = erpOpen;
-    }
-
-    public String getErpAppKey() {
-        return erpAppKey;
-    }
-
-    public void setErpAppKey(String erpAppKey) {
-        this.erpAppKey = erpAppKey;
-    }
-
-    public String getErpSessionKey() {
-        return erpSessionKey;
-    }
-
-    public void setErpSessionKey(String erpSessionKey) {
-        this.erpSessionKey = erpSessionKey;
-    }
-
-    public String getErpSecret() {
-        return erpSecret;
-    }
-
-    public void setErpSecret(String erpSecret) {
-        this.erpSecret = erpSecret;
-    }
-
-    public String getErpUrl() {
-        return erpUrl;
-    }
-
-    public void setErpUrl(String erpUrl) {
-        this.erpUrl = erpUrl;
-    }
-
-    public String getErpShopCode() {
-        return erpShopCode;
-    }
-
-    public void setErpShopCode(String erpShopCode) {
-        this.erpShopCode = erpShopCode;
-    }
-
-    public Integer getPayOpen() {
-        return payOpen;
-    }
-
-    public void setPayOpen(Integer payOpen) {
-        this.payOpen = payOpen;
-    }
-
-    public String getPayPartnerId() {
-        return payPartnerId;
-    }
-
-    public void setPayPartnerId(String payPartnerId) {
-        this.payPartnerId = payPartnerId;
-    }
-
-    public String getPayKey() {
-        return payKey;
-    }
-
-    public void setPayKey(String payKey) {
-        this.payKey = payKey;
-    }
-
-    public String getPayGateWayUrl() {
-        return payGateWayUrl;
-    }
-
-    public void setPayGateWayUrl(String payGateWayUrl) {
-        this.payGateWayUrl = payGateWayUrl;
-    }
-
-    public String getPayNotifyUrl() {
-        return payNotifyUrl;
-    }
-
-    public void setPayNotifyUrl(String payNotifyUrl) {
-        this.payNotifyUrl = payNotifyUrl;
-    }
-
-    public String getRefundNotifyUrl() {
-        return refundNotifyUrl;
-    }
-
-    public void setRefundNotifyUrl(String refundNotifyUrl) {
-        this.refundNotifyUrl = refundNotifyUrl;
-    }
+    //金博erp
+    String kingbosan;//账套名称
+    String kingbosSecret;//金博密钥
+    String kingbosUrl;//金博地址
+    String corgid;//机构编码
 }

+ 33 - 0
fs-service-system/src/main/java/com/fs/kingbos/domian/KingbosOrderD1Data.java

@@ -0,0 +1,33 @@
+package com.fs.kingbos.domian;
+
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+@Data
+public class KingbosOrderD1Data {
+    // OMS发货单号
+    private String cdo_id;
+    // OMS订单号
+    private String co_id;
+    // 药品编码
+    private String csku_id;
+    // ERP药品编码
+    private String cgoodsid;
+    // 药品名称
+    private String cname;
+    // 规格代码
+    private String cshop_sku_id;
+    // 数量
+    private BigDecimal iqty;
+    // 单价
+    private BigDecimal fprice;
+    // 总金额
+    private BigDecimal famount;
+    // 订单来源平台
+    private String cordersource;
+    // 是否退款
+    private Integer isreturn;
+    // 优惠金额
+    private BigDecimal fpromoamount;
+}

+ 67 - 0
fs-service-system/src/main/java/com/fs/kingbos/domian/KingbosOrderData.java

@@ -0,0 +1,67 @@
+package com.fs.kingbos.domian;
+
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * 金博订单实体  data
+ */
+@Data
+public class KingbosOrderData {
+    // 订单来源
+    private String cordersource;
+    // 订单下单时间
+    private Date dorder_date;
+    // 店铺买家编号
+    private String cshop_buyer_id;
+    // 平台类型
+    private String cplatformtype;
+    // 平台店铺编号
+    private String cshop_id;
+    // 平台店铺名称
+    private String cshop_name;
+    // 平台订单号
+    private String cso_id;
+    // OMS订单号
+    private String co_id;
+    // OMS发货单号
+    private String cdo_id;
+    // 应付金额
+    private BigDecimal fpay_amount;
+    // 已付金额
+    private BigDecimal fpaid_amount;
+    // 运费
+    private BigDecimal ffreight;
+    // 优惠金额
+    private BigDecimal ffree_amount;
+    // 订单状态
+    private String cstatus;
+    // 物流成本
+    private BigDecimal fpostcost;
+    // 最后更新时间
+    private Date dmodified;
+    // 收件人(省)
+    private String creceiver_state;
+    // 收件人(城市)
+    private String creceiver_city;
+    // 收件人(区)
+    private String creceiver_district;
+    // 收件人(详细地址)
+    private String creceiver_address;
+    // 收件人(名称)
+    private String creceiver_name;
+    // 收件人(电话)
+    private String creceiver_mobile;
+    // 快递单号
+    private String cexpress_no;
+    // 快递公司代码
+    private String cexpress_code;
+    // 快递公司名称
+    private String cexpress_name;
+    // 仓库代码
+    private String cwarehouse_code;
+    // 仓库名称
+    private String cwarehouse_name;
+}

+ 12 - 0
fs-service-system/src/main/java/com/fs/kingbos/domian/KingbosOrderRequest.java

@@ -0,0 +1,12 @@
+package com.fs.kingbos.domian;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class KingbosOrderRequest {
+    private String key;//单据ID
+    private KingbosOrderData data; //主表
+    private List<KingbosOrderD1Data> d1_data; //D1表
+}

+ 10 - 0
fs-service-system/src/main/java/com/fs/kingbos/domian/KingbosOrderResponse.java

@@ -0,0 +1,10 @@
+package com.fs.kingbos.domian;
+
+import lombok.Data;
+
+@Data
+public class KingbosOrderResponse {
+    private Boolean isSuccess; //true:请求成功;false:请求失败;
+    private String cbilid; //平台单号
+    private String errmsg;  //错误信息
+}

+ 64 - 0
fs-service-system/src/main/java/com/fs/kingbos/domian/KingbosRefundOrderD1Data.java

@@ -0,0 +1,64 @@
+package com.fs.kingbos.domian;
+
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+@Data
+public class KingbosRefundOrderD1Data {
+    // 序号
+    private Integer id1;
+    // 商品编码
+    private String cgoodsid;
+    // 批号
+    private String cph;
+    // 生产日期
+    private Date dmadedate;
+    // 有效期
+    private Date dexpdate;
+    // 所属注册证号
+    private String cphnote2;
+    // 中药辅助编码
+    private String cphcmaidcode;
+    // 数量
+    private BigDecimal fqty;
+    // 单价
+    private BigDecimal fnormprice;
+    // 金额
+    private BigDecimal fnormvalue;
+    // 折扣率【默认值:100】
+    private BigDecimal fdiscrate;
+    // 折扣金额
+    private BigDecimal fdiscvalue;
+    // 单价
+    private BigDecimal fprice;
+    // 金额
+    private BigDecimal fvalue;
+    // 税率
+    private BigDecimal ftaxrate;
+    // 税额
+    private BigDecimal ftaxvalue;
+    // 不含税单价
+    private BigDecimal fnotaxprice;
+    // 不含税金额
+    private BigDecimal fnotaxvalue;
+    // 原始表名【关联上游单时必填】
+    private String orig_ctabname;
+    // 原始单据类型【关联上游单时必填】
+    private String orig_cbiltype;
+    // 原网络销售单号【关联上游单时必填】
+    private String orig_cbilid;
+    // 原序号【关联上游单时必填】
+    private Integer orig_iid;
+    // 源表名【关联上游单时必填】
+    private String ref_ctabname;
+    // 源单据类型【关联上游单时必填】
+    private String ref_cbiltype;
+    // 源单号【关联上游单时必填】
+    private String ref_cbilid;
+    // 源序号【关联上游单时必填】
+    private Integer ref_iid;
+    // 原批号【关联上游单时必填】
+    private String orig_cph;
+}

+ 81 - 0
fs-service-system/src/main/java/com/fs/kingbos/domian/KingbosRefundOrderData.java

@@ -0,0 +1,81 @@
+package com.fs.kingbos.domian;
+
+import lombok.Data;
+
+import java.util.Date;
+
+@Data
+public class KingbosRefundOrderData {
+    // 第三方平台单号
+    private String cbilid;
+    // 单据日期
+    private Date dbildate;
+    // 机构名称【传编码】
+    private String corgid;
+    // 仓库名称【传编码】
+    private String cckid;
+    // 目标机构【传编码】
+    private String ctagorgid;
+    // 目标仓库
+    private String ctagckid;
+    // 退入仓库
+    private String cwarehouse;
+    // 线上订单号
+    private String cso_id;
+    // 平台订单号
+    private String co_id;
+    // 源单号【关联上游单时必填】
+    private String ref_cbilid;
+    // 源单据类型【关联上游单时必填】
+    private String ref_cbiltype;
+    // 源表名【关联上游单时必填】
+    private String ref_ctabname;
+    // 平台店铺编码
+    private String cshopcode;
+    // 平台店铺名称
+    private String cshopname;
+    // 会员编码
+    private String cvipcode;
+    // 会员名称
+    private String cvipname;
+    // 收货人
+    private String creceivername;
+    // 收货人电话
+    private String creceiverphone;
+    // 收件人省
+    private String creceiverprovince;
+    // 收件人市
+    private String creceivercity;
+    // 收件人区
+    private String creceiverarea;
+    // 收件人街道
+    private String creceivertown;
+    // 收件人详细地址
+    private String creceiveraddress;
+    // 退回快递
+    private String creturnexpressname;
+    // 退回运单
+    private String creturnexpresscode;
+    // 发货单号
+    private String ctradecode;
+    // 发货单号
+    private String cdoid;
+    // 退货原因
+    private String creturnreason;
+    // 售后类型
+    private String creturntype;
+    // 售后阶段
+    private String creturnstage;
+    // 平台状态
+    private String cplatformstatus;
+    // 退货单类型
+    private Integer itype;
+    // 备注
+    private String cnote;
+    // 发出快递单号
+    private String csendexpresscode;
+    // 退货号
+    private String creturnno;
+    // 是否为转单
+    private Integer iturn;
+}

+ 12 - 0
fs-service-system/src/main/java/com/fs/kingbos/domian/KingbosRefundOrderRequest.java

@@ -0,0 +1,12 @@
+package com.fs.kingbos.domian;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class KingbosRefundOrderRequest {
+    private String key;//单据ID
+    private KingbosRefundOrderData data; //主表
+    private List<KingbosRefundOrderD1Data> d1_data; //D1表
+}

+ 15 - 0
fs-service-system/src/main/java/com/fs/kingbos/service/K9OrderService.java

@@ -0,0 +1,15 @@
+package com.fs.kingbos.service;
+
+import com.fs.kingbos.domian.KingbosOrderRequest;
+import com.fs.kingbos.domian.KingbosOrderResponse;
+import com.fs.kingbos.domian.KingbosRefundOrderRequest;
+
+import java.text.ParseException;
+
+public interface K9OrderService {
+    KingbosOrderResponse addOrder(KingbosOrderRequest request);
+
+    KingbosOrderResponse refundOrder(KingbosRefundOrderRequest request);
+
+    void createOmsOrder(Long orderId) throws ParseException;
+}

+ 150 - 0
fs-service-system/src/main/java/com/fs/kingbos/service/impl/K9OrderServiceImpl.java

@@ -0,0 +1,150 @@
+package com.fs.kingbos.service.impl;
+
+import cn.hutool.core.util.IdUtil;
+import cn.hutool.http.HttpUtil;
+import cn.hutool.json.JSONObject;
+import cn.hutool.json.JSONUtil;
+import com.fs.common.config.FSSysConfig;
+import com.fs.common.utils.StringUtils;
+import com.fs.kingbos.domian.*;
+import com.fs.kingbos.service.K9OrderService;
+import com.fs.kingbos.util.SignUtil;
+import com.fs.kingbos.util.UrlUtil;
+import com.fs.store.domain.FsStoreOrder;
+import com.fs.store.domain.FsStoreOrderItem;
+import com.fs.store.domain.FsStoreProduct;
+import com.fs.store.dto.FsStoreCartDTO;
+import com.fs.store.mapper.FsStoreOrderMapper;
+import com.fs.store.mapper.FsStoreProductMapper;
+import com.fs.store.service.IFsStoreOrderItemService;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.math.BigDecimal;
+import java.text.ParseException;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+@Service
+public class K9OrderServiceImpl implements K9OrderService {
+    public final static Logger logger = LoggerFactory.getLogger(K9OrderServiceImpl.class);
+    @Autowired
+    FSSysConfig sysConfig;
+    @Autowired
+    private FsStoreOrderMapper fsStoreOrderMapper;
+    @Autowired
+    private IFsStoreOrderItemService storeOrderItemService;
+    @Autowired
+    private FsStoreProductMapper productMapper;
+    @Override
+    public KingbosOrderResponse addOrder(KingbosOrderRequest request) {
+        JSONObject param = JSONUtil.createObj();
+        param.set("key", "OL");
+        param.set("data", request.getData());
+        param.set("d1_data", request.getD1_data());
+        String sign = SignUtil.sign(param.toString(),sysConfig.getKingbosSecret());
+        String url = UrlUtil.getUrl(sysConfig.getKingbosUrl(),sign);
+        String json = param.toString();
+        String result = HttpUtil.post(url, json);
+        logger.info("zyp \n【金博网络订单】:"+result);
+        KingbosOrderResponse response = JSONUtil.toBean(result, KingbosOrderResponse.class);
+        return response;
+    }
+
+
+    @Override
+    public KingbosOrderResponse refundOrder(KingbosRefundOrderRequest request) {
+        JSONObject param = JSONUtil.createObj();
+        param.set("key", "WR");
+        param.set("data", request.getData());
+        param.set("d1_data", request.getD1_data());
+        String sign = SignUtil.sign(param.toString(),sysConfig.getKingbosSecret());
+        String url = UrlUtil.getUrl(sysConfig.getKingbosUrl(),sign);
+        String result = HttpUtil.post(url, param.toString());
+        logger.info("zyp \n【金博网络退货单】:"+result);
+        KingbosOrderResponse response = JSONUtil.toBean(result, KingbosOrderResponse.class);
+        return response;
+    }
+
+
+    @Override
+    @Transactional
+    public void createOmsOrder(Long orderId) throws ParseException {
+        FsStoreOrder order=fsStoreOrderMapper.selectFsStoreOrderById(orderId);
+        if(StringUtils.isEmpty(order.getExtendOrderId())&&order.getStatus()!=1){
+            return;
+        }
+        //组装金博data
+        KingbosOrderData data = new KingbosOrderData();
+        data.setCordersource("中康未来智慧药房");
+        data.setDorder_date(order.getCreateTime());
+        data.setCshop_buyer_id("zkwlzhyf100");//传固定值不可变
+        data.setCplatformtype("zkwlzhyfminiapp");
+        data.setCshop_id("zkwlzhyf2024");//中康未来智慧药房
+        data.setCshop_name("中康未来智慧药房");
+        data.setCso_id(order.getOrderCode());
+        String orderSn = IdUtil.getSnowflake(0, 0).nextIdStr();
+        data.setCo_id(orderSn);
+        data.setCdo_id(orderSn);
+        data.setFpay_amount(order.getPayPrice());
+        data.setFpaid_amount(order.getPayMoney());
+        data.setFfreight(order.getTotalPostage());
+        data.setFfree_amount(order.getCouponPrice());
+        data.setCstatus("待发货");
+        data.setFpostcost(BigDecimal.ZERO);
+        data.setDmodified(new Date());
+        String[] address=order.getUserAddress().split(" ");
+        data.setCreceiver_state(address[0]);
+        data.setCreceiver_city(address[1]);
+        data.setCreceiver_district(address[2]);
+        //处理地址多空隔问题
+        if(address.length>3){
+            StringBuffer addrs=new StringBuffer();
+            for(int i=3;i<address.length;i++){
+                addrs.append(address[i]);
+            }
+            data.setCreceiver_address(addrs.toString());
+        }
+        else if(address.length==3){
+            data.setCreceiver_address(address[2]);
+        }
+        //处理地址字符问题
+        data.setCreceiver_address(data.getCreceiver_address().replace("+","加"));
+        data.setCreceiver_address(data.getCreceiver_address().replace("\n",""));
+        data.setCreceiver_name(order.getRealName());
+        data.setCreceiver_mobile(order.getUserPhone());
+        data.setCexpress_name(order.getDeliveryName());
+        data.setCexpress_code("SF");
+        data.setCwarehouse_code("");
+        data.setCwarehouse_name("");
+        List<KingbosOrderD1Data> d1Datas = new ArrayList<>();
+        FsStoreOrderItem itemMap=new FsStoreOrderItem();
+        itemMap.setOrderId(order.getId());
+        List<FsStoreOrderItem> orderItems=storeOrderItemService.selectFsStoreOrderItemList(itemMap);
+        for (FsStoreOrderItem orderItem: orderItems){
+            FsStoreCartDTO cartDTO= JSONUtil.toBean(orderItem.getJsonInfo(),FsStoreCartDTO.class);
+            KingbosOrderD1Data item = new KingbosOrderD1Data();
+            item.setCdo_id(data.getCdo_id());
+            item.setCo_id(data.getCo_id());
+            item.setCsku_id(cartDTO.getBarCode());
+            item.setCgoodsid(cartDTO.getBarCode());
+            item.setCname(cartDTO.getProductName());
+            item.setCshop_sku_id(cartDTO.getBarCode());
+            item.setIqty(new BigDecimal(orderItem.getNum()));
+            item.setFprice(cartDTO.getPrice());
+            item.setFamount(new BigDecimal(orderItem.getNum()).multiply(cartDTO.getPrice()));
+            item.setCordersource(data.getCordersource());
+            item.setIsreturn(0);
+            item.setFpromoamount(BigDecimal.ZERO);
+            d1Datas.add(item);
+        }
+        KingbosOrderRequest request = new KingbosOrderRequest();
+        request.setData(data);
+        request.setD1_data(d1Datas);
+        KingbosOrderResponse response = this.addOrder(request);
+    }
+}

+ 45 - 0
fs-service-system/src/main/java/com/fs/kingbos/util/SignUtil.java

@@ -0,0 +1,45 @@
+package com.fs.kingbos.util;
+
+
+import java.security.MessageDigest;
+import java.time.Instant;
+
+
+public class SignUtil {
+
+    public static String sign(String data, String secret) {
+        StringBuilder enValue = new StringBuilder();
+        enValue.append("kingbos");
+        enValue.append(secret);
+        enValue.append(currentSeconds());
+        enValue.append("陕西金博");
+        enValue.append("zy01");
+        enValue.append(data);
+        return encryptByMD5(enValue.toString());
+    }
+
+    private static String encryptByMD5(String data) {
+        StringBuilder   sign = new StringBuilder();
+        try {
+            MessageDigest md = MessageDigest.getInstance("MD5");
+            byte[]   bytes = md.digest(data.getBytes("UTF-8"));
+            for   (int i = 0; i < bytes.length; i++) {
+                String   hex = Integer.toHexString(bytes[i] & 0xFF);
+                if   (hex.length() == 1) {
+                    sign.append("0");
+                }
+                sign.append(hex.toUpperCase());
+            }
+
+        }catch (Exception e) {
+            e.printStackTrace();
+        }
+        return   sign.toString();
+    }
+
+    public static long currentSeconds(){
+        // 获取当前的秒级时间戳
+        return Instant.now().getEpochSecond();
+    }
+
+}

+ 26 - 0
fs-service-system/src/main/java/com/fs/kingbos/util/UrlUtil.java

@@ -0,0 +1,26 @@
+package com.fs.kingbos.util;
+
+import java.io.UnsupportedEncodingException;
+import java.net.URLEncoder;
+
+import static com.fs.kingbos.util.SignUtil.currentSeconds;
+
+public class UrlUtil {
+    public static String getUrl(String url, String sign) {
+        String updatedUrl = updateURLParams(url, "timestep", String.valueOf(currentSeconds()));
+        updatedUrl = updateURLParams(updatedUrl, "sign", sign);
+        return updatedUrl;
+    }
+
+    public static String updateURLParams(String url, String param, String value) {
+        String encodedValue;
+        try {
+            encodedValue = URLEncoder.encode(value, "UTF-8");
+        } catch (UnsupportedEncodingException e) {
+            encodedValue = value;
+            e.printStackTrace();
+        }
+
+        return url.replaceAll(param + "=", param + encodedValue);
+    }
+}

+ 6 - 0
fs-service-system/src/main/resources/application-config.yml

@@ -20,6 +20,12 @@ fsConfig:
   erpWdShopCode: beiliyou2-test
   erpWdBaseUrl: https://api.wangdian.cn/openapi2/
   erpWarehouseCode: beiliyou2-test
+
+  #金博ERP
+  kingbosan: 陕西中康
+  kingbosSecret: 12CA1038CE8A45D1BA325898A3F2F029
+  kingbosUrl: http://zkyf888.gnway.cc:53868/?an=陕西中康&do=k9save&timestep=&sign=&corgid=zy01
+  corgid: zy01
   #第三方支付配置
   payOpen: 1
   payPartnerId: 22051909542647100020