zx 2 lat temu
rodzic
commit
b64089493f

+ 3 - 0
src/main/java/com/steerinfo/dil/controller/AmsSaleOrderController.java

@@ -47,6 +47,9 @@ public class AmsSaleOrderController extends BaseRESTfulController {
         int input=0;
         try{
             input = amsSaleOrderService.addInwardSteelOrder(map);
+            if (input==-1){
+                return success("物流系统已经存在下游单据,不能再反审核");
+            }
         }catch (Exception e){
             return  failed(e.getMessage());
         }

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

@@ -46,7 +46,7 @@ public interface AmsSaleOrderMapper extends IBaseMapper<AmsSaleOrder, BigDecimal
     List<Map<String,Object>> selectAmssaleOrderId(String saleNumber);
 
     //判断数据是否于AMS_SALE_ORDER_MATERIAL
-    List<Map<String,Object>> selectAreadyUse(String saleNumber);
+    BigDecimal selectAreadyUse(String saleNumber);
 
 
 

+ 16 - 12
src/main/java/com/steerinfo/dil/service/impl/AmsSaleOrderServiceImpl.java

@@ -514,6 +514,9 @@ public class AmsSaleOrderServiceImpl implements IAmsSaleOrderService {
         String businessType =(String) map.get("businessType");
         //判断销售订单是否存在
         BigDecimal saleOrderNumber = amsSaleOrderMapper.selectAmsSaleOrderNum(saleNumber);
+        if (saleOrderNumber==null&&transferInDep==null){
+            return 1;
+        }
         //如果销售订单不存在
         if (saleOrderNumber==null){
             AmsSaleOrder amsSaleOrder = new AmsSaleOrder();
@@ -672,20 +675,21 @@ public class AmsSaleOrderServiceImpl implements IAmsSaleOrderService {
             AmsSaleOrder amsSaleOrder=new AmsSaleOrder();
             //此处判断订单状态为反审核
             if (closeStatus.equals("0")&&orderStatus.equals("5")) {
-            //amsSaleOrder.setSaleOrderId(saleOrderNumber);
-            // amsSaleOrder.setDeleted(new BigDecimal(1));
                 //删除销售订单以及销售订单分录(没有下游单据的)
                 List<Map<String, Object>> mapList = amsSaleOrderMapper.selectAmssaleOrderId(saleNumber);
-                List<Map<String, Object>> mapList1 = amsSaleOrderMapper.selectAreadyUse(saleNumber);
-                List<Map<String, Object>> reduce1 = mapList.stream().filter(item -> !mapList1.contains(item)).collect(toList());
-                for (Map<String,Object> IdMap:reduce1){
-                    BigDecimal saleOrderId =DataChange.dataToBigDecimal( IdMap.get("saleOrderId"));
-                    BigDecimal saleOrderMaterialId =DataChange.dataToBigDecimal(IdMap.get("saleOrderMaterialId"));
-                    //删除销售订单id
-                    int i = amsSaleOrderMapper.deleteByPrimaryKey(saleOrderId);
-                    //删除销售订单
-                    i+=amsSaleMaterialMapper.deleteByPrimaryKey(saleOrderMaterialId);
-                    return i;
+                BigDecimal selectAreadyUse = amsSaleOrderMapper.selectAreadyUse(saleNumber);
+                if (selectAreadyUse==null) {
+                    for (Map<String, Object> IdMap : mapList) {
+                        BigDecimal saleOrderId = DataChange.dataToBigDecimal(IdMap.get("saleOrderId"));
+                        BigDecimal saleOrderMaterialId = DataChange.dataToBigDecimal(IdMap.get("saleOrderMaterialId"));
+                        //删除销售订单id
+                        int i = amsSaleOrderMapper.deleteByPrimaryKey(saleOrderId);
+                        //删除销售订单
+                        i += amsSaleMaterialMapper.deleteByPrimaryKey(saleOrderMaterialId);
+                        return i;
+                    }
+                }else {
+                    return -1;
                 }
             }
             if (orderStatus.equals("2")){

+ 1 - 1
src/main/resources/application-prod.yml

@@ -9,7 +9,7 @@ spring:
 
 openfeign:
   OmsFeign:
-    url: ${OMSFEIGN_URL:localhost:8095}
+    url: ${OMSFEIGN_URL:172.16.33.166:8095}
   imFeign:
     url: ${IMFEIGN_URL:172.16.33.166:8055}
   TmsTruckFeign:

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

@@ -1040,9 +1040,8 @@
    where ASO.SALE_NUMBER=#{saleNumber}
   </select>
   
-  <select id="selectAreadyUse" parameterType="java.lang.String" resultType="java.util.Map">
-    select ASO.SALE_ORDER_ID "saleOrderId"
-
+  <select id="selectAreadyUse" parameterType="java.lang.String" resultType="java.math.BigDecimal">
+    select distinct ASO.SALE_ORDER_ID
     from AMS_SALE_ORDER_MATERIAL ASOM
     LEFT JOIN AMS_SALE_ORDER ASO
     ON ASO.SALE_ORDER_ID = ASOM.SALE_ORDER_ID