服务端的TigerApi 框架,基于.NET6 2024 版本
Rodney Chen
2024-10-10 83dbcd7c0d6afcbbd1f20dc1e7371be89ee28f0b
优化工序逻辑
已修改4个文件
36 ■■■■■ 文件已修改
Tiger.Business.MES/Transaction/CollectNode.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Tiger.Business.MES/Transaction/PackingNode.cs 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Tiger.Business.MES/Transaction/TestNode.cs 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Tiger.Model.Net/Entitys/MES/MES_OPERATION.cs 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Tiger.Business.MES/Transaction/CollectNode.cs
@@ -308,7 +308,7 @@
                    }
                    //更新工单条码明细信息
                    var woSNs = CurBatch.WoSNs.Where(q => wipSNs.Any(w => q.SN == w.SN)).ToList();
                    var woSNs = CurBatch.WoSNs.Where(q => wipSNs.Any(w => q.WIP_ID == w.ID)).ToList();
                    foreach (var woSN in woSNs)
                    {
                        woSN.AUTH_ORG = CurBatch.WO.AUTH_ORG;
@@ -342,7 +342,7 @@
                        //如果是投入站
                        if (curNodeSetting.IS_INPUT == "Y")
                        {
                            var woSN = woSNs.First(q => q.SN == wipSN.SN);
                            var woSN = woSNs.First(q => q.WIP_ID == wipSN.ID);
                            woSN.STATUS = BIZ_MES_WO_SN.STATUSs.Inputed.GetValue();
                            wipSN.STATUS = MES_WIP_DATA.STATUSs.Input.GetValue();
                            wipSN.INLINE_DATE = DateTime.Now;
@@ -350,7 +350,7 @@
                        //如果是产出站
                        if (curNodeSetting.IS_OUTPUT == "Y")
                        {
                            var woSN = woSNs.First(q => q.SN == wipSN.SN);
                            var woSN = woSNs.First(q => q.WIP_ID == wipSN.ID);
                            woSN.STATUS = BIZ_MES_WO_SN.STATUSs.Finished.GetValue();
                            wipSN.STATUS = MES_WIP_DATA.STATUSs.Finished.GetValue();
                            wipSN.OUTLINE_DATE = DateTime.Now;
Tiger.Business.MES/Transaction/PackingNode.cs
@@ -62,7 +62,6 @@
                //NodeSubmit:产品过站,正常产品过站逻辑
                else
                {
                    NodeCmd = "NodeSubmit";
                    //工步列表为空或者工序节点工步有未完成时,优先完成工序节点工步
                    if (Steps.IsNullOrEmpty() || !IsFinishNodeSteps)
                    {
@@ -330,10 +329,13 @@
                        return canGotoNext;
                    }
                    //设置当前指令为正常产品过站
                    NodeCmd = "NodeSubmit";
                    //绑定条码到工单
                    foreach (var wipSN in wipSNs)
                    {
                        if (!CurBatch.WoSNs.Any(q => q.SN == wipSN.SN))
                        if (!CurBatch.WoSNs.Any(q => q.WIP_ID == wipSN.ID))
                        {
                            CurBatch.WoSNs.Add(new()
                            {
@@ -348,7 +350,7 @@
                    }
                    //更新工单条码明细信息
                    var woSNs = CurBatch.WoSNs.Where(q => wipSNs.Any(w => q.SN == w.SN)).ToList();
                    var woSNs = CurBatch.WoSNs.Where(q => wipSNs.Any(w => q.WIP_ID == w.ID)).ToList();
                    foreach (var woSN in woSNs)
                    {
                        woSN.AUTH_ORG = CurBatch.WO.AUTH_ORG;
@@ -382,7 +384,7 @@
                        //如果是投入站
                        if (curNodeSetting.IS_INPUT == "Y")
                        {
                            var woSN = woSNs.First(q => q.SN == wipSN.SN);
                            var woSN = woSNs.First(q => q.WIP_ID == wipSN.ID);
                            woSN.STATUS = BIZ_MES_WO_SN.STATUSs.Inputed.GetValue();
                            wipSN.STATUS = MES_WIP_DATA.STATUSs.Input.GetValue();
                            wipSN.INLINE_DATE = DateTime.Now;
@@ -390,7 +392,7 @@
                        //如果是产出站
                        if (curNodeSetting.IS_OUTPUT == "Y")
                        {
                            var woSN = woSNs.First(q => q.SN == wipSN.SN);
                            var woSN = woSNs.First(q => q.WIP_ID == wipSN.ID);
                            woSN.STATUS = BIZ_MES_WO_SN.STATUSs.Finished.GetValue();
                            wipSN.STATUS = MES_WIP_DATA.STATUSs.Finished.GetValue();
                            wipSN.OUTLINE_DATE = DateTime.Now;
@@ -622,7 +624,7 @@
            try
            {
                //PkgSubmit:手动结束包装,保存暂存的包装数据
                if (NodeCmd.IsNullOrEmpty("PkgSubmit") == "PkgSubmit")
                if (NodeCmd.IsNullOrEmpty("PkgSubmit") == "PkgSubmit" || CurWipSNs.IsNullOrEmpty())
                {
                    if (Context.ContainsKey("CurPackage"))
                    {
Tiger.Business.MES/Transaction/TestNode.cs
@@ -293,7 +293,7 @@
                    //绑定条码到工单
                    foreach (var wipSN in wipSNs)
                    {
                        if (!CurBatch.WoSNs.Any(q => q.SN == wipSN.SN))
                        if (!CurBatch.WoSNs.Any(q => q.WIP_ID == wipSN.ID))
                        {
                            CurBatch.WoSNs.Add(new()
                            {
@@ -308,7 +308,7 @@
                    }
                    //更新工单条码明细信息
                    var woSNs = CurBatch.WoSNs.Where(q => wipSNs.Any(w => q.SN == w.SN)).ToList();
                    var woSNs = CurBatch.WoSNs.Where(q => wipSNs.Any(w => q.WIP_ID == w.ID)).ToList();
                    foreach (var woSN in woSNs)
                    {
                        woSN.AUTH_ORG = CurBatch.WO.AUTH_ORG;
@@ -342,7 +342,7 @@
                        //如果是投入站
                        if (curNodeSetting.IS_INPUT == "Y")
                        {
                            var woSN = woSNs.First(q => q.SN == wipSN.SN);
                            var woSN = woSNs.First(q => q.WIP_ID == wipSN.ID);
                            woSN.STATUS = BIZ_MES_WO_SN.STATUSs.Inputed.GetValue();
                            wipSN.STATUS = MES_WIP_DATA.STATUSs.Input.GetValue();
                            wipSN.INLINE_DATE = DateTime.Now;
@@ -350,7 +350,7 @@
                        //如果是产出站
                        if (curNodeSetting.IS_OUTPUT == "Y")
                        {
                            var woSN = woSNs.First(q => q.SN == wipSN.SN);
                            var woSN = woSNs.First(q => q.WIP_ID == wipSN.ID);
                            woSN.STATUS = BIZ_MES_WO_SN.STATUSs.Finished.GetValue();
                            wipSN.STATUS = MES_WIP_DATA.STATUSs.Finished.GetValue();
                            wipSN.OUTLINE_DATE = DateTime.Now;
Tiger.Model.Net/Entitys/MES/MES_OPERATION.cs
@@ -39,9 +39,9 @@
        [DisplayName("工序简称")]
        public string SHORT_NAME { get; set; }
        /// <summary>
        /// 工序类型(0Collect采集工序|1Assembly组装工序|2Test测试工序|3Packing包装工序|4Repair维修工序)
        /// 工序类型(-1FlowMark流程标记|0Collect采集工序|1Assembly组装工序|2Test测试工序|3Packing包装工序|4Repair维修工序)
        /// </summary>
        [DisplayName("工序类型(0Collect采集工序|1Assembly组装工序|2Test测试工序|3Packing包装工序|4Repair维修工序)")]
        [DisplayName("工序类型(-1FlowMark流程标记|0Collect采集工序|1Assembly组装工序|2Test测试工序|3Packing包装工序|4Repair维修工序)")]
        public int OPER_TYPE { get; set; }
        /// <summary>
        /// 工序类名(FullName,包括命名空间)
@@ -118,10 +118,12 @@
        */
        /// <summary>
        /// 枚举:工序类型(0Collect采集工序|1Assembly组装工序|2Test测试工序|3Packing包装工序|4Repair维修工序)
        /// 枚举:工序类型(-1FlowMark流程标记|0Collect采集工序|1Assembly组装工序|2Test测试工序|3Packing包装工序|4Repair维修工序)
        /// </summary>
        public enum OPER_TYPEs
        {
            [Description("流程标记")]
            FlowMark = -1,
            [Description("采集工序")]
            Collect = 0,
            [Description("组装工序")]