1
llj
昨天 599aeb0d380f9b194e1dc363364779f3b498969e
1
17个文件已修改
2个文件已添加
84个文件已删除
674 ■■■■■ 已修改文件
BLL/bin/Release/BLL.dll 补丁 | 查看 | 原始文档 | blame | 历史
BLL/bin/Release/BLL.pdb 补丁 | 查看 | 原始文档 | blame | 历史
BLL/bin/Release/DAL.dll 补丁 | 查看 | 原始文档 | blame | 历史
BLL/bin/Release/DAL.pdb 补丁 | 查看 | 原始文档 | blame | 历史
BLL/bin/Release/DBUtility.dll 补丁 | 查看 | 原始文档 | blame | 历史
BLL/bin/Release/DBUtility.pdb 补丁 | 查看 | 原始文档 | blame | 历史
BLL/bin/Release/Model.dll 补丁 | 查看 | 原始文档 | blame | 历史
BLL/bin/Release/Model.pdb 补丁 | 查看 | 原始文档 | blame | 历史
BLL/bin/Release/Pub_Class.dll 补丁 | 查看 | 原始文档 | blame | 历史
BLL/bin/Release/Pub_Class.pdb 补丁 | 查看 | 原始文档 | blame | 历史
BLL/bin/Release/Pub_Control.dll 补丁 | 查看 | 原始文档 | blame | 历史
BLL/bin/Release/Pub_Control.pdb 补丁 | 查看 | 原始文档 | blame | 历史
BLL/bin/Release/SQLHelper.dll 补丁 | 查看 | 原始文档 | blame | 历史
BLL/bin/Release/SQLHelper.pdb 补丁 | 查看 | 原始文档 | blame | 历史
DAL/bin/Release/DAL.dll 补丁 | 查看 | 原始文档 | blame | 历史
DAL/bin/Release/DAL.pdb 补丁 | 查看 | 原始文档 | blame | 历史
DAL/bin/Release/DBUtility.dll 补丁 | 查看 | 原始文档 | blame | 历史
DAL/bin/Release/DBUtility.pdb 补丁 | 查看 | 原始文档 | blame | 历史
DAL/bin/Release/Model.dll 补丁 | 查看 | 原始文档 | blame | 历史
DAL/bin/Release/Model.pdb 补丁 | 查看 | 原始文档 | blame | 历史
DAL/bin/Release/Pub_Class.dll 补丁 | 查看 | 原始文档 | blame | 历史
DAL/bin/Release/Pub_Class.pdb 补丁 | 查看 | 原始文档 | blame | 历史
DAL/bin/Release/Pub_Control.dll 补丁 | 查看 | 原始文档 | blame | 历史
DAL/bin/Release/Pub_Control.pdb 补丁 | 查看 | 原始文档 | blame | 历史
DAL/bin/Release/SQLHelper.dll 补丁 | 查看 | 原始文档 | blame | 历史
DAL/bin/Release/SQLHelper.pdb 补丁 | 查看 | 原始文档 | blame | 历史
DBUtility/bin/Release/DBUtility.dll 补丁 | 查看 | 原始文档 | blame | 历史
DBUtility/bin/Release/DBUtility.pdb 补丁 | 查看 | 原始文档 | blame | 历史
DBUtility/bin/Release/Pub_Class.dll 补丁 | 查看 | 原始文档 | blame | 历史
DBUtility/bin/Release/Pub_Class.pdb 补丁 | 查看 | 原始文档 | blame | 历史
DBUtility/bin/Release/Pub_Control.dll 补丁 | 查看 | 原始文档 | blame | 历史
DBUtility/bin/Release/Pub_Control.pdb 补丁 | 查看 | 原始文档 | blame | 历史
DBUtility/bin/Release/SQLHelper.dll 补丁 | 查看 | 原始文档 | blame | 历史
DBUtility/bin/Release/SQLHelper.pdb 补丁 | 查看 | 原始文档 | blame | 历史
DBUtility/obj/Release/DBUtility.Gy_UserSelect.resources 补丁 | 查看 | 原始文档 | blame | 历史
DBUtility/obj/Release/DBUtility.Xt_BillType.resources 补丁 | 查看 | 原始文档 | blame | 历史
DBUtility/obj/Release/DBUtility.Xt_CheckFlow.resources 补丁 | 查看 | 原始文档 | blame | 历史
DBUtility/obj/Release/DBUtility.Xt_CheckFlowList.resources 补丁 | 查看 | 原始文档 | blame | 历史
DBUtility/obj/Release/DBUtility.Xt_CheckItem.resources 补丁 | 查看 | 原始文档 | blame | 历史
DBUtility/obj/Release/DBUtility.Xt_CheckUserRight.resources 补丁 | 查看 | 原始文档 | blame | 历史
DBUtility/obj/Release/DBUtility.csproj.AssemblyReference.cache 补丁 | 查看 | 原始文档 | blame | 历史
DBUtility/obj/Release/DBUtility.csproj.GenerateResource.Cache 补丁 | 查看 | 原始文档 | blame | 历史
DBUtility/obj/Release/DBUtility.csproj.ResolveComReference.cache 补丁 | 查看 | 原始文档 | blame | 历史
DBUtility/obj/Release/DBUtility.dll 补丁 | 查看 | 原始文档 | blame | 历史
DBUtility/obj/Release/DBUtility.pdb 补丁 | 查看 | 原始文档 | blame | 历史
Model/bin/Release/DBUtility.dll 补丁 | 查看 | 原始文档 | blame | 历史
Model/bin/Release/DBUtility.pdb 补丁 | 查看 | 原始文档 | blame | 历史
Model/bin/Release/Model.dll 补丁 | 查看 | 原始文档 | blame | 历史
Model/bin/Release/Model.pdb 补丁 | 查看 | 原始文档 | blame | 历史
Model/bin/Release/Pub_Class.dll 补丁 | 查看 | 原始文档 | blame | 历史
Model/bin/Release/Pub_Class.pdb 补丁 | 查看 | 原始文档 | blame | 历史
Model/bin/Release/Pub_Control.dll 补丁 | 查看 | 原始文档 | blame | 历史
Model/bin/Release/Pub_Control.pdb 补丁 | 查看 | 原始文档 | blame | 历史
Model/bin/Release/SQLHelper.dll 补丁 | 查看 | 原始文档 | blame | 历史
Model/bin/Release/SQLHelper.pdb 补丁 | 查看 | 原始文档 | blame | 历史
Model/obj/Release/Model.csproj.AssemblyReference.cache 补丁 | 查看 | 原始文档 | blame | 历史
Model/obj/Release/Model.dll 补丁 | 查看 | 原始文档 | blame | 历史
Model/obj/Release/Model.pdb 补丁 | 查看 | 原始文档 | blame | 历史
Pub_Class/bin/Release/Pub_Class.dll 补丁 | 查看 | 原始文档 | blame | 历史
Pub_Class/bin/Release/Pub_Class.pdb 补丁 | 查看 | 原始文档 | blame | 历史
Pub_Class/bin/Release/SyntacticSugar.dll 补丁 | 查看 | 原始文档 | blame | 历史
Pub_Class/bin/Release/SyntacticSugar.pdb 补丁 | 查看 | 原始文档 | blame | 历史
Pub_Control/bin/Release/Pub_Class.dll 补丁 | 查看 | 原始文档 | blame | 历史
Pub_Control/bin/Release/Pub_Class.pdb 补丁 | 查看 | 原始文档 | blame | 历史
Pub_Control/bin/Release/Pub_Control.dll 补丁 | 查看 | 原始文档 | blame | 历史
Pub_Control/bin/Release/Pub_Control.pdb 补丁 | 查看 | 原始文档 | blame | 历史
SQLHelper/bin/Release/Pub_Class.dll 补丁 | 查看 | 原始文档 | blame | 历史
SQLHelper/bin/Release/Pub_Class.pdb 补丁 | 查看 | 原始文档 | blame | 历史
SQLHelper/bin/Release/SQLHelper.dll 补丁 | 查看 | 原始文档 | blame | 历史
SQLHelper/bin/Release/SQLHelper.pdb 补丁 | 查看 | 原始文档 | blame | 历史
SQLHelper/obj/Release/SQLHelper.csproj.AssemblyReference.cache 补丁 | 查看 | 原始文档 | blame | 历史
SQLHelper/obj/Release/SQLHelper.dll 补丁 | 查看 | 原始文档 | blame | 历史
SQLHelper/obj/Release/SQLHelper.pdb 补丁 | 查看 | 原始文档 | blame | 历史
SyntacticSugar/bin/Release/SyntacticSugar.dll 补丁 | 查看 | 原始文档 | blame | 历史
SyntacticSugar/bin/Release/SyntacticSugar.pdb 补丁 | 查看 | 原始文档 | blame | 历史
SyntacticSugar/obj/Debug/SyntacticSugar.csproj.AssemblyReference.cache 补丁 | 查看 | 原始文档 | blame | 历史
SyntacticSugar/obj/Debug/SyntacticSugar.csproj.FileListAbsolute.txt 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
SyntacticSugar/obj/Release/SyntacticSugar.csproj.CoreCompileInputs.cache 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SyntacticSugar/obj/Release/SyntacticSugar.dll 补丁 | 查看 | 原始文档 | blame | 历史
SyntacticSugar/obj/Release/SyntacticSugar.pdb 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/App_Start/WebApiConfig.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/WebAPIController.cs 135 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/仓存管理/条码生成/Sc_BarCodeController.cs 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/条码管理/WEBSController.cs 262 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Properties/PublishProfiles/CHZFolderProfile.pubxml.user 52 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Service/GeTuiService.cs 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Service/JwtAuthorizeAttribute.cs 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/WebAPI.csproj 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/WebAPI.csproj.user 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/ZPLTemplate/物料条码 100×60.zpl 65 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/ZPLTemplate/物料条码 80×60.zpl 75 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
sdk_dingding/TopSdk/bin/Debug/TopSdk.dll 补丁 | 查看 | 原始文档 | blame | 历史
sdk_dingding/TopSdk/bin/Debug/TopSdk.pdb 补丁 | 查看 | 原始文档 | blame | 历史
sdk_dingding/TopSdk/bin/Release/TopSdk.dll 补丁 | 查看 | 原始文档 | blame | 历史
sdk_dingding/TopSdk/bin/Release/TopSdk.pdb 补丁 | 查看 | 原始文档 | blame | 历史
sdk_dingding/TopSdk/obj/Debug/TopSdk.csproj.AssemblyReference.cache 补丁 | 查看 | 原始文档 | blame | 历史
sdk_dingding/TopSdk/obj/Debug/TopSdk.csproj.FileListAbsolute.txt 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
sdk_dingding/TopSdk/obj/Debug/TopSdk.dll 补丁 | 查看 | 原始文档 | blame | 历史
sdk_dingding/TopSdk/obj/Debug/TopSdk.pdb 补丁 | 查看 | 原始文档 | blame | 历史
sdk_dingding/TopSdk/obj/Release/TopSdk.csproj.AssemblyReference.cache 补丁 | 查看 | 原始文档 | blame | 历史
sdk_dingding/TopSdk/obj/Release/TopSdk.csproj.CoreCompileInputs.cache 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
sdk_dingding/TopSdk/obj/Release/TopSdk.dll 补丁 | 查看 | 原始文档 | blame | 历史
sdk_dingding/TopSdk/obj/Release/TopSdk.pdb 补丁 | 查看 | 原始文档 | blame | 历史
BLL/bin/Release/BLL.dll
Binary files differ
BLL/bin/Release/BLL.pdb
Binary files differ
BLL/bin/Release/DAL.dll
Binary files differ
BLL/bin/Release/DAL.pdb
Binary files differ
BLL/bin/Release/DBUtility.dll
Binary files differ
BLL/bin/Release/DBUtility.pdb
Binary files differ
BLL/bin/Release/Model.dll
Binary files differ
BLL/bin/Release/Model.pdb
Binary files differ
BLL/bin/Release/Pub_Class.dll
Binary files differ
BLL/bin/Release/Pub_Class.pdb
Binary files differ
BLL/bin/Release/Pub_Control.dll
Binary files differ
BLL/bin/Release/Pub_Control.pdb
Binary files differ
BLL/bin/Release/SQLHelper.dll
Binary files differ
BLL/bin/Release/SQLHelper.pdb
Binary files differ
DAL/bin/Release/DAL.dll
Binary files differ
DAL/bin/Release/DAL.pdb
Binary files differ
DAL/bin/Release/DBUtility.dll
Binary files differ
DAL/bin/Release/DBUtility.pdb
Binary files differ
DAL/bin/Release/Model.dll
Binary files differ
DAL/bin/Release/Model.pdb
Binary files differ
DAL/bin/Release/Pub_Class.dll
Binary files differ
DAL/bin/Release/Pub_Class.pdb
Binary files differ
DAL/bin/Release/Pub_Control.dll
Binary files differ
DAL/bin/Release/Pub_Control.pdb
Binary files differ
DAL/bin/Release/SQLHelper.dll
Binary files differ
DAL/bin/Release/SQLHelper.pdb
Binary files differ
DBUtility/bin/Release/DBUtility.dll
Binary files differ
DBUtility/bin/Release/DBUtility.pdb
Binary files differ
DBUtility/bin/Release/Pub_Class.dll
Binary files differ
DBUtility/bin/Release/Pub_Class.pdb
Binary files differ
DBUtility/bin/Release/Pub_Control.dll
Binary files differ
DBUtility/bin/Release/Pub_Control.pdb
Binary files differ
DBUtility/bin/Release/SQLHelper.dll
Binary files differ
DBUtility/bin/Release/SQLHelper.pdb
Binary files differ
DBUtility/obj/Release/DBUtility.Gy_UserSelect.resources
Binary files differ
DBUtility/obj/Release/DBUtility.Xt_BillType.resources
Binary files differ
DBUtility/obj/Release/DBUtility.Xt_CheckFlow.resources
Binary files differ
DBUtility/obj/Release/DBUtility.Xt_CheckFlowList.resources
Binary files differ
DBUtility/obj/Release/DBUtility.Xt_CheckItem.resources
Binary files differ
DBUtility/obj/Release/DBUtility.Xt_CheckUserRight.resources
Binary files differ
DBUtility/obj/Release/DBUtility.csproj.AssemblyReference.cache
Binary files differ
DBUtility/obj/Release/DBUtility.csproj.GenerateResource.Cache
Binary files differ
DBUtility/obj/Release/DBUtility.csproj.ResolveComReference.cache
Binary files differ
DBUtility/obj/Release/DBUtility.dll
Binary files differ
DBUtility/obj/Release/DBUtility.pdb
Binary files differ
Model/bin/Release/DBUtility.dll
Binary files differ
Model/bin/Release/DBUtility.pdb
Binary files differ
Model/bin/Release/Model.dll
Binary files differ
Model/bin/Release/Model.pdb
Binary files differ
Model/bin/Release/Pub_Class.dll
Binary files differ
Model/bin/Release/Pub_Class.pdb
Binary files differ
Model/bin/Release/Pub_Control.dll
Binary files differ
Model/bin/Release/Pub_Control.pdb
Binary files differ
Model/bin/Release/SQLHelper.dll
Binary files differ
Model/bin/Release/SQLHelper.pdb
Binary files differ
Model/obj/Release/Model.csproj.AssemblyReference.cache
Binary files differ
Model/obj/Release/Model.dll
Binary files differ
Model/obj/Release/Model.pdb
Binary files differ
Pub_Class/bin/Release/Pub_Class.dll
Binary files differ
Pub_Class/bin/Release/Pub_Class.pdb
Binary files differ
Pub_Class/bin/Release/SyntacticSugar.dll
Binary files differ
Pub_Class/bin/Release/SyntacticSugar.pdb
Binary files differ
Pub_Control/bin/Release/Pub_Class.dll
Binary files differ
Pub_Control/bin/Release/Pub_Class.pdb
Binary files differ
Pub_Control/bin/Release/Pub_Control.dll
Binary files differ
Pub_Control/bin/Release/Pub_Control.pdb
Binary files differ
SQLHelper/bin/Release/Pub_Class.dll
Binary files differ
SQLHelper/bin/Release/Pub_Class.pdb
Binary files differ
SQLHelper/bin/Release/SQLHelper.dll
Binary files differ
SQLHelper/bin/Release/SQLHelper.pdb
Binary files differ
SQLHelper/obj/Release/SQLHelper.csproj.AssemblyReference.cache
Binary files differ
SQLHelper/obj/Release/SQLHelper.dll
Binary files differ
SQLHelper/obj/Release/SQLHelper.pdb
Binary files differ
SyntacticSugar/bin/Release/SyntacticSugar.dll
Binary files differ
SyntacticSugar/bin/Release/SyntacticSugar.pdb
Binary files differ
SyntacticSugar/obj/Debug/SyntacticSugar.csproj.AssemblyReference.cache
Binary files differ
SyntacticSugar/obj/Debug/SyntacticSugar.csproj.FileListAbsolute.txt
@@ -4,8 +4,6 @@
D:\网站发布\后端代码\MES-WEB-API\MES-WEB-API\SyntacticSugar\obj\Debug\SyntacticSugar.csproj.CoreCompileInputs.cache
D:\网站发布\后端代码\MES-WEB-API\MES-WEB-API\SyntacticSugar\obj\Debug\SyntacticSugar.dll
D:\网站发布\后端代码\MES-WEB-API\MES-WEB-API\SyntacticSugar\obj\Debug\SyntacticSugar.pdb
<<<<<<< HEAD
=======
C:\Users\19858\Desktop\智云迈思\MES-WEB-API\SyntacticSugar\bin\Debug\SyntacticSugar.dll
C:\Users\19858\Desktop\智云迈思\MES-WEB-API\SyntacticSugar\bin\Debug\SyntacticSugar.pdb
C:\Users\19858\Desktop\智云迈思\MES-WEB-API\SyntacticSugar\obj\Debug\SyntacticSugar.csproj.CoreCompileInputs.cache
@@ -27,4 +25,4 @@
D:\WorkBench\MES-WEB-API\SyntacticSugar\obj\Debug\SyntacticSugar.csproj.CoreCompileInputs.cache
D:\WorkBench\MES-WEB-API\SyntacticSugar\obj\Debug\SyntacticSugar.dll
D:\WorkBench\MES-WEB-API\SyntacticSugar\obj\Debug\SyntacticSugar.pdb
>>>>>>> 4d047b40eff94b3fc251ca164770e524a2c02779
D:\WorkBench\MES-WEB-API\SyntacticSugar\obj\Debug\SyntacticSugar.csproj.AssemblyReference.cache
SyntacticSugar/obj/Release/SyntacticSugar.csproj.CoreCompileInputs.cache
File was deleted
SyntacticSugar/obj/Release/SyntacticSugar.dll
Binary files differ
SyntacticSugar/obj/Release/SyntacticSugar.pdb
Binary files differ
WebAPI/App_Start/WebApiConfig.cs
@@ -31,12 +31,12 @@
                defaults: new { id = RouteParameter.Optional }
            );
            // æ³¨å†Œç­¾å
            config.Filters.Add(new SignatureVerifyAttribute());
            // config.Filters.Add(new SignatureVerifyAttribute());
            //// å…¨å±€å¯ç”¨ JWT è®¤è¯
            //config.Filters.Add(new JwtAuthorizeAttribute());
            // config.Filters.Add(new JwtAuthorizeAttribute());
            //// å¯ç”¨JWT响应拦截器,自动刷新JWT
            //config.MessageHandlers.Add(new TokenAppendHandler());
            // config.MessageHandlers.Add(new TokenAppendHandler());
        }
    }
}
WebAPI/Controllers/WebAPIController.cs
@@ -20,6 +20,7 @@
using WebAPI.Models;
using WebAPI.Service;
using SyntacticSugar.constant;
using System.Text.RegularExpressions;
namespace WebAPI.Controllers
{
@@ -24005,6 +24006,7 @@
        }
        #endregion
        #region  APP登录权限验证接口
        /// <summary>
        /// APP登录权限验证接口
        /// </summary>
@@ -24080,6 +24082,139 @@
                return objJsonResult;
            }
        }
        #endregion
        #region è“ç‰™æ‰“印机获取打印模板
        public class PrintRequestDto
        {
            public string ptMode { get; set; }
            public string templateName { get; set; }
            public JArray msg { get; set; } // ä½ çš„æ‰¹é‡æ•°æ®
        }
        /// <summary>
        /// ptMode: æ‰“印模式,即需要那种打印指令,CPCL,TSPL,ESC,ZPL ä¸­é€‰æ‹©
        /// templateName: æ¨¡æ¿åï¼Œæ ¹æ®æ¨¡æ¿åŽ»æŒ‡å®šç›®å½•ä¸‹æ ¹æ®åŽç¼€æ‰¾æ–‡ä»¶
        /// msg: æ‰“印内容
        /// </summary>
        /// <param name="ptMode"></param>
        /// <param name="templateName"></param>
        /// <param name="msg"></param>
        /// <returns></returns>
        [Route("WebAPI/getBLEPrintTemplate")]
        [HttpPost]
        public object getBLEPrintTemplate([FromBody] PrintRequestDto dto)
        {
            var ptMode = dto.ptMode;
            var templateName = dto.templateName;
            var msg = dto.msg;
            if (string.IsNullOrWhiteSpace(ptMode))
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "未选择打印模式,无法生成打印模板!";
                objJsonResult.data = null;
                return objJsonResult;
            }
            if (string.IsNullOrWhiteSpace(templateName))
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "未选择打印模板,无法生成打印模板!";
                objJsonResult.data = null;
                return objJsonResult;
            }
            string suffix = ".txt";
            string folder = "ptTemplate";
            // åŒ¹é… {{ å­—段名 }} æ‰€éœ€æ­£åˆ™è¡¨è¾¾å¼ æ”¯æŒä¸­æ–‡
            var regex = new Regex(@"{{\s*([\u4e00-\u9fa5a-zA-Z0-9_\s]+?)\s*}}", RegexOptions.Compiled);
            if (ptMode == "ZPL")
            {
                suffix = ".zpl";
                folder = "ZPLTemplate";
            }
            try
            {
                // è¯»å–模板文件
                string rootPath = System.Web.HttpContext.Current.Server.MapPath("~/");
                string templateDir = Path.Combine(rootPath, folder);
                string templateFile = Path.Combine(templateDir, templateName+suffix);
                // å¦‚果目录不存在
                if (!Directory.Exists(templateDir))
                {
                    Directory.CreateDirectory(templateDir);
                }
                // å¦‚果文件不存在
                if (!File.Exists(templateFile))
                {
                    objJsonResult.code = "0";
                    objJsonResult.Message = $"模板文件不存在:{templateFile}";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                // è¯»å–模板(UTF8 æ”¯æŒä¸­æ–‡ï¼‰
                string templateContent = File.ReadAllText(templateFile, Encoding.UTF8);
                // é€è¡Œè¯»å–模板文件
                var lines = templateContent.Split(new[] { "\r\n", "\n" }, StringSplitOptions.None);
                var sb = new StringBuilder();
                foreach(JToken JOneKVP in msg)
                {
                    if(JOneKVP is JObject item)
                    {
                        foreach (var line in lines)
                        {
                            string currentLine = line;
                            // è·³è¿‡æ³¨é‡Šè¡Œ //
                            if (currentLine.TrimStart().StartsWith("//"))
                            {
                                continue;
                            }
                            // æ­£åˆ™è¡¨è¾¾å¼åŒ¹é… {{ å­—段名 }} æ‰€åœ¨è¡Œçš„字段,如果有,则进行替换,没有,则默认为空字符串
                            currentLine = regex.Replace(currentLine, match =>
                            {
                                string fieldName = match.Groups[1].Value.Trim();
                                if (msg != null && item.ContainsKey(fieldName))
                                {
                                    return item[fieldName]?.ToString() ?? "";
                                }
                                return "";
                            });
                            // å°†æ‰€æœ‰ \n çš„æ¢è¡Œç¬¦ æ›¿æ¢ä¸º \r\n
                            sb.Append(currentLine);
                            sb.Append("\r\n"); // æ ‡å‡†æ¢è¡Œ
                        }
                    }
                }
                string result = sb.ToString().TrimEnd();
                // è¿”回渲染后的打印指令
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = $"模板渲染成功";
                objJsonResult.data = result;
                return objJsonResult;
            }
            catch (Exception ex)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = $"模板渲染失败:{ex.Message}";
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        [HttpGet]
        [Route("Web/getSysParameter")]
        public object getSysParameter(string HClientID)
WebAPI/Controllers/²Ö´æ¹ÜÀí/ÌõÂëÉú³É/Sc_BarCodeController.cs
@@ -263,6 +263,11 @@
                        count = new SQLHelper.ClsCN().RunProcReturn("select * from h_v_IF_MateOutBillList_Source " + sWhere + " order by å•据号 desc,hsubid", tabname).Tables[0].Rows.Count;
                        sql = string.Format(@"select top " + pageSize + " * from(select row_number() over (order by å•据号 desc,hsubid) as HRowNumber,* from h_v_IF_MateOutBillList_Source " + sWhere + ")   as A where HRowNumber >" + pageSize + " *(" + pageNum + "-1)");
                        break;
                    case "受托加工材料收料单":
                        tabname = "h_v_IF_InceptEntPOInStockBillList_Source";
                        count = new SQLHelper.ClsCN().RunProcReturn("select * from h_v_IF_InceptEntPOInStockBillList_Source " + sWhere + " order by å•据号 desc,hsubid ", tabname).Tables[0].Rows.Count;
                        sql = string.Format(@"select * from(select row_number() over (order by å•据号 desc,hsubid) as HRowNumber,* from h_v_IF_InceptEntPOInStockBillList_Source " + sWhere + ")   as A where HRowNumber >" + pageSize + " *(" + pageNum + "-1)");
                        break;
                    default:
                        break;
                }
@@ -595,6 +600,11 @@
                            //写入信息
                            ListRows.Add(HSourceOrderList1(ds.Tables[0], ordrlist, HBarCodeType, HSourceBillType));
                            break;
                        case "1130": //受托加工材料收料单
                            //得到信息
                            ds = oCN.RunProcReturn("select * from h_v_IF_InceptEntPOInStockBillList_Source where å¯ç”Ÿæˆæ¡ç æ•°é‡ > 0 and hmainid=" + oSelectRow.BillMainID + " and hsubid=" + oSelectRow.BillSubID, "h_v_IF_InceptEntPOInStockBillList_Source");
                            ListRows.Add(HSourceOrderList2(ds.Tables[0], ordrlist, HBarCodeType, HSourceBillType));
                            break;
                        default:
                            break;
                    }
WebAPI/Controllers/ÌõÂë¹ÜÀí/WEBSController.cs
@@ -17,6 +17,7 @@
using WebAPI.Models;
using WebAPI.Service;
using WebAPI.Utility;
using Kingdee.BOS.WebApi.Client;
namespace WebAPI.Controllers
{
@@ -2600,7 +2601,7 @@
        {
            //sCloudMode:系统参数  æ˜¯å¦ä¸ºç§æœ‰äº‘模式(N为公有云模式,Y为私有云模式);
            //sERPMode:系统参数  åº“存控制-WMS库存控制ERP模式    (WISE、CLOUD、MES);
            //sHType:值 1 å¯¹åº”缓存列表删除;值 2 å¯¹åº”已上传撤销;
            //sHType:值 1 å¯¹åº”缓存列表删除;值 2 å¯¹åº”已上传撤销;值 3 å¯¹åº”校验模块已上传撤销;
            //公有云模式
            if (sCloudMode == "N")
@@ -2738,7 +2739,7 @@
                    var sJson = new
                    {
                        FormId = sFormId,
                        FieldKeys = "FBillNo",
                        FieldKeys = "FBillNo,FAPPROVERID",
                        FilterString = $@"FBillNo='{HBillNo}'",
                        OrderString = "",
                        TopRowCount = 0,
@@ -2770,7 +2771,7 @@
                            }
                        }
                        //sHType = 2对应已上传撤销
                        else
                        else if(sHType == 2)
                        {
                            //判断返回的数组数据中是否存在"false",存在代表递入的业务对象表单Id不正确
                            if (_saveObj[0][0].ToString().Contains("false") == true)
@@ -2784,26 +2785,73 @@
                                return false;
                            }
                        }
                        //sHType = 3对应校验模块已上传撤销
                        else if (sHType == 3)
                        {
                            //判断返回的数组数据中是否存在"false",存在代表递入的业务对象表单Id不正确
                            if (_saveObj[0][0].ToString().Contains("false") == true)
                            {
                                sErrMsg = "此模块暂不支持撤销功能!";
                                return false;
                            }
                            else if (_saveObj[0][1].ToString() != "0")
                            {
                                sErrMsg = "校验撤销单据失败,单据号:" + HBillNo + ",金蝶云里已审核,不允许撤销!";
                                return false;
                            }
                            else
                            {
                                return true;
                            }
                        }
                        else
                        {
                            sErrMsg = "sHType值递入错误!";
                            return false;
                        }
                    }
                }
            }
            //私有云模式
            else
            {
                ds = oCn.RunProcReturn("exec h_p_WMS_BillQuery " + HInterID.ToString() + ",'" + HBillNo + "','" + HBillType + "','" + sERPMode + "'," + sHType.ToString(), "h_p_WMS_BillQuery");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                //sHType = 3    æ‰«ç æ ¡éªŒæ¨¡å—
                if (sHType == 3)
                {
                    sErrMsg = "单据查询发生错误!";
                    return false;
                    ds = oCn.RunProcReturn("exec h_p_WMS_BillQuery_BillCheck " + HInterID.ToString() + ",'" + HBillNo + "','" + HBillType + "','" + sERPMode + "'", "h_p_WMS_BillQuery_BillCheck");
                    if (ds == null || ds.Tables[0].Rows.Count == 0)
                    {
                        sErrMsg = "单据查询发生错误!";
                        return false;
                    }
                    else if (DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HBack"]) == 1)
                    {
                        sErrMsg = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HRemark"]);
                        return false;
                    }
                    else
                    {
                        return true;
                    }
                }
                else if (DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HBack"]) == 1)
                {
                    sErrMsg = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HRemark"]);
                    return false;
                }
                //sHType = 1 æˆ– sHType = 2   æ‰«ç æ–°å¢žæ¨¡å—
                else
                {
                    return true;
                    ds = oCn.RunProcReturn("exec h_p_WMS_BillQuery " + HInterID.ToString() + ",'" + HBillNo + "','" + HBillType + "','" + sERPMode + "'," + sHType.ToString(), "h_p_WMS_BillQuery");
                    if (ds == null || ds.Tables[0].Rows.Count == 0)
                    {
                        sErrMsg = "单据查询发生错误!";
                        return false;
                    }
                    else if (DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HBack"]) == 1)
                    {
                        sErrMsg = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HRemark"]);
                        return false;
                    }
                    else
                    {
                        return true;
                    }
                }
            }
        }
@@ -9456,6 +9504,16 @@
                }
                #endregion
                //撤销前判断金蝶云中单据是否存在
                if (!GetBillQuery_WMS(HInterID, HBillNo, HBillType, HMaker, oSystemParameter.omodel.WMS_CloudMode, sERPMode, 3, ref sErrMsg))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = sErrMsg;
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                try
                {
                    oCn.BeginTran();
@@ -15521,5 +15579,183 @@
        #endregion
        #endregion
        #region è°ƒç”¨é‡‘蝶webapi接口同步基础资料方法
        #region ç‰©æ–™åŸºç¡€èµ„料同步
        [Route("WEBSController/MaterialDataToLocalByKDWebApi")]
        [HttpGet]
        public object MaterialDataToLocalByKDWebApi(string HDate)
        {
            try
            {
                //访问金蝶
                ApiClient client = new ApiClient(Pub_Class.ClsPub.sCLOUDUrl);
                var loginRet = InvokeHelper.Login();
                var isSuccess = JObject.Parse(loginRet)["LoginResultType"].Value<int>();
                string HReturn;
                if (isSuccess == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "同步基础资料失败,金蝶账号登录异常。" + loginRet;
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                //调用单据查询webapi
                string sJson = $"{{\"FormId\":\"BD_MATERIAL\",\"FieldKeys\":\"FMATERIALID,FNumber,FName,FSpecification,FApproveDate,FCreateDate,FDocumentStatus\",\"FilterString\":\"FApproveDate >= '2025-04-01T00:00:00' AND FApproveDate <= '2025-04-30T23:59:59'\",\"Limit\":100,\"StartRow\":0,\"TopRowCount\":0}}";
                var result = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.ExecuteBillQuery.common.kdsvc", new object[] { "BD_MATERIAL", sJson });
                var _saveObj = JObject.Parse(result);
                //判断数据是否获取成功
                if (_saveObj.SelectToken("Result.ResponseStatus.IsSuccess")?.ToString().ToUpper() != "TRUE")
                {
                    HReturn = result.ToString();
                    //反序列化json数据
                    var retModel = JsonConvert.DeserializeObject<KingdeeResponse>(HReturn);
                    //接收金蝶报错信息
                    var strErrorMsg = string.Empty;
                    //遍历获取报错信息
                    foreach (var item in retModel.Result.ResponseStatus.Errors)
                    {
                        strErrorMsg += item.Message + "\r\n";
                    };
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "单据查询物料信息失败!" + strErrorMsg;
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else
                {
                    //主表数据赋值
                    var MainData = new
                    {
                        HInterID = _saveObj.SelectToken("Result.Result.Id")?.ToString() ?? "0",
                        HDate = _saveObj.SelectToken("Result.Result.Date")?.ToString(),
                        HBillNo = _saveObj.SelectToken("Result.Result.BillNo")?.ToString() ?? "",
                        HBillStatus = _saveObj.SelectToken("Result.Result.ApproverId_Id")?.ToString() == "0" ? 1 : 2,
                        HPURCHASERNumber = _saveObj.SelectToken("Result.Result.PurchaserId.Number")?.ToString() ?? "",
                        HMaker = _saveObj.SelectToken("Result.Result.CreatorId.Name")?.ToString() ?? "",
                        HChecker = _saveObj.SelectToken("Result.Result.ApproverId.Name")?.ToString() ?? "",
                        HUpDater = _saveObj.SelectToken("Result.Result.ModifierId.Name")?.ToString() ?? "",
                        HDeleteMan = _saveObj.SelectToken("Result.Result.CancellerId.Name")?.ToString() ?? "",
                        HCloseMan = _saveObj.SelectToken("Result.Result.CloserId.Name")?.ToString() ?? "",
                        HPURCHASERGROUPNumber = _saveObj.SelectToken("Result.Result.PurchaserGroupId.Number")?.ToString() ?? "",
                        HPROVIDERCONTACTNumber = _saveObj.SelectToken("Result.Result.ProviderContactId.CONTACTNUMBER")?.ToString() ?? "",
                        HSETTLEMODEID = _saveObj.SelectToken("Result.Result.POOrderFinance[0].SettleModeId_Id")?.ToString() ?? "0",
                        HSETTLEMODENumber = _saveObj.SelectToken("Result.Result.POOrderFinance[0].SettleModeId.Number")?.ToString() ?? "",
                        HSETTLECURRID = _saveObj.SelectToken("Result.Result.POOrderFinance[0].SettleCurrId_Id")?.ToString() ?? "0",
                        HSETTLECURRNumber = _saveObj.SelectToken("Result.Result.POOrderFinance[0].SettleCurrId.Number")?.ToString() ?? "",
                        HEXCHANGETYPEID = _saveObj.SelectToken("Result.Result.POOrderFinance[0].ExchangeTypeId_Id")?.ToString() ?? "0",
                        HEXCHANGETYPENumber = _saveObj.SelectToken("Result.Result.POOrderFinance[0].ExchangeTypeId.Number")?.ToString() ?? "",
                        HPAYCONDITIONID = _saveObj.SelectToken("Result.Result.POOrderFinance[0].PayConditionId_Id")?.ToString() ?? "0",
                        HPAYCONDITIONNumber = _saveObj.SelectToken("Result.Result.POOrderFinance[0].PayConditionId.Number")?.ToString() ?? "",
                        HEXCHANGERATE = _saveObj.SelectToken("Result.Result.POOrderFinance[0].ExchangeRate")?.ToString() ?? "0",
                        HLOCALCURRID = _saveObj.SelectToken("Result.Result.POOrderFinance[0].LocalCurrId_Id")?.ToString() ?? "0",
                        HLOCALCURRNumber = _saveObj.SelectToken("Result.Result.POOrderFinance[0].LocalCurrId.Number")?.ToString() ?? "",
                        HISINCLUDEDTAX = _saveObj.SelectToken("Result.Result.POOrderFinance[0].IsIncludedTax")?.ToString().ToUpper() == "TRUE" ? 1 : 0,
                        HISPRICEEXCLUDETAX = _saveObj.SelectToken("Result.Result.POOrderFinance[0].FISPRICEEXCLUDETAX")?.ToString().ToUpper() == "TRUE" ? 1 : 0,
                    };
                    //根据单据号、单据ID,删除本地数据
                    oCn.RunProc("Delete from Cg_POOrderBillMain where HBillNo='" + MainData.HBillNo + "'", ref DBUtility.ClsPub.sExeReturnInfo);
                    oCn.RunProc("Delete from Cg_POOrderBillMain where HInterID=" + MainData.HInterID.ToString(), ref DBUtility.ClsPub.sExeReturnInfo);
                    oCn.RunProc("Delete from Cg_POOrderBillSub where HInterID=" + MainData.HInterID.ToString(), ref DBUtility.ClsPub.sExeReturnInfo);
                    //子表数据赋值
                    var dataArr = _saveObj.SelectToken("Result.Result.POOrderEntry") as JArray;
                    if (dataArr != null)
                    {
                        foreach (var oSub in dataArr)
                        {
                            var SubData = new
                            {
                                HInterID = _saveObj.SelectToken("Result.Result.Id")?.ToString() ?? "0",
                                HEntryID = oSub.SelectToken("Id")?.ToString() ?? "0",
                                HMaterID = oSub.SelectToken("MaterialId_Id")?.ToString() ?? "0",
                                HUnitID = oSub.SelectToken("UnitId_Id")?.ToString() ?? "0",
                                HQty = oSub.SelectToken("Qty")?.ToString() ?? "0",
                                HPrice = oSub.SelectToken("Price")?.ToString() ?? "0",
                                HTaxPrice = oSub.SelectToken("TaxPrice")?.ToString() ?? "0",
                                HDiscountRate = oSub.SelectToken("DiscountRate")?.ToString() ?? "0",
                                HMoney = oSub.SelectToken("Amount")?.ToString() ?? "0",
                                HTaxRate = oSub.SelectToken("TaxRate")?.ToString() ?? "0",
                                HTaxMoney = oSub.SelectToken("TaxAmount")?.ToString() ?? "0",
                                HDate = oSub.SelectToken("DeliveryDate")?.ToString() ?? "",
                                HRemark = oSub.SelectToken("Note")?.ToString() ?? "",
                                HRelationQty = oSub.SelectToken("JOINQTY")?.ToString() ?? "0",
                                HBackRelationQty = oSub.SelectToken("STOCKRETQTY")?.ToString() ?? "0",
                                HPropertyID = oSub.SelectToken("AuxPropId_Id")?.ToString() ?? "0",
                                HBatChNo = oSub.SelectToken("FLot_Text")?.ToString() ?? "",
                                HAuxPropID = oSub.SelectToken("AuxPropId_Id")?.ToString() ?? "0",
                                HMTONo = oSub.SelectToken("MtoNo")?.ToString() ?? "",
                                HERPInterID = _saveObj.SelectToken("Result.Result.Id")?.ToString() ?? "0",
                                HERPEntryID = oSub.SelectToken("Id")?.ToString() ?? "0",
                                HSEQ = oSub.SelectToken("Seq")?.ToString() ?? "0",
                                HRECEIVEDEPTID = oSub.SelectToken("ReceiveDeptId_Id")?.ToString() ?? "0",
                                HSUPPLIERLOT = oSub.SelectToken("SupplierLot")?.ToString() ?? "",
                                HBOMID = oSub.SelectToken("BomId_Id")?.ToString() ?? "0",
                                HBomNumber = oSub.SelectToken("BomId.Number")?.ToString() ?? "",
                                HSTOCKUNITID = oSub.SelectToken("StockUnitID_Id")?.ToString() ?? "0",
                                HBASEUNITID = oSub.SelectToken("BaseUnitId_Id")?.ToString() ?? "0",
                                HBFLOWID = oSub.SelectToken("FBFLowId_Id")?.ToString() ?? "",
                                HGIVEAWAY = oSub.SelectToken("GiveAway")?.ToString().ToUpper() == "TRUE" ? 1 : 0,
                                HROWTYPE = oSub.SelectToken("RowType")?.ToString() ?? "",
                                HBASEUNITQTY = oSub.SelectToken("BaseUnitQty")?.ToString() ?? "0",
                                HSTOCKBASEQTY = oSub.SelectToken("StockBaseQty")?.ToString() ?? "0",
                                HREQTRACENO = oSub.SelectToken("ReqTraceNo")?.ToString() ?? "",
                                HMATERIALDESC = oSub.SelectToken("MaterialDesc[0].Value")?.ToString() ?? "",
                                HRECEIVEORGID = oSub.SelectToken("ReceiveOrgId_Id")?.ToString() ?? "0",
                                HREQUIREORGID = oSub.SelectToken("RequireOrgId_Id")?.ToString() ?? "0",
                                HTAXNETPRICE = oSub.SelectToken("TaxNetPrice")?.ToString() ?? "0",
                                HPRICECOEFFICIENT = oSub.SelectToken("PriceCoefficient")?.ToString() ?? "0",
                                HTAXCOMBINATION = oSub.SelectToken("FTaxCombination_Id")?.ToString() ?? "0",
                                HTAXCOMBINATIONNumber = oSub.SelectToken("FTaxCombination.Number")?.ToString() ?? "",
                                HPRICEUNITID = oSub.SelectToken("PriceUnitId_Id")?.ToString() ?? "0",
                                HPRICELISTENTRY = oSub.SelectToken("PriceListEntry_Id")?.ToString() ?? "0",
                                HPRICELISTENTRYNumber = oSub.SelectToken("PriceListEntry.Number")?.ToString() ?? "",
                                HPAYORGID = oSub.SelectToken("PayOrgId_Id")?.ToString() ?? "0",
                                HSETTLEORGID = oSub.SelectToken("SettleOrgId_Id")?.ToString() ?? "0",
                                HTaxRate_TAX = oSub.SelectToken("POORDERENTRY_TAX[0].TaxRate")?.ToString() ?? "0",
                                HTaxMoney_TAX = oSub.SelectToken("POORDERENTRY_TAX[0].TaxAmount")?.ToString() ?? "0",
                                HTAXRATEID = oSub.SelectToken("POORDERENTRY_TAX[0].TaxRateId_Id")?.ToString() ?? "0",
                                HTAXRATENumber = oSub.SelectToken("POORDERENTRY_TAX[0].TaxRateId.Number")?.ToString() ?? "",
                                HCOSTPERCENT = oSub.SelectToken("POORDERENTRY_TAX[0].CostPercent")?.ToString() ?? "0",
                                HCOSTAMOUNT = oSub.SelectToken("POORDERENTRY_TAX[0].CostAmount")?.ToString() ?? "0",
                                HVAT = oSub.SelectToken("POORDERENTRY_TAX[0].VAT")?.ToString() ?? "",
                                HSELLERWITHHOLDING = oSub.SelectToken("POORDERENTRY_TAX[0].SellerWithholding")?.ToString() ?? "",
                                HBUYERWITHHOLDING = oSub.SelectToken("POORDERENTRY_TAX[0].BuyerWithholding")?.ToString() ?? "",
                            };
                        }
                    }
                    objJsonResult.code = "1";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "成功";
                    objJsonResult.data = WebSoBar;
                    return objJsonResult;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "单据查询物料信息发生异常!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #endregion
    }
}
WebAPI/Properties/PublishProfiles/CHZFolderProfile.pubxml.user
@@ -5,7 +5,7 @@
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <_PublishTargetUrl>D:\网站发布\智云MESWMS\API</_PublishTargetUrl>
    <History>True|2026-04-27T07:09:44.0897608Z;True|2026-04-27T14:54:06.6458560+08:00;True|2026-04-27T14:44:18.2209820+08:00;True|2026-04-27T14:13:14.4765480+08:00;True|2026-04-27T14:04:25.5419561+08:00;True|2026-04-27T13:49:53.0044534+08:00;True|2026-04-27T13:16:28.0509184+08:00;True|2026-04-27T13:06:51.0405801+08:00;True|2026-04-27T12:49:54.6907285+08:00;True|2026-04-27T10:18:33.7985393+08:00;True|2026-04-27T10:08:12.8438152+08:00;True|2026-04-27T09:59:55.6118412+08:00;False|2026-04-27T09:58:35.5433131+08:00;True|2026-04-22T13:46:35.7999639+08:00;True|2026-04-22T13:37:33.3595562+08:00;False|2026-04-22T13:36:44.6163941+08:00;True|2026-04-20T17:23:12.3696160+08:00;True|2026-04-20T17:11:49.7671685+08:00;True|2026-04-20T17:01:26.9990531+08:00;True|2026-04-20T16:54:12.4433947+08:00;True|2026-04-20T16:46:57.6462699+08:00;True|2026-04-20T16:42:57.8307232+08:00;True|2026-04-20T16:28:39.7476167+08:00;True|2026-04-20T16:21:44.4281083+08:00;True|2026-04-20T15:54:54.0650372+08:00;False|2026-04-20T15:53:16.9752154+08:00;True|2026-04-20T09:38:00.7302296+08:00;False|2026-04-20T09:35:50.0193777+08:00;True|2026-04-16T13:47:52.4189071+08:00;True|2026-04-16T12:55:27.8047391+08:00;True|2026-04-15T15:25:13.5585076+08:00;True|2026-04-15T15:18:40.0113998+08:00;True|2026-04-15T13:40:25.2393656+08:00;False|2026-04-15T13:39:38.6236889+08:00;True|2026-04-14T14:31:30.6734754+08:00;False|2026-04-14T14:30:41.4516757+08:00;True|2026-04-13T16:44:08.4642937+08:00;True|2026-04-13T16:36:02.3077110+08:00;True|2026-04-13T14:59:21.0103174+08:00;True|2026-04-13T14:39:45.1257225+08:00;True|2026-04-13T14:33:54.7926295+08:00;True|2026-04-13T14:28:29.8919092+08:00;True|2026-04-13T14:23:44.7319904+08:00;True|2026-04-13T14:19:18.5894161+08:00;True|2026-04-13T14:13:07.6590290+08:00;True|2026-04-13T14:08:38.6545470+08:00;True|2026-04-13T13:42:48.7331271+08:00;True|2026-04-13T13:28:28.6092259+08:00;True|2026-04-13T13:22:20.9710518+08:00;False|2026-04-13T13:21:10.4412531+08:00;True|2026-04-10T12:36:37.6936108+08:00;False|2026-04-10T12:35:40.0121010+08:00;True|2026-04-09T16:54:43.8820523+08:00;True|2026-04-09T16:45:33.9913393+08:00;True|2026-04-09T16:05:37.9135976+08:00;True|2026-04-09T15:59:59.0415690+08:00;True|2026-04-09T14:40:06.6317662+08:00;True|2026-04-09T14:33:57.7268880+08:00;True|2026-04-09T14:29:06.9748272+08:00;True|2026-04-09T14:15:35.2357549+08:00;True|2026-04-09T13:55:15.7398283+08:00;True|2026-04-09T10:49:39.1474349+08:00;False|2026-04-09T10:48:56.4483129+08:00;True|2026-04-08T15:52:56.0654175+08:00;True|2026-04-08T15:51:48.5362330+08:00;True|2026-04-08T15:38:55.9430240+08:00;True|2026-04-08T14:28:05.8170952+08:00;True|2026-04-08T10:04:26.1290532+08:00;True|2026-04-08T09:54:42.7091796+08:00;True|2026-04-08T09:47:39.4265409+08:00;True|2026-04-08T09:31:33.9940810+08:00;True|2026-04-08T09:25:48.8335042+08:00;True|2026-04-08T09:18:49.2340416+08:00;True|2026-04-08T09:05:38.1946058+08:00;True|2026-04-08T08:51:42.9648664+08:00;False|2026-04-08T08:50:29.4049907+08:00;True|2026-04-07T16:38:07.0366622+08:00;True|2026-04-07T16:30:02.5849908+08:00;True|2026-04-07T10:34:01.7729330+08:00;True|2026-04-07T09:48:28.6594815+08:00;True|2026-04-07T08:27:08.5467426+08:00;</History>
    <History>True|2026-04-29T08:47:04.9171448Z;True|2026-04-29T16:25:33.4958449+08:00;True|2026-04-29T15:34:29.5741739+08:00;True|2026-04-29T14:10:33.3160064+08:00;True|2026-04-29T14:06:31.3760141+08:00;False|2026-04-29T14:05:58.0158818+08:00;True|2026-04-29T10:25:30.7181581+08:00;True|2026-04-29T10:24:32.8331581+08:00;False|2026-04-29T10:23:37.9949570+08:00;True|2026-04-28T11:12:41.1993974+08:00;True|2026-04-28T10:59:28.3932572+08:00;True|2026-04-28T10:46:16.5971815+08:00;True|2026-04-28T09:38:04.9793088+08:00;False|2026-04-28T09:37:19.4255018+08:00;True|2026-04-27T15:09:44.0897608+08:00;True|2026-04-27T14:54:06.6458560+08:00;True|2026-04-27T14:44:18.2209820+08:00;True|2026-04-27T14:13:14.4765480+08:00;True|2026-04-27T14:04:25.5419561+08:00;True|2026-04-27T13:49:53.0044534+08:00;True|2026-04-27T13:16:28.0509184+08:00;True|2026-04-27T13:06:51.0405801+08:00;True|2026-04-27T12:49:54.6907285+08:00;True|2026-04-27T10:18:33.7985393+08:00;True|2026-04-27T10:08:12.8438152+08:00;True|2026-04-27T09:59:55.6118412+08:00;False|2026-04-27T09:58:35.5433131+08:00;True|2026-04-22T13:46:35.7999639+08:00;True|2026-04-22T13:37:33.3595562+08:00;False|2026-04-22T13:36:44.6163941+08:00;True|2026-04-20T17:23:12.3696160+08:00;True|2026-04-20T17:11:49.7671685+08:00;True|2026-04-20T17:01:26.9990531+08:00;True|2026-04-20T16:54:12.4433947+08:00;True|2026-04-20T16:46:57.6462699+08:00;True|2026-04-20T16:42:57.8307232+08:00;True|2026-04-20T16:28:39.7476167+08:00;True|2026-04-20T16:21:44.4281083+08:00;True|2026-04-20T15:54:54.0650372+08:00;False|2026-04-20T15:53:16.9752154+08:00;True|2026-04-20T09:38:00.7302296+08:00;False|2026-04-20T09:35:50.0193777+08:00;True|2026-04-16T13:47:52.4189071+08:00;True|2026-04-16T12:55:27.8047391+08:00;True|2026-04-15T15:25:13.5585076+08:00;True|2026-04-15T15:18:40.0113998+08:00;True|2026-04-15T13:40:25.2393656+08:00;False|2026-04-15T13:39:38.6236889+08:00;True|2026-04-14T14:31:30.6734754+08:00;False|2026-04-14T14:30:41.4516757+08:00;True|2026-04-13T16:44:08.4642937+08:00;True|2026-04-13T16:36:02.3077110+08:00;True|2026-04-13T14:59:21.0103174+08:00;True|2026-04-13T14:39:45.1257225+08:00;True|2026-04-13T14:33:54.7926295+08:00;True|2026-04-13T14:28:29.8919092+08:00;True|2026-04-13T14:23:44.7319904+08:00;True|2026-04-13T14:19:18.5894161+08:00;True|2026-04-13T14:13:07.6590290+08:00;True|2026-04-13T14:08:38.6545470+08:00;True|2026-04-13T13:42:48.7331271+08:00;True|2026-04-13T13:28:28.6092259+08:00;True|2026-04-13T13:22:20.9710518+08:00;False|2026-04-13T13:21:10.4412531+08:00;True|2026-04-10T12:36:37.6936108+08:00;False|2026-04-10T12:35:40.0121010+08:00;True|2026-04-09T16:54:43.8820523+08:00;True|2026-04-09T16:45:33.9913393+08:00;True|2026-04-09T16:05:37.9135976+08:00;True|2026-04-09T15:59:59.0415690+08:00;True|2026-04-09T14:40:06.6317662+08:00;True|2026-04-09T14:33:57.7268880+08:00;True|2026-04-09T14:29:06.9748272+08:00;True|2026-04-09T14:15:35.2357549+08:00;True|2026-04-09T13:55:15.7398283+08:00;True|2026-04-09T10:49:39.1474349+08:00;False|2026-04-09T10:48:56.4483129+08:00;True|2026-04-08T15:52:56.0654175+08:00;True|2026-04-08T15:51:48.5362330+08:00;True|2026-04-08T15:38:55.9430240+08:00;True|2026-04-08T14:28:05.8170952+08:00;True|2026-04-08T10:04:26.1290532+08:00;True|2026-04-08T09:54:42.7091796+08:00;True|2026-04-08T09:47:39.4265409+08:00;True|2026-04-08T09:31:33.9940810+08:00;True|2026-04-08T09:25:48.8335042+08:00;True|2026-04-08T09:18:49.2340416+08:00;True|2026-04-08T09:05:38.1946058+08:00;True|2026-04-08T08:51:42.9648664+08:00;False|2026-04-08T08:50:29.4049907+08:00;True|2026-04-07T16:38:07.0366622+08:00;True|2026-04-07T16:30:02.5849908+08:00;True|2026-04-07T10:34:01.7729330+08:00;True|2026-04-07T09:48:28.6594815+08:00;True|2026-04-07T08:27:08.5467426+08:00;</History>
  </PropertyGroup>
  <ItemGroup>
    <File Include="apiapp.json">
@@ -45,28 +45,28 @@
      <publishTime>02/22/2013 16:43:40</publishTime>
    </File>
    <File Include="bin/BLL.dll">
      <publishTime>04/27/2026 09:59:06</publishTime>
      <publishTime>04/29/2026 16:46:17</publishTime>
    </File>
    <File Include="bin/BLL.pdb">
      <publishTime>04/27/2026 09:59:06</publishTime>
      <publishTime>04/29/2026 16:46:17</publishTime>
    </File>
    <File Include="bin/BouncyCastle.Crypto.dll">
      <publishTime>12/18/2020 05:32:28</publishTime>
    </File>
    <File Include="bin/DAL.dll">
      <publishTime>04/27/2026 09:59:03</publishTime>
      <publishTime>04/29/2026 16:46:15</publishTime>
    </File>
    <File Include="bin/DAL.pdb">
      <publishTime>04/27/2026 09:59:03</publishTime>
      <publishTime>04/29/2026 16:46:15</publishTime>
    </File>
    <File Include="bin/Dapper.dll">
      <publishTime>07/22/2016 22:52:40</publishTime>
    </File>
    <File Include="bin/DBUtility.dll">
      <publishTime>04/27/2026 09:58:56</publishTime>
      <publishTime>04/29/2026 16:46:10</publishTime>
    </File>
    <File Include="bin/DBUtility.pdb">
      <publishTime>04/27/2026 09:58:56</publishTime>
      <publishTime>04/29/2026 16:46:10</publishTime>
    </File>
    <File Include="bin/Fleck.dll">
      <publishTime>04/22/2021 11:48:12</publishTime>
@@ -150,10 +150,10 @@
      <publishTime>07/25/2012 19:48:56</publishTime>
    </File>
    <File Include="bin/Model.dll">
      <publishTime>04/27/2026 09:58:57</publishTime>
      <publishTime>04/29/2026 16:46:11</publishTime>
    </File>
    <File Include="bin/Model.pdb">
      <publishTime>04/27/2026 09:58:57</publishTime>
      <publishTime>04/29/2026 16:46:11</publishTime>
    </File>
    <File Include="bin/Models/ClsSc_MouldScrapOutBillMain.cs">
      <publishTime>04/21/2025 11:46:16</publishTime>
@@ -189,34 +189,34 @@
      <publishTime>11/13/2012 20:19:34</publishTime>
    </File>
    <File Include="bin/Pub_Class.dll">
      <publishTime>04/27/2026 09:58:53</publishTime>
      <publishTime>04/29/2026 16:46:09</publishTime>
    </File>
    <File Include="bin/Pub_Class.pdb">
      <publishTime>04/27/2026 09:58:53</publishTime>
      <publishTime>04/29/2026 16:46:09</publishTime>
    </File>
    <File Include="bin/Pub_Control.dll">
      <publishTime>04/27/2026 09:58:54</publishTime>
      <publishTime>04/29/2026 16:46:10</publishTime>
    </File>
    <File Include="bin/Pub_Control.pdb">
      <publishTime>04/27/2026 09:58:54</publishTime>
      <publishTime>04/29/2026 16:46:10</publishTime>
    </File>
    <File Include="bin/RestSharp.dll">
      <publishTime>08/31/2012 06:22:50</publishTime>
    </File>
    <File Include="bin/SQLHelper.dll">
      <publishTime>04/27/2026 09:58:54</publishTime>
      <publishTime>04/29/2026 16:46:10</publishTime>
    </File>
    <File Include="bin/SQLHelper.pdb">
      <publishTime>04/27/2026 09:58:54</publishTime>
      <publishTime>04/29/2026 16:46:10</publishTime>
    </File>
    <File Include="bin/Swashbuckle.Core.dll">
      <publishTime>02/16/2015 01:57:08</publishTime>
    </File>
    <File Include="bin/SyntacticSugar.dll">
      <publishTime>04/27/2026 09:58:50</publishTime>
      <publishTime>04/29/2026 16:46:06</publishTime>
    </File>
    <File Include="bin/SyntacticSugar.pdb">
      <publishTime>04/27/2026 09:58:50</publishTime>
      <publishTime>04/29/2026 16:46:06</publishTime>
    </File>
    <File Include="bin/System.Buffers.dll">
      <publishTime>07/19/2017 18:01:28</publishTime>
@@ -330,22 +330,22 @@
      <publishTime>05/09/2023 10:43:40</publishTime>
    </File>
    <File Include="bin/TopSdk.dll">
      <publishTime>04/27/2026 09:58:57</publishTime>
      <publishTime>04/29/2026 16:46:12</publishTime>
    </File>
    <File Include="bin/TopSdk.pdb">
      <publishTime>04/27/2026 09:58:57</publishTime>
      <publishTime>04/29/2026 16:46:12</publishTime>
    </File>
    <File Include="bin/WebActivatorEx.dll">
      <publishTime>11/24/2014 19:18:48</publishTime>
    </File>
    <File Include="bin/WebAPI.dll">
      <publishTime>04/27/2026 15:09:24</publishTime>
      <publishTime>04/29/2026 16:46:25</publishTime>
    </File>
    <File Include="bin/WebAPI.pdb">
      <publishTime>04/27/2026 15:09:24</publishTime>
      <publishTime>04/29/2026 16:46:25</publishTime>
    </File>
    <File Include="bin/WebAPI.XmlSerializers.dll">
      <publishTime>04/27/2026 15:09:38</publishTime>
      <publishTime>04/29/2026 16:46:42</publishTime>
    </File>
    <File Include="bin/WebGrease.dll">
      <publishTime>07/18/2013 01:03:52</publishTime>
@@ -570,7 +570,13 @@
      <publishTime>04/21/2025 11:46:17</publishTime>
    </File>
    <File Include="Web.config">
      <publishTime>04/22/2026 13:46:35</publishTime>
      <publishTime>04/29/2026 16:47:03</publishTime>
    </File>
    <File Include="ZPLTemplate/物料条码 100×60.zpl">
      <publishTime>04/28/2026 17:03:29</publishTime>
    </File>
    <File Include="ZPLTemplate/物料条码 80×60.zpl">
      <publishTime>04/28/2026 09:32:53</publishTime>
    </File>
  </ItemGroup>
</Project>
WebAPI/Service/GeTuiService.cs
@@ -65,12 +65,17 @@
                {
                    foreach (DataRow row in ds.Tables[1].Rows)
                    {
                        if (userClientIDDictionary.ContainsKey(row["HUserName"].ToString())){
                            userClientIDDictionary[row["HUserName"].ToString()].Add(row["HClientID"].ToString());
                        }
                        else
                        // åªæœ‰åœ¨çº¿çš„用户 åœ¨éœ€è¦åŠ å…¥åˆ°å¾…å‘é€ç”¨æˆ·è®¾å¤‡å…³è”å­—å…¸ä¸­ ä¸éœ€è¦ç»™ä¸åœ¨çº¿çš„用户发消息
                        if(row["HOnline"].ToString() == "1")
                        {
                            userClientIDDictionary.TryAdd(row["HUserName"].ToString(), new List<string>() { row["HClientID"].ToString() });
                            if (userClientIDDictionary.ContainsKey(row["HUserName"].ToString()))
                            {
                                userClientIDDictionary[row["HUserName"].ToString()].Add(row["HClientID"].ToString());
                            }
                            else
                            {
                                userClientIDDictionary.TryAdd(row["HUserName"].ToString(), new List<string>() { row["HClientID"].ToString() });
                            }
                        }
                    }
                }
WebAPI/Service/JwtAuthorizeAttribute.cs
@@ -6,6 +6,7 @@
using System.Security.Claims;
using System.Threading;
using System.Threading.Tasks;
using System.Web;
using System.Web.Http;
using System.Web.Http.Controllers;
using System.Web.Http.Filters;
@@ -53,6 +54,20 @@
                return;
            }
            // æ£€æŸ¥ Token和当前登录用户是否匹配
            var HUserName = GetUserNameFromHeader(actionContext) ?? "";
            var TokenUserName = JWTHelper.getUserName(token);
            if(!string.IsNullOrWhiteSpace(HUserName))
            {
                HUserName = HttpUtility.UrlDecode(HUserName);
            }
            if(TokenUserName != HUserName)
            {
                // å¦‚æžœToken和当前登录用户不匹配,则需要告知前端用户 Token è¿‡æœŸï¼Œéœ€é‡æ–°ç™»å½•
                HandleUnauthorized(actionContext);
                return;
            }
            // è®¾ç½®ç”¨æˆ·
            actionContext.RequestContext.Principal = principal;
@@ -146,6 +161,19 @@
        return null;
    }
    // ä»ŽHeader中获取用户名
    private string GetUserNameFromHeader(HttpActionContext context)
    {
        var headers = context.Request.Headers;
        string userName = "";
        if (headers.Contains("X-Username"))
        {
            userName = headers.GetValues("X-Username").FirstOrDefault();
        }
        return userName;
    }
    // 401 æœªæŽˆæƒ
    private void HandleUnauthorized(HttpActionContext context)
    {
WebAPI/WebAPI.csproj
@@ -415,6 +415,8 @@
    <Content Include="Web.config">
      <SubType>Designer</SubType>
    </Content>
    <Content Include="ZPLTemplate\物料条码 80×60.zpl" />
    <Content Include="ZPLTemplate\物料条码 100×60.zpl" />
  </ItemGroup>
  <ItemGroup>
    <Compile Include="App_Start\BundleConfig.cs" />
WebAPI/WebAPI.csproj.user
@@ -3,7 +3,7 @@
  <PropertyGroup>
    <LastActiveSolutionConfig>Debug|x86</LastActiveSolutionConfig>
    <LastActiveSolutionConfig>Debug|Any CPU</LastActiveSolutionConfig>
    <LastActiveSolutionConfig>Debug|Any CPU</LastActiveSolutionConfig>
    <LastActiveSolutionConfig>Debug|x86</LastActiveSolutionConfig>
    <UseIISExpress>true</UseIISExpress>
    <Use64BitIISExpress />
    <IISExpressSSLPort />
@@ -17,7 +17,7 @@
    <ProjectView>ShowAllFiles</ProjectView>
    <NameOfLastUsedPublishProfile>D:\网站发布\后端代码\MES-WEB-API\MES-WEB-API\WebAPI\Properties\PublishProfiles\FolderProfile2.pubxml</NameOfLastUsedPublishProfile>
    <NameOfLastUsedPublishProfile>D:\网站发布\后端代码\MES-WEB-API\MES-WEB-API\WebAPI\Properties\PublishProfiles\FolderProfile4.pubxml</NameOfLastUsedPublishProfile>
    <NameOfLastUsedPublishProfile>D:\网站发布\后端代码\MES-WEB-API\MES-WEB-API\WebAPI\Properties\PublishProfiles\FolderProfile2.pubxml</NameOfLastUsedPublishProfile>
    <NameOfLastUsedPublishProfile>D:\WorkBench\MES-WEB-API\WebAPI\Properties\PublishProfiles\CHZFolderProfile.pubxml</NameOfLastUsedPublishProfile>
  </PropertyGroup>
  <ProjectExtensions>
    <VisualStudio>
WebAPI/ZPLTemplate/ÎïÁÏÌõÂë 100¡Á60.zpl
New file
@@ -0,0 +1,65 @@
^XA
^LL480
^PW800
^FO0,0^GB800,480,2^FS
^SEE:UNICODE.DAT^FS
^CWJ,E:simsun-18030.ttf^FS
^FO0,0^GB540,60,1^FS
^FO0,0^GB120,60,1^FS
^FO10,24^AJN,20,20^CI28^FD编码(P)^FS
^FO130,24^AJN,20,20^CI28^FD{{ ç‰©æ–™ä»£ç  }}^FS
^FO0,60^GB540,60,1^FS
^FO0,60^GB120,60,1^FS
^FO10,84^AJN,20,20^CI28^FD生产日期^FS
^FO130,84^AJN,20,20^CI28^FD{{ ç”Ÿäº§æ—¥æœŸ }}^FS
^FO0,120^GB540,60,1^FS
^FO0,120^GB120,60,1^FS
^FO10,144^AJN,20,20^CI28^FD客户订单号^FS
^FO130,144^AJN,20,20^CI28^FD{{ å®¢æˆ·è®¢å•号 }}^FS
^FO0,180^GB540,60,1^FS
^FO0,180^GB120,60,1^FS
^FO10,204^AJN,20,20^CI28^FD采购跟踪号^FS
^FO130,204^AJN,20,20^CI28^FD{{ é‡‡è´­è·Ÿè¸ªå· }}^FS
// äºŒç»´ç ï¼šä¿æŒä½ åŽŸæ¥å¤§å°ã€ä½ç½® ä¸å˜
^FO600,40^BQN,2,5^CI28^FDQA,{{ æ¡ç ç¼–号 }}^FS
^FO0,240^GB800,60,1^FS
^FO0,240^GB120,60,1^FS
^FO460,240^GB100,60,1^FS
^FO680,240^GB120,60,1^FS
^FO10,260^AJN,20,20^CI28^FD名称(N)^FS
^FO130,260^AJN,20,20^CI28^FD{{ ç‰©æ–™åç§° }}^FS
^FO480,260^AJN,20,20^CI28^FD数量^FS
^FO580,260^AJN,20,20^CI28^FD{{ æ•°é‡ }}^FS
^FO680,260^AJN,20,20^CI28^FD{{ è®¡é‡å•位 }}^FS
^FO0,300^GB800,50,1^FS
^FO0,300^GB120,50,1^FS
^FO10,315^AJN,20,20^CI28^FD规格型号^FS
^FO130,315^AJN,20,20^CI28^FD{{ è§„格型号 }}^FS
^FO0,350^GB800,50,1^FS
^FO0,350^GB120,50,1^FS
^FO10,365^AJN,20,20^CI28^FD产品型号^FS
^FO130,365^AJN,20,20^CI28^FD{{ äº§å“åž‹å· }}^FS
^FO0,400^GB800,50,1^FS
^FO0,400^GB120,50,1^FS
^FO10,415^AJN,20,20^CI28^FD供应商^FS
^FO130,415^AJN,20,20^CI28^FD{{ ä¾›åº”商 }}^FS
^FO0,450^GB800,30,1^FS
^FO0,450^GB120,30,1^FS
^FO10,460^AJN,18,18^CI28^FDUPN^FS
^FO130,460^AJN,18,18^CI28^FD{{ æ¡ç ç¼–号 }}^FS
^XZ
WebAPI/ZPLTemplate/ÎïÁÏÌõÂë 80¡Á60.zpl
New file
@@ -0,0 +1,75 @@
^XA
^LL480          // æ ‡ç­¾é«˜åº¦ï¼š60mm @ 203DPI â‰ˆ 480 dots
^PW640          // æ ‡ç­¾å®½åº¦ï¼š80mm @ 203DPI â‰ˆ 640 dots
^FO0,0^GB640,480,2^FS // å¤–框线
//////////////////////////
// ç»Ÿä¸€ä½¿ç”¨ simsun-18030 ä¸­æ–‡å­—体
//////////////////////////
^CWJ,E:simsun-18030.ttf^FS
// ========== ç¬¬1-4行:左侧文本区 + å³ä¾§QR码 ==========
// ç¬¬1行 ç¼–码(P)
^FO0,0^GB420,60,1^FS
^FO0,0^GB120,60,1^FS
^FO10,24^AJN,20,20^CI28^FD编码(P)^FS
^FO130,24^AJN,20,20^CI28^FD{{ ç‰©æ–™ä»£ç  }}^FS
// ç¬¬2行 ç”Ÿäº§æ—¥æœŸ
^FO0,60^GB420,60,1^FS
^FO0,60^GB120,60,1^FS
^FO10,84^AJN,20,20^CI28^FD生产日期^FS
^FO130,84^AJN,20,20^CI28^FD{{ ç”Ÿäº§æ—¥æœŸ }}^FS
// ç¬¬3行 å®¢æˆ·è®¢å•号
^FO0,120^GB420,60,1^FS
^FO0,120^GB120,60,1^FS
^FO10,144^AJN,20,20^CI28^FD客户订单号^FS
^FO130,144^AJN,20,20^CI28^FD{{ å®¢æˆ·è®¢å•号 }}^FS
// ç¬¬4行 é‡‡è´­è·Ÿè¸ªå·
^FO0,180^GB420,60,1^FS
^FO0,180^GB120,60,1^FS
^FO10,204^AJN,20,20^CI28^FD采购跟踪号^FS
^FO130,204^AJN,20,20^CI28^FD{{ é‡‡è´­è·Ÿè¸ªå· }}^FS
// QR码(右侧区域)
^FO450,40^BQN,2,6^CI28^FDQA,{{ æ¡ç ç¼–号 }}^FS
// ========== ç¬¬5行:名称/数量/单位 ==========
^FO0,240^GB640,60,1^FS
^FO0,240^GB120,60,1^FS   // åç§°(N)列
^FO120,240^GB240,60,1^FS // ç‰©æ–™åç§°åˆ—
^FO360,240^GB100,60,1^FS // æ•°é‡åˆ—
^FO460,240^GB100,60,1^FS // æ•°å€¼åˆ—
^FO560,240^GB80,60,1^FS  // å•位列
^FO10,260^AJN,20,20^CI28^FD名称(N)^FS
^FO130,260^AJN,20,20^CI28^FD{{ ç‰©æ–™åç§° }}^FS
^FO370,260^AJN,20,20^CI28^FD数量^FS
^FO470,260^AJN,20,20^CI28^FD{{ æ•°é‡ }}^FS
^FO570,260^AJN,20,20^CI28^FD{{ è®¡é‡å•位 }}^FS
// ========== ç¬¬6行:规格型号 ==========
^FO0,300^GB640,60,1^FS
^FO0,300^GB120,60,1^FS
^FO10,320^AJN,20,20^CI28^FD规格型号^FS
^FO130,320^AJN,20,20^CI28^FD{{ è§„格型号 }}^FS
// ========== ç¬¬7行:产品型号 ==========
^FO0,360^GB640,60,1^FS
^FO0,360^GB120,60,1^FS
^FO10,380^AJN,20,20^CI28^FD产品型号^FS
^FO130,380^AJN,20,20^CI28^FD{{ äº§å“åž‹å· }}^FS
// ========== ç¬¬8行:供应商 ==========
^FO0,420^GB640,60,1^FS
^FO0,420^GB120,60,1^FS
^FO10,440^AJN,20,20^CI28^FD供应商^FS
^FO130,440^AJN,20,20^CI28^FD{{ ä¾›åº”商 }}^FS
// ========== ç¬¬9行:UPN ==========
^FO0,480^GB640,60,1^FS
^FO0,480^GB120,60,1^FS
^FO10,500^AJN,20,20^CI28^FDUPN^FS
^FO130,500^AJN,20,20^CI28^FD{{ æ¡ç ç¼–号 }}^FS
^XZ
sdk_dingding/TopSdk/bin/Debug/TopSdk.dll
Binary files differ
sdk_dingding/TopSdk/bin/Debug/TopSdk.pdb
Binary files differ
sdk_dingding/TopSdk/bin/Release/TopSdk.dll
Binary files differ
sdk_dingding/TopSdk/bin/Release/TopSdk.pdb
Binary files differ
sdk_dingding/TopSdk/obj/Debug/TopSdk.csproj.AssemblyReference.cache
Binary files differ
sdk_dingding/TopSdk/obj/Debug/TopSdk.csproj.FileListAbsolute.txt
@@ -4,8 +4,6 @@
D:\网站发布\后端代码\MES-WEB-API\MES-WEB-API\sdk_dingding\TopSdk\obj\Debug\TopSdk.csproj.CoreCompileInputs.cache
D:\网站发布\后端代码\MES-WEB-API\MES-WEB-API\sdk_dingding\TopSdk\obj\Debug\TopSdk.dll
D:\网站发布\后端代码\MES-WEB-API\MES-WEB-API\sdk_dingding\TopSdk\obj\Debug\TopSdk.pdb
<<<<<<< HEAD
=======
C:\Users\19858\Desktop\智云迈思\MES-WEB-API\sdk_dingding\TopSdk\bin\Debug\TopSdk.dll
C:\Users\19858\Desktop\智云迈思\MES-WEB-API\sdk_dingding\TopSdk\bin\Debug\TopSdk.pdb
C:\Users\19858\Desktop\智云迈思\MES-WEB-API\sdk_dingding\TopSdk\obj\Debug\TopSdk.csproj.CoreCompileInputs.cache
@@ -22,22 +20,10 @@
D:\WMES\MES-WEB-API\sdk_dingding\TopSdk\obj\Debug\TopSdk.csproj.CoreCompileInputs.cache
D:\WMES\MES-WEB-API\sdk_dingding\TopSdk\obj\Debug\TopSdk.dll
D:\WMES\MES-WEB-API\sdk_dingding\TopSdk\obj\Debug\TopSdk.pdb
>>>>>>> 4d047b40eff94b3fc251ca164770e524a2c02779
D:\WorkBench\MES-WEB-API\sdk_dingding\TopSdk\bin\Debug\TopSdk.dll
D:\WorkBench\MES-WEB-API\sdk_dingding\TopSdk\bin\Debug\TopSdk.pdb
D:\WorkBench\MES-WEB-API\sdk_dingding\TopSdk\obj\Debug\TopSdk.csproj.CoreCompileInputs.cache
D:\WorkBench\MES-WEB-API\sdk_dingding\TopSdk\obj\Debug\TopSdk.dll
D:\WorkBench\MES-WEB-API\sdk_dingding\TopSdk\obj\Debug\TopSdk.pdb
<<<<<<< HEAD
=======
<<<<<<< HEAD
D:\WorkBench\MES-WEB-API\sdk_dingding\TopSdk\obj\Debug\TopSdk.csproj.AssemblyReference.cache
C:\Users\19858\Desktop\智云迈思\MES-WEB-API\sdk_dingding\TopSdk\bin\Debug\TopSdk.dll
C:\Users\19858\Desktop\智云迈思\MES-WEB-API\sdk_dingding\TopSdk\bin\Debug\TopSdk.pdb
C:\Users\19858\Desktop\智云迈思\MES-WEB-API\sdk_dingding\TopSdk\obj\Debug\TopSdk.csproj.AssemblyReference.cache
C:\Users\19858\Desktop\智云迈思\MES-WEB-API\sdk_dingding\TopSdk\obj\Debug\TopSdk.csproj.CoreCompileInputs.cache
C:\Users\19858\Desktop\智云迈思\MES-WEB-API\sdk_dingding\TopSdk\obj\Debug\TopSdk.dll
C:\Users\19858\Desktop\智云迈思\MES-WEB-API\sdk_dingding\TopSdk\obj\Debug\TopSdk.pdb
=======
>>>>>>> 1a5256ee25e90967f9058061906643ab4142c434
>>>>>>> 4d047b40eff94b3fc251ca164770e524a2c02779
sdk_dingding/TopSdk/obj/Debug/TopSdk.dll
Binary files differ
sdk_dingding/TopSdk/obj/Debug/TopSdk.pdb
Binary files differ
sdk_dingding/TopSdk/obj/Release/TopSdk.csproj.AssemblyReference.cache
Binary files differ
sdk_dingding/TopSdk/obj/Release/TopSdk.csproj.CoreCompileInputs.cache
File was deleted
sdk_dingding/TopSdk/obj/Release/TopSdk.dll
Binary files differ
sdk_dingding/TopSdk/obj/Release/TopSdk.pdb
Binary files differ