From 1ab448972aed699a5665876316972cc07b879e95 Mon Sep 17 00:00:00 2001 From: Rodney Chen <rodney.chen@hotmail.com> Date: 星期五, 18 十月 2024 15:35:13 +0800 Subject: [PATCH] 包装行为支持生成包装条码 --- Tiger.Business.MES/Transaction/Position.cs | 39 ++++++++++++++++++++++++++++++++------- 1 files changed, 32 insertions(+), 7 deletions(-) diff --git a/Tiger.Business.MES/Transaction/Position.cs b/Tiger.Business.MES/Transaction/Position.cs index 5035f38..7c5b570 100644 --- a/Tiger.Business.MES/Transaction/Position.cs +++ b/Tiger.Business.MES/Transaction/Position.cs @@ -538,7 +538,7 @@ /// <param name="labelPVs">杩囩▼鍙橀噺鍒楄〃</param> /// <param name="lv">鏍囩妯℃澘鍙橀噺</param> /// <returns></returns> - public string GetPrintProcessValue(List<BAS_LABEL_PV> labelPVs, BAS_LABEL_VAR lv, List<BAS_LABEL_VAR> lvars, IWorkAction action) + public string GetPrintProcessValue(List<BAS_LABEL_PV> labelPVs, BAS_LABEL_VAR lv, List<BAS_LABEL_VAR> lvars, IWorkAction curAction) { var pv = labelPVs.FirstOrDefault(q => q.VAR_CODE == lv.VAR_VALUE); if (!pv.IsNullOrEmpty()) @@ -562,12 +562,12 @@ case "GetPackNumber": return GetLabelVarWo(lv, WorkBatch.WO.ORDER_NO); case "GetBoxQR": - return action is PackingAction ? GetBoxCode(lvars, action as PackingAction) : ""; + return curAction is PackingAction ? GetBoxCode(lvars, curAction as PackingAction) : ""; case "GetCardQR": - return action is PackingAction ? GetCardOrBoxQR(GetCardCode(lvars), lvars, action as PackingAction) : ""; + return curAction is PackingAction ? GetCardOrBoxQR(GetCardCode(lvars), lvars, curAction as PackingAction) : ""; case "GetCardSN": List<string> minPkgList = new List<string>(); - var _pkaction = action is PackingAction ? action as PackingAction : null; + var _pkaction = curAction is PackingAction ? curAction as PackingAction : null; if (_pkaction != null) { minPkgList = GetMinPkgList(_pkaction); @@ -583,7 +583,7 @@ return GetLabelVarWo(lv, WorkBatch.WO.Customer?.CUST_NAME_CN); case "GetHWDate": List<string> list = new List<string>(); - var _action = action is PackingAction ? action as PackingAction : null; + var _action = curAction is PackingAction ? curAction as PackingAction : null; if (_action != null) { list = GetMinPkgList(_action); @@ -591,7 +591,7 @@ return GetHuaWeiWeek(WorkBatch.Batch.ORDER_NO, list); case "GetQty": List<string> qtylist = new List<string>(); - var _qtyAction = action is PackingAction ? action as PackingAction : null; + var _qtyAction = curAction is PackingAction ? curAction as PackingAction : null; if (_qtyAction != null) { qtylist = GetMinPkgList(_qtyAction); @@ -611,7 +611,7 @@ return GetLabelVarWo(lv, ""); case "GetLOTNO": string _lotnos = ""; - var _orderAction = action is PackingAction ? action as PackingAction : null; + var _orderAction = curAction is PackingAction ? curAction as PackingAction : null; if (_orderAction != null) { var snList = _orderAction.GetMinPackageList(_orderAction.CurPkg.Item).Select(q => q.FLOW_SN).ToList(); @@ -816,6 +816,31 @@ } } #endregion + #region 鏉$爜瑙勫垯鏂规硶 + /// <summary> + /// 鑾峰彇鏍规嵁鏉$爜瑙勫垯鐢熸垚鏉$爜 + /// </summary> + /// <param name="ruleCode"></param> + /// <param name="curAction"></param> + /// <returns></returns> + public string GenerateSN(string ruleCode, IWorkAction curAction) + { + var rule = Biz.CodeRule[ruleCode ?? ""]; + if (!rule.IsNullOrEmpty()) + { + switch (rule.RULE_CODE) + { + case "WhiteBoxNo": + return rule.Generate("W", $"{WorkBatch.Batch.BATCH_NO}-{WorkBatch.Batch.PLAN_QTY}-").Data.ToString() ?? ""; + case "CartonNo": + return rule.Generate("B", $"{WorkBatch.Batch.BATCH_NO}-{WorkBatch.Batch.PLAN_QTY}-").Data.ToString() ?? ""; + default: + return rule.Generate().Data.ToString() ?? ""; + } + } + return ""; + } + #endregion #region 鍖呰涓撶敤鏂规硶 /// <summary> /// 鏍规嵁浼犲叆鐨勫寘瑁呭璞¤繑鍥炴墍鏈夌殑鍖呰瀹炰綋鍒楄〃 -- Gitblit v1.9.3