Browse Source

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

huk 3 years ago
parent
commit
ea09830079

+ 39 - 22
src/main/java/com/steerinfo/dil/controller/TmstruckLoadResultController.java

@@ -3,10 +3,11 @@ package com.steerinfo.dil.controller;
 import com.steerinfo.dil.feign.ESFeign;
 import com.steerinfo.dil.model.TmstruckLoadResult;
 import com.steerinfo.dil.service.ITmstruckLoadResultService;
+import com.steerinfo.dil.util.BaseRESTfulController;
 import com.steerinfo.dil.util.ColumnDataUtil;
 import com.steerinfo.dil.util.DataChange;
 import com.steerinfo.dil.util.PageListAdd;
-import com.steerinfo.framework.controller.BaseRESTfulController;
+
 import com.steerinfo.framework.controller.RESTfulResult;
 import com.steerinfo.framework.service.pagehelper.PageHelper;
 import io.swagger.annotations.ApiImplicitParam;
@@ -45,6 +46,16 @@ public class TmstruckLoadResultController extends BaseRESTfulController {
     @Autowired
     ColumnDataUtil columnDataUtil;
 
+    @ApiOperation(value="生成装车实绩 :远程调用专用")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "resultId", value = "装车作业实绩ID", required = false, dataType = "Integer"),
+    })
+    @PostMapping("/addLoadResult")
+    public RESTfulResult addLoadResult(@RequestBody(required=false) Map<String,Object> map){
+        int i = tmstruckLoadResultService.addLoadResult(map);
+        return success(i);
+    }
+
     @ApiOperation(value="查询所有装车实绩")
     @ApiImplicitParams({
             @ApiImplicitParam(name = "mapValue", value = "表头和参数", required = false, dataType = "map"),
@@ -75,6 +86,9 @@ public class TmstruckLoadResultController extends BaseRESTfulController {
         if(mapValue.size() == 2){
             //将查询结果存入索引中
             allLoadResult = tmstruckLoadResultService.getAllLoadResult(mapValue);
+            if("5678".contains(orderType.toString())) {
+                DataChange.changeDateToDayDate(allLoadResult, "resultLoadStartTime");
+            }
             Map<String, Object> map = new HashMap<>();
             //添加索引
             map.put("index","get_truck_load_list");
@@ -91,7 +105,9 @@ public class TmstruckLoadResultController extends BaseRESTfulController {
         PageHelper.startPage(pageNum,pageSize);
         //分页数据
         List<Map<String, Object>> loadResult = tmstruckLoadResultService.getAllLoadResult(mapValue);
-        DataChange.changeDateToDayDate(loadResult, "resultLoadStartTime");
+        if("5678".contains(orderType.toString())) {
+            DataChange.changeDateToDayDate(loadResult, "resultLoadStartTime");
+        }
         PageListAdd pageList = columnDataUtil.tableColumnData(apiId, allLoadResult,loadResult);
         return success(pageList);
     }
@@ -106,6 +122,27 @@ public class TmstruckLoadResultController extends BaseRESTfulController {
         return success(i);
     }
 
+    @ApiOperation(value="销售新增钢材装车实绩 ")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "map", value = "", required = false, dataType = "Map"),
+    })
+    @PostMapping("/addSaleLoadResult")
+    public RESTfulResult addSaleLoadResult(@RequestBody(required=false) Map<String, Object> map){
+        int i = tmstruckLoadResultService.addXSLoadResult(map);
+        return success(i);
+    }
+
+    @ApiOperation(value="销售新增钢渣、水渣、危化品装车实绩 ")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "map", value = "", required = false, dataType = "Map"),
+    })
+    @PostMapping("/addSale2LoadResult")
+    public RESTfulResult addSale2LoadResult(@RequestBody(required=false) Map<String, Object> map){
+        int i = tmstruckLoadResultService.addXS2LoadResult(map);
+        return success(i);
+    }
+
+
     @ApiOperation(value="修改汽车装车实绩")
     @ApiImplicitParams({
             @ApiImplicitParam(name = "tmstruckLoadResult", value = "装车作业实绩对象", required = false, dataType = "TmstruckLoadResult"),
@@ -143,16 +180,6 @@ public class TmstruckLoadResultController extends BaseRESTfulController {
         return success(i);
     }
 
-    @ApiOperation(value="生成装车实绩 :远程调用专用")
-    @ApiImplicitParams({
-            @ApiImplicitParam(name = "resultId", value = "装车作业实绩ID", required = false, dataType = "Integer"),
-    })
-    @PostMapping("/addLoadResult")
-    public RESTfulResult addLoadResult(@RequestBody(required=false) Map<String,Object> map){
-        int i = tmstruckLoadResultService.addLoadResult(map);
-        return success(i);
-    }
-
     @ApiOperation(value="修改n个装车点 ")
     @ApiImplicitParams({
             @ApiImplicitParam(name = "resultId", value = "装车作业实绩ID", required = false, dataType = "Integer"),
@@ -204,16 +231,6 @@ public class TmstruckLoadResultController extends BaseRESTfulController {
         return success(pageList);
     }
 
-
-    @ApiOperation(value="销售新增装车实绩 ")
-    @ApiImplicitParams({
-            @ApiImplicitParam(name = "map", value = "", required = false, dataType = "Map"),
-    })
-    @PostMapping("addSaleLoadResult")
-    public RESTfulResult addSaleLoadResult(@RequestBody(required=false) Map<String, Object> map){
-        int i = tmstruckLoadResultService.addXSLoadResult(map);
-        return success(i);
-    }
     //内转物流新增装车实绩
     @ApiOperation(value="内转物流新增装车实绩 ")
     @ApiImplicitParams({

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

@@ -25,7 +25,7 @@ public interface TmstruckEnfactoryResultMapper extends IBaseMapper<TmstruckEnfac
     BigDecimal selectMaxId();
 
     //通过车牌号和 运输订单 查询 与运输订单关联的实绩总表ID
-    Integer selectOrderIdByCpAndOn(Map<String, Object> map);
+    Integer selectTotalResultIdByCpAndOn(Map<String, Object> map);
 
     //通过门岗名称查询门岗Id
     Integer selectGatepostIdByGatepostName(String gatepostName);

+ 5 - 3
src/main/java/com/steerinfo/dil/mapper/TmstruckLoadResultMapper.java

@@ -7,6 +7,7 @@ import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Select;
 
 import java.math.BigDecimal;
+import java.util.Date;
 import java.util.List;
 import java.util.Map;
 
@@ -41,7 +42,7 @@ public interface TmstruckLoadResultMapper extends IBaseMapper<TmstruckLoadResult
     List<Integer>  selectResultIdByOrderNumber(String orderNumber);
 
     //根据实绩id查找扫描时间
-    Map selectLoadTimeByResultId(Integer resultId);
+    Date selectLoadTimeByResultId(BigDecimal resultId);
 
     //根据实绩id查找扫描时间
     Integer selecLoadIdByresultId(Integer resultId);
@@ -51,6 +52,7 @@ public interface TmstruckLoadResultMapper extends IBaseMapper<TmstruckLoadResult
 
     //根据运输订单号查找物资id
     List<Map<String,Object>> selectMaterialIdByOrderNumber(Map<String, Object> map);
+
     //内转物流汽车装货展示
     List<Map<String,Object>> selectLoadResultForConverted(Map<String,Object> map);
 
@@ -79,8 +81,8 @@ public interface TmstruckLoadResultMapper extends IBaseMapper<TmstruckLoadResult
     Integer getLoadResultIdByMIdAndTotalId(@Param("resultTotalId") Integer resultTotalId, @Param("materialId") Integer materialId);
 
     //通过物资ID和运输订单号 查找最先扫描Id
-    Integer getMinScanIdByOrderNum(Map<String, Object> map);
+    Map<String, Object> getMinScanIdByOrderNum(Map<String, Object> map);
 
     //通过物资唯一编码 查找物资ID
-    BigDecimal getMaterialIdByMaterialCode(String materialCode);
+    BigDecimal getMaterialIdByMaterialCode(String materialOnlyCode);
 }

+ 4 - 1
src/main/java/com/steerinfo/dil/mapper/TmstruckWeightResultMapper.java

@@ -17,8 +17,11 @@ public interface TmstruckWeightResultMapper extends IBaseMapper<TmstruckWeightRe
     @Select("select seq_tmstruck_weight_result.nextval from dual")
     BigDecimal selectMaxId();
 
+    //通过物资名称和规格型号查询物资Id
+    Integer getMaterialIdByMaterialNameAndSpe(Map<String, Object> map);
+
     //通过订单号查询计重实绩数据
-    Map<String, Object> selectTotalIdByOrderNo(String orderNumber);
+    Map<String, Object> selectTotalIdByOrderNo(Map<String, Object> map);
 
     //通过汽车衡编号查询汽车衡ID
     Integer selectTruckCalculateId(String truckCalculateNumber);

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

@@ -31,4 +31,9 @@ public interface UtilsMapper {
     //通过运力ID 或车牌号 修改运力状态
     int updateCapacityByCarIdOrNum(Map<String, Object> map);
 
+    //通过仓库名称查询仓库Id
+    Integer queryWarehouseIdByName(String warehouseName);
+
+    //通过月台名称查找月台Id platformName
+    Integer queryPlatformIdByName(String platformName);
 }

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

@@ -32,6 +32,9 @@ public interface ITmstruckLoadResultService{
     //修改销售装车实绩  (如果是多种物资【多拼】,通过物资Id和运输订单号来确定唯一的装车实绩进行修改)
     int addXSLoadResult(Map<String, Object> map);
 
+    //修改销售钢渣、水渣、危化品装车实绩
+    int addXS2LoadResult(Map<String, Object> map);
+
     //修改装车作业
     int updateLoadResult(TmstruckLoadResult tmstruckLoadResult);
 

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

@@ -21,4 +21,13 @@ public interface IUtilsService {
 
     //修改运输订单状态
     int updateOrderStatus(Map<String, Object> map, Integer status);
+
+    //通过仓库名称查询仓库Id
+    Integer queryWarehouseIdByName(String warehouseName);
+
+    //用于更新路段顺序号
+    int updateOrderLineSequence(Map<String, Object> map, Integer lineSequence);
+
+    //通过月台名称查找月台Id platformName
+    Integer queryPlatformIdByName(String platformName);
 }

+ 89 - 29
src/main/java/com/steerinfo/dil/service/impl/TmstruckLoadResultServiceImpl.java

@@ -64,7 +64,7 @@ public class TmstruckLoadResultServiceImpl implements ITmstruckLoadResultService
             case 3:
             case 4:
                 map.put("status", 0);
-                return tmstruckLoadResultMapper.getXSLoadResult(map);
+                return tmstruckLoadResultMapper.getXSLoadResult(map); //apiId = 221
             case 5:
                 break;
             case 6:
@@ -72,7 +72,7 @@ public class TmstruckLoadResultServiceImpl implements ITmstruckLoadResultService
             case 7:
                 break;
             case 8:
-                return tmstruckLoadResultMapper.getCGJKLoadResult(map);
+                return tmstruckLoadResultMapper.getCGJKLoadResult(map); // apiId = 91
             case 9:
 
                 break;
@@ -93,8 +93,7 @@ public class TmstruckLoadResultServiceImpl implements ITmstruckLoadResultService
     @Transactional
     public int addCGLoadResult(Map<String,Object> map){
         //通过运输订单号 或 运单Id 查询实绩总表ID  此方法在 进厂作业mapper中
-        Integer totalId = tmstruckEnfactoryResultMapper.selectOrderIdByCpAndOn(map);
-        // 新增装车实绩
+        Integer totalId = tmstruckEnfactoryResultMapper.selectTotalResultIdByCpAndOn(map);
         TmstruckLoadResult tmstruckLoadResult = new TmstruckLoadResult();
         //添加主键Id
         tmstruckLoadResult.setResultId(tmstruckLoadResultMapper.selectMaxId());
@@ -149,46 +148,107 @@ public class TmstruckLoadResultServiceImpl implements ITmstruckLoadResultService
     }
 
     /**
-     * 修改销售装车实绩  (如果是多种物资【多拼】,通过物资Id和运输订单号来确定唯一的装车实绩进行修改)
-     * @param map 物资唯一编码  运输订单号
+     * 修改销售钢材装车实绩  (如果是多种物资【多拼】,通过物资Id和运输订单号来确定唯一的装车实绩进行修改)
+     *  materialOnlyCode 物资唯一编码  orderNumber 运输订单号 resultMeasuredTonnage 物资件数
+     *  insertUpdateRemark 备注  platformName 月台名称
+     * @param map
      * @return
      */
     public int addXSLoadResult(Map<String, Object> map){
         //通过物资唯一编码查找物资Id
-        BigDecimal materialId = tmstruckLoadResultMapper.getMaterialIdByMaterialCode((String) map.get("materialCode"));
+        BigDecimal materialId = tmstruckLoadResultMapper.getMaterialIdByMaterialCode((String) map.get("materialOnlyCode"));
         //通过运输订单号查找总实绩ID
-        Integer resultTotalId = tmstruckEnfactoryResultMapper.selectOrderIdByCpAndOn(map);
-        //通过总实绩ID与物资ID查找装车实绩主键ID
+        Integer resultTotalId = tmstruckEnfactoryResultMapper.selectTotalResultIdByCpAndOn(map);
+        //通过总实绩ID与物资ID查找 装车实绩主键ID
         Integer resultId = tmstruckLoadResultMapper.getLoadResultIdByMIdAndTotalId(resultTotalId, materialId.intValue());
         TmstruckLoadResult tmstruckLoadResult = new TmstruckLoadResult();
         tmstruckLoadResult.setStatus(new BigDecimal(0)); // 添加状态0:正常
-        //添加主键
+        //编辑装车实绩主键ID对应的各个字段
         tmstruckLoadResult.setResultId(new BigDecimal(resultId));
-        //新增计量吨位 装车所装的重量
+        // 新增计量吨位 装车所装的重量
         tmstruckLoadResult.setResultMeasuredTonnage(DataChange.dataToBigDecimal(map.get("resultMeasuredTonnage")));
-        //获取扫描实绩最小Id  添加扫描开始时间
-        Integer scanId = tmstruckLoadResultMapper.getMinScanIdByOrderNum(map);
-        Map timeMap = tmstruckLoadResultMapper.selectLoadTimeByResultId(scanId);
-        Date resultLoadStartTime = (Date) timeMap.get("loadTime");
+        // 获取扫描实绩最小Id  添加扫描开始时间
+        map.put("materialId", materialId);
+        Map<String, Object> scanMap = tmstruckLoadResultMapper.getMinScanIdByOrderNum(map);
+        Date resultLoadStartTime = tmstruckLoadResultMapper.selectLoadTimeByResultId(DataChange.dataToBigDecimal(scanMap.get("resultId")));
         tmstruckLoadResult.setResultLoadStartTime(resultLoadStartTime);
-        //添加扫描结束时间
+        // 添加装卸工Id
+        tmstruckLoadResult.setLoaderId(DataChange.dataToBigDecimal(scanMap.get("loadId")));
+        // 添加扫描结束时间 以调用当前接口时间为结束时间
         Date resultLoadEndTime = new Date();
         tmstruckLoadResult.setResultLoadEndTime(resultLoadEndTime);
-        //添加装车实绩时长  ----  计算装车时长
+        // 添加装车实绩时长  ----  计算装车时长
         long time = (resultLoadEndTime.getTime() - resultLoadStartTime.getTime()) / 60000; // 分钟
         tmstruckLoadResult.setResultLoadDuration(new BigDecimal(time));
-        //添加装卸工Id
-        tmstruckLoadResult.setLoaderId(new BigDecimal(1));
-        //添加备注
+        //添加装车标准时长
+        setLoadStandardTimeId((String)map.get("orderNumber"), tmstruckLoadResult);
+        Object platformName = map.get("platformName");
+        if(platformName != null){  // 如果月台不为空则更新月台
+            Integer platformId = utilsService.queryPlatformIdByName((String) platformName);
+            tmstruckLoadResult.setLoadingId(new BigDecimal(platformId));
+        }
+        // 添加备注
         tmstruckLoadResult.setInsertUpdateRemark((String) map.get("insertUpdateRemark"));
-        //新增出库实绩
-//        wmsFeign.insertOutBoundResult(map);
-        return tmstruckLoadResultMapper.insertSelective(tmstruckLoadResult);
+        return tmstruckLoadResultMapper.updateByPrimaryKeySelective(tmstruckLoadResult);
+    }
+
+    /**
+     * 修改销售钢渣、水渣、危化品装车实绩
+     * loadStartTime 装车开始时间   resultMeasuredTonnage 计量吨位
+     * warehouseName  仓库名称      orderNumber 运输订单号   insertUpdateRemark 备注
+     * @param map
+     * @return
+     */
+    public int addXS2LoadResult(Map<String, Object> map){
+        //通过运输订单号 查询 总实绩ID
+        Integer resultTotalId = tmstruckEnfactoryResultMapper.selectTotalResultIdByCpAndOn(map);
+        //查询装车实绩ID
+        Integer resultId = tmstruckLoadResultMapper.getLoadResultIdByMIdAndTotalId(resultTotalId, null);
+        TmstruckLoadResult tmstruckLoadResult = new TmstruckLoadResult();
+        tmstruckLoadResult.setResultId(new BigDecimal(resultId));
+        tmstruckLoadResult.setStatus(new BigDecimal(0));
+        //添加装车开始时间
+        Date loadStartTime = new Date((long) map.get("loadStartTime"));
+        tmstruckLoadResult.setResultLoadStartTime(loadStartTime);
+        //添加装车结束时间(当前时间)
+        Date loadEndTime = new Date();
+        tmstruckLoadResult.setResultLoadEndTime(loadEndTime);
+        //计算装车时长 取分钟
+        long differentTime = (loadEndTime.getTime() - loadStartTime.getTime() / 60000);
+        tmstruckLoadResult.setResultLoadDuration(new BigDecimal(differentTime));
+        //添加计量吨位
+        tmstruckLoadResult.setResultMeasuredTonnage(DataChange.dataToBigDecimal(map.get("resultMeasuredTonnage")));
+        //添加装车标准时长
+        setLoadStandardTimeId((String)map.get("orderNumber"), tmstruckLoadResult);
+        // 更新装车名称
+        Object warehouseName = map.get("warehouseName");
+        if(warehouseName != null){
+            Integer warehouseId = utilsService.queryWarehouseIdByName((String) warehouseName);
+            tmstruckLoadResult.setLoadingId(new BigDecimal(warehouseId));
+        }
+        tmstruckLoadResult.setInsertUpdateRemark((String) map.get("insertUpdateRemark"));
+        return tmstruckLoadResultMapper.updateByPrimaryKeySelective(tmstruckLoadResult);
+    }
+
+    /**
+     * 添加装车标准时长ID
+     * @param orderNumber
+     * @param tmstruckLoadResult
+     */
+    public void setLoadStandardTimeId(String orderNumber, TmstruckLoadResult tmstruckLoadResult){
+        //添加标准时长ID 通过运输订单号查找运输订单类型
+        Integer orderType = tmstruckLoadResultMapper.selectOrderTypeByOrderNumber(orderNumber);
+        if(orderType == 1){
+            tmstruckLoadResult.setLoadStandardTimeId(new BigDecimal(1));
+        }else if(orderType == 2){
+            tmstruckLoadResult.setLoadStandardTimeId(new BigDecimal(2));
+        }else if(orderType == 3){
+            tmstruckLoadResult.setLoadStandardTimeId(new BigDecimal(3));
+        }
     }
 
     /**
      * 修改装车作业
-     *
      * @param tmstruckLoadResult
      * @return
      */
@@ -252,7 +312,9 @@ public class TmstruckLoadResultServiceImpl implements ITmstruckLoadResultService
         return tmstruckLoadResultMapper.selectLoadResultForSale(map);
     }
 
-    //内转物流,新增装车实绩
+    /**
+     * 内转物流,新增装车实绩
+     */
     @Override
     public int addLoadResultForconverted(Map<String, Object> map) {
         TmstruckLoadResult tmstruckLoadResult = new TmstruckLoadResult();
@@ -391,12 +453,10 @@ public class TmstruckLoadResultServiceImpl implements ITmstruckLoadResultService
                 Integer maxResultId = (Integer) Collections.max(list);
                 Integer minResultId = (Integer) Collections.min(list);
                 //根据最大id查找扫描时间
-                Map map1 = tmstruckLoadResultMapper.selectLoadTimeByResultId(minResultId);
-                Date startdate = (Date) map1.get("loadTime");
+                Date startdate = tmstruckLoadResultMapper.selectLoadTimeByResultId(new BigDecimal(minResultId));
                 Integer loaderId = tmstruckLoadResultMapper.selecLoadIdByresultId(minResultId);
                 //根据最小id查找扫描时间
-                Map map2 = tmstruckLoadResultMapper.selectLoadTimeByResultId(maxResultId);
-                Date endDate = (Date) map2.get("loadTime");
+                Date endDate =  tmstruckLoadResultMapper.selectLoadTimeByResultId(new BigDecimal(maxResultId));
                 tmstruckLoadResult.setResultLoadStartTime(startdate);
                 tmstruckLoadResult.setResultLoadEndTime(endDate);
                 //开始时间

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

@@ -159,8 +159,11 @@ public class TmstruckWeightResultServiceImpl implements ITmstruckWeightResultSer
     @Transactional
     public int addJiMaoResult(Map<String, Object> map) {
         TmstruckWeightResult tmstruckWeightResult = new TmstruckWeightResult();
-        //通过传来的运输订单号查询计重实绩
-        map.putAll(tmstruckWeightResultMapper.selectTotalIdByOrderNo((String) map.get("orderNumber")));
+        //通过物资名称和物资规格查询物资Id
+        int materialId = tmstruckWeightResultMapper.getMaterialIdByMaterialNameAndSpe(map);
+        map.put("materialId", materialId);
+        //通过传来的运输订单号与物资ID查询计重实绩
+        map.putAll(tmstruckWeightResultMapper.selectTotalIdByOrderNo(map));
         BigDecimal weightTaskResultId = DataChange.dataToBigDecimal(map.get("weightTaskResultId"));
         tmstruckWeightResult.setWeightTaskResultId(weightTaskResultId);
         //添加毛重
@@ -187,7 +190,7 @@ public class TmstruckWeightResultServiceImpl implements ITmstruckWeightResultSer
                 String resultNetWeight = df.format(netWeight);
                 tmstruckWeightResult.setResultNetWeight(new BigDecimal(resultNetWeight));
                 addUpdateRegularField(tmstruckWeightResult); //插入第二次计重时间
-                lineSequence = 5; //设置路段顺序号为5:出厂
+//                lineSequence = 5; //设置路段顺序号为5:出厂
                 break;
             case 2:
                 break;
@@ -217,6 +220,14 @@ public class TmstruckWeightResultServiceImpl implements ITmstruckWeightResultSer
         return i +i2;
     }
 
+    /**
+     * 通过物资名称和规格型号查询物资Id
+     * 物资名称:materialName   规格型号:materialSpecification
+     * @return
+     */
+    public int queryMaterialIdByMNameAndCode(Map<String, Object> map){
+        return tmstruckWeightResultMapper.getMaterialIdByMaterialNameAndSpe(map);
+    }
 
 
     /**
@@ -233,8 +244,11 @@ public class TmstruckWeightResultServiceImpl implements ITmstruckWeightResultSer
     @Transactional
     public int addJiPiResult(Map<String, Object> map) {
         TmstruckWeightResult tmstruckWeightResult = new TmstruckWeightResult();
-        //通过传来的运输订单号查询计重实绩
-        map.putAll(tmstruckWeightResultMapper.selectTotalIdByOrderNo((String) map.get("orderNumber")));
+        //通过物资名称和物资规格查询物资Id
+        int materialId = tmstruckWeightResultMapper.getMaterialIdByMaterialNameAndSpe(map);
+        map.put("materialId", materialId);
+        //通过传来的运输订单号与物资ID查询计重实绩
+        map.putAll(tmstruckWeightResultMapper.selectTotalIdByOrderNo(map));
         BigDecimal resultId = (BigDecimal) map.get("weightTaskResultId");
         tmstruckWeightResult.setWeightTaskResultId(resultId);
         //添加皮重

+ 21 - 0
src/main/java/com/steerinfo/dil/service/impl/UtilsServiceImpl.java

@@ -60,6 +60,16 @@ public class UtilsServiceImpl implements IUtilsService {
         return utilsMapper.updateOrderStatusByOrderIdOrNum(map);
     }
 
+    /**
+     * 通过仓库名称查询仓库Id
+     * @param warehouseName
+     * @return
+     */
+    @Override
+    public Integer queryWarehouseIdByName(String warehouseName) {
+        return utilsMapper.queryWarehouseIdByName(warehouseName);
+    }
+
     /**
      * 用于更新路段顺序号
      * @param map  orderId 运输订单号
@@ -70,4 +80,15 @@ public class UtilsServiceImpl implements IUtilsService {
         return utilsMapper.updateLineSeqByOrderIdOrNum(map);
     }
 
+    /**
+     * 通过月台名称查询月台Id
+     * @param platformName
+     * @return
+     */
+    @Override
+    public Integer queryPlatformIdByName(String platformName) {
+        return utilsMapper.queryPlatformIdByName(platformName);
+    }
+
+
 }

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

@@ -610,7 +610,7 @@
     </select>
 
     <!--  通过车牌号并且状态不为2 或 运输订单 或运输订单ID  查询关联的实绩总表ID -->
-    <select id="selectOrderIdByCpAndOn" parameterType="java.util.Map" resultType="int">
+    <select id="selectTotalResultIdByCpAndOn" parameterType="java.util.Map" resultType="int">
         select TTR.RESULT_TOTAL_ID "resultTotalId"
         from OMSTRUCK_ORDER OO
         left join TMSTRUCK_TOTAL_RESULT TTR

+ 42 - 38
src/main/resources/com/steerinfo/dil/mapper/TmstruckLoadResultMapper.xml

@@ -720,15 +720,23 @@
     </select>
 
 <!--  通过运输订单号查询 出库实绩 最小Id(第一件扫描时间)  0 成功  1 失败-->
-    <select id="getMinScanIdByOrderNum" parameterType="string" resultType="int">
-        select MIN(WOSR.RESULT_ID)
-        from OMSTRUCK_ORDER OO
-                 left join WMSP_OUTBOUND_RESULT WOR
-                           on OO.ORDER_ID = WOR.BILL_LADING_ID
-                 left join WMSP_OUTBOUND_SCAN_RESULT WOSR
-                           on WOSR.OUTBOUND_RESULT_ID = WOR.RESULT_ID
-        WHERE OO.ORDER_NUMBER = #{orderNumber} and WOR.MATERIAL_ID = #{materailId}
-          and WOSR.RESULT_CHECK = 0
+    <select id="getMinScanIdByOrderNum" parameterType="java.util.Map" resultType="java.util.Map">
+        select *
+        from (
+                 select WOSR.RESULT_ID "resultId",
+                        WOSR.LOAD_ID   "loadId"
+                 from WMSP_OUTBOUND_RESULT WOR
+                          left join WMSP_OUTBOUND_SCAN_RESULT WOSR
+                                    on WOSR.OUTBOUND_RESULT_ID = WOR.RESULT_ID
+                          left join OMSTRUCK_ORDER OO
+                                    on OO.ORDER_ID = WOR.BILL_LADING_ID
+                 WHERE OO.ORDER_NUMBER = #{orderNumber}
+                   and WOR.MATERIAL_ID = #{materialId}
+                   and WOSR.RESULT_CHECK = 0
+                 ORDER BY WOSR.RESULT_ID
+
+             )
+        where rownum = 1
     </select>
 
     <!-- 根据运输订单号查找 -->
@@ -745,7 +753,7 @@
     </select>
 
     <!-- 根据实绩id查找扫描时间 -->
-    <select id="selectLoadTimeByResultId" resultType="java.util.Map" parameterType="java.lang.Integer">
+    <select id="selectLoadTimeByResultId" resultType="java.util.Date" parameterType="java.math.BigDecimal">
         select WOSR.RESULT_LOAD_TIME "loadTime"
         from WMSP_OUTBOUND_SCAN_RESULT WOSR
         where WOSR.RESULT_ID = #{resultId}
@@ -903,7 +911,9 @@
                    TLR.RESULT_LOAD_DURATION "resultLoadDuration",
                    RSD.STANDARD_DATA_MAX "standardDataMax",
                    RP.PERSONNEL_NAME "personnelName",
-                   (CASE WHEN OO.ORDER_TYPE = 1
+                   RM.MATERIAL_THEORETICAL_WEIGHT "materialTheoreticalWeight",
+                   RM.MATERIAL_NAME "materialName",
+                    (CASE WHEN OO.ORDER_TYPE = 1
                         THEN (
                                 SELECT ASO.SALE_NUMBER
                                 FROM AMS_SALE_ORDER_MATERIAL ASOM
@@ -916,32 +926,12 @@
                                 FROM AMSTRUCK_RAIL_DAYPLAN ARD
                                 WHERE ARD.DAYPLAN_ID = OO.ORDER_PLAN_ID
                             )
-                   END) "saleNum",
-                   (CASE WHEN   OO.ORDER_TYPE = 1
-                        THEN (
-                                SELECT RM.MATERIAL_NAME
-                                FROM RMS_MATERIAL_STEEL RMS
-                                LEFT JOIN RMS_MATERIAL RM ON RMS.MATERIAL_ID = RM.MATERIAL_ID
-                                WHERE RMS.MATERIAL_STEEL_ID = OOM.MATERIAL_ID
-                            )
-                        WHEN OO.ORDER_TYPE IN (2, 3)
-                        THEN (
-                                SELECT RM2.MATERIAL_NAME
-                                FROM RMS_MATERIAL RM2
-                                WHERE RM2.MATERIAL_ID = OOM.MATERIAL_ID
-                            )
-                    END) "materialName",
+                   END) "no",
                    (CASE WHEN   OO.ORDER_TYPE = 1
                         THEN OOM.ORDER_MATERIAL_NUMBER
                         WHEN OO.ORDER_TYPE IN (2, 3)
                         THEN OOM.ORDER_MATERIAL_WEIGHT
-                     END) "materialNumWei",
-                   (CASE WHEN   OO.ORDER_TYPE = 1
-                        THEN   (SELECT MATERIAL_THEORETICAL_WEIGHT
-                                FROM RMS_MATERIAL_STEEL RMS2
-                                WHERE OOM.MATERIAL_ID = RMS2.MATERIAL_STEEL_ID
-                            )
-                     END) "materialTheoreticalWeight"
+                     END) "materialNumWei"
             FROM TMSTRUCK_LOAD_RESULT TLR
             LEFT JOIN TMSTRUCK_TOTAL_RESULT TTR
                 ON TLR.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
@@ -949,6 +939,8 @@
                 ON OO.ORDER_ID = TTR.ORDER_ID
             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 RMS_DRIVER_CAPACITY RDC
                 ON RDC.DRIVER_CAPACITY_ID = OO.DRIVER_CAPACITY_ID
             LEFT JOIN RMS_CAPACITY RC
@@ -957,7 +949,9 @@
                 ON RSD.STANDARD_DATA_ID = TLR.LOAD_STANDARD_TIME_ID
             LEFT JOIN RMS_PERSONNEL RP
                 ON TLR.LOADER_ID = RP.PERSONNEL_ID
-
+            where
+                  OO.ORDER_TYPE in (1, 2, 3)
+              and TLR.STATUS = #{status}
         )
         <where>
             <if test="orderNumber != null">
@@ -971,6 +965,12 @@
                     "materialName" like '%${item}%'
                 </foreach>
             </if>
+            <if test="no != null">
+                and
+                <foreach collection="no" item="item" open="(" separator="or" close=")">
+                    "no" like '%${item}%'
+                </foreach>
+            </if>
             <if test="materialNumWei != null">
                 and
                 <foreach collection="materialNumWei" item="item" open="(" separator="or" close=")">
@@ -1037,15 +1037,19 @@
     <select id="getLoadResultIdByMIdAndTotalId" parameterType="int" resultType="java.lang.Integer">
         select TLR.RESULT_ID
         from TMSTRUCK_LOAD_RESULT TLR
-        where TLR.RESULT_TOTAL_ID = #{resultTotalId}
-          and TLR.MATERIAL_ID = #{materialId}
+        <where>
+            TLR.RESULT_TOTAL_ID = #{resultTotalId}
+            <if test="materialId != null">
+                and TLR.MATERIAL_ID = #{materialId}
+            </if>
+        </where>
     </select>
 
 <!--    通过物资唯一编码 查找物资ID -->
     <select id="getMaterialIdByMaterialCode" parameterType="string" resultType="java.math.BigDecimal">
         select MATERIAL_ID
-        from RMS_MATERIAL
-        where MATERIAL_CODE = #{materialCode}
+        from RMS_MATERIAL_STEEL
+        where MATERIAL_ONLY_CODE = #{materialOnlyCode}
     </select>
 
 </mapper>

+ 9 - 1
src/main/resources/com/steerinfo/dil/mapper/TmstruckWeightResultMapper.xml

@@ -614,7 +614,7 @@
 
 
     <!--  通过运输订单号 查询实绩Id、总实绩ID -->
-    <select id="selectTotalIdByOrderNo" parameterType="java.lang.String" resultType="java.util.Map">
+    <select id="selectTotalIdByOrderNo" parameterType="java.util.Map" resultType="java.util.Map">
         select OO.ORDER_ID               "orderId",
                OO.ORDER_TYPE             "orderTypee",
                TWR.WEIGHT_TASK_RESULT_ID "weightTaskResultId",
@@ -627,6 +627,7 @@
                  left join TMSTRUCK_WEIGHT_RESULT TWR
                            on TWR.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
         where OO.ORDER_NUMBER = #{orderNumber}
+                and TWR.MATERIAL_ID = #{materialId}
     </select>
 
     <!--  通过汽车衡编号查询对应的汽车衡ID  -->
@@ -1351,4 +1352,11 @@
         </if>
     </select>
 
+<!--  通过物资名称和物资规格查询物资ID  -->
+    <select id="getMaterialIdByMaterialNameAndSpe" parameterType="java.util.Map" resultType="java.lang.Integer">
+        select RM.MATERIAL_ID
+        from RMS_MATERIAL RM
+        where RM.MATERIAL_NAME = #{materialName} and RM.MATERIAL_SPECIFICATION = #{materialSpecification}
+    </select>
+
 </mapper>

+ 14 - 0
src/main/resources/com/steerinfo/dil/mapper/UtilsMapper.xml

@@ -42,4 +42,18 @@
         </if>
     </update>
 
+<!--   通过仓库名称查询仓库Id -->
+    <select id="queryWarehouseIdByName" parameterType="string" resultType="java.lang.Integer">
+        select RW.WAREHOUSE_ID
+        from RMS_WAREHOUSE RW
+        where RW.WAREHOUSE_NAME = #{warehouseName}
+    </select>
+
+<!--    通过月台名称查询月台Id -->
+    <select id="queryPlatformIdByName" parameterType="string" resultType="java.lang.Integer">
+        select RPP.PLATFORM_ID
+        from RMS_PWAREHOUSE_PLATFORM RPP
+        where RPP.PLATFORM_NAME = #{platformName}
+    </select>
+
 </mapper>