Parcourir la source

钢材订单修改车号时保留排队记录

shxiaoc il y a 11 mois
Parent
commit
c7d3ba88aa

+ 2 - 0
src/main/java/com/steerinfo/dil/mapper/OmstruckOrderMapper.java

@@ -92,4 +92,6 @@ public interface OmstruckOrderMapper extends IBaseMapper<OmstruckOrder, BigDecim
 
     String getPassthrough(BigDecimal resultTotalId);
 
+    BigDecimal getListId(BigDecimal listId);
+
 }

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

@@ -2400,7 +2400,12 @@ public class AmsSaleOrderServiceImpl implements IAmsSaleOrderService {
                     //将排队信息删掉
                     // 修改车牌号后保留原排队记录2024年4月23日10:28:53
                     Map<String, Object> isSpellingMap = omstruckOrderMapper.getSteelIsSpelling(DataChange.dataToBigDecimal(mapValue.get("orderId")));
+                    //查看是存在排队记录
+                    BigDecimal listId = null;
                     if(isSpellingMap != null && isSpellingMap.get("listId") != null){
+                        listId = omstruckOrderMapper.getListId(DataChange.dataToBigDecimal(isSpellingMap.get("listId")));
+                    }
+                    if(listId != null && listId.longValue() > 0){
                         /**
                         int isSpelling = DataChange.dataToBigDecimal(isSpellingMap.get("isSpelling")).intValue();
                         if(isSpelling == 1 ){
@@ -2423,6 +2428,10 @@ public class AmsSaleOrderServiceImpl implements IAmsSaleOrderService {
                         if(isSpelling != 1 ){
                             result += omstruckOrderMapper.updateCapacityIdByQueueList(isSpellingMap);
                         }
+                    } else {
+                         if (resultTotalId != null && resultTotalId.longValue() > 0) {
+                             omstruckOrderMapper.deleteQueuingPerformance(resultTotalId);
+                         }
                     }
                     //若是接单之后还需要删除实绩且将状态变为4
                     //删除排队实绩

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

@@ -1083,7 +1083,8 @@
     <select id="getSteelIsSpelling" resultType="java.util.Map" parameterType="java.math.BigDecimal">
         select LIST_ID  "listId",
                IS_SPELLING "isSpelling",
-               RESULT_ID    "resultId"
+               RESULT_ID    "resultId",
+               RESULT_TOTAL_ID "resultTotalId"
         from QMS_QUEUE_RESULT where RESULT_TOTAL_ID = (select ttr.RESULT_TOTAL_ID from TMSTRUCK_TOTAL_RESULT ttr where ttr.ORDER_ID = #{orderId})
     </select>
 
@@ -1236,4 +1237,12 @@
         FROM TMSTRUCK_ENFACTORY_RESULT t
         WHERE t.RESULT_TOTAL_ID = #{resultTotalId}
     </select>
+
+    <select id="getListId" resultType="java.math.BigDecimal" parameterType="java.math.BigDecimal">
+        SELECT t.LIST_ID as listId FROM QMS_QUEUE_LIST t
+        WHERE t.LIST_ID  = #{listId}
+        union all
+        SELECT t.SPELLING_RESULT_ID AS listId  FROM QMS_QUEUE_SPELLING_LIST t
+        WHERE t.SPELLING_RESULT_ID = #{listId}
+    </select>
 </mapper>