Ver código fonte

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

zx 2 anos atrás
pai
commit
bfdd3362fd

+ 12 - 3
src/main/java/com/steerinfo/dil/controller/TmstrainLoadingResultController.java

@@ -117,7 +117,7 @@ public class TmstrainLoadingResultController extends BaseRESTfulController {
     /**
      * 通过主键修改车皮装车作业实绩
      *
-     * @param tmstrainLoadingResult
+     * @param map
      * @return
      */
     @ApiOperation(value = "通过主键修改车皮装车作业实绩")
@@ -125,8 +125,17 @@ public class TmstrainLoadingResultController extends BaseRESTfulController {
             @ApiImplicitParam(name = "tmstrainLoadingResult", value = "修改车皮装车map", required = false, dataType = "TmstrainWagonLoadResult")
     })
     @PostMapping(value = "/upadteTmstrainLoadingResultByResultId")
-    public RESTfulResult upadteTmstrainLoadingResultByResultId(@RequestBody(required = false) TmstrainLoadingResult tmstrainLoadingResult) throws Exception {
-        int i = tmstrainLoadingResultService.updateTmstrainLoadingResult(tmstrainLoadingResult);
+    public RESTfulResult upadteTmstrainLoadingResultByResultId(@RequestBody(required = false) Map<String,Object> map) throws Exception {
+        int i = tmstrainLoadingResultService.updateTmstrainLoadingResult(map);
+        if (i==-1){
+            return  failed("车皮号异常");
+        }else if(i==-2){
+            return  failed("主键异常");
+        }else if(i==-3){
+            return  failed("类型异常");
+        }else if(i==-4){
+            return  failed("采购订单号异常");
+        }
         return success(i);
     }
 

+ 6 - 0
src/main/java/com/steerinfo/dil/mapper/TmstrainLoadingResultMapper.java

@@ -60,6 +60,12 @@ public interface TmstrainLoadingResultMapper extends IBaseMapper<TmstrainLoading
     //通过采购订单Id查询批次Id
     BigDecimal getBatchIdByPurOrderId(BigDecimal purchaseOrderId);
 
+    //通过采购订单号查询批次id
+    BigDecimal getBatchIdByPurOrderNo(String purchaseOrderNo);
+
+    //通过采购订单号查询id
+    BigDecimal getPurchaseOrderIdByPurOrderNo(String purchaseOrderNo);
+
     //通过采购订单Id查询批次、物资id、承运商id等补录信息
     Map<String, Object> getRecordByPurOrderId(BigDecimal purchaseOrderId);
 

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

@@ -42,7 +42,7 @@ public interface ITmstrainLoadingResultService{
     List<Map<String, Object>> getTmstrainLoadingResultByResultId(BigDecimal resultId);
 
     //修改车皮装车作业实绩
-    int updateTmstrainLoadingResult(TmstrainLoadingResult tmstrainLoadingResult) throws Exception;
+    int updateTmstrainLoadingResult(Map<String, Object> map) throws Exception;
 
     //通过主键删除车皮装车作业实绩
     int deleteTmstrainLoadingResultByResultId(BigDecimal resultId);

+ 68 - 22
src/main/java/com/steerinfo/dil/service/impl/TmstrainLoadingResultServiceImpl.java

@@ -346,33 +346,79 @@ public class TmstrainLoadingResultServiceImpl implements ITmstrainLoadingResultS
 
     /**
      * 修改火运装车实绩
-     * @param tmstrainLoadingResult
+     * @param map
      * @return
      */
     @Override
-    public int updateTmstrainLoadingResult(TmstrainLoadingResult tmstrainLoadingResult) throws Exception{
-        String wagonNo=tmstrainLoadingResult.getResultWagonNo();
-        if(wagonNo!=null && wagonNo.length()!=7){
-            throw new Exception("车皮号异常");
+    public int updateTmstrainLoadingResult(Map<String,Object> map) throws Exception{
+        TmstrainLoadingResult tmstrainLoadingResult=new TmstrainLoadingResult();
+        String wagonNo=map.get("resultWagonNo").toString();
+        BigDecimal resultId=DataChange.dataToBigDecimal(map.get("resultId"));
+        Integer resultType=(Integer) map.get("resultType");
+        if(wagonNo==null || wagonNo.length()!=7 || calculateWagonWeight(wagonNo)<=0){
+            return  -1;
+        }else if(resultId==null){
+            return  -2;
+        }else if(resultType==0){
+            return -3;
         }
-        //通过采购订单号获得批次ID
-        BigDecimal purchaseOrderId = tmstrainLoadingResult.getPurchaseOrderRailPlanId();
-        BigDecimal batchId = tmstrainLoadingResultMapper.getBatchIdByPurOrderId(purchaseOrderId);
-        tmstrainLoadingResult.setBatchId(batchId);
-        System.out.println(tmstrainLoadingResult);
-        //新增完成,发送计量委托
-//        if(resultIdList.size()==wagonNoList.size())
-//            Map<String, Object> map = new HashMap<>();
-//            map.put("resultIdList",resultIdList);
-//            int i = tmstrainMeasureCommissionService.batchSendMeasureCommission(map);
-//            if(i==-1){
-//                return i;
-//            }
-//        }else{
-//            return -1;
-//        }
+        //国产矿未配单仅支持修改部分字段,并且不重新发委托
+        List<Map<String,Object>> results=tmstrainLoadingResultMapper.selectByResultId(resultId);
+        if(resultType==3 && results!=null && results.get(0)!=null && results.get(0).get("purchaseOrderRainPlanId")==null){
+            tmstrainLoadingResult.setResultId(resultId);
+            tmstrainLoadingResult.setResultWagonNo(wagonNo);
+            tmstrainLoadingResult.setSendStationId(DataChange.dataToBigDecimal(map.get("sendStationId")));
+            tmstrainLoadingResult.setArrivalStationId(DataChange.dataToBigDecimal(map.get("arrivalStationId")));
+            tmstrainLoadingResult.setResultLoadingDate(new Date((Long)map.get("resultLoadingDate")));
+            if(map.get("resultRemarks")!=null)
+                tmstrainLoadingResult.setResultRemarks(map.get("resultRemarks").toString());
+            tmstrainLoadingResultMapper.updateByPrimaryKeySelective(tmstrainLoadingResult);
+            return -5;
+        }
+        //进口矿字段
+        if(resultType!=3){
+            if(map.get("resultClass")!=null)
+                tmstrainLoadingResult.setResultClass(map.get("resultClass").toString());
+            if(map.get("resultIsclear")!=null)
+                tmstrainLoadingResult.setResultIsclear(map.get("resultIsclear").toString());
+            if(map.get("capacityId")!=null)
+                tmstrainLoadingResult.setCapacityId(DataChange.dataToBigDecimal(map.get("capacityId")));
+            if(map.get("resultBillableTonnage")!=null)
+                tmstrainLoadingResult.setCapacityId(DataChange.dataToBigDecimal(map.get("resultBillableTonnage")));
+        }
+        //通过采购订单号查询获得采购订单ID、批次ID
+        if(map.get("purchaseOrderNo")!=null){
+            String purchaseOrderNo = map.get("purchaseOrderNo").toString() ;
+            BigDecimal purchaseOrderId = tmstrainLoadingResultMapper.getPurchaseOrderIdByPurOrderNo(purchaseOrderNo);
+            BigDecimal batchId = tmstrainLoadingResultMapper.getBatchIdByPurOrderNo(purchaseOrderNo);
+            if(purchaseOrderId==null || batchId==null){
+                return  -4;
+            }
+            tmstrainLoadingResult.setBatchId(batchId);
+            tmstrainLoadingResult.setPurchaseOrderRailPlanId(purchaseOrderId);
+        }
+        //设置其他字段
+        tmstrainLoadingResult.setResultId(resultId);
+        tmstrainLoadingResult.setResultWagonNo(wagonNo);
+        tmstrainLoadingResult.setSendStationId(DataChange.dataToBigDecimal(map.get("sendStationId")));
+        tmstrainLoadingResult.setArrivalStationId(DataChange.dataToBigDecimal(map.get("arrivalStationId")));
+        tmstrainLoadingResult.setResultLoadingDate(new Date((Long)map.get("resultLoadingDate")));
+        if(map.get("resultRemarks")!=null)
+            tmstrainLoadingResult.setResultRemarks(map.get("resultRemarks").toString());
         tmstrainLoadingResult.setUpdateTime(new Date());
-        return tmstrainLoadingResultMapper.updateByPrimaryKeySelective(tmstrainLoadingResult);
+        //更新
+        int count=tmstrainLoadingResultMapper.updateByPrimaryKeySelective(tmstrainLoadingResult);
+        //更新完成,发送计量委托
+        if(count > 0){
+            List<Map<String, Object>> resultIdList = new ArrayList<>();
+            Map<String, Object> map1 = new HashMap<>();
+            Map<String, Object> map2 = new HashMap<>();
+            map1.put("resultId",resultId);
+            resultIdList.add(map1);
+            map2.put("resultIdList",resultIdList);
+            tmstrainMeasureCommissionService.batchSendMeasureCommission(map2);
+        }
+        return count;
     }
 
     /**

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

@@ -149,10 +149,10 @@ public class TmstrainWagonUnloadResultServiceImpl implements ITmstrainWagonUnloa
      */
     public int updateLoadingResult(Map<String, Object> map) throws Exception {
         //添加一条卸货实绩 修改装车状态为已卸车 2
-        TmstrainLoadingResult tmstrainLoadingResult = new TmstrainLoadingResult();
-        tmstrainLoadingResult.setResultId(DataChange.dataToBigDecimal(map.get("resultId")));
-        tmstrainLoadingResult.setDeleted(new BigDecimal(2));
-        return tmstrainLoadingResultService.updateTmstrainLoadingResult(tmstrainLoadingResult);
+//        TmstrainLoadingResult tmstrainLoadingResult = new TmstrainLoadingResult();
+//        tmstrainLoadingResult.setResultId(DataChange.dataToBigDecimal(map.get("resultId")));
+        map.put("deleted",new BigDecimal(2));
+        return tmstrainLoadingResultService.updateTmstrainLoadingResult(map);
     }
 
     /**

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

@@ -873,6 +873,9 @@
     where DB.BATCH_ID = #{batchId}
   </select>
 
+
+
+
   <select id="getSendStationName" resultType="java.util.LinkedHashMap">
     select
       ARRIVAL_ID "id",
@@ -1189,13 +1192,27 @@
     where TTTR.TMSTRUCK_TOTAL_RESULT_ID = #{resultTotalId}
   </select>
 
-  <!-- 通过批次Id查询订单ID -->
+  <!-- 通过订单ID查询批次Id -->
   <select id="getBatchIdByPurOrderId" parameterType="java.math.BigDecimal" resultType="java.math.BigDecimal">
     select APO.BATCH_ID
     from AMS_PURCHASE_ORDER APO
     where APO.PURCHASE_ORDER_ID = #{purchaseOrderId}
   </select>
 
+  <!-- 通过订单No查询批次Id -->
+  <select id="getBatchIdByPurOrderNo"  parameterType="java.util.Map" resultType="java.math.BigDecimal">
+    select APO.BATCH_ID
+    from AMS_PURCHASE_ORDER APO
+    where APO.PURCHASE_ORDER_NO = #{purchaseOrderNo}
+  </select>
+
+  <!-- 通过订单No查询订单Id -->
+  <select id="getPurchaseOrderIdByPurOrderNo" resultType="java.math.BigDecimal">
+    select APO.PURCHASE_ORDER_ID
+    from AMS_PURCHASE_ORDER APO
+    where APO.PURCHASE_ORDER_NO = #{purchaseOrderNo}
+  </select>
+
   <!-- 通过采购订单Id查询批次、物资id、承运商id等补录信息 -->
   <select id="getRecordByPurOrderId" parameterType="java.math.BigDecimal" resultType="java.util.Map">
     SELECT