服务端的TigerApi 框架,基于.NET6 2024 版本
Rodney Chen
2024-10-25 fb6d929a21ea364313dc5ca5c99ed743cf7df9cc
优化包装行为支持不打印客户标签
已修改3个文件
22 ■■■■ 文件已修改
Tiger.Business.MES/WorkAction/PackingAction.cs 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Tiger.Business.MES/WorkAction/PrintInStoreLabel.cs 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Tiger.Model.Net/Entitys/MES/ParameterEntity/PositionParameter.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Tiger.Business.MES/WorkAction/PackingAction.cs
@@ -6,6 +6,7 @@
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Tiger.Business.MES.Transaction;
using Tiger.IBusiness;
using Tiger.IBusiness.MES.WorkAction;
using Tiger.Model;
@@ -228,6 +229,7 @@
                data.ExecCode = "Print";
                data.PkgLevel = min.PKG_LEVEL;
                data.PrintLable = LabelDic[min.PKG_LEVEL];
                data.RealPrint = data.PkgLevel != CurPkg.Item.PKG_LEVEL || CurPosition is not YadaPacking || (CurPosition as YadaPacking).IsPrintCustomerLabel;
                CurCmd = data;
                PrintTimes++;
                CurStep?.SetStatusMessage(StepStatus.Normal, Biz.L("打印标签"));
@@ -396,6 +398,7 @@
                                    data.ExecCode = "Print";
                                    data.PkgLevel = dtl.PKG_LEVEL;
                                    data.PrintLable = LabelDic[dtl.PKG_LEVEL];
                                    data.RealPrint = data.PkgLevel != CurPkg.Item.PKG_LEVEL || CurPosition is not YadaPacking || (CurPosition as YadaPacking).IsPrintCustomerLabel;
                                    CurCmd = data;
                                    PrintTimes++;
                                    CurStep?.SetStatusMessage(StepStatus.Normal, Biz.L("打印标签"));
@@ -493,6 +496,7 @@
                            data.ExecCode = "Print";
                            data.PkgLevel = dtl.PKG_LEVEL;
                            data.PrintLable = LabelDic[dtl.PKG_LEVEL];
                            data.RealPrint = data.PkgLevel != CurPkg.Item.PKG_LEVEL || CurPosition is not YadaPacking || (CurPosition as YadaPacking).IsPrintCustomerLabel;
                            CurCmd = data;
                            PrintTimes++;
                            CurStep?.SetStatusMessage(StepStatus.Normal, Biz.L("打印标签"));
@@ -712,6 +716,7 @@
                                    data.ExecCode = "Print";
                                    data.PkgLevel = dtl.PKG_LEVEL;
                                    data.PrintLable = LabelDic[dtl.PKG_LEVEL];
                                    data.RealPrint = data.PkgLevel != CurPkg.Item.PKG_LEVEL || CurPosition is not YadaPacking || (CurPosition as YadaPacking).IsPrintCustomerLabel;
                                    CurCmd = data;
                                    PrintTimes++;
                                    CurStep?.SetStatusMessage(StepStatus.Normal, Biz.L("打印标签"));
@@ -856,6 +861,9 @@
                        ACT_TYPE = NodeAct.ACT_TYPE,
                        ACT_SN = wipSn.SN,
                        ACT_RESULT = "Y",
                        ACT_VALUE_1 = CurPkg.IsFinished ? "Y" : "N",
                        ACT_VALUE_2 = CurPkg.ToJson(),
                        ACT_VALUE_3 = CurPkg.IsFinished ? LabelDic[CurPkg.Item.PKG_LEVEL].ToJson() : "",
                        ELAPSED_TIME = CurStep.GetElapsedTime().TotalMilliseconds.ToInt64(),
                        TRACE_INFO = $"产品条码[{string.Join(",", CurPosition.CurSN)}]包装完成",
                    };
Tiger.Business.MES/WorkAction/PrintInStoreLabel.cs
@@ -25,7 +25,7 @@
        #endregion
        public BAS_LABEL_TEMP Label { get; set; }
        public List<BAS_LABEL_PV> LabelPV { get; set; }
        public bool NoNeedPrint { get; set; }
        public bool NoNeedInStorePrint { get; set; }
        #endregion Propertys & Variables
        #region Functions
@@ -68,9 +68,9 @@
        {
            var action = new ApiAction<SubmitOutput>(new SubmitOutput());
            NoNeedPrint = (!CurPosition.Context.ContainsKey("CurPackage") || !(CurPosition.Context["CurPackage"] as WipPkg).IsFinished)
            NoNeedInStorePrint = (!CurPosition.Context.ContainsKey("CurPackage") || !(CurPosition.Context["CurPackage"] as WipPkg).IsFinished)
                                    || (CurPosition is YadaPacking && (CurPosition as YadaPacking).IsPrintCustomerLabel);
            if (NoNeedPrint)
            if (NoNeedInStorePrint)
            {
                action = End(input);
            } 
@@ -167,7 +167,7 @@
                    ACT_VALUE_2 = Label.Variables.ToJson(),
                    ACT_RESULT = "Y",
                    ELAPSED_TIME = CurStep.GetElapsedTime().TotalMilliseconds.ToInt64(),
                    TRACE_INFO = NoNeedPrint ? $"无需打印入库标签" : $"标签{Label.LABEL_NAME}[{Label.LABEL_CODE}]打印成功",
                    TRACE_INFO = NoNeedInStorePrint ? $"无需打印入库标签" : $"标签{Label.LABEL_NAME}[{Label.LABEL_CODE}]打印成功",
                };
                wipActs.Add(wipAct);
            }
@@ -182,7 +182,7 @@
            };
            IsFinished = true;
            if (NoNeedPrint)
            if (NoNeedInStorePrint)
            {
                CurStep.Message = Biz.L("无需打印");
                CurStep.Status = StepStatus.Finished;
Tiger.Model.Net/Entitys/MES/ParameterEntity/PositionParameter.cs
@@ -152,6 +152,10 @@
        /// </summary>
        public int PkgLevel { get; set; }
        /// <summary>
        /// 是否需要
        /// </summary>
        public bool RealPrint { get; set; } = true;
        /// <summary>
        /// 当前需要打印的包装层级的标签信息
        /// </summary>
        public BAS_LABEL_TEMP PrintLable { get; set; }