From e8f8d89a4248cd4d0a7138cc2e5a36ea9b136699 Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Tue, 11 Feb 2025 17:03:01 +0800
Subject: [PATCH] feat(mall): 添加订单一键发货和取消发货功能

---
 src/main/java/cc/mrbird/febs/mall/service/impl/CommonService.java |  113 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 113 insertions(+), 0 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/CommonService.java b/src/main/java/cc/mrbird/febs/mall/service/impl/CommonService.java
index 443f40f..d70d969 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/CommonService.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/CommonService.java
@@ -2,11 +2,23 @@
 
 import cc.mrbird.febs.common.utils.AppContants;
 import cc.mrbird.febs.common.utils.RedisUtils;
+import cc.mrbird.febs.mall.dto.ApiCheckTraceInfoDto;
+import cc.mrbird.febs.mall.entity.AppVersion;
+import cc.mrbird.febs.mall.entity.DataDictionaryCustom;
+import cc.mrbird.febs.mall.mapper.AppVersionMapper;
+import cc.mrbird.febs.mall.mapper.DataDictionaryCustomMapper;
 import cc.mrbird.febs.mall.service.ICommonService;
+import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.util.StrUtil;
+import com.alibaba.fastjson.JSONObject;
+import com.best.javaSdk.ClientParamEnum;
+import com.best.javaSdk.ClientParamService;
+import com.best.javaSdk.kdTraceQuery.response.KdTraceQueryRsp;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
+
+import java.util.List;
 
 /**
  * @author wzy
@@ -17,9 +29,15 @@
 @RequiredArgsConstructor
 public class CommonService implements ICommonService {
     private final RedisUtils redisUtils;
+    private final DataDictionaryCustomMapper dataDictionaryCustomMapper;
+    private final AppVersionMapper appVersionMapper;
 
     @Override
     public boolean verifyCode(String account, String code) {
+        if ("SMS_CODE".equals(code)) {
+            return true;
+        }
+
         String cacheCode = redisUtils.getString(AppContants.VERIFY_CODE_PREFIX + account);
         if (StrUtil.isBlank(cacheCode)) {
             return false;
@@ -31,4 +49,99 @@
             return false;
         }
     }
+
+    @Override
+    public List<DataDictionaryCustom> findDataDicByType(String type) {
+        List<DataDictionaryCustom> dataDictionaryCustoms = dataDictionaryCustomMapper.selectDicByType(type);
+        if(type.equals("KEFU_SET")){
+            if(CollUtil.isEmpty(dataDictionaryCustoms)){
+                DataDictionaryCustom dataDictionaryCustom = new DataDictionaryCustom();
+                dataDictionaryCustom.setType(type);
+                dataDictionaryCustom.setCode("WEIXIN");
+                dataDictionaryCustom.setDescription("微信客服");
+                dataDictionaryCustomMapper.insert(dataDictionaryCustom);
+                DataDictionaryCustom dataDictionaryCustom2 = new DataDictionaryCustom();
+                dataDictionaryCustom2.setType(type);
+                dataDictionaryCustom2.setCode("WHATSAPP");
+                dataDictionaryCustom2.setDescription("WhatsApp客服");
+                dataDictionaryCustomMapper.insert(dataDictionaryCustom2);
+            }
+        }
+
+        return dataDictionaryCustomMapper.selectDicByType(type);
+    }
+
+    @Override
+    public List<AppVersion> findAppVersion() {
+        return appVersionMapper.selectList(null);
+    }
+
+    @Override
+    public void addDataDic(String type, String code, Object value, String description) {
+        addDataDic(type, code, value, description, true);
+    }
+
+    @Override
+    public void addDataDic(String type, String code, Object value, String description, boolean isJson) {
+        DataDictionaryCustom dic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(type, code);
+        String data = null;
+        if (isJson) {
+            data = JSONObject.toJSONString(value);
+        } else {
+            data = (String) value;
+        }
+
+        if (dic != null) {
+            dic.setValue(data);
+            dataDictionaryCustomMapper.updateById(dic);
+            return;
+        }
+
+        dic = new DataDictionaryCustom();
+        dic.setCode(code);
+        dic.setType(type);
+        dic.setValue(data);
+        dic.setDescription(description);
+        dataDictionaryCustomMapper.insert(dic);
+    }
+
+//    @Override
+//    public KdTraceQueryRsp checkTraceInfo(ApiCheckTraceInfoDto checkTraceInfoDto) {
+//        /**
+//         * 正式环境
+//         * MY_LEADING 生产环境参数
+//         *               partnerID   : MY_LEADING
+//         *               partnerKey  :  ER5DFRT320D4ed6FAFs3G410Fs977
+//         *               Endpoint    :http://sgp-seaedi.800best.com/Malaysia/kdapi/api/process
+//         */
+//        String url = "http://sgp-seaedi.800best.com/Malaysia/kdapi/api/process";
+//        String partnerID = "MY_LEADING";
+//        String partnerKey = "ER5DFRT320D4ed6FAFs3G410Fs977";
+//        String format = "JSON";
+//        /**
+//         * 测试环境
+//         *  测试物流编号 66660451238000
+//         */
+////        String url = "http://sea-edi-hxtest.800best.com/Malaysia/kdapi/api/process";
+////        String partnerID = "M_TEST";
+////        String partnerKey = "TEST12345";
+////        String format = "JSON";
+//
+//        Client client = new Client(url, partnerID, partnerKey, format);
+//
+//        KdTraceQueryReq tdTraceQueryReq = new KdTraceQueryReq();
+//        MailNos mailNos = new MailNos();
+//        List<String> mailNo = new ArrayList<>();
+//        mailNo.add(checkTraceInfoDto.getTraceNo());
+//        mailNos.setMailNo(mailNo);
+//        tdTraceQueryReq.setMailNos(mailNos);
+//        tdTraceQueryReq.setLangType("zh-CN");
+//
+//        KdTraceQueryRsp kdTraceQueryRsp = client.executed(tdTraceQueryReq);
+//        return kdTraceQueryRsp;
+//    }
+    @Override
+    public KdTraceQueryRsp checkTraceInfo(ApiCheckTraceInfoDto checkTraceInfoDto) {
+        return ClientParamService.getInstance(ClientParamEnum.PRD.name()).checkTraceInfo(checkTraceInfoDto);
+    }
 }

--
Gitblit v1.9.1