From 5de35354e8dfcb4933350d0d1b645d400bcf23ab Mon Sep 17 00:00:00 2001 From: sjz <1240968267@qq.com> Date: 星期二, 22 七月 2025 15:30:09 +0800 Subject: [PATCH] 优化多组织 --- MES.Service/service/QC/RKJService.cs | 202 ++++++++++++++++++++++++++++++++------------------ 1 files changed, 130 insertions(+), 72 deletions(-) diff --git a/MES.Service/service/QC/RKJService.cs b/MES.Service/service/QC/RKJService.cs index 4963929..56e9ef3 100644 --- a/MES.Service/service/QC/RKJService.cs +++ b/MES.Service/service/QC/RKJService.cs @@ -54,13 +54,10 @@ //鑾峰彇宸ュ崟鍙� - public List<RKJDaa001> GetDaa001s(string lineNo) + public List<RkDaa002> GetDaa001s(string lineNo) { var db = SqlSugarHelper.GetInstance(); - return db.Queryable<RKJDaa001>() - .Where(t => t.LineNo == lineNo) - .OrderBy(t => t.BillNo, OrderByType.Desc) - .ToList(); + return null; } //鏍规嵁妫�楠屾爣鍑嗘潵璁$畻妫�楠屼釜鏁� @@ -76,29 +73,28 @@ var qsItemOqcItems = db .Queryable<MesQualityStandard>() .Where(b => b.QsType == "3" - && b.ItemNo == itemNo).Select( - b => new QsItemOqcItem - { - ProjName = b.ProjName, - ItemMod = b.ItemMod, - 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, - Notes = b.Notes, - FcheckLevel = b.FcheckLevel, - FacLevel = b.FacLevel, - QsCode = b.QsCode, - QsName = b.QsName, - Result = "鏈娴�", - isCheck = 0, - Picture = b.Picture, - Picturename = b.Picturename - }).ToList(); + && b.ItemNo == itemNo).Select(b => new QsItemOqcItem + { + ProjName = b.ProjName, + ItemMod = b.ItemMod, + 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, + Notes = b.Notes, + FcheckLevel = b.FcheckLevel, + FacLevel = b.FacLevel, + QsCode = b.QsCode, + QsName = b.QsName, + Result = "鏈娴�", + isCheck = 0, + Picture = b.Picture, + Picturename = b.Picturename + }).ToList(); qsItemOqcItems.ForEach(item => { @@ -229,10 +225,17 @@ { var commit = 0; - xj.CreateBy = userNo; - xj.CreateDate = DateTime.Now; + // xj.CreateBy = userNo; + // xj.CreateDate = DateTime.Now; - var pid = db.Insertable(xj).ExecuteReturnIdentity(); + var qsItemOqcReq = db.Queryable<QsItemOqcReq>() + .Where(s => s.Id == xj.Id) + .First(); + + decimal? pid = 0; + pid = qsItemOqcReq == null + ? db.Insertable(xj).ExecuteReturnIdentity() + : qsItemOqcReq.Id; xj.Id = pid; @@ -354,8 +357,8 @@ result = 1; else if (count - passCount < QsItemOqcItem.FreQty) result = 1; - var useTransactionWithOracle = SqlSugarHelper.UseTransactionWithOracle( - db => + var useTransactionWithOracle = + SqlSugarHelper.UseTransactionWithOracle(db => { var commit = 0; commit += db.Updateable<QsItemOqcItem>() @@ -401,9 +404,24 @@ .ExecuteCommand(); }); - if (FcheckResu.Equals("涓嶅悎鏍�")) - //鑷姩鐢熸垚鍏ュ簱妫�寮傚父瀵圭瓥 - saveDetect02(detail.Gid, detail.CreateBy); + //if (FcheckResu.Equals("涓嶅悎鏍�")) + // //鑷姩鐢熸垚鍏ュ簱妫�寮傚父瀵圭瓥 + // saveDetect02(detail.Gid, detail.CreateBy); + + + var oqcReq = db.Queryable<QsItemOqcReq>() + .Where(s => s.Id == detail.Gid) + .Select<string?>(s => s.BillNo) + .First(); + + if (oqcReq != null) + //FSTATUS + //CHECK_RES + db.Updateable<MesInvItemIns>() + .SetColumns(s => s.Fstatus == 1) + .SetColumns(s => s.CheckRes == FcheckResu) + .Where(s => s.BillNo == oqcReq) + .ExecuteCommand(); return useTransactionWithOracle; } @@ -418,14 +436,14 @@ var mesInvItemIns = db.Queryable<MesInvItemIns>() .Single(s => s.BillNo == qsItemOqcReq.BillNo); - var mesSchemeResult = db.Queryable<MesSchemeResult>() - .Single(s => s.BillNo == mesInvItemIns.CbillNo); + var mesSchemeResult = db.Queryable<Womdaa>() + .Single(s => s.Daa001 == mesInvItemIns.CbillNo); var entity = new MesQaItemsDetect02(); - entity.ItemNo = mesSchemeResult.BoardItem; - entity.BoardItem = mesSchemeResult.BoardItem; - entity.LineNo = mesSchemeResult.LineNo; - entity.Aufnr = mesSchemeResult.TaskNo; + // entity.ItemNo = mesSchemeResult.BoardItem; + // entity.BoardItem = mesSchemeResult.BoardItem; + entity.LineNo = mesSchemeResult.Daa015; + // entity.Aufnr = mesSchemeResult.TaskNo; entity.ReleaseNo = qsItemOqcReq.ReleaseNo; entity.LotNo = qsItemOqcReq.BillNo; entity.FcheckDate = qsItemOqcReq.FcheckDate; @@ -453,52 +471,68 @@ } - public List<QsItemOqcReq> getPage(XJPageResult queryObj) + public (List<QsItemOqcReq> items, int TotalCount) getPage( + XJPageResult queryObj) { var db = SqlSugarHelper.GetInstance(); - var id = Convert.ToDecimal(queryObj.id); + var totalCount = 0; - string[]? lineNo = null; - - if (StringUtil.IsNotNullOrEmpty(queryObj.createUser)) - lineNo = _baseService.getUserLineNo(queryObj.createUser); - - return db.Queryable<QsItemOqcReq, RKJDaa001>((a, b) => - new JoinQueryInfos(JoinType.Left, a.BillNo == b.BillNo)) - .WhereIF(lineNo != null && lineNo.Length > 0, - (a, b) => lineNo.Contains(b.LineNo)) + var qsItemOqcReqs = db + .Queryable<QsItemOqcReq, MesItems, MesInvItemIns, Womdaa, + MesInvTransaction, RKJDaa001, + MesLine>((a, b, c, da, ca, m, l) => new JoinQueryInfos( + JoinType.Left, a.ItemNo == b.Id.ToString(), + JoinType.Left, a.BillNo == c.BillNo, + JoinType.Left, da.Daa001 == c.RbillNo, + JoinType.Left, c.TransctionNo == ca.TransactionNo.ToString() + && c.Company == ca.Company + && c.Factory == ca.Factory, + JoinType.Left, m.ItemInId == c.Id, + JoinType.Left, l.LineNo == da.Daa015 + )) + //.WhereIF(!"PL017".Equals(queryObj.createUser), + // (a, b, c, da, ca, m) => lineNo.Contains(da.Daa015)) + .WhereIF(!string.IsNullOrEmpty(queryObj.id), + (a, b, c, da, ca, m, l) => a.Id.ToString() == queryObj.id) .WhereIF( StringUtil.IsNotNullOrEmpty(queryObj.result) && "鏈畬鎴�".Equals(queryObj.result), - (a, b) => a.FcheckResu == null) + (a, b, c, da, ca, m, l) => a.FcheckResu == null) .WhereIF( StringUtil.IsNotNullOrEmpty(queryObj.result) && !"鏈畬鎴�".Equals(queryObj.result), - (a, b) => a.FcheckResu != null) - .WhereIF(id > 0, (a, b) => a.Id == id) - .Select((a, b) => new QsItemOqcReq + (a, b, c, da, ca, m, l) => a.FcheckResu != null) + .WhereIF( + StringUtil.IsNotNullOrEmpty(queryObj.SearchValue), + (a, b, c, da, ca, m, l) => + a.ReleaseNo.Contains(queryObj.SearchValue) + || b.ItemNo.Contains(queryObj.SearchValue) + ) + .Select((a, b, c, da, ca, m, l) => new QsItemOqcReq { - Id = a.Id, - ReleaseNo = a.ReleaseNo, BillNo = a.BillNo, - LineName = b.LineNo, - Quantity = b.Quantity, - CreateBy = a.CreateBy, + Remarks = a.Remarks, + Id = a.Id, CreateDate = a.CreateDate, - ItemNo = a.ItemNo, - Mocode = b.Mocode, - BoardModel = b.BoardModel, - TaskNo = b.TaskNo, + CreateBy = a.CreateBy, FcheckResu = a.FcheckResu, + ItemNo = b.ItemNo, FcheckBy = a.FcheckBy, FcheckDate = a.FcheckDate, - MoidNum = a.MoidNum, - BoardName = b.BoardName, - ColorName = b.ColorName, - Remarks = a.Remarks - }).OrderBy(a => a.CreateDate, OrderByType.Desc) - .ToPageList(queryObj.PageIndex, queryObj.Limit); + ReleaseNo = a.ReleaseNo, + ItemName = b.ItemName, + ItemModel = b.ItemModel, + TaskNo = c.RbillNo, + //CbillNo = c.CbillNo, + //LineNo = da.Daa015, + LineNo = l.LineName, + Quantity = m.Quantity + }) + .OrderBy(a => a.CreateDate, OrderByType.Desc) + .ToPageList(queryObj.PageIndex, queryObj.Limit, ref totalCount); + + return (qsItemOqcReqs, totalCount); } //鍒犻櫎涓昏〃骞朵笖杩炵骇鍒犻櫎瀛愯〃鍜屽瓩琛� @@ -651,4 +685,28 @@ return Convert.ToInt32(rkjDto.gid); } + + public List<MesInvItemInCDetails2> GetRKDetail(RKJDto rkjDto) + { + //鐗╂枡鏉$爜鍜岀墿鏂欑紪鐮侊紝鏁伴噺 MES_INV_ITEM_IN_C_DETAILS2 + var db = SqlSugarHelper.GetInstance(); + + var oqcReq = db.Queryable<QsItemOqcReq>() + .Where(s => s.Id == rkjDto.gid) + .Select<string?>(s => s.BillNo) + .First(); + + if (oqcReq != null) + { + //FSTATUS + //CHECK_RES + var mesInvItemIns = db.Queryable<MesInvItemIns>() + .Where(s => s.BillNo == oqcReq).First(); + + return db.Queryable<MesInvItemInCDetails2>() + .Where(a => a.ItemInId == mesInvItemIns.Id).ToList(); + } + + return new List<MesInvItemInCDetails2>(); + } } \ No newline at end of file -- Gitblit v1.9.3