Sfoglia il codice sorgente

Merge branch 'master' of https://gitee.com/antai-wuliu/ANTAI-API

Redeem 2 anni fa
parent
commit
7672364c6b

+ 4 - 0
src/main/java/com/steerinfo/dil/config/WebExceptionHandler.java

@@ -6,6 +6,8 @@ import org.springframework.web.bind.annotation.ControllerAdvice;
 import org.springframework.web.bind.annotation.ExceptionHandler;
 import org.springframework.web.bind.annotation.ResponseBody;
 
+import java.text.ParseException;
+
 @ControllerAdvice
 public class WebExceptionHandler {
 
@@ -18,6 +20,8 @@ public class WebExceptionHandler {
         e.printStackTrace();
         if(e instanceof NullPointerException){
             return new RESTfulResult("500", "操作失败:缺乏必要参数!", e);
+        }else if(e instanceof ParseException){
+            return new RESTfulResult("500", "操作失败:格式转换异常!", e);
         }
         return new RESTfulResult("500", "操作失败:"+e.getMessage(), e);
     }

+ 32 - 0
src/main/java/com/steerinfo/dil/controller/AMScontroller.java

@@ -247,6 +247,17 @@ public class AMScontroller {
         return amsFeign.purchasePlanChange(map);
     }
 
+
+    @ApiOperation(value = "采购火运计划删除接口", notes = "采购火运计划删除接口")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "map", value = "json格式具体参数", required = true, dataType = "Map<String,Object>")
+    })
+    @PostMapping(value = "/purchaseTrainPlanDelete")
+    @LogAround(foreignKeys = {"transPlanId"},foreignKeyTypes = {"采购计划"})
+    public Map<String, Object> purchaseTrainPlanDelete(@RequestBody(required = false) Map<String ,Object> map) {
+        return amsFeign.purchaseTrainPlanDelete(map);
+    }
+
     @ApiOperation(value="同步销售订单")    @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
     @PostMapping(value = "/saleOrderSync")
     @LogAround(foreignKeys = {"orderId"}, foreignKeyTypes = {"销售订单"})
@@ -540,4 +551,25 @@ public class AMScontroller {
     ) {
         return amsFeign.getSalePlanList(mapValue == null ? new HashMap<>() : mapValue, apiId, pageNum, pageSize);
     }
+
+    @ApiOperation(value = "发运单绑定接口", notes = "发运单绑定接口")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "map", value = "json格式具体参数", required = true, dataType = "Map<String,Object>")
+    })
+    @PostMapping(value = "/bindSale")
+    public RESTfulResult bindSale(@RequestBody(required = false) Map<String, Object> map) {
+        return amsFeign.bindSale(map);
+    }
+
+    @ApiOperation(value = "获取物资数据", notes = "获取物资数据")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "id", value = "物料编码", required = true, dataType = "String")
+    })
+    @PostMapping(value = "/getMaterial")
+    public RESTfulResult bindSale(@RequestParam String prodCode,
+                                  Integer apiId,
+                                  Integer pageNum,
+                                  Integer pageSize) {
+        return amsFeign.getMaterial(prodCode, apiId, pageNum, pageSize);
+    }
 }

+ 180 - 14
src/main/java/com/steerinfo/dil/controller/TMSController.java

@@ -20,6 +20,7 @@ import org.springframework.web.multipart.MultipartFile;
 import java.io.File;
 import java.io.FileInputStream;
 import java.math.BigDecimal;
+import java.text.DateFormat;
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
 import java.util.*;
@@ -380,7 +381,7 @@ public class TMSController extends BaseRESTfulController {
     @PostMapping(value = "/purchaseTrainLoad")
 //    @LogAround(foreignKeys = {"resultId"},foreignKeyTypes = {"装货实绩"})
     public Map<String, Object> purchaseTrainLoad(@RequestBody MultipartFile file,
-                                                 String materialType,
+                                                 String businessType,
                                                  String userId,
                                                  String userName) throws Exception {
         File excel = ExcelToolUtils.multipartFileToFile(file);
@@ -395,18 +396,19 @@ public class TMSController extends BaseRESTfulController {
         Map<String, Object> map = new HashMap<>();
         //获取Excel中包含的对象数组
         List<Map<String, Object>> list = ExcelToolUtils.getExcelList(is, fileName, 0);
-        List<String> capacityIds = new ArrayList<>();
-        for (Map<String, Object> item : list) {
-            capacityIds.add(item.get("车号").toString());
-        }
         map.put("list", list);
-        //校验当前excel是否已经导过
-        if (universalMapper.checkTrainOrder(map) > 0) {
-            throw new Exception("存在24小时内的重复运单!不允许重复导入!");
-        }
         //统计通知单的重量车数和车牌号
         Set<String> capacitySet = new HashSet<>();//车牌号
         for (Map<String, Object> item : list) {
+            //校验行
+            if(item.get("通知单号")==null || item.get("通知单号").equals("")
+                || item.get("车号")==null || item.get("车号").equals("")
+                    || item.get("装车日期")==null || item.get("装车日期").equals("")
+                    || item.get("净重")==null || item.get("净重").equals("")
+                    || item.get("皮重")==null || item.get("皮重").equals("")
+                    || item.get("毛重")==null || item.get("毛重").equals("")){
+                throw new Exception("单元格数据异常(通知单号/车号/装车日期/净重/皮重/毛重),请检查模板或数据是否正确!");
+            }
             //通知单统计
             String requirementNumber = item.get("通知单号").toString();
             if (map.get("requirementNumber") != null) {
@@ -414,24 +416,34 @@ public class TMSController extends BaseRESTfulController {
                     //已存在,修改
                     BigDecimal weight = DataChange.dataToBigDecimal(map.get("weight"));
                     BigDecimal truckNumber = DataChange.dataToBigDecimal(map.get("truckNumber"));
+                    String loadTime = map.get("loadTime").toString();
                     weight = weight.add(DataChange.dataToBigDecimal(item.get("净重")));
                     truckNumber = truckNumber.add(new BigDecimal(1));
                     map.put("weight", weight);
                     map.put("truckNumber", truckNumber);
+                    if(!loadTime.equals(item.get("装车日期").toString())){
+                        throw new Exception("同一个Excel只允许一批车辆,请检查装车日期!");
+                    }
                 } else {
-                    throw new Exception("同一个Excel文件中只允许有一个采购订单号!");
+                    throw new Exception("同一个Excel文件中只允许有一个通知单号!");
                 }
             } else {
                 //不存在,新增
                 BigDecimal weight = DataChange.dataToBigDecimal(item.get("净重"));
                 BigDecimal truckNumber = new BigDecimal(1);
+                String loadTime = item.get("装车日期").toString();
                 map.put("requirementNumber", requirementNumber);
                 map.put("weight", weight);
                 map.put("truckNumber", truckNumber);
+                map.put("loadTime",loadTime);
             }
             //车牌号去重
             capacitySet.add(item.get("车号").toString());
         }
+        //校验当前excel是否已经导入过
+        if (universalMapper.countTrainLoad(map) > 0) {
+            throw new Exception("存在重复的装车信息!不允许重复导入!");
+        }
         //新增火车运力资源
         String[] capacities = capacitySet.toArray(new String[0]);//车牌号
         if (capacities.length != list.size()) {
@@ -449,10 +461,10 @@ public class TMSController extends BaseRESTfulController {
             }.run();
         }
         //新增AMS及TMS
-        map.put("userId", userId);
-        map.put("userName", userName);
-        map.put("materialType", materialType);
-        return tmsFeign.purchaseTrainLoad(map, userId, userName);
+        map.put("userId",userId);
+        map.put("userName",userName);
+        map.put("businessType",businessType);
+        return tmsFeign.purchaseTrainLoad(map);
     }
 
     @ApiOperation(value = "查询采购火运装货")
@@ -464,6 +476,160 @@ public class TMSController extends BaseRESTfulController {
         return tmsFeign.purchaseTrainLoadList(map == null ? new HashMap<>() : map, apiId, pageNum, pageSize);
     }
 
+
+    @ApiOperation(value = "采购火运装货作业")
+    @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
+    @PostMapping(value = "/purchaseTrainWeight")
+//    @LogAround(foreignKeys = {"resultId"},foreignKeyTypes = {"计量实绩"})
+    public Map<String, Object> purchaseTrainWeight(@RequestBody MultipartFile file,
+                                                 String businessType,
+                                                 String userId,
+                                                 String userName) throws Exception {
+        File excel = ExcelToolUtils.multipartFileToFile(file);
+        FileInputStream is = null;
+        String fileName = excel.getName();
+        // 解决fileName兼容性问题
+        int lastindex = fileName.lastIndexOf("\\");
+        fileName = fileName.substring(lastindex + 1);
+        if (fileName != null && fileName.length() > 0) {
+            is = new FileInputStream(excel);
+        }
+        Map<String, Object> map = new HashMap<>();
+        //获取Excel中包含的对象数组
+        List<Map<String, Object>> list = ExcelToolUtils.getExcelList(is, fileName, 0);
+        map.put("list", list);
+        Set<String> capacitySet = new HashSet<>();//车牌号
+        for (Map<String, Object> item : list) {
+            //校验行
+            if(item.get("通知单号")==null || item.get("通知单号").equals("")
+                    || item.get("车号")==null || item.get("车号").equals("")
+                    || item.get("计量日期")==null || item.get("计量日期").equals("")
+                    || item.get("净重")==null || item.get("净重").equals("")
+                    || item.get("皮重")==null || item.get("皮重").equals("")
+                    || item.get("毛重")==null || item.get("毛重").equals("")){
+                throw new Exception("单元格数据异常(通知单号/车号/计量日期/净重/皮重/毛重),请检查模板或数据是否正确!");
+            }
+            //校验数据
+            String requirementNumber = item.get("通知单号").toString();
+            if (map.get("requirementNumber") != null) {
+                if (map.get("requirementNumber").equals(requirementNumber)) {
+                    String weightTime = map.get("weightTime").toString();
+                    if(!weightTime.equals(item.get("计量日期").toString())){
+                        throw new Exception("同一个Excel只允许一批车辆,请检查计量日期!");
+                    }
+                } else {
+                    throw new Exception("同一个Excel文件中只允许有一个通知单号!");
+                }
+            } else {
+                //不存在,新增
+                map.put("requirementNumber", requirementNumber);
+                map.put("weightTime",item.get("计量日期").toString());
+            }
+            //车牌号去重
+            capacitySet.add(item.get("车号").toString());
+        }
+        String[] capacities = capacitySet.toArray(new String[0]);//车牌号
+        if (capacities.length != list.size()) {
+            throw new Exception("车号不允许重复!");
+        }
+        map.put("userId",userId);
+        map.put("userName",userName);
+        map.put("businessType",businessType);
+        //获取火车运单及计量详情
+        List<Map<String,Object>> orderList = universalMapper.findTrainWeight(map);
+        if (orderList.size() <= 0) {
+            throw new Exception("未查询到装车信息,请先上传装车作业!");
+        }
+        map.put("orderList",orderList);
+        //新增TMS
+        return tmsFeign.purchaseTrainWeight(map);
+    }
+
+
+    @ApiOperation(value = "查询采购火运计量")
+    @PostMapping("/purchaseTrainWeightList")
+    public Map<String, Object> purchaseTrainWeightList(@RequestBody(required = false) Map<String, Object> map,
+                                                     Integer apiId,
+                                                     Integer pageNum,
+                                                     Integer pageSize) {
+        return tmsFeign.purchaseTrainWeightList(map == null ? new HashMap<>() : map, apiId, pageNum, pageSize);
+    }
+
+    @ApiOperation(value = "采购火运卸车作业")
+    @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
+    @PostMapping(value = "/purchaseTrainUnload")
+//    @LogAround(foreignKeys = {"resultId"},foreignKeyTypes = {"计量实绩"})
+    public Map<String, Object> purchaseTrainUnload(@RequestBody MultipartFile file,
+                                                   String businessType,
+                                                   String userId,
+                                                   String userName) throws Exception {
+        File excel = ExcelToolUtils.multipartFileToFile(file);
+        FileInputStream is = null;
+        String fileName = excel.getName();
+        // 解决fileName兼容性问题
+        int lastindex = fileName.lastIndexOf("\\");
+        fileName = fileName.substring(lastindex + 1);
+        if (fileName != null && fileName.length() > 0) {
+            is = new FileInputStream(excel);
+        }
+        Map<String, Object> map = new HashMap<>();
+        //获取Excel中包含的对象数组
+        List<Map<String, Object>> list = ExcelToolUtils.getExcelList(is, fileName, 0);
+        map.put("list", list);
+        Set<String> capacitySet = new HashSet<>();//车牌号
+        for (Map<String, Object> item : list) {
+            //校验行
+            if(item.get("通知单号")==null || item.get("通知单号").equals("")
+                    || item.get("车号")==null || item.get("车号").equals("")
+                    || item.get("卸车日期")==null || item.get("卸车日期").equals("")
+                    || item.get("净重")==null || item.get("净重").equals("")){
+                throw new Exception("单元格数据异常(通知单号/车号/卸车日期/净重),请检查模板或数据是否正确!");
+            }
+            //校验数据
+            String requirementNumber = item.get("通知单号").toString();
+            if (map.get("requirementNumber") != null) {
+                if (map.get("requirementNumber").equals(requirementNumber)) {
+                    String unloadTime = map.get("unloadTime").toString();
+                    if(!unloadTime.equals(item.get("卸车日期").toString())){
+                        throw new Exception("同一个Excel只允许一批车辆,请检查卸车日期!");
+                    }
+                } else {
+                    throw new Exception("同一个Excel文件中只允许有一个通知单号!");
+                }
+            } else {
+                //不存在,新增
+                map.put("requirementNumber", requirementNumber);
+                map.put("unloadTime",item.get("卸车日期").toString());
+            }
+            //车牌号去重
+            capacitySet.add(item.get("车号").toString());
+        }
+        String[] capacities = capacitySet.toArray(new String[0]);//车牌号
+        if (capacities.length != list.size()) {
+            throw new Exception("车号不允许重复!");
+        }
+        map.put("userId",userId);
+        map.put("userName",userName);
+        map.put("businessType",businessType);
+        //获取火车运单及计量详情
+        List<Map<String,Object>> orderList = universalMapper.findTrainUnload(map);
+        if (orderList.size() <= 0) {
+            throw new Exception("未查询到装车信息,请先上传装车作业!");
+        }
+        map.put("orderList",orderList);
+        //新增TMS
+        return tmsFeign.purchaseTrainUnload(map);
+    }
+
+    @ApiOperation(value = "查询采购火运卸车")
+    @PostMapping("/purchaseTrainUnloadList")
+    public Map<String, Object> purchaseTrainUnloadList(@RequestBody(required = false) Map<String, Object> map,
+                                                       Integer apiId,
+                                                       Integer pageNum,
+                                                       Integer pageSize) {
+        return tmsFeign.purchaseTrainUnloadList(map == null ? new HashMap<>() : map, apiId, pageNum, pageSize);
+    }
+
     @ApiOperation(value = "更改销售运输订单状态")
     @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
     @PostMapping(value = "/changeSaleTransOrder")

+ 12 - 0
src/main/java/com/steerinfo/dil/feign/AmsFeign.java

@@ -89,6 +89,9 @@ public interface AmsFeign {
     @PostMapping(value = "api/v1/ams/amstransplans/purchasePlanChange")
     Map<String, Object> purchasePlanChange(Map<String, Object> map);
 
+    @PostMapping(value = "api/v1/ams/amstransplans/purchaseTrainPlanDelete")
+    Map<String, Object> purchaseTrainPlanDelete(Map<String, Object> map);
+
     @PostMapping("api/v1/ams/amsorders/saleOrderSync")
     Map<String, Object> saleOrderSync(@RequestBody(required = false) Map<String, Object> map);
 
@@ -191,4 +194,13 @@ public interface AmsFeign {
                                         @RequestParam Integer pageNum,
                                         @RequestParam Integer pageSize);
 
+    @PostMapping(value =  "api/v1/ams/amstransrequirements/bindSale")
+    RESTfulResult bindSale(@RequestBody(required = false)Map<String, Object> map);
+
+    @PostMapping(value = "api/v1/ams/amsplanchilds/getMaterial")
+    RESTfulResult getMaterial(@RequestParam String prodCode,
+                              @RequestParam Integer apiId,
+                              @RequestParam Integer pageNum,
+                              @RequestParam Integer pageSize);
+
 }

+ 22 - 3
src/main/java/com/steerinfo/dil/feign/TmsFeign.java

@@ -157,6 +157,24 @@ public interface TmsFeign {
                                               @RequestParam Integer pageNum,
                                               @RequestParam Integer pageSize);
 
+
+    @PostMapping("api/v1/tms/tmsweightresults/purchaseTrainWeightList")
+    Map<String, Object> purchaseTrainWeightList(@RequestBody(required = false) Map<String, Object> map,
+                                              @RequestParam Integer apiId,
+                                              @RequestParam Integer pageNum,
+                                              @RequestParam Integer pageSize);
+
+
+    @PostMapping("api/v1/tms/tmsunloadresults/purchaseTrainUnloadList")
+    Map<String, Object> purchaseTrainUnloadList(@RequestBody(required = false) Map<String, Object> map,
+                                                @RequestParam Integer apiId,
+                                                @RequestParam Integer pageNum,
+                                                @RequestParam Integer pageSize);
+
+    @PostMapping("api/v1/tms/tmsweightresults/purchaseTrainWeight")
+    Map<String, Object> purchaseTrainWeight(Map<String, Object> map);
+
+
     @PostMapping("api/v1/tms/tmsunloadresults/getUnloadResultList")
     Map<String, Object> getUnloadResultList(@RequestBody(required = false) Map<String, Object> map,
                                             @RequestParam Integer apiId,
@@ -188,9 +206,10 @@ public interface TmsFeign {
                                              @RequestParam Integer pageSize);
 
     @PostMapping("api/v1/tms/tmsloadresults/purchaseTrainLoad")
-    Map<String, Object> purchaseTrainLoad(Map<String, Object> map,
-                                          @RequestParam String userId,
-                                          @RequestParam String userName);
+    Map<String, Object> purchaseTrainLoad(Map<String, Object> map);
+
+    @PostMapping("api/v1/tms/tmsunloadresults/purchaseTrainUnload")
+    Map<String, Object> purchaseTrainUnload(Map<String, Object> map);
 
     @PostMapping("api/v1/tms/omstransorders/changeSaleTransOrder")
     Map<String, Object> changeSaleTransOrder(Map<String, Object> map);

+ 8 - 1
src/main/java/com/steerinfo/dil/mapper/UniversalMapper.java

@@ -52,7 +52,14 @@ public interface UniversalMapper {
 
     String getWlUrl();
 
-    int checkTrainOrder(Map<String, Object> map);
+    //查询采购火运重复装车数量
+    int countTrainLoad(Map<String, Object> map);
+
+    //查询采购火运对应运单及计量实绩
+    List<Map<String, Object>>  findTrainWeight(Map<String, Object> map);
+
+    //查询采购火运对应运单及卸货实绩
+    List<Map<String, Object>>  findTrainUnload(Map<String, Object> map);
 
     List<Map<String, Object>> getBusinessTypeLike(Map<String, Object> map);
 }

+ 1 - 1
src/main/resources/application-dev.yml

@@ -51,7 +51,7 @@ openfeign:
   OMSFeign:
     url: ${OMSFEIGN_URL:localhost:8095}
   RmsFeign:
-    url: ${RMSFEIGN_URL:localhost:8060}
+    url: ${RMSFEIGN_URL:172.16.90.214:8060}
   IntegrationFeign:
     url: ${INTEGRATIONFEIGN_URL:localhost:8066}
   OTMSFeign:

+ 1 - 1
src/main/resources/application-prod.yml

@@ -29,7 +29,7 @@ openfeign:
   BmsFeign:
     url: ${BMSFEIGN_URL:172.16.90.214:8078}
   TmsFeign:
-    url: ${TMSFEIGN_URL:localhost:8086}
+    url: ${TMSFEIGN_URL:172.16.90.214:8086}
   WMSFeign:
     url: ${WMSFEIGN_URL:172.16.90.214:8093}
   OMSFeign:

+ 60 - 4
src/main/resources/com/steerinfo/dil/mapper/UniversalMapper.xml

@@ -443,12 +443,19 @@
         </where>
         FETCH NEXT 100 ROWS ONLY
     </select>
-    <select id="checkTrainOrder" resultType="java.lang.Integer">
+    <select id="countTrainLoad" resultType="java.lang.Integer">
         SELECT COUNT(*)
-        FROM OMS_TRANS_ORDER
+        FROM 	TMS_LOAD_RESULT TLR
+        LEFT JOIN OMS_TRANS_ORDER OTO ON TLR .TRANS_ORDER_ID =OTO .TRANS_ORDER_ID
+        LEFT JOIN OMS_ORDER_CHILD OOC ON OOC .TRANS_ORDER_ID = OTO .TRANS_ORDER_ID
+        LEFT JOIN  AMS_PLAN_CHILD APC ON APC.PLAN_CHILD_ID = OOC.PLAN_CHILD_ID
+        LEFT JOIN AMS_REQUIREMENT_CHILD ARC ON ARC.REQUIREMENT_CHILD_ID = APC.REQUIREMENT_CHILD_ID
+        LEFT JOIN AMS_TRANS_REQUIREMENT ATR ON ATR.TRANS_REQUIREMENT_ID = ARC.TRANS_REQUIREMENT_ID
         <where>
-            INSERT_TIME > SYSDATE-1
-            AND CAPACITY_ID IN
+            OTO.DELETED != 1
+            AND ATR.SERIAL_NUMBER =#{requirementNumber}
+            AND TLR.LOAD_START_TIME = to_date(#{loadTime}, 'yyyymmdd')
+            AND OTO.CAPACITY_ID IN
             <foreach collection="list" item="item"  open="(" close=")" separator="," >
                 #{item.车号}
             </foreach>
@@ -462,6 +469,7 @@
         DBT.BUSINESS_TYPE_ID "value",
         DBT.BUSINESS_TYPE_NAME "text",
         DBT.BUSINESS_TYPE_NAME "businessTypeName",
+        DBT.BUSINESS_SCENE "businessScene",
         DBT.BUSINESS_TYPE_NAME "label",
         DBT.ALTERNATE_FIELDS1 "transportType",
         DBT.ALTERNATE_FIELDS2 "materialTypeName"
@@ -471,6 +479,12 @@
             <if test="index!=null and index!=''">
                 AND REGEXP_LIKE("label", #{index})
             </if>
+            <if test="businessType!=null and businessType!=''">
+                AND  "businessTypeId" = #{businessType}
+            </if>
+            <if test="businessScene!=null and businessScene!=''">
+                AND  "businessScene" = #{businessScene}
+            </if>
             <if test="transportType!=null and transportType!=''">
                 AND REGEXP_LIKE("transportType", #{transportType})
             </if>
@@ -486,5 +500,47 @@
         </where>
         FETCH NEXT 100 ROWS ONLY
     </select>
+    <select id="findTrainWeight" resultType="java.util.Map">
+        <foreach collection="list" item="item"  separator=" UNION " >
+            SELECT OTO .TRANS_ORDER_ID "transOrderId",
+            TWR .RESULT_ID "resultId",
+            #{item.车号} "capacityId",
+            #{item.净重} "netWeight",
+            #{item.皮重} "tareWeight",
+            #{item.毛重} "grossWeight"
+            FROM 	OMS_TRANS_ORDER OTO
+            LEFT JOIN TMS_WEIGHT_RESULT TWR
+                ON TWR .TRANS_ORDER_ID = OTO .TRANS_ORDER_ID AND TWR.NET_WEIGHT_TIME = to_date(#{weightTime}, 'yyyymmdd')
+            LEFT JOIN OMS_ORDER_CHILD OOC ON OOC .TRANS_ORDER_ID = OTO .TRANS_ORDER_ID
+            LEFT JOIN  AMS_PLAN_CHILD APC ON APC.PLAN_CHILD_ID = OOC.PLAN_CHILD_ID
+            LEFT JOIN AMS_REQUIREMENT_CHILD ARC ON ARC.REQUIREMENT_CHILD_ID = APC.REQUIREMENT_CHILD_ID
+            LEFT JOIN AMS_TRANS_REQUIREMENT ATR ON ATR.TRANS_REQUIREMENT_ID = ARC.TRANS_REQUIREMENT_ID
+            <where>
+                OTO.DELETED != 1
+                AND ATR.SERIAL_NUMBER =#{requirementNumber}
+                AND OTO.CAPACITY_ID = #{item.车号}
+            </where>
+        </foreach>
+    </select>
+    <select id="findTrainUnload" resultType="java.util.Map">
+        <foreach collection="list" item="item"  separator=" UNION " >
+            SELECT OTO .TRANS_ORDER_ID "transOrderId",
+            TUR .RESULT_ID "resultId",
+            #{item.车号} "capacityId",
+            #{item.净重} "unloadWeight"
+            FROM 	OMS_TRANS_ORDER OTO
+            LEFT JOIN TMS_UNLOAD_RESULT TUR
+            ON TUR .TRANS_ORDER_ID = OTO .TRANS_ORDER_ID AND TUR.UNLOAD_START_TIME = to_date(#{unloadTime}, 'yyyymmdd')
+            LEFT JOIN OMS_ORDER_CHILD OOC ON OOC .TRANS_ORDER_ID = OTO .TRANS_ORDER_ID
+            LEFT JOIN  AMS_PLAN_CHILD APC ON APC.PLAN_CHILD_ID = OOC.PLAN_CHILD_ID
+            LEFT JOIN AMS_REQUIREMENT_CHILD ARC ON ARC.REQUIREMENT_CHILD_ID = APC.REQUIREMENT_CHILD_ID
+            LEFT JOIN AMS_TRANS_REQUIREMENT ATR ON ATR.TRANS_REQUIREMENT_ID = ARC.TRANS_REQUIREMENT_ID
+            <where>
+                OTO.DELETED != 1
+                AND ATR.SERIAL_NUMBER =#{requirementNumber}
+                AND OTO.CAPACITY_ID = #{item.车号}
+            </where>
+        </foreach>
+    </select>
 
 </mapper>

+ 1 - 1
src/main/resources/log4j.properties

@@ -20,7 +20,7 @@ log4j.appender.RUNNING = org.apache.log4j.DailyRollingFileAppender
 log4j.appender.RUNNING.File =/logs/log/running.log
 log4j.appender.RUNNING.Append = true
 log4j.appender.RUNNING.Threshold = INFO
-log4j.appender.RUNNING.DatePattern='.'yyyy-MM-dd.
+log4j.appender.RUNNING.DatePattern='.'yyyy-MM-dd
 log4j.appender.RUNNING.layout = org.apache.log4j.PatternLayout
 log4j.appender.RUNNING.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss,SSS}:%5p %20t [%50F:%3L] - %m%n