From 89b4e034c1c6157a71c5bf323055e989f420b588 Mon Sep 17 00:00:00 2001 From: xwt <2740516069@qq.com> Date: 星期四, 19 六月 2025 13:46:27 +0800 Subject: [PATCH] 维护检验人 --- StandardInterface/MES.Service/service/QC/LljService.cs | 134 +++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 123 insertions(+), 11 deletions(-) diff --git a/StandardInterface/MES.Service/service/QC/LljService.cs b/StandardInterface/MES.Service/service/QC/LljService.cs index e07051c..fe7b172 100644 --- a/StandardInterface/MES.Service/service/QC/LljService.cs +++ b/StandardInterface/MES.Service/service/QC/LljService.cs @@ -1,10 +1,12 @@ 锘縰sing System.Data; +using System.Xml; using Masuit.Tools; using MES.Service.DB; using MES.Service.Dto.service; using MES.Service.Modes; using MES.Service.util; using SqlSugar; +using Tea.Utils; using DbType = System.Data.DbType; @@ -22,23 +24,36 @@ var totalCount = 0; - //var itemIds = GetQaItem(db, queryObj.createUser); - - var pageList = db.Queryable<LtsLlj>() + var pageList = db.Queryable<LtsLlj, IqcBefore, SysUser, + IqcBeforeFrom, SysUser, SysUser>((a, b, + e, f, g, i) => + new JoinQueryInfos(JoinType.Left, a.ItemId == b.ItemId, + JoinType.Left, a.CreateBy == e.Fcode, + JoinType.Left, f.Id == b.Pid, + JoinType.Left, f.Sid == Convert.ToDecimal(g.Fid), + JoinType.Left, f.CheckUser == i.Fcode + )) .WhereIF( StringUtil.IsNotNullOrEmpty(queryObj.result) && "鏈畬鎴�".Equals(queryObj.result), - a => a.FcheckResu == null) + (a, b, + e, f, g, i) => a.FcheckResu == null) .WhereIF( StringUtil.IsNotNullOrEmpty(queryObj.result) && !"鏈畬鎴�".Equals(queryObj.result), - a => a.FcheckResu != null) - .WhereIF(id > 0, a => a.Id == id) + (a, b, + e, f, g, i) => a.FcheckResu != null) + .WhereIF(id > 0, (a, b, + e, f, g, i) => a.Id == id) + .WhereIF(queryObj.createUser != "PL017" && queryObj.UserIndex == "0", (a, b, + e, f, g, i) => (g.Fcode == queryObj.createUser || i.Fcode == queryObj.createUser || + (g.Fcode == null && i.Fcode == null)))//鍒ゆ柇姝ゅ崟鐨勬楠屽憳锛屾垨鑰呮楠屼负绌哄氨鏄剧ず姝ゅ崟鎹� //鍔犵瓫閫夋潯浠�,鏍规嵁渚涘簲鍟嗭紝鐗╂枡缂栫爜锛岀墿鏂欏悕绉版悳绱� //.WhereIF(queryObj.SearchValue!=null && queryObj.SearchValue!="", (a) => a.SuppName == queryObj.SearchValue|| a.ItemName == queryObj.SearchValue || a.ItemNo == queryObj.SearchValue ) .WhereIF(!string.IsNullOrEmpty(queryObj.SearchValue), - a => a.SuppName.ToLower() + (a, b, + e, f, g, i) => a.SuppName.ToLower() .Contains(queryObj.SearchValue.ToLower()) || a.ItemName.ToLower() .Contains(queryObj.SearchValue.ToLower()) @@ -50,10 +65,20 @@ .Contains(queryObj.SearchValue.ToLower()) || a.ItemModel.ToLower() .Contains(queryObj.SearchValue.ToLower())) - .OrderByDescending(a => a.Id) + .OrderByDescending((a, b, + e, f, g, i) => a.Id) + //.Select((a, b, + // e, f, g, i) => new LtsLlj + // { + // //UserName = g.Fname, + // //UserName = (i.Fname!=null ||i.Fname!="") ? i.Fname : g.Fname, + // UserName = i.Fname != null || i.Fname != "" ? i.Fname : g.Fname, + // CreateUserName = e.Fname + // }, true) .ToPageList(queryObj.PageIndex, queryObj.Limit, ref totalCount); - + var emergencyValues = pageList.Select(item => item.EMERGENCY).ToList(); + //return (pageList, totalCount); return (pageList, totalCount); } @@ -101,6 +126,92 @@ msg[1] = messageValue; return msg; + } + //绱ф�ユ斁琛� + public string[] EmergencyRelease(int id) + { + var db = SqlSugarHelper.GetInstance(); + + + int emergencyStatus = db.Queryable<MesQaItemsDetect01>() + .Where(t => t.Id == id) + .Select(t => t.EMERGENCY) + .First(); + + if (emergencyStatus != 0) + { + return new string[] { "1", "闈炵揣鎬ョ姸鎬侊紝鏃犳硶鎵ц绱ф�ユ斁琛�" }; + } + + + var outputResult = new SugarParameter("PO_RESULT", null, + DbType.Int32, ParameterDirection.Output, 4000); + + var outputMessage = new SugarParameter("PO_MSG", null, + DbType.String, ParameterDirection.Output, 4000); + + var parameters = new List<SugarParameter> + { + new("P_ID", id, DbType.Int32, ParameterDirection.Input), + outputResult, + outputMessage + }; + + db.Ado.ExecuteCommand( + "BEGIN prc_MES_QA_ITEMS_update1(:P_ID, :PO_RESULT, :PO_MSG); END;", + parameters.ToArray()); + + var lotNo1 = db.Queryable<MesQaItemsDetect01>() + .Where(t => t.Id == id) + .Select(t => t.LotNo1) + .First(); + + var resultValue = outputResult.Value?.ToString(); + var messageValue = outputMessage.Value?.ToString(); + return new string[] { resultValue, messageValue, lotNo1?.ToString() ?? "" }; + } + + public string[] WithdrawEmergencyRelease(int id) + { + var db = SqlSugarHelper.GetInstance(); + + + int emergencyStatus = db.Queryable<MesQaItemsDetect01>() + .Where(t => t.Id == id) + .Select(t => t.EMERGENCY) + .First(); + + if (emergencyStatus != 0) + { + return new string[] { "1", "闈炵揣鎬ョ姸鎬侊紝鏃犻渶鎾ゅ洖" }; + } + + var outputResult = new SugarParameter("PO_RESULT", null, + DbType.Int32, ParameterDirection.Output, 4000); + + var outputMessage = new SugarParameter("PO_MSG", null, + DbType.String, ParameterDirection.Output, 4000); + + var parameters = new List<SugarParameter> + { + new("P_ID", id, DbType.Int32, ParameterDirection.Input), + outputResult, + outputMessage + }; + + db.Ado.ExecuteCommand( + "BEGIN prc_MES_QA_ITEMS_update2(:P_ID, :PO_RESULT, :PO_MSG); END;", + parameters.ToArray()); + + var lotNo1 = db.Queryable<MesQaItemsDetect01>() + .Where(t => t.Id == id) + .Select(t => t.LotNo1) + .First(); + + + var resultValue = outputResult.Value?.ToString(); + var messageValue = outputMessage.Value?.ToString(); + return new string[] { resultValue, messageValue, lotNo1?.ToString() ?? "" }; } private string ExtractSubstring(string input, char startChar, char endChar) @@ -194,7 +305,7 @@ a.FreQty, a.CheckQyt, a.FcheckResu, - a.FcheckItemDesc + a.FcheckItemDesc,a.Funit }).Select((a, b) => new MesQaItemsDetectDetail5 { Id = a.Id, @@ -215,7 +326,8 @@ FenterQty = SqlFunc.AggregateCount(b.Id), FcheckResu = a.FcheckResu, // FcheckItemDesc = a.FcheckItemDesc - FcheckItemDesc = a.FspecRequ + FcheckItemDesc = a.FspecRequ, + Funit =a.Funit }).ToList(); } -- Gitblit v1.9.3