liyg 2 gadi atpakaļ
vecāks
revīzija
0ef0073f42

+ 4 - 2
src/main/java/com/steerinfo/dil/controller/OffSiteTransportationController.java

@@ -281,6 +281,8 @@ public class OffSiteTransportationController extends BaseRESTfulController {
         map.putAll(value);
         //添加入库实绩
         Integer resTfulResult = offSiteTransportationService.addTmstruckReceiptResult(map);
+        //关闭运输订单
+        offSiteTransportationService.orderClose(orderNumber);
         if (resTfulResult!=4){
             //保存路线
             String redisJson = (String) redisTemplate.opsForValue().get(prefixOrder+":"+orderNumber);
@@ -342,8 +344,8 @@ public class OffSiteTransportationController extends BaseRESTfulController {
                 }
 
             }
-            //关闭运输订单
-            offSiteTransportationService.orderClose(orderNumber);
+        }else{
+            System.out.println("没有抵达实绩");
         }
 
 

+ 2 - 8
src/main/java/com/steerinfo/dil/controller/TmstruckReceiptResultController.java

@@ -179,15 +179,9 @@ public class TmstruckReceiptResultController extends BaseRESTfulController {
 
     @ApiOperation(value = "获取抵达作业照片")
     @PostMapping("/getArrivalPhoto")
-    public RESTfulResult getArrivalPhoto(@RequestParam String orderNumber){
+    public String getArrivalPhoto(@RequestParam String orderNumber){
         String receiptPhoto = tmstruckReceiptResultService.getReceiptPhoto(orderNumber);
-        String photo =null;
-        try {
-            photo = imageFileUtils.downloadFile(receiptPhoto).toString();
-        } catch (Exception e) {
-            e.printStackTrace();
-        }
-        return success(photo);
+        return receiptPhoto;
     }
 
     @ApiOperation(value="展示收货实绩信息")

+ 1 - 0
src/main/java/com/steerinfo/dil/service/impl/OffSiteTransportationServiceImpl.java

@@ -244,6 +244,7 @@ public class OffSiteTransportationServiceImpl implements OffSiteTransportationSe
     public Integer addTmstruckReceiptResult(@RequestBody(required = false) Map<String,Object> map){
         BigDecimal alreadyExistsArrivalResult = tmstruckArrivalResultMapper.alreadyExistsArrivalResult((String) map.get("orderNumber"));
         if(alreadyExistsArrivalResult!=null){
+            //删除所有入库时机
             TmstruckReceiptResult tmstruckReceiptResult = new TmstruckReceiptResult();
             //获取运输订单号和收货点地址
             String orderNumber = (String) map.get("orderNumber");

+ 2 - 0
src/main/java/com/steerinfo/dil/service/impl/TmstruckReceiptResultServiceImpl.java

@@ -52,6 +52,8 @@ public class TmstruckReceiptResultServiceImpl implements ITmstruckReceiptResultS
         }else {
             id = tmstruckReceiptResultMapper.selectMaxId().longValue()+1;
         }
+        //删除旧的所有实绩
+        tmstruckArrivalResultMapper.deleteAllReceipt(orderNumber);
         //生成主键id
         tmstruckReceiptResult.setResultId(new BigDecimal(id));
         //获取并插入总实绩Id

+ 2 - 4
src/main/java/com/steerinfo/route/controller/TmstruckArrivalResultController.java

@@ -70,12 +70,10 @@ public class TmstruckArrivalResultController extends BaseRESTfulController {
     }
 
     @PostMapping(value = "/addtmstruckArrivalResult")
-    public RESTfulResult addtmstruckArrivalResult(String orderNumber, String resultArrivalAddress, MultipartFile file) throws Exception {
-
-        String url = imageFileUtils.updateFile(file);
+    public RESTfulResult addtmstruckArrivalResult(String orderNumber, String resultArrivalAddress, String file) throws Exception {
         TmstruckArrivalResult tmstruckArrivalResult = new TmstruckArrivalResult();
         tmstruckArrivalResult.setResultArrivalAddress(resultArrivalAddress);
-        tmstruckArrivalResult.setResultFullContainerPhoto(url);
+        tmstruckArrivalResult.setResultFullContainerPhoto(file);
         int i = tmstruckArrivalResultService.addtmstruckArrivalResult(orderNumber,tmstruckArrivalResult);
         return success(i);
 

+ 6 - 0
src/main/java/com/steerinfo/route/mapper/TmstruckArrivalResultMapper.java

@@ -27,4 +27,10 @@ public interface TmstruckArrivalResultMapper extends IBaseMapper<TmstruckArrival
 
     //通过运输订单号获取总实绩Id
     BigDecimal getTotalIdByOrderNumber(String capacityNumber);
+
+    //删除订单所有抵达实绩
+    int deleteAllArrival(String orderNumber);
+
+    //删除所有订单签收实绩
+    int deleteAllReceipt(String orderNumber);
 }

+ 19 - 24
src/main/java/com/steerinfo/route/service/impl/TmstruckArrivalResultServiceImpl.java

@@ -56,31 +56,26 @@ public class TmstruckArrivalResultServiceImpl implements ITmstruckArrivalResultS
 
     @Override
     public synchronized int addtmstruckArrivalResult(String orderNumber, TmstruckArrivalResult tmstruckArrivalResult) {
-        //通过运输订单号查询是否已存在抵达实绩
-        BigDecimal alreadyExistsArrivalResult = tmstruckArrivalResultMapper.alreadyExistsArrivalResult(orderNumber);
-        if(alreadyExistsArrivalResult==null){
-            long id;
-            if(tmstruckArrivalResultMapper.selectMaxId()==null){
-                id = 1;
-            }else {
-                id = tmstruckArrivalResultMapper.selectMaxId().longValue()+1;
-            }
-            //生成主键id
-            tmstruckArrivalResult.setResultId(new BigDecimal(id));
-            //获取并插入总实绩Id
-            BigDecimal truckTotalId = tmstruckArrivalResultMapper.getTotalIdByOrderNumber(orderNumber);
-            tmstruckArrivalResult.setResultTotalId(truckTotalId);
-            //常规字段
-            tmstruckArrivalResult.setInsertUsername("admin");
-            tmstruckArrivalResult.setInsertTime(new Date());
-            tmstruckArrivalResult.setUpdateUsername("admin");
-            tmstruckArrivalResult.setUpdateTime(new Date());
-            tmstruckArrivalResult.setInsertUpdateRemark("无");
-            return tmstruckArrivalResultMapper.insert(tmstruckArrivalResult);
-        }else{
-            return 3;
+        //先删除实绩,保证可以插入
+        int  deleteNumber=tmstruckArrivalResultMapper.deleteAllArrival(orderNumber);
+        long id;
+        if(tmstruckArrivalResultMapper.selectMaxId()==null){
+            id = 1;
+        }else {
+            id = tmstruckArrivalResultMapper.selectMaxId().longValue()+1;
         }
-
+        //生成主键id
+        tmstruckArrivalResult.setResultId(new BigDecimal(id));
+        //获取并插入总实绩Id
+        BigDecimal truckTotalId = tmstruckArrivalResultMapper.getTotalIdByOrderNumber(orderNumber);
+        tmstruckArrivalResult.setResultTotalId(truckTotalId);
+        //常规字段
+        tmstruckArrivalResult.setInsertUsername("admin");
+        tmstruckArrivalResult.setInsertTime(new Date());
+        tmstruckArrivalResult.setUpdateUsername("admin");
+        tmstruckArrivalResult.setUpdateTime(new Date());
+        tmstruckArrivalResult.setInsertUpdateRemark("无");
+        return tmstruckArrivalResultMapper.insert(tmstruckArrivalResult);
     }
 
     @Override

+ 31 - 2
src/main/resources/com/steerinfo/route/mapper/TmstruckArrivalResultMapper.xml

@@ -341,6 +341,7 @@
       #{id}
     </foreach>
   </delete>
+
   <!-- 友情提示!!!-->
   <!-- 请将自己写的代码放在此标签之下,方便以后粘贴复制。-->
 
@@ -525,11 +526,11 @@
       SELECT distinct ADDRESS_DISTRICT FROM RMS_RECEIVE_ADDRESS where ADDRESS_TOWN is null
     </select>
   <select id="getTotalIdByOrderNumber" resultType="java.math.BigDecimal">
-        select RESULT_TOTAL_ID "totalId"
+        select MAX(RESULT_TOTAL_ID) "totalId"
         from TMSTRUCK_TOTAL_RESULT t_total
                left join OMSTRUCK_ORDER o_order
                          on t_total.ORDER_ID=o_order.ORDER_ID
-        where o_order.ORDER_NUMBER = #{orderNumber} and o_order.ORDER_STATUS=5
+        where o_order.ORDER_NUMBER = #{orderNumber}
   </select>
   
   
@@ -541,4 +542,32 @@
       </if>
     </if>
   </sql>
+
+  <delete id="deleteAllArrival">
+    DELETE
+    FROM TMSTRUCK_ARRIVAL_RESULT
+    WHERE RESULT_ID IN (
+            select distinct t_arrival.RESULT_ID
+            from TMSTRUCK_ARRIVAL_RESULT t_arrival
+                   left join TMSTRUCK_TOTAL_RESULT t_total
+                             on t_arrival.RESULT_TOTAL_ID = t_total.RESULT_TOTAL_ID
+                   left join OMSTRUCK_ORDER o_torder
+                             on t_total.ORDER_ID = o_torder.ORDER_ID
+            where o_torder.ORDER_NUMBER = #{orderNumber}
+          )
+  </delete>
+
+  <delete id="deleteAllReceipt">
+    DELETE
+    FROM TMSTRUCK_RECEIPT_RESULT
+    WHERE RESULT_ID IN (
+      select distinct TRR.RESULT_ID
+      from TMSTRUCK_RECEIPT_RESULT TRR
+             left join TMSTRUCK_TOTAL_RESULT TTR
+                       on TRR.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
+             left join OMSTRUCK_ORDER OO
+                       on TTR.ORDER_ID = OO.ORDER_ID
+      where OO.ORDER_NUMBER = #{orderNumber}
+    )
+  </delete>
 </mapper>