From 171d81fdf8d730f6cb6869a003d81d17b5e81117 Mon Sep 17 00:00:00 2001 From: sjz <1240968267@qq.com> Date: 星期五, 13 六月 2025 15:06:34 +0800 Subject: [PATCH] 送货条码按物料删除,送货单明细增加赠品字段 --- StandardInterface/MES.Service/service/QC/LljService.cs | 158 +++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 143 insertions(+), 15 deletions(-) diff --git a/StandardInterface/MES.Service/service/QC/LljService.cs b/StandardInterface/MES.Service/service/QC/LljService.cs index 4e9276f..d587116 100644 --- a/StandardInterface/MES.Service/service/QC/LljService.cs +++ b/StandardInterface/MES.Service/service/QC/LljService.cs @@ -43,11 +43,16 @@ || a.ItemName.ToLower() .Contains(queryObj.SearchValue.ToLower()) || a.ItemNo.ToLower() - .Contains(queryObj.SearchValue.ToLower())) + .Contains(queryObj.SearchValue.ToLower()) + || a.LotNo.ToLower() + .Contains(queryObj.SearchValue.ToLower()) + || a.ReleaseNo.ToLower() + .Contains(queryObj.SearchValue.ToLower()) + || a.ItemModel.ToLower() + .Contains(queryObj.SearchValue.ToLower())) .OrderByDescending(a => a.Id) .ToPageList(queryObj.PageIndex, queryObj.Limit, ref totalCount); - - + var emergencyValues = pageList.Select(item => item.EMERGENCY).ToList(); return (pageList, totalCount); } @@ -59,9 +64,9 @@ /// <param name="quantity"></param> /// <param name="releaseNo"></param> /// <returns></returns> - public string[] SetItems(string itemNo, - decimal quantity, string releaseNo) + public string[] SetItems(decimal itemNo, decimal quantity, string releaseNo) { + // 瀹氫箟杈撳嚭鍙傛暟 var outputResult = new SugarParameter("o_Result", null, DbType.Int32, ParameterDirection.Output, @@ -74,8 +79,8 @@ // 瀹氫箟杈撳叆鍙傛暟 var parameters = new List<SugarParameter> { - new("P_RELEASE_NO", releaseNo, - DbType.String, ParameterDirection.Input), + new("P_RELEASE_NO", releaseNo, DbType.String, ParameterDirection.Input), + new("P_ITEM_ID", itemNo, DbType.String, ParameterDirection.Input), outputResult, outputMessage }; @@ -84,7 +89,7 @@ // 浣跨敤 SqlSugar 鎵ц瀛樺偍杩囩▼ db.Ado.ExecuteCommand( - "BEGIN PRC_QA_ITEM_INSERT_BTN(:P_RELEASE_NO, :o_Result, :o_Msg); END;", + "BEGIN PRC_QA_ITEM_INSERT_BTN(:P_RELEASE_NO,:P_ITEM_ID, :o_Result, :o_Msg); END;", parameters.ToArray()); // 鑾峰彇杈撳嚭鍙傛暟鐨勫�� @@ -97,6 +102,92 @@ } + //绱ф�ユ斁琛� + 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) { var startIndex = input.IndexOf(startChar); @@ -188,7 +279,9 @@ a.FreQty, a.CheckQyt, a.FcheckResu, - a.FcheckItemDesc + a.FcheckItemDesc, + a.Funit, + a.Meom }).Select((a, b) => new MesQaItemsDetectDetail5 { Id = a.Id, @@ -209,7 +302,9 @@ FenterQty = SqlFunc.AggregateCount(b.Id), FcheckResu = a.FcheckResu, // FcheckItemDesc = a.FcheckItemDesc - FcheckItemDesc = a.FspecRequ + FcheckItemDesc = a.FspecRequ, + Funit = a.Funit, + Meom = a.Meom, }).ToList(); } @@ -290,8 +385,8 @@ return commit; }); - - var isNull = db.Queryable<MesQaItemsDetectDetail5>() + //5.20xwt淇敼灏嗘洿鏂颁富琛ㄦ楠岀粨鏋滃瓧娈垫斁鍦↖qcQaSubmit鏂规硶涓� + /*var isNull = db.Queryable<MesQaItemsDetectDetail5>() .Where(s => s.ReleaseNo == detail.ReleaseNo && s.FcheckResu == null) .Count(); @@ -329,7 +424,7 @@ .SetColumns(s => s.LastupdateDate == DateTime.Now) .Where(s => s.ReleaseNo == detail.ReleaseNo) .ExecuteCommand(); - }); + });*/ // if (FcheckResu.Equals("涓嶅悎鏍�")) //鑷姩鐢熸垚鍏ュ簱妫�寮傚父瀵圭瓥 /// saveDetect02(detail.Id, detail.CreateBy); @@ -482,8 +577,13 @@ return SqlSugarHelper.UseTransactionWithOracle(db => { return db.Updateable<MesQaItemsDetectDetail5>() - // .SetColumns(it => - // it.Remarks == dto.Remarks) //SetColumns鏄彲浠ュ彔鍔犵殑 鍐�2涓氨2涓瓧娈佃祴鍊� + .SetColumns(it => + it.Funit == dto.Remarks) //SetColumns鏄彲浠ュ彔鍔犵殑 鍐�2涓氨2涓瓧娈佃祴鍊� + .Where(it => it.Id == dto.pid) + .ExecuteCommand(); + return db.Updateable<MesQaItemsDetectDetail5>() + .SetColumns(it => + it.Meom == dto.Meom) .Where(it => it.Id == dto.pid) .ExecuteCommand(); }); @@ -555,6 +655,34 @@ if ("1".Equals(resultValue)) throw new Exception(messageValue); + var sum = db.Queryable<MesQaItemsDetectDetail5>() + .Where(s => s.ReleaseNo == dto.releaseNo).Count(); + + if (sum == 0) return true; + + var icount = db.Queryable<MesQaItemsDetectDetail5>() + .Where(s => s.ReleaseNo == dto.releaseNo && s.FcheckResu == "鍚堟牸") + .Count(); + + var FcheckResu = "涓嶅悎鏍�"; + + if (sum == icount) + FcheckResu = "鍚堟牸"; + + var sysUser = db.Queryable<SysUser>() + .Where(s => s.Fcode == dto.userNo).First(); + + SqlSugarHelper.UseTransactionWithOracle(db => + { + return db.Updateable<MesQaItemsDetect01>() + .SetColumns(s => s.FcheckResu == FcheckResu) + .SetColumns(s => s.FcheckDate == DateTime.Now) + .SetColumns(s => s.FcheckBy == sysUser.Fname) + .SetColumns(s => s.LastupdateBy == dto.userNo) + .SetColumns(s => s.LastupdateDate == DateTime.Now) + .Where(s => s.ReleaseNo == dto.releaseNo) + .ExecuteCommand(); + }); return true; } catch (Exception ex) -- Gitblit v1.9.3