From 5adecb7ffd986930d2f4e195c0273e4db73b5315 Mon Sep 17 00:00:00 2001 From: kyy <3283105747@qq.com> Date: 星期五, 07 二月 2025 18:36:51 +0800 Subject: [PATCH] 优化首检 --- MES.Service/service/QC/SJService.cs | 67 ++++++++++++++++++++++++++++----- 1 files changed, 57 insertions(+), 10 deletions(-) diff --git a/MES.Service/service/QC/SJService.cs b/MES.Service/service/QC/SJService.cs index e1cb463..2042c15 100644 --- a/MES.Service/service/QC/SJService.cs +++ b/MES.Service/service/QC/SJService.cs @@ -1,8 +1,10 @@ -锘縰sing MES.Service.DB; +锘縰sing System.Data; +using MES.Service.DB; using MES.Service.Dto.service; using MES.Service.Modes; using MES.Service.util; using SqlSugar; +using DbType = System.Data.DbType; namespace MES.Service.service.QC; @@ -92,18 +94,18 @@ // result = "鏈娴�" // }).ToList(); // } - public List<QsItemIpiItem> SetQSItems(string itemNo) + public List<QsItemIpiItem> SetQSItems(decimal itemId) { var db = SqlSugarHelper.GetInstance(); var count = db.Queryable<MesQa>().Where(s => s.QsType == "1" - && s.ItemNo == itemNo && s.Fsubmit == 1).Count(); + && s.ItemId == itemId && s.Fsubmit == 1).Count(); if (count <= 0) return new List<QsItemIpiItem>(); return db .Queryable<MesQualityStandard>() - .Where(b => b.QsType == "1" && b.ItemNo == itemNo).Select( + .Where(b => b.QsType == "1" && b.ItemId == itemId).Select( b => new QsItemIpiItem { ProjName = b.ProjName, @@ -111,11 +113,11 @@ InspectionMethod = b.InspectionMethod, UsingInstruments = b.UsingInstruments, LevelNum = SqlFunc.IsNull( - SqlFunc.IsNull(b.LevelNum * b.InspectionLevel, 1), - b.InspectionLevel), - MaxValue = b.MaxValue, - StandardValue = b.StandardValue, - MinValue = b.MinValue, + SqlFunc.IsNull( Convert.ToDecimal(b.LevelNum) * Convert.ToDecimal(b.InspectionLevel) , 1), + Convert.ToDecimal(b.InspectionLevel)), + MaxValue = Convert.ToDecimal(b.MaxValue), + StandardValue = Convert.ToDecimal(b.StandardValue), + MinValue = Convert.ToDecimal(b.MinValue), Notes = b.Notes, FcheckLevel = b.FcheckLevel, FacLevel = b.FacLevel, @@ -134,7 +136,8 @@ var qsItemIpiItems = db .Queryable<QsItemIpiItem>() .WhereIF(pid > 0, a => a.Pid == pid) - .WhereIF(id > 0, a => a.Id == id).ToList(); + .WhereIF(id > 0, a => a.Id == id) + .ToList(); var array = qsItemIpiItems.Select(s => s.Id).ToArray(); var qsItemIpiItemDetails = db.Queryable<QsItemIpiItemDetail>() @@ -455,4 +458,48 @@ return withOracle; } + + public bool SJQaSubmit(QsItem item) + { + var (factory, company) = UserUtil.GetFactory(item.userNo); + try + { + // 瀹氫箟杈撳嚭鍙傛暟 + var outputResult = new SugarParameter("o_Result", null,DbType.Int32, ParameterDirection.Output, + 4000); + + var outputMessage = new SugarParameter("o_Msg", null,DbType.String,ParameterDirection.Output, 4000); + + // 瀹氫箟杈撳叆鍙傛暟 + var parameters = new List<SugarParameter> + { + + new("p_Id", item.gid, DbType.Int32,ParameterDirection.Input), + new("p_Flag", 1, DbType.Int32,ParameterDirection.Input), + new("p_User", item.userNo, DbType.String, ParameterDirection.Input), + outputResult, + outputMessage + }; + + var db = SqlSugarHelper.GetInstance(); + + // 浣跨敤 SqlSugar 鎵ц瀛樺偍杩囩▼ + db.Ado.ExecuteCommand( + "BEGIN PRC_WOMDAA_SJ_UPDATE_RES(:p_Id,:p_Flag,:p_User,:o_Result, :o_Msg); END;", + parameters.ToArray()); + + // 鑾峰彇杈撳嚭鍙傛暟鐨勫�� + var resultValue = outputResult.Value?.ToString(); + var messageValue = outputMessage.Value?.ToString(); + + if ("1".Equals(resultValue)) {throw new Exception(messageValue);} + if ("0".Equals(resultValue)) {throw new Exception(messageValue);} + + return true; + } + catch (Exception ex) + { + throw new Exception(ex.Message); + } + } } \ No newline at end of file -- Gitblit v1.9.3