服务端的TigerApi 框架,基于.NET6 2024 版本
Rodney Chen
2025-03-10 40df5d91f800bb8b7be2638c13b4f9292d461221
Tiger.Business.WMS/Transaction/WMSTransactionBase.cs
@@ -13,6 +13,7 @@
using Newtonsoft.Json;
using Tiger.Business.WMS.Seastone;
using Tiger.IBusiness;
using Tiger.Model.Entitys.MES.Position;
namespace Tiger.Business.WMS.Transaction
{
@@ -70,7 +71,7 @@
        {
            var action = new ApiAction();
            ResetInfo();
            ResetScan();
            action.IsSuccessed = true;
            //action.LocaleMsg = new($"操作已重置,请重新扫描");
            action.LocaleMsg = new("WMS.Transaction.Reset");
@@ -80,15 +81,71 @@
        /// <summary>
        /// 重置当前操作,有需要则重写此方法
        /// </summary>
        public virtual void ResetInfo()
        public virtual void ResetScan()
        {
            ProcessingSn = null;
        }
        #endregion
        #region MQTT
        /// <summary>
        /// 设置当前条码的工序信息
        /// </summary>
        public ApiAction<ScanOutput> SetOutPutMqttMsg(ApiAction<ScanOutput> action, string locale = null)
        {
            MQTT.Message msg = new()
            {
                IsSuccessed = action.IsSuccessed,
                Content = Biz.T(action.LocaleMsg, locale),
            };
            switch (action.Status)
            {
                case ApiAction.StatusCodes.Success:
                    msg.Voice = MQTT.Voice.Success;
                    msg.Color = "#FF1E90FF";
                    break;
                case ApiAction.StatusCodes.Warning:
                    msg.Voice = MQTT.Voice.Warning;
                    msg.Color = "#FFB8860B";
                    break;
                case ApiAction.StatusCodes.Error:
                case ApiAction.StatusCodes.Failed:
                    msg.Voice = MQTT.Voice.Fail;
                    msg.Color = "#FFFF0000";
                    break;
                case ApiAction.StatusCodes.Exception:
                    msg.Voice = MQTT.Voice.Fail;
                    msg.Color = "#FF8B0000";
                    break;
                case ApiAction.StatusCodes.Normal:
                case ApiAction.StatusCodes.NeedConfrim:
                case ApiAction.StatusCodes.Confrimed:
                default:
                    msg.Voice = MQTT.Voice.Silent;
                    msg.Color = "#FF000000";
                    break;
            }
            if (action.IsSuccessed)
            {
                msg.Voice = MQTT.Voice.Success;
                msg.Color = "#FF228B22";
            }
            else if (!action.IsSuccessed)
            {
                msg.Voice = MQTT.Voice.Fail;
                msg.Color = "#FFFF0000";
            }
            else
            {
                msg.Voice = MQTT.Voice.Silent;
                msg.Color = "#FF000000";
            }
            action.Data.MqttMsg = msg;
            return action;
        }
        private Thread MQTTThread;
        private void MQTT()
        private void Mqtt()
        {
            try
            {