服务端的TigerApi 框架,基于.NET6 2024 版本
Rodney Chen
2024-08-02 8bfaf7141c88f41d3dbd1995cfb9cb015ca0d1d6
Tiger.Business/MES/Biz.WorkBatch.cs
@@ -8,13 +8,9 @@
using Rhea.Common;
using System.Net;
using System.Linq;
using Newtonsoft.Json;
using Tiger.IBusiness;
using Microsoft.AspNetCore.Http;
using Tiger.Business.MES;
using Org.BouncyCastle.Ocsp;
using Tiger.Model.Entitys.MES.Position;
using static System.Net.Mime.MediaTypeNames;
namespace Tiger.Business
{
@@ -115,7 +111,7 @@
            /// <returns></returns>
            public ApiAction<SubmitOutput> CheckStatus()
            {
                var action = new ApiAction<SubmitOutput>(new SubmitOutput(),true);
                var action = new ApiAction<SubmitOutput>(new SubmitOutput(), true);
                WO = Biz.Db.Queryable<BIZ_MES_WO>().Where(q => q.ORDER_NO == OrderNo).First();
                Batch = Biz.Db.Queryable<BIZ_MES_WO_BATCH>().Where(q => q.ORDER_NO == OrderNo && q.ACT_LINE == LineCode).First();
@@ -123,8 +119,7 @@
                if (Batch.STATUS != BIZ_MES_WO_BATCH.STATUSs.Release.GetValue() && Batch.STATUS != BIZ_MES_WO_BATCH.STATUSs.Working.GetValue())
                {
                    action.IsSuccessed = false;
                    action.Data.CurWO = WO.ORDER_NO;
                    action.Data.CurBatch = Batch.BATCH_NO;
                    action.Data.SetValue(this, null);
                    //action.LocaleMsg = new($"工单批次[{Batch.BATCH_NO}]状态[{Batch.STATUS.GetEnum<BIZ_MES_WO_BATCH.STATUSs>().GetName()}]不是允许生产的状态,请扫描允许生产的产品条码");
                    action.LocaleMsg = new("MES.WorkBatch.WoBatchStatusCanNotWork", Batch.BATCH_NO, Batch.STATUS.GetEnum<BIZ_MES_WO_BATCH.STATUSs>().GetName());
                }
@@ -132,8 +127,7 @@
                if (WO.STATUS != BIZ_MES_WO.STATUSs.Release.GetValue() && WO.STATUS != BIZ_MES_WO.STATUSs.Working.GetValue())
                {
                    action.IsSuccessed = false;
                    action.Data.CurWO = WO.ORDER_NO;
                    action.Data.CurBatch = Batch.BATCH_NO;
                    action.Data.SetValue(this, null);
                    //action.LocaleMsg = new($"工单[{WO.ORDER_NO}]状态[{Batch.STATUS.GetEnum<BIZ_MES_WO.STATUSs>().GetName()}]不是允许生产的状态,请扫描允许生产的产品条码");
                    action.LocaleMsg = new("MES.WorkBatch.WoStatusCanNotWork", WO.ORDER_NO, Batch.STATUS.GetEnum<BIZ_MES_WO.STATUSs>().GetName());
                }
@@ -239,8 +233,7 @@
                    else
                    {
                        action.IsSuccessed = false;
                        action.Data.CurWO = WO.ORDER_NO;
                        action.Data.CurBatch = Batch.BATCH_NO;
                        action.Data.SetValue(this, null);
                        var nextList = Nodes.Where(q => q.IS_FIRST_NODE == "Y");
                        action.LocaleMsg = new("MES.WorkBatch.GotoNextNodeException", wipSN.SN, nextNode.NODE_NAME, string.Join(", ", nextList.Select(q => q.NODE_NAME + (q.CAN_SKIP == "Y" ? $"({T(L("MES.WorkBatch.Optional"), input.Locale)})" : ""))));
                        return action;
@@ -275,8 +268,7 @@
                        else
                        {
                            action.IsSuccessed = false;
                            action.Data.CurWO = WO.ORDER_NO;
                            action.Data.CurBatch = Batch.BATCH_NO;
                            action.Data.SetValue(this, null);
                            var nextList = reflowNodes.Where(q => wipSN.REFLOW_NODE.IsNullOrEmpty() || wipSN.REFLOW_NODE == q.NODE_NAME);
                            action.LocaleMsg = new("MES.WorkBatch.ReflowToNodeException", nextNode.NODE_NAME, wipSN.SN, curNode.NODE_NAME, string.Join(", ", nextList.Select(q => q.NODE_NAME + (q.CAN_SKIP == "Y" ? $"({T(L("MES.WorkBatch.Optional"), input.Locale)})" : ""))));
                            return action;
@@ -287,8 +279,7 @@
                         && curSetting.ALLOW_DFT_IN != "Y" && nextNode.Operation.OPER_TYPE != MES_OPERATION.OPER_TYPEs.Repair.GetValue())
                    {
                        action.IsSuccessed = false;
                        action.Data.CurWO = WO.ORDER_NO;
                        action.Data.CurBatch = Batch.BATCH_NO;
                        action.Data.SetValue(this, null);
                        action.LocaleMsg = new("MES.WorkBatch.PleaseGotoRepair", curNode.NODE_NAME, wipSN.SN);
                        return action;
                    }
@@ -308,8 +299,7 @@
                        if (nextNodes.Any(q => NodeSets.Any(s => s.NODE_ID == q.ID && s.IS_ACTIVE == "Y" && s.CAN_SKIP != "Y")))
                        {
                            action.IsSuccessed = false;
                            action.Data.CurWO = WO.ORDER_NO;
                            action.Data.CurBatch = Batch.BATCH_NO;
                            action.Data.SetValue(this, null);
                            var nextList = nextNodes.Where(q => NodeSets.Any(s => s.NODE_ID == q.ID && s.IS_ACTIVE == "Y" && s.CAN_SKIP != "Y"));
                            action.LocaleMsg = new("MES.WorkBatch.GotoNextNodeException", wipSN.SN, nextNode.NODE_NAME, string.Join(", ", nextList.Select(q => q.NODE_NAME + (q.CAN_SKIP == "Y" ? $"({T(L("MES.WorkBatch.Optional"), input.Locale)})" : ""))));
                            return action;
@@ -338,8 +328,7 @@
                            else
                            {
                                action.IsSuccessed = false;
                                action.Data.CurWO = WO.ORDER_NO;
                                action.Data.CurBatch = Batch.BATCH_NO;
                                action.Data.SetValue(this, null);
                                var nextList = nextNodes.Where(q => NodeSets.Any(s => s.NODE_ID == q.ID && s.IS_ACTIVE == "Y"));
                                action.LocaleMsg = new("MES.WorkBatch.GotoNextNodeException", wipSN.SN, nextNode.NODE_NAME, string.Join(", ", nextList.Select(q => q.NODE_NAME + (q.CAN_SKIP == "Y" ? $"({T(L("MES.WorkBatch.Optional"), input.Locale)})" : ""))));
                                return action;