|
|
@@ -599,19 +599,10 @@ namespace Business.SystemJobManagement
|
|
|
//同步物料
|
|
|
public void SyncItemMaster()
|
|
|
{
|
|
|
- bool isAll = true;//是否同步所有物料
|
|
|
+ //bool isAll = true;//是否同步所有物料
|
|
|
var ic_itemList = _mysql_ic_item.GetListAsync().Result;
|
|
|
List<ItemMaster> custList = new List<ItemMaster>();
|
|
|
- if (isAll)
|
|
|
- {
|
|
|
- custList = _itemMaster.Select(a => a.IsActive);
|
|
|
- }
|
|
|
- else
|
|
|
- {
|
|
|
- //格努产品编码同步子级物料
|
|
|
- List<string> childItems = GetChildItemNumber("", new List<string>());
|
|
|
- custList = _itemMaster.Select(a => a.IsActive && childItems.Distinct().Contains(a.ItemNum));
|
|
|
- }
|
|
|
+ custList = _itemMaster.Select(a => a.IsActive);
|
|
|
List<ic_item> ItemsAdd = new List<ic_item>();
|
|
|
List<ic_item_stock> stockAdd = new List<ic_item_stock>();
|
|
|
List<ic_item> ItemsUpd = new List<ic_item>();
|
|
|
@@ -791,8 +782,8 @@ namespace Business.SystemJobManagement
|
|
|
if (icbom == null)
|
|
|
{
|
|
|
long domain = Convert.ToInt64(ItemList.First().Domain);
|
|
|
- long factory_id = domain % 1000;
|
|
|
- long tenant_id = domain - factory_id;
|
|
|
+ long factory_id = domain % 8010;
|
|
|
+ //long tenant_id = domain - factory_id;
|
|
|
var bom = new ic_bom(help.NextId())
|
|
|
{
|
|
|
bom_number = c,
|
|
|
@@ -832,7 +823,8 @@ namespace Business.SystemJobManagement
|
|
|
IsDeleted = false,
|
|
|
Op = child.Op,
|
|
|
use_status = 1,
|
|
|
- scrap = child.Scrap
|
|
|
+ scrap = child.Scrap,
|
|
|
+ wastage = child.QtyConsumed
|
|
|
};
|
|
|
childItemsAdd.Add(bomchild);
|
|
|
}
|
|
|
@@ -867,7 +859,8 @@ namespace Business.SystemJobManagement
|
|
|
IsDeleted = false,
|
|
|
Op = child.Op,
|
|
|
use_status = 1,
|
|
|
- scrap = child.Scrap
|
|
|
+ scrap = child.Scrap,
|
|
|
+ wastage = child.QtyConsumed
|
|
|
};
|
|
|
childItemsAdd.Add(bomchild);
|
|
|
}
|
|
|
@@ -883,12 +876,11 @@ namespace Business.SystemJobManagement
|
|
|
icbomchild.tenant_id = item.company_id;
|
|
|
icbomchild.Op = child.Op;
|
|
|
icbomchild.scrap = child.Scrap;
|
|
|
+ icbomchild.wastage = child.QtyConsumed;
|
|
|
childItemsUpd.Add(icbomchild);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
-
|
|
|
}
|
|
|
_businessDbContext.BulkInsert(ItemsAdd);
|
|
|
_businessDbContext.BulkInsert(childItemsAdd);
|
|
|
@@ -896,21 +888,7 @@ namespace Business.SystemJobManagement
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- //循环获取子级物料编码,包括产品本身,有重复的结果去重即可
|
|
|
- public List<string> GetChildItemNumber(string itemNum, List<string> list)
|
|
|
- {
|
|
|
- list.Add(itemNum);
|
|
|
- var productStructures = _productStructureMaster.Select(p => p.ParentItem == itemNum && p.Domain == "1001" && p.IsActive);
|
|
|
- list.AddRange(productStructures.Select(a => a.ComponentItem));
|
|
|
- foreach (var item in productStructures)
|
|
|
- {
|
|
|
- if (item.StructureType.ToUpper() == "X")
|
|
|
- {
|
|
|
- GetChildItemNumber(item.ComponentItem, list);
|
|
|
- }
|
|
|
- }
|
|
|
- return list;
|
|
|
- }
|
|
|
+
|
|
|
|
|
|
public string DoProductScheduleJob()
|
|
|
{
|