luobang 2 years ago
parent
commit
9cd753b6c5

+ 15 - 2
src/main/java/com/steerinfo/dil/service/impl/AmsSaleOrderServiceImpl.java

@@ -146,21 +146,30 @@ public class AmsSaleOrderServiceImpl implements IAmsSaleOrderService {
         // 判断是删除还是非删除
         String closeStatus = (String) mapVal.get("closeStatus");
         List<AmsSaleOrder> amsSaleOrders = amsSaleOrderMapper.selectByParameters(map);
+        //获取用户名以及流向
+        Object userName = mapVal.get("userName");
+        Object dataDirection = mapVal.get("dataDirection");
         // 关闭分录
         Object closeEntryId = mapVal.get("closeEntryId");
         // 反关闭分录
         Object unCloseEntryId = mapVal.get("unCloseEntryId");
         // 关闭原因
         Object reason = mapVal.get("reason");
+        String insertUpdateRemark = null;
         // 是否整单
         Object wholeOrder = mapVal.get("wholeOrder");
         // 关闭副产品整个订单
         if (closeStatus.equals("-1") && "1".equals(wholeOrder) && amsSaleOrders.size() != 0 && amsSaleOrders.get(0) != null) {
             AmsSaleOrder amsSaleOrder = amsSaleOrders.get(0);
             amsSaleOrder.setDeleted(new BigDecimal(2));
+            amsSaleOrder.setInsertUpdateRemark("关闭销售订单整单");
             if (reason != null) {
                 amsSaleOrder.setInsertUpdateRemark(reason.toString());
             }
+            if (userName != null){
+                insertUpdateRemark = userName + amsSaleOrder.getInsertUpdateRemark() + "关闭销售订单整单";
+                amsSaleOrder.setInsertUpdateRemark(insertUpdateRemark);
+            }
             result += amsSaleMaterialMapper.closeAllSaleMaterial(amsSaleOrder.getSaleOrderId());
             result += amsSaleOrderMapper.updateByPrimaryKeySelective(amsSaleOrder);
             List<Map<String, Object>> warehouseList = amsSaleOrderMapper.getWareHouse(amsSaleOrder.getSaleOrderId());
@@ -171,10 +180,9 @@ public class AmsSaleOrderServiceImpl implements IAmsSaleOrderService {
                 }
             }
             //如果是钢材订单
-            if(amsSaleOrder.getSaleType().intValue() == 1){
+            if(amsSaleOrder.getSaleType() != null && amsSaleOrder.getSaleType().intValue() == 1){
                 //获取该钢材销售订单下所有的运输订单ID,状态
                 result += amsSaleOrderMapper.closeOrderNotIn(amsSaleOrder.getSaleOrderId());
-
             }
         }
         // 关闭单个分录订单
@@ -259,6 +267,11 @@ public class AmsSaleOrderServiceImpl implements IAmsSaleOrderService {
         if (closeStatus.equals("0")) {
             AmsSaleOrder amsSaleOrder = amsSaleOrders.get(0);
             amsSaleOrder.setDeleted(new BigDecimal(1));
+            amsSaleOrder.setInsertUpdateRemark("反审批销售订单");
+            if(userName != null) {
+                insertUpdateRemark = userName + "反审批销售订单";
+                amsSaleOrder.setInsertUpdateRemark(insertUpdateRemark);
+            }
             result += amsSaleOrderMapper.updateByPrimaryKeySelective(amsSaleOrder);
             //反审的订单需将下面的运输订单关闭
             try {

+ 3 - 0
src/main/resources/com/steerinfo/dil/mapper/AmsSaleOrderMapper.xml

@@ -1114,9 +1114,12 @@
                        ON TTR.ORDER_ID = OO.ORDER_ID
              LEFT JOIN TMSTRUCK_ENFACTORY_RESULT TER
                        ON TER.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
+             LEFT JOIN TMSTRUCK_WEIGHT_RESULT TWR
+                       ON TWR.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
       WHERE ASOM.SALE_ORDER_ID = #{saleOrderId}
         AND OO.ORDER_ID IS NOT NULL
         AND OO.ORDER_STATUS BETWEEN 4 AND 5
+        AND TWR.RESULT_NET_WEIGHT IS NULL
         AND OO.ORDER_TYPE BETWEEN 1 AND 2)
   </update>