服务端的TigerApi 框架,基于.NET6 2024 版本
Ben Lin
2024-09-12 ff0ef3ea134660a9542a50f675f4c5aafa8af223
一些更改
已修改2个文件
50 ■■■■ 文件已修改
Tiger.Business.MES/BIZ/BizBasRule.cs 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Tiger.Business.MES/WorkAction/PackingAction.cs 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Tiger.Business.MES/BIZ/BizBasRule.cs
@@ -29,15 +29,10 @@
            var result = new ApiAction();
            try
            {
                if (input.ItemCusts == null || input.ItemCusts.Count == 0)
                {
                    result.IsSuccessed = false;
                    result.LocaleMsg = new($"保存物料条码规则出错,没有数据传入");
                    return result;
                }
                var ItemCustIds = input.ItemCusts.Select(q => q.ID).ToList();
                List<BAS_ITEM_CUST> list = await Biz.Db.Queryable<BAS_ITEM_CUST>().Where(q => !SqlFunc.ContainsArray(ItemCustIds, q.ID) && input.ItemCusts[0].ITEM_ID == q.ITEM_ID).ToListAsync();
                List<BAS_ITEM_CUST> list = ItemCustIds.Count>0? await Biz.Db.Queryable<BAS_ITEM_CUST>()
                    .Where(q => !SqlFunc.ContainsArray(ItemCustIds, q.ID) && input.ItemCusts[0].ITEM_ID == q.ITEM_ID)
                    .ToListAsync() : new();
                var db = Biz.Db;
                var dbTran = db.UseTran(() =>
                {
@@ -76,27 +71,17 @@
            var result = new ApiAction();
            try
            {
                if (input.PkgProd == null || input.PkgProd.Count == 0)
                {
                    result.IsSuccessed = false;
                    result.LocaleMsg = new($"保存包装规则出错,没有数据传入");
                    return result;
                }
                var pkgProds = input.PkgProd.Select(q => q.ID).ToList();
                List<BAS_PKG_PROD> listPrd = await Biz.Db.Queryable<BAS_PKG_PROD>().Where(q => !SqlFunc.ContainsArray(pkgProds, q.ID) && q.PKG_RULE_ID == input.PkgProd[0].PKG_RULE_ID).ToListAsync();
                List<BAS_PKG_PROD> listPrd = pkgProds.Count > 0 ? await Biz.Db.Queryable<BAS_PKG_PROD>()
                    .Where(q => !SqlFunc.ContainsArray(pkgProds, q.ID) && q.PKG_RULE_ID == input.PkgProd[0].PKG_RULE_ID)
                    .ToListAsync() : new();
                var pkgDtl = input.PkgDtl.Select(q => q.ID).ToList();
                List<BAS_PKG_DTL> listDtl = pkgDtl.Count > 0 ? await Biz.Db.Queryable<BAS_PKG_DTL>()
                    .Where(q => !SqlFunc.ContainsArray(pkgDtl, q.ID) && q.PKG_RULE_ID == input.PkgDtl[0].PKG_RULE_ID)
                    .ToListAsync() : new();
                var db = Biz.Db;
                var dbTran = db.UseTran(() =>
                {
                    //if (input.PkgRule!=null)
                    //{
                    //    var y = db.Storageable(input.PkgRule)
                    //       .WhereColumns(t => new { t.ID, t.GHOST_ROW })
                    //       .ToStorage();
                    //    y.AsInsertable.ExecuteCommand();
                    //    y.AsUpdateable.ExecuteCommand();
                    //}
                    var z = db.Storageable(input.PkgDtl)
                       .WhereColumns(t => new { t.ID, t.GHOST_ROW })
                       .ToStorage();
@@ -110,6 +95,7 @@
                    o.AsUpdateable.ExecuteCommand();
                    db.Deleteable(listPrd).ExecuteCommand();
                    db.Deleteable(listDtl).ExecuteCommand();
                });
                if (!dbTran.IsSuccess)
                {
Tiger.Business.MES/WorkAction/PackingAction.cs
@@ -330,7 +330,7 @@
                        if (!pInput.WeightInfo.IsNullOrEmpty() && pInput.WeightInfo.Weight > 0)
                        {
                            //验证重量数据是否符合设置好的重量范围
                            if (!PkgProd.IsNullOrEmpty() && (pInput.WeightInfo.Weight < PkgProd.MIN_WEIGHT || PkgProd.MIN_WEIGHT < pInput.WeightInfo.Weight))
                            if (!PkgProd.IsNullOrEmpty() && (pInput.WeightInfo.Weight < PkgProd.MIN_WEIGHT || PkgProd.MAX_WEIGHT < pInput.WeightInfo.Weight))
                            {
                                action.IsSuccessed = false;
                                CurStep?.SetStatusMessage(StepStatus.Error, Biz.L("重量超限"));
@@ -532,7 +532,17 @@
                    CurPkgItem.Package.OPER_CODE = CurPosition.CurWipSNs.First().OPER_CODE;
                    CurPkgItem.Package.SEGMENT = CurPosition.CurWipSNs.First().SEGMENT;
                    FinishLevel++;
                    action = SavePkgData(input, action);
                    //完成包装的层级小于最外层包装层级
                    if (FinishLevel < PkgRule.Details.Max(q => q.PKG_LEVEL))
                    {
                        //当前处理的包装层级已经处理完,继续往上保存
                        action = SavePkgData(input, action);
                    }
                    //最外层包装已经完成包装,保存包装数据到数据库
                    else
                    {
                        action = CompletePkg();
                    }
                }
                //处理其他包装层级数据
                else