HUJIANGUO %!s(int64=3) %!d(string=hai) anos
pai
achega
678f9b06d8

+ 0 - 1
src/main/java/com/steerinfo/dil/controller/BmstruckCheckController.java

@@ -9,7 +9,6 @@ import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiModelProperty;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
-
 import java.math.BigDecimal;
 
 /**

+ 47 - 0
src/main/java/com/steerinfo/dil/controller/BmstruckFormulaController.java

@@ -0,0 +1,47 @@
+package com.steerinfo.dil.controller;
+
+import com.steerinfo.dil.service.impl.BmstruckFormulaServiceImpl;
+import com.steerinfo.dil.util.BaseRESTfulController;
+import com.steerinfo.framework.controller.RESTfulResult;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.math.BigDecimal;
+import java.util.Map;
+
+/**
+ * @Description:
+ * @Author:HuJianGuo
+ * @GreateTime:2021/9/6 17:34
+ * @Version:V2.0
+ */
+@RestController
+@RequestMapping("/${api.version}/bmsshipformulas")
+public class BmstruckFormulaController extends BaseRESTfulController {
+
+    @Autowired
+    BmstruckFormulaServiceImpl bmstruckFormulaService;
+
+    /**
+     * 查询途损费计算公式
+     * @return
+     */
+    @ApiOperation(value = "查询销售汽运离100KM差距10KM内计费公式")
+    @PostMapping("/getSmallTruckFormula")
+    public RESTfulResult getSmallTruckFormula(){
+        return success(bmstruckFormulaService.selectAnyFormula(new BigDecimal(10)));
+    }
+
+    /**
+     * 查询水分质检计算公式
+     * @return
+     */
+    @ApiOperation(value = "查询销售汽运离100KM差距10KM外计费公式")
+    @PostMapping("/getBigTruckFormula")
+    public RESTfulResult getBigTruckFormula(){
+        return success(bmstruckFormulaService.selectAnyFormula(new BigDecimal(11)));
+    }
+}

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

@@ -0,0 +1,25 @@
+package com.steerinfo.dil.feign;
+
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Author HUJIANGUO
+ * @Date 2021/11/10 9:58
+ * @Version 1.0
+ */
+@FeignClient(value = "DAL-DAZHOU-JOIN-API",url = "https://172.16.33.161:8066")
+public interface JoinApiFeign {
+    /**
+     * 采购汽运账单
+     * @param detailsId
+     * @return
+     */
+    @PostMapping("api/v1/join/bmstruckdetailsorder/getPurchaseDetailsOrder")
+    Map<String,Object> getPurchaseDetailsOrder(@RequestParam("detailsId") Integer detailsId);
+}

+ 9 - 0
src/main/java/com/steerinfo/dil/mapper/BmstruckFormulaMapper.java

@@ -3,6 +3,8 @@ package com.steerinfo.dil.mapper;
 import com.steerinfo.dil.model.BmstruckFormula;
 import com.steerinfo.framework.mapper.IBaseMapper;
 import java.math.*;
+import java.util.Map;
+
 import org.apache.ibatis.annotations.Mapper;
 
 @Mapper
@@ -14,4 +16,11 @@ public interface BmstruckFormulaMapper extends IBaseMapper<BmstruckFormula, BigD
      * @return
      */
     String getTruckFormula(BigDecimal formulaId);
+
+    /**
+     * 查询计费公式和名称
+     * @param formulaId
+     * @return
+     */
+    Map<String, Object> selectAnyFormula(BigDecimal formulaId);
 }

+ 8 - 0
src/main/java/com/steerinfo/dil/service/IBmstruckFormulaService.java

@@ -1,6 +1,7 @@
 package com.steerinfo.dil.service;
 
 import java.math.BigDecimal;
+import java.util.Map;
 
 /**
  * @Description:
@@ -16,4 +17,11 @@ public interface IBmstruckFormulaService {
      * @return
      */
     String getTruckFormula(BigDecimal formulaId);
+
+    /**
+     * 根据主键查询公式和名称
+     * @param formulaId
+     * @return
+     */
+    Map<String, Object> selectAnyFormula(BigDecimal formulaId);
 }

+ 10 - 2
src/main/java/com/steerinfo/dil/service/impl/BmstruckDetailsOrderServiceImpl.java

@@ -1,12 +1,12 @@
 package com.steerinfo.dil.service.impl;
 
+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.NoUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
-
 import java.math.BigDecimal;
 import java.text.DecimalFormat;
 import java.util.*;
@@ -28,6 +28,8 @@ public class BmstruckDetailsOrderServiceImpl implements IBmstruckDetailsOrderSer
     BmstruckFormulaServiceImpl bmstruckFormulaService;
     @Autowired
     NoUtil noUtil;
+    @Autowired
+    JoinApiFeign joinApiFeign;
 
     /**
      * 展示汽运详单列表
@@ -74,6 +76,9 @@ public class BmstruckDetailsOrderServiceImpl implements IBmstruckDetailsOrderSer
             BigDecimal purchaseOrderId = getFormulaMembers(orderId);
             bmstruckDetailsOrder.setPurchaseOrderId(purchaseOrderId);
         }
+        if (orderType.intValue() == 1) {
+            bmstruckDetailsOrder.setWetherToStatement(new BigDecimal(0));
+        }
         bmstruckDetailsOrder.setDetailsId(detailsId);
         bmstruckDetailsOrder.setOrderId(orderId);
         bmstruckDetailsOrder.setDetailsNo(detailsNo);
@@ -86,7 +91,10 @@ public class BmstruckDetailsOrderServiceImpl implements IBmstruckDetailsOrderSer
         bmstruckDetailsOrder.setInsertUsername("admin");
         bmstruckDetailsOrder.setUpdateUsername("admin");
         bmstruckDetailsOrder.setInsertUpdateRemark("无");
-        return bmstruckDetailsOrderMapper.insertSelective(bmstruckDetailsOrder);
+        int code = bmstruckDetailsOrderMapper.insertSelective(bmstruckDetailsOrder);
+        // 调用金蝶接口
+        Map<String, Object> mapValue = joinApiFeign.getPurchaseDetailsOrder(detailsId.intValue());
+        return code;
     }
 
     /**

+ 11 - 0
src/main/java/com/steerinfo/dil/service/impl/BmstruckFormulaServiceImpl.java

@@ -6,6 +6,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.math.BigDecimal;
+import java.util.Map;
 
 /**
  * @Description:
@@ -28,4 +29,14 @@ public class BmstruckFormulaServiceImpl implements IBmstruckFormulaService {
     public String getTruckFormula(BigDecimal formulaId) {
         return bmstruckFormulaMapper.getTruckFormula(formulaId);
     }
+
+    /**
+     * 根据主键查询公式和名称
+     * @param formulaId
+     * @return
+     */
+    @Override
+    public Map<String, Object> selectAnyFormula(BigDecimal formulaId) {
+        return bmstruckFormulaMapper.selectAnyFormula(formulaId);
+    }
 }

+ 4 - 7
src/main/java/com/steerinfo/dil/service/impl/BmstruckStatementServiceImpl.java

@@ -1,6 +1,5 @@
 package com.steerinfo.dil.service.impl;
 
-import com.fasterxml.jackson.databind.node.BigIntegerNode;
 import com.steerinfo.dil.mapper.BmstruckCheckMapper;
 import com.steerinfo.dil.mapper.BmstruckDetailsOrderMapper;
 import com.steerinfo.dil.mapper.BmstruckDetailsStatementMapper;
@@ -8,8 +7,6 @@ import com.steerinfo.dil.model.BmstruckCheck;
 import com.steerinfo.dil.model.BmstruckDetailsOrder;
 import com.steerinfo.dil.model.BmstruckDetailsStatement;
 import com.steerinfo.dil.util.NoUtil;
-import com.steerinfo.framework.mapper.IBaseMapper;
-import com.steerinfo.framework.service.impl.BaseServiceImpl;
 import com.steerinfo.dil.model.BmstruckStatement;
 import com.steerinfo.dil.mapper.BmstruckStatementMapper;
 import com.steerinfo.dil.service.IBmstruckStatementService;
@@ -59,20 +56,20 @@ public class BmstruckStatementServiceImpl implements IBmstruckStatementService {
     public List<Map<String, Object>> getTruckStatementList(Map<String, Object> mapValue) {
         List<Map<String, Object>> mapList = bmstruckStatementMapper.getTruckStatementList(mapValue);
         String checkStatus = "";
-        for (Map<String,Object> map: mapList ) {
+        for (Map<String,Object> map: mapList) {
             BigDecimal checkCarrierStatus = (BigDecimal) map.get("checkCarrierStatus");
             BigDecimal checkReceiveCustomerStatus = (BigDecimal) map.get("checkReceiveCustomerStatus");
             BigDecimal checkShipperStatus = (BigDecimal) map.get("checkShipperStatus");
             // 有人拒绝:未通过审核
-            if (checkCarrierStatus.intValue() == 0 || checkReceiveCustomerStatus.intValue() == 0 || checkShipperStatus.intValue() == 0){
+            if (checkCarrierStatus != null || checkReceiveCustomerStatus != null || checkShipperStatus != null && (checkCarrierStatus.intValue() == 0 || checkReceiveCustomerStatus.intValue() == 0 || checkShipperStatus.intValue() == 0)){
                 checkStatus = "未通过审核";
             }
             // 全部通过:已通过审核
-            if (checkCarrierStatus.intValue() == 1 && checkReceiveCustomerStatus.intValue() == 1 && checkShipperStatus.intValue() == 1) {
+            if (checkCarrierStatus != null || checkReceiveCustomerStatus != null || checkShipperStatus != null && (checkCarrierStatus.intValue() == 1 && checkReceiveCustomerStatus.intValue() == 1 && checkShipperStatus.intValue() == 1)) {
                 checkStatus = "已通过审核";
             }
             // 有人未审核,且没人拒绝:审核中
-            if (checkCarrierStatus == null || checkReceiveCustomerStatus == null || checkShipperStatus == null && checkStatus != "未通过审批"){
+            if (checkCarrierStatus != null || checkReceiveCustomerStatus != null || checkShipperStatus != null && checkStatus != "未通过审批"){
                 checkStatus = "审核中";
             }
             // 全部都没审核:待审核

+ 15 - 3
src/main/java/com/steerinfo/dil/util/NoUtil.java

@@ -35,15 +35,27 @@ public class NoUtil {
         }
         switch ((resultId.toString()).length()) {
             case 1:
-                resultNo = resultNo + "0000" + resultId;
+                resultNo = resultNo + "00000000" + resultId;
                 break;
             case 2:
-                resultNo = resultNo + "000" + resultId;
+                resultNo = resultNo + "0000000" + resultId;
                 break;
             case 3:
-                resultNo = resultNo + "00" + resultId;
+                resultNo = resultNo + "000000" + resultId;
                 break;
             case 4:
+                resultNo = resultNo + "00000" + resultId;
+                break;
+            case 5:
+                resultNo = resultNo + "0000" + resultId;
+                break;
+            case 6:
+                resultNo = resultNo + "000" + resultId;
+                break;
+            case 7:
+                resultNo = resultNo + "00" + resultId;
+                break;
+            case 8:
                 resultNo = resultNo + "0" + resultId;
                 break;
             default:resultNo = resultNo + resultId;

+ 1 - 1
src/main/resources/bootstrap.yml

@@ -14,7 +14,7 @@ spring:
 
 openfeign:
   ColumnDataFeign:
-    url: ${COLUMNDATAFEIGN_URL:localhost:8083}
+    url: ${COLUMNDATAFEIGN_URL:192.168.0.108:8083}
 
 #eureka设置
 eureka:

+ 8 - 0
src/main/resources/com/steerinfo/dil/mapper/BmstruckFormulaMapper.xml

@@ -405,4 +405,12 @@
         FROM BMSTRUCK_FORMULA
         WHERE FORMULA_ID = #{formulaId}
     </select>
+
+    <!-- 查询计算公式 -->
+    <select id="selectAnyFormula" resultType="java.util.Map" parameterType="DECIMAL">
+        SELECT bf.FORMULA_NAME   as "formula_name",
+               bf.FORMULA_STRING as "formula_string"
+        FROM BMSTRUCK_FORMULA bf
+        WHERE bf.FORMULA_ID = #{formulaId}
+    </select>
 </mapper>