杨张扬
15 小时以前 f9d7694d27475954449ce3073938af98a4798b07
wms/WMSHelper.cs
@@ -1,15 +1,8 @@
using HH.WCS.Mobox3.DoubleCoin.api;
using HH.WCS.Mobox3.DoubleCoin.dispatch;
using HH.WCS.Mobox3.DoubleCoin.dispatch;
using HH.WCS.Mobox3.DoubleCoin.models;
using HH.WCS.Mobox3.DoubleCoin.util;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using System.Reflection;
using System.Runtime.Remoting.Messaging;
using System.Text;
using System.Threading.Tasks;
using static HH.WCS.Mobox3.DoubleCoin.api.ApiModel;
namespace HH.WCS.Mobox3.DoubleCoin.wms
@@ -89,7 +82,13 @@
            }
        }
        /// <summary>
        /// 插入操作员信息
        /// </summary>
        /// <param name="staff"></param>
        /// <param name="type"></param>
        /// <param name="cntrCode"></param>
        /// <param name="qty"></param>
        public static void InsertOpInfo(string staff, string type , string cntrCode ="",int qty = 0)
        {
            try
@@ -123,5 +122,33 @@
                LogHelper.Error($"插入操作员信息,发生了异常,{ex.Message}",ex);
            }
        }
        /// <summary>
        /// 将16进制字符串转换为ASCII字符串
        /// </summary>
        /// <param name="hexString"></param>
        /// <returns></returns>
        public static string ConvertHexToAscii(string hexString)
        {
            LogHelper.Info($"将16进制字符串转换为ASCII字符串,转换前:{hexString}");
            // 验证输入是否为16位16进制字符串
            if (hexString.Length != 16 || !System.Text.RegularExpressions.Regex.IsMatch(hexString, @"^[0-9A-Fa-f]+$"))
            {
                throw new ArgumentException("输入必须是16位的16进制字符串");
            }
            // 每两位转换一个ASCII字符
            StringBuilder asciiString = new StringBuilder();
            for (int i = 0; i < 16; i += 2)
            {
                string hexPair = hexString.Substring(i, 2);
                byte asciiChar = Convert.ToByte(hexPair, 16);
                asciiString.Append((char)asciiChar);
            }
            LogHelper.Info($"将16进制字符串转换为ASCII字符串,转换后:{asciiString.ToString()}");
            return asciiString.ToString();
        }
    }
}