Browse Source

销售订单 单条同步

liuchaohui 2 years ago
parent
commit
c6e699b22d

+ 10 - 10
jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/orderData/mapper/xml/SyOrderDataMapper.xml

@@ -93,7 +93,15 @@
     </delete>
     
     <select id="queryIDBYOrderNumber" resultType="String">
-       select  case
+        select  case sum(quantity)-sum(surplus_num)
+				when 0 then sm.id else '已被参照' end as id
+        from sy_order_data sm
+        join sy_order_data_item sd
+        on sm.id=sd.sy_order_data_id
+        where sm.order_number=#{orderNumber} and sm.account=#{account}
+        GROUP BY order_number
+    </select>
+<!-- select  case
 				when (sum(sp.shipment_quantity)=0 or sum(sp.shipment_quantity) is null)
 				then sm.id else '已被参照'
 				end as id
@@ -101,13 +109,5 @@
         join sy_order_data_item sd on sm.id=sd.sy_order_data_id
         left join sy_shipping_details_item sp on sd.id=sp.sy_order_data_item_id
         where sm.order_number=#{orderNumber} and sm.account=#{account} and sp.del_flag!='1'
-        GROUP BY sm.order_number,sm.account
-    </select>
-<!-- select  case sum(quantity)-sum(surplus_num)
-				when 0 then sm.id else '已被参照' end as id
-        from sy_order_data sm
-        join sy_order_data_item sd
-        on sm.id=sd.sy_order_data_id
-        where sm.order_number=#{orderNumber}
-        GROUP BY order_number-->
+        GROUP BY sm.order_number,sm.account-->
 </mapper>

+ 16 - 22
jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/orderData/service/impl/SyOrderDataServiceImpl.java

@@ -66,16 +66,16 @@ public class SyOrderDataServiceImpl extends ServiceImpl<SyOrderDataMapper, SyOrd
         try {
             //查找单证是否有当前销售订单 如果有 默认客户进行当前订单的更新操作
             //更新数据,如为更新数据 删除老数据重新添加新数据
-            String id = syOrderDataMapper.queryIDBYOrderNumber(parameter,account);
-            String updateSql = "update so_somain set cdefine15='2'  where cSOCode = '"+parameter+"'";
-            if(id!=null){
-                if(id.equals("已被参照")){
-                    result.setMessage("销售订单已被参照!!!");
-                    return result;
-                }
-                syOrderDataMapper.deleteByID(id);
-                syOrderDataItemService.deleteByOrderID(id);
-            }
+            //String id = syOrderDataMapper.queryIDBYOrderNumber(parameter,account);
+            String updateSql = "update so_somain set cdefine15='1'  where cSOCode = '"+parameter+"'";
+//            if(id!=null){
+//                if(id.equals("已被参照")){
+//                    result.setMessage("销售订单已被参照!!!");
+//                    return result;
+//                }
+//                syOrderDataMapper.deleteByID(id);
+//                syOrderDataItemService.deleteByOrderID(id);
+//            }
 
             //查询IP及账套信息、时间戳
             QueryWrapper<DxpDataPlan> queryWrapper = new QueryWrapper<>();
@@ -138,21 +138,15 @@ public class SyOrderDataServiceImpl extends ServiceImpl<SyOrderDataMapper, SyOrd
                         " and s.cSOCode = '"+parameter+"' order by s.dDate desc ";
 
                 List<Map<String, Object>> list = new ArrayList<>();
-                if(pkorgValue[0].equals("one")){
-                    if(id!=null){
-                        senYuDataSourceOne.update(updateSql);
-                    }
+                if(account.equals("901")){
                     list = senYuDataSourceOne.queryForList(sql);
-                }else if(pkorgValue[0].equals("two")){
-                    if(id!=null){
-                        senYuDataSourceTwo.update(updateSql);
-                    }
+                    senYuDataSourceOne.update(updateSql);
+                }else if(account.equals("902")){
                     list = senYuDataSourceTwo.queryForList(sql);
-                }else if(pkorgValue[0].equals("three")){
-                    if(id!=null){
-                        senYuDataSourceThree.update(updateSql);
-                    }
+                    senYuDataSourceTwo.update(updateSql);
+                }else if(account.equals("903")){
                     list = senYuDataSourceThree.queryForList(sql);
+                    senYuDataSourceThree.update(updateSql);
                 }
 
                 for(Map<String, Object> map:list){

+ 1 - 1
jeecg-boot-module-system/src/main/java/org/jeecg/modules/quartz/job/AddOrderJob.java

@@ -139,7 +139,7 @@ public class AddOrderJob implements Job,ApplicationContextAware {
                     String id = syOrderDataService.queryIDBYOrderNumber(this.parameter,null);
                     if(id!=null){
                         syOrderDataService.deleteByID(id);
-                        syOrderDataItemService.deleteByID(id);
+                        syOrderDataItemService.deleteByOrderID(id);
                     }
                 }
                 List<Map<String, Object>> list = new ArrayList<>();