From 693ee8dcade73aa939d1ddd2878464275a26e2c6 Mon Sep 17 00:00:00 2001
From: zrg <z1873@LAPTOP-EAVL132E>
Date: 星期三, 06 五月 2026 16:14:26 +0800
Subject: [PATCH] 条码生成标准版  增加保存前后控制  判断有源单时  条码不能超过源单数量 网页端首巡末增加附件上传功能

---
 WebAPI/Controllers/仓存管理/条码生成/Sc_BarCodeController.cs                 |   55 +++
 WebAPI/Controllers/品质管理/巡检单/QC_PatrolProcCheckOtherBillController.cs |  218 +++++++++++++
 WebAPI/WebAPI.csproj.user                                            |    2 
 WebAPI/Controllers/品质管理/首件检验单/QC_FirstPieceCheckBillController.cs    |  219 +++++++++++++
 WebAPI/Properties/PublishProfiles/FolderProfile2.pubxml.user         |  188 ++++++-----
 WebAPI/Controllers/品质管理/工序检验单/QC_ProcessCheckBillController.cs       |  220 +++++++++++++
 6 files changed, 803 insertions(+), 99 deletions(-)

diff --git "a/WebAPI/Controllers/\344\273\223\345\255\230\347\256\241\347\220\206/\346\235\241\347\240\201\347\224\237\346\210\220/Sc_BarCodeController.cs" "b/WebAPI/Controllers/\344\273\223\345\255\230\347\256\241\347\220\206/\346\235\241\347\240\201\347\224\237\346\210\220/Sc_BarCodeController.cs"
index bd6c3a8..a135386 100644
--- "a/WebAPI/Controllers/\344\273\223\345\255\230\347\256\241\347\220\206/\346\235\241\347\240\201\347\224\237\346\210\220/Sc_BarCodeController.cs"
+++ "b/WebAPI/Controllers/\344\273\223\345\255\230\347\256\241\347\220\206/\346\235\241\347\240\201\347\224\237\346\210\220/Sc_BarCodeController.cs"
@@ -1684,6 +1684,29 @@
                         n = n + 1;
                         oCN.RunProc("exec h_p_WMS_SetMaxNo '" + sTMNumber + "'");
                     }
+
+
+                    //淇濆瓨鍓�=========================================      
+                    string sql1 = "exec h_p_Gy_BarCodeBill_BeforeSaveCtrl '" + HSelectBarCodeType + "','" + ordrlist[j].HMainID + "','" + ordrlist[j].HSubID + "','" + ordrlist[j].HBillNo + "','" + ordrlist[j].HBillType + "'," + HOrgID.ToString() + ",'"+ ordrlist[j].HQty + "'";
+                    ds = oCN.RunProcReturn(sql1, "h_p_Gy_BarCodeBill_BeforeSaveCtrl");
+                    if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "淇濆瓨鍓嶅け璐�!鍘熷洜:淇濆瓨鍓嶅け璐ワ紝璇蜂笌缃戠粶绠$悊浜哄憳鑱旂郴";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+
+                    if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "淇濆瓨鍓嶅け璐�!鍘熷洜:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    //==================================================================================      
                 }
             }
             string HWei = "";      //灏炬暟
@@ -1852,7 +1875,31 @@
                                    + ",'" + HMaterName + "','" + HMaterModel + "','" + HPinfan + "'," + HAuxPropID.ToString() + ",'" + HMTONo + "','" + HInnerBillNo + "'"
                                    + ",'" + HCoilNO2 + "','" + HFurnaceNO2 + "','" + HFactory2 + "'," + HAuxQty2 + ",'" + HheatNO2 + "','" + HProduceDate + "','" + HExpiryDate + "'," + HEmpID2.ToString() + ",'" + HCusModel2 + "','" + HCusMaterName2 + "','" + HCheckEmpName2 + "'" + ")");
                         }
-                       
+
+                        //淇濆瓨鍚庢帶鍒�=========================================      
+                        string sql1 = "exec h_p_Gy_BarCodeBill_AfterSaveCtrl '" + HBarCodeType + "','" + HSourceInterID + "','" + HSourceEntryID + "','" + HSourceBillType + "'," + HOrgID.ToString() + "";
+                        ds = oCN.RunProcReturn(sql1, "h_p_Gy_BarCodeBill_AfterSaveCtrl");
+                        if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "淇濆瓨鍚庡け璐�!鍘熷洜:瀹℃牳鍓嶅垽鏂け璐ワ紝璇蜂笌缃戠粶绠$悊浜哄憳鑱旂郴";
+                            objJsonResult.data = null;
+                            oCN.RollBack();
+                            return objJsonResult;
+                        }
+
+                        if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "淇濆瓨鍚庡け璐�!鍘熷洜:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ;
+                            objJsonResult.data = null;
+                            oCN.RollBack();
+                            return objJsonResult;
+                        }
+                        //==================================================================================      
+
 
 
                         //HNumber = ClsPub.isStrNull(grdSub.Rows[i].Cells[HMaterID2Col].Value);
@@ -1883,11 +1930,7 @@
                         //}
                         //oCn.RunProc("exec h_p_WMS_SetMaxNo '" + sTMNumber + "'");
                     }
-                }
-                //澧炲姞 鏉$爜瓒呰繃鏈敓鎴愬姛鑳芥帶鍒�
-
-                //
-
+                }              
 
                 //鏉$爜鐢熸垚鏃跺悓姝ョ敓鎴愭潯鐮佸嚭鍏ュ簱璁板綍
                 if (HSourceBillTypeName.Trim() == "鐢熶骇鍏ュ簱鍗�" || HSourceBillTypeName.Trim() == "閲囪喘鍏ュ簱鍗�"
diff --git "a/WebAPI/Controllers/\345\223\201\350\264\250\347\256\241\347\220\206/\345\267\241\346\243\200\345\215\225/QC_PatrolProcCheckOtherBillController.cs" "b/WebAPI/Controllers/\345\223\201\350\264\250\347\256\241\347\220\206/\345\267\241\346\243\200\345\215\225/QC_PatrolProcCheckOtherBillController.cs"
index 92b8f32..a02dd03 100644
--- "a/WebAPI/Controllers/\345\223\201\350\264\250\347\256\241\347\220\206/\345\267\241\346\243\200\345\215\225/QC_PatrolProcCheckOtherBillController.cs"
+++ "b/WebAPI/Controllers/\345\223\201\350\264\250\347\256\241\347\220\206/\345\267\241\346\243\200\345\215\225/QC_PatrolProcCheckOtherBillController.cs"
@@ -6,6 +6,8 @@
 using System.Collections.Generic;
 using System.Data;
 using System.Data.SqlClient;
+using System.IO;
+using System.Web;
 using System.Web.Http;
 using WebAPI.Controllers.SCGL;
 using WebAPI.Models;
@@ -24,6 +26,7 @@
         DataSet ds;
         //鑾峰彇绯荤粺鍙傛暟
         Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter();
+        string fileip = System.Configuration.ConfigurationManager.AppSettings["FileIP"];
 
         #region 宸℃鍗曞垪琛� 
         [Route("QC_PatrolProcCheckOtherBill/QC_PatrolProcCheckOtherBillList")]
@@ -1881,5 +1884,220 @@
         }
         #endregion
 
+
+        #region 宸℃妫�楠屽崟 鏂囦欢涓婁紶
+        [Route("QC_PatrolProcCheckOtherBill/UploadFile_QC_PatrolProcCheckOtherBill")]
+        [HttpPost]
+        public object UploadFile_QC_PatrolProcCheckOtherBill()
+        {
+
+            string path = "";
+            string HBillNo = HttpContext.Current.Request.Params["HBillNo"];  //鍗曟嵁鍙�
+            string HRemark = HttpContext.Current.Request.Params["HRemark"];  //澶囨敞
+            string HUserName = HttpContext.Current.Request.Params["HUserName"];  //鍒涘缓浜�
+            HttpPostedFile files = HttpContext.Current.Request.Files["file"];
+            string Ret = "";
+            if (oSystemParameter.ShowBill(ref Ret))
+            {
+                if (oSystemParameter.omodel.WMS_CampanyName == "鍑礉濂堢壒")
+                {
+                    path = "D:/缃戠珯鍙戝竷/LAYUI/Files/QC_PatrolProcCheckOtherBill/" + HBillNo;
+                }
+                else
+                {
+                    path = HttpContext.Current.Server.MapPath("~/../Files/QC_PatrolProcCheckOtherBill/" + HBillNo);
+                }
+            }
+            dynamic dyResult = UploadFile_QC_PatrolProcCheckOtherBill(files, path, HBillNo, HRemark, HUserName);
+            if (dyResult != null && dyResult.result == 1)
+            {
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "涓婁紶鎴愬姛锛�";
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+            else
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = dyResult.returnval;
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+
+        }
+
+        public dynamic UploadFile_QC_PatrolProcCheckOtherBill(HttpPostedFile files, string path, string HBillNo, string HRemark, string HUserName)
+        {
+            dynamic Result_Ob = new { result = 1, returnval = "涓婁紶鎴愬姛锛�" };
+            string filePath = Path.GetFullPath(files.FileName);//鏂囦欢涓婁紶璺緞
+            string fileExtension = Path.GetExtension(files.FileName);// 鏂囦欢鎵╁睍鍚�
+            string filename = files.FileName;//鏂囦欢鍚�
+            string fileSavePath = path;// 涓婁紶淇濆瓨璺緞
+            int filesize = files.ContentLength;//鑾峰彇涓婁紶鏂囦欢鐨勫ぇ灏忓崟浣嶄负瀛楄妭byte
+            int Maxsize = 40000 * 1024;//瀹氫箟涓婁紶鏂囦欢鐨勬渶澶х┖闂村ぇ灏忎负40M
+            try
+            {
+                if (files == null || files.ContentLength <= 0)
+                {
+                    Result_Ob = new { result = 0, returnval = "鏂囦欢涓嶈兘涓虹┖!" };
+                    return Result_Ob;
+                }
+                if (filesize >= Maxsize)
+                {
+                    Result_Ob = new { result = 0, returnval = "涓婁紶鏂囦欢瓒呰繃40M锛屼笉鑳戒笂浼狅紒" };
+                    return Result_Ob;
+                }
+
+                string fileurl = Path.Combine(fileSavePath, filename);
+                if (Directory.Exists(fileurl) == true)  //濡傛灉瀛樺湪閲嶅悕鏂囦欢灏辨彁绀�  
+                {
+                    Result_Ob = new { result = 0, returnval = "瀛樺湪鍚屽悕鏂囦欢锛�" };
+                    return Result_Ob;
+                }
+                //鍒犻櫎鏁版嵁琛ㄦ暟鎹�
+                ds = oCN.RunProcReturn("delete from MES_AccessoriesList where HSourceBillNo ='" + HBillNo + "' and HFileName='" + filename + "'", "MES_AccessoriesList");
+                if (Directory.Exists(path))
+                {
+                    File.Delete(fileurl);      //鍒犻櫎鎸囧畾鏂囦欢
+                    files.SaveAs(fileurl);
+                    string StrPath = "";
+
+                    string Ret = "";
+                    if (oSystemParameter.ShowBill(ref Ret))
+                    {
+                        if (oSystemParameter.omodel.WMS_CampanyName == "鍑礉濂堢壒")
+                        {
+                            StrPath = "D:/缃戠珯鍙戝竷/LAYUI/Files/QC_PatrolProcCheckOtherBill/" + HBillNo + "/" + filename;
+                        }
+                        else
+                        {
+                            StrPath = "/files/QC_PatrolProcCheckOtherBill/" + HBillNo + "/" + filename;
+                        }
+                    }
+                    if (File.Exists(fileurl))
+                    {
+                        //杩欓噷鍙互鎵ц涓�浜涘叾瀹冪殑鎿嶄綔锛屾瘮濡傛洿鏂版暟鎹簱
+                        //鍐欏叆鏁版嵁琛�
+                        oCN.RunProc("Insert into MES_AccessoriesList (HFileName,HFilePath,HFilePath_Cus,HFileType" +
+                                    ",HLoadMan,HLoadDate,HRemark,HVerNum,HFileSize" +
+                                    ",HFileClsID,HSourceBillNo" +
+                                   ") values('"
+                                    + filename.ToString() + "','" + StrPath.ToString() + "','" + filePath.ToString() + "','" + fileExtension.ToString() + "'" +
+                                    ",'" + HUserName + "',getdate(),'" + HRemark + "','V1','" + filesize +
+                                    "','" + 0 + "','" + HBillNo +
+                                   "') ");
+                    }
+                    else
+                    {
+                        Result_Ob = new { result = 0, returnval = "涓婁紶澶辫触锛佹鏂囦欢涓烘伓鎰忔枃浠�" };
+                    }
+                }
+                else
+                {
+                    Directory.CreateDirectory(fileSavePath); //娣诲姞鏂囦欢澶�
+                    files.SaveAs(fileurl);
+                    string StrPath = "/files/QC_PatrolProcCheckOtherBill/" + HBillNo + "/" + filename;
+                    if (File.Exists(fileurl))
+                    {
+                        //杩欓噷鍙互鎵ц涓�浜涘叾瀹冪殑鎿嶄綔锛屾瘮濡傛洿鏂版暟鎹簱
+                        //鍐欏叆鏁版嵁琛�
+                        oCN.RunProc("Insert into MES_AccessoriesList (HFileName,HFilePath,HFilePath_Cus,HFileType" +
+                                    ",HLoadMan,HLoadDate,HRemark,HVerNum,HFileSize" +
+                                    ",HFileClsID,HSourceBillNo" +
+                                   ") values('"
+                                    + filename.ToString() + "','" + StrPath.ToString() + "','" + filePath.ToString() + "','" + fileExtension.ToString() + "'" +
+                                    ",'" + HUserName + "',getdate(),'" + HRemark + "','V1','" + filesize +
+                                    "','" + 0 + "','" + HBillNo +
+                                   "') ");
+                    }
+                    else
+                    {
+                        Result_Ob = new { result = 0, returnval = "涓婁紶澶辫触锛佹鏂囦欢涓烘伓鎰忔枃浠�" };
+                    }
+                }
+
+            }
+            catch (Exception e)
+            {
+                Result_Ob = new { result = 0, returnval = e.Message };
+            }
+            return Result_Ob;
+        }
+
+        /// <summary>
+        /// 鏍规嵁鍗曟嵁鍙锋煡鎵句笂浼犳枃浠跺垪琛�
+        /// </summary>
+        /// <param name="sWhere"></param>
+        /// <returns></returns>
+        [Route("QC_PatrolProcCheckOtherBill/QC_PatrolProcCheckOtherBillList")]
+        [HttpGet]
+        public object QC_PatrolProcCheckOtherBillList(string HBillNo)
+        {
+            string Ret = "";
+            var url = "";
+            if (oSystemParameter.ShowBill(ref Ret))
+            {
+                if (oSystemParameter.omodel.WMS_CampanyName == "鍑礉濂堢壒")
+                {
+                    url = "D:/缃戠珯鍙戝竷/LAYUI/Files/QC_PatrolProcCheckOtherBill/" + HBillNo + "/";
+                }
+                else
+                {
+                    url = fileip + "/Files/QC_PatrolProcCheckOtherBill/" + HBillNo + "/";
+                }
+            }
+
+            try
+            {
+                ds = oCN.RunProcReturn("select *,'" + url + "'+CAST(HFileName as varchar(200))as url  from MES_AccessoriesList where HSourceBillNo='" + HBillNo + "'", "MES_AccessoriesList");
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = ds.Tables[0];
+                return objJsonResult;
+
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+
+        /// <summary>
+        /// 鏍规嵁ID,鍗曟嵁鍙�,鏂囦欢鍚� 鍒犻櫎鏂囦欢
+        /// </summary>
+        /// <param name="sWhere"></param>
+        /// <returns></returns>
+        [Route("QC_PatrolProcCheckOtherBill/QC_PatrolProcCheckOtherBill_DeleteFilelist")]
+        [HttpGet]
+        public object QC_PatrolProcCheckOtherBill_DeleteFilelist(string HItemID, string HSourceBillNo, string HFileName)
+        {
+            try
+            {
+
+                oCN.RunProc("delete from MES_AccessoriesList where HItemID =" + HItemID);
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鍒犻櫎鎴愬姛锛�";
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
     }
 }
\ No newline at end of file
diff --git "a/WebAPI/Controllers/\345\223\201\350\264\250\347\256\241\347\220\206/\345\267\245\345\272\217\346\243\200\351\252\214\345\215\225/QC_ProcessCheckBillController.cs" "b/WebAPI/Controllers/\345\223\201\350\264\250\347\256\241\347\220\206/\345\267\245\345\272\217\346\243\200\351\252\214\345\215\225/QC_ProcessCheckBillController.cs"
index 0c441da..be3eab8 100644
--- "a/WebAPI/Controllers/\345\223\201\350\264\250\347\256\241\347\220\206/\345\267\245\345\272\217\346\243\200\351\252\214\345\215\225/QC_ProcessCheckBillController.cs"
+++ "b/WebAPI/Controllers/\345\223\201\350\264\250\347\256\241\347\220\206/\345\267\245\345\272\217\346\243\200\351\252\214\345\215\225/QC_ProcessCheckBillController.cs"
@@ -9,6 +9,8 @@
 using System.Web.Http;
 using WebAPI.Models;
 using SyntacticSugar.constant;
+using System.Web;
+using System.IO;
 
 namespace WebAPI.Controllers
 {
@@ -23,7 +25,8 @@
         public DAL.ClsQC_ProcessCheckBill BillOld = new DAL.ClsQC_ProcessCheckBill();
         DataSet ds;
         //鑾峰彇绯荤粺鍙傛暟
-        Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter();     
+        Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter();
+        string fileip = System.Configuration.ConfigurationManager.AppSettings["FileIP"];
 
         #region 宸ュ簭妫�楠屽崟鍒楄〃
         [Route("QC_ProcessCheckBill/QC_ProcessCheckBillList")]
@@ -2399,5 +2402,220 @@
         #endregion
         #endregion
 
+
+        #region 宸ュ簭妫�楠屽崟 鏂囦欢涓婁紶
+        [Route("QC_ProcessCheckBill/UploadFile_QC_ProcessCheckBill")]
+        [HttpPost]
+        public object UploadFile_QC_ProcessCheckBill()
+        {
+
+            string path = "";
+            string HBillNo = HttpContext.Current.Request.Params["HBillNo"];  //鍗曟嵁鍙�
+            string HRemark = HttpContext.Current.Request.Params["HRemark"];  //澶囨敞
+            string HUserName = HttpContext.Current.Request.Params["HUserName"];  //鍒涘缓浜�
+            HttpPostedFile files = HttpContext.Current.Request.Files["file"];
+            string Ret = "";
+            if (oSystemParameter.ShowBill(ref Ret))
+            {
+                if (oSystemParameter.omodel.WMS_CampanyName == "鍑礉濂堢壒")
+                {
+                    path = "D:/缃戠珯鍙戝竷/LAYUI/Files/QC_ProcessCheckBill/" + HBillNo;
+                }
+                else
+                {
+                    path = HttpContext.Current.Server.MapPath("~/../Files/QC_ProcessCheckBill/" + HBillNo);
+                }
+            }
+            dynamic dyResult = UploadFile_QC_ProcessCheckBill(files, path, HBillNo, HRemark, HUserName);
+            if (dyResult != null && dyResult.result == 1)
+            {
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "涓婁紶鎴愬姛锛�";
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+            else
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = dyResult.returnval;
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+
+        }
+
+        public dynamic UploadFile_QC_ProcessCheckBill(HttpPostedFile files, string path, string HBillNo, string HRemark, string HUserName)
+        {
+            dynamic Result_Ob = new { result = 1, returnval = "涓婁紶鎴愬姛锛�" };
+            string filePath = Path.GetFullPath(files.FileName);//鏂囦欢涓婁紶璺緞
+            string fileExtension = Path.GetExtension(files.FileName);// 鏂囦欢鎵╁睍鍚�
+            string filename = files.FileName;//鏂囦欢鍚�
+            string fileSavePath = path;// 涓婁紶淇濆瓨璺緞
+            int filesize = files.ContentLength;//鑾峰彇涓婁紶鏂囦欢鐨勫ぇ灏忓崟浣嶄负瀛楄妭byte
+            int Maxsize = 40000 * 1024;//瀹氫箟涓婁紶鏂囦欢鐨勬渶澶х┖闂村ぇ灏忎负40M
+            try
+            {
+                if (files == null || files.ContentLength <= 0)
+                {
+                    Result_Ob = new { result = 0, returnval = "鏂囦欢涓嶈兘涓虹┖!" };
+                    return Result_Ob;
+                }
+                if (filesize >= Maxsize)
+                {
+                    Result_Ob = new { result = 0, returnval = "涓婁紶鏂囦欢瓒呰繃40M锛屼笉鑳戒笂浼狅紒" };
+                    return Result_Ob;
+                }
+
+                string fileurl = Path.Combine(fileSavePath, filename);
+                if (Directory.Exists(fileurl) == true)  //濡傛灉瀛樺湪閲嶅悕鏂囦欢灏辨彁绀�  
+                {
+                    Result_Ob = new { result = 0, returnval = "瀛樺湪鍚屽悕鏂囦欢锛�" };
+                    return Result_Ob;
+                }
+                //鍒犻櫎鏁版嵁琛ㄦ暟鎹�
+                ds = oCN.RunProcReturn("delete from MES_AccessoriesList where HSourceBillNo ='" + HBillNo + "' and HFileName='" + filename + "'", "MES_AccessoriesList");
+                if (Directory.Exists(path))
+                {
+                    File.Delete(fileurl);      //鍒犻櫎鎸囧畾鏂囦欢
+                    files.SaveAs(fileurl);
+                    string StrPath = "";
+
+                    string Ret = "";
+                    if (oSystemParameter.ShowBill(ref Ret))
+                    {
+                        if (oSystemParameter.omodel.WMS_CampanyName == "鍑礉濂堢壒")
+                        {
+                            StrPath = "D:/缃戠珯鍙戝竷/LAYUI/Files/QC_ProcessCheckBill/" + HBillNo + "/" + filename;
+                        }
+                        else
+                        {
+                            StrPath = "/files/QC_ProcessCheckBill/" + HBillNo + "/" + filename;
+                        }
+                    }
+                    if (File.Exists(fileurl))
+                    {
+                        //杩欓噷鍙互鎵ц涓�浜涘叾瀹冪殑鎿嶄綔锛屾瘮濡傛洿鏂版暟鎹簱
+                        //鍐欏叆鏁版嵁琛�
+                        oCN.RunProc("Insert into MES_AccessoriesList (HFileName,HFilePath,HFilePath_Cus,HFileType" +
+                                    ",HLoadMan,HLoadDate,HRemark,HVerNum,HFileSize" +
+                                    ",HFileClsID,HSourceBillNo" +
+                                   ") values('"
+                                    + filename.ToString() + "','" + StrPath.ToString() + "','" + filePath.ToString() + "','" + fileExtension.ToString() + "'" +
+                                    ",'" + HUserName + "',getdate(),'" + HRemark + "','V1','" + filesize +
+                                    "','" + 0 + "','" + HBillNo +
+                                   "') ");
+                    }
+                    else
+                    {
+                        Result_Ob = new { result = 0, returnval = "涓婁紶澶辫触锛佹鏂囦欢涓烘伓鎰忔枃浠�" };
+                    }
+                }
+                else
+                {
+                    Directory.CreateDirectory(fileSavePath); //娣诲姞鏂囦欢澶�
+                    files.SaveAs(fileurl);
+                    string StrPath = "/files/QC_ProcessCheckBill/" + HBillNo + "/" + filename;
+                    if (File.Exists(fileurl))
+                    {
+                        //杩欓噷鍙互鎵ц涓�浜涘叾瀹冪殑鎿嶄綔锛屾瘮濡傛洿鏂版暟鎹簱
+                        //鍐欏叆鏁版嵁琛�
+                        oCN.RunProc("Insert into MES_AccessoriesList (HFileName,HFilePath,HFilePath_Cus,HFileType" +
+                                    ",HLoadMan,HLoadDate,HRemark,HVerNum,HFileSize" +
+                                    ",HFileClsID,HSourceBillNo" +
+                                   ") values('"
+                                    + filename.ToString() + "','" + StrPath.ToString() + "','" + filePath.ToString() + "','" + fileExtension.ToString() + "'" +
+                                    ",'" + HUserName + "',getdate(),'" + HRemark + "','V1','" + filesize +
+                                    "','" + 0 + "','" + HBillNo +
+                                   "') ");
+                    }
+                    else
+                    {
+                        Result_Ob = new { result = 0, returnval = "涓婁紶澶辫触锛佹鏂囦欢涓烘伓鎰忔枃浠�" };
+                    }
+                }
+
+            }
+            catch (Exception e)
+            {
+                Result_Ob = new { result = 0, returnval = e.Message };
+            }
+            return Result_Ob;
+        }
+
+        /// <summary>
+        /// 鏍规嵁鍗曟嵁鍙锋煡鎵句笂浼犳枃浠跺垪琛�
+        /// </summary>
+        /// <param name="sWhere"></param>
+        /// <returns></returns>
+        [Route("QC_ProcessCheckBill/QC_ProcessCheckBillList")]
+        [HttpGet]
+        public object QC_ProcessCheckBillList(string HBillNo)
+        {
+            string Ret = "";
+            var url = "";
+            if (oSystemParameter.ShowBill(ref Ret))
+            {
+                if (oSystemParameter.omodel.WMS_CampanyName == "鍑礉濂堢壒")
+                {
+                    url = "D:/缃戠珯鍙戝竷/LAYUI/Files/QC_ProcessCheckBill/" + HBillNo + "/";
+                }
+                else
+                {
+                    url = fileip + "/Files/QC_ProcessCheckBill/" + HBillNo + "/";
+                }
+            }
+
+            try
+            {
+                ds = oCN.RunProcReturn("select *,'" + url + "'+CAST(HFileName as varchar(200))as url  from MES_AccessoriesList where HSourceBillNo='" + HBillNo + "'", "MES_AccessoriesList");
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = ds.Tables[0];
+                return objJsonResult;
+
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+
+        /// <summary>
+        /// 鏍规嵁ID,鍗曟嵁鍙�,鏂囦欢鍚� 鍒犻櫎鏂囦欢
+        /// </summary>
+        /// <param name="sWhere"></param>
+        /// <returns></returns>
+        [Route("QC_ProcessCheckBill/QC_ProcessCheckBill_DeleteFilelist")]
+        [HttpGet]
+        public object QC_ProcessCheckBill_DeleteFilelist(string HItemID, string HSourceBillNo, string HFileName)
+        {
+            try
+            {
+
+                oCN.RunProc("delete from MES_AccessoriesList where HItemID =" + HItemID);
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鍒犻櫎鎴愬姛锛�";
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
     }
 }
\ No newline at end of file
diff --git "a/WebAPI/Controllers/\345\223\201\350\264\250\347\256\241\347\220\206/\351\246\226\344\273\266\346\243\200\351\252\214\345\215\225/QC_FirstPieceCheckBillController.cs" "b/WebAPI/Controllers/\345\223\201\350\264\250\347\256\241\347\220\206/\351\246\226\344\273\266\346\243\200\351\252\214\345\215\225/QC_FirstPieceCheckBillController.cs"
index c6b12d1..0f79821 100644
--- "a/WebAPI/Controllers/\345\223\201\350\264\250\347\256\241\347\220\206/\351\246\226\344\273\266\346\243\200\351\252\214\345\215\225/QC_FirstPieceCheckBillController.cs"
+++ "b/WebAPI/Controllers/\345\223\201\350\264\250\347\256\241\347\220\206/\351\246\226\344\273\266\346\243\200\351\252\214\345\215\225/QC_FirstPieceCheckBillController.cs"
@@ -7,6 +7,8 @@
 using System.Collections.Generic;
 using System.Data;
 using System.Data.SqlClient;
+using System.IO;
+using System.Web;
 using System.Web.Http;
 using WebAPI.Controllers.SCGL;
 using WebAPI.Models;
@@ -25,6 +27,8 @@
         DataSet ds;
         //鑾峰彇绯荤粺鍙傛暟
         Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter();
+        string fileip = System.Configuration.ConfigurationManager.AppSettings["FileIP"];
+
 
         #region 棣栦欢妫�楠屽崟鍒楄〃
         [Route("QC_FirstPieceCheckBill/QC_FirstPieceCheckBillList")]
@@ -2457,5 +2461,220 @@
         #endregion
 
 
+        #region 棣栦欢妫�楠屽崟 鏂囦欢涓婁紶
+        [Route("QC_FirstPieceCheckBill/UploadFile_QC_FirstPieceCheckBill")]
+        [HttpPost]
+        public object UploadFile_QC_FirstPieceCheckBill()
+        {
+
+            string path = "";
+            string HBillNo = HttpContext.Current.Request.Params["HBillNo"];  //鍗曟嵁鍙�
+            string HRemark = HttpContext.Current.Request.Params["HRemark"];  //澶囨敞
+            string HUserName = HttpContext.Current.Request.Params["HUserName"];  //鍒涘缓浜�
+            HttpPostedFile files = HttpContext.Current.Request.Files["file"];
+            string Ret = "";
+            if (oSystemParameter.ShowBill(ref Ret))
+            {
+                if (oSystemParameter.omodel.WMS_CampanyName == "鍑礉濂堢壒")
+                {
+                    path = "D:/缃戠珯鍙戝竷/LAYUI/Files/QC_FirstPieceCheckBill/" + HBillNo;
+                }
+                else
+                {
+                    path = HttpContext.Current.Server.MapPath("~/../Files/QC_FirstPieceCheckBill/" + HBillNo);
+                }
+            }
+            dynamic dyResult = UploadFile_QC_FirstPieceCheckBill(files, path, HBillNo, HRemark, HUserName);
+            if (dyResult != null && dyResult.result == 1)
+            {
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "涓婁紶鎴愬姛锛�";
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+            else
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = dyResult.returnval;
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+
+        }
+
+        public dynamic UploadFile_QC_FirstPieceCheckBill(HttpPostedFile files, string path, string HBillNo, string HRemark, string HUserName)
+        {
+            dynamic Result_Ob = new { result = 1, returnval = "涓婁紶鎴愬姛锛�" };
+            string filePath = Path.GetFullPath(files.FileName);//鏂囦欢涓婁紶璺緞
+            string fileExtension = Path.GetExtension(files.FileName);// 鏂囦欢鎵╁睍鍚�
+            string filename = files.FileName;//鏂囦欢鍚�
+            string fileSavePath = path;// 涓婁紶淇濆瓨璺緞
+            int filesize = files.ContentLength;//鑾峰彇涓婁紶鏂囦欢鐨勫ぇ灏忓崟浣嶄负瀛楄妭byte
+            int Maxsize = 40000 * 1024;//瀹氫箟涓婁紶鏂囦欢鐨勬渶澶х┖闂村ぇ灏忎负40M
+            try
+            {
+                if (files == null || files.ContentLength <= 0)
+                {
+                    Result_Ob = new { result = 0, returnval = "鏂囦欢涓嶈兘涓虹┖!" };
+                    return Result_Ob;
+                }
+                if (filesize >= Maxsize)
+                {
+                    Result_Ob = new { result = 0, returnval = "涓婁紶鏂囦欢瓒呰繃40M锛屼笉鑳戒笂浼狅紒" };
+                    return Result_Ob;
+                }
+
+                string fileurl = Path.Combine(fileSavePath, filename);
+                if (Directory.Exists(fileurl) == true)  //濡傛灉瀛樺湪閲嶅悕鏂囦欢灏辨彁绀�  
+                {
+                    Result_Ob = new { result = 0, returnval = "瀛樺湪鍚屽悕鏂囦欢锛�" };
+                    return Result_Ob;
+                }
+                //鍒犻櫎鏁版嵁琛ㄦ暟鎹�
+                ds = oCN.RunProcReturn("delete from MES_AccessoriesList where HSourceBillNo ='" + HBillNo + "' and HFileName='" + filename + "'", "MES_AccessoriesList");
+                if (Directory.Exists(path))
+                {
+                    File.Delete(fileurl);      //鍒犻櫎鎸囧畾鏂囦欢
+                    files.SaveAs(fileurl);
+                    string StrPath = "";
+
+                    string Ret = "";
+                    if (oSystemParameter.ShowBill(ref Ret))
+                    {
+                        if (oSystemParameter.omodel.WMS_CampanyName == "鍑礉濂堢壒")
+                        {
+                            StrPath = "D:/缃戠珯鍙戝竷/LAYUI/Files/QC_FirstPieceCheckBill/" + HBillNo + "/" + filename;
+                        }
+                        else
+                        {
+                            StrPath = "/files/QC_FirstPieceCheckBill/" + HBillNo + "/" + filename;
+                        }
+                    }
+                    if (File.Exists(fileurl))
+                    {
+                        //杩欓噷鍙互鎵ц涓�浜涘叾瀹冪殑鎿嶄綔锛屾瘮濡傛洿鏂版暟鎹簱
+                        //鍐欏叆鏁版嵁琛�
+                        oCN.RunProc("Insert into MES_AccessoriesList (HFileName,HFilePath,HFilePath_Cus,HFileType" +
+                                    ",HLoadMan,HLoadDate,HRemark,HVerNum,HFileSize" +
+                                    ",HFileClsID,HSourceBillNo" +
+                                   ") values('"
+                                    + filename.ToString() + "','" + StrPath.ToString() + "','" + filePath.ToString() + "','" + fileExtension.ToString() + "'" +
+                                    ",'" + HUserName + "',getdate(),'" + HRemark + "','V1','" + filesize +
+                                    "','" + 0 + "','" + HBillNo +
+                                   "') ");
+                    }
+                    else
+                    {
+                        Result_Ob = new { result = 0, returnval = "涓婁紶澶辫触锛佹鏂囦欢涓烘伓鎰忔枃浠�" };
+                    }
+                }
+                else
+                {
+                    Directory.CreateDirectory(fileSavePath); //娣诲姞鏂囦欢澶�
+                    files.SaveAs(fileurl);
+                    string StrPath = "/files/QC_FirstPieceCheckBill/" + HBillNo + "/" + filename;
+                    if (File.Exists(fileurl))
+                    {
+                        //杩欓噷鍙互鎵ц涓�浜涘叾瀹冪殑鎿嶄綔锛屾瘮濡傛洿鏂版暟鎹簱
+                        //鍐欏叆鏁版嵁琛�
+                        oCN.RunProc("Insert into MES_AccessoriesList (HFileName,HFilePath,HFilePath_Cus,HFileType" +
+                                    ",HLoadMan,HLoadDate,HRemark,HVerNum,HFileSize" +
+                                    ",HFileClsID,HSourceBillNo" +
+                                   ") values('"
+                                    + filename.ToString() + "','" + StrPath.ToString() + "','" + filePath.ToString() + "','" + fileExtension.ToString() + "'" +
+                                    ",'" + HUserName + "',getdate(),'" + HRemark + "','V1','" + filesize +
+                                    "','" + 0 + "','" + HBillNo +
+                                   "') ");
+                    }
+                    else
+                    {
+                        Result_Ob = new { result = 0, returnval = "涓婁紶澶辫触锛佹鏂囦欢涓烘伓鎰忔枃浠�" };
+                    }
+                }
+
+            }
+            catch (Exception e)
+            {
+                Result_Ob = new { result = 0, returnval = e.Message };
+            }
+            return Result_Ob;
+        }
+
+        /// <summary>
+        /// 鏍规嵁鍗曟嵁鍙锋煡鎵句笂浼犳枃浠跺垪琛�
+        /// </summary>
+        /// <param name="sWhere"></param>
+        /// <returns></returns>
+        [Route("QC_FirstPieceCheckBill/QC_FirstPieceCheckBillList")]
+        [HttpGet]
+        public object QC_FirstPieceCheckBillList(string HBillNo)
+        {
+            string Ret = "";
+            var url = "";
+            if (oSystemParameter.ShowBill(ref Ret))
+            {
+                if (oSystemParameter.omodel.WMS_CampanyName == "鍑礉濂堢壒")
+                {
+                    url = "D:/缃戠珯鍙戝竷/LAYUI/Files/QC_FirstPieceCheckBill/" + HBillNo + "/";
+                }
+                else
+                {
+                    url = fileip + "/Files/QC_FirstPieceCheckBill/" + HBillNo + "/";
+                }
+            }
+
+            try
+            {
+                ds = oCN.RunProcReturn("select *,'" + url + "'+CAST(HFileName as varchar(200))as url  from MES_AccessoriesList where HSourceBillNo='" + HBillNo + "'", "MES_AccessoriesList");
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = ds.Tables[0];
+                return objJsonResult;
+
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+
+        /// <summary>
+        /// 鏍规嵁ID,鍗曟嵁鍙�,鏂囦欢鍚� 鍒犻櫎鏂囦欢
+        /// </summary>
+        /// <param name="sWhere"></param>
+        /// <returns></returns>
+        [Route("QC_FirstPieceCheckBill/QC_FirstPieceCheckBill_DeleteFilelist")]
+        [HttpGet]
+        public object QC_FirstPieceCheckBill_DeleteFilelist(string HItemID, string HSourceBillNo, string HFileName)
+        {
+            try
+            {
+
+                oCN.RunProc("delete from MES_AccessoriesList where HItemID =" + HItemID);
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鍒犻櫎鎴愬姛锛�";
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+
     }
 }
\ No newline at end of file
diff --git a/WebAPI/Properties/PublishProfiles/FolderProfile2.pubxml.user b/WebAPI/Properties/PublishProfiles/FolderProfile2.pubxml.user
index ee9666b..5bb963a 100644
--- a/WebAPI/Properties/PublishProfiles/FolderProfile2.pubxml.user
+++ b/WebAPI/Properties/PublishProfiles/FolderProfile2.pubxml.user
@@ -5,11 +5,11 @@
 <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
   <PropertyGroup>
     <_PublishTargetUrl>D:\缃戠珯鍙戝竷\鏅轰簯MESWMS\API</_PublishTargetUrl>
-    <History>True|2026-04-08T01:55:10.8896063Z;False|2026-04-08T09:54:59.9647951+08:00;True|2026-04-07T16:03:45.1834044+08:00;False|2026-04-07T16:03:34.6199255+08:00;True|2026-04-06T20:28:16.0131270+08:00;False|2026-04-06T20:27:56.2563065+08:00;True|2026-04-01T11:48:50.5292235+08:00;True|2026-04-01T11:38:01.4330956+08:00;True|2026-04-01T11:10:56.0438060+08:00;False|2026-04-01T11:10:46.7232028+08:00;True|2026-04-01T10:56:38.9083881+08:00;False|2026-04-01T10:56:07.7574345+08:00;True|2026-03-27T14:26:07.9321307+08:00;False|2026-03-27T14:25:22.5010392+08:00;True|2026-03-27T13:35:36.8292396+08:00;False|2026-03-27T13:31:46.3527084+08:00;True|2026-03-24T15:10:02.2143243+08:00;True|2026-03-24T14:44:30.5286229+08:00;True|2026-03-24T10:24:40.8361153+08:00;False|2026-03-24T10:23:42.4160796+08:00;True|2026-03-23T19:05:41.2442007+08:00;False|2026-03-23T19:05:02.6358374+08:00;True|2026-03-23T15:35:21.7391934+08:00;False|2026-03-23T15:33:14.3621736+08:00;True|2026-03-21T11:27:25.8485662+08:00;True|2026-03-21T10:51:07.0416520+08:00;False|2026-03-21T10:50:30.0808809+08:00;True|2026-03-20T15:21:25.3928861+08:00;False|2026-03-20T15:20:18.7323151+08:00;True|2026-03-19T17:53:04.0599612+08:00;False|2026-03-19T17:49:34.2586338+08:00;True|2026-03-18T16:36:39.3459012+08:00;False|2026-03-18T16:33:44.2834015+08:00;True|2026-03-18T09:14:46.8169365+08:00;False|2026-03-18T09:11:29.5956354+08:00;True|2026-03-17T21:02:32.6298438+08:00;False|2026-03-17T21:01:51.7259809+08:00;True|2026-03-17T17:42:17.6095943+08:00;True|2026-03-17T17:22:22.7829010+08:00;True|2026-03-17T17:07:30.0424197+08:00;True|2026-03-17T17:00:25.9496446+08:00;True|2026-03-17T16:57:34.7454437+08:00;False|2026-03-17T16:55:25.6389756+08:00;True|2026-03-16T17:53:15.9567970+08:00;False|2026-03-16T17:52:38.5476276+08:00;True|2026-03-14T17:08:45.9696477+08:00;False|2026-03-14T17:07:54.0759419+08:00;True|2026-03-13T15:56:58.9781226+08:00;True|2026-03-13T14:54:12.0380800+08:00;True|2026-03-13T14:45:10.9471893+08:00;True|2026-03-13T14:34:35.7792308+08:00;True|2026-03-13T13:28:54.0165676+08:00;True|2026-03-13T13:04:26.7960852+08:00;True|2026-03-13T12:32:40.4056776+08:00;True|2026-03-13T12:00:38.5403236+08:00;True|2026-03-13T11:58:15.7212751+08:00;False|2026-03-13T11:56:03.1608711+08:00;True|2026-03-12T12:56:09.1798557+08:00;True|2026-03-12T12:10:38.6579078+08:00;True|2026-03-12T12:00:41.1216693+08:00;True|2026-03-12T10:49:25.6657932+08:00;True|2026-03-12T10:34:42.0132081+08:00;False|2026-03-12T10:34:21.1374537+08:00;True|2026-03-12T09:49:04.2791476+08:00;False|2026-03-12T09:48:32.0226441+08:00;True|2026-03-11T21:37:22.2202127+08:00;False|2026-03-11T21:35:48.4959239+08:00;True|2026-03-11T20:47:52.7636338+08:00;False|2026-03-11T20:47:20.3374534+08:00;True|2026-03-10T09:03:48.7681627+08:00;False|2026-03-10T09:02:36.0583806+08:00;True|2026-03-09T22:57:55.3577018+08:00;False|2026-03-09T22:55:54.8997804+08:00;True|2026-03-09T17:08:10.5420450+08:00;True|2026-03-09T16:57:28.4177680+08:00;True|2026-03-09T16:50:59.8251070+08:00;True|2026-03-09T10:23:55.4999880+08:00;False|2026-03-09T10:23:00.0281682+08:00;True|2026-03-06T09:15:06.5024218+08:00;True|2026-03-06T08:54:38.7087070+08:00;False|2026-03-06T08:53:23.6823346+08:00;True|2026-03-05T17:26:43.5908847+08:00;False|2026-03-05T17:25:48.2804326+08:00;True|2026-03-05T16:04:43.1077406+08:00;False|2026-03-05T16:02:11.7881116+08:00;True|2026-03-03T16:16:26.8635275+08:00;True|2026-03-03T15:54:24.2283621+08:00;True|2026-03-03T12:32:30.4495356+08:00;False|2026-03-03T12:31:06.0560910+08:00;True|2026-03-02T12:18:24.6587456+08:00;True|2026-03-02T09:35:22.6172462+08:00;False|2026-03-02T09:32:04.1416982+08:00;True|2026-02-28T12:04:01.7406133+08:00;True|2026-02-28T08:47:36.7167331+08:00;False|2026-02-28T08:46:49.1748795+08:00;True|2026-02-27T17:21:35.6897064+08:00;True|2026-02-27T17:00:03.2447893+08:00;True|2026-02-27T14:26:49.0714379+08:00;True|2026-02-27T13:57:50.9161682+08:00;False|2026-02-27T13:54:58.3092086+08:00;True|2026-02-26T16:30:22.6331887+08:00;True|2026-02-26T15:56:54.4778359+08:00;False|2026-02-26T15:55:53.2808802+08:00;False|2026-02-26T15:55:27.7501008+08:00;True|2026-02-26T12:42:10.3734658+08:00;True|2026-02-26T12:01:13.4363491+08:00;True|2026-02-26T10:24:02.2555254+08:00;True|2026-02-03T11:56:14.3086755+08:00;True|2026-02-03T11:51:19.6091315+08:00;True|2026-02-03T10:42:35.4774950+08:00;False|2026-02-03T10:40:57.1735351+08:00;True|2026-02-03T09:30:22.5235073+08:00;False|2026-02-03T09:27:21.6917147+08:00;True|2026-02-02T15:31:07.3762944+08:00;True|2026-02-02T14:13:20.5690146+08:00;True|2026-02-02T10:42:22.4804584+08:00;False|2026-02-02T10:41:48.7402434+08:00;True|2026-02-01T17:40:21.0538069+08:00;True|2026-02-01T15:44:12.2393909+08:00;False|2026-02-01T15:40:37.6456544+08:00;True|2026-01-31T12:05:50.6946479+08:00;False|2026-01-31T12:04:44.5273342+08:00;True|2026-01-29T17:14:07.3795568+08:00;True|2026-01-29T17:11:48.4286289+08:00;True|2026-01-29T16:10:42.7141082+08:00;True|2026-01-29T14:41:38.0583611+08:00;True|2026-01-29T14:36:18.1975177+08:00;True|2026-01-29T14:34:43.7423264+08:00;True|2026-01-29T14:09:16.2701844+08:00;True|2026-01-29T13:17:37.0708838+08:00;True|2026-01-29T10:21:51.3074443+08:00;False|2026-01-29T10:20:12.1418198+08:00;True|2026-01-28T13:52:59.2210650+08:00;True|2026-01-28T10:34:06.8152564+08:00;False|2026-01-28T10:32:51.4478083+08:00;True|2026-01-27T12:19:58.2090999+08:00;True|2026-01-27T12:18:40.9255150+08:00;True|2026-01-27T12:10:45.0784359+08:00;True|2026-01-27T11:45:58.2218602+08:00;True|2026-01-27T08:54:11.2473398+08:00;False|2026-01-27T08:50:52.3900508+08:00;True|2026-01-25T16:51:10.8469862+08:00;True|2026-01-25T16:15:55.3063785+08:00;False|2026-01-25T16:13:47.1609576+08:00;False|2026-01-25T16:10:27.3797138+08:00;True|2026-01-22T19:26:11.1120981+08:00;False|2026-01-22T19:21:59.7591077+08:00;True|2026-01-21T20:10:38.2264542+08:00;True|2026-01-21T20:05:52.6769930+08:00;False|2026-01-21T20:04:52.2864808+08:00;True|2026-01-20T10:09:22.6558754+08:00;True|2026-01-20T09:43:16.9535139+08:00;False|2026-01-20T09:40:14.5080297+08:00;True|2026-01-19T17:23:36.9963060+08:00;True|2026-01-19T17:18:41.7602029+08:00;True|2026-01-19T17:05:35.1663057+08:00;True|2026-01-19T16:49:48.9497194+08:00;True|2026-01-19T12:35:09.4063486+08:00;False|2026-01-19T12:33:25.3260660+08:00;True|2026-01-17T20:21:42.3497625+08:00;True|2026-01-17T20:17:40.8631870+08:00;True|2026-01-17T20:13:16.6618986+08:00;False|2026-01-17T20:10:39.7099356+08:00;False|2026-01-17T20:10:01.5198461+08:00;False|2026-01-17T20:09:07.5632818+08:00;True|2026-01-17T20:06:07.7085249+08:00;True|2026-01-17T17:50:38.6295526+08:00;False|2026-01-17T17:48:59.9531552+08:00;True|2026-01-16T16:22:22.3525933+08:00;True|2026-01-16T14:14:39.4187185+08:00;False|2026-01-16T14:10:47.6350779+08:00;True|2026-01-15T17:33:04.8867687+08:00;True|2026-01-15T17:13:07.4827420+08:00;False|2026-01-15T17:11:32.8298249+08:00;True|2026-01-15T16:34:04.8984638+08:00;True|2026-01-15T14:12:39.3677563+08:00;False|2026-01-15T14:10:25.0842475+08:00;True|2026-01-14T19:47:01.2486856+08:00;False|2026-01-14T19:46:15.5380497+08:00;True|2026-01-14T15:49:22.6528911+08:00;True|2026-01-14T10:24:06.5942562+08:00;False|2026-01-14T10:22:32.4884475+08:00;False|2026-01-12T09:27:01.9297704+08:00;True|2026-01-11T14:27:58.9407325+08:00;False|2026-01-11T14:26:47.1324504+08:00;True|2026-01-11T13:54:38.7697615+08:00;True|2026-01-11T12:39:56.1396008+08:00;False|2026-01-11T12:37:59.5059421+08:00;True|2026-01-09T15:34:00.7959753+08:00;False|2026-01-09T15:32:33.3223847+08:00;True|2026-01-09T10:27:04.4418230+08:00;False|2026-01-09T10:24:55.6104648+08:00;True|2026-01-08T18:05:09.8950096+08:00;False|2026-01-08T18:03:49.6828377+08:00;True|2026-01-08T15:53:31.8458993+08:00;True|2026-01-08T15:43:35.4452984+08:00;True|2026-01-08T15:16:09.2797564+08:00;True|2026-01-08T15:09:12.1761272+08:00;False|2026-01-08T15:08:31.8053125+08:00;True|2026-01-08T12:28:32.3839432+08:00;False|2026-01-08T12:28:06.4930402+08:00;False|2026-01-06T13:05:41.4537127+08:00;True|2026-01-04T11:27:03.6003486+08:00;True|2026-01-04T11:16:09.0856233+08:00;True|2026-01-04T11:09:33.9721372+08:00;True|2026-01-04T10:59:57.5111892+08:00;False|2026-01-04T10:57:57.5312203+08:00;True|2025-12-30T14:23:14.0889784+08:00;True|2025-12-29T09:12:05.7081903+08:00;False|2025-12-29T09:11:27.9082848+08:00;True|2025-07-01T16:53:57.8492332+08:00;True|2025-07-01T16:14:28.8419744+08:00;True|2025-07-01T15:15:43.3121091+08:00;True|2025-07-01T14:48:00.3454856+08:00;True|2025-07-01T09:17:46.2541717+08:00;False|2025-07-01T09:17:07.0648196+08:00;True|2025-06-23T14:30:28.6691264+08:00;False|2025-06-23T14:27:45.6002040+08:00;True|2025-06-23T11:02:08.3020700+08:00;True|2025-06-23T10:47:44.4654541+08:00;True|2025-06-23T09:46:24.9049910+08:00;False|2025-06-23T09:45:40.5195919+08:00;True|2025-06-20T14:33:10.9210583+08:00;True|2025-06-20T13:22:54.5321865+08:00;False|2025-06-20T13:21:30.8643897+08:00;True|2025-06-20T08:36:32.6695266+08:00;False|2025-06-20T08:35:57.8274069+08:00;True|2025-06-19T08:14:35.0623669+08:00;False|2025-06-19T08:12:57.2451557+08:00;True|2025-06-18T16:56:03.4555368+08:00;True|2025-06-18T16:42:43.2441845+08:00;False|2025-06-18T16:42:02.6907205+08:00;True|2025-06-16T16:13:03.2956026+08:00;False|2025-06-16T16:12:23.8438917+08:00;True|2025-06-16T15:21:32.7370852+08:00;True|2025-06-16T15:08:57.7166003+08:00;True|2025-06-16T14:02:18.4224630+08:00;True|2025-06-16T11:00:03.6375429+08:00;False|2025-06-16T10:59:26.0956296+08:00;True|2025-06-09T16:45:52.0865612+08:00;True|2025-06-09T16:38:47.2182194+08:00;True|2025-06-09T16:17:50.9170601+08:00;False|2025-06-09T16:17:43.0333396+08:00;True|2025-06-09T15:25:17.0429161+08:00;True|2025-06-09T15:00:15.0058791+08:00;True|2025-06-09T14:50:02.1370115+08:00;True|2025-06-09T14:38:10.9037045+08:00;True|2025-06-09T14:34:53.2826267+08:00;True|2025-06-09T14:07:24.5341951+08:00;True|2025-06-09T13:39:17.5042542+08:00;True|2025-06-09T09:30:31.8197114+08:00;True|2025-01-10T13:10:47.2046185+08:00;True|2025-01-10T11:11:49.4016910+08:00;True|2025-01-10T10:59:12.3481721+08:00;False|2025-01-10T10:58:24.5033898+08:00;True|2025-01-04T14:35:42.2792864+08:00;</History>
+    <History>True|2026-05-06T07:47:46.3255643Z;True|2026-05-06T14:10:15.7955768+08:00;True|2026-05-06T13:28:05.4583623+08:00;True|2026-05-06T11:19:55.3226983+08:00;True|2026-05-06T11:06:19.3185379+08:00;True|2026-05-06T10:59:23.7931807+08:00;True|2026-05-06T10:04:30.6570500+08:00;True|2026-05-06T09:18:32.7000782+08:00;False|2026-05-06T09:17:43.1625773+08:00;True|2026-04-08T09:55:10.8896063+08:00;False|2026-04-08T09:54:59.9647951+08:00;True|2026-04-07T16:03:45.1834044+08:00;False|2026-04-07T16:03:34.6199255+08:00;True|2026-04-06T20:28:16.0131270+08:00;False|2026-04-06T20:27:56.2563065+08:00;True|2026-04-01T11:48:50.5292235+08:00;True|2026-04-01T11:38:01.4330956+08:00;True|2026-04-01T11:10:56.0438060+08:00;False|2026-04-01T11:10:46.7232028+08:00;True|2026-04-01T10:56:38.9083881+08:00;False|2026-04-01T10:56:07.7574345+08:00;True|2026-03-27T14:26:07.9321307+08:00;False|2026-03-27T14:25:22.5010392+08:00;True|2026-03-27T13:35:36.8292396+08:00;False|2026-03-27T13:31:46.3527084+08:00;True|2026-03-24T15:10:02.2143243+08:00;True|2026-03-24T14:44:30.5286229+08:00;True|2026-03-24T10:24:40.8361153+08:00;False|2026-03-24T10:23:42.4160796+08:00;True|2026-03-23T19:05:41.2442007+08:00;False|2026-03-23T19:05:02.6358374+08:00;True|2026-03-23T15:35:21.7391934+08:00;False|2026-03-23T15:33:14.3621736+08:00;True|2026-03-21T11:27:25.8485662+08:00;True|2026-03-21T10:51:07.0416520+08:00;False|2026-03-21T10:50:30.0808809+08:00;True|2026-03-20T15:21:25.3928861+08:00;False|2026-03-20T15:20:18.7323151+08:00;True|2026-03-19T17:53:04.0599612+08:00;False|2026-03-19T17:49:34.2586338+08:00;True|2026-03-18T16:36:39.3459012+08:00;False|2026-03-18T16:33:44.2834015+08:00;True|2026-03-18T09:14:46.8169365+08:00;False|2026-03-18T09:11:29.5956354+08:00;True|2026-03-17T21:02:32.6298438+08:00;False|2026-03-17T21:01:51.7259809+08:00;True|2026-03-17T17:42:17.6095943+08:00;True|2026-03-17T17:22:22.7829010+08:00;True|2026-03-17T17:07:30.0424197+08:00;True|2026-03-17T17:00:25.9496446+08:00;True|2026-03-17T16:57:34.7454437+08:00;False|2026-03-17T16:55:25.6389756+08:00;True|2026-03-16T17:53:15.9567970+08:00;False|2026-03-16T17:52:38.5476276+08:00;True|2026-03-14T17:08:45.9696477+08:00;False|2026-03-14T17:07:54.0759419+08:00;True|2026-03-13T15:56:58.9781226+08:00;True|2026-03-13T14:54:12.0380800+08:00;True|2026-03-13T14:45:10.9471893+08:00;True|2026-03-13T14:34:35.7792308+08:00;True|2026-03-13T13:28:54.0165676+08:00;True|2026-03-13T13:04:26.7960852+08:00;True|2026-03-13T12:32:40.4056776+08:00;True|2026-03-13T12:00:38.5403236+08:00;True|2026-03-13T11:58:15.7212751+08:00;False|2026-03-13T11:56:03.1608711+08:00;True|2026-03-12T12:56:09.1798557+08:00;True|2026-03-12T12:10:38.6579078+08:00;True|2026-03-12T12:00:41.1216693+08:00;True|2026-03-12T10:49:25.6657932+08:00;True|2026-03-12T10:34:42.0132081+08:00;False|2026-03-12T10:34:21.1374537+08:00;True|2026-03-12T09:49:04.2791476+08:00;False|2026-03-12T09:48:32.0226441+08:00;True|2026-03-11T21:37:22.2202127+08:00;False|2026-03-11T21:35:48.4959239+08:00;True|2026-03-11T20:47:52.7636338+08:00;False|2026-03-11T20:47:20.3374534+08:00;True|2026-03-10T09:03:48.7681627+08:00;False|2026-03-10T09:02:36.0583806+08:00;True|2026-03-09T22:57:55.3577018+08:00;False|2026-03-09T22:55:54.8997804+08:00;True|2026-03-09T17:08:10.5420450+08:00;True|2026-03-09T16:57:28.4177680+08:00;True|2026-03-09T16:50:59.8251070+08:00;True|2026-03-09T10:23:55.4999880+08:00;False|2026-03-09T10:23:00.0281682+08:00;True|2026-03-06T09:15:06.5024218+08:00;True|2026-03-06T08:54:38.7087070+08:00;False|2026-03-06T08:53:23.6823346+08:00;True|2026-03-05T17:26:43.5908847+08:00;False|2026-03-05T17:25:48.2804326+08:00;True|2026-03-05T16:04:43.1077406+08:00;False|2026-03-05T16:02:11.7881116+08:00;True|2026-03-03T16:16:26.8635275+08:00;True|2026-03-03T15:54:24.2283621+08:00;True|2026-03-03T12:32:30.4495356+08:00;False|2026-03-03T12:31:06.0560910+08:00;True|2026-03-02T12:18:24.6587456+08:00;True|2026-03-02T09:35:22.6172462+08:00;False|2026-03-02T09:32:04.1416982+08:00;True|2026-02-28T12:04:01.7406133+08:00;True|2026-02-28T08:47:36.7167331+08:00;False|2026-02-28T08:46:49.1748795+08:00;True|2026-02-27T17:21:35.6897064+08:00;True|2026-02-27T17:00:03.2447893+08:00;True|2026-02-27T14:26:49.0714379+08:00;True|2026-02-27T13:57:50.9161682+08:00;False|2026-02-27T13:54:58.3092086+08:00;True|2026-02-26T16:30:22.6331887+08:00;True|2026-02-26T15:56:54.4778359+08:00;False|2026-02-26T15:55:53.2808802+08:00;False|2026-02-26T15:55:27.7501008+08:00;True|2026-02-26T12:42:10.3734658+08:00;True|2026-02-26T12:01:13.4363491+08:00;True|2026-02-26T10:24:02.2555254+08:00;True|2026-02-03T11:56:14.3086755+08:00;True|2026-02-03T11:51:19.6091315+08:00;True|2026-02-03T10:42:35.4774950+08:00;False|2026-02-03T10:40:57.1735351+08:00;True|2026-02-03T09:30:22.5235073+08:00;False|2026-02-03T09:27:21.6917147+08:00;True|2026-02-02T15:31:07.3762944+08:00;True|2026-02-02T14:13:20.5690146+08:00;True|2026-02-02T10:42:22.4804584+08:00;False|2026-02-02T10:41:48.7402434+08:00;True|2026-02-01T17:40:21.0538069+08:00;True|2026-02-01T15:44:12.2393909+08:00;False|2026-02-01T15:40:37.6456544+08:00;True|2026-01-31T12:05:50.6946479+08:00;False|2026-01-31T12:04:44.5273342+08:00;True|2026-01-29T17:14:07.3795568+08:00;True|2026-01-29T17:11:48.4286289+08:00;True|2026-01-29T16:10:42.7141082+08:00;True|2026-01-29T14:41:38.0583611+08:00;True|2026-01-29T14:36:18.1975177+08:00;True|2026-01-29T14:34:43.7423264+08:00;True|2026-01-29T14:09:16.2701844+08:00;True|2026-01-29T13:17:37.0708838+08:00;True|2026-01-29T10:21:51.3074443+08:00;False|2026-01-29T10:20:12.1418198+08:00;True|2026-01-28T13:52:59.2210650+08:00;True|2026-01-28T10:34:06.8152564+08:00;False|2026-01-28T10:32:51.4478083+08:00;True|2026-01-27T12:19:58.2090999+08:00;True|2026-01-27T12:18:40.9255150+08:00;True|2026-01-27T12:10:45.0784359+08:00;True|2026-01-27T11:45:58.2218602+08:00;True|2026-01-27T08:54:11.2473398+08:00;False|2026-01-27T08:50:52.3900508+08:00;True|2026-01-25T16:51:10.8469862+08:00;True|2026-01-25T16:15:55.3063785+08:00;False|2026-01-25T16:13:47.1609576+08:00;False|2026-01-25T16:10:27.3797138+08:00;True|2026-01-22T19:26:11.1120981+08:00;False|2026-01-22T19:21:59.7591077+08:00;True|2026-01-21T20:10:38.2264542+08:00;True|2026-01-21T20:05:52.6769930+08:00;False|2026-01-21T20:04:52.2864808+08:00;True|2026-01-20T10:09:22.6558754+08:00;True|2026-01-20T09:43:16.9535139+08:00;False|2026-01-20T09:40:14.5080297+08:00;True|2026-01-19T17:23:36.9963060+08:00;True|2026-01-19T17:18:41.7602029+08:00;True|2026-01-19T17:05:35.1663057+08:00;True|2026-01-19T16:49:48.9497194+08:00;True|2026-01-19T12:35:09.4063486+08:00;False|2026-01-19T12:33:25.3260660+08:00;True|2026-01-17T20:21:42.3497625+08:00;True|2026-01-17T20:17:40.8631870+08:00;True|2026-01-17T20:13:16.6618986+08:00;False|2026-01-17T20:10:39.7099356+08:00;False|2026-01-17T20:10:01.5198461+08:00;False|2026-01-17T20:09:07.5632818+08:00;True|2026-01-17T20:06:07.7085249+08:00;True|2026-01-17T17:50:38.6295526+08:00;False|2026-01-17T17:48:59.9531552+08:00;True|2026-01-16T16:22:22.3525933+08:00;True|2026-01-16T14:14:39.4187185+08:00;False|2026-01-16T14:10:47.6350779+08:00;True|2026-01-15T17:33:04.8867687+08:00;True|2026-01-15T17:13:07.4827420+08:00;False|2026-01-15T17:11:32.8298249+08:00;True|2026-01-15T16:34:04.8984638+08:00;True|2026-01-15T14:12:39.3677563+08:00;False|2026-01-15T14:10:25.0842475+08:00;True|2026-01-14T19:47:01.2486856+08:00;False|2026-01-14T19:46:15.5380497+08:00;True|2026-01-14T15:49:22.6528911+08:00;True|2026-01-14T10:24:06.5942562+08:00;False|2026-01-14T10:22:32.4884475+08:00;False|2026-01-12T09:27:01.9297704+08:00;True|2026-01-11T14:27:58.9407325+08:00;False|2026-01-11T14:26:47.1324504+08:00;True|2026-01-11T13:54:38.7697615+08:00;True|2026-01-11T12:39:56.1396008+08:00;False|2026-01-11T12:37:59.5059421+08:00;True|2026-01-09T15:34:00.7959753+08:00;False|2026-01-09T15:32:33.3223847+08:00;True|2026-01-09T10:27:04.4418230+08:00;False|2026-01-09T10:24:55.6104648+08:00;True|2026-01-08T18:05:09.8950096+08:00;False|2026-01-08T18:03:49.6828377+08:00;True|2026-01-08T15:53:31.8458993+08:00;True|2026-01-08T15:43:35.4452984+08:00;True|2026-01-08T15:16:09.2797564+08:00;True|2026-01-08T15:09:12.1761272+08:00;False|2026-01-08T15:08:31.8053125+08:00;True|2026-01-08T12:28:32.3839432+08:00;False|2026-01-08T12:28:06.4930402+08:00;False|2026-01-06T13:05:41.4537127+08:00;True|2026-01-04T11:27:03.6003486+08:00;True|2026-01-04T11:16:09.0856233+08:00;True|2026-01-04T11:09:33.9721372+08:00;True|2026-01-04T10:59:57.5111892+08:00;False|2026-01-04T10:57:57.5312203+08:00;True|2025-12-30T14:23:14.0889784+08:00;True|2025-12-29T09:12:05.7081903+08:00;False|2025-12-29T09:11:27.9082848+08:00;True|2025-07-01T16:53:57.8492332+08:00;True|2025-07-01T16:14:28.8419744+08:00;True|2025-07-01T15:15:43.3121091+08:00;True|2025-07-01T14:48:00.3454856+08:00;True|2025-07-01T09:17:46.2541717+08:00;False|2025-07-01T09:17:07.0648196+08:00;True|2025-06-23T14:30:28.6691264+08:00;False|2025-06-23T14:27:45.6002040+08:00;True|2025-06-23T11:02:08.3020700+08:00;True|2025-06-23T10:47:44.4654541+08:00;True|2025-06-23T09:46:24.9049910+08:00;False|2025-06-23T09:45:40.5195919+08:00;True|2025-06-20T14:33:10.9210583+08:00;True|2025-06-20T13:22:54.5321865+08:00;False|2025-06-20T13:21:30.8643897+08:00;True|2025-06-20T08:36:32.6695266+08:00;False|2025-06-20T08:35:57.8274069+08:00;True|2025-06-19T08:14:35.0623669+08:00;False|2025-06-19T08:12:57.2451557+08:00;True|2025-06-18T16:56:03.4555368+08:00;True|2025-06-18T16:42:43.2441845+08:00;False|2025-06-18T16:42:02.6907205+08:00;True|2025-06-16T16:13:03.2956026+08:00;False|2025-06-16T16:12:23.8438917+08:00;True|2025-06-16T15:21:32.7370852+08:00;True|2025-06-16T15:08:57.7166003+08:00;True|2025-06-16T14:02:18.4224630+08:00;True|2025-06-16T11:00:03.6375429+08:00;False|2025-06-16T10:59:26.0956296+08:00;True|2025-06-09T16:45:52.0865612+08:00;True|2025-06-09T16:38:47.2182194+08:00;True|2025-06-09T16:17:50.9170601+08:00;False|2025-06-09T16:17:43.0333396+08:00;True|2025-06-09T15:25:17.0429161+08:00;True|2025-06-09T15:00:15.0058791+08:00;True|2025-06-09T14:50:02.1370115+08:00;True|2025-06-09T14:38:10.9037045+08:00;True|2025-06-09T14:34:53.2826267+08:00;True|2025-06-09T14:07:24.5341951+08:00;True|2025-06-09T13:39:17.5042542+08:00;True|2025-06-09T09:30:31.8197114+08:00;True|2025-01-10T13:10:47.2046185+08:00;True|2025-01-10T11:11:49.4016910+08:00;True|2025-01-10T10:59:12.3481721+08:00;False|2025-01-10T10:58:24.5033898+08:00;True|2025-01-04T14:35:42.2792864+08:00;</History>
   </PropertyGroup>
   <ItemGroup>
     <File Include="apiapp.json">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="bin/AlibabaCloud.EndpointUtil.dll">
       <publishTime>04/07/2020 16:33:48</publishTime>
@@ -45,40 +45,40 @@
       <publishTime>02/22/2013 16:43:40</publishTime>
     </File>
     <File Include="bin/BLL.dll">
-      <publishTime>04/08/2026 09:54:35</publishTime>
+      <publishTime>05/06/2026 09:18:18</publishTime>
     </File>
     <File Include="bin/BLL.pdb">
-      <publishTime>04/08/2026 09:54:35</publishTime>
+      <publishTime>05/06/2026 09:18:18</publishTime>
     </File>
     <File Include="bin/BouncyCastle.Crypto.dll">
       <publishTime>12/18/2020 05:32:28</publishTime>
     </File>
     <File Include="bin/DAL.dll">
-      <publishTime>04/08/2026 09:54:33</publishTime>
+      <publishTime>05/06/2026 09:18:14</publishTime>
     </File>
     <File Include="bin/DAL.pdb">
-      <publishTime>04/08/2026 09:54:33</publishTime>
+      <publishTime>05/06/2026 09:18:14</publishTime>
     </File>
     <File Include="bin/Dapper.dll">
       <publishTime>07/22/2016 22:52:40</publishTime>
     </File>
     <File Include="bin/DBUtility.dll">
-      <publishTime>04/08/2026 09:54:27</publishTime>
+      <publishTime>05/06/2026 09:18:10</publishTime>
     </File>
     <File Include="bin/DBUtility.pdb">
-      <publishTime>04/08/2026 09:54:27</publishTime>
+      <publishTime>05/06/2026 09:18:10</publishTime>
     </File>
     <File Include="bin/Fleck.dll">
       <publishTime>04/22/2021 11:48:12</publishTime>
     </File>
     <File Include="bin/GetuiServerApiSDK.dll">
-      <publishTime>01/27/2026 10:11:35</publishTime>
+      <publishTime>01/19/2026 18:29:10</publishTime>
     </File>
     <File Include="bin/GetuiServerApiSDK.dll.config">
-      <publishTime>01/27/2026 10:11:35</publishTime>
+      <publishTime>01/19/2026 18:29:10</publishTime>
     </File>
     <File Include="bin/Google.ProtocolBuffers.dll">
-      <publishTime>01/27/2026 10:11:35</publishTime>
+      <publishTime>01/19/2026 18:29:10</publishTime>
     </File>
     <File Include="bin/Grpc.Core.Api.dll">
       <publishTime>03/22/2022 13:17:26</publishTime>
@@ -105,7 +105,7 @@
       <publishTime>05/09/2021 01:08:30</publishTime>
     </File>
     <File Include="bin/Kingdee.BOS.WebApi.Client.dll">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="bin/libgrpc_csharp_ext.x64.dylib">
       <publishTime>03/19/2022 07:38:44</publishTime>
@@ -150,13 +150,13 @@
       <publishTime>07/25/2012 19:48:56</publishTime>
     </File>
     <File Include="bin/Model.dll">
-      <publishTime>04/08/2026 09:54:28</publishTime>
+      <publishTime>05/06/2026 09:18:13</publishTime>
     </File>
     <File Include="bin/Model.pdb">
-      <publishTime>04/08/2026 09:54:28</publishTime>
+      <publishTime>05/06/2026 09:18:13</publishTime>
     </File>
     <File Include="bin/Models/ClsSc_MouldScrapOutBillMain.cs">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="bin/Newtonsoft.Json.dll">
       <publishTime>03/08/2023 15:09:56</publishTime>
@@ -189,34 +189,34 @@
       <publishTime>11/13/2012 20:19:34</publishTime>
     </File>
     <File Include="bin/Pub_Class.dll">
-      <publishTime>04/08/2026 09:54:22</publishTime>
+      <publishTime>05/06/2026 09:18:06</publishTime>
     </File>
     <File Include="bin/Pub_Class.pdb">
-      <publishTime>04/08/2026 09:54:22</publishTime>
+      <publishTime>05/06/2026 09:18:06</publishTime>
     </File>
     <File Include="bin/Pub_Control.dll">
-      <publishTime>04/08/2026 09:54:24</publishTime>
+      <publishTime>05/06/2026 09:18:08</publishTime>
     </File>
     <File Include="bin/Pub_Control.pdb">
-      <publishTime>04/08/2026 09:54:24</publishTime>
+      <publishTime>05/06/2026 09:18:08</publishTime>
     </File>
     <File Include="bin/RestSharp.dll">
       <publishTime>08/31/2012 06:22:50</publishTime>
     </File>
     <File Include="bin/SQLHelper.dll">
-      <publishTime>04/08/2026 09:54:26</publishTime>
+      <publishTime>05/06/2026 09:18:08</publishTime>
     </File>
     <File Include="bin/SQLHelper.pdb">
-      <publishTime>04/08/2026 09:54:26</publishTime>
+      <publishTime>05/06/2026 09:18:08</publishTime>
     </File>
     <File Include="bin/Swashbuckle.Core.dll">
       <publishTime>02/16/2015 01:57:08</publishTime>
     </File>
     <File Include="bin/SyntacticSugar.dll">
-      <publishTime>04/08/2026 09:54:21</publishTime>
+      <publishTime>04/30/2026 15:12:34</publishTime>
     </File>
     <File Include="bin/SyntacticSugar.pdb">
-      <publishTime>04/08/2026 09:54:21</publishTime>
+      <publishTime>04/30/2026 15:12:34</publishTime>
     </File>
     <File Include="bin/System.Buffers.dll">
       <publishTime>07/19/2017 18:01:28</publishTime>
@@ -297,7 +297,7 @@
       <publishTime>01/28/2015 12:03:16</publishTime>
     </File>
     <File Include="bin/System.Web.Http.WebHost.dll">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="bin/System.Web.Mvc.dll">
       <publishTime>01/28/2015 12:02:18</publishTime>
@@ -330,19 +330,19 @@
       <publishTime>05/09/2023 10:43:40</publishTime>
     </File>
     <File Include="bin/TopSdk.dll">
-      <publishTime>04/08/2026 09:54:25</publishTime>
+      <publishTime>04/30/2026 15:15:27</publishTime>
     </File>
     <File Include="bin/TopSdk.pdb">
-      <publishTime>04/08/2026 09:54:25</publishTime>
+      <publishTime>04/30/2026 15:15:34</publishTime>
     </File>
     <File Include="bin/WebActivatorEx.dll">
       <publishTime>11/24/2014 19:18:48</publishTime>
     </File>
     <File Include="bin/WebAPI.dll">
-      <publishTime>04/08/2026 09:54:48</publishTime>
+      <publishTime>05/06/2026 15:47:42</publishTime>
     </File>
     <File Include="bin/WebAPI.pdb">
-      <publishTime>04/08/2026 09:54:48</publishTime>
+      <publishTime>05/06/2026 15:47:42</publishTime>
     </File>
     <File Include="bin/WebAPI.XmlSerializers.dll">
       <publishTime>07/01/2025 16:53:56</publishTime>
@@ -372,61 +372,61 @@
       <publishTime>11/29/2018 21:26:30</publishTime>
     </File>
     <File Include="Config/kdapi.config">
-      <publishTime>04/06/2023 15:57:01</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="Content/bootstrap.css">
-      <publishTime>04/06/2023 15:57:01</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="Content/bootstrap.min.css">
-      <publishTime>04/06/2023 15:57:01</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="Content/Site.css">
-      <publishTime>04/06/2023 15:57:01</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="DLL/BLL.dll">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="DLL/DAL.dll">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="DLL/DBUtility.dll">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="DLL/Interop.grsvr6Lib.dll">
-      <publishTime>01/04/2026 18:33:49</publishTime>
+      <publishTime>12/16/2025 16:29:36</publishTime>
     </File>
     <File Include="DLL/Kingdee.BOS.WebApi.Client.dll">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="DLL/Model.dll">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="DLL/Newtonsoft.Json.Net35.dll">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="DLL/Pub_Class.dll">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="DLL/Pub_Control.dll">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="DLL/SQLHelper.dll">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="fonts/glyphicons-halflings-regular.eot">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="fonts/glyphicons-halflings-regular.svg">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="fonts/glyphicons-halflings-regular.ttf">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="fonts/glyphicons-halflings-regular.woff">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="Global.asax">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="grpc_csharp_ext.x64.dll">
       <publishTime>03/22/2022 13:17:22</publishTime>
@@ -435,7 +435,7 @@
       <publishTime>03/22/2022 13:17:22</publishTime>
     </File>
     <File Include="Index.html">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="libgrpc_csharp_ext.x64.dylib">
       <publishTime>03/19/2022 07:38:44</publishTime>
@@ -444,133 +444,139 @@
       <publishTime>03/19/2022 07:38:42</publishTime>
     </File>
     <File Include="libman.json">
-      <publishTime>07/12/2023 08:14:21</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="Metadata/deploymentTemplates/apiappconfig.azureresource.json">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="packages.config">
-      <publishTime>03/24/2026 21:43:36</publishTime>
+      <publishTime>03/25/2026 10:40:27</publishTime>
     </File>
     <File Include="Properties/PublishProfiles/JFAPI.pubxml.user">
-      <publishTime>12/08/2025 16:05:47</publishTime>
+      <publishTime>12/10/2025 17:08:59</publishTime>
     </File>
     <File Include="Scripts/jquery.signalR-2.2.2.js">
-      <publishTime>03/02/2026 10:25:32</publishTime>
+      <publishTime>01/28/2026 14:08:07</publishTime>
     </File>
     <File Include="Scripts/jquery.signalR-2.2.2.min.js">
-      <publishTime>03/02/2026 10:25:32</publishTime>
+      <publishTime>01/28/2026 14:08:07</publishTime>
     </File>
     <File Include="Template/barCodeTemplateStorage.json">
-      <publishTime>09/01/2025 08:23:20</publishTime>
+      <publishTime>09/05/2025 16:16:48</publishTime>
     </File>
     <File Include="Utility/Barcode.ashx">
-      <publishTime>01/04/2026 18:33:49</publishTime>
+      <publishTime>12/16/2025 16:29:36</publishTime>
     </File>
     <File Include="Views/Scripts/bootstrap.js">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="Views/Scripts/bootstrap.min.js">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="Views/Scripts/jquery-1.10.2.js">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="Views/Scripts/jquery-1.10.2.min.js">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="Views/Scripts/jquery-1.10.2.min.map">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="Views/Scripts/jquery.validate.js">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="Views/Scripts/jquery.validate.min.js">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="Views/Scripts/jquery.validate.unobtrusive.js">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="Views/Scripts/jquery.validate.unobtrusive.min.js">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="Views/Scripts/modernizr-2.6.2.js">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="Views/Shared/Error.cshtml">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="Views/Shared/_Layout.cshtml">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="Views/web.config">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="Views/_ViewStart.cshtml">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>05/23/2025 10:00:25</publishTime>
     </File>
     <File Include="Web References/WebS/ClsCLD_Customer_Model.datasource">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>08/21/2025 15:39:36</publishTime>
     </File>
     <File Include="Web References/WebS/ClsCLD_Department_Model.datasource">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>08/21/2025 15:39:36</publishTime>
     </File>
     <File Include="Web References/WebS/ClsCLD_Employee_Model.datasource">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>08/21/2025 15:39:37</publishTime>
     </File>
     <File Include="Web References/WebS/ClsCLD_StockPlace_Model.datasource">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>08/21/2025 15:39:36</publishTime>
     </File>
     <File Include="Web References/WebS/ClsCLD_Supplier_Model.datasource">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>08/21/2025 15:39:36</publishTime>
     </File>
     <File Include="Web References/WebS/ClsCLD_Warehouse_Model.datasource">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>08/21/2025 15:39:36</publishTime>
     </File>
     <File Include="Web References/WebS/ClsGy_BadReason_Model.datasource">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>08/21/2025 15:39:37</publishTime>
     </File>
     <File Include="Web References/WebS/ClsGy_BarCodeBill_WMS_Model.datasource">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>08/21/2025 15:39:37</publishTime>
     </File>
     <File Include="Web References/WebS/ClsGy_BarCodeBill_WMS_Model_View.datasource">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>08/21/2025 15:39:37</publishTime>
     </File>
     <File Include="Web References/WebS/ClsGy_Customer_Model.datasource">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>08/21/2025 15:39:37</publishTime>
     </File>
     <File Include="Web References/WebS/ClsGy_Department_Model.datasource">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>08/21/2025 15:39:37</publishTime>
     </File>
     <File Include="Web References/WebS/ClsGy_Employee_Model.datasource">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>08/21/2025 15:39:37</publishTime>
     </File>
     <File Include="Web References/WebS/ClsGy_Group_Model.datasource">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>08/21/2025 15:39:37</publishTime>
     </File>
     <File Include="Web References/WebS/ClsGy_Item30JiTai_Model.datasource">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>08/21/2025 15:39:37</publishTime>
     </File>
     <File Include="Web References/WebS/ClsGy_Source_Model.datasource">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>08/21/2025 15:39:37</publishTime>
     </File>
     <File Include="Web References/WebS/ClsGy_StockPlace_Model.datasource">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>08/21/2025 15:39:37</publishTime>
     </File>
     <File Include="Web References/WebS/ClsGy_Supplier_Model.datasource">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>08/21/2025 15:39:37</publishTime>
     </File>
     <File Include="Web References/WebS/ClsGy_Warehouse_Model.datasource">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>08/21/2025 15:39:37</publishTime>
     </File>
     <File Include="Web References/WebS/ClsKf_ICStockBill_Mould.datasource">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>08/21/2025 15:39:36</publishTime>
     </File>
     <File Include="Web References/WebS/ClsKf_ICStockBill_WMS.datasource">
-      <publishTime>04/06/2023 15:57:02</publishTime>
+      <publishTime>08/21/2025 15:39:37</publishTime>
     </File>
     <File Include="Web.config">
-      <publishTime>04/08/2026 09:55:08</publishTime>
+      <publishTime>05/06/2026 09:18:31</publishTime>
+    </File>
+    <File Include="ZPLTemplate/鐗╂枡鏉$爜 100脳60.zpl">
+      <publishTime>04/30/2026 15:08:32</publishTime>
+    </File>
+    <File Include="ZPLTemplate/鐗╂枡鏉$爜 80脳60.zpl">
+      <publishTime>04/30/2026 15:08:32</publishTime>
     </File>
   </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/WebAPI/WebAPI.csproj.user b/WebAPI/WebAPI.csproj.user
index 59a1426..79d57d0 100644
--- a/WebAPI/WebAPI.csproj.user
+++ b/WebAPI/WebAPI.csproj.user
@@ -2,7 +2,7 @@
 <Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
   <PropertyGroup>
     <LastActiveSolutionConfig>Debug|x86</LastActiveSolutionConfig>
-    <LastActiveSolutionConfig>Debug|x86</LastActiveSolutionConfig>
+    <LastActiveSolutionConfig>Debug|Any CPU</LastActiveSolutionConfig>
     <UseIISExpress>true</UseIISExpress>
     <Use64BitIISExpress />
     <IISExpressSSLPort />

--
Gitblit v1.9.1