Browse Source

同步作业修改。

tangdi 2 years ago
parent
commit
ac392c2d82

+ 35 - 7
MicroServices/Business/Business.Application/SystemJobManagement/SystemJobAppService.cs

@@ -14,6 +14,7 @@ using System.Threading.Tasks;
 using Volo.Abp.Application.Services;
 using Volo.Abp.Domain.Repositories;
 using Volo.Abp.MultiTenancy;
+using WkHtmlToPdfDotNet;
 
 namespace Business.SystemJobManagement
 {
@@ -167,12 +168,12 @@ namespace Business.SystemJobManagement
         {
             try
             {
-                //SyncCustMaster();
-                //SyncSuppMaster();
+                SyncCustMaster();
+                SyncSuppMaster();
                 //SyncSalesOrdMaster();
                 //SyncSalesOrdMasterEntry();
-                //SyncItemMaster();
-                //SyncBom();
+                SyncItemMaster();
+                SyncBom();
             }
             catch (Exception ex)
             {
@@ -612,6 +613,7 @@ namespace Business.SystemJobManagement
                 custList = _itemMaster.Select(a => a.IsActive && childItems.Distinct().Contains(a.ItemNum));
             }
             List<ic_item> ItemsAdd = new List<ic_item>();
+            List<ic_item> ItemsUpd = new List<ic_item>();
             List<srm_purchase> srm_purchaseAdd = new List<srm_purchase>();
             if (custList != null && custList.Count > 0)
             {
@@ -649,9 +651,9 @@ namespace Business.SystemJobManagement
                             allowserial = custList[i].LotSerialControl ? 1 : 0,//序列号管理
                             photo = "",//图片
                             enable_warning = 1,//启用预警
-                            factory_id =long.Parse(custList[i].Domain),
+                            factory_id = long.Parse(custList[i].Domain),
                             company_id = 1000,
-                            tenant_id=1000,
+                            tenant_id = 1000,
                             IsDeleted = false,
                             clean_leadtime = custList[i].MFGMTTR,
                             is_clean = custList[i].IssuePolicy ? 1 : 0,
@@ -703,10 +705,21 @@ namespace Business.SystemJobManagement
                             IsDeleted = false
                         });*/
                     }
+                    else
+                    {
+                        ic_item.name = custList[i].Descr;
+                        ic_item.model = custList[i].Descr1;//规格型号
+                        ic_item.fversion = "";//版本号
+                        ic_item.erp_cls = custList[i].PurMfg == "P" ? 3 : 1;//物料属性
+                        ic_item.erp_cls_name = custList[i].PurMfg == "P" ? "外购" : "自制";//物料属性名称
+                        ic_item.unit = custList[i].UM;//单位
+                        ic_item.clean_leadtime = custList[i].MFGMTTR;
+                        ItemsUpd.Add(ic_item);
+                    }
                 }
             }
             _businessDbContext.BulkInsert(ItemsAdd);
-            //_businessDbContext.BulkInsert(srm_purchaseAdd);
+            _mysql_ic_item.UpdateManyAsync(ItemsUpd);
         }
 
         public void SyncBom()
@@ -717,6 +730,7 @@ namespace Business.SystemJobManagement
             List<ProductStructureMaster> wmsBomList = _productStructureMaster.Select(a => a.IsActive);
             List<ic_bom> ItemsAdd = new List<ic_bom>();
             List<ic_bom_child> childItemsAdd = new List<ic_bom_child>();
+            List<ic_bom_child> childItemsUpd = new List<ic_bom_child>();
             if (wmsBomList != null && wmsBomList.Count > 0)
             {
                 var ItemMasterDS = wmsBomList.Select(a => a.ParentItem).Distinct().ToList();
@@ -810,6 +824,19 @@ namespace Business.SystemJobManagement
                                 };
                                 childItemsAdd.Add(bomchild);
                             }
+                            else
+                            {
+                                icbomchild.qty = child.Qty;
+                                icbomchild.erp_cls = itemchild == null ? 2 : itemchild.erp_cls;
+                                icbomchild.begin_day = child.StartEff;
+                                icbomchild.end_day = child.EndEff;
+                                icbomchild.version = child.Refs;
+                                icbomchild.factory_id = item.factory_id;
+                                icbomchild.company_id = item.company_id;
+                                icbomchild.tenant_id = item.company_id;
+                                icbomchild.Op = child.Op;
+                                childItemsUpd.Add(icbomchild);
+                            }
                         }
                     }
 
@@ -817,6 +844,7 @@ namespace Business.SystemJobManagement
                 }
                 _businessDbContext.BulkInsert(ItemsAdd);
                 _businessDbContext.BulkInsert(childItemsAdd);
+                _mysql_ic_bom_child.UpdateManyAsync(childItemsUpd);
             }
         }