服务端的TigerApi 框架,基于.NET6 2024 版本
Rodney Chen
2024-08-04 e14fe1c9f7753de8bad65b193843748429d6dde1
Tiger.Business.MES/WorkAction/Assembly.cs
@@ -47,37 +47,37 @@
            var assyList = new List<AssemblySetting>();
            try
            {
                assyList = setting.ITEM_CODE.JsonToObject<List<AssemblySetting>>();
                assyList = (setting.ITEM_CODE ?? "").JsonToObject<List<AssemblySetting>>();
            }
            catch (System.Exception ex)
            {
                var codeList = setting.ITEM_CODE.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries);
                foreach (var code in codeList)
                {
                    assyList.Add(new(){ ItemCode = code, Qty = 1 });
                    assyList.Add(new(){ ITEM_CODE = code, QTY = 1 });
                }
            }
            var codes = assyList.Select(q => q.ItemCode).ToList();
            var codes = assyList.Select(q => q.ITEM_CODE).ToList();
            var items = Biz.Db.Queryable<BAS_ITEM>().Where(q => codes.Contains(q.ITEM_CODE) && q.AUTH_ORG == CurPosition.WorkBatch.WO.AUTH_ORG).ToList();
            //获取上料物料的替代料
            foreach (var assy in assyList)
            {
                var info = items.FirstOrDefault(q => q.ITEM_CODE == assy.ItemCode);
                var info = items.FirstOrDefault(q => q.ITEM_CODE == assy.ITEM_CODE);
                if (!info.IsNullOrEmpty())
                {
                   var item = new AssemblyItem { 
                       ItemInfo = info,  
                       RuleCode = assy.RuleCode,
                       LoadQty = assy.Qty,
                       RuleCode = assy.RULE_CODE,
                       LoadQty = assy.QTY,
                   };
                   var bom = Boms.FirstOrDefault(q => q.ITEM_CODE == assy.ItemCode);
                   var bom = Boms.FirstOrDefault(q => q.ITEM_CODE == assy.ITEM_CODE);
                   if (!bom.IsNullOrEmpty())
                   {
                      var subs = bom.SUB_CODE.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries);
                      var surItems = Biz.Db.Queryable<BAS_ITEM>().Where(q => subs.Contains(q.ITEM_CODE) && q.AUTH_ORG == CurPosition.WorkBatch.WO.AUTH_ORG).ToList();
                       if (!SubItemDic.ContainsKey(assy.ItemCode))
                       if (!SubItemDic.ContainsKey(assy.ITEM_CODE))
                       {
                           SubItemDic.Add(assy.ItemCode, surItems);
                           SubItemDic.Add(assy.ITEM_CODE, surItems);
                       }
                   }
                   CurAssembly.Items.Add(item);