Ver código fonte

Merge branch 'master' of https://git.steerinfo.com/DAL-DAZHOU1/DAL-TMS-TRUCK-API

luobang 2 anos atrás
pai
commit
d15006a8db

+ 1 - 1
pom.xml

@@ -156,7 +156,7 @@
                     <!--包名-->
                     <targetPackage>com.steerinfo.dil</targetPackage>
                     <tables>
-                        <param>AMSSHIP_DELIVERY_NOTICE</param>
+                        <param>MEASURE_JSON_DATA</param>
                     </tables>
                 </configuration>
                 <executions>

+ 18 - 0
src/main/java/com/steerinfo/dil/controller/TmstruckLoadResultController.java

@@ -183,6 +183,24 @@ public class TmstruckLoadResultController extends BaseRESTfulController {
     }
 
 
+
+
+
+    @ApiOperation(value="回传装货点数据 ")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "map", value = "", required = false, dataType = "Map"),
+    })
+    @PostMapping("/loadMeasureTest")
+    public RESTfulResult loadMeasureTest(@RequestBody(required=false) Map<String, Object> map){
+        try {
+            int i = tmstruckLoadResultService.LoadMeasure(map);
+            } catch (Exception exception) {
+            exception.printStackTrace();
+        }
+
+        return failed("装货异常,请联系管理员!");
+    }
+
     @ApiOperation(value="修改汽车装车实绩")
     @ApiImplicitParams({
             @ApiImplicitParam(name = "tmstruckLoadResult", value = "装车作业实绩对象", required = false, dataType = "TmstruckLoadResult"),

+ 14 - 0
src/main/java/com/steerinfo/dil/mapper/MeasureJsonDataMapper.java

@@ -0,0 +1,14 @@
+package com.steerinfo.dil.mapper;
+
+import com.steerinfo.dil.model.MeasureJsonData;
+import com.steerinfo.dil.model.TmstruckEnfactoryResult;
+import com.steerinfo.framework.mapper.IBaseMapper;
+import java.math.*;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Select;
+
+@Mapper
+public interface MeasureJsonDataMapper  extends IBaseMapper<MeasureJsonData, BigDecimal>{
+    @Select("select seq_MEASUER_JSON_DATA.nextval from dual")
+    BigDecimal selectMaxId();
+}

+ 8 - 0
src/main/java/com/steerinfo/dil/mapper/TmstruckLeaveFactoryResultMapper.java

@@ -52,6 +52,14 @@ public interface TmstruckLeaveFactoryResultMapper extends IBaseMapper<TmstruckLe
 
     List<Map<String,Object>> getDeliveryOrderMaterial(String orderNumber);
 
+    //根据运输订单号查找过磅重量
+    Map<String,Object> getNetWeightByOrder(Map<String,Object> map);
+
+    //根据运输订单查找物资理重
+    String getTheoryWeight(Map<String,Object> map);
+
+
+
     // 查询零星物资出厂列表
     List<Map<String,Object>> getSporadicLeaveFactory(Map<String, Object> mapValue);
 

+ 4 - 0
src/main/java/com/steerinfo/dil/mapper/TmstruckMeasureCommissionMapper.java

@@ -15,6 +15,10 @@ public interface TmstruckMeasureCommissionMapper extends IBaseMapper<TmstruckMea
     //查询计量委托
     List<Map<String, Object>> getMeasureCommission(Map<String, Object> map);
 
+
+    //获取装货点数据
+    List<Map<String,Object>> getLoadMeasure();
+
     //查询最大主键Id
     @Select("select seq_measure_commission.nextval from dual")
     BigDecimal selectMaxId();

+ 123 - 0
src/main/java/com/steerinfo/dil/model/MeasureJsonData.java

@@ -0,0 +1,123 @@
+package com.steerinfo.dil.model;
+
+import com.steerinfo.framework.model.IBasePO;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.math.BigDecimal;
+
+@ApiModel(value="计量回传报文")
+public class MeasureJsonData implements IBasePO<BigDecimal> {
+    /**
+     * 存储报文主键id(MEASURE_ID,DECIMAL,0)
+     */
+    @ApiModelProperty(value="存储报文主键id",required=true)
+    private BigDecimal measureId;
+
+    /**
+     * 报文所属:1,老厂区 2,新厂区(MEASURE_TYPE_ID,DECIMAL,0)
+     */
+    @ApiModelProperty(value="报文所属:1,老厂区 2,新厂区",required=false)
+    private BigDecimal measureTypeId;
+
+    /**
+     * 存储报文(MEASURE_JSON_DATA,VARCHAR,255)
+     */
+    @ApiModelProperty(value="存储报文",required=false)
+    private String measureJsonData;
+
+    /**
+     * 物流请求url(MEASURE_JSON_URL,VARCHAR,255)
+     */
+    @ApiModelProperty(value="物流请求url",required=false)
+    private String measureJsonUrl;
+
+    /**
+     * 运输订单号(ORDER_NUMBER,VARCHAR,255)
+     */
+    @ApiModelProperty(value="运输订单号",required=false)
+    private String orderNumber;
+
+    /**
+     * 装货地点(WAREHOUSE_NAME,VARCHAR,255)
+     */
+    @ApiModelProperty(value="装货地点",required=false)
+    private String warehouseName;
+
+    private static final long serialVersionUID = 1L;
+
+    @Override
+    public BigDecimal getId() {
+        return this.measureId;
+    }
+
+    @Override
+    public void setId(BigDecimal measureId) {
+        this.measureId = measureId;
+    }
+
+    public BigDecimal getMeasureId() {
+        return measureId;
+    }
+
+    public void setMeasureId(BigDecimal measureId) {
+        this.measureId = measureId;
+    }
+
+    public BigDecimal getMeasureTypeId() {
+        return measureTypeId;
+    }
+
+    public void setMeasureTypeId(BigDecimal measureTypeId) {
+        this.measureTypeId = measureTypeId;
+    }
+
+    public String getMeasureJsonData() {
+        return measureJsonData;
+    }
+
+    public void setMeasureJsonData(String measureJsonData) {
+        this.measureJsonData = measureJsonData == null ? null : measureJsonData.trim();
+    }
+
+    public String getMeasureJsonUrl() {
+        return measureJsonUrl;
+    }
+
+    public void setMeasureJsonUrl(String measureJsonUrl) {
+        this.measureJsonUrl = measureJsonUrl == null ? null : measureJsonUrl.trim();
+    }
+
+    public String getOrderNumber() {
+        return orderNumber;
+    }
+
+    public void setOrderNumber(String orderNumber) {
+        this.orderNumber = orderNumber == null ? null : orderNumber.trim();
+    }
+
+    public String getWarehouseName() {
+        return warehouseName;
+    }
+
+    public void setWarehouseName(String warehouseName) {
+        this.warehouseName = warehouseName == null ? null : warehouseName.trim();
+    }
+
+    @Override
+    public String toString() {
+        StringBuilder sb = new StringBuilder();
+        sb.append(getClass().getSimpleName());
+        sb.append(" [");
+        sb.append("Hash = ").append(hashCode());
+        sb.append(", measureId=").append(measureId);
+        sb.append(", measureTypeId=").append(measureTypeId);
+        sb.append(", measureJsonData=").append(measureJsonData);
+        sb.append(", measureJsonUrl=").append(measureJsonUrl);
+        sb.append(", orderNumber=").append(orderNumber);
+        sb.append(", warehouseName=").append(warehouseName);
+        sb.append(", serialVersionUID=").append(serialVersionUID);
+        sb.append("]");
+        return sb.toString();
+    }
+}

+ 4 - 0
src/main/java/com/steerinfo/dil/service/ITmstruckLoadResultService.java

@@ -35,6 +35,10 @@ public interface ITmstruckLoadResultService{
     //修改销售钢渣、水渣、危化品装车实绩
     int addXS2LoadResult(Map<String, Object> map) throws Exception;
 
+
+    //测试
+    int LoadMeasure(Map<String, Object> map) throws Exception;
+
     //修改装车作业
     int updateLoadResult(TmstruckLoadResult tmstruckLoadResult);
 

+ 1 - 1
src/main/java/com/steerinfo/dil/service/ITmstruckMeasureCommissionService.java

@@ -29,7 +29,7 @@ public interface ITmstruckMeasureCommissionService{
     int addMaoMeasureCommission(Map<String, Object> map);
 
     //在新委托添加装货点
-    int addMeasureCommissionForLoding(Map<String,Object> map);
+    int addMeasureCommissionForLoding(Map<String,Object> map) throws Exception;
 
     //发送计量委托
     int sendMeasureCommssion(Map<String,Object> map);

+ 15 - 12
src/main/java/com/steerinfo/dil/service/impl/TmstruckLoadResultServiceImpl.java

@@ -305,21 +305,24 @@ public class TmstruckLoadResultServiceImpl implements ITmstruckLoadResultService
         //推送消息到websocket
         utilsService.pushMesToWebsocket(capacityNumber, "装货");
         //map.put("orderTypee",orderType);
-        //发送计量委托
-        //if (map.get("warehouseId")==null){
-        //  map.put("warehouseName",null);
-        //}else {
-        //    //根据id查找装货点名称
-        //    String warehouseName = utilsMapper.queryWarehouseName(DataChange.dataToBigDecimal(map.get("warehouseId")));
-        //    map.put("warehouseName",warehouseName);
-        //}
-        //int i = tmstruckMeasureCommissionService.addMeasureCommissionForLoding(map);
-        //if (i!=1){
-        // return  -7;
-        //}
+
+        if (map.get("warehouseId")==null){
+          map.put("warehouseName",null);
+        }else {
+            //根据id查找装货点名称
+            String warehouseName = utilsMapper.queryWarehouseName(DataChange.dataToBigDecimal(map.get("warehouseId")));
+            map.put("warehouseName",warehouseName);
+        }
+        int i = tmstruckMeasureCommissionService.addMeasureCommissionForLoding(map);
         return 1;
     }
 
+    @Override
+    public int LoadMeasure(Map<String, Object> map) throws Exception {
+        return tmstruckMeasureCommissionService.addMeasureCommissionForLoding(map);
+    }
+
+
     //内转添加装货实绩
     private TmstruckLoadResult generateLoad(Map<String, Object> map) {
         TmstruckLoadResult tmstruckLoadResult = new TmstruckLoadResult();

+ 71 - 129
src/main/java/com/steerinfo/dil/service/impl/TmstruckMeasureCommissionServiceImpl.java

@@ -2,15 +2,14 @@ package com.steerinfo.dil.service.impl;
 
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
-import com.steerinfo.dil.mapper.RulesMapper;
-import com.steerinfo.dil.mapper.TmstruckMeasureCommissionMapper;
-import com.steerinfo.dil.mapper.TmstruckTareReturnResultMapper;
-import com.steerinfo.dil.mapper.UtilsMapper;
+import com.steerinfo.dil.mapper.*;
+import com.steerinfo.dil.model.MeasureJsonData;
 import com.steerinfo.dil.model.TmstruckMeasureCommission;
 import com.steerinfo.dil.model.TmstruckTareReturnResult;
 import com.steerinfo.dil.service.ITmstruckMeasureCommissionService;
 import com.steerinfo.dil.util.DataChange;
 import com.steerinfo.dil.util.HTTPRequestUtils;
+import com.steerinfo.dil.util.getRequestUtils;
 import io.swagger.models.auth.In;
 import org.apache.poi.ss.formula.functions.T;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -50,11 +49,16 @@ public class TmstruckMeasureCommissionServiceImpl implements ITmstruckMeasureCom
     @Autowired
     private RulesServiceImpl rulesService;
 
+    @Autowired
+    private MeasureJsonDataMapper measureJsonDataMapper;
+
     @Autowired
     private TmstruckTareReturnResultMapper tmstruckTareReturnResultMapper;
 
     private static final  String daGangUrl = "http://172.16.33.122:44325/api/logistics/TareApplyFor";
 
+    private static final  String dagangUrlForLoad = "http://172.16.33.122:44325/api/logistics/modifyLoadPlace";
+
     private static final String liuPiUrl = "http://172.16.33.122:44325/api/logistics/updateTareWeight";
 
     private static final String daXingUrl = "http://172.16.59.251:8121/daXingWeight/OrderBusiness/addOrder.do";
@@ -92,133 +96,35 @@ public class TmstruckMeasureCommissionServiceImpl implements ITmstruckMeasureCom
 
     //添加装货点发送委托给计量
     @Override
-    public int addMeasureCommissionForLoding(Map<String, Object> map){
-        Map<String, Object> measureCommission = null;
-        //查询计量委托
-        int orderType = DataChange.dataToBigDecimal(map.get("orderTypee")).intValue();
-
-        String warehouseName =(String) map.get("warehouseName");
-        switch (orderType){
-            case 1:
-                break;
-            case 2:
-                measureCommission=tmstruckMeasureCommissionMapper.selectXsMeasuresion(map);
-                if(measureCommission == null){
-                    return 0;
-                }
-                measureCommission.put("isRelationEAS",true);
-                measureCommission.put("flowTo","出厂");
-                measureCommission.put("isDel", false);
-                measureCommission.put("isInsert", true);
-                measureCommission.put("IsAssembly", false);
-                measureCommission.put("deliveryMethod", "磅重交货");
-                measureCommission.put("packagesNum", 0);
-                measureCommission.put("loadPlace",warehouseName);
-                if(map.get("isDG") != null){
-                    measureCommission.put("factory", "dg");
-                }
-                break;
-            case 5:
-            case 6:
-            case 8:
-            case 17:
-                measureCommission =  tmstruckMeasureCommissionMapper.purchaseMeasure(map);
-                if(measureCommission == null){
-                    return 0;
-                }
-                measureCommission.put("isRelationEAS", true);
-                measureCommission.put("flowTo", "进厂");
-                measureCommission.put("isDel", false);
-                measureCommission.put("isInsert", true);
-                measureCommission.put("IsAssembly", false);
-                measureCommission.put("deliveryMethod", "磅重交货");
-                measureCommission.put("packagesNum", 0);
-                measureCommission.put("loadPlace",warehouseName);
-                break;
-            case 11:
-                //纯内转发送计量委托
-                measureCommission = tmstruckMeasureCommissionMapper.purchaseNzMeasure(map);
-                if(measureCommission == null){
-                    return 0;
-                }
-                if(map.get("deletedCommission") != null){
-                    measureCommission.put("isDel", true);
-                    measureCommission.put("isInsert", false);
-                }else {
-                    measureCommission.put("isDel", false);
-                    measureCommission.put("isInsert", true);
-                }
-                measureCommission.put("isRelationEAS", false);
-                measureCommission.put("flowTo", "中转");
-                measureCommission.put("IsAssembly", false);
-                measureCommission.put("deliveryMethod", "磅重交货");
-                measureCommission.put("packagesNum", 0);
-                measureCommission.put("loadPlace",warehouseName);
-                System.out.println(measureCommission);
-                break;
-            case 12:
-            case 13:     //零星进厂、出厂
-            case 14:
-            case 19:
-                measureCommission = tmstruckMeasureCommissionMapper.sproadicMeasure(map);
-                if(measureCommission == null){
-                    return 0;
-                }
-                measureCommission.put("steelyardNum", "null");
-                measureCommission.put("demo", "无");
-                measureCommission.put("isRelationEAS",false);
-                if(orderType == 12){
-                    measureCommission.put("flowTo","进厂");
+    public int addMeasureCommissionForLoding(Map<String, Object> map) throws Exception {
+        int i = 0;
+//        if (map.get("status")!=null) {
+//            List<Map<String, Object>> mapList = tmstruckMeasureCommissionMapper.getLoadMeasure();
+//            for (Map<String, Object> map1 : mapList) {
+                String loadingPace = (String) map.get("warehouseName");
+                String url = "http://172.16.33.122:44325/api/logistics/modifyLoadPlace";
+                String ysdd = (String) map.get("orderNumber");
+                String sendUrl = url + "?ysdd=" + ysdd + "&loadingPace=" + loadingPace;
+                String jsonData = getRequestUtils.doGet(sendUrl);
+                System.out.println(sendUrl);
+                System.out.println("委托已发送" + jsonData);
+                MeasureJsonData measureJsonData = new MeasureJsonData();
+                BigDecimal measureId = measureJsonDataMapper.selectMaxId();
+                //设置主键id
+                measureJsonData.setMeasureId(measureId);
+                //老厂区报文
+                measureJsonData.setMeasureTypeId(new BigDecimal(1));
+                measureJsonData.setMeasureJsonData(jsonData);
+                measureJsonData.setMeasureJsonUrl(sendUrl);
+                measureJsonData.setWarehouseName(loadingPace);
+                measureJsonData.setOrderNumber(ysdd);
+                i = measureJsonDataMapper.insertSelective(measureJsonData);
+//            }
+//        }
+        return i;
+    }
 
-                }else if(orderType == 13){
-                    measureCommission.put("flowTo","出厂");
 
-                }else if(orderType == 14){
-                    //查询还有几次未计量实绩
-                    BigDecimal resultTotalId = DataChange.dataToBigDecimal(map.get("resultTotalId"));
-                    Integer count = tmstruckMeasureCommissionMapper.selectNoNetWeightResult(resultTotalId);
-                    if(count > 1){ //第一次进厂
-                        measureCommission.put("materiaName", measureCommission.get("materiaName") + "(出)");
-                    }else { //第二次进厂
-                        measureCommission.put("materiaName", measureCommission.get("materiaName") + "(入)");
-                    }
-                    measureCommission.put("flowTo","中转");
-                }else{
-                    measureCommission.put("flowTo","退货");
-                }
-                measureCommission.put("isDel", false);
-                measureCommission.put("isInsert", true);
-                measureCommission.put("deliveryMethod", "磅重交货");
-                measureCommission.put("packagesNum", 0);
-                measureCommission.put("loadPlace",warehouseName);
-                break;
-            case 20://采购内转委托总厂区
-            case 15:
-            case 16:
-            case 23:
-                measureCommission=tmstruckMeasureCommissionMapper.purchaseXqCgNzMeasure(map);
-                if(measureCommission == null){
-                    return 0;
-                }
-                if(orderType == 16){
-                    measureCommission.put("factory","dg");
-                }
-                measureCommission.put("isRelationEAS",false);
-                measureCommission.put("flowTo","进厂");
-                measureCommission.put("isDel",false);
-                measureCommission.put("isInsert",true);
-                measureCommission.put("deliveryMethod", "磅重交货");
-                measureCommission.put("packagesNum", 0);
-                measureCommission.put("loadPlace",warehouseName);
-        }
-        if(measureCommission != null){
-            map.put("materialId", measureCommission.get("materialId"));
-        }
-        addMeasureCommission(map); // 添加计量委托
-        /*访问接口发送数据*/
-        System.out.println(measureCommission);
-        return sendMesToMeasure(measureCommission);
-    }
 
     /**
      * 查询计量委托 0 :计皮     1:计毛
@@ -670,6 +576,42 @@ public class TmstruckMeasureCommissionServiceImpl implements ITmstruckMeasureCom
     }
 
 
+
+
+//    /**
+//     *
+//     * 访问老厂区计量接口方法
+//     * @param ysdd
+//     * @param  loadingPace
+//     * @return
+//     */
+//    public int sendUpdateLoadPlaceMeasure(String ysdd,String loadingPace){
+////        List<Map<String, Object>> sendMap = new ArrayList<>();
+////        sendMap.add(map);
+////        JSONObject jsonObject = new JSONObject();
+////        jsonObject.put("data", sendMap);
+//        String jsonData = null;
+//        try {
+////            jsonData = HTTPRequestUtils.send(dagangUrlForLoad, jsonObject, "utf-8");
+//
+//        } catch (IOException e) {
+//            e.printStackTrace();
+//        }
+//        if(!"null".equals(jsonData)){
+//            System.out.println(jsonData);
+//            HashMap hashMap = JSON.parseObject(jsonData, HashMap.class);
+//            boolean success = (boolean) hashMap.get("success");
+//            System.out.println(hashMap.get("msg"));
+//            if(success){
+//                return 1;
+//            }
+//        }else{
+//            System.out.println("委托发送失败:" + jsonData);
+//        }
+//        return 0;
+//    }
+
+
     /**
      * 访问新厂区达兴能源计量接口方法
      * @param map

+ 20 - 0
src/main/java/com/steerinfo/dil/service/impl/TmstruckSelfMachineService.java

@@ -43,8 +43,28 @@ public class TmstruckSelfMachineService implements ITmstruckSelfMachineService {
     public Map<String, Object> getDeliveryOrder(String orderNumber) {
         //1.根据运输订单号查询主干信息
         Map<String,Object> map = tmstruckLeaveFactoryResultMapper.getDeliveryOrder(orderNumber);
+        map.put("orderNumber",orderNumber);
         if(map !=null){
             List<Map<String, Object>> deliveryOrderMaterialList = tmstruckLeaveFactoryResultMapper.getDeliveryOrderMaterial(orderNumber);
+            //判断为棒材还是线材
+            for (Map<String,Object> map1:deliveryOrderMaterialList){
+                map1.remove("materialWeight");
+                String materialName =(String) map1.get("materialName");
+                map.put("materialName",materialName);
+                //判断是否为盘螺
+                if (materialName.contains("盘螺")){
+                    //根据运输订单号查找实绩重量
+                    Map<String, Object> netWeight = tmstruckLeaveFactoryResultMapper.getNetWeightByOrder(map);
+                    String nowNetWeight =(String) netWeight.get("nowNetWeight");
+                    if (nowNetWeight!=null) {
+                        map.put("materialWeight", nowNetWeight);
+                    }
+                }else {
+                    //获取物资理重
+                    String theoryWeight = tmstruckLeaveFactoryResultMapper.getTheoryWeight(map);
+                    map.put("materialWeight",theoryWeight);
+                }
+            }
             map.put("deliveryOrderMaterialList",deliveryOrderMaterialList);
         }
         return map;

+ 164 - 0
src/main/java/com/steerinfo/dil/util/getRequestUtils.java

@@ -0,0 +1,164 @@
+package com.steerinfo.dil.util;
+import com.alibaba.fastjson.JSON;
+import java.io.*;
+import java.net.HttpURLConnection;
+import java.net.URL;
+
+/**
+ * @author zx
+ * @Description:
+ * @CreateTime 2022/6/23 18:35
+ * @Version:1.0
+ */
+public class getRequestUtils {
+    /**
+     * 以post方式调用对方接口方法
+     * @param pathUrl
+     */
+    public static void doPost(String pathUrl, String data){
+        OutputStreamWriter out = null;
+        BufferedReader br = null;
+        String result = "";
+        try {
+            URL url = new URL(pathUrl);
+
+            //打开和url之间的连接
+            HttpURLConnection conn = (HttpURLConnection) url.openConnection();
+
+            //设定请求的方法为"POST",默认是GET
+            //post与get的不同之处在于post的参数不是放在URL字串里面,而是放在http请求的正文内。
+            conn.setRequestMethod("POST");
+
+            //设置30秒连接超时
+            conn.setConnectTimeout(30000);
+            //设置30秒读取超时
+            conn.setReadTimeout(30000);
+
+            // 设置是否向httpUrlConnection输出,因为这个是post请求,参数要放在http正文内,因此需要设为true, 默认情况下是false;
+            conn.setDoOutput(true);
+            // 设置是否从httpUrlConnection读入,默认情况下是true;
+            conn.setDoInput(true);
+
+            // Post请求不能使用缓存
+            conn.setUseCaches(false);
+
+            //设置通用的请求属性
+            conn.setRequestProperty("accept", "*/*");
+            conn.setRequestProperty("connection", "Keep-Alive");  //维持长链接
+            conn.setRequestProperty("Content-Type", "application/json;charset=utf-8");
+
+            //连接,从上述url.openConnection()至此的配置必须要在connect之前完成,
+            conn.connect();
+
+            /**
+             * 下面的三句代码,就是调用第三方http接口
+             */
+            //获取URLConnection对象对应的输出流
+            //此处getOutputStream会隐含的进行connect(即:如同调用上面的connect()方法,所以在开发中不调用上述的connect()也可以)。
+            out = new OutputStreamWriter(conn.getOutputStream(), "UTF-8");
+            //发送请求参数即数据
+            out.write(data);
+            //flush输出流的缓冲
+            out.flush();
+
+            /**
+             * 下面的代码相当于,获取调用第三方http接口后返回的结果
+             */
+            //获取URLConnection对象对应的输入流
+            InputStream is = conn.getInputStream();
+            //构造一个字符流缓存
+            br = new BufferedReader(new InputStreamReader(is));
+            String str = "";
+            while ((str = br.readLine()) != null){
+                result += str;
+            }
+            System.out.println(result);
+            //关闭流
+            is.close();
+            //断开连接,disconnect是在底层tcp socket链接空闲时才切断,如果正在被其他线程使用就不切断。
+            conn.disconnect();
+
+        } catch (Exception e) {
+            e.printStackTrace();
+        }finally {
+            try {
+                if (out != null){
+                    out.close();
+                }
+                if (br != null){
+                    br.close();
+                }
+            } catch (IOException e) {
+                e.printStackTrace();
+            }
+        }
+    }
+
+    /**
+     * 以get方式调用对方接口方法
+     * @param pathUrl
+     */
+    public static String doGet(String pathUrl){
+        BufferedReader br = null;
+        String result = "";
+        try {
+            URL url = new URL(pathUrl);
+
+            //打开和url之间的连接
+            HttpURLConnection conn = (HttpURLConnection) url.openConnection();
+
+            //设定请求的方法为"GET",默认是GET
+            //post与get的不同之处在于post的参数不是放在URL字串里面,而是放在http请求的正文内。
+            conn.setRequestMethod("GET");
+
+            //设置30秒连接超时
+            conn.setConnectTimeout(30000);
+            //设置30秒读取超时
+            conn.setReadTimeout(30000);
+
+            // 设置是否向httpUrlConnection输出,因为这个是post请求,参数要放在http正文内,因此需要设为true, 默认情况下是false;
+            conn.setDoOutput(true);
+            // 设置是否从httpUrlConnection读入,默认情况下是true;
+            conn.setDoInput(true);
+
+            // Post请求不能使用缓存(get可以不使用)
+            conn.setUseCaches(false);
+
+            //设置通用的请求属性
+            conn.setRequestProperty("accept", "*/*");
+            conn.setRequestProperty("connection", "Keep-Alive");  //维持长链接
+            conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded;charset=utf-8");
+
+            //连接,从上述url.openConnection()至此的配置必须要在connect之前完成,
+            conn.connect();
+
+            /**
+             * 下面的代码相当于,获取调用第三方http接口后返回的结果
+             */
+            //获取URLConnection对象对应的输入流
+            InputStream is = conn.getInputStream();
+            //构造一个字符流缓存
+            br = new BufferedReader(new InputStreamReader(is, "UTF-8"));
+            String str = "";
+            while ((str = br.readLine()) != null){
+                result += str;
+            }
+            System.out.println(result);
+            //关闭流
+            is.close();
+            //断开连接,disconnect是在底层tcp socket链接空闲时才切断,如果正在被其他线程使用就不切断。
+            conn.disconnect();
+        } catch (Exception e) {
+            e.printStackTrace();
+        }finally {
+            try {
+                if (br != null){
+                    br.close();
+                }
+            } catch (IOException e) {
+                e.printStackTrace();
+            }
+        }
+        return result;
+    }
+}

+ 241 - 0
src/main/resources/com/steerinfo/dil/mapper/MeasureJsonDataMapper.xml

@@ -0,0 +1,241 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.steerinfo.dil.mapper.MeasureJsonDataMapper">
+  <resultMap id="BaseResultMap" type="com.steerinfo.dil.model.MeasureJsonData">
+    <id column="MEASURE_ID" jdbcType="DECIMAL" property="measureId" />
+    <result column="MEASURE_TYPE_ID" jdbcType="DECIMAL" property="measureTypeId" />
+    <result column="MEASURE_JSON_DATA" jdbcType="VARCHAR" property="measureJsonData" />
+    <result column="MEASURE_JSON_URL" jdbcType="VARCHAR" property="measureJsonUrl" />
+    <result column="ORDER_NUMBER" jdbcType="VARCHAR" property="orderNumber" />
+    <result column="WAREHOUSE_NAME" jdbcType="VARCHAR" property="warehouseName" />
+  </resultMap>
+  <sql id="columns">
+    MEASURE_ID, MEASURE_TYPE_ID, MEASURE_JSON_DATA, MEASURE_JSON_URL, ORDER_NUMBER, WAREHOUSE_NAME
+  </sql>
+  <sql id="columns_alias">
+    t.MEASURE_ID, t.MEASURE_TYPE_ID, t.MEASURE_JSON_DATA, t.MEASURE_JSON_URL, t.ORDER_NUMBER,
+    t.WAREHOUSE_NAME
+  </sql>
+  <sql id="select">
+    SELECT <include refid="columns"/> FROM MEASURE_JSON_DATA
+  </sql>
+  <sql id="select_alias">
+    SELECT <include refid="columns_alias"/> FROM MEASURE_JSON_DATA t
+  </sql>
+  <sql id="where">
+    <where>
+      <if test="measureId != null">
+        and MEASURE_ID = #{measureId}
+      </if>
+      <if test="measureTypeId != null">
+        and MEASURE_TYPE_ID = #{measureTypeId}
+      </if>
+      <if test="measureJsonData != null and measureJsonData != ''">
+        and MEASURE_JSON_DATA = #{measureJsonData}
+      </if>
+      <if test="measureJsonUrl != null and measureJsonUrl != ''">
+        and MEASURE_JSON_URL = #{measureJsonUrl}
+      </if>
+      <if test="orderNumber != null and orderNumber != ''">
+        and ORDER_NUMBER = #{orderNumber}
+      </if>
+      <if test="warehouseName != null and warehouseName != ''">
+        and WAREHOUSE_NAME = #{warehouseName}
+      </if>
+    </where>
+  </sql>
+  <sql id="whereLike">
+    <where>
+      <if test="measureId != null">
+        and MEASURE_ID = #{measureId}
+      </if>
+      <if test="measureTypeId != null">
+        and MEASURE_TYPE_ID = #{measureTypeId}
+      </if>
+      <if test="measureJsonData != null and measureJsonData != ''">
+        and MEASURE_JSON_DATA LIKE '%${measureJsonData}%'
+      </if>
+      <if test="measureJsonUrl != null and measureJsonUrl != ''">
+        and MEASURE_JSON_URL LIKE '%${measureJsonUrl}%'
+      </if>
+      <if test="orderNumber != null and orderNumber != ''">
+        and ORDER_NUMBER LIKE '%${orderNumber}%'
+      </if>
+      <if test="warehouseName != null and warehouseName != ''">
+        and WAREHOUSE_NAME LIKE '%${warehouseName}%'
+      </if>
+    </where>
+  </sql>
+  <delete id="deleteByPrimaryKey" parameterType="java.lang.Short">
+    delete from MEASURE_JSON_DATA
+    where MEASURE_ID = #{measureId,jdbcType=DECIMAL}
+  </delete>
+  <delete id="deleteBySelectiveElement" parameterType="java.util.HashMap">
+    delete from MEASURE_JSON_DATA
+    where 1!=1
+    <if test="measureTypeId != null">
+      or MEASURE_TYPE_ID = #{measureTypeId}
+    </if>
+    <if test="measureJsonData != null and measureJsonData != ''">
+      or MEASURE_JSON_DATA = #{measureJsonData}
+    </if>
+    <if test="measureJsonUrl != null and measureJsonUrl != ''">
+      or MEASURE_JSON_URL = #{measureJsonUrl}
+    </if>
+    <if test="orderNumber != null and orderNumber != ''">
+      or ORDER_NUMBER = #{orderNumber}
+    </if>
+    <if test="warehouseName != null and warehouseName != ''">
+      or WAREHOUSE_NAME = #{warehouseName}
+    </if>
+  </delete>
+  <insert id="insert" parameterType="com.steerinfo.dil.model.MeasureJsonData">
+    insert into MEASURE_JSON_DATA (MEASURE_ID, MEASURE_TYPE_ID, MEASURE_JSON_DATA,
+                                   MEASURE_JSON_URL, ORDER_NUMBER, WAREHOUSE_NAME
+    )
+    values (#{measureId,jdbcType=DECIMAL}, #{measureTypeId,jdbcType=DECIMAL}, #{measureJsonData,jdbcType=VARCHAR},
+            #{measureJsonUrl,jdbcType=VARCHAR}, #{orderNumber,jdbcType=VARCHAR}, #{warehouseName,jdbcType=VARCHAR}
+           )
+  </insert>
+  <insert id="insertSelective" parameterType="com.steerinfo.dil.model.MeasureJsonData">
+    insert into MEASURE_JSON_DATA
+    <trim prefix="(" suffix=")" suffixOverrides=",">
+      <if test="measureId != null">
+        MEASURE_ID,
+      </if>
+      <if test="measureTypeId != null">
+        MEASURE_TYPE_ID,
+      </if>
+      <if test="measureJsonData != null">
+        MEASURE_JSON_DATA,
+      </if>
+      <if test="measureJsonUrl != null">
+        MEASURE_JSON_URL,
+      </if>
+      <if test="orderNumber != null">
+        ORDER_NUMBER,
+      </if>
+      <if test="warehouseName != null">
+        WAREHOUSE_NAME,
+      </if>
+    </trim>
+    <trim prefix="values (" suffix=")" suffixOverrides=",">
+      <if test="measureId != null">
+        #{measureId,jdbcType=DECIMAL},
+      </if>
+      <if test="measureTypeId != null">
+        #{measureTypeId,jdbcType=DECIMAL},
+      </if>
+      <if test="measureJsonData != null">
+        #{measureJsonData,jdbcType=VARCHAR},
+      </if>
+      <if test="measureJsonUrl != null">
+        #{measureJsonUrl,jdbcType=VARCHAR},
+      </if>
+      <if test="orderNumber != null">
+        #{orderNumber,jdbcType=VARCHAR},
+      </if>
+      <if test="warehouseName != null">
+        #{warehouseName,jdbcType=VARCHAR},
+      </if>
+    </trim>
+  </insert>
+  <update id="updateByPrimaryKey" parameterType="com.steerinfo.dil.model.MeasureJsonData">
+    update MEASURE_JSON_DATA
+    set MEASURE_TYPE_ID = #{measureTypeId,jdbcType=DECIMAL},
+        MEASURE_JSON_DATA = #{measureJsonData,jdbcType=VARCHAR},
+        MEASURE_JSON_URL = #{measureJsonUrl,jdbcType=VARCHAR},
+        ORDER_NUMBER = #{orderNumber,jdbcType=VARCHAR},
+        WAREHOUSE_NAME = #{warehouseName,jdbcType=VARCHAR}
+    where MEASURE_ID = #{measureId,jdbcType=DECIMAL}
+  </update>
+  <update id="updateByPrimaryKeySelective" parameterType="com.steerinfo.dil.model.MeasureJsonData">
+    update MEASURE_JSON_DATA
+    <set>
+      <if test="measureTypeId != null">
+        MEASURE_TYPE_ID = #{measureTypeId,jdbcType=DECIMAL},
+      </if>
+      <if test="measureJsonData != null">
+        MEASURE_JSON_DATA = #{measureJsonData,jdbcType=VARCHAR},
+      </if>
+      <if test="measureJsonUrl != null">
+        MEASURE_JSON_URL = #{measureJsonUrl,jdbcType=VARCHAR},
+      </if>
+      <if test="orderNumber != null">
+        ORDER_NUMBER = #{orderNumber,jdbcType=VARCHAR},
+      </if>
+      <if test="warehouseName != null">
+        WAREHOUSE_NAME = #{warehouseName,jdbcType=VARCHAR},
+      </if>
+    </set>
+    where MEASURE_ID = #{measureId,jdbcType=DECIMAL}
+  </update>
+  <select id="selectByPrimaryKey" parameterType="java.lang.Short" resultMap="BaseResultMap">
+    <include refid="select"/>
+    where MEASURE_ID = #{measureId,jdbcType=DECIMAL}
+  </select>
+  <select id="selectByParameters" parameterType="java.util.HashMap" resultMap="BaseResultMap">
+    <include refid="select"/>
+    <include refid="where"/>
+  </select>
+  <select id="selectLikeByParameters" parameterType="java.util.HashMap" resultMap="BaseResultMap">
+    <include refid="select"/>
+    <include refid="whereLike"/>
+  </select>
+  <insert id="batchInsert" parameterType="java.util.List">
+    insert into MEASURE_JSON_DATA
+    (MEASURE_ID,
+    MEASURE_TYPE_ID, MEASURE_JSON_DATA,
+    MEASURE_JSON_URL, ORDER_NUMBER,
+    WAREHOUSE_NAME)
+    ( <foreach collection="list" item="item" separator="union all">
+    select
+    #{item.measureId,jdbcType=DECIMAL},
+    #{item.measureTypeId,jdbcType=DECIMAL}, #{item.measureJsonData,jdbcType=VARCHAR},
+    #{item.measureJsonUrl,jdbcType=VARCHAR}, #{item.orderNumber,jdbcType=VARCHAR},
+    #{item.warehouseName,jdbcType=VARCHAR} from dual
+  </foreach> )
+  </insert>
+  <update id="batchUpdate" parameterType="java.util.List">
+    update MEASURE_JSON_DATA
+    set
+    MEASURE_ID=
+    <foreach collection="list" item="item" index="index" separator=" " open="case MEASURE_ID" close="end">
+      when #{item.measureId,jdbcType=DECIMAL} then #{item.measureId,jdbcType=DECIMAL}
+    </foreach>
+    ,MEASURE_TYPE_ID=
+    <foreach collection="list" item="item" index="index" separator=" " open="case MEASURE_ID" close="end">
+      when #{item.measureId,jdbcType=DECIMAL} then #{item.measureTypeId,jdbcType=DECIMAL}
+    </foreach>
+    ,MEASURE_JSON_DATA=
+    <foreach collection="list" item="item" index="index" separator=" " open="case MEASURE_ID" close="end">
+      when #{item.measureId,jdbcType=DECIMAL} then #{item.measureJsonData,jdbcType=VARCHAR}
+    </foreach>
+    ,MEASURE_JSON_URL=
+    <foreach collection="list" item="item" index="index" separator=" " open="case MEASURE_ID" close="end">
+      when #{item.measureId,jdbcType=DECIMAL} then #{item.measureJsonUrl,jdbcType=VARCHAR}
+    </foreach>
+    ,ORDER_NUMBER=
+    <foreach collection="list" item="item" index="index" separator=" " open="case MEASURE_ID" close="end">
+      when #{item.measureId,jdbcType=DECIMAL} then #{item.orderNumber,jdbcType=VARCHAR}
+    </foreach>
+    ,WAREHOUSE_NAME=
+    <foreach collection="list" item="item" index="index" separator=" " open="case MEASURE_ID" close="end">
+      when #{item.measureId,jdbcType=DECIMAL} then #{item.warehouseName,jdbcType=VARCHAR}
+    </foreach>
+    where MEASURE_ID in
+    <foreach collection="list" index="index" item="item" separator="," open="(" close=")">
+      #{item.measureId,jdbcType=DECIMAL}
+    </foreach>
+  </update>
+  <delete id="batchDelete" parameterType="java.util.List">
+    delete from MEASURE_JSON_DATA
+    where MEASURE_ID in
+    <foreach collection="list" item="id" open="(" close=")" separator=",">
+      #{id}
+    </foreach>
+  </delete>
+  <!-- 友情提示!!!-->
+  <!-- 请将自己写的代码放在此标签之下,方便以后粘贴复制。-->
+
+</mapper>

+ 31 - 0
src/main/resources/com/steerinfo/dil/mapper/TmstruckLeaveFactoryResultMapper.xml

@@ -1301,4 +1301,35 @@
         SELECT OO.ORDER_STATUS  FROM OMSTRUCK_ORDER OO
         WHERE OO.ORDER_ID   = #{orderId}
     </select>
+
+   <!-- 获取物资实重-->
+    <select id="getNetWeightByOrder" resultType="java.util.Map" parameterType="java.util.Map">
+        SELECT TWR.RESULT_NET_WEIGHT AS "nowNetWeight"
+        FROM OMSTRUCK_ORDER OO
+        left join OMSTRUCK_ORDER_MATERIAL OOM
+        ON OOM.ORDER_ID=OO.ORDER_ID
+        LEFT JOIN RMS_MATERIAL RM
+         ON RM.MATERIAL_ID=OOM.MATERIAL_ID
+        LEFT JOIN TMSTRUCK_TOTAL_RESULT TTR
+        ON OO.ORDER_ID = TTR.ORDER_ID
+        LEFT JOIN TMSTRUCK_WEIGHT_RESULT TWR
+        ON TWR.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
+        WHERE OO.ORDER_NUMBER = #{orderNumber} and RM.MATERIAL_NAME=#{materialName}
+    </select>
+<!--    获取物资理重-->
+    <select id="getTheoryWeight" resultType="java.lang.String" parameterType="java.util.Map">
+        select ASTM.MATERIAL_THEORETICAL_WEIGHT "theoreticalWeight"
+       from OMSTRUCK_ORDER oo
+       left join AMS_SALE_ORDER_MATERIAL ASOM
+       ON ASOM.SALE_ORDER_MATERIAL_ID = OO.ORDER_PLAN_ID
+       LEFT JOIN AMS_SALE_TRUCKNO_MATERIAL ASTM
+       ON ASTM.SALE_ORDER_MATERIAL_ID=ASOM.SALE_ORDER_MATERIAL_ID
+       LEFT JOIN AMS_SALE_MATERIAL ASM
+       ON ASM.SALE_MATERIAL_ID=ASTM.MATERIAL_ID
+       LEFT JOIN AMS_SALE_ORDER ASO
+       ON ASO.SALE_ORDER_ID=ASM.SALE_ORDER_ID
+        left join RMS_MATERIAL RM
+        ON RM.MATERIAL_ID=ASM.MATERIAL_ID
+       where  oo.ORDER_NUMBER=#{orderNumber}  and RM.MATERIAL_NAME=#{materialName}
+    </select>
 </mapper>

+ 13 - 0
src/main/resources/com/steerinfo/dil/mapper/TmstruckMeasureCommissionMapper.xml

@@ -1369,5 +1369,18 @@
         WHERE TWR.RESULT_NET_WEIGHT IS not NULL
         AND OO.ORDER_ID = #{orderId}
     </select>
+    <select id="getLoadMeasure" resultType="java.util.Map">
+        select OO.ORDER_NUMBER "orderNumber",
+               RW.WAREHOUSE_NAME "warehouseName"
+        from OMSTRUCK_ORDER OO
+                 LEFT JOIN TMSTRUCK_TOTAL_RESULT TTR
+                           ON TTR.ORDER_ID=OO.ORDER_ID
+                 LEFT JOIN TMSTRUCK_LOAD_RESULT TLR
+                           ON TTR.RESULT_TOTAL_ID = TLR.RESULT_TOTAL_ID
+                 LEFT JOIN RMS_WAREHOUSE RW
+                           ON RW.WAREHOUSE_ID = TLR.LOADING_ID
+        WHERE RW.WAREHOUSE_NAME IS NOT NULL AND RW.WAREHOUSE_NAME NOT IN ('化工厂','二炼焦酸碱库房','铁专线—五线','二炼焦','二焦化_油库','化工园区铁专线')
+        order by OO.ORDER_NUMBER DESC
+    </select>
 
 </mapper>