From 7c78ff40dfc87ab553be48867951ada61f6a00af Mon Sep 17 00:00:00 2001 From: Ben Lin <maobin001@msn.com> Date: 星期一, 23 九月 2024 00:26:04 +0800 Subject: [PATCH] 获取工单模板变量更新 --- Tiger.Business.MES/BIZ/BIZ_MES_WO.cs | 25 ++++++++++++++++++++++--- 1 files changed, 22 insertions(+), 3 deletions(-) diff --git a/Tiger.Business.MES/BIZ/BIZ_MES_WO.cs b/Tiger.Business.MES/BIZ/BIZ_MES_WO.cs index dfdfed4..9578dce 100644 --- a/Tiger.Business.MES/BIZ/BIZ_MES_WO.cs +++ b/Tiger.Business.MES/BIZ/BIZ_MES_WO.cs @@ -14,6 +14,8 @@ using Tiger.Model.Entitys.MES.BizMesWoBatch; using Tiger.Model.Entitys.MES.BizMesWo; using Tiger.Model.Entitys.MES.Position; +using Microsoft.AspNetCore.Mvc.RazorPages; +using System.Drawing.Printing; namespace Tiger.Business.MES { @@ -312,13 +314,30 @@ result.LocaleMsg = new($"宸ュ崟鍙蜂笉鑳戒负绌猴紒"); return result; } - query.page = await Biz.Db.Queryable<BAS_LABEL_VAR_WO>().Where(q=>q.WORK_ORDER.Equals(input.WorkOrder) && q.LABEL_ID.Equals(input.LabelId)).ToPageAsync(input.pageIndex, input.pageSize); - query.Items = query.page.data; + var lableVars = await Biz.Db.Queryable<BAS_LABEL_VAR_WO>().Where(q => SqlFunc.IsNullOrEmpty(q.WORK_ORDER) && q.LABEL_ID.Equals(input.LabelId)).ToListAsync(); + var queryable = Biz.Db.Queryable<BAS_LABEL_VAR_WO>().Where(q => q.WORK_ORDER.Equals(input.WorkOrder) && q.LABEL_ID.Equals(input.LabelId)); + query.page = await queryable.ToPageAsync(input.pageIndex, input.pageSize); //濡傛灉涓嶅瓨鍦紝鍒欒繑鍥炲垵濮嬫暟鎹� - if (query.page.totals == 0) { + if (query.page.totals == 0) + { query.page = await Biz.Db.Queryable<BAS_LABEL_VAR_WO>().Where(q => SqlFunc.IsNullOrEmpty(q.WORK_ORDER) && q.LABEL_ID.Equals(input.LabelId)).ToPageAsync(input.pageIndex, input.pageSize); query.Items = query.page.data; } + //濡傛灉鍒濆鍙橀噺鏁板ぇ浜庡伐鍗曡缃殑鍙橀噺鏁� + if (lableVars.Count > query.page.totals) + { + foreach (var item in lableVars) + { + if (queryable.ToList().Any(q => q.VAR_NAME == item.VAR_NAME)) + { + item.WORK_ORDER = input.WorkOrder; + item.VAR_VALUE = queryable.ToList().Where(q => q.VAR_NAME == item.VAR_NAME).First()?.VAR_VALUE; + } + } + query.Items = lableVars.Skip((input.pageIndex - 1) * input.pageSize).Take(input.pageSize).ToList(); + query.page.totals = lableVars.Count; + query.page.data = query.Items; + } result.Data = query; } catch (Exception ex) -- Gitblit v1.9.3