From cf46a6e4beb7e83af331a28065c96077fa2f1e15 Mon Sep 17 00:00:00 2001
From: zrg <z18737863051@163.com>
Date: 星期三, 11 十二月 2024 09:47:08 +0800
Subject: [PATCH] 完善出厂检验单,人员履历查询增加一个物料参数

---
 WebAPI/Properties/PublishProfiles/JFAPI.pubxml.user                    |   44 +-
 WebAPI/Models/QC_OutCompCheckBillSub.cs                                |   43 +
 WebAPI/Controllers/SCGL/QC_OutCompCheckBillController.cs               |  772 ++++++++++++++++++++++++++++++++++-----
 WebAPI/WebAPI.csproj.user                                              |    9 
 WebAPI/Controllers/BaseSet/Gy_EmployeeController.cs                    |  193 ++++++++++
 sdk_dingding/TopSdk/obj/Debug/TopSdk.csproj.AssemblyReference.cache    |    0 
 WebAPI/Models/QC_OutCompCheckBillSub_ValueGrid.cs                      |   20 +
 SyntacticSugar/obj/Debug/SyntacticSugar.csproj.AssemblyReference.cache |    0 
 WebAPI/Controllers/人事管理/人员履历/HR_PersonnelResumeController.cs           |    3 
 WebAPI/Controllers/SBGL/SB_EquipICMOTechParamBillController.cs         |    2 
 WebAPI/Models/QC_OutCompCheckBillMain.cs                               |   50 +-
 WebAPI/Controllers/品质管理/首件检验单/QC_FirstPieceCheckBillController.cs      |    2 
 WebAPI/WebAPI.csproj                                                   |    1 
 13 files changed, 956 insertions(+), 183 deletions(-)

diff --git a/SyntacticSugar/obj/Debug/SyntacticSugar.csproj.AssemblyReference.cache b/SyntacticSugar/obj/Debug/SyntacticSugar.csproj.AssemblyReference.cache
new file mode 100644
index 0000000..fea44e6
--- /dev/null
+++ b/SyntacticSugar/obj/Debug/SyntacticSugar.csproj.AssemblyReference.cache
Binary files differ
diff --git a/WebAPI/Controllers/BaseSet/Gy_EmployeeController.cs b/WebAPI/Controllers/BaseSet/Gy_EmployeeController.cs
index 7a1cf54..2dfbf7c 100644
--- a/WebAPI/Controllers/BaseSet/Gy_EmployeeController.cs
+++ b/WebAPI/Controllers/BaseSet/Gy_EmployeeController.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.Models;
 using WebAPI.Service;
@@ -21,7 +23,7 @@
         private json objJsonResult = new json();
         SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
         DataSet ds;
-
+        string fileip = System.Configuration.ConfigurationManager.AppSettings["FileIP"];
 
         /// <summary>
         /// 杩斿洖鑱屽憳鍒楄〃
@@ -265,6 +267,8 @@
         //        return objJsonResult;
         //    }
         //}
+
+
         /// <summary>
         /// 淇濆瓨鎸夐挳
         ///鍙傛暟锛歴tring sql銆�
@@ -577,6 +581,8 @@
                 return objJsonResult;
             }
         }
+
+
         ///// <summary>
         ///// 淇濆瓨鑱屽憳
         ///// </summary>
@@ -1335,7 +1341,6 @@
         }
         #endregion
 
-
         #region 鏍规嵁鐝粍杩斿洖鑱屽憳淇℃伅
         /// <summary>
         /// 鏍规嵁鐝粍杩斿洖鑱屽憳淇℃伅
@@ -1387,5 +1392,189 @@
         }
         #endregion
 
+        #region 鑱屽憳闄勪欢涓婁紶
+        /// <summary>
+        /// 鏂囦欢涓婁紶
+        /// </summary>
+        /// <returns></returns>
+        [Route("Gy_Employee_UploadFile")]
+        [HttpPost]
+        public object Gy_Employee_UploadFile()
+        {
+
+            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 path = HttpContext.Current.Server.MapPath("~/../Files/Gy_Employee/" + HBillNo);
+
+            dynamic dyResult = UpLoadFile(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(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 = "/files/Gy_Employee/" + 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/Gy_Employee/" + 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("Gy_Employee_Filelist")]
+        [HttpGet]
+        public object Gy_Employee_Filelist(string HBillNo)
+        {
+            var url = fileip + "/files/Gy_Employee/" + HBillNo + "/";
+            //@"C:\\files\\"
+            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("Gy_Employee_DeleteFilelist")]
+        [HttpGet]
+        public object Gy_Employee_DeleteFilelist(string HItemID, string HSourceBillNo, string HFileName)
+        {
+            try
+            {
+
+                oCN.RunProc("delete from MES_AccessoriesList where HItemID =" + HItemID);
+                string fileurl = Path.Combine(HttpContext.Current.Server.MapPath("~/../Files/EquipTechParamFolder/" + HSourceBillNo), HFileName);
+                File.Delete(fileurl);      //鍒犻櫎鎸囧畾鏂囦欢
+                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/SBGL/SB_EquipICMOTechParamBillController.cs b/WebAPI/Controllers/SBGL/SB_EquipICMOTechParamBillController.cs
index 0e7481c..8d3ae33 100644
--- a/WebAPI/Controllers/SBGL/SB_EquipICMOTechParamBillController.cs
+++ b/WebAPI/Controllers/SBGL/SB_EquipICMOTechParamBillController.cs
@@ -773,7 +773,7 @@
                 {
                     BillStatus = DBUtility.ClsPub.Enum_BillStatus.BillStatus_AddNew;
                     //鍒ゆ柇鏂板鏉冮檺
-                    if (!DBUtility.ClsPub.Security_Log(ModRightName, 1, false, HMaker))
+                    if (!DBUtility.ClsPub.Security_Log(ModRightNameEdit, 1, false, HMaker))
                     {
                         objJsonResult.code = "0";
                         objJsonResult.count = 0;
diff --git a/WebAPI/Controllers/SCGL/QC_OutCompCheckBillController.cs b/WebAPI/Controllers/SCGL/QC_OutCompCheckBillController.cs
index baed541..d79645e 100644
--- a/WebAPI/Controllers/SCGL/QC_OutCompCheckBillController.cs
+++ b/WebAPI/Controllers/SCGL/QC_OutCompCheckBillController.cs
@@ -1,6 +1,7 @@
 锘縰sing Newtonsoft.Json;
 using Newtonsoft.Json.Linq;
 using Pub_Class;
+using SyntacticSugar.constant;
 using System;
 using System.Collections;
 using System.Collections.Generic;
@@ -20,17 +21,12 @@
         public DataSet ds = new DataSet();
         public WebServer webserver = new WebServer();
         SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+        public DAL.ClsQC_FirstPieceCheckBill BillOld = new DAL.ClsQC_FirstPieceCheckBill();
 
-
-
-        /// <summary>
-        /// 杩斿洖鍑哄巶妫�楠屽崟鍒楄〃
-        ///鍙傛暟锛歴tring sql銆�
-        ///杩斿洖鍊硷細object銆�
-        /// </summary>
+        #region 鍑哄巶妫�楠屽崟鍒楄〃
         [Route("QC_OutCompCheckBill/GetOutCompCheckBillList")]
         [HttpGet]
-        public object GetOutCompCheckBillList(string sWhere,string user)
+        public object GetOutCompCheckBillList(string sWhere, string user)
         {
             try
             {
@@ -52,33 +48,23 @@
                 else
                 {
                     string sql1 = "select * from h_v_QC_OutCompCheckBillList where 1 = 1 ";
-                    string sql = sql1 + sWhere+ " order by hmainid desc ";
+                    string sql = sql1 + sWhere + " order by hmainid desc ";
                     ds = oCN.RunProcReturn(sql, "h_v_QC_OutCompCheckBillList");
                 }
-              foreach (DataColumn col in ds.Tables[0].Columns)//閬嶅巻ds涓涓�涓〃锛圱ables[0]锛夌殑鎵�鏈夊垪锛圕olumns锛夋瘡娆″惊鐜腑锛宑ol鍙橀噺浼氭寔鏈夊綋鍓嶅垪鐨勫紩鐢�
-                    {
-                        Type dataType = col.DataType; //鑾峰彇褰撳墠鏁版嵁绫诲瀷浼犲叆 鑷畾涔夊彉閲廳atadataType
-                        string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; //瀛楃涓叉嫾鎺�         // 灏嗗垪鍚嶅拰鏁版嵁绫诲瀷淇℃伅鎷兼帴鎴愪竴涓狫SON鏍煎紡鐨勫瓧绗︿覆
-                        a.Add(JsonConvert.DeserializeObject(ColmString));//鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕
-                    }
+                foreach (DataColumn col in ds.Tables[0].Columns)//閬嶅巻ds涓涓�涓〃锛圱ables[0]锛夌殑鎵�鏈夊垪锛圕olumns锛夋瘡娆″惊鐜腑锛宑ol鍙橀噺浼氭寔鏈夊綋鍓嶅垪鐨勫紩鐢�
+                {
+                    Type dataType = col.DataType; //鑾峰彇褰撳墠鏁版嵁绫诲瀷浼犲叆 鑷畾涔夊彉閲廳atadataType
+                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; //瀛楃涓叉嫾鎺�         // 灏嗗垪鍚嶅拰鏁版嵁绫诲瀷淇℃伅鎷兼帴鎴愪竴涓狫SON鏍煎紡鐨勫瓧绗︿覆
+                    a.Add(JsonConvert.DeserializeObject(ColmString));//鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕
+                }
 
-                //if (ds.Tables[0].Rows.Count != 0 || ds != null)
-                //{
+
                 objJsonResult.code = "1";
                 objJsonResult.count = 1;
                 objJsonResult.Message = "Sucess锛�";
                 objJsonResult.data = ds.Tables[0];
                 objJsonResult.list = a;
                 return objJsonResult;
-                //}
-                //else
-                //{
-                //objJsonResult.code = "0";
-                //objJsonResult.count = 0;
-                //objJsonResult.Message = "鏃犳暟鎹�";
-                //objJsonResult.data = null;
-                //return objJsonResult;
-                //}
             }
             catch (Exception e)
             {
@@ -89,59 +75,116 @@
                 return objJsonResult;
             }
         }
-        #region[缂栬緫鏃惰幏鍙栬〃澶存暟鎹甝
-        [Route("QC_OutCompCheckBill/QC_OutCompCheckBillListCheckDetail")]
+        #endregion
+
+        #region 鍑哄巶妫�楠屽崟鍒嗛〉鍒楄〃
+        [Route("QC_OutCompCheckBill/QC_OutCompCheckBillListPage")]
         [HttpGet]
-        public ApiResult<DataSet> QC_OutCompCheckBillListCheckDetail(string HID)
+        public json QC_OutCompCheckBillListPage(string sWhere, string user, int page, int size)
         {
-            if (string.IsNullOrEmpty(HID))
-                return new ApiResult<DataSet> { code = -1, msg = "ID涓嶈兘涓虹┖" };
-            SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+            DataSet ds;
+            json res = new json();
+            try
+            {
+                List<object> columnNameList = new List<object>();
+                //鍒ゆ柇鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("QC_OutCompCheckBill_Query", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鎮ㄦ病鏈夎妯″潡鏉冮檺,璇蜂笌绠$悊鍛樿仈绯伙紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                sWhere = sWhere.Replace("'", "''");
+                if (sWhere == null || sWhere.Equals(""))
+                {
+                    ds = oCN.RunProcReturn("exec h_p_QC_OutCompCheckBillList " + page + "," + size + ",''", "h_p_QC_OutCompCheckBillList");
+                }
+                else
+                {
+                    ds = oCN.RunProcReturn("exec h_p_QC_OutCompCheckBillList " + page + "," + size + ",'" + sWhere + "'", "h_p_QC_OutCompCheckBillList");
+                }
 
-            var dataSet = oCN.RunProcReturn("select top 1 * from h_v_QC_OutCompCheckBillList  where hmainid= " + HID + " ", "h_v_QC_OutCompCheckBillList");
-            if (dataSet == null || dataSet.Tables[0].Rows.Count == 0)
-                return new ApiResult<DataSet> { code = -1, msg = "涓嶅瓨鍦ㄧ粨绠楀崟鍙�" };
+                //娣诲姞鍒楀悕
+                foreach (DataColumn col in ds.Tables[0].Columns)
+                {
+                    Type dataType = col.DataType;
+                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
+                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕
+                }
 
-            return new ApiResult<DataSet> { code = 1, msg = "鏌ヨ鎴愬姛", data = dataSet };
+                res.code = CodeConstant.SUCCEED;
+                res.count = int.Parse(ds.Tables[1].Rows[0]["count"].ToString());
+                res.Message = "Sucess锛�";
+                res.list = columnNameList;
+                res.data = ds.Tables[0];
+                return res;
+            }
+            catch (Exception e)
+            {
+                res.code = CodeConstant.FAIL;
+                res.count = CountConstant.FAIL;
+                res.Message = "Exception锛�" + e.ToString();
+                res.data = null;
+                return res;
+            }
         }
         #endregion
 
-        #region[缂栬緫鏃惰幏鍙栬〃浣撴暟鎹甝
-        [Route("QC_OutCompCheckBill/QC_OutCompCheckBillListProjectDetai")]
+        #region[缂栬緫鏃惰幏鍙栨暟鎹甝
+        [Route("QC_OutCompCheckBill/QC_OutCompCheckBill_Edit")]
         [HttpGet]
-        public object QC_OutCompCheckBillListProjectDetai(string sqlWhere)
+        public object QC_OutCompCheckBill_Edit(string sWhere, string user)
         {
-            DataSet ds;
             try
             {
-                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
-                string sql1 = "SELECT 鏃ユ湡,鍗曟嵁鍙�,琛ㄥご澶囨敞,瀹㈡埛鍚嶇О" +
-                    ",瀹㈡埛浠g爜,浜у搧鍐呯爜, 浜у搧鍚嶇О, 浜у搧鍨嬪彿, 妫�楠屽憳浠g爜" +
-                    ", 妫�楠屽憳鍚嶇О, 鍒跺崟浜�, 鍒跺崟鏃ユ湡, 瀹℃牳浜�, 瀹℃牳鏃ユ湡" +
-                    ", 淇敼浜�, 淇敼鏃ユ湡, 鍏抽棴浜�, 鍏抽棴鏃ユ湡,鍗曟嵁绫诲瀷 FROM h_v_QC_OutCompCheckBillList where 1 = 1 ";
-                string sql = sql1 + sqlWhere;
-                ds = oCN.RunProcReturn(sql, "h_v_QC_OutCompCheckBillList");
-                objJsonResult.code = "0";
-                objJsonResult.count = 1;
-                objJsonResult.Message = "鑾峰彇淇℃伅鎴愬姛锛�";
-                objJsonResult.data = ds.Tables[0];
+                List<object> columnNameList = new List<object>();
+
+                string sql1 = "select * from h_v_QC_OutCompCheckBillList_Edit where 1 = 1  ";
+                string sql = sql1 + sWhere + " order by hmainid desc";
+                ds = oCN.RunProcReturn(sql, "h_v_QC_OutCompCheckBillList_Edit");
+
+                //娣诲姞鍒楀悕
+                foreach (DataColumn col in ds.Tables[0].Columns)
+                {
+                    Type dataType = col.DataType;
+                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
+                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕
+                }
+
+                if (ds.Tables[0].Rows.Count > 0)
+                {
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "Sucess锛�";
+                    objJsonResult.list = columnNameList;
+                    objJsonResult.data = ds.Tables[0];
+                    return objJsonResult;
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "娌℃湁鏌ヨ鍒版暟鎹�";
+                    objJsonResult.list = columnNameList;
+                    objJsonResult.data = ds.Tables[0];
+                    return objJsonResult;
+                }
             }
             catch (Exception e)
             {
                 objJsonResult.code = "0";
                 objJsonResult.count = 0;
-                objJsonResult.Message = "娌℃湁杩斿洖浠讳綍璁板綍锛�" + e.ToString();
+                objJsonResult.Message = "Exception锛�" + e.ToString();
                 objJsonResult.data = null;
+                return objJsonResult;
             }
-            return objJsonResult;
         }
+
         #endregion
 
-        /// <summary>
-        /// 鏂板鍗曟嵁-淇濆瓨鎸夐挳
-        ///鍙傛暟锛歴tring sql銆�
-        ///杩斿洖鍊硷細object銆�
-        /// </summary>
+        #region 鍑哄巶妫�楠屽崟 涓诲瓙琛ㄤ繚瀛�
         [Route("QC_OutCompCheckBill/AddBill")]
         [HttpPost]
         public object AddBill([FromBody] JObject sMainSub)
@@ -172,7 +215,8 @@
             string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
             string msg2 = sArray[0].ToString();
             string msg3 = sArray[1].ToString();
-            string user = sArray[2].ToString();
+            string OperationType = sArray[2].ToString();
+            string user = sArray[3].ToString();
             try
             {
                 //鍒ゆ柇鏉冮檺
@@ -187,47 +231,98 @@
 
                 msg2 = "[" + msg2.ToString() + "]";
                 List<QC_OutCompCheckBillMain> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<QC_OutCompCheckBillMain>>(msg2);
-                int HYear = 2021;
-                double HPeriod = 1;
+                int HYear = DateTime.Now.Year; ;
+                double HPeriod = DateTime.Now.Month; ;
                 string HBillType = "7504";
                 string HBillSubType = "7504";
                 long HInterID = mainList[0].HInterID;//閫掑叆type寰楀埌鐨勫崟鎹甀D
                 DateTime HDate = mainList[0].HDate;//鏃ユ湡
                 string HBillNo = mainList[0].HBillNo;//閫掑叆type寰楀埌鐨勫崟鎹彿
                 long HBillStatus = mainList[0].HBillStatus;
-                string HRemark = mainList[0].HRemark;//澶囨敞
-                string HBacker = mainList[0].HBacker;
-                DateTime HBackDate = mainList[0].HBackDate;
-                string HBackRemark = mainList[0].HBackRemark;
-                string HChecker = mainList[0].HChecker;
-                DateTime HCheckDate = mainList[0].HCheckDate;
-                string HMaker = mainList[0].HMaker;
-                DateTime HMakeDate = mainList[0].HMakeDate;
+                string HRemark = mainList[0].HRemark;//澶囨敞                
+                string HMaker = user;
+
                 long HCusID = mainList[0].HCusID;
                 long HMaterID = mainList[0].HMaterID;
                 long HFirstCheckEmp = mainList[0].HFirstCheckEmp;
-                string HCheckerResult = mainList[0].HCheckerResult;
+                bool HCheckerResult = ClsPub.isBool(mainList[0].HCheckerResult);
                 double HInStockQty = mainList[0].HInStockQty;
                 double HCheckQty = mainList[0].HCheckQty;
                 double HRightQty = mainList[0].HRightQTy;
                 double HBadQty = mainList[0].HBadQty;
+                
+                long HICMOInterID = ClsPub.isLong(mainList[0].HICMOInterID);
+                string  HICMOBillNo = ClsPub.isStrNull(mainList[0].HICMOBillNo);
+                long HICMOEntryID = ClsPub.isLong(mainList[0].HICMOEntryID);
+                long HICMOQty = ClsPub.isLong(mainList[0].HICMOQty);
+                long HProcExchInterID = ClsPub.isLong(mainList[0].HProcExchInterID);
+                long HProcExchEntryID = ClsPub.isLong(mainList[0].HProcExchEntryID);
+                string  HProcExchBillNo = ClsPub.isStrNull(mainList[0].HProcExchBillNo);
+                long HProcExchQty = ClsPub.isLong(mainList[0].HProcExchQty);
+                long HSourceID = ClsPub.isLong(mainList[0].HSourceID);
+                long HProcID = ClsPub.isLong(mainList[0].HProcID);
+                long HMainSourceInterID = ClsPub.isLong(mainList[0].HMainSourceInterID);
+                long HMainSourceEntryID = ClsPub.isLong(mainList[0].HMainSourceEntryID);
+                string  HMainSourceBillNo = ClsPub.isStrNull(mainList[0].HMainSourceBillNo);
+                string HMainSourceBillType = ClsPub.isStrNull(mainList[0].HMainSourceBillType);
+                long HQCSchemeID = ClsPub.isLong(mainList[0].HQCSchemeID);
+                long HShiftsID = ClsPub.isLong(mainList[0].HShiftsID);
+                string  HErrTreatment = ClsPub.isStrNull(mainList[0].HErrTreatment);
+                string  HBatchNo = ClsPub.isStrNull(mainList[0].HBatchNo);
+                long HSourceOrgID = ClsPub.isLong(mainList[0].HSourceOrgID);
+                long HInspectOrgID = ClsPub.isLong(mainList[0].HInspectOrgID);
 
-                //涓昏〃
-                oCN.RunProc("Insert Into QC_OutCompCheckBillMain " +
-                "(HBillType,HBillSubType,HInterID,HBillNo,HBillStatus,HDate,HMaker,HMakeDate" +
-                ",HYear,HPeriod,HRemark" +
-                ",HCusID,HMaterID,HInStockQty,HCheckQty,HRightQty" +
-                ",HBadQty,HFirstCheckEmp,HCheckerResult" +
-                ") " +
-                " values('" + HBillType + "','" + HBillSubType + "'," + HInterID.ToString() + ",'" + HBillNo + "'," + HBillStatus.ToString() + ",'" + HDate + "','" + DBUtility.ClsPub.CurUserName + "',getdate()" +
-                "," + HYear.ToString() + "," + HPeriod.ToString() + ",'" + HRemark + "'" +
-                "," + HCusID.ToString() + "," + HMaterID.ToString() + "," + HInStockQty.ToString() + "," + HCheckQty.ToString() + "," + HRightQty.ToString() +
-                "," + HBadQty.ToString() + "," + HFirstCheckEmp.ToString() + ",'" + HCheckerResult + "'" +
-                ") ");
+                if (OperationType=="1" || OperationType=="2")
+                {
+                    //涓昏〃
+                    oCN.RunProc("Insert Into QC_OutCompCheckBillMain " +
+                    "(HBillType,HBillSubType,HInterID,HBillNo,HBillStatus,HDate,HMaker,HMakeDate" +
+                    ",HYear,HPeriod,HRemark,HMainSourceInterID,HMainSourceEntryID,HMainSourceBillNo,HMainSourceBillType" +
+                    ",HCusID,HMaterID,HInStockQty,HCheckQty,HRightQty,HBadQty,HFirstCheckEmp,HCheckerResult" +
+                    ",HICMOInterID,HICMOEntryID,HICMOBillNo,HICMOQty,HProcExchInterID,HProcExchEntryID,HProcExchBillNo,HProcExchQty" +
+                     ",HSourceID,HProcID,HQCSchemeID,HShiftsID,HErrTreatment,HBatchNo,HSourceOrgID,HInspectOrgID" +
+                    ") " +
+                    " values('" + HBillType + "','" + HBillSubType + "'," + HInterID.ToString() + ",'" + HBillNo + "'," + HBillStatus.ToString() + ",'" + HDate + "','" + user + "',getdate()" +
+                    "," + HYear.ToString() + "," + HPeriod.ToString() + ",'" + HRemark + "','" + HMainSourceInterID + "','" + HMainSourceEntryID + "','" + HMainSourceBillNo + "','" + HMainSourceBillType + "'" +
+                    ",'" + HCusID.ToString() + "','" + HMaterID.ToString() + "','" + HInStockQty.ToString() + "','" + HCheckQty.ToString() + "','" + HRightQty.ToString() + "','" + HBadQty.ToString() + "','" + HFirstCheckEmp.ToString() + "','" + DBUtility.ClsPub.BoolToString(HCheckerResult) + "'" +
+                    ",'" + HICMOInterID.ToString() + "','" + HICMOEntryID.ToString() + "','" + HICMOBillNo.ToString() + "','" + HICMOQty.ToString() + "','" + HProcExchInterID.ToString() + "','" + HProcExchEntryID.ToString() + "','" + HProcExchBillNo.ToString() + "','" + HProcExchQty + "'" +
+                    ",'" + HSourceID.ToString() + "','" + HProcID.ToString() + "','" + HQCSchemeID.ToString() + "','" + HShiftsID.ToString() + "','" + HErrTreatment.ToString() + "','" + HBatchNo.ToString() + "','" + HSourceOrgID.ToString() + "','" + HInspectOrgID.ToString() + "') ");
 
+                }
+                else if (OperationType == "3")
+                {
+                    oCN.RunProc("UpDate QC_OutCompCheckBillMain set " +
+                        " HBillNo='" + HBillNo + "'" +
+                         ",HDate='" + HDate + "'" +
+                         ",HYear='" + HYear.ToString() + "'" +
+                         ",HPeriod='" + HPeriod.ToString() + "'" +
+                         ",HBillStatus='" + HBillStatus + "'" +
+                         ",HRemark='" + HRemark + "'" +
+                         ",HUpDater='" +user + "'" +
+                         ",HUpDateDate=getdate()" +
+                         //========================================
+                         ",HSourceID=" + HSourceID.ToString() +
+                         ",HQCSchemeID=" + HQCSchemeID.ToString() +
+                         ",HICMOInterID=" + HICMOInterID.ToString() +
+                         ",HICMOBillNo='" + HICMOBillNo + "'" +
+                         ",HICMOQty=" + HICMOQty.ToString() +
+                         ",HProcExchInterID=" + HProcExchInterID.ToString() +
+                         ",HProcExchEntryID=" + HProcExchEntryID.ToString() +
+                         ",HProcExchBillNo='" + HProcExchBillNo + "'" +
+                         ",HProcExchQty=" + HProcExchQty.ToString() +
+                         ",HProcID=" + HProcID.ToString() +
+                         ",HMaterID=" + HMaterID.ToString() +
+                         ",HFirstCheckEmp=" + HFirstCheckEmp.ToString() +
+                         ",HCheckerResult=" + DBUtility.ClsPub.BoolToString(HCheckerResult) +
+                         ",HShiftsID=" + HShiftsID.ToString() +
+                         ",HErrTreatment='" + HErrTreatment + "'" +
+                         ",HBatchNo='" + HBatchNo + "'" +
+                         " where HInterID=" + HInterID.ToString());
+                    oCN.RunProc("Delete From QC_OutCompCheckBillSub where HInterID = " + HInterID);
 
+                }
                 //淇濆瓨瀛愯〃
-                objJsonResult = AddBillSub(msg3, HInterID);
+                objJsonResult = AddBillSub(msg3, HInterID, HBillNo);
                 if (objJsonResult.code == "0")
                 {
                     objJsonResult.code = "0";
@@ -253,37 +348,66 @@
             }
         }
 
-        public json AddBillSub(string msg3, long HInterID)
+        public json AddBillSub(string msg3, long HInterID, string HBillNo)
         {
             List<QC_OutCompCheckBillSub> subList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<QC_OutCompCheckBillSub>>(msg3);
-            for (int i = 0; i < subList.ToArray().Length; i++)
-            {
-                string HBillNo_bak = subList[0].HBillNo_bak;
-                long HEntryID = subList[0].HEntryID;//宸ユID
-                string HCloseMan = subList[0].HCloseMan;
-                long HCloseType = subList[0].HCloseType;
-                string HRemark = subList[0].HRemark;
-                long HSourceInterID = subList[0].HSourceInterID;
-                long HSourceEntryID = subList[0].HSourceEntryID;
-                string HSourceBillNo = subList[0].HSourceBillNo;
-                string HSourceBillType = subList[0].HSourceBillType;
-                double HRelationQty = subList[0].HRelationQty;
-                double HRelationMoney = subList[0].HRelationMoney;
+            for (int i = 0; i < subList.Count; i++)
+            {                          
+
+                int HEntryID = i + 1;
+                string HRemark = ClsPub.isStrNull(subList[i].HRemark);
+                long HSourceInterID = ClsPub.isLong(subList[i].HSourceInterID);
+                long HSourceEntryID = ClsPub.isLong(subList[i].HSourceEntryID);
+                string HSourceBillType = ClsPub.isStrNull(subList[i].HSourceBillType);
+                string HSourceBillNo = ClsPub.isStrNull(subList[i].HSourceBillNo);
+                double HRelationQty = DBUtility.ClsPub.isDoule(subList[i].HRelationQty);
+                double HRelationMoney = DBUtility.ClsPub.isDoule(subList[i].HRelationMoney);
+                string HCloseMan = DBUtility.ClsPub.isStrNull(subList[i].HCloseMan);
+                DateTime HEntryCloseDate = DBUtility.ClsPub.isDate(subList[i].HEntryCloseDate);
+                bool HCloseType = DBUtility.ClsPub.isBool(subList[i].HCloseType);
+
+
                 long HQCCheckClassID = subList[0].HQCCheckClassID;
-                long HQCCheckItemID = subList[0].HQCCheckItemID;
-                string HQCStd = subList[0].HQCStd;
-                string HResult = subList[0].HResult;
+                long HQCCheckItemID = DBUtility.ClsPub.isLong(subList[i].HQCCheckItemID);
+                string HQCStd = DBUtility.ClsPub.isStrNull(subList[i].HQCStd);
+                string HUnit = DBUtility.ClsPub.isStrNull(subList[i].HUnit);
+                string HQCNote = DBUtility.ClsPub.isStrNull(subList[i].HQCNote);
+                string HResult = DBUtility.ClsPub.isStrNull(subList[i].HResult);
+                string HMax = DBUtility.ClsPub.isStrNull(subList[i].HMax);
+                string HMin = DBUtility.ClsPub.isStrNull(subList[i].HMin);
+                string HAvg = DBUtility.ClsPub.isStrNull(subList[i].HAvg);               
+                long HSampleSchemeID = DBUtility.ClsPub.isLong(subList[i].HSampleSchemeID);
+                long HSampleQty = DBUtility.ClsPub.isLong(subList[i].HSampleQty);
+                double HSampleDamageQty = DBUtility.ClsPub.isDoule(subList[i].HSampleDamageQty);
+                long HAcceptQty = DBUtility.ClsPub.isLong(subList[i].HAcceptQty);
+                long HRejectQty = DBUtility.ClsPub.isLong(subList[i].HRejectQty);
+                double  HSampleUnRightQty = DBUtility.ClsPub.isDoule(subList[i].HSampleUnRightQty);
+                string HStatus = DBUtility.ClsPub.isStrNull(subList[i].HStatus);
+                long HUnitID = DBUtility.ClsPub.isLong(subList[i].HUnitID);
+                string HInspectVal = DBUtility.ClsPub.isStrNull(subList[i].HInspectVal);
+                string HTargetVal = DBUtility.ClsPub.isStrNull(subList[i].HTargetVal);
+                string HUpLimit = DBUtility.ClsPub.isStrNull(subList[i].HUpLimit);
+                string HDownLimit = DBUtility.ClsPub.isStrNull(subList[i].HDownLimit);
+                string HUpOffSet = DBUtility.ClsPub.isStrNull(subList[i].HUpOffSet);
+                string HDownOffSet = DBUtility.ClsPub.isStrNull(subList[i].HDownOffSet);
+                string HAnalysisMethod = DBUtility.ClsPub.isStrNull(subList[i].HAnalysisMethod);
+                long HKeyInspect = DBUtility.ClsPub.isLong(subList[i].HKeyInspect);
+                long HInspectInstruMentID = DBUtility.ClsPub.isLong(subList[i].HInspectInstruMentID);
+                string HInspectResult = DBUtility.ClsPub.isStrNull(subList[i].HResult);
+
 
                 oCN.RunProc("Insert into QC_OutCompCheckBillSub " +
-                      " (HInterID,HBillNo_bak,HEntryID,HCloseMan" +
-                      ",HEntryCloseDate,HCloseType,HRemark,HSourceInterID" +
+                      " (HInterID,HBillNo_bak,HEntryID,HCloseMan,HEntryCloseDate,HCloseType,HRemark,HSourceInterID" +
                       ",HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
-                      ",HQCCheckClassID,HQCCheckItemID,HQCStd,HResult" +
+                      ",HQCCheckClassID,HQCCheckItemID,HQCStd,HQCNote,HResult,HMax,HMin,HAvg,HSampleSchemeID,HSampleQty" +
+                      ",HSampleDamageQty,HAcceptQty,HRejectQty,HSampleUnRightQty,HStatus,HUnitID,HInspectVal,HTargetVal,HUpLimit,HDownLimit" +
+                      ",HUpOffSet,HDownOffSet,HAnalysisMethod,HKeyInspect,HInspectInstruMentID,HInspectResult" +
                       ") values("
-                      + HInterID.ToString() + ",'" + HBillNo_bak + "'," + HEntryID.ToString() + ",'" + HCloseMan + "'" +
-                      ",getdate()," + HCloseType + ",'" + HRemark + "'," + HSourceInterID.ToString() +
+                      + HInterID.ToString() + ",'" + HBillNo + "'," + HEntryID.ToString() + ",'" + HCloseMan + "',getdate()," + DBUtility.ClsPub.BoolToString(HCloseType) + ",'" + HRemark + "'," + HSourceInterID.ToString() +
                       "," + HSourceEntryID.ToString() + ",'" + HSourceBillNo + "','" + HSourceBillType + "'," + HRelationQty.ToString() + "," + HRelationMoney.ToString() +
-                      "," + HQCCheckClassID.ToString() + "," + HQCCheckItemID.ToString() + ",'" + HQCStd + "','" + HResult + "'" + ") ");
+                      "," + HQCCheckClassID.ToString() + "," + HQCCheckItemID.ToString() + ",'" + HQCStd + "','" + HQCNote + "','" + HResult + "','" + HMax + "','" + HMin + "','" + HAvg + "','" + HSampleSchemeID + "','" + HSampleQty + "'" +
+                      "," + HSampleDamageQty.ToString() + "," + HAcceptQty.ToString() + ",'" + HRejectQty + "','" + HSampleUnRightQty + "','" + HStatus + "','" + HUnitID + "','" + HInspectVal + "','" + HTargetVal + "','" + HUpLimit + "','" + HDownLimit + "'" +
+                      ",'" + HUpOffSet.ToString() + "','" + HDownOffSet.ToString() + "','" + HAnalysisMethod + "','" + DBUtility.ClsPub.BoolToString(HKeyInspect) + "','" + HInspectInstruMentID + "','" + HInspectResult + "' ) ");
             }
 
             objJsonResult.code = "1";
@@ -292,13 +416,62 @@
             objJsonResult.data = null;
             return objJsonResult;
         }
-        /// <summary>
-        ///鍒犻櫎鍔熻兘
-        /// </summary>
-        /// <returns></returns>
+
+        #endregion
+
+        #region 妫�楠屽�间繚瀛�
+        [Route("QC_OutCompCheckBill/set_SaveValue")]
+        [HttpPost]
+        public object set_SaveValue([FromBody] JObject msg)
+        {
+            ListModels oListModels = new ListModels();
+            try
+            {
+                var _value = msg["msg"].ToString();
+                string msg1 = _value.ToString();
+                string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+
+                string Value = sArray[0].ToString(); //妫�楠屽�艰〃鏍�
+                Int64 HInterID = Convert.ToInt64(sArray[1]); //涓籌D
+                Int64 HEntryID = Convert.ToInt64(sArray[2]); //瀛怚D
+
+                List<QC_OutCompCheckBillSub_ValueGrid> valueList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<QC_OutCompCheckBillSub_ValueGrid>>(Value);
+
+
+                for (int i = 0; i < valueList.ToArray().Length; i++)
+                {
+                    int HSEQ = i + 1;
+                    string HInSpectResult = ClsPub.isStrNull(valueList[i].HInSpectResult);
+                    double HInSpectValue = ClsPub.isDoule(valueList[i].HInSpectValue);
+                    long HInSpectValueB = ClsPub.isLong(valueList[i].HInSpectValueB);
+                    string HInSpectValueT = ClsPub.isStrNull(valueList[i].HInSpectValueT);
+
+                    oCN.RunProc("Insert into QC_OutCompCheckBillSub_ValueGrid " +
+                      " (HInterID,HEntryID,HSEQ,HInSpectResult,HInSpectValue,HInSpectValueB,HInSpectValueT) " +
+                      "values("+ HInterID + "," + HEntryID + "," + HSEQ + ",'" + HInSpectResult + "'," +HInSpectValue + "," + HInSpectValueB + ",'" + HInSpectValueT + "'" +") ");
+                }
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = null;
+                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
+
+        #region 鍑哄巶妫�楠屽崟 鍒犻櫎
         [Route("QC_OutCompCheckBill/DeltetOutCompCheckBill")]
         [HttpGet]
-        public object DeltetOutCompCheckBill(string HInterID,string user)
+        public object DeltetOutCompCheckBill(string HInterID, string user)
         {
             try
             {
@@ -315,6 +488,7 @@
                 oCN.BeginTran();
                 oCN.RunProc("Delete From QC_OutCompCheckBillMain where HInterID = " + HInterID);
                 oCN.RunProc("Delete From QC_OutCompCheckBillSub where HInterID = " + HInterID);
+                oCN.RunProc("Delete From QC_OutCompCheckBillSub_ValueGrid where HInterID = " + HInterID);   
                 oCN.Commit();
                 objJsonResult.code = "1";
                 objJsonResult.count = 1;
@@ -332,6 +506,380 @@
                 return objJsonResult;
             }
         }
-        //
+
+        #endregion
+
+        #region 鍑哄巶妫�楠屽崟缁存姢 瀹℃牳 鍙嶅鏍� 鍏抽棴 鍙嶅叧闂� 浣滃簾 鍙嶄綔搴�
+        /// <summary>
+        /// 鍑哄巶妫�楠屽崟缁存姢 瀹℃牳銆佸弽瀹℃牳
+        /// </summary>
+        /// <param name="HInterID">鍗曟嵁ID</param>
+        /// <param name="IsAudit">瀹℃牳(0),鍙嶅鏍�(1)</param>
+        /// <param name="CurUserName">瀹℃牳浜�</param>
+        /// <returns></returns>
+        [Route("QC_OutCompCheckBill/CheckQC_OutCompCheckBill")]
+        [HttpGet]
+        public object CheckQC_OutCompCheckBill(int HInterID, int IsAudit, string CurUserName)
+        {
+            try
+            {
+                //瀹℃牳鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log_second("QC_OutCompCheckBill_Check", 1, false, CurUserName))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "瀹℃牳澶辫触锛佹棤鏉冮檺锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                var ds = oCN.RunProcReturn("select * from QC_OutCompCheckBillMain where HInterID=" + HInterID, "QC_OutCompCheckBillMain");
+                if (ds.Tables[0].Rows.Count > 0)
+                {
+                    if (IsAudit == 0)  //瀹℃牳鍒ゆ柇
+                    {
+                        if (ds.Tables[0].Rows[0]["HChecker"].ToString() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸插鏍�!涓嶈兘鍐嶆瀹℃牳锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                    if (IsAudit == 1) //鍙嶅鏍稿垽鏂�
+                    {
+                        if (ds.Tables[0].Rows[0]["HChecker"].ToString() == "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鏈鏍�!涓嶉渶瑕佸弽瀹℃牳!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦�!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                oCN.BeginTran();
+
+                if (IsAudit == 0)  //瀹℃牳鍒ゆ柇
+                {                   
+
+                    oCN.RunProc("update QC_OutCompCheckBillMain set HChecker='" + CurUserName + "',HCheckDate=getdate() where HInterID=" + HInterID);
+
+
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "瀹℃牳鎴愬姛";
+                    objJsonResult.data = null;
+                }
+                if (IsAudit == 1) //鍙嶅鏍稿垽鏂�
+                {                  
+
+                    oCN.RunProc("update QC_OutCompCheckBillMain set HChecker='',HCheckDate=null where HInterID=" + HInterID);               
+
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "鍙嶅鏍告垚鍔�";
+                    objJsonResult.data = null;
+                }
+                oCN.Commit();
+
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                oCN.RollBack();
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "瀹℃牳澶辫触鎴栬�呭弽瀹℃牳澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+
+        /// <summary>
+        /// 鍑哄巶妫�楠屽崟缁存姢 鍏抽棴 鍙嶅叧闂� 
+        /// </summary>
+        /// <param name="HInterID"></param>
+        /// <param name="Type"></param>
+        /// <param name="user"></param>
+        /// <returns></returns>
+        [Route("QC_OutCompCheckBill/CloseQC_OutCompCheckBill")]
+        [HttpGet]
+        public object CloseQC_FirstPieceCheckBill(string HInterID, int Type, string user)
+        {
+            try
+            {
+                //鍒ゆ柇鏄惁鏈夊垹闄ゆ潈闄�
+                if (!DBUtility.ClsPub.Security_Log("QC_OutCompCheckBill_Close", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳潈闄愬叧闂�!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                if (string.IsNullOrWhiteSpace(HInterID))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "HInterID涓虹┖锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                ClsPub.CurUserName = user;
+                BillOld.MvarItemKey = "QC_OutCompCheckBillMain";
+                oCN.BeginTran();//寮�濮嬩簨鍔�
+
+                //Type 1 鍏抽棴  2  鍙嶅叧闂�
+                if (Type == 1)
+                {
+                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍏抽棴
+                    DataSet ds;
+                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
+                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
+                    if (ds == null || ds.Tables[0].Rows.Count == 0)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦紒";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
+                    {
+                        if (ds.Tables[0].Rows[0]["HDeleteMan"] != null && ds.Tables[0].Rows[0]["HDeleteMan"].ToString() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸蹭綔搴�!涓嶈兘杩涜鍏抽棴!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+
+
+                        if (ds.Tables[0].Rows[0]["HCloseMan"] != null && ds.Tables[0].Rows[0]["HCloseMan"].ToString() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸插叧闂�!涓嶈兘鍐嶆鍏抽棴!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        //鍏抽棴鍗曟嵁
+                        if (!BillOld.CloseBill(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 1;
+                            objJsonResult.Message = "鍏抽棴澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                }
+                else
+                {
+                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍙嶅叧闂�
+                    DataSet ds;
+                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
+                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
+                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
+                    {
+                        if (ds.Tables[0].Rows[0]["HDeleteMan"] != null && ds.Tables[0].Rows[0]["HDeleteMan"].ToString() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸蹭綔搴�!涓嶈兘杩涜鍏抽棴!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+
+                        if (ds.Tables[0].Rows[0]["HCloseMan"] == null || ds.Tables[0].Rows[0]["HCloseMan"].ToString() == "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鏈叧闂�!涓嶉渶瑕佸啀鍙嶅叧闂�!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        //鍙嶅叧闂崟鎹�
+                        if (!BillOld.CancelClose(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 1;
+                            objJsonResult.Message = "鍙嶅叧闂け璐�!鍘熷洜:" + ClsPub.sExeReturnInfo;
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                }
+
+                oCN.Commit();//鎻愪氦浜嬪姟
+
+                objJsonResult.code = "0";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鎵ц鎴愬姛锛�";
+                objJsonResult.data = null;
+                return objJsonResult; ;
+
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鎵ц澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+
+
+        /// <summary>
+        /// 鍑哄巶妫�楠屽崟缁存姢 浣滃簾 鍙嶄綔搴�
+        /// </summary>
+        /// <param name="HInterID"></param>
+        /// <param name="Type"></param>
+        /// <param name="user"></param>
+        /// <returns></returns>
+        [Route("QC_OutCompCheckBill/DropQC_OutCompCheckBill")]
+        [HttpGet]
+        public object DropQC_FirstPieceCheckBills(string HInterID, int Type, string user)
+        {
+            try
+            {
+                //鍒ゆ柇鏄惁鏈変綔搴熸潈闄�
+                if (!DBUtility.ClsPub.Security_Log("QC_OutCompCheckBill_Drop", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳潈闄愪綔搴�!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                if (string.IsNullOrWhiteSpace(HInterID))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "HInterID涓虹┖锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                ClsPub.CurUserName = user;
+                BillOld.MvarItemKey = "QC_OutCompCheckBillMain";
+                oCN.BeginTran();//寮�濮嬩簨鍔�
+
+                //Type 1 浣滃簾  2  鍙嶄綔搴�
+                if (Type == 1)
+                {
+                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡浣滃簾
+                    DataSet ds;
+                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
+                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
+                    if (ds == null || ds.Tables[0].Rows.Count == 0)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦紒";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
+                    {
+                        if (ds.Tables[0].Rows[0]["HChecker"] != null && ds.Tables[0].Rows[0]["HChecker"].ToString() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸插鏍�!涓嶈兘杩涜浣滃簾!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        if (ds.Tables[0].Rows[0]["HDeleteMan"] != null && ds.Tables[0].Rows[0]["HDeleteMan"].ToString() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸蹭綔搴�!涓嶉渶瑕佸啀浣滃簾!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        //浣滃簾鍗曟嵁
+                        if (!BillOld.Cancelltion(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 1;
+                            objJsonResult.Message = "浣滃簾澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                }
+                else
+                {
+                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍙嶄綔搴�
+                    DataSet ds;
+                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
+                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
+                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
+                    {
+                        if (ds.Tables[0].Rows[0]["HChecker"] != null && ds.Tables[0].Rows[0]["HChecker"].ToString() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸插鏍�!涓嶈兘杩涜浣滃簾!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        if (ds.Tables[0].Rows[0]["HDeleteMan"] == null || ds.Tables[0].Rows[0]["HDeleteMan"].ToString() == "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鏈綔搴�!涓嶉渶瑕佸啀鍙嶄綔搴�!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        //鍙嶄綔搴熷崟鎹�
+                        if (!BillOld.AbandonCancelltion(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 1;
+                            objJsonResult.Message = "鍙嶄綔搴熷け璐�!鍘熷洜:" + ClsPub.sExeReturnInfo;
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                }
+
+                oCN.Commit();//鎻愪氦浜嬪姟
+
+                objJsonResult.code = "0";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鎵ц鎴愬姛锛�";
+                objJsonResult.data = null;
+                return objJsonResult; ;
+
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鎵ц澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
     }
 }
\ No newline at end of file
diff --git "a/WebAPI/Controllers/\344\272\272\344\272\213\347\256\241\347\220\206/\344\272\272\345\221\230\345\261\245\345\216\206/HR_PersonnelResumeController.cs" "b/WebAPI/Controllers/\344\272\272\344\272\213\347\256\241\347\220\206/\344\272\272\345\221\230\345\261\245\345\216\206/HR_PersonnelResumeController.cs"
index d8973ce..59a47f6 100644
--- "a/WebAPI/Controllers/\344\272\272\344\272\213\347\256\241\347\220\206/\344\272\272\345\221\230\345\261\245\345\216\206/HR_PersonnelResumeController.cs"
+++ "b/WebAPI/Controllers/\344\272\272\344\272\213\347\256\241\347\220\206/\344\272\272\345\221\230\345\261\245\345\216\206/HR_PersonnelResumeController.cs"
@@ -41,7 +41,8 @@
                 string HNumber = dic["HNumber"].ToString();//鑱屽憳浠g爜
                 string HName = dic["HName"].ToString();//鑱屽憳
                 string HProcID = dic["HProcID"].ToString();//宸ュ簭id
-                ds = oCN.RunProcReturn("exec h_p_HR_PersonnelResumeReport '" + HNumber.ToString() + "','" + HName + "','" + HProcID + "'", "h_p_HR_PersonnelResumeReport");
+                string HMaterID = dic["HMaterID"].ToString();//宸ュ簭id
+                ds = oCN.RunProcReturn("exec h_p_HR_PersonnelResumeReport '" + HNumber.ToString() + "','" + HName + "','" + HProcID + "','"+ HMaterID + "'", "h_p_HR_PersonnelResumeReport");
                 List<object> columnNameList = new List<object>();
                 // 閬嶅巻鎵�鏈夎〃
                 foreach (DataTable table in ds.Tables)
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 85039e8..2217daa 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"
@@ -137,7 +137,7 @@
         }
         #endregion
 
-        #region 宸ヨ祫缁撶畻鍗�(涓汉)鍒嗛〉鍒楄〃
+        #region 棣栦欢妫�楠屽崟鍒嗛〉鍒楄〃
         [Route("QC_FirstPieceCheckBillMain/QC_FirstPieceCheckBillMainListPage")]
         [HttpGet]
         public json QC_FirstPieceCheckBillMainListPage(string sWhere, string user, int page, int size)
diff --git a/WebAPI/Models/QC_OutCompCheckBillMain.cs b/WebAPI/Models/QC_OutCompCheckBillMain.cs
index 7ce7872..1e2fc38 100644
--- a/WebAPI/Models/QC_OutCompCheckBillMain.cs
+++ b/WebAPI/Models/QC_OutCompCheckBillMain.cs
@@ -5,34 +5,8 @@
 
 namespace WebAPI.Models
 {
-    public class QC_OutCompCheckBillMain
+    public class QC_OutCompCheckBillMain : DBUtility.ClsXt_BaseBillMain
     {
-        public long HInterID { get; set; }
-        public string HBillNo { get; set; }
-        public DateTime HDate { get; set; }
-        public long HBillStatus { get; set; }
-        public long HCheckItemNowID { get; set; }
-        public long HCheckItemNextID { get; set; }
-        public long HCheckFlowID { get; set; }
-        public string HRemark { get; set; }
-        public string HBacker { get; set; }
-        public DateTime HBackDate { get; set; }
-        public string HBackRemark { get; set; }
-        public string HChecker { get; set; }
-        public DateTime HCheckDate { get; set; }
-        public string HMaker { get; set; }
-        public DateTime HMakeDate { get; set; }
-        public string HUpDater { get; set; }
-        public DateTime HUpDateDate { get; set; }
-        public string HCloseMan { get; set; }
-        public DateTime HCloseDate { get; set; }
-        public string HCloseType { get; set; }
-        public string HDeleteMan { get; set; }
-        public DateTime HDeleteDate { get; set; }
-        public string HMainSourceBillType { get; set; }
-        public long HMainSourceInterID { get; set; }
-        public long HMainSourceEntryID { get; set; }
-        public string HMainSourceBillNo { get; set; }
         public long HPrintQty { get; set; }
         public long HCusID { get; set; }
         public long HMaterID { get; set; }
@@ -41,7 +15,27 @@
         public double HRightQTy { get; set; }
         public double HBadQty { get; set; }
         public long HFirstCheckEmp { get; set; }
-        public string HCheckerResult { get; set; }
+        public bool HCheckerResult { get; set; }
+
+        //鏂板瀛楁24/12/10
+        public Int64 HSourceID { get; set; }
+        public Int64 HICMOInterID { get; set; }
+        public String HICMOBillNo { get; set; }
+        public Int64 HICMOQty { get; set; }
+        public Int64 HProcExchInterID { get; set; }
+        public Int64 HProcExchEntryID { get; set; }
+        public String HProcExchBillNo { get; set; }
+        public Int64 HProcExchQty { get; set; }
+        public Int64 HICMOEntryID { get; set; }
+        public Int64 HQCSchemeID { get; set; }
+        public Int64 HUnitID { get; set; }
+        public Int64 HProcID { get; set; }
+        public Int64 HDeptID { get; set; }
+        public Int64 HShiftsID { get; set; }
+        public string HErrTreatment { get; set; }
+        public string HBatchNo { get; set; }
+        public Int64 HSourceOrgID { get; set; }
+        public Int64 HInspectOrgID { get; set; }
 
     }
 }
\ No newline at end of file
diff --git a/WebAPI/Models/QC_OutCompCheckBillSub.cs b/WebAPI/Models/QC_OutCompCheckBillSub.cs
index 8d5bb54..6ba01a2 100644
--- a/WebAPI/Models/QC_OutCompCheckBillSub.cs
+++ b/WebAPI/Models/QC_OutCompCheckBillSub.cs
@@ -5,25 +5,38 @@
 
 namespace WebAPI.Models
 {
-    public class QC_OutCompCheckBillSub
-    {
-        public long HInterID { get; set; }
-        public string HBillNo_bak { get; set; }
-        public long HEntryID { get; set; }
-        public string HCloseMan { get; set; }
-        public DateTime HEntryCloseDate { get; set; }
-        public long HCloseType { get; set; }
-        public string HRemark { get; set; }
-        public long HSourceInterID { get; set; }
-        public long HSourceEntryID { get; set; }
-        public string HSourceBillNo { get; set; }
-        public string HSourceBillType { get; set; }
-        public double HRelationQty { get; set; }
-        public double HRelationMoney { get; set; }
+    public class QC_OutCompCheckBillSub : DBUtility.ClsXt_BaseBillSub
+    {   
         public long HQCCheckClassID { get; set; }
         public long HQCCheckItemID { get; set; }
         public string HQCStd { get; set; }
         public string HResult { get; set; }
 
+
+        //鏂板瀛楁24/12/10
+        public String HUnit { get; set; }
+        public String HQCNote { get; set; }
+        public String HMax { get; set; }
+        public String HMin { get; set; }
+        public String HAvg { get; set; }
+        public Int64 HSampleSchemeID { get; set; }
+        public Int64 HSampleQty { get; set; }
+        public double HSampleDamageQty { get; set; }
+        public Int64 HAcceptQty { get; set; }
+        public Int64 HRejectQty { get; set; }
+        public double HSampleUnRightQty { get; set; }
+        public String HStatus { get; set; }
+        public Int64 HUnitID { get; set; }
+        public String HInspectVal { get; set; }
+        public String HTargetVal { get; set; }
+        public String HUpLimit { get; set; }
+        public String HDownLimit { get; set; }
+        public String HUpOffSet { get; set; }
+        public String HDownOffSet { get; set; }
+        public String HAnalysisMethod { get; set; }
+        public Int64 HKeyInspect { get; set; }
+        public Int64 HInspectInstruMentID { get; set; }
+        public String HInspectResult { get; set; }
+
     }
 }
\ No newline at end of file
diff --git a/WebAPI/Models/QC_OutCompCheckBillSub_ValueGrid.cs b/WebAPI/Models/QC_OutCompCheckBillSub_ValueGrid.cs
new file mode 100644
index 0000000..0f03350
--- /dev/null
+++ b/WebAPI/Models/QC_OutCompCheckBillSub_ValueGrid.cs
@@ -0,0 +1,20 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Web;
+
+namespace WebAPI.Models
+{
+    public class QC_OutCompCheckBillSub_ValueGrid
+    {
+        public long HInterID { get; set; }
+        public long HEntryID { get; set; }
+        public Int64 HItemID { get; set; }
+        public Int64 HSEQ { get; set; }
+        public String HInSpectResult { get; set; }
+        public double HInSpectValue { get; set; }
+        public Int64 HInSpectValueB { get; set; }
+        public String HInSpectValueT { get; set; }
+
+    }
+}
\ No newline at end of file
diff --git a/WebAPI/Properties/PublishProfiles/JFAPI.pubxml.user b/WebAPI/Properties/PublishProfiles/JFAPI.pubxml.user
index df25814..4c92e8e 100644
--- a/WebAPI/Properties/PublishProfiles/JFAPI.pubxml.user
+++ b/WebAPI/Properties/PublishProfiles/JFAPI.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|2024-12-06T07:08:49.5834939Z;True|2024-12-06T14:31:56.0968616+08:00;False|2024-12-06T14:31:44.2264009+08:00;True|2024-12-06T13:59:52.8150929+08:00;False|2024-12-06T13:48:22.6073939+08:00;True|2024-12-05T17:33:27.9247467+08:00;True|2024-12-05T17:30:23.1740838+08:00;False|2024-12-05T17:30:03.9977311+08:00;True|2024-12-04T15:18:41.4963816+08:00;True|2024-12-04T15:16:45.1121101+08:00;True|2024-12-04T15:14:33.5954776+08:00;True|2024-12-04T15:12:27.2913137+08:00;True|2024-12-04T14:10:19.6190673+08:00;False|2024-12-04T14:10:02.0319713+08:00;True|2024-12-03T16:08:46.6721098+08:00;True|2024-12-03T15:16:04.1754554+08:00;True|2024-12-03T15:13:25.4927626+08:00;True|2024-12-03T14:55:09.4413291+08:00;True|2024-12-03T14:43:11.8243897+08:00;True|2024-12-03T14:29:16.1511932+08:00;True|2024-12-03T14:24:07.9561838+08:00;False|2024-12-03T14:23:55.1293602+08:00;True|2024-12-02T16:31:22.0404862+08:00;False|2024-12-02T16:28:53.1721961+08:00;True|2024-12-02T15:41:24.9462025+08:00;True|2024-12-02T14:12:12.9356193+08:00;False|2024-12-02T14:11:35.7159488+08:00;True|2024-12-02T10:59:31.5582757+08:00;True|2024-11-29T12:08:55.4868083+08:00;False|2024-11-29T12:08:37.0353185+08:00;True|2024-11-28T10:47:27.2071355+08:00;False|2024-11-28T10:47:13.6670955+08:00;True|2024-11-27T15:21:57.6747082+08:00;False|2024-11-27T15:20:07.2403056+08:00;True|2024-11-27T15:13:36.1461091+08:00;True|2024-11-27T14:34:35.5908753+08:00;False|2024-11-27T14:33:30.7118923+08:00;True|2024-11-26T15:16:44.1854927+08:00;True|2024-11-26T15:14:33.4021067+08:00;False|2024-11-26T15:14:07.9955135+08:00;True|2024-11-26T14:48:35.6408418+08:00;True|2024-11-26T14:45:00.7251556+08:00;True|2024-11-26T14:04:58.4232988+08:00;False|2024-11-26T14:04:28.1286675+08:00;True|2024-11-25T13:45:07.6935933+08:00;True|2024-11-25T13:43:59.0788650+08:00;False|2024-11-25T13:43:44.2225194+08:00;True|2024-11-25T08:54:05.5144014+08:00;False|2024-11-25T08:53:49.2284063+08:00;False|2024-11-22T09:53:13.7879664+08:00;True|2024-11-21T13:48:31.7056264+08:00;True|2024-11-21T13:46:55.0891551+08:00;True|2024-11-21T13:44:05.5221110+08:00;True|2024-11-21T13:43:39.1385899+08:00;False|2024-11-21T13:43:19.9351488+08:00;True|2024-11-20T11:33:52.0324053+08:00;True|2024-11-20T11:20:58.4917889+08:00;True|2024-11-20T11:03:46.9552623+08:00;True|2024-11-20T10:45:10.9517109+08:00;False|2024-11-20T10:44:58.3221116+08:00;False|2024-11-19T15:39:27.3889104+08:00;True|2024-11-19T14:42:32.0854561+08:00;True|2024-11-19T14:19:19.6198070+08:00;True|2024-11-19T14:13:08.2003750+08:00;False|2024-11-19T14:12:15.5442850+08:00;True|2024-11-18T13:05:41.0455534+08:00;True|2024-11-18T11:05:30.2819404+08:00;True|2024-11-18T10:51:07.1852818+08:00;False|2024-11-18T10:50:21.5098527+08:00;True|2024-11-18T10:15:38.5429366+08:00;True|2024-11-18T10:00:51.0847524+08:00;True|2024-11-18T09:34:52.1772715+08:00;True|2024-11-18T09:27:23.6013754+08:00;False|2024-11-18T09:26:00.9323551+08:00;True|2024-11-15T11:20:51.7576376+08:00;True|2024-11-15T11:11:17.5580168+08:00;True|2024-11-15T11:03:58.4142996+08:00;True|2024-11-15T10:44:50.5207827+08:00;True|2024-11-15T10:10:05.5550418+08:00;True|2024-11-15T09:49:30.6631382+08:00;False|2024-11-15T09:47:05.3973379+08:00;True|2024-11-14T18:31:54.8247681+08:00;True|2024-11-14T17:14:56.3660185+08:00;True|2024-11-14T16:49:44.7526912+08:00;True|2024-11-14T16:49:09.3427608+08:00;True|2024-11-14T15:59:00.2572264+08:00;True|2024-11-14T11:21:03.5110818+08:00;True|2024-11-14T10:51:10.7864658+08:00;False|2024-11-14T10:50:55.5384248+08:00;True|2024-11-14T10:29:13.6760158+08:00;False|2024-11-14T10:28:09.8622863+08:00;True|2024-11-13T17:48:46.4827219+08:00;True|2024-11-13T17:45:13.0659280+08:00;True|2024-11-13T16:01:55.2278671+08:00;False|2024-11-13T16:01:03.0040446+08:00;True|2024-11-12T17:24:06.3763535+08:00;True|2024-11-12T17:21:51.8459552+08:00;True|2024-11-12T17:11:57.9239909+08:00;True|2024-11-12T17:09:04.4322824+08:00;True|2024-11-12T17:07:12.1839548+08:00;True|2024-11-12T17:04:27.4579152+08:00;True|2024-11-12T17:03:59.6843282+08:00;True|2024-11-12T16:40:44.0714862+08:00;True|2024-11-12T16:36:27.7792764+08:00;True|2024-11-12T16:32:36.5262040+08:00;False|2024-11-12T16:32:23.9550194+08:00;True|2024-11-12T10:58:16.1987697+08:00;False|2024-11-12T10:58:04.8469631+08:00;True|2024-11-11T13:40:53.2582255+08:00;True|2024-11-11T13:37:45.0401833+08:00;True|2024-11-11T12:35:13.2429166+08:00;True|2024-11-11T11:27:29.0530688+08:00;False|2024-11-11T11:27:12.2765506+08:00;True|2024-11-08T15:52:17.1278870+08:00;False|2024-11-08T15:52:04.4379380+08:00;True|2024-11-07T18:27:41.8163960+08:00;False|2024-11-07T18:27:30.6037983+08:00;True|2024-11-06T15:55:27.6450488+08:00;True|2024-11-06T15:54:13.5957004+08:00;True|2024-11-06T15:25:33.3862531+08:00;True|2024-11-06T13:33:57.8502278+08:00;False|2024-11-06T13:33:39.2337086+08:00;True|2024-11-06T11:33:12.6755239+08:00;True|2024-11-05T18:34:17.7048247+08:00;True|2024-11-05T18:30:08.5724471+08:00;True|2024-11-05T18:24:35.5372980+08:00;True|2024-11-05T18:06:29.7644779+08:00;True|2024-11-05T17:53:50.9554703+08:00;True|2024-11-05T17:50:05.6376900+08:00;True|2024-11-05T11:13:46.2906508+08:00;True|2024-11-05T10:35:55.5423834+08:00;False|2024-11-05T10:35:20.4104039+08:00;True|2024-11-01T10:22:05.7636122+08:00;False|2024-11-01T10:21:33.2954398+08:00;True|2024-10-31T20:03:37.9075888+08:00;True|2024-10-31T18:35:31.6618415+08:00;True|2024-10-31T18:34:56.2479021+08:00;True|2024-10-31T09:43:29.0841188+08:00;False|2024-10-31T09:43:04.8780818+08:00;True|2024-10-30T18:42:11.0523067+08:00;True|2024-10-30T18:07:05.5603627+08:00;True|2024-10-30T18:03:15.3516621+08:00;True|2024-10-30T17:58:14.3276504+08:00;False|2024-10-30T17:57:44.5353118+08:00;True|2024-10-30T17:47:41.2889491+08:00;True|2024-10-30T17:19:36.6172721+08:00;True|2024-10-30T17:10:00.4399703+08:00;False|2024-10-30T17:08:57.6500450+08:00;True|2024-10-29T16:58:15.6006676+08:00;True|2024-10-29T16:51:56.8406649+08:00;True|2024-10-29T16:05:48.4297695+08:00;True|2024-10-29T15:12:15.1522377+08:00;True|2024-10-29T15:10:51.8431754+08:00;True|2024-10-29T11:21:01.5660940+08:00;False|2024-10-29T11:20:33.3958980+08:00;True|2024-10-28T17:51:26.7156861+08:00;False|2024-10-28T17:50:41.4388196+08:00;True|2024-10-28T13:34:14.8764262+08:00;True|2024-10-28T12:44:27.2083620+08:00;False|2024-10-28T12:43:57.5942717+08:00;True|2024-10-25T11:49:47.9817458+08:00;True|2024-10-25T11:49:34.4754546+08:00;True|2024-10-25T09:59:35.6471379+08:00;True|2024-10-25T09:47:46.8035540+08:00;True|2024-10-25T09:25:57.7872618+08:00;False|2024-10-25T09:25:30.0950732+08:00;True|2024-10-24T20:39:06.1992535+08:00;False|2024-10-24T20:38:33.1009731+08:00;True|2024-10-24T11:17:46.9974483+08:00;False|2024-10-24T11:17:17.0925356+08:00;True|2024-10-23T19:16:25.5189930+08:00;True|2024-10-23T17:10:44.4267777+08:00;False|2024-10-23T17:10:10.2947971+08:00;True|2024-10-23T14:13:22.6901287+08:00;False|2024-10-23T14:12:24.3997100+08:00;True|2024-10-22T16:25:12.9514711+08:00;False|2024-10-22T16:24:42.9025167+08:00;True|2024-10-22T10:22:33.9932601+08:00;False|2024-10-22T10:22:05.3030308+08:00;True|2024-10-21T17:53:29.9552741+08:00;True|2024-10-21T16:37:31.4159544+08:00;True|2024-10-21T16:35:43.6207036+08:00;True|2024-10-21T16:00:05.5040651+08:00;False|2024-10-21T15:59:35.9279259+08:00;True|2024-10-21T12:06:42.5768961+08:00;False|2024-10-21T12:06:16.6344662+08:00;True|2024-10-18T10:44:02.6495536+08:00;True|2024-10-18T09:55:47.9769914+08:00;True|2024-10-18T09:47:46.6365831+08:00;True|2024-10-18T09:46:40.4036657+08:00;True|2024-10-18T09:44:25.4598960+08:00;True|2024-10-18T09:30:07.6972377+08:00;False|2024-10-18T09:28:18.9251743+08:00;True|2024-10-17T12:13:34.8639685+08:00;True|2024-10-17T12:02:26.5251711+08:00;False|2024-10-17T12:01:31.3822430+08:00;True|2024-10-17T11:49:09.2395208+08:00;False|2024-10-17T11:48:38.0189241+08:00;True|2024-10-16T19:35:29.2047484+08:00;False|2024-10-16T19:32:43.0637947+08:00;True|2024-10-16T11:27:13.1263407+08:00;False|2024-10-16T11:25:49.8688677+08:00;True|2024-10-15T18:26:50.9948482+08:00;False|2024-10-15T18:26:23.6998750+08:00;True|2024-08-26T14:17:37.8502046+08:00;False|2024-08-26T14:16:09.8501361+08:00;True|2024-08-22T11:12:48.4249984+08:00;</History>
+    <History>True|2024-12-11T00:58:41.4567855Z;False|2024-12-11T08:58:09.2160433+08:00;True|2024-12-10T17:25:49.3068154+08:00;True|2024-12-10T17:21:30.0155027+08:00;True|2024-12-10T17:16:56.7587487+08:00;False|2024-12-10T17:16:34.7816611+08:00;True|2024-12-10T16:55:40.3777585+08:00;False|2024-12-10T16:55:13.2621448+08:00;False|2024-12-09T13:59:27.6362265+08:00;True|2024-12-06T16:55:30.6422980+08:00;True|2024-12-06T15:08:49.5834939+08:00;True|2024-12-06T14:31:56.0968616+08:00;False|2024-12-06T14:31:44.2264009+08:00;True|2024-12-06T13:59:52.8150929+08:00;False|2024-12-06T13:48:22.6073939+08:00;True|2024-12-05T17:33:27.9247467+08:00;True|2024-12-05T17:30:23.1740838+08:00;False|2024-12-05T17:30:03.9977311+08:00;True|2024-12-04T15:18:41.4963816+08:00;True|2024-12-04T15:16:45.1121101+08:00;True|2024-12-04T15:14:33.5954776+08:00;True|2024-12-04T15:12:27.2913137+08:00;True|2024-12-04T14:10:19.6190673+08:00;False|2024-12-04T14:10:02.0319713+08:00;True|2024-12-03T16:08:46.6721098+08:00;True|2024-12-03T15:16:04.1754554+08:00;True|2024-12-03T15:13:25.4927626+08:00;True|2024-12-03T14:55:09.4413291+08:00;True|2024-12-03T14:43:11.8243897+08:00;True|2024-12-03T14:29:16.1511932+08:00;True|2024-12-03T14:24:07.9561838+08:00;False|2024-12-03T14:23:55.1293602+08:00;True|2024-12-02T16:31:22.0404862+08:00;False|2024-12-02T16:28:53.1721961+08:00;True|2024-12-02T15:41:24.9462025+08:00;True|2024-12-02T14:12:12.9356193+08:00;False|2024-12-02T14:11:35.7159488+08:00;True|2024-12-02T10:59:31.5582757+08:00;True|2024-11-29T12:08:55.4868083+08:00;False|2024-11-29T12:08:37.0353185+08:00;True|2024-11-28T10:47:27.2071355+08:00;False|2024-11-28T10:47:13.6670955+08:00;True|2024-11-27T15:21:57.6747082+08:00;False|2024-11-27T15:20:07.2403056+08:00;True|2024-11-27T15:13:36.1461091+08:00;True|2024-11-27T14:34:35.5908753+08:00;False|2024-11-27T14:33:30.7118923+08:00;True|2024-11-26T15:16:44.1854927+08:00;True|2024-11-26T15:14:33.4021067+08:00;False|2024-11-26T15:14:07.9955135+08:00;True|2024-11-26T14:48:35.6408418+08:00;True|2024-11-26T14:45:00.7251556+08:00;True|2024-11-26T14:04:58.4232988+08:00;False|2024-11-26T14:04:28.1286675+08:00;True|2024-11-25T13:45:07.6935933+08:00;True|2024-11-25T13:43:59.0788650+08:00;False|2024-11-25T13:43:44.2225194+08:00;True|2024-11-25T08:54:05.5144014+08:00;False|2024-11-25T08:53:49.2284063+08:00;False|2024-11-22T09:53:13.7879664+08:00;True|2024-11-21T13:48:31.7056264+08:00;True|2024-11-21T13:46:55.0891551+08:00;True|2024-11-21T13:44:05.5221110+08:00;True|2024-11-21T13:43:39.1385899+08:00;False|2024-11-21T13:43:19.9351488+08:00;True|2024-11-20T11:33:52.0324053+08:00;True|2024-11-20T11:20:58.4917889+08:00;True|2024-11-20T11:03:46.9552623+08:00;True|2024-11-20T10:45:10.9517109+08:00;False|2024-11-20T10:44:58.3221116+08:00;False|2024-11-19T15:39:27.3889104+08:00;True|2024-11-19T14:42:32.0854561+08:00;True|2024-11-19T14:19:19.6198070+08:00;True|2024-11-19T14:13:08.2003750+08:00;False|2024-11-19T14:12:15.5442850+08:00;True|2024-11-18T13:05:41.0455534+08:00;True|2024-11-18T11:05:30.2819404+08:00;True|2024-11-18T10:51:07.1852818+08:00;False|2024-11-18T10:50:21.5098527+08:00;True|2024-11-18T10:15:38.5429366+08:00;True|2024-11-18T10:00:51.0847524+08:00;True|2024-11-18T09:34:52.1772715+08:00;True|2024-11-18T09:27:23.6013754+08:00;False|2024-11-18T09:26:00.9323551+08:00;True|2024-11-15T11:20:51.7576376+08:00;True|2024-11-15T11:11:17.5580168+08:00;True|2024-11-15T11:03:58.4142996+08:00;True|2024-11-15T10:44:50.5207827+08:00;True|2024-11-15T10:10:05.5550418+08:00;True|2024-11-15T09:49:30.6631382+08:00;False|2024-11-15T09:47:05.3973379+08:00;True|2024-11-14T18:31:54.8247681+08:00;True|2024-11-14T17:14:56.3660185+08:00;True|2024-11-14T16:49:44.7526912+08:00;True|2024-11-14T16:49:09.3427608+08:00;True|2024-11-14T15:59:00.2572264+08:00;True|2024-11-14T11:21:03.5110818+08:00;True|2024-11-14T10:51:10.7864658+08:00;False|2024-11-14T10:50:55.5384248+08:00;True|2024-11-14T10:29:13.6760158+08:00;False|2024-11-14T10:28:09.8622863+08:00;True|2024-11-13T17:48:46.4827219+08:00;True|2024-11-13T17:45:13.0659280+08:00;True|2024-11-13T16:01:55.2278671+08:00;False|2024-11-13T16:01:03.0040446+08:00;True|2024-11-12T17:24:06.3763535+08:00;True|2024-11-12T17:21:51.8459552+08:00;True|2024-11-12T17:11:57.9239909+08:00;True|2024-11-12T17:09:04.4322824+08:00;True|2024-11-12T17:07:12.1839548+08:00;True|2024-11-12T17:04:27.4579152+08:00;True|2024-11-12T17:03:59.6843282+08:00;True|2024-11-12T16:40:44.0714862+08:00;True|2024-11-12T16:36:27.7792764+08:00;True|2024-11-12T16:32:36.5262040+08:00;False|2024-11-12T16:32:23.9550194+08:00;True|2024-11-12T10:58:16.1987697+08:00;False|2024-11-12T10:58:04.8469631+08:00;True|2024-11-11T13:40:53.2582255+08:00;True|2024-11-11T13:37:45.0401833+08:00;True|2024-11-11T12:35:13.2429166+08:00;True|2024-11-11T11:27:29.0530688+08:00;False|2024-11-11T11:27:12.2765506+08:00;True|2024-11-08T15:52:17.1278870+08:00;False|2024-11-08T15:52:04.4379380+08:00;True|2024-11-07T18:27:41.8163960+08:00;False|2024-11-07T18:27:30.6037983+08:00;True|2024-11-06T15:55:27.6450488+08:00;True|2024-11-06T15:54:13.5957004+08:00;True|2024-11-06T15:25:33.3862531+08:00;True|2024-11-06T13:33:57.8502278+08:00;False|2024-11-06T13:33:39.2337086+08:00;True|2024-11-06T11:33:12.6755239+08:00;True|2024-11-05T18:34:17.7048247+08:00;True|2024-11-05T18:30:08.5724471+08:00;True|2024-11-05T18:24:35.5372980+08:00;True|2024-11-05T18:06:29.7644779+08:00;True|2024-11-05T17:53:50.9554703+08:00;True|2024-11-05T17:50:05.6376900+08:00;True|2024-11-05T11:13:46.2906508+08:00;True|2024-11-05T10:35:55.5423834+08:00;False|2024-11-05T10:35:20.4104039+08:00;True|2024-11-01T10:22:05.7636122+08:00;False|2024-11-01T10:21:33.2954398+08:00;True|2024-10-31T20:03:37.9075888+08:00;True|2024-10-31T18:35:31.6618415+08:00;True|2024-10-31T18:34:56.2479021+08:00;True|2024-10-31T09:43:29.0841188+08:00;False|2024-10-31T09:43:04.8780818+08:00;True|2024-10-30T18:42:11.0523067+08:00;True|2024-10-30T18:07:05.5603627+08:00;True|2024-10-30T18:03:15.3516621+08:00;True|2024-10-30T17:58:14.3276504+08:00;False|2024-10-30T17:57:44.5353118+08:00;True|2024-10-30T17:47:41.2889491+08:00;True|2024-10-30T17:19:36.6172721+08:00;True|2024-10-30T17:10:00.4399703+08:00;False|2024-10-30T17:08:57.6500450+08:00;True|2024-10-29T16:58:15.6006676+08:00;True|2024-10-29T16:51:56.8406649+08:00;True|2024-10-29T16:05:48.4297695+08:00;True|2024-10-29T15:12:15.1522377+08:00;True|2024-10-29T15:10:51.8431754+08:00;True|2024-10-29T11:21:01.5660940+08:00;False|2024-10-29T11:20:33.3958980+08:00;True|2024-10-28T17:51:26.7156861+08:00;False|2024-10-28T17:50:41.4388196+08:00;True|2024-10-28T13:34:14.8764262+08:00;True|2024-10-28T12:44:27.2083620+08:00;False|2024-10-28T12:43:57.5942717+08:00;True|2024-10-25T11:49:47.9817458+08:00;True|2024-10-25T11:49:34.4754546+08:00;True|2024-10-25T09:59:35.6471379+08:00;True|2024-10-25T09:47:46.8035540+08:00;True|2024-10-25T09:25:57.7872618+08:00;False|2024-10-25T09:25:30.0950732+08:00;True|2024-10-24T20:39:06.1992535+08:00;False|2024-10-24T20:38:33.1009731+08:00;True|2024-10-24T11:17:46.9974483+08:00;False|2024-10-24T11:17:17.0925356+08:00;True|2024-10-23T19:16:25.5189930+08:00;True|2024-10-23T17:10:44.4267777+08:00;False|2024-10-23T17:10:10.2947971+08:00;True|2024-10-23T14:13:22.6901287+08:00;False|2024-10-23T14:12:24.3997100+08:00;True|2024-10-22T16:25:12.9514711+08:00;False|2024-10-22T16:24:42.9025167+08:00;True|2024-10-22T10:22:33.9932601+08:00;False|2024-10-22T10:22:05.3030308+08:00;True|2024-10-21T17:53:29.9552741+08:00;True|2024-10-21T16:37:31.4159544+08:00;True|2024-10-21T16:35:43.6207036+08:00;True|2024-10-21T16:00:05.5040651+08:00;False|2024-10-21T15:59:35.9279259+08:00;True|2024-10-21T12:06:42.5768961+08:00;False|2024-10-21T12:06:16.6344662+08:00;True|2024-10-18T10:44:02.6495536+08:00;True|2024-10-18T09:55:47.9769914+08:00;True|2024-10-18T09:47:46.6365831+08:00;True|2024-10-18T09:46:40.4036657+08:00;True|2024-10-18T09:44:25.4598960+08:00;True|2024-10-18T09:30:07.6972377+08:00;False|2024-10-18T09:28:18.9251743+08:00;True|2024-10-17T12:13:34.8639685+08:00;True|2024-10-17T12:02:26.5251711+08:00;False|2024-10-17T12:01:31.3822430+08:00;True|2024-10-17T11:49:09.2395208+08:00;False|2024-10-17T11:48:38.0189241+08:00;True|2024-10-16T19:35:29.2047484+08:00;False|2024-10-16T19:32:43.0637947+08:00;True|2024-10-16T11:27:13.1263407+08:00;False|2024-10-16T11:25:49.8688677+08:00;True|2024-10-15T18:26:50.9948482+08:00;False|2024-10-15T18:26:23.6998750+08:00;True|2024-08-26T14:17:37.8502046+08:00;False|2024-08-26T14:16:09.8501361+08:00;True|2024-08-22T11:12:48.4249984+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>12/02/2024 16:31:07</publishTime>
+      <publishTime>12/11/2024 08:58:23</publishTime>
     </File>
     <File Include="bin/BLL.pdb">
-      <publishTime>12/02/2024 16:31:07</publishTime>
+      <publishTime>12/11/2024 08:58:23</publishTime>
     </File>
     <File Include="bin/BouncyCastle.Crypto.dll">
       <publishTime>12/18/2020 05:32:28</publishTime>
     </File>
     <File Include="bin/DAL.dll">
-      <publishTime>12/02/2024 16:31:05</publishTime>
+      <publishTime>12/11/2024 08:58:21</publishTime>
     </File>
     <File Include="bin/DAL.pdb">
-      <publishTime>12/02/2024 16:31:05</publishTime>
+      <publishTime>12/11/2024 08:58:21</publishTime>
     </File>
     <File Include="bin/Dapper.dll">
       <publishTime>07/22/2016 22:52:40</publishTime>
     </File>
     <File Include="bin/DBUtility.dll">
-      <publishTime>12/02/2024 16:31:03</publishTime>
+      <publishTime>12/11/2024 08:58:18</publishTime>
     </File>
     <File Include="bin/DBUtility.pdb">
-      <publishTime>12/02/2024 16:31:03</publishTime>
+      <publishTime>12/11/2024 08:58:18</publishTime>
     </File>
     <File Include="bin/Grpc.Core.Api.dll">
       <publishTime>03/22/2022 13:17:26</publishTime>
@@ -111,10 +111,10 @@
       <publishTime>07/25/2012 19:48:56</publishTime>
     </File>
     <File Include="bin/Model.dll">
-      <publishTime>12/02/2024 16:31:03</publishTime>
+      <publishTime>12/11/2024 08:58:18</publishTime>
     </File>
     <File Include="bin/Model.pdb">
-      <publishTime>12/02/2024 16:31:03</publishTime>
+      <publishTime>12/11/2024 08:58:18</publishTime>
     </File>
     <File Include="bin/Models/ClsSc_MouldScrapOutBillMain.cs">
       <publishTime>05/25/2024 09:46:41</publishTime>
@@ -147,34 +147,34 @@
       <publishTime>10/23/2021 17:07:54</publishTime>
     </File>
     <File Include="bin/Pub_Class.dll">
-      <publishTime>12/02/2024 16:31:01</publishTime>
+      <publishTime>12/11/2024 08:58:16</publishTime>
     </File>
     <File Include="bin/Pub_Class.pdb">
-      <publishTime>12/02/2024 16:31:01</publishTime>
+      <publishTime>12/11/2024 08:58:16</publishTime>
     </File>
     <File Include="bin/Pub_Control.dll">
-      <publishTime>12/02/2024 16:31:02</publishTime>
+      <publishTime>12/11/2024 08:58:17</publishTime>
     </File>
     <File Include="bin/Pub_Control.pdb">
-      <publishTime>12/02/2024 16:31:02</publishTime>
+      <publishTime>12/11/2024 08:58:17</publishTime>
     </File>
     <File Include="bin/RestSharp.dll">
       <publishTime>08/31/2012 06:22:50</publishTime>
     </File>
     <File Include="bin/SQLHelper.dll">
-      <publishTime>12/02/2024 16:31:02</publishTime>
+      <publishTime>12/11/2024 08:58:17</publishTime>
     </File>
     <File Include="bin/SQLHelper.pdb">
-      <publishTime>12/02/2024 16:31:02</publishTime>
+      <publishTime>12/11/2024 08:58:17</publishTime>
     </File>
     <File Include="bin/Swashbuckle.Core.dll">
       <publishTime>02/16/2015 01:57:08</publishTime>
     </File>
     <File Include="bin/SyntacticSugar.dll">
-      <publishTime>12/02/2024 16:27:25</publishTime>
+      <publishTime>12/11/2024 08:57:34</publishTime>
     </File>
     <File Include="bin/SyntacticSugar.pdb">
-      <publishTime>12/02/2024 16:27:32</publishTime>
+      <publishTime>12/11/2024 08:57:34</publishTime>
     </File>
     <File Include="bin/System.Buffers.dll">
       <publishTime>07/19/2017 18:01:28</publishTime>
@@ -285,19 +285,19 @@
       <publishTime>05/09/2023 10:43:40</publishTime>
     </File>
     <File Include="bin/TopSdk.dll">
-      <publishTime>12/02/2024 16:27:07</publishTime>
+      <publishTime>12/11/2024 08:57:37</publishTime>
     </File>
     <File Include="bin/TopSdk.pdb">
-      <publishTime>12/02/2024 16:27:07</publishTime>
+      <publishTime>12/11/2024 08:57:37</publishTime>
     </File>
     <File Include="bin/WebActivatorEx.dll">
       <publishTime>11/24/2014 19:18:48</publishTime>
     </File>
     <File Include="bin/WebAPI.dll">
-      <publishTime>12/06/2024 15:08:09</publishTime>
+      <publishTime>12/11/2024 08:57:58</publishTime>
     </File>
     <File Include="bin/WebAPI.pdb">
-      <publishTime>12/06/2024 15:08:09</publishTime>
+      <publishTime>12/11/2024 08:57:58</publishTime>
     </File>
     <File Include="bin/WebGrease.dll">
       <publishTime>07/18/2013 01:03:52</publishTime>
@@ -492,7 +492,7 @@
       <publishTime>05/25/2024 09:46:41</publishTime>
     </File>
     <File Include="Web.config">
-      <publishTime>12/02/2024 16:31:20</publishTime>
+      <publishTime>12/06/2024 16:55:28</publishTime>
     </File>
   </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/WebAPI/WebAPI.csproj b/WebAPI/WebAPI.csproj
index 47a90a7..f1aa900 100644
--- a/WebAPI/WebAPI.csproj
+++ b/WebAPI/WebAPI.csproj
@@ -827,6 +827,7 @@
     <Compile Include="Models\ClsSc_AssemblyBillSub.cs" />
     <Compile Include="Models\ClsSc_MESBeginWorkBillSub_RelationBill.cs" />
     <Compile Include="Models\Gy_MouldFileSub_SubMater.cs" />
+    <Compile Include="Models\QC_OutCompCheckBillSub_ValueGrid.cs" />
     <Compile Include="Models\SBGL\SBBB\Sb_EquipMentCollectionTechParam_Temp.cs" />
     <Compile Include="Models\SBGL\SBBB\Sb_EquipMentCollectionTechParam.cs" />
     <Compile Include="Models\鍩虹璧勬枡\Gy_ColorClass.cs" />
diff --git a/WebAPI/WebAPI.csproj.user b/WebAPI/WebAPI.csproj.user
index 545fe10..08b2801 100644
--- a/WebAPI/WebAPI.csproj.user
+++ b/WebAPI/WebAPI.csproj.user
@@ -2,7 +2,14 @@
 <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
   <PropertyGroup>
     <LastActiveSolutionConfig>Debug|Any CPU</LastActiveSolutionConfig>
-    <NameOfLastUsedPublishProfile>C:\Users\86130\Desktop\鏅轰簯杩堟�漒MES-WEB-API\WebAPI\Properties\PublishProfiles\FolderProfilewtt.pubxml</NameOfLastUsedPublishProfile>
+    <NameOfLastUsedPublishProfile>D:\鏅轰簯杩堟�漒MES\MES-WEB-API\WebAPI\Properties\PublishProfiles\JFAPI.pubxml</NameOfLastUsedPublishProfile>
+    <UseIISExpress>true</UseIISExpress>
+    <Use64BitIISExpress />
+    <IISExpressSSLPort />
+    <IISExpressAnonymousAuthentication>enabled</IISExpressAnonymousAuthentication>
+    <IISExpressWindowsAuthentication>disabled</IISExpressWindowsAuthentication>
+    <IISExpressUseClassicPipelineMode>false</IISExpressUseClassicPipelineMode>
+    <UseGlobalApplicationHostFile />
   </PropertyGroup>
   <ProjectExtensions>
     <VisualStudio>
diff --git a/sdk_dingding/TopSdk/obj/Debug/TopSdk.csproj.AssemblyReference.cache b/sdk_dingding/TopSdk/obj/Debug/TopSdk.csproj.AssemblyReference.cache
new file mode 100644
index 0000000..d6e21aa
--- /dev/null
+++ b/sdk_dingding/TopSdk/obj/Debug/TopSdk.csproj.AssemblyReference.cache
Binary files differ

--
Gitblit v1.9.1