From 8b5e14886c0d036ce5af9ee20a56c646e254531b Mon Sep 17 00:00:00 2001 From: Ben Lin <maobin001@msn.com> Date: 星期日, 22 九月 2024 14:34:47 +0800 Subject: [PATCH] 客户条码增加ItemCode,包装明细视图增加模板ID --- Tiger.Business.MES/WorkAction/PackingAction.cs | 56 +++++++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 45 insertions(+), 11 deletions(-) diff --git a/Tiger.Business.MES/WorkAction/PackingAction.cs b/Tiger.Business.MES/WorkAction/PackingAction.cs index 516ce14..3a074e2 100644 --- a/Tiger.Business.MES/WorkAction/PackingAction.cs +++ b/Tiger.Business.MES/WorkAction/PackingAction.cs @@ -31,6 +31,7 @@ public Dictionary<int, BAS_LABEL_TEMP> LabelDic { get; set; } = new(); public List<BAS_LABEL_PV> LabelPV { get; set; } = new(); public int FinishLevel = 0; + private bool IsManually => CurStep.IsNullOrEmpty(); #endregion Propertys & Variables #region Functions @@ -208,7 +209,7 @@ else { //璁剧疆鎵撳嵃鍙橀噺鍊� - LabelDic[min.PKG_LEVEL] = CurPosition.SetLabelVariables(LabelPV, LabelDic[min.PKG_LEVEL]); + LabelDic[min.PKG_LEVEL] = CurPosition.SetLabelVariables(LabelPV, LabelDic[min.PKG_LEVEL], this); var data = new PackingActionOutput() { PkgInfo = CurPkg }; data.ExecCode = "Print"; @@ -330,7 +331,7 @@ if (!pInput.WeightInfo.IsNullOrEmpty() && pInput.WeightInfo.Weight > 0) { //楠岃瘉閲嶉噺鏁版嵁鏄惁绗﹀悎璁剧疆濂界殑閲嶉噺鑼冨洿 - if (!PkgProd.IsNullOrEmpty() && (pInput.WeightInfo.Weight < PkgProd.MIN_WEIGHT || PkgProd.MAX_WEIGHT < pInput.WeightInfo.Weight)) + if (!PkgProd.IsNullOrEmpty() && ((pInput.WeightInfo.Weight < PkgProd.MIN_WEIGHT && !IsManually) || PkgProd.MAX_WEIGHT < pInput.WeightInfo.Weight)) { action.IsSuccessed = false; CurStep?.SetStatusMessage(StepStatus.Error, Biz.L("閲嶉噺瓒呴檺")); @@ -373,7 +374,7 @@ else { //璁剧疆鎵撳嵃鍙橀噺鍊� - LabelDic[dtl.PKG_LEVEL] = CurPosition.SetLabelVariables(LabelPV, LabelDic[dtl.PKG_LEVEL]); + LabelDic[dtl.PKG_LEVEL] = CurPosition.SetLabelVariables(LabelPV, LabelDic[dtl.PKG_LEVEL], this); var data = new PackingActionOutput() { PkgInfo = CurPkg }; data.ExecCode = "Print"; @@ -442,8 +443,20 @@ //鎵嬪姩缁撴潫鍖呰榛樿浠庣浜屽眰鍖呰寮�濮嬮獙璇� var dtl = PkgRule.Details.First(q => q.PKG_LEVEL == 2); - //琛屼负璁惧畾鐨凮PTION_1-9鏄寘瑁呬笉鍚屽眰绾х殑鏍囩妯℃澘浠g爜锛屽鏋滀负绌哄垯涓嶉渶瑕佹墦鍗� - if (LabelDic[dtl.PKG_LEVEL].IsNullOrEmpty()) + if (dtl.PKG_LEVEL == CurPkg.Item.PKG_LEVEL && CurPkg.NeedWeighing) + { + var data = new PackingActionOutput() { PkgInfo = CurPkg }; + data.ExecCode = "Weighing"; + data.PkgLevel = dtl.PKG_LEVEL; + CurCmd = data; + CurStep?.SetStatusMessage(StepStatus.Normal, Biz.L("涓婄О绉伴噸")); + action.Data.Data = data; + action.Data.ShortMsg = new("涓婄О绉伴噸", ShortMessage.Types.Success); + //action.LocaleMsg = new($"璇锋妸澶栧寘瑁呬笂绉扮О閲�"); + action.LocaleMsg = new("MES.WorkAction.PackingAction.PleaseWeighing"); + } + //鏍规嵁鍖呰涓嶅悓灞傜骇鐨勬爣绛炬ā鏉夸唬鐮侊紝濡傛灉涓虹┖鍒欎笉闇�瑕佹墦鍗� + else if (LabelDic[dtl.PKG_LEVEL].IsNullOrEmpty()) { var data = new PackingActionOutput() { PkgInfo = CurPkg }; data.ExecCode = "Scan"; @@ -458,7 +471,7 @@ else { //璁剧疆鎵撳嵃鍙橀噺鍊� - LabelDic[dtl.PKG_LEVEL] = CurPosition.SetLabelVariables(LabelPV, LabelDic[dtl.PKG_LEVEL]); + LabelDic[dtl.PKG_LEVEL] = CurPosition.SetLabelVariables(LabelPV, LabelDic[dtl.PKG_LEVEL], this); var data = new PackingActionOutput() { PkgInfo = CurPkg }; data.ExecCode = "Print"; @@ -541,6 +554,7 @@ //鏈�澶栧眰鍖呰宸茬粡瀹屾垚鍖呰锛屼繚瀛樺寘瑁呮暟鎹埌鏁版嵁搴� else { + CurPkg.Item = CurPkgItem; action = CompletePkg(); } } @@ -551,7 +565,27 @@ if (pInput.PkgLevel == dtl.PKG_LEVEL) { CurPkgItem.IsFinished = true; - CurPkgItem.Package = new() + CurPkgItem.Package = IsManually ? new() + { + AUTH_ORG = CurPosition.WorkBatch.WO.AUTH_ORG, + AUTH_PROD = CurPosition.CurLine.LINE_CODE, + SN = pInput.PkgSN, + PKG_TYPE = dtl.PkgType.PKG_NAME, + ITEM_CODE = CurPkgItem.Items.First().Package.ITEM_CODE, + QTY = CurPkgItem.Items.Sum(q => q.Package.QTY), + UNIT = dtl.PkgType.PKG_NAME, + WORK_ORDER = CurPkgItem.Items.First().Package.WORK_ORDER, + BATCH_NO = CurPkgItem.Items.First().Package.BATCH_NO, + ROT_CODE = CurPkgItem.Items.First().Package.ROT_CODE, + NODE_ID = CurPkgItem.Items.First().Package.NODE_ID, + NODE_NAME = CurPkgItem.Items.First().Package.NODE_NAME, + FTY_CODE = CurPkgItem.Items.First().Package.FTY_CODE, + WS_CODE = CurPkgItem.Items.First().Package.WS_CODE, + LINE_CODE = CurPkgItem.Items.First().Package.LINE_CODE, + POST_CODE = CurPkgItem.Items.First().Package.POST_CODE, + OPER_CODE = CurPkgItem.Items.First().Package.OPER_CODE, + SEGMENT = CurPkgItem.Items.First().Package.SEGMENT, + } : new() { AUTH_ORG = CurPosition.WorkBatch.WO.AUTH_ORG, AUTH_PROD = CurPosition.CurLine.LINE_CODE, @@ -617,7 +651,7 @@ CurPkgItem = curItem; //娣诲姞鏄庣粏鍚庡垽鏂綋鍓嶅寘瑁呭眰绾х殑鏄庣粏鏁伴噺鏄惁绛変簬鍖呰鏁伴噺锛岃嫢鐩哥瓑鍒欐爣璁板綋鍓嶅寘瑁呭眰绾т负瀹屾垚骞跺皾璇曟墦鍗版爣绛� - if (CurPkgItem.Items.Count(q => q.IsFinished) == CurPkgItem.PKG_QTY || CurStep.IsNullOrEmpty()) + if (CurPkgItem.Items.Count(q => q.IsFinished) == CurPkgItem.PKG_QTY || IsManually) { //鎵撳嵃鍓嶇О閲嶏細濡傛灉褰撳墠鐨勫寘瑁呮槑缁嗙殑涓婁竴灞傚寘瑁呭璞℃槸鏈�澶栧眰鍖呰涓旈渶瑕佺О閲嶆椂锛屽厛绉伴噸锛屽悎鏍煎悗鍦ㄥ彂鍗版垨鑰呮壂鎻忔渶澶栧眰鍖呰鏍囩 if (CurPkgItem.PKG_LEVEL == CurPkg.Item.PKG_LEVEL && CurPkg.NeedWeighing) @@ -650,7 +684,7 @@ else { //璁剧疆鎵撳嵃鍙橀噺鍊� - LabelDic[dtl.PKG_LEVEL] = CurPosition.SetLabelVariables(LabelPV, LabelDic[dtl.PKG_LEVEL]); + LabelDic[dtl.PKG_LEVEL] = CurPosition.SetLabelVariables(LabelPV, LabelDic[dtl.PKG_LEVEL], this); var data = new PackingActionOutput() { PkgInfo = CurPkg }; data.ExecCode = "Print"; @@ -729,7 +763,7 @@ action.LocaleMsg = new("MES.WorkAction.PackingAction.PackageComplete", CurPkg.Item.PKG_LEVEL, CurPkg.Item.PKG_NAME); //鎵嬪姩缁撴潫鍖呰鍒欐爣璁拌涓哄畬鎴� - //if (CurStep.IsNullOrEmpty()) + //if (IsManually) //{ // IsFinished = true; //} @@ -753,7 +787,7 @@ } //涓嶆槸鎵嬪姩缁撴潫鍖呰鍒欎繚瀛樿涓烘搷浣滆褰� - if (!CurStep.IsNullOrEmpty()) + if (!IsManually) { //璁板綍琛屼负鎿嶄綔璁板綍 var wipActs = new List<MES_WIP_ACT>(); -- Gitblit v1.9.3