Prechádzať zdrojové kódy

'调用金蝶接口'

HUJIANGUO 3 rokov pred
rodič
commit
a4110e8618

+ 25 - 0
src/main/java/com/steerinfo/dil/feign/JoinApiFeign.java

@@ -2,6 +2,7 @@ package com.steerinfo.dil.feign;
 
 import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestParam;
 
@@ -22,4 +23,28 @@ public interface JoinApiFeign {
      */
     @PostMapping("api/v1/join/bmstruckdetailsorder/getPurchaseDetailsOrder")
     Map<String,Object> getPurchaseDetailsOrder(@RequestParam("detailsId") Integer detailsId);
+
+    /**
+     * 推送结算信息给金蝶的接口
+     * @param map
+     * @return
+     */
+    @PostMapping("api/v1/join/wsface/pushBmsSettlement")
+    String WSFaceWay(@RequestBody Map<String, Object> map);
+
+    /**
+     * 销售汽运详单
+     * @param statementId
+     * @return
+     */
+    @PostMapping("api/v1/join/bmstruckdetailsorder/getSaleDetailsOrder")
+    List<Map<String, Object>> getSaleDetailsOrder(@RequestParam("statementId") Integer statementId);
+
+    /**
+     * 销售汽运账单
+     * @param statementId
+     * @return
+     */
+    @PostMapping("api/v1/join/bmstruckstatement/getStatement")
+    Map<String,Object> getStatement(@RequestParam("statementId") Integer statementId);
 }

+ 9 - 1
src/main/java/com/steerinfo/dil/service/impl/BmstruckDetailsOrderServiceImpl.java

@@ -4,6 +4,7 @@ import com.steerinfo.dil.feign.JoinApiFeign;
 import com.steerinfo.dil.mapper.BmstruckDetailsOrderMapper;
 import com.steerinfo.dil.model.BmstruckDetailsOrder;
 import com.steerinfo.dil.service.IBmstruckDetailsOrderService;
+import com.steerinfo.dil.util.EASUtil;
 import com.steerinfo.dil.util.NoUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -30,6 +31,8 @@ public class BmstruckDetailsOrderServiceImpl implements IBmstruckDetailsOrderSer
     NoUtil noUtil;
     @Autowired
     JoinApiFeign joinApiFeign;
+    @Autowired
+    EASUtil easUtil;
 
     /**
      * 展示汽运详单列表
@@ -90,7 +93,12 @@ public class BmstruckDetailsOrderServiceImpl implements IBmstruckDetailsOrderSer
         bmstruckDetailsOrder.setInsertUpdateRemark("无");
         int code = bmstruckDetailsOrderMapper.insertSelective(bmstruckDetailsOrder);
         // 调用金蝶接口
-        Map<String, Object> mapValue = joinApiFeign.getPurchaseDetailsOrder(detailsId.intValue());
+        if (orderType.intValue() == 3) {
+            Map<String, Object> input = joinApiFeign.getPurchaseDetailsOrder(detailsId.intValue());
+            Map<String, Object> totalMap = easUtil.getTotalMap();
+            totalMap.put("input",input);
+            joinApiFeign.WSFaceWay(totalMap);
+        }
         return code;
     }
 

+ 18 - 1
src/main/java/com/steerinfo/dil/service/impl/BmstruckStatementServiceImpl.java

@@ -1,11 +1,13 @@
 package com.steerinfo.dil.service.impl;
 
+import com.steerinfo.dil.feign.JoinApiFeign;
 import com.steerinfo.dil.mapper.BmstruckCheckMapper;
 import com.steerinfo.dil.mapper.BmstruckDetailsOrderMapper;
 import com.steerinfo.dil.mapper.BmstruckDetailsStatementMapper;
 import com.steerinfo.dil.model.BmstruckCheck;
 import com.steerinfo.dil.model.BmstruckDetailsOrder;
 import com.steerinfo.dil.model.BmstruckDetailsStatement;
+import com.steerinfo.dil.util.EASUtil;
 import com.steerinfo.dil.util.NoUtil;
 import com.steerinfo.dil.model.BmstruckStatement;
 import com.steerinfo.dil.mapper.BmstruckStatementMapper;
@@ -17,6 +19,7 @@ import org.springframework.transaction.annotation.Transactional;
 import java.text.DecimalFormat;
 import java.util.Date;
 import java.math.BigDecimal;
+import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
@@ -47,6 +50,10 @@ public class BmstruckStatementServiceImpl implements IBmstruckStatementService {
     BmstruckCheckMapper bmstruckCheckMapper;
     @Autowired
     NoUtil noUtil;
+    @Autowired
+    JoinApiFeign joinApiFeign;
+    @Autowired
+    EASUtil easUtil;
 
     /**
      * 展示计费账单
@@ -144,7 +151,17 @@ public class BmstruckStatementServiceImpl implements IBmstruckStatementService {
         DecimalFormat df = new DecimalFormat("0.00");
         String statementTotalAmount = df.format(doubleTotalAmount);
         bmstruckStatement.setStatementExcludTax(new BigDecimal(statementTotalAmount));
-        return bmstruckStatementMapper.insertSelective(bmstruckStatement);
+        int code = bmstruckStatementMapper.insertSelective(bmstruckStatement);
+        // 调用金蝶接口
+        List<Map<String, Object>> entries = joinApiFeign.getSaleDetailsOrder(statementId.intValue());
+        Map<String,Object> head = joinApiFeign.getStatement(statementId.intValue());
+        Map<String,Object> input = new HashMap<>();
+        input.put("entries",entries);
+        input.put("head",head);
+        Map<String, Object> totalMap = easUtil.getTotalMap();
+        totalMap.put("input",input);
+        joinApiFeign.WSFaceWay(totalMap);
+        return code;
     }
 
     /**

+ 72 - 0
src/main/java/com/steerinfo/dil/util/EASUtil.java

@@ -0,0 +1,72 @@
+package com.steerinfo.dil.util;
+
+import org.springframework.stereotype.Component;
+
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * 配置金蝶连接常量Map
+ * @Description:
+ * @Author:HuJianGuo
+ * @GreateTime:2021/11/15 19:44
+ * @Version:V2.0
+ */
+@Component
+public class EASUtil {
+    // totalMap
+    public final Map<String,Object> totalMap = new HashMap<>();
+    // context
+    public final Map<String,Object> context = new HashMap<>();
+    public final boolean logError = true;
+    public final boolean logData = true;
+    // context
+    public final Map<String,Object> login = new HashMap<>();
+    public final String password = "kduser";
+    public final String dcName = "D001";
+    public final String dbType = "0";
+    public final String userName = "user";
+    // context
+    public final String command = "savePayOtherBill";
+
+    /**
+     * 得到context的map
+     * @return
+     */
+    public Map<String,Object> getContext(){
+        this.context.put("logError",logError);
+        this.context.put("logData",logData);
+        return this.context;
+    }
+
+    /**
+     * 得到login的map
+     * @return
+     */
+    public Map<String,Object> getLogin(){
+        this.login.put("password",password);
+        this.login.put("dcName",dcName);
+        this.login.put("dbType",dbType);
+        this.login.put("userName",userName);
+        return this.login;
+    }
+
+    /**
+     * 得到command字符串
+     * @return
+     */
+    public String getCommand(){
+        return this.command;
+    }
+
+    /**
+     * 将所有的配置放入到totalMap的map里面
+     * @return
+     */
+    public Map<String,Object> getTotalMap() {
+        totalMap.put("context",getContext());
+        totalMap.put("login",getLogin());
+        totalMap.put("command",getCommand());
+        return this.totalMap;
+    }
+}