From 243e732e8adabbe19fd2ecd87a44b2373260aab2 Mon Sep 17 00:00:00 2001 From: Rodney Chen <rodney.chen@hotmail.com> Date: 星期三, 07 八月 2024 14:59:49 +0800 Subject: [PATCH] 包装信息保存到在制品信息表 包装信息保存到工单条码明细表 --- Tiger.Business.MES/WorkAction/PackingAction.cs | 52 +++++++++++++++++++++++----------------------------- 1 files changed, 23 insertions(+), 29 deletions(-) diff --git a/Tiger.Business.MES/WorkAction/PackingAction.cs b/Tiger.Business.MES/WorkAction/PackingAction.cs index b2ea4b8..421672b 100644 --- a/Tiger.Business.MES/WorkAction/PackingAction.cs +++ b/Tiger.Business.MES/WorkAction/PackingAction.cs @@ -402,7 +402,7 @@ //鏈�澶栧眰鍖呰宸茬粡瀹屾垚鍖呰锛屼繚瀛樺寘瑁呮暟鎹埌鏁版嵁搴� else { - action = SaveToDB(); + action = CompletePkg(); } } //褰撳墠澶勭悊鐨勫寘瑁呭眰绾у凡缁忓鐞嗗畬锛岀户缁線涓婁繚瀛� @@ -506,36 +506,9 @@ return list; } - public ApiAction<SubmitOutput> SaveToDB() + public ApiAction<SubmitOutput> CompletePkg() { var action = new ApiAction<SubmitOutput>(new SubmitOutput()); - - var pkgList = GetPackageList(CurPkg.Item); - - //鍖呰淇℃伅淇濆瓨鍒板湪鍒跺搧淇℃伅琛� - foreach (var wipSN in CurPosition.CurWipSNs) - { - wipSN.TRAY_SN = CurPkg.Item.Package.SN; - wipSN.CARTON_SN = CurPkg.Item.Package.SN; - } - //鍖呰淇℃伅淇濆瓨鍒板伐鍗曟潯鐮佹槑缁嗚〃 - var woSNs = CurPosition.WorkBatch.WoSNs.Where(q => CurPosition.CurWipSNs.Any(w => q.SN == w.SN)).ToList(); - foreach (var woSN in woSNs) - { - woSN.TRAY_SN = CurPkg.Item.Package.SN; - woSN.OUTER_SN = CurPkg.Item.Package.SN; - } - - //淇濆瓨鏁版嵁搴� - var db = Biz.Db; - var dbTran = db.UseTran(() => - { - db.Insertable(pkgList, CurPosition.UserCode).ExecuteCommand(); - }); - if (!dbTran.IsSuccess) - { - throw dbTran.ErrorException; - } var data = new PackingActionOutput() { PkgInfo = CurPkg }; data.ExecCode = "Complete"; @@ -602,11 +575,32 @@ //鍒涘缓鍙橀噺鍏嬮殕瀵硅薄鐢ㄤ簬浼犲叆DBSubmitAction涓繚瀛樺綋鍓嶉渶瑕佹殏瀛樼殑鏁版嵁鍊� var _wipActs = wipActs.Clone(); + var _pkgList = CurPkg.IsFinished ? GetPackageList(CurPkg.Item) : new(); //淇濆瓨鏁版嵁 CurStep.DBSubmitAction = () => { var db = CurPosition.GetCommitDB(); db.Storageable(_wipActs, CurPosition.UserCode).ExecuteCommand(); + if (_pkgList.Any()) + { + db.Insertable(_pkgList, CurPosition.UserCode).ExecuteCommand(); + foreach (var pkg in _pkgList) + { + //鍖呰淇℃伅淇濆瓨鍒板湪鍒跺搧淇℃伅琛� + db.Updateable<MES_WIP_DATA>() + .SetColumns(q => q.TRAY_SN == CurPkg.Item.Package.SN) + .SetColumns(q => q.CONTAINER_SN == q.CARTON_SN) + .SetColumns(q => q.CARTON_SN == CurPkg.Item.Package.SN) + .Where(q => q.WORK_ORDER == pkg.WORK_ORDER && q.SN == pkg.SN) + .ExecuteCommand(); + //鍖呰淇℃伅淇濆瓨鍒板伐鍗曟潯鐮佹槑缁嗚〃 + db.Updateable<BIZ_MES_WO_SN>() + .SetColumns(q => q.TRAY_SN == CurPkg.Item.Package.SN) + .SetColumns(q => q.OUTER_SN == CurPkg.Item.Package.SN) + .Where(q => q.WORK_ORDER == pkg.WORK_ORDER && q.SN == pkg.SN) + .ExecuteCommand(); + } + } }; if (CurPkg.IsFinished) -- Gitblit v1.9.3