Sfoglia il codice sorgente

Merge branch 'master' into dev

txf 3 anni fa
parent
commit
f9a74a4990

+ 20 - 0
src/main/java/com/steerinfo/dil/feign/OmsFeign.java

@@ -0,0 +1,20 @@
+package com.steerinfo.dil.feign;
+
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+
+import java.math.BigDecimal;
+import java.util.Map;
+
+/**
+ * @ author    :TXF
+ * @ time      :2021/10/27 18:05
+ */
+
+@FeignClient(value = "dil-oms-dev", url = "${openfeign.OmsFeign.url}")
+public interface OmsFeign {
+    @PostMapping("api/v1/oms/omstruckorderseparates/closeInwardOrder")
+    Map<String,Object> closeInwardOrder(@RequestParam("orderId") Integer orderId, @RequestParam("sqe") Integer sqe);
+
+}

+ 2 - 0
src/main/java/com/steerinfo/dil/mapper/UtilsMapper.java

@@ -73,4 +73,6 @@ public interface UtilsMapper {
     //通过订单号查询订单路段顺序号
     Integer getLineSequenceByOrderNumber(String orderNumber);
 
+    //通过总实绩查询是否有卸货实绩
+    Integer getUnloadResultByTotalId(BigDecimal totalId);
 }

+ 9 - 0
src/main/java/com/steerinfo/dil/service/impl/AmsSaleOrderServiceImpl.java

@@ -223,6 +223,15 @@ public class AmsSaleOrderServiceImpl implements IAmsSaleOrderService {
                 amsSaleOrder.setSaleRemark(saleRemark);
                 amsSaleOrder.setDeleted(new BigDecimal(0));
                 amsSaleOrder.setUpdateTime(new Date());
+                amsSaleOrder.setShipperId(shipperId);
+                amsSaleOrder.setReceiveId(receiveId);
+                if (isSelfMention != null) {
+                    if (isSelfMention.equals("CARRY")) {
+                        amsSaleOrder.setSaleOrderIsselfMention("是");
+                    } else {
+                        amsSaleOrder.setSaleOrderIsselfMention("否");
+                    }
+                }
                 if (saleHistoricalOrderAmount != null && saleHistoricalOrderAmount.length() != 0) {
                     amsSaleOrder.setSaleHistoricalOrderAmount(new BigDecimal(saleHistoricalOrderAmount));
                 }

+ 28 - 5
src/main/java/com/steerinfo/dil/service/impl/TmstruckWeightResultServiceImpl.java

@@ -1,6 +1,7 @@
 package com.steerinfo.dil.service.impl;
 
 import com.steerinfo.dil.feign.BmsTruckFeign;
+import com.steerinfo.dil.feign.OmsFeign;
 import com.steerinfo.dil.mapper.TmstrainWeightResultMapper;
 import com.steerinfo.dil.mapper.TmstruckReceiptResultMapper;
 import com.steerinfo.dil.mapper.UtilsMapper;
@@ -47,6 +48,9 @@ public class TmstruckWeightResultServiceImpl implements ITmstruckWeightResultSer
     @Autowired
     UtilsMapper utilsMapper;
 
+    @Autowired
+    OmsFeign omsFeign;
+
     @Autowired
     TmstruckReceiptResultMapper tmstruckReceiptResultMapper;
 
@@ -382,12 +386,27 @@ public class TmstruckWeightResultServiceImpl implements ITmstruckWeightResultSer
         TmstruckWeightResult tmstruckWeightResult = new TmstruckWeightResult();
         tmstruckWeightResult.setResultPoundNo((String) map.get("resultPoundNo"));
         tmstruckWeightResult.setMaterialId(DataChange.dataToBigDecimal(map.get("materialId")));
-        Integer sqe = DataChange.dataToBigDecimal(oneMap.get("Sqe")).intValue(); //获取订单路段顺序号
+        int sqe = DataChange.dataToBigDecimal(oneMap.get("Sqe")).intValue(); //获取订单路段顺序号
         sqe = sqe + 1;
-        Map<String, Object> threeMap = new HashMap<>(); //用于更新路段顺序号
-        threeMap.put("orderLineSequence", sqe);
-        threeMap.put("orderNumber", map.get("orderNumber"));
-        utilsMapper.updateLineSeqByOrderIdOrNum2(threeMap); //更新订单路段顺序号
+        Object resultNetWeight = map.get("resultNetWeight");
+        if(resultNetWeight != null && !"".equals((String) resultNetWeight)){
+            //判断是否有卸货实绩已经卸过货 如果有卸货实绩 则结束订单
+            Integer resultId = utilsMapper.getUnloadResultByTotalId(DataChange.dataToBigDecimal(oneMap.get("totalId")));
+            if(resultId != null){
+                int orderIds = DataChange.dataToBigDecimal(oneMap.get("orderIds")).intValue();
+                omsFeign.closeInwardOrder(orderIds, sqe);
+            }else {
+                Map<String, Object> threeMap = new HashMap<>(); //用于更新路段顺序号
+                threeMap.put("orderLineSequence", sqe);
+                threeMap.put("orderNumber", map.get("orderNumber"));
+                utilsMapper.updateLineSeqByOrderIdOrNum2(threeMap); //更新订单路段顺序号
+            }
+        }else {
+            Map<String, Object> threeMap = new HashMap<>(); //用于更新路段顺序号
+            threeMap.put("orderLineSequence", sqe);
+            threeMap.put("orderNumber", map.get("orderNumber"));
+            utilsMapper.updateLineSeqByOrderIdOrNum2(threeMap); //更新订单路段顺序号
+        }
         //首先查询这个订单号的这个物资ID是否有计量实绩
         Map<String, Object> twoMap = tmstruckWeightResultMapper.selectResultIdByOrderNoAndMaterialId(map); //判断这个物资是否已经计量过
         Object resultCrossWeightTime = map.get("resultCrossWeightTime");
@@ -529,6 +548,10 @@ public class TmstruckWeightResultServiceImpl implements ITmstruckWeightResultSer
      * @return
      **/
     public void sendMesToKD(Map<String, Object> map, Integer orderType){
+        String resultTareCalculateNumber = String.valueOf(map.get("resultTareCalculateNumber"));
+        if(! resultTareCalculateNumber.contains("精煤")){ //如果不是精煤称的则不回传金蝶 或者没有皮重称
+            return;
+        }
         String orderNumber = (String) map.get("orderNumber");
         Map<String, Object> mesMap = new HashMap<>();
         switch (orderType){

+ 7 - 0
src/main/resources/application-dev.yml

@@ -7,5 +7,12 @@ spring:
   application:
     name: dal-dazhou-join-api
 
+openfeign:
+  OmsFeign:
+    url: ${OMSFEIGN_URL:172.16.33.166:8016}
+  imFeign:
+    url: ${IMFEIGN_URL:172.16.33.166:8055}
+  BmsTruckFeign:
+    url: ${BMSTRUCKFEIGN_URL:localhost:8009}
 server:
   port: 8006

+ 7 - 0
src/main/resources/application-prod.yml

@@ -7,5 +7,12 @@ spring:
   application:
     name: dal-dazhou-join-api
 
+openfeign:
+  OmsFeign:
+    url: ${OMSFEIGN_URL:172.16.33.166:8095}
+  imFeign:
+    url: ${IMFEIGN_URL:172.16.33.166:8055}
+  BmsTruckFeign:
+    url: ${BMSTRUCKFEIGN_URL:localhost:8009}
 server:
   port: 8066

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

@@ -1,7 +1,7 @@
 api.version: api/v1/join
 spring:
   profiles:
-    include: ${SPRING_PROFILES:dev}
+    include: ${SPRING_PROFILES:prod}
   jackson:
     date-format: yyyy-MM-dd HH:mm:ss
     time-zone: GMT+8
@@ -40,12 +40,6 @@ redis:
     time: 864000000
   database: 0
 
-openfeign:
-  #正式环境
-  imFeign:
-    url: ${IMFEIGN_URL:172.16.33.166:8055}
-  BmsTruckFeign:
-    url: ${BMSTRUCKFEIGN_URL:localhost:8009}
 
 mybatis:
   type-aliases-package: com.steerinfo.dil.model

+ 6 - 1
src/main/resources/com/steerinfo/dil/mapper/UtilsMapper.xml

@@ -164,7 +164,8 @@
         select OO.ORDER_TYPE "orderType",
                TTR.RESULT_TOTAL_ID  "totalId",
                Rc.CAPACITY_NUMBER   "capacityNumber",
-               OO.ORDER_LINE_SEQUENCE   "Sqe"
+               OO.ORDER_LINE_SEQUENCE   "Sqe",
+               OO.ORDER_ID          "orderIds"
         from OMSTRUCK_ORDER OO
                  left join TMSTRUCK_TOTAL_RESULT TTR
                            on TTR.ORDER_ID = OO.ORDER_ID
@@ -172,4 +173,8 @@
                            on RC.CAPACITY_ID = OO.CAPACITY_ID
         where  OO.ORDER_NUMBER = #{orderNumber}
     </select>
+
+    <select id="getUnloadResultByTotalId" parameterType="java.math.BigDecimal" resultType="java.lang.Integer">
+        select TUR.RESULT_ID from TMSTRUCK_UNLOAD_RESULT TUR where TUR.RESULT_TOTAL_ID = #{totalId} and rownum = 1
+    </select>
 </mapper>

+ 0 - 161
src/main/test/com/test/Test2.java

@@ -1,161 +0,0 @@
-package com.test;
-
-import com.steerinfo.dil.util.Log4jUtils;
-import org.apache.axis.client.Call;
-import org.apache.axis.client.Service;
-import org.apache.axis.encoding.XMLType;
-import org.dom4j.Document;
-import org.dom4j.DocumentHelper;
-import org.dom4j.Element;
-import org.dom4j.io.OutputFormat;
-import org.dom4j.io.XMLWriter;
-import org.hibernate.mapping.Array;
-import org.junit.Test;
-
-import javax.xml.rpc.ParameterMode;
-import java.io.FileNotFoundException;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.UnsupportedEncodingException;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-import java.util.logging.Logger;
-
-/**
- * @ author    :TXF
- * @ time      :2022/2/10 11:05
- */
-
-public class Test2 {
-    @Test
-    public void test() {
-        try {
-            // 创建一个Document实例
-            Document doc = DocumentHelper.createDocument();
-
-            // 添加根节点
-            Element root = doc.addElement("root");
-
-            // 在根节点下添加第一个子节点
-            Element oneChildElement = root.addElement("person").addAttribute("attr", "root noe");
-            oneChildElement.addElement("people")
-                    .addAttribute("attr", "child one")
-                    .addText("person one child one");
-            oneChildElement.addElement("people")
-                    .addAttribute("attr", "child two")
-                    .addText("person one child two");
-
-            // 在根节点下添加第一个子节点
-            Element twoChildElement = root.addElement("person").addAttribute("attr", "root two");
-            twoChildElement.addElement("people")
-                    .addAttribute("attr", "child one")
-                    .addText("person two child one");
-            twoChildElement.addElement("people")
-                    .addAttribute("attr", "child two")
-                    .addText("person two child two");
-
-            // xml格式化样式
-            // OutputFormat format = OutputFormat.createPrettyPrint(); // 默认样式
-
-            // 自定义xml样式
-            OutputFormat format = new OutputFormat();
-            format.setIndentSize(2);  // 行缩进
-            format.setNewlines(true); // 一个结点为一行
-            format.setTrimText(true); // 去重空格
-            format.setPadText(true);
-            format.setNewLineAfterDeclaration(false); // 放置xml文件中第二行为空白行
-            System.out.println(doc.asXML());
-            // 输出xml文件
-            XMLWriter writer = new XMLWriter(new FileOutputStream("E:\\asd.xml"), format);
-            writer.write(doc);
-            System.out.println("dom4j CreateDom4j success!");
-        } catch (UnsupportedEncodingException e) {
-            e.printStackTrace();
-        } catch (FileNotFoundException e) {
-            e.printStackTrace();
-        } catch (IOException e) {
-            e.printStackTrace();
-        }
-    }
-
-    public static String asXmlDate(List<String> dataList) {
-        // 创建一个Document实例
-        Document doc = DocumentHelper.createDocument();
-        // 添加根节点
-        Element table = doc.addElement("table");
-        //添加第子节点
-        table.addElement("rowCount").addText("1");
-        table.addElement("headCount").addText("9");
-        Element head = table.addElement("head");
-        //添加body下的r1下的子节点
-        Element r1 = table.addElement("body").addElement("r1");
-        //添加head的子节点
-        for (int i = 0; i < dataList.size(); i++) {
-            head.addElement("h" + (i + 1)).addText(dataList.get(i));
-            r1.addElement("r1c" + (i + 1)).addText(dataList.get(i));
-        }
-        return doc.asXML();
-    }
-
-    public static String invokRemoveWSDLByAxis(String reqXML, String endPoint) {
-        String responseXML = "";
-        Service service = new Service();
-        try {
-            Call call = (Call) service.createCall();
-            call.setTargetEndpointAddress(endPoint);
-            call.setOperationName(new javax.xml.namespace.QName("http://webservice.app.facade.jjboom.custom.eas.kingdee.com", "transferEASInterfaceMethod"));
-            call.addParameter("username", XMLType.XSD_STRING, ParameterMode.IN);
-            call.setReturnType(XMLType.XSD_STRING);
-            responseXML = (String) call.invoke(new Object[]{reqXML, "weighSoucNew"});
-        } catch (Exception e) {
-            e.printStackTrace();
-        }
-        return responseXML;
-    }
-
-    @Test
-    public void test4() {
-        ArrayList<String> list = new ArrayList<>();
-        for (int i = 1; i < 10; i++) {
-            list.add(i + "");
-        }
-        String testXml = asXmlDate(list);
-        System.out.println(testXml);
-    }
-
-    @Test
-    public void test5(){
-        // 创建一个Document实例
-        Document doc = DocumentHelper.createDocument();
-        // 添加根节点
-        Element requests = null;
-        try {
-            requests = doc.addElement("requests");
-        } catch (Exception e) {
-            e.printStackTrace();
-        }
-        //添加第子节点
-        Element request = requests.addElement("request");
-        request.addElement("TypeID").addText("PUR");               //采购订单类型
-        request.addElement("FNumber").addText("1");              //磅单号
-        request.addElement("FBizDate").addText("2");             // 净重时间
-        request.addElement("Carnumber").addText("3");            //车牌号
-        request.addElement("FTransportOrgID").addText("4");
-        request.addElement("FGrossScaleID").addText("1");        //毛重汽车衡
-        request.addElement("FTareScaleID").addText("1");         //皮重汽车衡
-        request.addElement("FGrossWeight").addText("1");         //毛重时间
-        request.addElement("FTareWeight").addText("1");          //皮重
-        request.addElement("FGrossPoundTime").addText("1");      //毛重时间
-        request.addElement("FTarePoundTime").addText("1");       //皮重时间
-        request.addElement("FSourceBillID").addText("1");        //采购订单号
-        request.addElement("FSourceBillEntryID").addText("1");   //分录ID
-        request.addElement("FNetWeight").addText("1");           //净重
-        request.addElement("FIncidental").addText("0");         //扣杂
-        request.addElement("FLastNetWeight").addText("1");     //最后净重
-        request.addElement("FDescription").addText("");       //备注
-
-        System.out.println(doc.asXML());
-
-    }
-}

+ 0 - 77
src/main/test/test23.java

@@ -1,77 +0,0 @@
-import com.steerinfo.dil.util.Log4jUtils;
-import org.apache.axis.client.Call;
-import org.apache.axis.client.Service;
-import org.apache.axis.encoding.XMLType;
-import org.dom4j.Document;
-import org.dom4j.DocumentHelper;
-import org.dom4j.Element;
-import org.junit.Test;
-import sun.reflect.CallerSensitive;
-
-import javax.xml.rpc.ParameterMode;
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * @ author    :TXF
- * @ time      :2022/2/10 16:36
- */
-
-public class test23 {
-    public static void main(String[] args) {
-        ArrayList<String> list = new ArrayList<>();
-        for (int i = 1; i < 10; i++) {
-            list.add(i + "");
-        }
-        String testXml = asXmlDate(list);
-        String url = "http://172.16.62.243:56898/ormrpc/services/WSJJBoomFacade";
-        String s = invokRemoveWSDLByAxis(testXml, url);
-        System.out.println(s);
-    }
-
-    public static String asXmlDate(List<String> dataList){
-        // 创建一个Document实例
-        Document doc = DocumentHelper.createDocument();
-        // 添加根节点
-        Element table = doc.addElement("table");
-        //添加第子节点
-        table.addElement("rowCount").addText("1");
-        table.addElement("headCount").addText("9");
-        Element head = table.addElement("head");
-        //添加body下的r1下的子节点
-        Element r1 = table.addElement("body").addElement("r1");
-        //添加head的子节点
-        for (int i = 0; i < dataList.size(); i++) {
-            head.addElement("h" + (i + 1)).addText(dataList.get(i));
-            r1.addElement("r1c" + (i + 1)).addText(dataList.get(i));
-        }
-        return doc.asXML();
-    }
-
-    public static String invokRemoveWSDLByAxis(String reqXML, String endPoint) {
-        String responseXML = "";
-        Service service = new Service();
-        try {
-            Call call = (Call) service.createCall();
-            call.setTargetEndpointAddress(endPoint);
-            call.setOperationName(new javax.xml.namespace.QName("WSJJBoomFacade"));
-            call.addParameter("arg0", XMLType.XSD_STRING, ParameterMode.IN);
-            call.setReturnType(XMLType.XSD_STRING);
-            responseXML = (String) call.invoke(new Object[] { reqXML });
-        } catch (Exception e) {
-            e.printStackTrace();
-        }
-        return responseXML;
-    }
-
-
-    @Test
-    public void test2(){
-        String str = "123123我要成功";
-        if("成功".equals(str.substring(str.length() - 2))){
-            System.out.println("success");
-        }else {
-            System.out.println("failed");
-        }
-    }
-}