服务端的TigerApi 框架,基于.NET6 2024 版本
Rodney Chen
2024-08-02 4ad0c3cfa27e9562217e517d62173bf97759f68e
Tiger.Business/MES/Biz.WorkBatch.cs
@@ -106,10 +106,11 @@
            }
            /// <summary>
            /// 检查工单实时状态,判断可以生产:工单跟批次状态不是已下发或者生产中,则不允许生产
            /// 检查工单在当前工序节点是否可以生产
            /// </summary>
            /// <param name="curNode"></param>
            /// <returns></returns>
            public ApiAction<SubmitOutput> CheckStatus()
            public ApiAction<SubmitOutput> CheckCanProduce(MES_WO_NODE curNode)
            {
                var action = new ApiAction<SubmitOutput>(new SubmitOutput(), true);
@@ -131,6 +132,14 @@
                    //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());
                }
                //工单批次投入数量减去报废数量如果大于等于计划数量,则不允许生产
                if (curNode.IS_INPUT == "Y" && Batch.INPUT_QTY - Batch.SCRAP_QTY >= Batch.PLAN_QTY)
                {
                    action.IsSuccessed = false;
                    action.Data.SetValue(this, null);
                    action.LocaleMsg = new($"工单批次[{0}]已投入 {1},其中报废 {2},以满足计划数量[{3}],无需继续投入");
                    action.LocaleMsg = new("MES.WorkBatch.WoInputEnough", Batch.BATCH_NO, Batch.INPUT_QTY, Batch.SCRAP_QTY, Batch.PLAN_QTY);
                }
                return action;
            }