diff --git a/SCADA/App.config b/SCADA/App.config index bc5a643..e2bc4c9 100644 --- a/SCADA/App.config +++ b/SCADA/App.config @@ -9,6 +9,8 @@ + + @@ -23,15 +25,15 @@ - - - - - - - - - + + + + + + + + + diff --git a/SCADA/Core/AppConfig.cs b/SCADA/Core/AppConfig.cs index 594b50c..4c3d389 100644 --- a/SCADA/Core/AppConfig.cs +++ b/SCADA/Core/AppConfig.cs @@ -53,6 +53,11 @@ namespace MesWork /// public static string WeighingType = AppSettings["WeighingType"] ?? "Hanging"; + /// + /// 码块订货号解析顺序:0=订货号在前, 1=流水号在前 + /// + public static int CodeBlockOrderNoReverse = int.TryParse(AppSettings["CodeBlockOrderNoReverse"], out var _cbonr) ? _cbonr : 0; + /// /// 工位1现场工位号,Hanging模式下代表放油前工位 /// diff --git a/SCADA/Funtion/MIS_Funtion.cs b/SCADA/Funtion/MIS_Funtion.cs index cdd3496..77b869e 100644 --- a/SCADA/Funtion/MIS_Funtion.cs +++ b/SCADA/Funtion/MIS_Funtion.cs @@ -180,14 +180,15 @@ namespace MesWork } - /// - /// 码块数据转换:将产品编号统一转大写,并拆分出订货号与产品编号 - /// 支持格式: - /// 0/DHN2.5Q0219-36/D426E016767 - /// DHH02K0014-400/B726E00584555 - /// - private bool TryConvertCodeBlockData(string codeBlock, out string orderNo, out string productNo) - { + /// + /// 码块数据转换:将产品编号统一转大写,并拆分出订货号与产品编号 + /// 支持格式: + /// 0/DHN2.5Q0219-36/D426E016767 + /// DHH02K0014-400/B726E00584555 + /// CodeBlockOrderNoReverse=0:订货号/流水号;CodeBlockOrderNoReverse=1:流水号/订货号 + /// + private bool TryConvertCodeBlockData(string codeBlock, out string orderNo, out string productNo) + { orderNo = ""; productNo = ""; if (string.IsNullOrWhiteSpace(codeBlock)) @@ -196,14 +197,22 @@ namespace MesWork } string normalizedCode = codeBlock.Trim().ToUpperInvariant(); - string[] parts = normalizedCode.Split('/'); - if (parts.Length >= 2) - { - orderNo = parts[parts.Length - 2].Trim(); - productNo = parts[parts.Length - 1].Trim(); - } - else - { + string[] parts = normalizedCode.Split('/'); + if (parts.Length >= 2) + { + if (CodeBlockOrderNoReverse == 1) + { + productNo = parts[parts.Length - 2].Trim(); + orderNo = parts[parts.Length - 1].Trim(); + } + else + { + orderNo = parts[parts.Length - 2].Trim(); + productNo = parts[parts.Length - 1].Trim(); + } + } + else + { productNo = normalizedCode; }