From ba76af92c90c52823b8140ac3be26fbf69d467bd Mon Sep 17 00:00:00 2001
From: duhe <226547893@qq.com>
Date: 星期三, 18 十二月 2024 10:04:10 +0800
Subject: [PATCH] 1

---
 WebAPI/Properties/PublishProfiles/JFAPI.pubxml.user                  |   44 
 LMES/obj/x86/Release/LMES.csproj.AssemblyReference.cache             |    0 
 WebAPI/Properties/PublishProfiles/FolderProfilewtt.pubxml.user       |   42 
 DAL/仓库管理/ClsKf_SellOutBillForLayUI.cs                                |    2 
 NETERPNoWin/obj/x86/Debug/NETERPNoWin.csproj.AssemblyReference.cache |    0 
 WebAPI/Controllers/条码管理/WEBSController.cs                            |  453 +++++++
 WebAPI/WebAPI.csproj.user                                            |    4 
 WebAPI/Controllers/SCGL/日计划管理/JIT_DayPlanPlatFormImportController.cs |   38 
 WebAPI/Controllers/MJGL/Sc_MouldMaintainRuleBillController.cs        |  375 ++++++
 WebAPI/Controllers/CJGL/Gy_MaterPreventErrMouldBillController.cs     |  418 ++++++
 WebAPI/Controllers/基础资料/基础资料/Gy_SOPBillController.cs                 |   20 
 WebAPI/Controllers/JHGL/Gy_MaterialTechParamBillController.cs        |  483 +++++++
 WebAPI/Controllers/项目管理/工程项目/PM_ProjectBillController.cs             |  109 +
 WebAPI/Controllers/MJGL/Sc_MouldScrapInBillController.cs             |   60 
 WebAPI/Controllers/CGGL/Kf_POStockInBillController.cs                |    2 
 WebAPI/Controllers/MJGL/Sc_MouldProdMoveBillListController.cs        |   57 
 WebAPI/Controllers/Sc_MouldRepairInBillListController.cs             |   57 
 WebAPI/Controllers/WebAPIController.cs                               |   51 
 DAL/信息平台/ClsOA_ErrMsgBackReceiveBill.cs                              |    2 
 Model/工位看板/ClsGy_SOPBillMain.cs                                      |    2 
 DAL/工位看板/ClsGy_SOPBill.cs                                            |    8 
 WebAPI/Controllers/SBGL/Sb_EquipMaintainRuleBillController.cs        |  383 ++++++
 WebAPI/Controllers/SCGL/日计划管理/JIT_DayPlanPlatFormBillController.cs   |   91 +
 WebAPI/Controllers/MJGL/Sc_MouldDotCheckRuleBillController.cs        |  418 ++++++
 WebAPI/Controllers/CJGL/Sc_WorkBeginDotCheckBillController.cs        |  482 +++++++
 WebAPI/Controllers/ReportPlatFormController.cs                       |   22 
 26 files changed, 3,507 insertions(+), 116 deletions(-)

diff --git "a/DAL/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_SellOutBillForLayUI.cs" "b/DAL/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_SellOutBillForLayUI.cs"
index b9f9865..0adbd5f 100644
--- "a/DAL/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_SellOutBillForLayUI.cs"
+++ "b/DAL/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_SellOutBillForLayUI.cs"
@@ -385,7 +385,7 @@
                     "," + omodel.HYear.ToString() + "" +
                     "," + omodel.HPeriod.ToString() + "" +
                     ",'" + this.BillType + "'" +
-                    ",'" + this.HBillSubType + "'" +
+                    ",'" + omodel.HBillSubType + "'" +
                     ",'" + omodel.HRemark + "'" +
                     ",'" + omodel.HMaker + "'" +
                     "," + "getdate()" + "" +
diff --git "a/DAL/\344\277\241\346\201\257\345\271\263\345\217\260/ClsOA_ErrMsgBackReceiveBill.cs" "b/DAL/\344\277\241\346\201\257\345\271\263\345\217\260/ClsOA_ErrMsgBackReceiveBill.cs"
index 484c376..184d550 100644
--- "a/DAL/\344\277\241\346\201\257\345\271\263\345\217\260/ClsOA_ErrMsgBackReceiveBill.cs"
+++ "b/DAL/\344\277\241\346\201\257\345\271\263\345\217\260/ClsOA_ErrMsgBackReceiveBill.cs"
@@ -190,7 +190,7 @@
                 oCn.RunProc(sql);
 
                 //鍙嶉鎺ユ敹鍗曚繚瀛樺悗,鏇存柊寮傚父鍙嶉鍗曠殑鎸囨淳澶勭悊浜�
-                string sql1 = "update OA_ErrMsgBackBillMain set HHandleEmpID='" + omodel.HHandleEmpID.ToString() + "', HBillStatus='14' where HBillNo='" + omodel.HMainSourceBillNo + "' ";
+                string sql1 = "update OA_ErrMsgBackBillMain set HHandleEmpID='" + omodel.HHandleEmpID.ToString() + "', HDescription='"+omodel.HDescription.ToString()+"',HBillStatus='14' where HBillNo='" + omodel.HMainSourceBillNo + "' ";
                 oCn.RunProc(sql1);               
                 //=========================淇濆瓨鍚庢帶鍒�  
                 DataSet ds2 = oCn.RunProcReturn("Exec h_p_OA_ErrMsgBackReceiveBill_AfterSaveCtrl " + omodel.HInterID.ToString() + ", '" + omodel.HBillNo + "',1 ", "h_p_OA_ErrMsgBackReceiveBill_AfterSaveCtrl");
diff --git "a/DAL/\345\267\245\344\275\215\347\234\213\346\235\277/ClsGy_SOPBill.cs" "b/DAL/\345\267\245\344\275\215\347\234\213\346\235\277/ClsGy_SOPBill.cs"
index 1c0c52b..4e50afa 100644
--- "a/DAL/\345\267\245\344\275\215\347\234\213\346\235\277/ClsGy_SOPBill.cs"
+++ "b/DAL/\345\267\245\344\275\215\347\234\213\346\235\277/ClsGy_SOPBill.cs"
@@ -52,7 +52,7 @@
                 ",HUpDater='" + omodel.HUpDater + "'" +
                 ",HUpDateDate='" + omodel.HUpDateDate + "'" +
                 ",HRemark='" + omodel.HRemark + "'" +
-
+                ",HType='" + omodel.HType + "'" +
 
                 " where HInterID=" + lngBillKey.ToString());
                 //鍒犻櫎鍏宠仈
@@ -100,12 +100,12 @@
                 oCn.RunProc("Insert Into Gy_SOPBillMain   " +
                 "(HBillType,HInterID,HBillNo,HDate" +
                 ",HYear,HPeriod,HRemark,HMaker,Hmakedate,HMaterID,HName,HMaterTypeID" +
-                ",HUnitID,HMaterNumber,HUnitNumber,HStandard" +
+                ",HUnitID,HMaterNumber,HUnitNumber,HStandard,HType" +
                 ") " +
                 " values('" + this.BillType + "'," + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "','" + omodel.HDate + "'" +
                 "," + omodel.HYear.ToString() + "," + omodel.HPeriod.ToString() + ",'" + omodel.HRemark + "','" + DBUtility.ClsPub.CurUserName + "',getdate()," + omodel.HMaterID.ToString() + ",'" + omodel.HName + "'," + omodel.HMaterTypeID.ToString() +
-                "," + omodel.HUnitID.ToString() + ",'" + omodel.HMaterNumber + "','" + omodel.HUnitNumber + "'," + DBUtility.ClsPub.BoolToString(omodel.HStandard) +
-                ") ");
+                "," + omodel.HUnitID.ToString() + ",'" + omodel.HMaterNumber + "','" + omodel.HUnitNumber + "','" + DBUtility.ClsPub.BoolToString(omodel.HStandard) + "','" + omodel.HType +
+                "') ");
                 //鎻掑叆瀛愯〃
                 foreach (Model.ClsGy_SOPBillSub oSub in DetailColl)
                 {
diff --git a/LMES/obj/x86/Release/LMES.csproj.AssemblyReference.cache b/LMES/obj/x86/Release/LMES.csproj.AssemblyReference.cache
index 2d02d1d..aa79863 100644
--- a/LMES/obj/x86/Release/LMES.csproj.AssemblyReference.cache
+++ b/LMES/obj/x86/Release/LMES.csproj.AssemblyReference.cache
Binary files differ
diff --git "a/Model/\345\267\245\344\275\215\347\234\213\346\235\277/ClsGy_SOPBillMain.cs" "b/Model/\345\267\245\344\275\215\347\234\213\346\235\277/ClsGy_SOPBillMain.cs"
index 0a199aa..8713cc7 100644
--- "a/Model/\345\267\245\344\275\215\347\234\213\346\235\277/ClsGy_SOPBillMain.cs"
+++ "b/Model/\345\267\245\344\275\215\347\234\213\346\235\277/ClsGy_SOPBillMain.cs"
@@ -16,8 +16,8 @@
         public bool HUseFlag;       //---使用标记
         public string HUseMan;      //---启用人
         public DateTime HUseDate;   //---启用日期
+        public string HType;   //---类型
 
- 
 
     }
 }
diff --git a/NETERPNoWin/obj/x86/Debug/NETERPNoWin.csproj.AssemblyReference.cache b/NETERPNoWin/obj/x86/Debug/NETERPNoWin.csproj.AssemblyReference.cache
index 6fcb71d..c00e8f1 100644
--- a/NETERPNoWin/obj/x86/Debug/NETERPNoWin.csproj.AssemblyReference.cache
+++ b/NETERPNoWin/obj/x86/Debug/NETERPNoWin.csproj.AssemblyReference.cache
Binary files differ
diff --git a/WebAPI/Controllers/CGGL/Kf_POStockInBillController.cs b/WebAPI/Controllers/CGGL/Kf_POStockInBillController.cs
index ce23fc9..51816bb 100644
--- a/WebAPI/Controllers/CGGL/Kf_POStockInBillController.cs
+++ b/WebAPI/Controllers/CGGL/Kf_POStockInBillController.cs
@@ -282,7 +282,7 @@
 	                    ,HAddress,HSupID,HCurID,HWHID,HEmpID,HManagerID,HSecManagerID,HKeeperID,HDeptID,HExplanation,HRemark
                         ,HInnerBillNo,HSTOCKORGID,HOWNERID,HMaker,HMakeDate,HProjectID,HInvoiceBillNo)
                         values(" + HInterID + "," + DateTime.Now.Year + "," + DateTime.Now.Month + ",'" + 1201 + "','" +
-                    1201 + "','" + HDate + "','" + HBillNo + "','" + HBillStatus + "','" + HAddress +
+                    HBillSubType + "','" + HDate + "','" + HBillNo + "','" + HBillStatus + "','" + HAddress +
                     "'," + HSupID + "," + HCurID + "," + HWHID + "," + HEmpID + "," + HManagerID + "," + 
                     HSecManagerID + ","+ HKeeperID +"," + HDeptID + ",'" + HExplanation + "','" + HRemark
                     + "','" + HInnerBillNo + "'," + HSTOCKORGID + "," + HOWNERID + ",'" + HMaker + "',getdate(),"+ HProjectID + ",'"+ HInvoiceBillNo + "')";
diff --git a/WebAPI/Controllers/CJGL/Gy_MaterPreventErrMouldBillController.cs b/WebAPI/Controllers/CJGL/Gy_MaterPreventErrMouldBillController.cs
index c02545a..63ec32a 100644
--- a/WebAPI/Controllers/CJGL/Gy_MaterPreventErrMouldBillController.cs
+++ b/WebAPI/Controllers/CJGL/Gy_MaterPreventErrMouldBillController.cs
@@ -10,7 +10,9 @@
 using System.Web.Http;
 using System.Windows.Forms;
 using WebAPI.Models;
-
+using WebAPI.Controllers.SCGL.鏃ヨ鍒掔鐞�;
+using System.IO;
+using SyntacticSugar.constant;
 namespace WebAPI.Controllers.CJGL
 {
     public class Gy_MaterPreventErrMouldBillController : ApiController
@@ -815,6 +817,420 @@
         }
         #endregion     
 
+
+        #region 浜у搧闃查敊楠岃瘉娓呭崟 鏂囦欢瀵煎叆淇濆瓨
+        #region 浜у搧闃查敊楠岃瘉娓呭崟 鏂囦欢涓婁紶
+        [Route("Gy_MaterPreventErrMouldBill/Gy_MaterPreventErrMouldBill_Excel")]
+        [HttpPost]
+        public object Gy_MaterPreventErrMouldBill_Excel()
+        {
+            try
+            {
+                //鑾峰彇鏂囦欢鍚嶇О
+                var file = HttpContext.Current.Request.Files[0];
+                //鑾峰彇鏂囦欢鐗╃悊璺緞
+                string ExcelPath = HttpContext.Current.Server.MapPath("~/" + file.FileName);
+                //淇濆瓨鏂囦欢
+                file.SaveAs(ExcelPath);
+
+                NpoiHelper np = new NpoiHelper();
+                DataSet ExcelDs = np.ReadExcel(ExcelPath, 1, 1, "0");
+
+                //鍒犻櫎鏂囦欢
+                File.Delete(ExcelPath);
+
+                //鍒涘缓涓存椂琛�
+                DataTable tb2 = new DataTable("dt2");
+
+                //娣诲姞鍒楀悕
+                for (int i = 0; i < ExcelDs.Tables[0].Columns.Count; i++)
+                {
+                    tb2.Columns.Add(ExcelDs.Tables[0].Rows[0][i].ToString());
+                }
+
+                //妯℃澘缂哄皯鍒� 浣嗛渶瑕佷粠鏁版嵁搴撲腑鏌ヨ鍑烘潵鏄剧ず鍦ㄩ〉闈㈢殑瀛楁
+                tb2.Columns.Add("HOrgID", typeof(Int32));//缁勭粐ID
+                tb2.Columns.Add("HMaterID", typeof(Int32));//鐗╂枡ID
+                tb2.Columns.Add("HProcID", typeof(Int32));//宸ュ簭ID
+                tb2.Columns.Add("HPreventErrMouldID", typeof(Int32));//闃查敊瑁呯疆ID
+                //娣诲姞鏁版嵁
+                for (int i = 1; i < ExcelDs.Tables[0].Rows.Count; i++)
+                {
+                    DataRow row = tb2.NewRow();
+                    for (int j = 0; j < ExcelDs.Tables[0].Columns.Count; j++)
+                    {
+                        row[j] = ExcelDs.Tables[0].Rows[i][j].ToString();
+                    }
+                    tb2.Rows.Add(row);
+                }
+
+
+                var error = "";
+
+                //鏌ヨ娌℃湁鐨勫垪
+                if (!tb2.Columns.Contains("缁勭粐浠g爜"))
+                    error += "娌℃湁鎵惧埌銆愮粍缁囦唬鐮併�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("缁勭粐鍚嶇О"))
+                    error += "娌℃湁鎵惧埌銆愮粍缁囧悕绉般�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("鍗曟嵁鍙�"))
+                    error += "娌℃湁鎵惧埌銆愬崟鎹彿銆戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("鐗╂枡浠g爜"))
+                    error += "娌℃湁鎵惧埌銆愮墿鏂欎唬鐮併�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("鐗╂枡鍚嶇О"))
+                    error += "娌℃湁鎵惧埌銆愮墿鏂欏悕绉般�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("宸ュ簭浠g爜"))
+                    error += "娌℃湁鎵惧埌銆愬伐搴忎唬鐮併�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("宸ュ簭鍚嶇О"))
+                    error += "娌℃湁鎵惧埌銆愬伐搴忓悕绉般�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("澶囨敞"))
+                    error += "娌℃湁鎵惧埌銆愬娉ㄣ�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("闃查敊瑁呯疆浠g爜"))
+                    error += "娌℃湁鎵惧埌銆愰槻閿欒缃唬鐮併�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("闃查敊瑁呯疆鍚嶇О"))
+                    error += "娌℃湁鎵惧埌銆愰槻閿欒缃悕绉般�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("闃查敊鍔熻兘"))
+                    error += "娌℃湁鎵惧埌銆愰槻閿欏姛鑳姐�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("澶辨晥妯″紡"))
+                    error += "娌℃湁鎵惧埌銆愬け鏁堟ā寮忋�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("澶辨晥楠岃瘉鏂规硶"))
+                    error += "娌℃湁鎵惧埌銆愬け鏁堥獙璇佹柟娉曘�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("琛ㄤ綋澶囨敞"))
+                    error += "娌℃湁鎵惧埌銆愯〃浣撳娉ㄣ�戠殑鏍囬,";
+
+                if (error.Length > 0)
+                {
+                    objJsonResult.code = CodeConstant.FAIL;
+                    objJsonResult.count = CountConstant.FAIL;
+                    objJsonResult.Message = $"Excel妯℃澘瀛樺湪閿欒,{error}\r\n";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                for (int i = 0; i <= tb2.Rows.Count - 1; i++)
+                {
+                    string HBillNo = "";
+                    string HORGNumber = "";
+                    string HORGName = "";
+                    string HMaterName = "";
+                    string HMaterNumber = "";
+                    string HProcNumber = "";
+                    string HProcName = "";
+                    string HPreventErrMouldName = "";
+                    string HPreventErrMouldNumber = "";
+                    
+
+                    HBillNo = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["鍗曟嵁鍙�"].ToString());
+                    HORGNumber = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["缁勭粐浠g爜"].ToString());
+                    HORGName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["缁勭粐鍚嶇О"].ToString());
+                    HMaterName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["鐗╂枡鍚嶇О"].ToString());
+                    HMaterNumber = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["鐗╂枡浠g爜"].ToString());
+                    HProcName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["宸ュ簭鍚嶇О"].ToString());
+                    HProcNumber = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["宸ュ簭浠g爜"].ToString());
+                    HPreventErrMouldName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["闃查敊瑁呯疆鍚嶇О"].ToString());
+                    HPreventErrMouldNumber = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["闃查敊瑁呯疆浠g爜"].ToString());
+
+                    //妫�鏌�
+                    int index = i + 1;
+                    //缁勭粐
+                    if (HORGNumber != "")
+                    {
+                        //鏌ヨ缁勭粐
+                        ds = oCN.RunProcReturn("select * from Xt_ORGANIZATIONS where  HNumber='" + HORGNumber + "' and Hname='" + HORGName + "'", "Xt_ORGANIZATIONS");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = CodeConstant.FAIL;
+                            objJsonResult.count = CountConstant.FAIL;
+                            objJsonResult.Message = "绗�" + index + "琛�,缁勭粐涓嶅瓨鍦紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HOrgID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+                        string HORGid = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                    }
+                    else
+                    {
+                        objJsonResult.code = CodeConstant.FAIL;
+                        objJsonResult.count = CountConstant.FAIL;
+                        objJsonResult.Message = "绗�" + index + "琛�,缁勭粐浠g爜涓虹┖";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    //鐗╂枡浠g爜
+                    if (HMaterNumber != "")
+                    {
+                        //鏌ヨ鐗╂枡
+                        ds = oCN.RunProcReturn("select * from Gy_Material where  HNumber='" + HMaterNumber + "' and Hname='" + HMaterName + "'", "Gy_Maintain");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = CodeConstant.FAIL;
+                            objJsonResult.count = CountConstant.FAIL;
+                            objJsonResult.Message = "绗�" + index + "琛�,鐗╂枡涓嶅瓨鍦紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HMaterID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+                    }
+                    else
+                    {
+                        objJsonResult.code = CodeConstant.FAIL;
+                        objJsonResult.count = CountConstant.FAIL;
+                        objJsonResult.Message = "绗�" + index + "琛�,鐗╂枡浠g爜涓虹┖";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    //宸ュ簭浠g爜
+                    if (HProcNumber != "")
+                    {
+                        //鏌ヨ宸ュ簭
+                        ds = oCN.RunProcReturn("select * from Gy_Process where  HNumber='" + HProcNumber + "' and Hname='" + HProcName + "'", "Gy_Process");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = CodeConstant.FAIL;
+                            objJsonResult.count = CountConstant.FAIL;
+                            objJsonResult.Message = "绗�" + index + "琛�,宸ュ簭涓嶅瓨鍦紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HProcID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+                    }
+                    //else
+                    //{
+                    //    objJsonResult.code = CodeConstant.FAIL;
+                    //    objJsonResult.count = CountConstant.FAIL;
+                    //    objJsonResult.Message = "绗�" + index + "琛�,宸ュ簭浠g爜涓虹┖";
+                    //    objJsonResult.data = null;
+                    //    return objJsonResult;
+                    //}
+                    
+                    //闃查敊瑁呯疆
+                    if (HPreventErrMouldNumber != "")
+                    {
+                        ds = oCN.RunProcReturn("select * from Gy_PreventErrMould where  HNumber='" + HPreventErrMouldNumber + "' and Hname='" + HPreventErrMouldName + "'", "Gy_PreventErrMould");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = CodeConstant.FAIL;
+                            objJsonResult.count = CountConstant.FAIL;
+                            objJsonResult.Message = "绗�" + index + "琛�,闃查敊瑁呯疆涓嶅瓨鍦紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HPreventErrMouldID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+                    }
+                    else
+                    {
+                        objJsonResult.code = CodeConstant.FAIL;
+                        objJsonResult.count = CountConstant.FAIL;
+                        objJsonResult.Message = "绗�" + index + "琛�,闃查敊瑁呯疆浠g爜涓虹┖";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    //鍗曟嵁鍙�
+                    if (HBillNo == "")
+                    {
+                        objJsonResult.code = CodeConstant.FAIL;
+                        objJsonResult.count = CountConstant.FAIL;
+                        objJsonResult.Message = "绗�" + index + "琛�,鍗曟嵁鍙蜂笉鑳戒负绌猴紒";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+
+                objJsonResult.code = CodeConstant.SUCCEED;
+                objJsonResult.count = CountConstant.SUCCEED;
+                objJsonResult.Message = error;
+                objJsonResult.data = tb2;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = CodeConstant.FAIL;
+                objJsonResult.count = CountConstant.FAIL;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 浜у搧闃查敊楠岃瘉娓呭崟椤圭洰 瀵煎叆(淇濆瓨)
+        [Route("Gy_MaterPreventErrMouldBill/Gy_MaterPreventErrMouldBill_btnSave")]
+        [HttpPost]
+        public object Gy_MaterPreventErrMouldBill_btnSave([FromBody] JObject sMainSub)
+        {
+            var _value = sMainSub["sMainSub"].ToString();
+            string msg1 = _value.ToString();
+            string[] sArray = msg1.Split(new string[] { "&鍜�" }, StringSplitOptions.RemoveEmptyEntries);
+            string msg2 = sArray[0].ToString();
+            string user = sArray[1].ToString();
+            try
+            {
+                if (!DBUtility.ClsPub.Security_Log("Gy_MaterPreventErrMouldBillMain_Edit", 1, false, user))
+                {
+                    objJsonResult.code = CodeConstant.FAIL;
+                    objJsonResult.count = CountConstant.FAIL;
+                    objJsonResult.Message = "鏃犱繚瀛樻潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                List<object> Excel = Newtonsoft.Json.JsonConvert.DeserializeObject<List<object>>(msg2);
+                List<Dictionary<string, string>> list = new List<Dictionary<string, string>>();
+
+                foreach (JObject item in Excel)
+                {
+                    Dictionary<string, string> dic = new Dictionary<string, string>();
+                    foreach (var itm in item.Properties())
+                    {
+                        dic.Add(itm.Name, itm.Value.ToString());
+                    }
+                    list.Add(dic);
+                }
+
+                oCN.BeginTran();
+                int i = 1;
+                foreach (Dictionary<string, string> item in list)
+                {
+                    string HBillType = "7516";
+                    string HMaker = user;//鍒跺崟浜�
+                    DateTime HDate = DBUtility.ClsPub.isDate(DateTime.Now.ToString("yyyy-MM-dd"));//  --鏃ユ湡
+                    long HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year);
+                    long HPeriod = DBUtility.ClsPub.isLong(DateTime.Now.Month);
+                    string HOrgID = item["HOrgID"].ToString();//缁勭粐ID
+                    string HBillNo = item["鍗曟嵁鍙�"].ToString();
+                    string HMaterID = item["HMaterID"].ToString() == "" ? "0" : item["HMaterID"].ToString();
+                    string HProcID = item["HProcID"].ToString() == "" ? "0" : item["HProcID"].ToString();
+                    string HRemark = item["澶囨敞"].ToString();
+                    //瀛愯〃
+                    string HPreventErrMouldID = item["HPreventErrMouldID"].ToString() == "" ? "0" : item["HPreventErrMouldID"].ToString();
+                    string HSubRemark = item["琛ㄤ綋澶囨敞"].ToString();
+                    string HPreventErrNote = item["闃查敊鍔熻兘"].ToString();
+                    string HLoseMode = item["澶辨晥妯″紡"].ToString();
+                    string HLoseCheck = item["澶辨晥楠岃瘉鏂规硶"].ToString();
+
+                    ds = oCN.RunProcReturn("select * from Gy_MaterPreventErrMouldBillMain where HBillNo='" + HBillNo + "'", "Gy_MaterPreventErrMouldBillMain");
+
+                    if (ds.Tables[0].Rows.Count == 0)
+                    {
+                        long HInterID = DBUtility.ClsPub.CreateBillID(HBillType, ref DBUtility.ClsPub.sExeReturnInfo);
+                        //鎻掑叆涓昏〃
+                        oCN.RunProc("insert into Gy_MaterPreventErrMouldBillMain" +
+                        "(HYear,HPeriod,HBillType,HBillSubType,HInterID,HDate,HBillNo,HRemark,HMaker,HMakeDate" +
+                        ",HMaterID,HProcID) " +
+                        "values(" +
+                        "" + (HYear.ToString() != "0" ? HYear.ToString() : DateTime.Now.Year.ToString()) +
+                        "," + HPeriod.ToString() +
+                        ",'" + HBillType +
+                        "','" + HBillType +
+                        "'," + HInterID +
+                        ",'" + HDate +
+                        "','" + HBillNo +
+                        "','" + HRemark +
+                        "','" + user +
+                        "'," +"getdate()" +
+                        ",'" + HMaterID +
+                            "','" + HProcID +
+                        "')");
+                        //鎻掑叆瀛愯〃
+                        oCN.RunProc("insert into Gy_MaterPreventErrMouldBillSub " +
+                        "(HInterID,HEntryID,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRemark" +
+                        ",HPreventErrMouldID,HPreventErrNote,HLoseMode,HLoseCheck) " +
+                        " values(" +
+                        "" + HInterID.ToString() +
+                        "," + 1 +
+                        "," + 0 +
+                        "," + 0 +
+                        ",'" + "" +
+                        "','" + "" +
+                        "','" + HSubRemark +
+                        "','" + HPreventErrMouldID +
+                        "','" + HPreventErrNote +
+                        "','" + HLoseMode +
+                        "','" + HLoseCheck +
+                        "')");
+                    }
+                    else
+                    {
+                        long HInterID = long.Parse(ds.Tables[0].Rows[0]["HInterID"].ToString());
+                        //鑾峰彇鏈�澶у瓙id
+                        DataSet ds2 = oCN.RunProcReturn("select max(HEntryID) HEntryID from Gy_MaterPreventErrMouldBillSub where HInterID='" + HInterID + "'", "Gy_MaterPreventErrMouldBillSub");
+                        long HEntryID = 1;
+                        if (ds2.Tables[0].Rows.Count > 0)
+                        {
+                            HEntryID = long.Parse(ds2.Tables[0].Rows[0]["HEntryID"].ToString()) + 1;
+                        }
+                        //鎻掑叆瀛愯〃
+                        oCN.RunProc("insert into Gy_MaterPreventErrMouldBillSub " +
+                        "(HInterID,HEntryID,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRemark" +
+                        ",HPreventErrMouldID,HPreventErrNote,HLoseMode,HLoseCheck) " +
+                        " values(" +
+                        "" + HInterID.ToString() +
+                        "," + HEntryID +
+                        "," + 0 +
+                        "," + 0 +
+                        ",'" + "" +
+                        "','" + "" +
+                        "','" + HSubRemark +
+                        "','" + HPreventErrMouldID +
+                        "','" + HPreventErrNote +
+                        "','" + HLoseMode +
+                        "','" + HLoseCheck +
+                        "')");
+                    }
+
+                    i++;
+                }
+
+                oCN.Commit();
+
+                objJsonResult.code = CodeConstant.SUCCEED;
+                objJsonResult.count = CountConstant.SUCCEED;
+                objJsonResult.Message = "瀵煎叆鎴愬姛!";
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                LogService.Write(e);
+                oCN.RollBack();
+                objJsonResult.code = CodeConstant.FAIL;
+                objJsonResult.count = CountConstant.FAIL;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+        #endregion
+
         #region 鐜妫�娴嬮」鐩� 鏌ヨ       
         [Route("Gy_MaterPreventErrMouldBill/get锘縂y_EnvironmentTestSchemeBillMainList")]
         [HttpGet]
diff --git a/WebAPI/Controllers/CJGL/Sc_WorkBeginDotCheckBillController.cs b/WebAPI/Controllers/CJGL/Sc_WorkBeginDotCheckBillController.cs
index 1315f90..79861b9 100644
--- a/WebAPI/Controllers/CJGL/Sc_WorkBeginDotCheckBillController.cs
+++ b/WebAPI/Controllers/CJGL/Sc_WorkBeginDotCheckBillController.cs
@@ -10,7 +10,9 @@
 using System.Web.Http;
 using System.Windows.Forms;
 using WebAPI.Models;
-
+using WebAPI.Controllers.SCGL.鏃ヨ鍒掔鐞�;
+using System.IO;
+using SyntacticSugar.constant;
 namespace WebAPI.Controllers.CJGL
 {
     public class Sc_WorkBeginDotCheckBillController : ApiController
@@ -1656,5 +1658,483 @@
             }
         }
         #endregion
+
+        #region 璁惧鍚姩鐐规娓呭崟 鏂囦欢瀵煎叆淇濆瓨
+        #region 璁惧鍚姩鐐规娓呭崟 鏂囦欢涓婁紶
+        [Route("Sc_WorkBeginDotCheckBill/Sc_WorkBeginDotCheckBill_Excel")]
+        [HttpPost]
+        public object Sc_WorkBeginDotCheckBill_Excel()
+        {
+            try
+            {
+                //鑾峰彇鏂囦欢鍚嶇О
+                var file = HttpContext.Current.Request.Files[0];
+                //鑾峰彇鏂囦欢鐗╃悊璺緞
+                string ExcelPath = HttpContext.Current.Server.MapPath("~/" + file.FileName);
+                //淇濆瓨鏂囦欢
+                file.SaveAs(ExcelPath);
+
+                NpoiHelper np = new NpoiHelper();
+                DataSet ExcelDs = np.ReadExcel(ExcelPath, 1, 1, "0");
+
+                //鍒犻櫎鏂囦欢
+                File.Delete(ExcelPath);
+
+                //鍒涘缓涓存椂琛�
+                DataTable tb2 = new DataTable("dt2");
+
+                //娣诲姞鍒楀悕
+                for (int i = 0; i < ExcelDs.Tables[0].Columns.Count; i++)
+                {
+                    tb2.Columns.Add(ExcelDs.Tables[0].Rows[0][i].ToString());
+                }
+
+                //妯℃澘缂哄皯鍒� 浣嗛渶瑕佷粠鏁版嵁搴撲腑鏌ヨ鍑烘潵鏄剧ず鍦ㄩ〉闈㈢殑瀛楁
+                tb2.Columns.Add("HOrgID", typeof(Int32));//缁勭粐ID
+                tb2.Columns.Add("HMaterID", typeof(Int32));//鐗╂枡ID
+                tb2.Columns.Add("HProcID", typeof(Int32));//宸ュ簭ID
+                tb2.Columns.Add("HSourceID", typeof(Int32));//鐢熶骇璧勬簮ID
+                tb2.Columns.Add("HCheckNoteItemID", typeof(Int32));//妫�鏌ラ」鐩甀D
+                tb2.Columns.Add("HCheckPostID", typeof(Int32));//宀椾綅ID
+                //娣诲姞鏁版嵁
+                for (int i = 1; i < ExcelDs.Tables[0].Rows.Count; i++)
+                {
+                    DataRow row = tb2.NewRow();
+                    for (int j = 0; j < ExcelDs.Tables[0].Columns.Count; j++)
+                    {
+                        row[j] = ExcelDs.Tables[0].Rows[i][j].ToString();
+                    }
+                    tb2.Rows.Add(row);
+                }
+
+
+                var error = "";
+
+                //鏌ヨ娌℃湁鐨勫垪
+                if (!tb2.Columns.Contains("缁勭粐浠g爜"))
+                    error += "娌℃湁鎵惧埌銆愮粍缁囦唬鐮併�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("缁勭粐鍚嶇О"))
+                    error += "娌℃湁鎵惧埌銆愮粍缁囧悕绉般�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("鍗曟嵁鍙�"))
+                    error += "娌℃湁鎵惧埌銆愬崟鎹彿銆戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("鐗╂枡浠g爜"))
+                    error += "娌℃湁鎵惧埌銆愮墿鏂欎唬鐮併�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("鐗╂枡鍚嶇О"))
+                    error += "娌℃湁鎵惧埌銆愮墿鏂欏悕绉般�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("宸ュ簭浠g爜"))
+                    error += "娌℃湁鎵惧埌銆愬伐搴忎唬鐮併�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("宸ュ簭鍚嶇О"))
+                    error += "娌℃湁鎵惧埌銆愬伐搴忓悕绉般�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("鐢熶骇璧勬簮浠g爜"))
+                    error += "娌℃湁鎵惧埌銆愮敓浜ц祫婧愪唬鐮併�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("鐢熶骇璧勬簮鍚嶇О"))
+                    error += "娌℃湁鎵惧埌銆愮敓浜ц祫婧愬悕绉般�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("璁板綍浜嬮」"))
+                    error += "娌℃湁鎵惧埌銆愯褰曚簨椤广�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("澶囨敞"))
+                    error += "娌℃湁鎵惧埌銆愬娉ㄣ�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("妫�鏌ラ」鐩唬鐮�"))
+                    error += "娌℃湁鎵惧埌銆愭鏌ラ」鐩唬鐮併�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("妫�鏌ラ」鐩悕绉�"))
+                    error += "娌℃湁鎵惧埌銆愭鏌ラ」鐩悕绉般�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("宀椾綅浠g爜"))
+                    error += "娌℃湁鎵惧埌銆愬矖浣嶄唬鐮併�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("宀椾綅鍚嶇О"))
+                    error += "娌℃湁鎵惧埌銆愬矖浣嶅悕绉般�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("琛ㄤ綋澶囨敞"))
+                    error += "娌℃湁鎵惧埌銆愯〃浣撳娉ㄣ�戠殑鏍囬,";
+
+                if (error.Length > 0)
+                {
+                    objJsonResult.code = CodeConstant.FAIL;
+                    objJsonResult.count = CountConstant.FAIL;
+                    objJsonResult.Message = $"Excel妯℃澘瀛樺湪閿欒,{error}\r\n";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                for (int i = 0; i <= tb2.Rows.Count - 1; i++)
+                {
+                    string HBillNo = "";
+                    string HORGNumber = "";
+                    string HORGName = "";
+                    string HMaterName = "";
+                    string HMaterNumber = "";
+                    string HProcNumber = "";
+                    string HProcName = "";
+                    string HSourceNumber = "";
+                    string HSourceName = "";
+                    string HCheckNoteItemNumber = "";
+                    string HCheckNoteItemName = "";
+                    string HCheckPostNumber = "";
+                    string HCheckPostName = "";
+
+                    HBillNo = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["鍗曟嵁鍙�"].ToString());
+                    HORGNumber = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["缁勭粐浠g爜"].ToString());
+                    HORGName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["缁勭粐鍚嶇О"].ToString());
+                    HMaterName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["鐗╂枡鍚嶇О"].ToString());
+                    HMaterNumber = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["鐗╂枡浠g爜"].ToString());
+                    HProcName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["宸ュ簭鍚嶇О"].ToString());
+                    HProcNumber = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["宸ュ簭浠g爜"].ToString());
+                    HSourceName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["鐢熶骇璧勬簮鍚嶇О"].ToString());
+                    HSourceNumber = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["鐢熶骇璧勬簮浠g爜"].ToString());
+                    HCheckNoteItemName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["妫�鏌ラ」鐩悕绉�"].ToString());
+                    HCheckNoteItemNumber = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["妫�鏌ラ」鐩唬鐮�"].ToString());
+                    HCheckPostName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["宀椾綅鍚嶇О"].ToString());
+                    HCheckPostNumber = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["宀椾綅浠g爜"].ToString());
+
+                    //妫�鏌�
+                    int index = i + 1;
+                    //缁勭粐
+                    if (HORGNumber != "")
+                    {
+                        //鏌ヨ缁勭粐
+                        ds = oCN.RunProcReturn("select * from Xt_ORGANIZATIONS where  HNumber='" + HORGNumber + "' and Hname='" + HORGName + "'", "Xt_ORGANIZATIONS");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = CodeConstant.FAIL;
+                            objJsonResult.count = CountConstant.FAIL;
+                            objJsonResult.Message = "绗�" + index + "琛�,缁勭粐涓嶅瓨鍦紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HOrgID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+                        string HORGid = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                    }
+                    else
+                    {
+                        objJsonResult.code = CodeConstant.FAIL;
+                        objJsonResult.count = CountConstant.FAIL;
+                        objJsonResult.Message = "绗�" + index + "琛�,缁勭粐浠g爜涓虹┖";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    //鐗╂枡浠g爜
+                    if (HMaterNumber != "")
+                    {
+                        //鏌ヨ鐗╂枡
+                        ds = oCN.RunProcReturn("select * from Gy_Material where  HNumber='" + HMaterNumber + "' and Hname='" + HMaterName + "'", "Gy_Maintain");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = CodeConstant.FAIL;
+                            objJsonResult.count = CountConstant.FAIL;
+                            objJsonResult.Message = "绗�" + index + "琛�,鐗╂枡涓嶅瓨鍦紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HMaterID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+                    }
+                    else
+                    {
+                        objJsonResult.code = CodeConstant.FAIL;
+                        objJsonResult.count = CountConstant.FAIL;
+                        objJsonResult.Message = "绗�" + index + "琛�,鐗╂枡浠g爜涓虹┖";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    //宸ュ簭浠g爜
+                    if (HProcNumber != "")
+                    {
+                        //鏌ヨ宸ュ簭
+                        ds = oCN.RunProcReturn("select * from Gy_Process where  HNumber='" + HProcNumber + "' and Hname='" + HProcName + "'", "Gy_Process");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = CodeConstant.FAIL;
+                            objJsonResult.count = CountConstant.FAIL;
+                            objJsonResult.Message = "绗�" + index + "琛�,宸ュ簭涓嶅瓨鍦紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HProcID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+                    }
+                    else
+                    {
+                        objJsonResult.code = CodeConstant.FAIL;
+                        objJsonResult.count = CountConstant.FAIL;
+                        objJsonResult.Message = "绗�" + index + "琛�,宸ュ簭浠g爜涓虹┖";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    //鐢熶骇璧勬簮
+                    if (HSourceNumber != "")
+                    {
+                        //鏌ヨ宸ュ簭
+                        ds = oCN.RunProcReturn("select * from Gy_Source where  HNumber='" + HSourceNumber + "' and Hname='" + HSourceName + "'", "Gy_Source");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = CodeConstant.FAIL;
+                            objJsonResult.count = CountConstant.FAIL;
+                            objJsonResult.Message = "绗�" + index + "琛�,鐢熶骇璧勬簮涓嶅瓨鍦紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HSourceID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+                    }
+                    //妫�鏌ラ」鐩唬鐮�
+                    if (HCheckNoteItemNumber != "")
+                    {
+                        //鏌ヨ鐗╂枡
+                        ds = oCN.RunProcReturn("select * from Gy_CheckNoteItem where  HNumber='" + HCheckNoteItemNumber + "' and Hname='" + HCheckNoteItemName + "'", "Gy_CheckNoteItem");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = CodeConstant.FAIL;
+                            objJsonResult.count = CountConstant.FAIL;
+                            objJsonResult.Message = "绗�" + index + "琛�,妫�鏌ラ」鐩笉瀛樺湪锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HCheckNoteItemID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+                        string HMaintainItemID = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                    }
+                    else
+                    {
+                        objJsonResult.code = CodeConstant.FAIL;
+                        objJsonResult.count = CountConstant.FAIL;
+                        objJsonResult.Message = "绗�" + index + "琛�,妫�鏌ラ」鐩唬鐮佷负绌�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    //宀椾綅浠g爜
+                    if (HCheckPostNumber != "")
+                    {
+                        //鏌ヨ鐗╂枡
+                        ds = oCN.RunProcReturn("select * from Gy_Post where  HNumber='" + HCheckPostNumber + "' and Hname='" + HCheckPostName + "'", "Gy_Post");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = CodeConstant.FAIL;
+                            objJsonResult.count = CountConstant.FAIL;
+                            objJsonResult.Message = "绗�" + index + "琛�,宀椾綅涓嶅瓨鍦紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HCheckPostID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+                    }
+                    else
+                    {
+                        objJsonResult.code = CodeConstant.FAIL;
+                        objJsonResult.count = CountConstant.FAIL;
+                        objJsonResult.Message = "绗�" + index + "琛�,宀椾綅浠g爜涓虹┖";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    //鍗曟嵁鍙�
+                    if (HBillNo == "")
+                    {
+                        objJsonResult.code = CodeConstant.FAIL;
+                        objJsonResult.count = CountConstant.FAIL;
+                        objJsonResult.Message = "绗�" + index + "琛�,鍗曟嵁鍙蜂笉鑳戒负绌猴紒";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+
+                objJsonResult.code = CodeConstant.SUCCEED;
+                objJsonResult.count = CountConstant.SUCCEED;
+                objJsonResult.Message = error;
+                objJsonResult.data = tb2;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = CodeConstant.FAIL;
+                objJsonResult.count = CountConstant.FAIL;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 璁惧鍚姩鐐规娓呭崟椤圭洰 瀵煎叆(淇濆瓨)
+        [Route("Sc_WorkBeginDotCheckBill/Sc_WorkBeginDotCheckBill_btnSave")]
+        [HttpPost]
+        public object Sc_WorkBeginDotCheckBill_btnSave([FromBody] JObject sMainSub)
+        {
+            var _value = sMainSub["sMainSub"].ToString();
+            string msg1 = _value.ToString();
+            string[] sArray = msg1.Split(new string[] { "&鍜�" }, StringSplitOptions.RemoveEmptyEntries);
+            string msg2 = sArray[0].ToString();
+            string user = sArray[1].ToString();
+            try
+            {
+                if (!DBUtility.ClsPub.Security_Log("Gy_WorkBeginDotCheckListBillMain_Edit", 1, false, user))
+                {
+                    objJsonResult.code = CodeConstant.FAIL;
+                    objJsonResult.count = CountConstant.FAIL;
+                    objJsonResult.Message = "鏃犱繚瀛樻潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                List<object> Excel = Newtonsoft.Json.JsonConvert.DeserializeObject<List<object>>(msg2);
+                List<Dictionary<string, string>> list = new List<Dictionary<string, string>>();
+
+                foreach (JObject item in Excel)
+                {
+                    Dictionary<string, string> dic = new Dictionary<string, string>();
+                    foreach (var itm in item.Properties())
+                    {
+                        dic.Add(itm.Name, itm.Value.ToString());
+                    }
+                    list.Add(dic);
+                }
+
+                oCN.BeginTran();
+                int i = 1;
+                foreach (Dictionary<string, string> item in list)
+                {
+                    string HBillType = "3744";
+                    string HMaker = user;//鍒跺崟浜�
+                    DateTime HDate = DBUtility.ClsPub.isDate(DateTime.Now.ToString("yyyy-MM-dd"));//  --鏃ユ湡
+                    long HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year);
+                    long HPeriod = DBUtility.ClsPub.isLong(DateTime.Now.Month);  
+                    string HOrgID = item["HOrgID"].ToString();//缁勭粐ID
+                    string HBillNo = item["鍗曟嵁鍙�"].ToString();
+                    string HMaterID = item["HMaterID"].ToString() == "" ? "0" : item["HMaterID"].ToString();
+                    string HProcID = item["HProcID"].ToString() == "" ? "0" : item["HProcID"].ToString();
+                    string HSourceID = item["HSourceID"].ToString() == "" ? "0" : item["HSourceID"].ToString();
+                    string HNote = item["璁板綍浜嬮」"].ToString();
+                    string HRemark = item["澶囨敞"].ToString();
+                    //瀛愯〃
+                    string HCheckNoteItemID = item["HCheckNoteItemID"].ToString() == "" ? "0" : item["HCheckNoteItemID"].ToString();
+                    string HCheckPostID = item["HCheckPostID"].ToString() == "" ? "0" : item["HCheckPostID"].ToString();
+                    string HSubRemark = item["琛ㄤ綋澶囨敞"].ToString();
+
+                    ds = oCN.RunProcReturn("select * from Gy_WorkBeginDotCheckListBillMain where HBillNo='" + HBillNo + "'", "Gy_WorkBeginDotCheckListBillMain");
+
+                    if (ds.Tables[0].Rows.Count == 0)
+                    {
+                        long HInterID = DBUtility.ClsPub.CreateBillID(HBillType, ref DBUtility.ClsPub.sExeReturnInfo);
+                        //鎻掑叆涓昏〃
+                        oCN.RunProc("insert into Gy_WorkBeginDotCheckListBillMain" +
+                        "(HYear,HPeriod,HBillType,HBillSubType,HInterID,HDate,HBillNo,HRemark,HMaker,HMakeDate" +
+                        ",HMaterID,HSourceID,HProcID,HNote) " +
+                        "values(" +
+                        "" + (HYear.ToString() != "0" ? HYear.ToString() : DateTime.Now.Year.ToString()) +
+                        "," + HPeriod.ToString() +
+                        ",'" + HBillType +
+                        "','" + HBillType +
+                        "'," + HInterID +
+                        ",'" + HDate +
+                        "','" + HBillNo +
+                        "','" + HRemark +
+                        "','" + user +
+                        "'," + "getdate()" +
+                        ",'" + HMaterID +
+                        "','" + HSourceID +
+                        "','" + HProcID +
+                        "','" + HNote +
+                        "')");
+                        //鎻掑叆瀛愯〃
+                        oCN.RunProc("insert into Gy_WorkBeginDotCheckListBillSub " +
+                        "(HInterID,HEntryID,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRemark" +
+                        ",HCheckNoteItemID,HCheckPostID,HDotCheckType,HRelationID) " +
+                        " values(" +
+                        "" + HInterID.ToString() +
+                        "," + 1 +
+                        "," + 0 +
+                        "," + 0 +
+                        ",'" + "" +
+                        "','" + "" +
+                        "','" + HSubRemark +
+                        "','" + HCheckNoteItemID +
+                        "','" + HCheckPostID +
+                        "','" + "璁惧" +
+                        "','" + 0 +
+                        "')");
+                    }
+                    else
+                    {
+                        long HInterID = long.Parse(ds.Tables[0].Rows[0]["HInterID"].ToString());
+                        //鑾峰彇鏈�澶у瓙id
+                        DataSet ds2 = oCN.RunProcReturn("select max(HEntryID) HEntryID from Gy_WorkBeginDotCheckListBillSub where HInterID='" + HInterID + "'", "Gy_WorkBeginDotCheckListBillSub");
+                        long HEntryID = 1;
+                        if (ds2.Tables[0].Rows.Count > 0)
+                        {
+                            HEntryID = long.Parse(ds2.Tables[0].Rows[0]["HEntryID"].ToString()) + 1;
+                        }
+                        //鎻掑叆瀛愯〃
+                        oCN.RunProc("insert into Gy_WorkBeginDotCheckListBillSub " +
+                        "(HInterID,HEntryID,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRemark" +
+                        ",HCheckNoteItemID,HCheckPostID,HDotCheckType,HRelationID) " +
+                        " values(" +
+                        "" + HInterID.ToString() +
+                        "," + HEntryID +
+                        "," + 0 +
+                        "," + 0 +
+                        ",'" + "" +
+                        "','" + "" +
+                        "','" + HSubRemark +
+                        "','" + HCheckNoteItemID +
+                        "','" + HCheckPostID +
+                        "','" + "璁惧" +
+                        "','" + 0 +
+                        "')");
+                    }
+
+                    i++;
+                }
+
+                oCN.Commit();
+
+                objJsonResult.code = CodeConstant.SUCCEED;
+                objJsonResult.count = CountConstant.SUCCEED;
+                objJsonResult.Message = "瀵煎叆鎴愬姛!";
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                LogService.Write(e);
+                oCN.RollBack();
+                objJsonResult.code = CodeConstant.FAIL;
+                objJsonResult.count = CountConstant.FAIL;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+        #endregion
+
     }
 }
\ No newline at end of file
diff --git a/WebAPI/Controllers/JHGL/Gy_MaterialTechParamBillController.cs b/WebAPI/Controllers/JHGL/Gy_MaterialTechParamBillController.cs
index a19588e..fc223e5 100644
--- a/WebAPI/Controllers/JHGL/Gy_MaterialTechParamBillController.cs
+++ b/WebAPI/Controllers/JHGL/Gy_MaterialTechParamBillController.cs
@@ -10,7 +10,9 @@
 using System.Web.Http;
 using System.Windows.Forms;
 using WebAPI.Models;
-
+using WebAPI.Controllers.SCGL.鏃ヨ鍒掔鐞�;
+using System.IO;
+using SyntacticSugar.constant;
 namespace WebAPI.Controllers.MJGL
 {
     public class Gy_MaterialTechParamBillController : ApiController
@@ -643,5 +645,484 @@
             }
         }
         #endregion
+
+
+        #region 浜у搧宸ヨ壓鍙傛暟 鏂囦欢瀵煎叆淇濆瓨
+        #region 浜у搧宸ヨ壓鍙傛暟 鏂囦欢涓婁紶
+        [Route("Gy_MaterialTechParamBill/Gy_MaterialTechParamBill_Excel")]
+        [HttpPost]
+        public object Gy_MaterialTechParamBill_Excel()
+        {
+            try
+            {
+                //鑾峰彇鏂囦欢鍚嶇О
+                var file = HttpContext.Current.Request.Files[0];
+                //鑾峰彇鏂囦欢鐗╃悊璺緞
+                string ExcelPath = HttpContext.Current.Server.MapPath("~/" + file.FileName);
+                //淇濆瓨鏂囦欢
+                file.SaveAs(ExcelPath);
+
+                NpoiHelper np = new NpoiHelper();
+                DataSet ExcelDs = np.ReadExcel(ExcelPath, 1, 1, "0");
+
+                //鍒犻櫎鏂囦欢
+                File.Delete(ExcelPath);
+
+                //鍒涘缓涓存椂琛�
+                DataTable tb2 = new DataTable("dt2");
+
+                //娣诲姞鍒楀悕
+                for (int i = 0; i < ExcelDs.Tables[0].Columns.Count; i++)
+                {
+                    tb2.Columns.Add(ExcelDs.Tables[0].Rows[0][i].ToString());
+                }
+
+                //妯℃澘缂哄皯鍒� 浣嗛渶瑕佷粠鏁版嵁搴撲腑鏌ヨ鍑烘潵鏄剧ず鍦ㄩ〉闈㈢殑瀛楁
+                tb2.Columns.Add("HOrgID", typeof(Int32));//缁勭粐ID
+                tb2.Columns.Add("HDeptID", typeof(Int32));//閮ㄩ棬ID
+                tb2.Columns.Add("HEmpID", typeof(Int32));//璐熻矗浜篒D
+                tb2.Columns.Add("HMaterID", typeof(Int32));//鐗╂枡ID
+                tb2.Columns.Add("HTechParamID", typeof(Int32));//宸ヨ壓鍙傛暟ID
+                tb2.Columns.Add("HTechParamUnitID", typeof(Int32));//宸ヨ壓鍙傛暟鍗曚綅ID
+                //娣诲姞鏁版嵁
+                for (int i = 1; i < ExcelDs.Tables[0].Rows.Count; i++)
+                {
+                    DataRow row = tb2.NewRow();
+                    for (int j = 0; j < ExcelDs.Tables[0].Columns.Count; j++)
+                    {
+                        row[j] = ExcelDs.Tables[0].Rows[i][j].ToString();
+                    }
+                    tb2.Rows.Add(row);
+                }
+
+
+                var error = "";
+
+                //鏌ヨ娌℃湁鐨勫垪
+                if (!tb2.Columns.Contains("缁勭粐浠g爜"))
+                    error += "娌℃湁鎵惧埌銆愮粍缁囦唬鐮併�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("缁勭粐鍚嶇О"))
+                    error += "娌℃湁鎵惧埌銆愮粍缁囧悕绉般�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("閮ㄩ棬浠g爜"))
+                    error += "娌℃湁鎵惧埌銆愰儴闂ㄤ唬鐮併�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("閮ㄩ棬鍚嶇О"))
+                    error += "娌℃湁鎵惧埌銆愰儴闂ㄥ悕绉般�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("璐熻矗浜轰唬鐮�"))
+                    error += "娌℃湁鎵惧埌銆愯礋璐d汉浠g爜銆戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("璐熻矗浜哄悕绉�"))
+                    error += "娌℃湁鎵惧埌銆愯礋璐d汉鍚嶇О銆戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("鐗╂枡浠g爜"))
+                    error += "娌℃湁鎵惧埌銆愮墿鏂欎唬鐮併�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("鐗╂枡鍚嶇О"))
+                    error += "娌℃湁鎵惧埌銆愮墿鏂欏悕绉般�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("澶囨敞"))
+                    error += "娌℃湁鎵惧埌銆愬娉ㄣ�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("宸ヨ壓鍙傛暟浠g爜"))
+                    error += "娌℃湁鎵惧埌銆愬伐鑹哄弬鏁颁唬鐮併�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("宸ヨ壓鍙傛暟鍚嶇О"))
+                    error += "娌℃湁鎵惧埌銆愬伐鑹哄弬鏁板悕绉般�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("宸ヨ壓鍙傛暟鍗曚綅浠g爜"))
+                    error += "娌℃湁鎵惧埌銆愬伐鑹哄弬鏁板崟浣嶄唬鐮併�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("宸ヨ壓鍙傛暟鍗曚綅鍚嶇О"))
+                    error += "娌℃湁鎵惧埌銆愬伐鑹哄弬鏁板崟浣嶅悕绉般�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("鏍囧噯鍊�"))
+                    error += "娌℃湁鎵惧埌銆愭爣鍑嗗�笺�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("涓婇檺"))
+                    error += "娌℃湁鎵惧埌銆愪笂闄愩�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("涓嬮檺"))
+                    error += "娌℃湁鎵惧埌銆愪笅闄愩�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("閲囬泦鏉ユ簮"))
+                    error += "娌℃湁鎵惧埌銆愰噰闆嗘潵婧愩�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("閲囬泦鍛ㄦ湡棰戠巼"))
+                    error += "娌℃湁鎵惧埌銆愰噰闆嗗懆鏈熼鐜囥�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("閲囬泦鍛ㄦ湡鍗曚綅"))
+                    error += "娌℃湁鎵惧埌銆愰噰闆嗗懆鏈熷崟浣嶃�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("鍗曟嵁鍙�"))
+                    error += "娌℃湁鎵惧埌銆愬崟鎹彿銆戠殑鏍囬,";
+
+                if (error.Length > 0)
+                {
+                    objJsonResult.code = CodeConstant.FAIL;
+                    objJsonResult.count = CountConstant.FAIL;
+                    objJsonResult.Message = $"Excel妯℃澘瀛樺湪閿欒,{error}\r\n";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                for (int i = 0; i <= tb2.Rows.Count - 1; i++)
+                {
+                    string HORGNumber = "";
+                    string HORGName = "";
+                    string HDeptName = "";
+                    string HDeptNumber = "";
+                    string HEmpName = "";
+                    string HEmpNumber = "";
+                    string HMaterNumber = "";
+                    string HMaterName = "";
+                    string HTechParamNumber = "";
+                    string HTechParamName = "";
+                    string HTechParamUnitNumber = "";
+                    string HTechParamUnitName = "";
+                    string HBillNo = "";
+
+                    HORGNumber = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["缁勭粐浠g爜"].ToString());
+                    HORGName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["缁勭粐鍚嶇О"].ToString());
+                    HDeptNumber = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["閮ㄩ棬浠g爜"].ToString());
+                    HDeptName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["閮ㄩ棬鍚嶇О"].ToString());
+                    HEmpNumber = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["璐熻矗浜轰唬鐮�"].ToString());
+                    HEmpName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["璐熻矗浜哄悕绉�"].ToString());
+                    HMaterNumber = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["鐗╂枡浠g爜"].ToString());
+                    HMaterName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["鐗╂枡鍚嶇О"].ToString());
+                    HTechParamNumber = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["宸ヨ壓鍙傛暟浠g爜"].ToString());
+                    HTechParamName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["宸ヨ壓鍙傛暟鍚嶇О"].ToString());
+                    HTechParamUnitNumber = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["宸ヨ壓鍙傛暟鍗曚綅浠g爜"].ToString());
+                    HTechParamUnitName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["宸ヨ壓鍙傛暟鍗曚綅鍚嶇О"].ToString());
+                    HBillNo = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["鍗曟嵁鍙�"].ToString());
+
+                    //妫�鏌�
+                    int index = i + 1;
+                    //缁勭粐
+                    if (HORGNumber != "")
+                    {
+                        //鏌ヨ缁勭粐
+                        ds = oCN.RunProcReturn("select * from Xt_ORGANIZATIONS where  HNumber='" + HORGNumber + "' and Hname='" + HORGName + "'", "Xt_ORGANIZATIONS");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = CodeConstant.FAIL;
+                            objJsonResult.count = CountConstant.FAIL;
+                            objJsonResult.Message = "绗�" + index + "琛�,缁勭粐涓嶅瓨鍦紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HOrgID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+                    }
+                    else
+                    {
+                        objJsonResult.code = CodeConstant.FAIL;
+                        objJsonResult.count = CountConstant.FAIL;
+                        objJsonResult.Message = "绗�" + index + "琛�,缁勭粐浠g爜涓虹┖";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    //閮ㄩ棬浠g爜
+                    if (HDeptNumber != "")
+                    {
+                        ds = oCN.RunProcReturn("select * from Gy_Department where  HNumber='" + HDeptNumber + "' and Hname='" + HDeptName + "'", "Gy_Department");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = CodeConstant.FAIL;
+                            objJsonResult.count = CountConstant.FAIL;
+                            objJsonResult.Message = "绗�" + index + "琛�,閮ㄩ棬涓嶅瓨鍦紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HDeptID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+                    }
+                    else
+                    {
+                        tb2.Rows[i]["HDeptID"] = "0";
+                    }
+                    //璐熻矗浜轰唬鐮�
+                    if (HEmpNumber != "")
+                    {
+                        ds = oCN.RunProcReturn("select * from Gy_Employee where  HNumber='" + HEmpNumber + "' and Hname='" + HEmpName + "'", "Gy_Employee");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = CodeConstant.FAIL;
+                            objJsonResult.count = CountConstant.FAIL;
+                            objJsonResult.Message = "绗�" + index + "琛�,璐熻矗浜轰笉瀛樺湪锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HEmpID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+                    }
+                    //鐗╂枡浠g爜
+                    if (HMaterNumber != "")
+                    {
+                        ds = oCN.RunProcReturn("select * from Gy_Material where  HNumber='" + HMaterNumber + "' and Hname='" + HMaterName + "'", "Gy_Material");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = CodeConstant.FAIL;
+                            objJsonResult.count = CountConstant.FAIL;
+                            objJsonResult.Message = "绗�" + index + "琛�,鐗╂枡涓嶅瓨鍦紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HMaterID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+                    }
+                    //宸ヨ壓鍙傛暟浠g爜
+                    if (HTechParamNumber != "")
+                    {
+                        ds = oCN.RunProcReturn("select * from Gy_TechnologyParameter where  HNumber='" + HTechParamNumber + "' and Hname='" + HTechParamName + "'", "Gy_TechnologyParameter");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = CodeConstant.FAIL;
+                            objJsonResult.count = CountConstant.FAIL;
+                            objJsonResult.Message = "绗�" + index + "琛�,宸ヨ壓鍙傛暟涓嶅瓨鍦紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HTechParamID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+                    }
+                    //宸ヨ壓鍙傛暟鍗曚綅浠g爜
+                    if (HTechParamUnitNumber != "")
+                    {
+                        ds = oCN.RunProcReturn("select * from Gy_TechnologyParameterUnit where  HNumber='" + HTechParamUnitNumber + "' and Hname='" + HTechParamUnitName + "'", "Gy_TechnologyParameterUnit");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = CodeConstant.FAIL;
+                            objJsonResult.count = CountConstant.FAIL;
+                            objJsonResult.Message = "绗�" + index + "琛�,宸ヨ壓鍙傛暟鍗曚綅涓嶅瓨鍦紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HTechParamUnitID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+                    }
+                    //鍗曟嵁鍙�
+                    if (HBillNo == "")
+                    {
+                        objJsonResult.code = CodeConstant.FAIL;
+                        objJsonResult.count = CountConstant.FAIL;
+                        objJsonResult.Message = "绗�" + index + "琛�,鍗曟嵁鍙蜂笉鑳戒负绌猴紒";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+
+
+                }
+
+                objJsonResult.code = CodeConstant.SUCCEED;
+                objJsonResult.count = CountConstant.SUCCEED;
+                objJsonResult.Message = error;
+                objJsonResult.data = tb2;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = CodeConstant.FAIL;
+                objJsonResult.count = CountConstant.FAIL;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 浜у搧宸ヨ壓鍙傛暟椤圭洰 瀵煎叆(淇濆瓨)
+        [Route("Gy_MaterialTechParamBill/Gy_MaterialTechParamBill_btnSave")]
+        [HttpPost]
+        public object Gy_MaterialTechParamBill_btnSave([FromBody] JObject sMainSub)
+        {
+            var _value = sMainSub["sMainSub"].ToString();
+            string msg1 = _value.ToString();
+            string[] sArray = msg1.Split(new string[] { "&鍜�" }, StringSplitOptions.RemoveEmptyEntries);
+            string msg2 = sArray[0].ToString();
+            string user = sArray[1].ToString();
+            try
+            {
+                if (!DBUtility.ClsPub.Security_Log("Gy_MaterialTechParamBillMain_Edit", 1, false, user))
+                {
+                    objJsonResult.code = CodeConstant.FAIL;
+                    objJsonResult.count = CountConstant.FAIL;
+                    objJsonResult.Message = "鏃犱繚瀛樻潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                List<object> Excel = Newtonsoft.Json.JsonConvert.DeserializeObject<List<object>>(msg2);
+                List<Dictionary<string, string>> list = new List<Dictionary<string, string>>();
+
+                foreach (JObject item in Excel)
+                {
+                    Dictionary<string, string> dic = new Dictionary<string, string>();
+                    foreach (var itm in item.Properties())
+                    {
+                        dic.Add(itm.Name, itm.Value.ToString());
+                    }
+                    list.Add(dic);
+                }
+
+                oCN.BeginTran();
+                int i = 1;
+                foreach (Dictionary<string, string> item in list)
+                {
+                    string HBillType = "3334";
+                    string HMaker = user;//鍒跺崟浜�
+                    DateTime HDate = DBUtility.ClsPub.isDate(DateTime.Now.ToString("yyyy-MM-dd"));//  --鏃ユ湡
+                    long HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year);
+                    long HPeriod = DBUtility.ClsPub.isLong(DateTime.Now.Month);
+                    string HBillNo = item["鍗曟嵁鍙�"].ToString();//鍗曟嵁鍙�
+                    string HOrgID = item["HOrgID"].ToString();//缁勭粐ID
+                    string HDeptID = item["HDeptID"].ToString() == "" ? "0" : item["HDeptID"].ToString();
+                    string HEmpID = item["HEmpID"].ToString() == "" ? "0" : item["HEmpID"].ToString();
+                    string HMaterID = item["HMaterID"].ToString()== "" ? "0" : item["HMaterID"].ToString();
+                    string HRemark = item["澶囨敞"].ToString();
+                    //瀛愯〃
+                    string HTechParamID = item["HTechParamID"].ToString() == "" ? "0" : item["HTechParamID"].ToString();//宸ヨ壓鍙傛暟
+                    string HTechParamUnitID = item["HTechParamUnitID"].ToString() == "" ? "0" : item["HTechParamUnitID"].ToString();//宸ヨ壓鍙傛暟浠g爜
+                    string HStd = item["鏍囧噯鍊�"].ToString() == "" ? "0" : item["鏍囧噯鍊�"].ToString();
+                    string HMax = item["涓婇檺"].ToString() == "" ? "0" : item["涓婇檺"].ToString();
+                    string HMin = item["涓嬮檺"].ToString() == "" ? "0" : item["涓嬮檺"].ToString();
+                    string HDataForm = item["閲囬泦鏉ユ簮"].ToString();
+                    string HDataTimes = item["閲囬泦鍛ㄦ湡棰戠巼"].ToString() == "" ? "0" : item["閲囬泦鍛ㄦ湡棰戠巼"].ToString();
+                    string HDataUnit = item["閲囬泦鍛ㄦ湡鍗曚綅"].ToString();
+                    ds = oCN.RunProcReturn("select * from Gy_MaterialTechParamBillMain where HBillNo='" + HBillNo + "'", "Gy_MaterialTechParamBillMain");
+
+                    if (ds.Tables[0].Rows.Count == 0)
+                    {
+                        long HInterID = DBUtility.ClsPub.CreateBillID(HBillType, ref DBUtility.ClsPub.sExeReturnInfo);
+                        //鎻掑叆涓昏〃
+                        oCN.RunProc("insert into Gy_MaterialTechParamBillMain" +
+                            "(HYear,HPeriod,HBillType,HBillSubType,HInterID,HDate,HBillNo,HRemark,HMaker,HMakeDate" +
+                            ",HDeptID,HEmpID,HMaterID,HWorkCenterID,HEquipID,HOrgID,HProcID,HMouldID ) " +
+                            "values(" +
+                            "" + HYear.ToString() +
+                            "," + HPeriod.ToString() +
+                            ",'" + HBillType +
+                            "','" + HBillType +
+                            "'," + HInterID +
+                            ",'" + HDate +
+                            "','" + HBillNo +
+                            "','" + HRemark +
+                            "','" + HMaker +
+                            "'," + "getdate()" +
+                            "," + HDeptID +
+                            "," + HEmpID +
+                            ",'" + HMaterID +
+                            "','" + 0 +
+                            "','" + 0 +
+                            "','" + HOrgID +
+                            "','" + 0 +
+                             "','" + 0 +
+                            "')");
+                        //鎻掑叆瀛愯〃
+                        oCN.RunProc("insert into Gy_MaterialTechParamBillSub" +
+                           "(HInterID,HEntryID,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType" +
+                           ",HTechParamID,HTechParamUnitID,HStd,HMax,HMin,HDataForm,HDataUnit,HDataTimes,HTechParamClassID,HSNO,HStdNextTimes,HTechParamIDStd) " +
+                           " values(" +
+                           "" + HInterID.ToString() +
+                           "," + 1 +
+                           "," + 0 +
+                           "," + 0 +
+                           ",'" + "" +
+                           "','" + "" +
+                           "','" + HTechParamID +
+                           "','" + HTechParamUnitID +
+                           "','" + HStd +
+                           "','" + HMax +
+                           "','" + HMin +
+                           "','" + HDataForm +
+                           "','" + HDataUnit +
+                           "','" + HDataTimes +
+                           "','" + 0 +
+                           "','" + 0 +
+                           "','" + 0 +
+                           "','" + "" +
+                           "')");
+                    }
+                    else
+                    {
+                        long HInterID = long.Parse(ds.Tables[0].Rows[0]["HInterID"].ToString());
+                        //鑾峰彇鏈�澶у瓙id
+                        DataSet ds2 = oCN.RunProcReturn("select max(HEntryID) HEntryID from Gy_MaterialTechParamBillSub where HInterID='" + HInterID + "'", "Gy_MaterialTechParamBillSub");
+                        long HEntryID = 1;
+                        if (ds2.Tables[0].Rows.Count > 0)
+                        {
+                            HEntryID = long.Parse(ds2.Tables[0].Rows[0]["HEntryID"].ToString()) + 1;
+                        }
+                        //鎻掑叆瀛愯〃
+                        oCN.RunProc("insert into Gy_MaterialTechParamBillSub" +
+                           "(HInterID,HEntryID,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType" +
+                           ",HTechParamID,HTechParamUnitID,HStd,HMax,HMin,HDataForm,HDataUnit,HDataTimes,HTechParamClassID,HSNO,HStdNextTimes,HTechParamIDStd) " +
+                           " values(" +
+                           "" + HInterID.ToString() +
+                           "," + HEntryID +
+                           "," + 0 +
+                           "," + 0 +
+                           ",'" + "" +
+                           "','" + "" +
+                           "','" + HTechParamID +
+                           "','" + HTechParamUnitID +
+                           "','" + HStd +
+                           "','" + HMax +
+                           "','" + HMin +
+                           "','" + HDataForm +
+                           "','" + HDataUnit +
+                           "','" + HDataTimes +
+                           "','" + 0 +
+                           "','" + 0 +
+                           "','" + 0 +
+                           "','" + "" +
+                           "')");
+                    }
+
+                    i++;
+                }
+
+                oCN.Commit();
+
+                objJsonResult.code = CodeConstant.SUCCEED;
+                objJsonResult.count = CountConstant.SUCCEED;
+                objJsonResult.Message = "瀵煎叆鎴愬姛!";
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                LogService.Write(e);
+                oCN.RollBack();
+                objJsonResult.code = CodeConstant.FAIL;
+                objJsonResult.count = CountConstant.FAIL;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+        #endregion
+
     }
 }
\ No newline at end of file
diff --git a/WebAPI/Controllers/MJGL/Sc_MouldDotCheckRuleBillController.cs b/WebAPI/Controllers/MJGL/Sc_MouldDotCheckRuleBillController.cs
index 9e1745f..ae9c12e 100644
--- a/WebAPI/Controllers/MJGL/Sc_MouldDotCheckRuleBillController.cs
+++ b/WebAPI/Controllers/MJGL/Sc_MouldDotCheckRuleBillController.cs
@@ -8,7 +8,10 @@
 using System.Net.Http;
 using System.Web.Http;
 using WebAPI.Models;
-
+using System.Web;
+using WebAPI.Controllers.SCGL.鏃ヨ鍒掔鐞�;
+using System.IO;
+using SyntacticSugar.constant;
 namespace WebAPI.Controllers.MJGL
 {
     public class Sc_MouldDotCheckRuleBillController : ApiController
@@ -334,7 +337,7 @@
         [HttpGet]
         public object DeleteMouldDotCheckRuleBill(string HInterID, string user)
         {
-            if (!DBUtility.ClsPub.Security_Log("Sc_MouldMaintainRuleBill_Delete", 1, false, user))
+            if (!DBUtility.ClsPub.Security_Log("Sc_MouldDotCheckPlanBill_Delete", 1, false, user))
             {
                 objJsonResult.code = "0";
                 objJsonResult.count = 0;
@@ -431,5 +434,416 @@
         }
         #endregion
 
+
+        #region 鍣ㄥ叿鐐规瑙勭▼ 鏂囦欢瀵煎叆淇濆瓨
+        #region 鍣ㄥ叿鐐规瑙勭▼ 鏂囦欢涓婁紶
+        [Route("Sc_MouldDotCheckRuleBill/Sc_MouldDotCheckRuleBill_Excel")]
+        [HttpPost]
+        public object Sc_MouldDotCheckRuleBill_Excel()
+        {
+            try
+            {
+                //鑾峰彇鏂囦欢鍚嶇О
+                var file = HttpContext.Current.Request.Files[0];
+                //鑾峰彇鏂囦欢鐗╃悊璺緞
+                string ExcelPath = HttpContext.Current.Server.MapPath("~/" + file.FileName);
+                //淇濆瓨鏂囦欢
+                file.SaveAs(ExcelPath);
+
+                NpoiHelper np = new NpoiHelper();
+                DataSet ExcelDs = np.ReadExcel(ExcelPath, 1, 1, "0");
+
+                //鍒犻櫎鏂囦欢
+                File.Delete(ExcelPath);
+
+                //鍒涘缓涓存椂琛�
+                DataTable tb2 = new DataTable("dt2");
+
+                //娣诲姞鍒楀悕
+                for (int i = 0; i < ExcelDs.Tables[0].Columns.Count; i++)
+                {
+                    tb2.Columns.Add(ExcelDs.Tables[0].Rows[0][i].ToString());
+                }
+
+                //妯℃澘缂哄皯鍒� 浣嗛渶瑕佷粠鏁版嵁搴撲腑鏌ヨ鍑烘潵鏄剧ず鍦ㄩ〉闈㈢殑瀛楁
+                tb2.Columns.Add("HOrgID", typeof(Int32));//缁勭粐ID
+                tb2.Columns.Add("HDotCheckItemID", typeof(Int32));//鐐规椤圭洰ID
+                tb2.Columns.Add("HManagerID", typeof(Int32));//璐熻矗浜篒D
+                tb2.Columns.Add("HMouldID", typeof(Int32));//鍣ㄥ叿ID
+                tb2.Columns.Add("HDotCheckItemClassID", typeof(Int32));//鐐规椤圭洰鍒嗙被
+                //娣诲姞鏁版嵁
+                for (int i = 1; i < ExcelDs.Tables[0].Rows.Count; i++)
+                {
+                    DataRow row = tb2.NewRow();
+                    for (int j = 0; j < ExcelDs.Tables[0].Columns.Count; j++)
+                    {
+                        row[j] = ExcelDs.Tables[0].Rows[i][j].ToString();
+                    }
+                    tb2.Rows.Add(row);
+                }
+
+
+                var error = "";
+
+                //鏌ヨ娌℃湁鐨勫垪
+                if (!tb2.Columns.Contains("缁勭粐浠g爜"))
+                    error += "娌℃湁鎵惧埌銆愮粍缁囦唬鐮併�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("缁勭粐鍚嶇О"))
+                    error += "娌℃湁鎵惧埌銆愮粍缁囧悕绉般�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("瑙勭▼缂栧彿"))
+                    error += "娌℃湁鎵惧埌銆愯绋嬬紪鍙枫�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("瑙勭▼鍚嶇О"))
+                    error += "娌℃湁鎵惧埌銆愯绋嬪悕绉般�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("鍣ㄥ叿缂栫爜"))
+                    error += "娌℃湁鎵惧埌銆愬櫒鍏风紪鐮併�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("鍣ㄥ叿鍚嶇О"))
+                    error += "娌℃湁鎵惧埌銆愬櫒鍏峰悕绉般�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("鍛ㄦ湡鍗曚綅"))
+                    error += "娌℃湁鎵惧埌銆愬懆鏈熷崟浣嶃�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("鐐规鍛ㄦ湡"))
+                    error += "娌℃湁鎵惧埌銆愮偣妫�鍛ㄦ湡銆戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("鎽樿"))
+                    error += "娌℃湁鎵惧埌銆愭憳瑕併�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("琛ㄥご澶囨敞"))
+                    error += "娌℃湁鎵惧埌銆愯〃澶村娉ㄣ�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("鐐规椤圭洰浠g爜"))
+                    error += "娌℃湁鎵惧埌銆愮偣妫�椤圭洰浠g爜銆戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("鐐规椤圭洰鍚嶇О"))
+                    error += "娌℃湁鎵惧埌銆愮偣妫�椤圭洰鍚嶇О銆戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("鐐规閮ㄤ綅"))
+                    error += "娌℃湁鎵惧埌銆愮偣妫�閮ㄤ綅銆戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("鍏蜂綋瑕佹眰"))
+                    error += "娌℃湁鎵惧埌銆愬叿浣撹姹傘�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("璐熻矗浜轰唬鐮�"))
+                    error += "娌℃湁鎵惧埌銆愯礋璐d汉浠g爜銆戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("璐熻矗浜�"))
+                    error += "娌℃湁鎵惧埌銆愯礋璐d汉銆戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("琛ㄤ綋澶囨敞"))
+                    error += "娌℃湁鎵惧埌銆愯〃浣撳娉ㄣ�戠殑鏍囬,";
+
+                if (error.Length > 0)
+                {
+                    objJsonResult.code = CodeConstant.FAIL;
+                    objJsonResult.count = CountConstant.FAIL;
+                    objJsonResult.Message = $"Excel妯℃澘瀛樺湪閿欒,{error}\r\n";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                for (int i = 0; i <= tb2.Rows.Count - 1; i++)
+                {
+                    string HName = "";
+                    string HNum = "";
+                    string HORGNumber = "";
+                    string HORGName = "";
+                    string HManagerName = "";
+                    string HManagerNumber = "";
+                    string HDotCheckItemNumber = "";
+                    string HDotCheckItemName = "";
+                    string HMouldNumber = "";
+                    string HMouldName = "";
+
+                    HName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["瑙勭▼缂栧彿"].ToString());
+                    HNum = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["瑙勭▼鍚嶇О"].ToString());
+                    HMouldNumber = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["鍣ㄥ叿缂栫爜"].ToString());
+                    HMouldName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["鍣ㄥ叿鍚嶇О"].ToString());
+                    HORGNumber = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["缁勭粐浠g爜"].ToString());
+                    HORGName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["缁勭粐鍚嶇О"].ToString());
+                    HManagerNumber = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["璐熻矗浜轰唬鐮�"].ToString());
+                    HManagerName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["璐熻矗浜�"].ToString());
+                    HDotCheckItemNumber = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["鐐规椤圭洰浠g爜"].ToString());
+                    HDotCheckItemName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["鐐规椤圭洰鍚嶇О"].ToString());
+
+                    //妫�鏌�
+                    int index = i + 1;
+                    //缁勭粐
+                    if (HORGNumber != "")
+                    {
+                        //鏌ヨ缁勭粐
+                        ds = oCN.RunProcReturn("select * from Xt_ORGANIZATIONS where  HNumber='" + HORGNumber + "' and Hname='" + HORGName + "'", "Xt_ORGANIZATIONS");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = CodeConstant.FAIL;
+                            objJsonResult.count = CountConstant.FAIL;
+                            objJsonResult.Message = "绗�" + index + "琛�,缁勭粐涓嶅瓨鍦紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HOrgID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+                        string HORGid = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                    }
+                    else
+                    {
+                        objJsonResult.code = CodeConstant.FAIL;
+                        objJsonResult.count = CountConstant.FAIL;
+                        objJsonResult.Message = "绗�" + index + "琛�,缁勭粐浠g爜涓虹┖";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    //鍣ㄥ叿
+                    if (HMouldNumber != "")
+                    {
+                        ds = oCN.RunProcReturn("select * from Gy_MouldFileMain where  HMouldNo='" + HMouldNumber + "' and Hname='" + HMouldName + "'", "Gy_MouldFileMain");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = CodeConstant.FAIL;
+                            objJsonResult.count = CountConstant.FAIL;
+                            objJsonResult.Message = "绗�" + index + "琛�,鍣ㄥ叿涓嶅瓨鍦紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HMouldID"] = ds.Tables[0].Rows[0]["HInterID"].ToString();
+                        }
+                    }
+                    else
+                    {
+                        objJsonResult.code = CodeConstant.FAIL;
+                        objJsonResult.count = CountConstant.FAIL;
+                        objJsonResult.Message = "绗�" + index + "琛�,鍣ㄥ叿浠g爜涓虹┖";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    //鐐规椤圭洰浠g爜
+                    if (HDotCheckItemNumber != "")
+                    {
+                        
+                        ds = oCN.RunProcReturn("select * from Gy_DotCheck where  HNumber='" + HDotCheckItemNumber + "' and Hname='" + HDotCheckItemName + "'", "Gy_DotCheck");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = CodeConstant.FAIL;
+                            objJsonResult.count = CountConstant.FAIL;
+                            objJsonResult.Message = "绗�" + index + "琛�,鐐规椤圭洰涓嶅瓨鍦紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HDotCheckItemID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                            tb2.Rows[i]["HDotCheckItemClassID"] = ds.Tables[0].Rows[0]["HDotCheckItemClassID"].ToString();
+                        }
+                        string HDotCheckItemID = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                    }
+                    else
+                    {
+                        objJsonResult.code = CodeConstant.FAIL;
+                        objJsonResult.count = CountConstant.FAIL;
+                        objJsonResult.Message = "绗�" + index + "琛�,鐐规椤圭洰浠g爜涓虹┖";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    //璐熻矗浜轰唬鐮�
+                    if (HManagerNumber != "")
+                    {
+                        //鏌ヨ缁勭粐
+                        ds = oCN.RunProcReturn("select * from Gy_Employee where  HNumber='" + HManagerNumber + "' and Hname='" + HManagerName + "'", "Gy_Employee");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = CodeConstant.FAIL;
+                            objJsonResult.count = CountConstant.FAIL;
+                            objJsonResult.Message = "绗�" + index + "琛�,璐熻矗浜轰笉瀛樺湪锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HManagerID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+                    }
+                    //鍣ㄥ叿鐐规瑙勭▼鍚嶇О
+                    if (HName == "")
+                    {
+                        objJsonResult.code = CodeConstant.FAIL;
+                        objJsonResult.count = CountConstant.FAIL;
+                        objJsonResult.Message = "绗�" + index + "琛�,鍣ㄥ叿鐐规瑙勭▼鍚嶇О涓嶈兘涓虹┖锛�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+
+                    //鍣ㄥ叿鐐规瑙勭▼浠g爜
+                    if (HNum == "")
+                    {
+                        objJsonResult.code = CodeConstant.FAIL;
+                        objJsonResult.count = CountConstant.FAIL;
+                        objJsonResult.Message = "绗�" + index + "琛�,鍣ㄥ叿鐐规瑙勭▼浠g爜涓嶈兘涓虹┖锛�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+
+                objJsonResult.code = CodeConstant.SUCCEED;
+                objJsonResult.count = CountConstant.SUCCEED;
+                objJsonResult.Message = error;
+                objJsonResult.data = tb2;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = CodeConstant.FAIL;
+                objJsonResult.count = CountConstant.FAIL;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 鍣ㄥ叿鐐规瑙勭▼椤圭洰 瀵煎叆(淇濆瓨)
+        [Route("Sc_MouldDotCheckRuleBill/Sc_MouldDotCheckRuleBill_btnSave")]
+        [HttpPost]
+        public object Sc_MouldDotCheckRuleBill_btnSave([FromBody] JObject sMainSub)
+        {
+            var _value = sMainSub["sMainSub"].ToString();
+            string msg1 = _value.ToString();
+            string[] sArray = msg1.Split(new string[] { "&鍜�" }, StringSplitOptions.RemoveEmptyEntries);
+            string msg2 = sArray[0].ToString();
+            string user = sArray[1].ToString();
+            try
+            {
+                if (!DBUtility.ClsPub.Security_Log("Sc_MouldDotCheckRuleBill_Edit", 1, false, user))
+                {
+                    objJsonResult.code = CodeConstant.FAIL;
+                    objJsonResult.count = CountConstant.FAIL;
+                    objJsonResult.Message = "鏃犱繚瀛樻潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                List<object> Excel = Newtonsoft.Json.JsonConvert.DeserializeObject<List<object>>(msg2);
+                List<Dictionary<string, string>> list = new List<Dictionary<string, string>>();
+
+                foreach (JObject item in Excel)
+                {
+                    Dictionary<string, string> dic = new Dictionary<string, string>();
+                    foreach (var itm in item.Properties())
+                    {
+                        dic.Add(itm.Name, itm.Value.ToString());
+                    }
+                    list.Add(dic);
+                }
+
+                oCN.BeginTran();
+                int i = 1;
+                foreach (Dictionary<string, string> item in list)
+                {
+                    string HBillType = "3834";
+                    string HMaker = user;//鍒跺崟浜�
+                    DateTime HDate = DBUtility.ClsPub.isDate(DateTime.Now.ToString("yyyy-MM-dd"));//  --鏃ユ湡
+                    long HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year);
+                    long HPeriod = DBUtility.ClsPub.isLong(DateTime.Now.Month);
+                    string HOrgID = item["HOrgID"].ToString();//缁勭粐ID
+                    string HMouldID = item["HMouldID"].ToString();//鍣ㄥ叿ID
+                    string HName = item["瑙勭▼鍚嶇О"].ToString();
+                    string HBillNo = item["瑙勭▼缂栧彿"].ToString();
+                    string HCycleUnit = item["鍛ㄦ湡鍗曚綅"].ToString();
+                    string HCheckCycle = item["鐐规鍛ㄦ湡"].ToString();
+                    string HExplanation = item["鎽樿"].ToString();
+                    string HRemark = item["琛ㄥご澶囨敞"].ToString();
+                    //瀛愯〃
+                    string HDotCheckItemID = item["HDotCheckItemID"].ToString();//鐐规椤圭洰
+                    string HDotCheckItemClassID = item["HDotCheckItemClassID"].ToString();//鐐规鍒嗙被椤圭洰
+                    string HManagerID = item["HManagerID"].ToString()==""? "0": item["HManagerID"].ToString();//璐熻矗浜�
+                    string HDotCheckPart = item["鐐规閮ㄤ綅"].ToString();
+                    string HClaim = item["鍏蜂綋瑕佹眰"].ToString();
+                    string HSubRemark = item["琛ㄤ綋澶囨敞"].ToString();
+                    string HDotCheckItem = item["鐐规椤圭洰鍚嶇О"].ToString();
+                    ds = oCN.RunProcReturn("select * from Sc_MouldDotCheckRuleBillMain where HBillNo='" + HBillNo + "'", "Sc_MouldDotCheckRuleBillMain");
+
+                    if (ds.Tables[0].Rows.Count == 0)
+                    {
+                        long HInterID = DBUtility.ClsPub.CreateBillID(HBillType, ref DBUtility.ClsPub.sExeReturnInfo);
+                        //鎻掑叆涓昏〃
+                        oCN.RunProc("Insert Into Sc_MouldDotCheckRuleBillMain   " +
+                         "(HBillType,HBillSubType,HInterID,HBillNo,HDate" +
+                        ",HYear,HPeriod,HRemark,HMaker,HMakeDate" +
+                        ",HMouldID,HBeginDate,HEndDate,HCycleUnit,HCheckCycle,HExplanation,HInnerBillNo" +
+                        ") " +
+                        " values('" + HBillType + "','" + HBillType + "'," + HInterID.ToString() + ",'" + HBillNo + "','" + HDate + "'" +
+                        ", " + HYear.ToString() + "," + HPeriod.ToString() + ",'" + HRemark + "','" + HMaker + "',getdate()" +
+                         ", " + HMouldID.ToString() + ", '" + DateTime.Now.ToShortDateString() + "','" + DateTime.Now.AddMonths(1).ToShortDateString() + "','" + HCycleUnit + "', " + HCheckCycle.ToString() + ",'" + HExplanation + "','" + "" + "'" +
+
+                        ") ");
+                        //鎻掑叆瀛愯〃
+                        oCN.RunProc("Insert into Sc_MouldDotCheckRuleBillSub " +
+                         " (HInterID,HEntryID,HCloseMan,HEntryCloseDate,HCloseType,HRemark" +
+                         ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
+                         ",HDotCheckItemID,HDotCheckItem,HDotCheckPart,HClaim,HManagerID,HDotCheckItemClassID,HDotCheckItemMethodID" +
+                         ") values("
+                         + HInterID.ToString() + "," + 1 + ",'" + "" + "'," + DateTime.Now.ToShortDateString() + "," + Convert.ToString(false ? 1 : 0) + ",'" + HSubRemark + "'" +
+                         "," + 0 + "," + 0 + ",'" + "" + "','" + "" + "'," + 0 + "," + 0 +
+                         "," + HDotCheckItemID.ToString() + ",'" + HDotCheckItem + "','" + HDotCheckPart + "','" + HClaim + "'," + HManagerID.ToString() + "," + HDotCheckItemClassID + "," + 0 +
+                         ") ");
+                    }
+                    else
+                    {
+                        long HInterID = long.Parse(ds.Tables[0].Rows[0]["HInterID"].ToString());
+                        //鑾峰彇鏈�澶у瓙id
+                        DataSet ds2 = oCN.RunProcReturn("select max(HEntryID) HEntryID from Sc_MouldDotCheckRuleBillSub where HInterID='" + HInterID + "'", "Sc_MouldDotCheckRuleBillSub");
+                        long HEntryID = 1;
+                        if (ds2.Tables[0].Rows.Count > 0)
+                        {
+                            HEntryID = long.Parse(ds2.Tables[0].Rows[0]["HEntryID"].ToString()) + 1;
+                        }
+                        //鎻掑叆瀛愯〃
+                        oCN.RunProc("Insert into Sc_MouldDotCheckRuleBillSub " +
+                         " (HInterID,HEntryID,HCloseMan,HEntryCloseDate,HCloseType,HRemark" +
+                         ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
+                         ",HDotCheckItemID,HDotCheckItem,HDotCheckPart,HClaim,HManagerID,HDotCheckItemClassID,HDotCheckItemMethodID" +
+                         ") values("
+                         + HInterID.ToString() + "," + HEntryID + ",'" + "" + "'," + DateTime.Now.ToShortDateString() + "," + Convert.ToString(false ? 1 : 0) + ",'" + HSubRemark + "'" +
+                         "," + 0 + "," + 0 + ",'" + "" + "','" + "" + "'," + 0 + "," + 0 +
+                         "," + HDotCheckItemID.ToString() + ",'" + HDotCheckItem + "','" + HDotCheckPart + "','" + HClaim + "'," + HManagerID.ToString() + "," + HDotCheckItemClassID + "," + 0 +
+                         ") ");
+                    }
+
+                    i++;
+                }
+
+                oCN.Commit();
+
+                objJsonResult.code = CodeConstant.SUCCEED;
+                objJsonResult.count = CountConstant.SUCCEED;
+                objJsonResult.Message = "瀵煎叆鎴愬姛!";
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                LogService.Write(e);
+                oCN.RollBack();
+                objJsonResult.code = CodeConstant.FAIL;
+                objJsonResult.count = CountConstant.FAIL;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+        #endregion
+
     }
 }
\ No newline at end of file
diff --git a/WebAPI/Controllers/MJGL/Sc_MouldMaintainRuleBillController.cs b/WebAPI/Controllers/MJGL/Sc_MouldMaintainRuleBillController.cs
index 43dbbd8..95517a5 100644
--- a/WebAPI/Controllers/MJGL/Sc_MouldMaintainRuleBillController.cs
+++ b/WebAPI/Controllers/MJGL/Sc_MouldMaintainRuleBillController.cs
@@ -9,7 +9,10 @@
 using System.Net.Http;
 using System.Web.Http;
 using WebAPI.Models;
-
+using System.Web;
+using WebAPI.Controllers.SCGL.鏃ヨ鍒掔鐞�;
+using System.IO;
+using SyntacticSugar.constant;
 namespace WebAPI.Controllers.MJGL
 {
     public class Sc_MouldMaintainRuleBillController : ApiController
@@ -627,5 +630,375 @@
         }
         #endregion
 
+        #region 鍣ㄥ叿淇濆吇瑙勭▼ 鏂囦欢瀵煎叆淇濆瓨
+        #region 鍣ㄥ叿淇濆吇瑙勭▼ 鏂囦欢涓婁紶
+        [Route("Sc_MouldMaintainRuleBill/Sc_MouldMaintainRuleBill_Excel")]
+        [HttpPost]
+        public object Sc_MouldMaintainRuleBill_Excel()
+        {
+            try
+            {
+                //鑾峰彇鏂囦欢鍚嶇О
+                var file = HttpContext.Current.Request.Files[0];
+                //鑾峰彇鏂囦欢鐗╃悊璺緞
+                string ExcelPath = HttpContext.Current.Server.MapPath("~/" + file.FileName);
+                //淇濆瓨鏂囦欢
+                file.SaveAs(ExcelPath);
+
+                NpoiHelper np = new NpoiHelper();
+                DataSet ExcelDs = np.ReadExcel(ExcelPath, 1, 1, "0");
+
+                //鍒犻櫎鏂囦欢
+                File.Delete(ExcelPath);
+
+                //鍒涘缓涓存椂琛�
+                DataTable tb2 = new DataTable("dt2");
+
+                //娣诲姞鍒楀悕
+                for (int i = 0; i < ExcelDs.Tables[0].Columns.Count; i++)
+                {
+                    tb2.Columns.Add(ExcelDs.Tables[0].Rows[0][i].ToString());
+                }
+
+                //妯℃澘缂哄皯鍒� 浣嗛渶瑕佷粠鏁版嵁搴撲腑鏌ヨ鍑烘潵鏄剧ず鍦ㄩ〉闈㈢殑瀛楁
+                tb2.Columns.Add("HOrgID", typeof(Int32));//缁勭粐ID
+                tb2.Columns.Add("HMaintainItemID", typeof(Int32));//淇濆吇椤圭洰ID
+                tb2.Columns.Add("HManagerID", typeof(Int32));//璐熻矗浜篒D
+                //娣诲姞鏁版嵁
+                for (int i = 1; i < ExcelDs.Tables[0].Rows.Count; i++)
+                {
+                    DataRow row = tb2.NewRow();
+                    for (int j = 0; j < ExcelDs.Tables[0].Columns.Count; j++)
+                    {
+                        row[j] = ExcelDs.Tables[0].Rows[i][j].ToString();
+                    }
+                    tb2.Rows.Add(row);
+                }
+
+
+                var error = "";
+
+                //鏌ヨ娌℃湁鐨勫垪
+                if (!tb2.Columns.Contains("缁勭粐浠g爜"))
+                    error += "娌℃湁鎵惧埌銆愮粍缁囦唬鐮併�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("缁勭粐鍚嶇О"))
+                    error += "娌℃湁鎵惧埌銆愮粍缁囧悕绉般�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("瑙勭▼缂栧彿"))
+                    error += "娌℃湁鎵惧埌銆愯绋嬬紪鍙枫�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("瑙勭▼鍚嶇О"))
+                    error += "娌℃湁鎵惧埌銆愯绋嬪悕绉般�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("鍛ㄦ湡鍗曚綅"))
+                    error += "娌℃湁鎵惧埌銆愬懆鏈熷崟浣嶃�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("淇濆吇鍛ㄦ湡"))
+                    error += "娌℃湁鎵惧埌銆愪繚鍏诲懆鏈熴�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("鎽樿"))
+                    error += "娌℃湁鎵惧埌銆愭憳瑕併�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("琛ㄥご澶囨敞"))
+                    error += "娌℃湁鎵惧埌銆愯〃澶村娉ㄣ�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("淇濆吇椤圭洰浠g爜"))
+                    error += "娌℃湁鎵惧埌銆愪繚鍏婚」鐩唬鐮併�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("淇濆吇椤圭洰鍚嶇О"))
+                    error += "娌℃湁鎵惧埌銆愪繚鍏婚」鐩悕绉般�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("淇濆吇閮ㄤ綅"))
+                    error += "娌℃湁鎵惧埌銆愪繚鍏婚儴浣嶃�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("鍏蜂綋瑕佹眰"))
+                    error += "娌℃湁鎵惧埌銆愬叿浣撹姹傘�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("璐熻矗浜轰唬鐮�"))
+                    error += "娌℃湁鎵惧埌銆愯礋璐d汉浠g爜銆戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("璐熻矗浜�"))
+                    error += "娌℃湁鎵惧埌銆愯礋璐d汉銆戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("琛ㄤ綋澶囨敞"))
+                    error += "娌℃湁鎵惧埌銆愯〃浣撳娉ㄣ�戠殑鏍囬,";
+
+                if (error.Length > 0)
+                {
+                    objJsonResult.code = CodeConstant.FAIL;
+                    objJsonResult.count = CountConstant.FAIL;
+                    objJsonResult.Message = $"Excel妯℃澘瀛樺湪閿欒,{error}\r\n";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                for (int i = 0; i <= tb2.Rows.Count - 1; i++)
+                {
+                    string HName = "";
+                    string HNum = "";
+                    string HORGNumber = "";
+                    string HORGName = "";
+                    string HManagerName = "";
+                    string HManagerNumber = "";
+                    string HMaintainItemNumber = "";
+                    string HMaintainItemName = "";
+
+                    HName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["瑙勭▼缂栧彿"].ToString());
+                    HNum = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["瑙勭▼鍚嶇О"].ToString());
+                    HORGNumber = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["缁勭粐浠g爜"].ToString());
+                    HORGName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["缁勭粐鍚嶇О"].ToString());
+                    HManagerNumber = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["璐熻矗浜轰唬鐮�"].ToString());
+                    HManagerName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["璐熻矗浜�"].ToString());
+                    HMaintainItemNumber = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["淇濆吇椤圭洰浠g爜"].ToString());
+                    HMaintainItemName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["淇濆吇椤圭洰鍚嶇О"].ToString());
+
+                    //妫�鏌�
+                    int index = i + 1;
+                    //缁勭粐
+                    if (HORGNumber != "")
+                    {
+                        //鏌ヨ缁勭粐
+                        ds = oCN.RunProcReturn("select * from Xt_ORGANIZATIONS where  HNumber='" + HORGNumber + "' and Hname='" + HORGName + "'", "Xt_ORGANIZATIONS");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = CodeConstant.FAIL;
+                            objJsonResult.count = CountConstant.FAIL;
+                            objJsonResult.Message = "绗�" + index + "琛�,缁勭粐涓嶅瓨鍦紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HOrgID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+                        string HORGid = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                    }
+                    else
+                    {
+                        objJsonResult.code = CodeConstant.FAIL;
+                        objJsonResult.count = CountConstant.FAIL;
+                        objJsonResult.Message = "绗�" + index + "琛�,缁勭粐浠g爜涓虹┖";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    //淇濆吇椤圭洰浠g爜
+                    if (HMaintainItemNumber != "")
+                    {
+                        //鏌ヨ缁勭粐
+                        ds = oCN.RunProcReturn("select * from Gy_Maintain where  HNumber='" + HMaintainItemNumber + "' and Hname='" + HMaintainItemName + "'", "Gy_Maintain");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = CodeConstant.FAIL;
+                            objJsonResult.count = CountConstant.FAIL;
+                            objJsonResult.Message = "绗�" + index + "琛�,淇濆吇椤圭洰涓嶅瓨鍦紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HMaintainItemID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+                        string HMaintainItemID = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                    }
+                    else
+                    {
+                        objJsonResult.code = CodeConstant.FAIL;
+                        objJsonResult.count = CountConstant.FAIL;
+                        objJsonResult.Message = "绗�" + index + "琛�,淇濆吇椤圭洰浠g爜涓虹┖";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    //璐熻矗浜轰唬鐮�
+                    if (HManagerNumber != "")
+                    {
+                        //鏌ヨ缁勭粐
+                        ds = oCN.RunProcReturn("select * from Gy_Employee where  HNumber='" + HManagerNumber + "' and Hname='" + HManagerName + "'", "Gy_Employee");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = CodeConstant.FAIL;
+                            objJsonResult.count = CountConstant.FAIL;
+                            objJsonResult.Message = "绗�" + index + "琛�,璐熻矗浜轰笉瀛樺湪锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HManagerID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+                    }
+                    //鍣ㄥ叿淇濆吇瑙勭▼鍚嶇О
+                    if (HName == "")
+                    {
+                        objJsonResult.code = CodeConstant.FAIL;
+                        objJsonResult.count = CountConstant.FAIL;
+                        objJsonResult.Message = "绗�" + index + "琛�,鍣ㄥ叿淇濆吇瑙勭▼鍚嶇О涓嶈兘涓虹┖锛�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+
+                    //鍣ㄥ叿淇濆吇瑙勭▼浠g爜
+                    if (HNum == "")
+                    {
+                        objJsonResult.code = CodeConstant.FAIL;
+                        objJsonResult.count = CountConstant.FAIL;
+                        objJsonResult.Message = "绗�" + index + "琛�,鍣ㄥ叿淇濆吇瑙勭▼浠g爜涓嶈兘涓虹┖锛�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+
+                objJsonResult.code = CodeConstant.SUCCEED;
+                objJsonResult.count = CountConstant.SUCCEED;
+                objJsonResult.Message = error;
+                objJsonResult.data = tb2;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = CodeConstant.FAIL;
+                objJsonResult.count = CountConstant.FAIL;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 鍣ㄥ叿淇濆吇瑙勭▼椤圭洰 瀵煎叆(淇濆瓨)
+        [Route("Sc_MouldMaintainRuleBill/Sc_MouldMaintainRuleBill_btnSave")]
+        [HttpPost]
+        public object Sc_MouldMaintainRuleBill_btnSave([FromBody] JObject sMainSub)
+        {
+            var _value = sMainSub["sMainSub"].ToString();
+            string msg1 = _value.ToString();
+            string[] sArray = msg1.Split(new string[] { "&鍜�" }, StringSplitOptions.RemoveEmptyEntries);
+            string msg2 = sArray[0].ToString();
+            string user = sArray[1].ToString();
+            try
+            {
+                if (!DBUtility.ClsPub.Security_Log("Sc_MouldMaintainRuleBill_Edit", 1, false, user))
+                {
+                    objJsonResult.code = CodeConstant.FAIL;
+                    objJsonResult.count = CountConstant.FAIL;
+                    objJsonResult.Message = "鏃犱繚瀛樻潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                List<object> Excel = Newtonsoft.Json.JsonConvert.DeserializeObject<List<object>>(msg2);
+                List<Dictionary<string, string>> list = new List<Dictionary<string, string>>();
+
+                foreach (JObject item in Excel)
+                {
+                    Dictionary<string, string> dic = new Dictionary<string, string>();
+                    foreach (var itm in item.Properties())
+                    {
+                        dic.Add(itm.Name, itm.Value.ToString());
+                    }
+                    list.Add(dic);
+                }
+
+                oCN.BeginTran();
+                int i = 1;
+                foreach (Dictionary<string, string> item in list)
+                {
+                    string HBillType = "3833";
+                    string HMaker = user;//鍒跺崟浜�
+                    DateTime HDate = DBUtility.ClsPub.isDate(DateTime.Now.ToString("yyyy-MM-dd"));//  --鏃ユ湡
+                    long HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year);
+                    long HPeriod = DBUtility.ClsPub.isLong(DateTime.Now.Month);
+                    string HOrgID = item["HOrgID"].ToString();//缁勭粐ID
+                    string HName = item["瑙勭▼鍚嶇О"].ToString();
+                    string HBillNo = item["瑙勭▼缂栧彿"].ToString();
+                    string HCycleUnit = item["鍛ㄦ湡鍗曚綅"].ToString();
+                    string HCheckCycle = item["淇濆吇鍛ㄦ湡"].ToString();
+                    string HExplanation = item["鎽樿"].ToString();
+                    string HRemark = item["琛ㄥご澶囨敞"].ToString();
+                    //瀛愯〃
+                    string HMaintainItemID = item["HMaintainItemID"].ToString();//淇濆吇椤圭洰
+                    string HManagerID = item["HManagerID"].ToString() == "" ? "0" : item["HManagerID"].ToString();//璐熻矗浜�
+                    string HMaintainPart = item["淇濆吇閮ㄤ綅"].ToString();
+                    string HClaim = item["鍏蜂綋瑕佹眰"].ToString();
+                    string HSubRemark = item["琛ㄤ綋澶囨敞"].ToString();
+                    string HMaintainItem = item["淇濆吇椤圭洰鍚嶇О"].ToString();
+                    ds = oCN.RunProcReturn("select * from Sc_MouldMaintainRuleBillMain where HBillNo='" + HBillNo + "'", "Sc_MouldMaintainRuleBillMain");
+
+                    if (ds.Tables[0].Rows.Count == 0)
+                    {
+                        long HInterID = DBUtility.ClsPub.CreateBillID(HBillType, ref DBUtility.ClsPub.sExeReturnInfo);
+                        //鎻掑叆涓昏〃
+                        oCN.RunProc("Insert Into Sc_MouldMaintainRuleBillMain" +
+                         "(HBillType,HBillSubType,HInterID,HBillNo,HDate" +
+                        ",HYear,HPeriod,HRemark,HMaker,HMakeDate" +
+                        ",HCycleUnit,HCheckCycle,HExplanation,HInnerBillNo,HMaintainLevID,HUseQtys,HSafeDays,HErrWarDays,HErrWarQtys" +
+                        ") " +
+                        " values('" + HBillType + "','" + HBillType + "'," + HInterID + ",'" + HBillNo + "','" + HDate + "'" +
+                        ", " + HYear.ToString() + "," + HPeriod.ToString() + ",'" + HRemark + "','" + HMaker + "',getdate()" +
+                        ",'" + HCycleUnit + "'," + HCheckCycle.ToString() + ",'" + HExplanation + "','" + " " + "'," + 0 + "," + 0 + "," + 0 + "," + 0 + "," + 0 +
+                        ") ");
+                        //鎻掑叆瀛愯〃
+                        oCN.RunProc("Insert into Sc_MouldMaintainRuleBillSub_Item " +
+                          " (HInterID,HEntryID,HCloseMan,HEntryCloseDate,HCloseType,HRemark" +
+                          ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
+                          ",HMaintainItemID,HMaintainItem,HMaintainPart" +
+                          ",HClaim,HManagerID" +
+                          ") values("
+                          + HInterID.ToString() + "," + 1 + ",'" + "" + "'," + DateTime.Now.ToShortDateString() + "," + Convert.ToString(false ? 1 : 0) + ",'" + HSubRemark + "'" +
+                          "," + 0 + "," + 0 + ",'" + "" + "','" + "" + "'," + 0 + "," + 0 +
+                          "," + HMaintainItemID.ToString() + ",'" + HMaintainItem + "','" + HMaintainPart + "','" + HClaim + "'," + HManagerID.ToString() +
+                          ") ");
+                    }
+                    else
+                    {
+                        long HInterID = long.Parse(ds.Tables[0].Rows[0]["HInterID"].ToString());
+                        //鑾峰彇鏈�澶у瓙id
+                        DataSet ds2 = oCN.RunProcReturn("select max(HEntryID) HEntryID from Sc_MouldMaintainRuleBillSub_Item where HInterID='" + HInterID + "'", "Sc_MouldMaintainRuleBillSub_Item");
+                        long HEntryID = 1;
+                        if (ds2.Tables[0].Rows.Count > 0)
+                        {
+                             HEntryID = long.Parse(ds2.Tables[0].Rows[0]["HEntryID"].ToString())+1;
+                        }
+                            //鎻掑叆瀛愯〃
+                        oCN.RunProc("Insert into Sc_MouldMaintainRuleBillSub_Item " +
+                        " (HInterID,HEntryID,HCloseMan,HEntryCloseDate,HCloseType,HRemark" +
+                        ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
+                        ",HMaintainItemID,HMaintainItem,HMaintainPart" +
+                        ",HClaim,HManagerID" +
+                        ") values("
+                        + HInterID.ToString() + "," + HEntryID + ",'" + "" + "'," + DateTime.Now.ToShortDateString() + "," + Convert.ToString(false ? 1 : 0) + ",'" + HSubRemark + "'" +
+                        "," + 0 + "," + 0 + ",'" + "" + "','" + "" + "'," + 0 + "," + 0 +
+                        "," + HMaintainItemID.ToString() + ",'" + HMaintainItem + "','" + HMaintainPart + "','" + HClaim + "'," + HManagerID.ToString() +
+                        ") ");
+                    }
+
+                    i++;
+                }
+
+                oCN.Commit();
+
+                objJsonResult.code = CodeConstant.SUCCEED;
+                objJsonResult.count = CountConstant.SUCCEED;
+                objJsonResult.Message = "瀵煎叆鎴愬姛!";
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                LogService.Write(e);
+                oCN.RollBack();
+                objJsonResult.code = CodeConstant.FAIL;
+                objJsonResult.count = CountConstant.FAIL;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+        #endregion
+
     }
 }
diff --git a/WebAPI/Controllers/MJGL/Sc_MouldProdMoveBillListController.cs b/WebAPI/Controllers/MJGL/Sc_MouldProdMoveBillListController.cs
index de79d99..4c57f43 100644
--- a/WebAPI/Controllers/MJGL/Sc_MouldProdMoveBillListController.cs
+++ b/WebAPI/Controllers/MJGL/Sc_MouldProdMoveBillListController.cs
@@ -5,6 +5,8 @@
 using System.Data;
 using System.Web.Http;
 using WebAPI.Models;
+using SyntacticSugar.constant;
+using Newtonsoft.Json;
 namespace WebAPI.Controllers
 {
     /**
@@ -134,6 +136,61 @@
 
         #endregion
 
+        #region 鍣ㄥ叿鐩存帴璋冩嫧鍗曞垎椤靛垪琛�
+        [Route("Sc_MouldProdMoveBill/page")]
+        [HttpGet]
+        public object Sc_MouldProdMoveBillPage(string sWhere, string user, int page, int size)
+        {
+            DataSet ds;
+            try
+            {
+                List<object> columnNameList = new List<object>();
+                //鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("Sc_MouldProdMoveBillList", 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_Sc_MouldProdMoveBillList " + page + "," + size + ",''", "h_p_Sc_MouldProdMoveBillList");
+                }
+                else
+                {
+                    ds = oCn.RunProcReturn("exec h_p_Sc_MouldProdMoveBillList " + page + "," + size + ",'" + sWhere + "'", "h_p_Sc_MouldProdMoveBillList");
+                }
+
+                //娣诲姞鍒楀悕
+                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鍒楀璞$殑鍒楀悕
+                }
+
+                objJsonResult.code = CodeConstant.SUCCEED;
+                objJsonResult.count = int.Parse(ds.Tables[1].Rows[0]["count"].ToString());
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.list = columnNameList;
+                objJsonResult.data = ds.Tables[0];
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = CodeConstant.FAIL;
+                objJsonResult.count = CountConstant.FAIL;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
         #region[鍣ㄥ叿鐩存帴璋冩嫧鍗曠紪杈戞椂鑾峰彇琛ㄥご鏁版嵁]
         [Route("Sc_MouldProdMoveBill/Sc_MouldProdMoveBillListCheckDetai")]
         [HttpGet]
diff --git a/WebAPI/Controllers/MJGL/Sc_MouldScrapInBillController.cs b/WebAPI/Controllers/MJGL/Sc_MouldScrapInBillController.cs
index 598cfba..82d5bda 100644
--- a/WebAPI/Controllers/MJGL/Sc_MouldScrapInBillController.cs
+++ b/WebAPI/Controllers/MJGL/Sc_MouldScrapInBillController.cs
@@ -1,9 +1,11 @@
-锘縰sing Newtonsoft.Json.Linq;
+锘縰sing Newtonsoft.Json;
 using System;
 using System.Collections.Generic;
 using System.Data;
 using System.Web.Http;
 using WebAPI.Models;
+
+using SyntacticSugar.constant;
 namespace WebAPI.Controllers
 {
     public class Sc_MouldScrapInBillController : ApiController
@@ -463,5 +465,61 @@
 
         #endregion
 
+        #region 妯″叿鎶ュ簾鍏ュ簱鍗曞垎椤靛垪琛�
+        [Route("Sc_MouldScrapInBill/page")]
+        [HttpGet]
+        public object Sc_MouldScrapInBillPage(string sWhere, string user, int page, int size)
+        {
+            DataSet ds;
+            try
+            {
+                List<object> columnNameList = new List<object>();
+                //鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("Sc_MouldScrapRequestBillList", 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_Sc_MouldScrapInHouseBillList " + page + "," + size + ",''", "h_p_Sc_MouldScrapInHouseBillList");
+                }
+                else
+                {
+                    ds = oCn.RunProcReturn("exec h_p_Sc_MouldScrapInHouseBillList " + page + "," + size + ",'" + sWhere + "'", "h_p_Sc_MouldScrapInHouseBillList");
+                }
+
+                //娣诲姞鍒楀悕
+                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鍒楀璞$殑鍒楀悕
+                }
+
+                objJsonResult.code = CodeConstant.SUCCEED;
+                objJsonResult.count = int.Parse(ds.Tables[1].Rows[0]["count"].ToString());
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.list = columnNameList;
+                objJsonResult.data = ds.Tables[0];
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = CodeConstant.FAIL;
+                objJsonResult.count = CountConstant.FAIL;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+
     }
 }
\ No newline at end of file
diff --git a/WebAPI/Controllers/ReportPlatFormController.cs b/WebAPI/Controllers/ReportPlatFormController.cs
index 5a410a8..34de546 100644
--- a/WebAPI/Controllers/ReportPlatFormController.cs
+++ b/WebAPI/Controllers/ReportPlatFormController.cs
@@ -71,6 +71,17 @@
 
             try
             {
+
+                //缂栬緫鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log_second("IpadIndex_Edit", 1, false, HUserName))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏂板浜х嚎澶辫触锛佹棤鏉冮檺锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
                 ds = oCN.RunProcReturn("select * from Gy_SourceRelationSet where HSourceID='" + HSourceID + "' and HUserName='" + HUserName + "'", "Gy_SourceRelationSet");
               
                 if (ds.Tables[0].Rows.Count > 0)
@@ -165,6 +176,17 @@
         {
             try
             {
+
+                //缂栬緫鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log_second("IpadIndex_Delete", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍒犻櫎浜х嚎澶辫触锛佹棤鏉冮檺锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
                 oCN.BeginTran();
                 //鏇存柊鍒囨崲鐘舵�佸��
                 string sql = string.Format(@"delete Gy_SourceRelationSet  where HSourceID='" + HSourceID + "' and HUserName = '" + user + "'");
diff --git a/WebAPI/Controllers/SBGL/Sb_EquipMaintainRuleBillController.cs b/WebAPI/Controllers/SBGL/Sb_EquipMaintainRuleBillController.cs
index c08f545..75c44db 100644
--- a/WebAPI/Controllers/SBGL/Sb_EquipMaintainRuleBillController.cs
+++ b/WebAPI/Controllers/SBGL/Sb_EquipMaintainRuleBillController.cs
@@ -9,7 +9,10 @@
 using System.Net.Http;
 using System.Web.Http;
 using WebAPI.Models;
-
+using System.Web;
+using WebAPI.Controllers.SCGL.鏃ヨ鍒掔鐞�;
+using System.IO;
+using SyntacticSugar.constant;
 namespace WebAPI.Controllers.SBGL
 {
     public class Sb_EquipMaintainRuleBillController : ApiController
@@ -616,5 +619,383 @@
             }
         }
         #endregion
+
+        #region 璁惧淇濆吇瑙勭▼ 鏂囦欢瀵煎叆淇濆瓨
+        #region 璁惧淇濆吇瑙勭▼ 鏂囦欢涓婁紶
+        [Route("Sb_EquipMaintainRuleBill/Sb_EquipMaintainRuleBill_Excel")]
+        [HttpPost]
+        public object Sb_EquipMaintainRuleBill_Excel()
+        {
+            try
+            {
+                //鑾峰彇鏂囦欢鍚嶇О
+                var file = HttpContext.Current.Request.Files[0];
+                //鑾峰彇鏂囦欢鐗╃悊璺緞
+                string ExcelPath = HttpContext.Current.Server.MapPath("~/" + file.FileName);
+                //淇濆瓨鏂囦欢
+                file.SaveAs(ExcelPath);
+
+                NpoiHelper np = new NpoiHelper();
+                DataSet ExcelDs = np.ReadExcel(ExcelPath, 1, 1, "0");
+
+                //鍒犻櫎鏂囦欢
+                File.Delete(ExcelPath);
+
+                //鍒涘缓涓存椂琛�
+                DataTable tb2 = new DataTable("dt2");
+
+                //娣诲姞鍒楀悕
+                for (int i = 0; i < ExcelDs.Tables[0].Columns.Count; i++)
+                {
+                    tb2.Columns.Add(ExcelDs.Tables[0].Rows[0][i].ToString());
+                }
+
+                //妯℃澘缂哄皯鍒� 浣嗛渶瑕佷粠鏁版嵁搴撲腑鏌ヨ鍑烘潵鏄剧ず鍦ㄩ〉闈㈢殑瀛楁
+                tb2.Columns.Add("HOrgID", typeof(Int32));//缁勭粐ID
+                tb2.Columns.Add("HMaintainItemID", typeof(Int32));//淇濆吇椤圭洰ID
+                tb2.Columns.Add("HManagerID", typeof(Int32));//璐熻矗浜篒D
+                //娣诲姞鏁版嵁
+                for (int i = 1; i < ExcelDs.Tables[0].Rows.Count; i++)
+                {
+                    DataRow row = tb2.NewRow();
+                    for (int j = 0; j < ExcelDs.Tables[0].Columns.Count; j++)
+                    {
+                        row[j] = ExcelDs.Tables[0].Rows[i][j].ToString();
+                    }
+                    tb2.Rows.Add(row);
+                }
+
+
+                var error = "";
+
+                //鏌ヨ娌℃湁鐨勫垪
+                if (!tb2.Columns.Contains("缁勭粐浠g爜"))
+                    error += "娌℃湁鎵惧埌銆愮粍缁囦唬鐮併�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("缁勭粐鍚嶇О"))
+                    error += "娌℃湁鎵惧埌銆愮粍缁囧悕绉般�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("瑙勭▼缂栧彿"))
+                    error += "娌℃湁鎵惧埌銆愯绋嬬紪鍙枫�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("瑙勭▼鍚嶇О"))
+                    error += "娌℃湁鎵惧埌銆愯绋嬪悕绉般�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("鍛ㄦ湡鍗曚綅"))
+                    error += "娌℃湁鎵惧埌銆愬懆鏈熷崟浣嶃�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("淇濆吇鍛ㄦ湡"))
+                    error += "娌℃湁鎵惧埌銆愪繚鍏诲懆鏈熴�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("鎽樿"))
+                    error += "娌℃湁鎵惧埌銆愭憳瑕併�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("琛ㄥご澶囨敞"))
+                    error += "娌℃湁鎵惧埌銆愯〃澶村娉ㄣ�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("淇濆吇椤圭洰浠g爜"))
+                    error += "娌℃湁鎵惧埌銆愪繚鍏婚」鐩唬鐮併�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("淇濆吇椤圭洰鍚嶇О"))
+                    error += "娌℃湁鎵惧埌銆愪繚鍏婚」鐩悕绉般�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("淇濆吇閮ㄤ綅"))
+                    error += "娌℃湁鎵惧埌銆愪繚鍏婚儴浣嶃�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("鍏蜂綋瑕佹眰"))
+                    error += "娌℃湁鎵惧埌銆愬叿浣撹姹傘�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("璐熻矗浜轰唬鐮�"))
+                    error += "娌℃湁鎵惧埌銆愯礋璐d汉浠g爜銆戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("璐熻矗浜�"))
+                    error += "娌℃湁鎵惧埌銆愯礋璐d汉銆戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("琛ㄤ綋澶囨敞"))
+                    error += "娌℃湁鎵惧埌銆愯〃浣撳娉ㄣ�戠殑鏍囬,";
+
+                if (error.Length > 0)
+                {
+                    objJsonResult.code = CodeConstant.FAIL;
+                    objJsonResult.count = CountConstant.FAIL;
+                    objJsonResult.Message = $"Excel妯℃澘瀛樺湪閿欒,{error}\r\n";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                for (int i = 0; i <= tb2.Rows.Count - 1; i++)
+                {
+                    string HName = "";
+                    string HNum = "";
+                    string HORGNumber = "";
+                    string HORGName = "";
+                    string HManagerName = "";
+                    string HManagerNumber = "";
+                    string HMaintainItemNumber = "";
+                    string HMaintainItemName = "";
+
+                    HName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["瑙勭▼缂栧彿"].ToString());
+                    HNum = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["瑙勭▼鍚嶇О"].ToString());
+                    HORGNumber = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["缁勭粐浠g爜"].ToString());
+                    HORGName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["缁勭粐鍚嶇О"].ToString());
+                    HManagerNumber = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["璐熻矗浜轰唬鐮�"].ToString());
+                    HManagerName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["璐熻矗浜�"].ToString());
+                    HMaintainItemNumber = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["淇濆吇椤圭洰浠g爜"].ToString());
+                    HMaintainItemName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["淇濆吇椤圭洰鍚嶇О"].ToString());
+
+                    //妫�鏌�
+                    int index = i + 1;
+                    //缁勭粐
+                    if (HORGNumber != "")
+                    {
+                        //鏌ヨ缁勭粐
+                        ds = oCN.RunProcReturn("select * from Xt_ORGANIZATIONS where  HNumber='" + HORGNumber + "' and Hname='" + HORGName + "'", "Xt_ORGANIZATIONS");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = CodeConstant.FAIL;
+                            objJsonResult.count = CountConstant.FAIL;
+                            objJsonResult.Message = "绗�" + index + "琛�,缁勭粐涓嶅瓨鍦紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HOrgID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+                        string HORGid = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                    }
+                    else
+                    {
+                        objJsonResult.code = CodeConstant.FAIL;
+                        objJsonResult.count = CountConstant.FAIL;
+                        objJsonResult.Message = "绗�" + index + "琛�,缁勭粐浠g爜涓虹┖";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    //淇濆吇椤圭洰浠g爜
+                    if (HMaintainItemNumber != "")
+                    {
+                        //鏌ヨ缁勭粐
+                        ds = oCN.RunProcReturn("select * from Gy_Maintain where  HNumber='" + HMaintainItemNumber + "' and Hname='" + HMaintainItemName + "'", "Gy_Maintain");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = CodeConstant.FAIL;
+                            objJsonResult.count = CountConstant.FAIL;
+                            objJsonResult.Message = "绗�" + index + "琛�,淇濆吇椤圭洰涓嶅瓨鍦紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HMaintainItemID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+                        string HMaintainItemID = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                    }
+                    else
+                    {
+                        objJsonResult.code = CodeConstant.FAIL;
+                        objJsonResult.count = CountConstant.FAIL;
+                        objJsonResult.Message = "绗�" + index + "琛�,淇濆吇椤圭洰浠g爜涓虹┖";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    //璐熻矗浜轰唬鐮�
+                    if (HManagerNumber != "")
+                    {
+                        //鏌ヨ缁勭粐
+                        ds = oCN.RunProcReturn("select * from Gy_Employee where  HNumber='" + HManagerNumber + "' and Hname='" + HManagerName + "'", "Gy_Employee");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = CodeConstant.FAIL;
+                            objJsonResult.count = CountConstant.FAIL;
+                            objJsonResult.Message = "绗�" + index + "琛�,璐熻矗浜轰笉瀛樺湪锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HManagerID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+                    }
+                    //璁惧淇濆吇瑙勭▼鍚嶇О
+                    if (HName == "")
+                    {
+                        objJsonResult.code = CodeConstant.FAIL;
+                        objJsonResult.count = CountConstant.FAIL;
+                        objJsonResult.Message = "绗�" + index + "琛�,璁惧淇濆吇瑙勭▼鍚嶇О涓嶈兘涓虹┖锛�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+
+                    //璁惧淇濆吇瑙勭▼浠g爜
+                    if (HNum == "")
+                    {
+                        objJsonResult.code = CodeConstant.FAIL;
+                        objJsonResult.count = CountConstant.FAIL;
+                        objJsonResult.Message = "绗�" + index + "琛�,璁惧淇濆吇瑙勭▼浠g爜涓嶈兘涓虹┖锛�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+
+                objJsonResult.code = CodeConstant.SUCCEED;
+                objJsonResult.count = CountConstant.SUCCEED;
+                objJsonResult.Message = error;
+                objJsonResult.data = tb2;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = CodeConstant.FAIL;
+                objJsonResult.count = CountConstant.FAIL;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 璁惧淇濆吇瑙勭▼椤圭洰 瀵煎叆(淇濆瓨)
+        [Route("Sb_EquipMaintainRuleBill/Sb_EquipMaintainRuleBill_btnSave")]
+        [HttpPost]
+        public object Sb_EquipMaintainRuleBill_btnSave([FromBody] JObject sMainSub)
+        {
+            var _value = sMainSub["sMainSub"].ToString();
+            string msg1 = _value.ToString();
+            string[] sArray = msg1.Split(new string[] { "&鍜�" }, StringSplitOptions.RemoveEmptyEntries);
+            string msg2 = sArray[0].ToString();
+            string user = sArray[1].ToString();
+            try
+            {
+                if (!DBUtility.ClsPub.Security_Log("Sb_EquipMaintainRuleBill_Edit", 1, false, user))
+                {
+                    objJsonResult.code = CodeConstant.FAIL;
+                    objJsonResult.count = CountConstant.FAIL;
+                    objJsonResult.Message = "鏃犱繚瀛樻潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                List<object> Excel = Newtonsoft.Json.JsonConvert.DeserializeObject<List<object>>(msg2);
+                List<Dictionary<string, string>> list = new List<Dictionary<string, string>>();
+
+                foreach (JObject item in Excel)
+                {
+                    Dictionary<string, string> dic = new Dictionary<string, string>();
+                    foreach (var itm in item.Properties())
+                    {
+                        dic.Add(itm.Name, itm.Value.ToString());
+                    }
+                    list.Add(dic);
+                }
+
+                oCN.BeginTran();
+                int i = 1;
+                foreach (Dictionary<string, string> item in list)
+                {
+                    string HBillType = "3912";
+                    string HMaker = user;//鍒跺崟浜�
+                    DateTime HDate = DBUtility.ClsPub.isDate(DateTime.Now.ToString("yyyy-MM-dd"));//  --鏃ユ湡
+                    long HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year);
+                    long HPeriod = DBUtility.ClsPub.isLong(DateTime.Now.Month);
+                    string HOrgID = item["HOrgID"].ToString();//缁勭粐ID
+                    string HName = item["瑙勭▼鍚嶇О"].ToString();
+                    string HBillNo = item["瑙勭▼缂栧彿"].ToString();
+                    string HCycleUnit = item["鍛ㄦ湡鍗曚綅"].ToString();
+                    string HCheckCycle = item["淇濆吇鍛ㄦ湡"].ToString();
+                    string HExplanation = item["鎽樿"].ToString();
+                    string HRemark = item["琛ㄥご澶囨敞"].ToString();
+                    //瀛愯〃
+                    string HMaintainItemID = item["HMaintainItemID"].ToString();//淇濆吇椤圭洰
+                    string HManagerID = item["HManagerID"].ToString() == "" ? "0" : item["HManagerID"].ToString();//璐熻矗浜�
+                    string HMaintainPart = item["淇濆吇閮ㄤ綅"].ToString();
+                    string HClaim = item["鍏蜂綋瑕佹眰"].ToString();
+                    string HSubRemark = item["琛ㄤ綋澶囨敞"].ToString();
+                    string HMaintainItem = item["淇濆吇椤圭洰鍚嶇О"].ToString();
+                    ds = oCN.RunProcReturn("select * from Sb_EquipMaintainRuleBillMain where HBillNo='" + HBillNo + "'", "Sb_EquipMaintainRuleBillMain");
+
+                    if (ds.Tables[0].Rows.Count == 0)
+                    {
+                        long HInterID = DBUtility.ClsPub.CreateBillID(HBillType, ref DBUtility.ClsPub.sExeReturnInfo);
+                        //鎻掑叆涓昏〃
+                        oCN.RunProc("Insert Into Sb_EquipMaintainRuleBillMain   " +
+                        "(HBillType,HBillSubType,HInterID,HBillNo,HDate,HMaker,HMakeDate" +
+                        ",HYear,HPeriod,HRemark" +
+                        ",HCheckCycle,HCycleUnit,HExplanation,HInnerBillNo,HMaintainLevID,HSafeDays,HErrWarDays" +
+                        ") " +
+                        " values('" + HBillType + "','" + HBillType + "'," + HInterID.ToString() + ",'" + HBillNo + "','" + HDate + "','" + HMaker + "',getdate()" +
+                        "," + HYear.ToString() + "," + HPeriod.ToString() + ",'" + HRemark +
+                        "'," + HCheckCycle.ToString() + ",'" + HCycleUnit + "','" + HExplanation + "','" + "" + "'," + 0 + "," + 0 + ", " + 0 +
+                        ") ");
+                        //鎻掑叆瀛愯〃
+                        oCN.RunProc("Insert into Sb_EquipMaintainRuleBillSub_Item" +
+                          " (HInterID,HEntryID,HMaintainItemID,HMaintainItem" +
+                          ",HMaintainPart,HClaim" +
+                          ",HManagerID" +
+                          ",HCloseMan,HCloseType,HRemark" +
+                          ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
+                          ") values("
+                          + HInterID.ToString() + "," + 1 + "," + HMaintainItemID.ToString() + ",'" + HMaintainItem.ToString() + "'" +
+                          ",'" + HMaintainPart.ToString() + "','" + HClaim.ToString() + "'" +
+                          "," + HManagerID.ToString() +
+                          ",'" + "" + "'," + Convert.ToString(false ? 1 : 0) + ",'" + HSubRemark + "'" +
+                          "," + 0 + "," + 0 + ",'" + "" + "','" + "" + "'," + 0 + "," + 0 +
+                          ") ");
+                    }
+                    else
+                    {
+                        long HInterID = long.Parse(ds.Tables[0].Rows[0]["HInterID"].ToString());
+                        //鑾峰彇鏈�澶у瓙id
+                        DataSet ds2 = oCN.RunProcReturn("select max(HEntryID) HEntryID from Sb_EquipMaintainRuleBillSub_Item where HInterID='" + HInterID + "'", "Sb_EquipMaintainRuleBillSub_Item");
+                        long HEntryID = 1;
+                        if (ds2.Tables[0].Rows.Count > 0)
+                        {
+                            HEntryID = long.Parse(ds2.Tables[0].Rows[0]["HEntryID"].ToString()) + 1;
+                        }
+                        //鎻掑叆瀛愯〃
+                        //鎻掑叆瀛愯〃
+                        oCN.RunProc("Insert into Sb_EquipMaintainRuleBillSub_Item" +
+                          " (HInterID,HEntryID,HMaintainItemID,HMaintainItem" +
+                          ",HMaintainPart,HClaim" +
+                          ",HManagerID" +
+                          ",HCloseMan,HCloseType,HRemark" +
+                          ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
+                          ") values("
+                          + HInterID.ToString() + "," + HEntryID + "," + HMaintainItemID.ToString() + ",'" + HMaintainItem.ToString() + "'" +
+                          ",'" + HMaintainPart.ToString() + "','" + HClaim.ToString() + "'" +
+                          "," + HManagerID.ToString() +
+                          ",'" + "" + "'," + Convert.ToString(false ? 1 : 0) + ",'" + HSubRemark + "'" +
+                          "," + 0 + "," + 0 + ",'" + "" + "','" + "" + "'," + 0 + "," + 0 +
+                          ") ");
+                    }
+
+                    i++;
+                }
+
+                oCN.Commit();
+
+                objJsonResult.code = CodeConstant.SUCCEED;
+                objJsonResult.count = CountConstant.SUCCEED;
+                objJsonResult.Message = "瀵煎叆鎴愬姛!";
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                LogService.Write(e);
+                oCN.RollBack();
+                objJsonResult.code = CodeConstant.FAIL;
+                objJsonResult.count = CountConstant.FAIL;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+        #endregion
+
     }
 }
diff --git "a/WebAPI/Controllers/SCGL/\346\227\245\350\256\241\345\210\222\347\256\241\347\220\206/JIT_DayPlanPlatFormBillController.cs" "b/WebAPI/Controllers/SCGL/\346\227\245\350\256\241\345\210\222\347\256\241\347\220\206/JIT_DayPlanPlatFormBillController.cs"
index 33442ff..c416d59 100644
--- "a/WebAPI/Controllers/SCGL/\346\227\245\350\256\241\345\210\222\347\256\241\347\220\206/JIT_DayPlanPlatFormBillController.cs"
+++ "b/WebAPI/Controllers/SCGL/\346\227\245\350\256\241\345\210\222\347\256\241\347\220\206/JIT_DayPlanPlatFormBillController.cs"
@@ -195,6 +195,10 @@
                 LogService.CustomWriteLog("2:", DateTime.Now.ToString("yyyy-MM-dd"));
                 int TrueCount = 0, SumCount = 0;
                 LogService.CustomWriteLog("list.Count:"+ list.Count, DateTime.Now.ToString("yyyy-MM-dd"));
+
+                string sReturn = "";
+                oSystemParameter.ShowBill(ref sReturn);
+
                 for (int i = 0; i < list.Count; i++)
                 {
                     TrueCount = 0;
@@ -230,17 +234,21 @@
                         var HMainSourceEntryID = list[i]["婧愬崟瀛愬唴鐮�"].ToString();
                         var HPlanQty = list[i]["璁″垝鏁伴噺"].ToString();
                         var HEmpID = list[i]["HEmpID"].ToString();
+                        var HWorkQty = list[i]["灏忔椂浜ц兘"].ToString();
 
                         LogService.CustomWriteLog("2.05:" + i, DateTime.Now.ToString("yyyy-MM-dd"));
 
-                        if (HSourceID == ""|| HSourceID == "0")
+                        if (oSystemParameter.omodel.WMS_CampanyName != "娣诲悍绉戞妧") //绯荤粺鍙傛暟  瀹㈡埛瀹氬埗鍖栧悕绉�     绌虹櫧涓洪�氱敤
                         {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = $"绗瑊i + 1}琛岀敓浜ц祫婧愪笉鑳戒负绌�!";
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
+                            if (HSourceID == "" || HSourceID == "0")
+                            {
+                                objJsonResult.code = "0";
+                                objJsonResult.count = 0;
+                                objJsonResult.Message = $"绗瑊i + 1}琛岀敓浜ц祫婧愪笉鑳戒负绌�!";
+                                objJsonResult.data = null;
+                                return objJsonResult;
+                            }
+                        }                      
 
                         ds = oCN.RunProcReturn($"select * from Sc_WorkBillSortBillMain where HMainSourceInterID={HMainSourceInterID}" +
                             $" and HMainSourceEntryID={HMainSourceEntryID} and HICMOBillNo='{HICMOBillNo}' and HICMOEntrySEQ={HICMOEntrySEQ} and HSourceID={HSourceID}", "Sc_WorkBillSortBillMain");
@@ -264,7 +272,7 @@
                             " HOrderNeedQty, HSplitQty, HDayPlanSumQty,HPlanBeginDate," +
                             "HSeOrderBillNo,HICMOBillType,HSourceStockInQty,HLeftPlanQty,HOrderLev,HPreparatDate," +
                             "HMainSourceInterID,HMainSourceEntryID,HICMOInterID_Sec,HICMOEntryID_Sec,HPlanQty" +
-                            ",HICMOInterID,HICMOEntryID,HPlanEndDate,HEmpID)values" +
+                            ",HICMOInterID,HICMOEntryID,HPlanEndDate,HEmpID,HWorkQty)values" +
                             $"({HInterID},'{HBillNo}',{DateTime.Now.Year},{DateTime.Now.Month},'{BillType}'," +
                             $"'{BillType}',GETDATE(),1,'{user}',getdate(),'{HICMOBillNo}','{HOrderType}'," +
                             $"{(HICMOEntrySEQ == "" ? 0.ToString() : HICMOEntrySEQ)},{(HWorkShopID == "" ? 0.ToString() : HWorkShopID)},{(HSourceID == "" ? 0.ToString() : HSourceID)}, {(HYX == "" ? 0.ToString() : HYX)}, {(HProdORGID == "" ? 0.ToString() : HProdORGID)}," +
@@ -272,7 +280,7 @@
                             $" 0, {(HSplitQty == "" ? 0.ToString() : HSplitQty)}, {(HDayPlanSumQty == "" ? 0.ToString() : HDayPlanSumQty)},'{HPlanBeginDate}'," +
                             $"'{HSeOrderBillNo}','{HICMOBillType}',{(HSourceStockInQty == "" ? 0.ToString() : HSourceStockInQty)},{(HLeftPlanQty == "" ? 0.ToString() : HLeftPlanQty)},'{HOrderLev}',getdate()," +
                             $"{HMainSourceInterID},{HMainSourceEntryID},{HMainSourceInterID},{HMainSourceEntryID},{HPlanQty}," +
-                            $"{HMainSourceInterID},{HMainSourceEntryID},'{HPlanEndDate}','{HEmpID}')";
+                            $"{HMainSourceInterID},{HMainSourceEntryID},'{HPlanEndDate}','{HEmpID}','{HWorkQty}')";
 
                         //LogService.Write("sql:" + sql);
                         //涓昏〃
@@ -300,15 +308,19 @@
                         var HSplitQty = list[i]["鎷嗗崟鏁伴噺"].ToString();
 
                         LogService.CustomWriteLog("2.1:"+i, DateTime.Now.ToString("yyyy-MM-dd"));
-
-                        if (HSourceID == "" || HSourceID == "0")
+                        
+                        if (oSystemParameter.omodel.WMS_CampanyName != "娣诲悍绉戞妧") //绯荤粺鍙傛暟  瀹㈡埛瀹氬埗鍖栧悕绉�     绌虹櫧涓洪�氱敤
                         {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = $"绗瑊i + 1}琛岀敓浜ц祫婧愪笉鑳戒负绌�!";
-                            objJsonResult.data = null;
-                            return objJsonResult;
+                            if (HSourceID == "" || HSourceID == "0")
+                            {
+                                objJsonResult.code = "0";
+                                objJsonResult.count = 0;
+                                objJsonResult.Message = $"绗瑊i + 1}琛岀敓浜ц祫婧愪笉鑳戒负绌�!";
+                                objJsonResult.data = null;
+                                return objJsonResult;
+                            }
                         }
+
                         var str = 0;
                         if (!int.TryParse(HYX, out str))
                         {
@@ -431,7 +443,7 @@
                 oCN.RunProc("insert into Sc_WorkBillSortBillSub(HInterID,HSEQ," +
                     "HMasterDate,HQty,HUseTimes)" +
                             $"values({HInterID}, {(ds.Tables[0].Rows.Count + 1)}," +
-                            $" '{date}', {HQTY},{ ( (dic["灏忔椂浜ц兘"] == "0.0000" ? 0 : HQTY / float.Parse(dic["灏忔椂浜ц兘"].ToString())).ToString()=="闈炴暟瀛�" ? 0 : dic["灏忔椂浜ц兘"] == "0.0000" ? 0 : HQTY / float.Parse(dic["灏忔椂浜ц兘"].ToString())) })");               
+                            $" '{date}', {HQTY},{ ((dic["灏忔椂浜ц兘"] == "0.0000" ? 0 : dic["灏忔椂浜ц兘"] == "0" ? 0 : HQTY / float.Parse(dic["灏忔椂浜ц兘"].ToString())).ToString() == "闈炴暟瀛�" ? 0 : dic["灏忔椂浜ц兘"] == "0.0000" ? 0 : dic["灏忔椂浜ц兘"] == "0" ? 0 : HQTY / float.Parse(dic["灏忔椂浜ц兘"].ToString())) })");               
             }
 
             objJsonResult.code = "1";
@@ -2825,5 +2837,50 @@
             }
         }
         #endregion
+
+        #region 鐢熶骇鏃ヨ鍒掑钩鍙� 鏍规嵁杞﹂棿娣诲姞鏈帓浜х敓浜ц鍗�
+        [Route("JIT_DayPlanPlatFormBill/JIT_ICMOBillListByDept")]
+        [HttpGet]
+        public object JIT_ICMOBillListByDept(string HDeptID)
+        {
+            try
+            {
+                //鏌ヨ閫夋嫨杞﹂棿涓湭鎺掍骇杩囩殑鐢熶骇璁㈠崟淇℃伅锛堟坊搴风鎶�--鐢熶骇璁㈠崟鐘舵�佷负涓嬭揪锛�
+                ds = oCN.RunProcReturn($"exec h_p_JIT_ICMOBillListByDept '{HDeptID}'", "h_p_JIT_ICMOBillListByDept");
+
+                if (ds.Tables[0].Rows.Count > 0 && ds != null)
+                {
+                    //鏁版嵁琛ㄦ牸娣诲姞鍔ㄦ�佹棩鏈�
+                    for (int j = 1; j <= 31; j++)
+                    {
+                        ds.Tables[0].Columns.Add(DateTime.Now.AddDays(j - 1).ToString("yyyy-MM-dd"), typeof(Int32));
+                    }
+
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "Sucess锛�";
+                    objJsonResult.data = ds.Tables[0];
+                    return objJsonResult;
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏌ユ棤鏁版嵁锛屽綋鍓嶆墍閫夎溅闂翠笅鏆傛棤鏈帓浜т笖璁㈠崟鐘舵�佷负涓嬭揪鐨勭敓浜ц鍗曚俊鎭紒";
+                    objJsonResult.data = "";
+                    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/SCGL/\346\227\245\350\256\241\345\210\222\347\256\241\347\220\206/JIT_DayPlanPlatFormImportController.cs" "b/WebAPI/Controllers/SCGL/\346\227\245\350\256\241\345\210\222\347\256\241\347\220\206/JIT_DayPlanPlatFormImportController.cs"
index 8df30d4..b1edf4a 100644
--- "a/WebAPI/Controllers/SCGL/\346\227\245\350\256\241\345\210\222\347\256\241\347\220\206/JIT_DayPlanPlatFormImportController.cs"
+++ "b/WebAPI/Controllers/SCGL/\346\227\245\350\256\241\345\210\222\347\256\241\347\220\206/JIT_DayPlanPlatFormImportController.cs"
@@ -83,21 +83,21 @@
                     {
                         continue;
                     }                    
-                    else if (oSystemParameter.omodel.JIT_DayPlan_TimeFrame != "0" && oSystemParameter.omodel.JIT_DayPlan_TimeFrame != "")
-                    {
-                        Int32 HDays = Convert.ToInt32(oSystemParameter.omodel.JIT_DayPlan_TimeFrame) * 7;
+                    //else if (oSystemParameter.omodel.JIT_DayPlan_TimeFrame != "0" && oSystemParameter.omodel.JIT_DayPlan_TimeFrame != "")
+                    //{
+                    //    Int32 HDays = Convert.ToInt32(oSystemParameter.omodel.JIT_DayPlan_TimeFrame) * 7;
 
 
 
 
-                        for (int j = 0; j < ExcelDs.Tables[0].Columns.Count; j++)
-                        {
-                            if (Convert.ToInt32(ExcelDs.Tables[0].Rows[i][j].ToString()) > 0 )
-                            {
-                                continue;
-                            }                          
-                        }                       
-                    }
+                    //    for (int j = 0; j < ExcelDs.Tables[0].Columns.Count; j++)
+                    //    {
+                    //        if (Convert.ToInt32(ExcelDs.Tables[0].Rows[i][j].ToString()) > 0 )
+                    //        {
+                    //            continue;
+                    //        }                          
+                    //    }                       
+                    //}
                     else
                     {
                         tb2.Rows.Add(row);
@@ -132,9 +132,9 @@
                         return objJsonResult;
                     }
 
-                    string sql1 = string.Format("select * from h_v_IF_ICMOBillList where 鍗曟嵁鍙�='{0}' and 鐢熶骇杞﹂棿浠g爜='{1}' and 浜у搧浠g爜='{2}' and 鏄庣粏琛屽彿={3} ",
+                    string sql1 = string.Format("select * from h_v_JIT_ICMOBillList_DR where 鍗曟嵁鍙�='{0}' and 鐢熶骇杞﹂棿浠g爜='{1}' and 浜у搧浠g爜='{2}' and 鏄庣粏琛屽彿={3} ",
                         tb2.Rows[i]["鐢熶骇璁㈠崟鍙�*"].ToString(), tb2.Rows[i]["鐢熶骇杞﹂棿缂栫爜*"].ToString(), tb2.Rows[i]["鐗╂枡缂栫爜*"].ToString(), tb2.Rows[i]["鐢熶骇璁㈠崟鏄庣粏琛屽彿*"].ToString());
-                    ds = oCN.RunProcReturn(sql1, "h_v_IF_ICMOBillList");
+                    ds = oCN.RunProcReturn(sql1, "h_v_JIT_ICMOBillList_DR");
 
                     if (ds.Tables[0].Rows.Count == 0)
                     {
@@ -162,10 +162,10 @@
                         tb2.Rows[i]["HSeOrderBillNo"] = ds.Tables[0].Rows[0]["閿�鍞鍗曞彿"].ToString();//閿�鍞鍗曞彿
                     }
 
-                    ds = oCN.RunProcReturn("select * from h_v_JIT_Sc_WorkBillSortBillList " +
+                    ds = oCN.RunProcReturn("select * from h_v_JIT_WorkBillSortBillList_DR " +
                         $"where  鐢熶骇璁㈠崟鍙�='{tb2.Rows[i]["鐢熶骇璁㈠崟鍙�*"].ToString()}'  and 鐢熶骇璁㈠崟鏄庣粏琛屽彿='{tb2.Rows[i]["鐢熶骇璁㈠崟鏄庣粏琛屽彿*"].ToString()}' " +
                         $"and 鐢熶骇杞﹂棿缂栫爜='{tb2.Rows[i]["鐢熶骇杞﹂棿缂栫爜*"].ToString()}' and 鐗╂枡浠g爜='{tb2.Rows[i]["鐗╂枡缂栫爜*"].ToString()}' " +
-                        $"and 鐢熶骇璧勬簮缂栫爜='{tb2.Rows[i]["鐢熶骇璧勬簮缂栫爜*"].ToString()}' ", "h_v_JIT_Sc_WorkBillSortBillList");
+                        $"and 鐢熶骇璧勬簮缂栫爜='{tb2.Rows[i]["鐢熶骇璧勬簮缂栫爜*"].ToString()}' ", "h_v_JIT_WorkBillSortBillList_DR");
                     //缁勭粐缂栫爜='{tb2.Rows[i]["缁勭粐缂栫爜*"].ToString()}' and
                     //and 鐢熶骇璧勬簮缂栫爜='{tb2.Rows[i]["鐢熶骇璧勬簮缂栫爜*"].ToString()}'
 
@@ -187,7 +187,7 @@
                     else
                     {
                         //鍛樺伐
-                        ds = oCN.RunProcReturn($"select * from Gy_Employee  where HNumber='{tb2.Rows[i]["鍛樺伐缂栫爜"].ToString()}'", "Gy_Employee");
+                        ds = oCN.RunProcReturn($"select * from Gy_Employee with(nolock) where HNumber='{tb2.Rows[i]["鍛樺伐缂栫爜"].ToString()}'", "Gy_Employee");
                         if (ds.Tables[0].Rows.Count > 0) {
                             tb2.Rows[i]["HEmpID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
                             tb2.Rows[i]["鍛樺伐"] = ds.Tables[0].Rows[0]["HName"].ToString();
@@ -202,7 +202,7 @@
                         }
 
                         //璁¢噺鍗曚綅
-                        ds = oCN.RunProcReturn($"select * from Gy_Unit  where HNumber='{tb2.Rows[i]["璁¢噺鍗曚綅"].ToString()}'", "Gy_Unit");
+                        ds = oCN.RunProcReturn($"select * from Gy_Unit with(nolock) where HNumber='{tb2.Rows[i]["璁¢噺鍗曚綅"].ToString()}'", "Gy_Unit");
                         if (ds.Tables[0].Rows.Count > 0)
                         {
                             tb2.Rows[i]["HUnitID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
@@ -217,7 +217,7 @@
                         }
 
                         //鐢熶骇璧勬簮
-                        ds = oCN.RunProcReturn($"select * from Gy_Source  where HNumber='{tb2.Rows[i]["鐢熶骇璧勬簮缂栫爜*"].ToString()}'", "Gy_Source");
+                        ds = oCN.RunProcReturn($"select * from Gy_Source with(nolock) where HNumber='{tb2.Rows[i]["鐢熶骇璧勬簮缂栫爜*"].ToString()}'", "Gy_Source");
                         if (ds.Tables[0].Rows.Count > 0)
                         {
                             tb2.Rows[i]["HSourceID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
@@ -231,7 +231,7 @@
                         }
                     }
                     //缁勭粐
-                    ds = oCN.RunProcReturn($"select * from Xt_ORGANIZATIONS  where HNumber='{tb2.Rows[i]["缁勭粐缂栫爜*"].ToString()}'", "Xt_ORGANIZATIONS");
+                    ds = oCN.RunProcReturn($"select * from Xt_ORGANIZATIONS with(nolock) where HNumber='{tb2.Rows[i]["缁勭粐缂栫爜*"].ToString()}'", "Xt_ORGANIZATIONS");
                     if (ds.Tables[0].Rows.Count > 0)
                     {
                         tb2.Rows[i]["HProdORGID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
diff --git a/WebAPI/Controllers/Sc_MouldRepairInBillListController.cs b/WebAPI/Controllers/Sc_MouldRepairInBillListController.cs
index 647f33c..1b5a2a6 100644
--- a/WebAPI/Controllers/Sc_MouldRepairInBillListController.cs
+++ b/WebAPI/Controllers/Sc_MouldRepairInBillListController.cs
@@ -9,6 +9,7 @@
 using System.Web.Http;
 using ViewAPI;
 using WebAPI.Models;
+using SyntacticSugar.constant;
 namespace WebAPI.Controllers
 {
     /**
@@ -7866,6 +7867,62 @@
 
         #endregion
 
+        #region 妯″叿澶勭悊鍑哄簱鍗曞垎椤靛垪琛�
+        [Route("Sc_MouldScrapOutHouseBill/page")]
+        [HttpGet]
+        public object Sc_MouldScrapOutHouseBillPage(string sWhere, string user, int page, int size)
+        {
+            DataSet ds;
+            try
+            {
+                List<object> columnNameList = new List<object>();
+                //鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("Sc_MouldScrapOutBillList", 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_Sc_MouldScrapOutHouseBillList " + page + "," + size + ",''", "h_p_Sc_MouldScrapOutHouseBillList");
+                }
+                else
+                {
+                    ds = oCN.RunProcReturn("exec h_p_Sc_MouldScrapOutHouseBillList " + page + "," + size + ",'" + sWhere + "'", "h_p_Sc_MouldScrapOutHouseBillList");
+                }
+
+                //娣诲姞鍒楀悕
+                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鍒楀璞$殑鍒楀悕
+                }
+
+                objJsonResult.code = CodeConstant.SUCCEED;
+                objJsonResult.count = int.Parse(ds.Tables[1].Rows[0]["count"].ToString());
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.list = columnNameList;
+                objJsonResult.data = ds.Tables[0];
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = CodeConstant.FAIL;
+                objJsonResult.count = CountConstant.FAIL;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+
         #region[妯″叿澶勭悊鍑哄簱鍗曠紪杈戞椂鑾峰彇琛ㄥご鏁版嵁]
         [Route("Sc_MouldScrapOutHouseBill/Sc_MouldScrapOutHouseBillListCheckDetai")]
         [HttpGet]
diff --git a/WebAPI/Controllers/WebAPIController.cs b/WebAPI/Controllers/WebAPIController.cs
index 744423fb..b5b974c 100644
--- a/WebAPI/Controllers/WebAPIController.cs
+++ b/WebAPI/Controllers/WebAPIController.cs
@@ -15079,6 +15079,46 @@
         }
 
         /// <summary>
+        /// 鏍规嵁鐗╂枡+宸ュ簭鑾峰彇妫�楠屾柟妗�
+        /// </summary>
+        /// <returns></returns>
+        [Route("Web/GetCheckItemID")]
+        [HttpGet]
+        public object GetCheckItemID(string HName,string HProName)
+        {         
+            try
+            {
+                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+                ds = oCN.RunProcReturn("select  top 1 * from h_v_Gy_QCCheckProjectList_Main where 鐗╂枡鍚嶇О='"+HName+ "' and 宸ュ簭鍚嶇О='" + HProName + "'   order by 鏃ユ湡 desc ", "h_v_Gy_QCCheckProjectList_Main");
+                if (ds == null || ds.Tables[0].Rows.Count <= 0)
+                {
+                    objjson.code = "0";
+                    objjson.count = 0;
+                    objjson.Message = "鑾峰彇澶辫触" + DBUtility.ClsPub.sErrInfo;
+                    objjson.data = null;
+                    return objjson;
+                }
+                else
+                {
+                    objjson.code = "1";
+                    objjson.count = 1;
+                    objjson.Message = "鑾峰彇鎴愬姛!";
+                    objjson.data = ds.Tables[0];
+                    return objjson;
+                }
+            }
+            catch (Exception ex)
+            {
+                objjson.code = "0";
+                objjson.count = 0;
+                objjson.Message = "鑾峰彇澶辫触" + ex.ToString();
+                objjson.data = null;
+                return objjson;
+            }
+        }
+
+
+        /// <summary>
         /// 鏍规嵁妫�楠屾柟妗堜富鍐呯爜鑾峰彇妫�楠岄」鐩�
         /// </summary>
         /// <returns></returns>
@@ -16199,8 +16239,15 @@
                 ds = oCn.RunProcReturn(sql, "Gy_MenuDefineSet");        //鏌ヨ褰撳墠鐢ㄦ埛鐨勮嚜瀹氫箟鑿滃崟鏁版嵁
                 if (ds.Tables[0] == null || ds.Tables[0].Rows.Count == 0) //鍒ゆ柇褰撳墠鐢ㄦ埛鏄惁鏈夎缃繃鑷畾涔変俊鎭紝鑻ヨ褰曟暟涓�0锛屽垯娌℃湁璁剧疆杩囷紝鍔犺浇鎵�鏈夌殑鑿滃崟淇℃伅
                 {
-                    sql = "Select * from Gy_Menu_1 where HType = '" + HType + "' Order by HPosition,len(HitemID),HitemID  ";
-                    ds = oCn.RunProcReturn(sql, "Gy_Menu");
+                    string sql1 = "select HItemID,HPartentID,HNumber,HName,HLevel,Hurl,HType,HPicNum from Gy_MenuDefineSet where HMakeName=" +
+                        "(select   top 1 c.GroupName  from Gy_Czygl a left join System_UserGroupInfo b on a.Czybm = b.UserId  " +
+                        "left join System_UserGroup c on b.GroupId = c.GroupID  where a.Czymc ='"+HMakeName+"' order by len(c.GroupName ))";
+                    ds = oCn.RunProcReturn(sql1, "Gy_MenuDefineSet");        //鏌ヨ鐢ㄦ埛缁戝畾鐨勮鑹� 鏄惁璁剧疆鑿滃崟淇℃伅 鍙栬鑹插悕绉版渶鐭殑涓�涓�
+                    if ((ds.Tables[0] == null || ds.Tables[0].Rows.Count == 0))
+                    {
+                        sql = "Select * from Gy_Menu_1 where HType = '" + HType + "' Order by HPosition,len(HitemID),HitemID  ";
+                        ds = oCn.RunProcReturn(sql, "Gy_Menu");
+                    }                 
                 }
 
                 for (int i = 0; i < ds.Tables[0].Rows.Count; i++)       //灏嗚彍鍗曠殑鏍硅妭鐐逛繚瀛樺埌鍒楄〃menu涓�
diff --git "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_SOPBillController.cs" "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_SOPBillController.cs"
index 9625818..af52f50 100644
--- "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_SOPBillController.cs"
+++ "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_SOPBillController.cs"
@@ -223,15 +223,29 @@
         /// </summary>
         [Route("Gy_SopBill/getListByMaterProc")]
         [HttpGet]
-        public object getListByMaterProc(Int64 HMaterID, Int64 HProcID)
+        public object getListByMaterProc(Int64 HMaterID, Int64 HProcID,string HType)
         {
             try
             {
                 var sWhere = "";
-                if (Convert.ToInt32(HMaterID) != 0 && HMaterID.ToString() != "" && Convert.ToInt32(HProcID) != 0 && HProcID.ToString() != "")
+                if (HType != "")
                 {
-                    sWhere += " and HMaterID = " + HMaterID + " and HProcID = " + HProcID + " and HProcID2 = " + HProcID;
+                    if (Convert.ToInt32(HMaterID) != 0 && HMaterID.ToString() != "" && Convert.ToInt32(HProcID) != 0 && HProcID.ToString() != "")
+                    {
+                        sWhere += " and HMaterID = " + HMaterID + " and HProcID = " + HProcID + " and HProcID2 = " + HProcID + " and 鎸囧涔︾被鍨� = '"+ HType + "'";
+                    }
                 }
+                else
+                {
+                    if (Convert.ToInt32(HMaterID) != 0 && HMaterID.ToString() != "" && Convert.ToInt32(HProcID) != 0 && HProcID.ToString() != "")
+                    {
+                        sWhere += " and HMaterID = " + HMaterID + " and HProcID = " + HProcID + " and HProcID2 = " + HProcID + " ";
+                    }
+                }
+                //if (Convert.ToInt32(HMaterID) != 0 && HMaterID.ToString() != "" && Convert.ToInt32(HProcID) != 0 && HProcID.ToString() != "")
+                //{
+                //    sWhere += " and HMaterID = " + HMaterID + " and HProcID = " + HProcID + " and HProcID2 = " + HProcID ;
+                //}
                 string sql1 = string.Format(@"select * from h_v_Sc_ICMOBillStatus_Tmp_SOP where 1 = 1 " + sWhere);
 
                 ds = oCN.RunProcReturn(sql1, "h_v_Sc_ICMOBillStatus_Tmp_SOP");
diff --git "a/WebAPI/Controllers/\346\235\241\347\240\201\347\256\241\347\220\206/WEBSController.cs" "b/WebAPI/Controllers/\346\235\241\347\240\201\347\256\241\347\220\206/WEBSController.cs"
index 9e6e063..72e421d 100644
--- "a/WebAPI/Controllers/\346\235\241\347\240\201\347\256\241\347\220\206/WEBSController.cs"
+++ "b/WebAPI/Controllers/\346\235\241\347\240\201\347\256\241\347\220\206/WEBSController.cs"
@@ -4497,6 +4497,8 @@
             string sJXCode = "";
             if (oSystemParameter.ShowBill(ref sErrMsg) == true)
             {
+                LogService.Write("妫シ鎵爜鍙傛暟鍊硷紝瀹㈡埛锛�" + oSystemParameter.omodel.WMS_CampanyName + " ,婧愬崟绫诲瀷锛�" + HSourceBillType);
+
                 if (oSystemParameter.omodel.WMS_CampanyName == "瀹夌憺") //绯荤粺鍙傛暟  瀹㈡埛瀹氬埗鍖栧悕绉�     绌虹櫧涓洪�氱敤
                 {
                     sJXCode = POStockInBillController.JX_Json(sBarCode, HInterID, HBillType, HStockOrgID, HBillNo, HMaker);
@@ -4504,6 +4506,7 @@
                 }
                 else if(oSystemParameter.omodel.WMS_CampanyName == "妫シ" && HSourceBillType == "1241")
                 {
+                    LogService.Write("妫シ鍏朵粬鍏ュ簱鎵爜鏉$爜璁板綍锛�" + sBarCode);
                     DataSet ds;
                     string sql = "select HBarCode,HSourceInterID,HSourceEntryID,HSourceBillNo from Gy_BarCodeBill with(nolock) where HBarCode = '" + sBarCode + "'";
                     string HDataBaseName = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "DataBaseName");//鑾峰彇閲戣澏鏁版嵁搴撳悕绉�
@@ -4514,6 +4517,7 @@
                     //鍒ゆ柇鏉$爜淇℃伅鏄惁鍦ㄦ潯鐮佹。妗堜腑
                     if (ds == null || ds.Tables[0].Rows.Count < 1)
                     {
+                        LogService.Write("鍏朵粬鍏ュ簱锛屾潯鐮佹。妗堜腑涓嶅瓨鍦ㄦ鏉$爜缂栧彿锛�" + sBarCode);
                         objJsonResult.code = "0";
                         objJsonResult.count = 0;
                         objJsonResult.Message = "鏉$爜妗f涓笉瀛樺湪姝ゆ潯鐮佺紪鍙凤細" + sBarCode;
@@ -4741,7 +4745,7 @@
                             }
 
                             //鏇存柊鏉$爜婧愬崟id淇℃伅
-                            sql = string.Format($@"update a set HSourceInterID = b.FID,HSourceEntryID = c.FEntryID from Gy_BarCodeBill a left join AIS20220609121235..TFKO_t_Cust100009 b on a.HSourceBillNo = b.FBillNo left join AIS20220609121235..TFKO_t_Cust_Entry100065 c on b.FID = C.FID and a.HBarcodeNo = c.FSEQ where HSourceBillNo = '{HSourceBillNo_TB}'");
+                            sql = string.Format($@"update a set HSourceInterID = isnull(b.FID,0),HSourceEntryID = isnull(c.FEntryID,0) from Gy_BarCodeBill a left join AIS20220609121235..TFKO_t_Cust100009 b on a.HSourceBillNo = b.FBillNo left join AIS20220609121235..TFKO_t_Cust_Entry100065 c on b.FID = C.FID and a.HBarcodeNo = c.FSEQ where HSourceBillNo = '{HSourceBillNo_TB}'");
                             //鎵ц鏇存柊璇彞
                             oCn.RunProc(sql);
 
@@ -5281,6 +5285,48 @@
 
         #endregion
 
+        #region 鎵弿鍗曟嵁鏉$爜  宸插瓨鍦ㄦ壂鐮佽褰曚笖鍗曟嵁鍙戠敓鍙樻洿鍚庝袱杈规暟鎹笉涓�鑷存椂锛屾竻绌哄師鎵爜鏁版嵁   20241216
+
+        /// <summary>
+        /// 宸插瓨鍦ㄦ壂鐮佽褰曚笖鍗曟嵁鍙戠敓鍙樻洿鍚庝袱杈规暟鎹笉涓�鑷存椂锛屾竻绌哄師鎵爜鏁版嵁
+        /// </summary>
+        /// <returns></returns>
+        [Route("WEBSController/get_ClearBarCode_BillCheck_Json")]
+        [HttpGet]
+        public object get_ClearBarCode_BillCheck_Json(Int64 HInterID, string HBillType, string HMaker, Int64 HStockOrgID)
+        {
+            try
+            {
+                ds = oCn.RunProcReturn("exec h_p_WMS_ClearBarCode_BillCheck " + HInterID.ToString() + ",'" + HBillType + "','" + HMaker + "'," + HStockOrgID.ToString(), "h_p_WMS_ClearBarCode_BillCheck");
+                if (ds == null || ds.Tables[0].Rows.Count == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "娓呯┖鍘熸壂鐮佹暟鎹彂鐢熼敊璇紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "鎴愬姛锛�";
+                    objJsonResult.data = ds.Tables[0];
+                    return objJsonResult;
+                }
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "娓呯┖鍘熸壂鐮佹暟鎹け璐ワ紒" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+
+        #endregion
+
         #region 鎵弿鐗╂枡鏉$爜  鍑哄叆搴撴ā鍧�
 
         /// <summary>
@@ -5294,7 +5340,7 @@
             //鑾峰彇绯荤粺鍙傛暟
             string sErrMsg = "";
             string sJXCode = "";
-            if (oSystemParameter.ShowBill(ref sErrMsg) == true)
+            if (oSystemParameter.ShowBillByOrgID(HStockOrgID, ref sErrMsg) == true)
             {
                 string sSourceBarCodeCtl = "N";   //鏍¢獙-鏄惁杩涜婧愬崟瀵瑰簲鏉$爜鏍稿锛�'Y'涓烘牳瀵癸級
 
@@ -5689,7 +5735,7 @@
 
         #endregion
 
-        #region 缂撳瓨妯″潡    杩斿洖缂撳瓨鍒楄〃淇℃伅
+        #region 鏍¢獙缂撳瓨妯″潡    杩斿洖缂撳瓨鍒楄〃淇℃伅
 
         /// <summary>
         /// 杩斿洖缂撳瓨鍒楄〃淇℃伅    鏍¢獙妯″紡
@@ -5733,6 +5779,186 @@
                 objJsonResult.code = "0";
                 objJsonResult.count = 0;
                 objJsonResult.Message = "鑾峰彇缂撳瓨鍒楄〃淇℃伅澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+
+        #endregion
+
+        #region 鏍¢獙缂撳瓨妯″潡    鏍规嵁鍗曟嵁ID,鍒犻櫎涓存椂琛ㄨ褰�    20241216
+
+        /// <summary>
+        /// 鏍规嵁鍗曟嵁ID,鍒犻櫎涓存椂琛ㄨ褰�
+        /// </summary>
+        /// <returns></returns>
+        [Route("WEBSController/DeleteTempBillList_BillCheck_Json")]
+        [HttpGet]
+        public object DeleteTempBillList_BillCheck_Json(long HInterID, string HBillNo, string HBillType, string HMaker, string MvarReportTitle, Int64 HStockOrgID)
+        {
+            string WorkList = "鍒犻櫎鏍¢獙缂撳瓨鍗曟嵁锛屽崟鎹彿锛�" + HBillNo;
+            string SystemName = "WMS-" + MvarReportTitle + "妯″潡";
+            //鑾峰彇绯荤粺鍙傛暟
+            string sErrMsg = "";
+            if (oSystemParameter.ShowBillByOrgID(HStockOrgID, ref sErrMsg) == true)
+            {
+                string sSourceBarCodeCtl = "N";   //鏍¢獙-鏄惁杩涜婧愬崟瀵瑰簲鏉$爜鏍稿锛�'Y'涓烘牳瀵癸級
+
+                #region 绯荤粺鍙傛暟鑾峰彇
+                //閲囪喘鍏ュ簱鍗�
+                if (HBillType == "1201")
+                {
+                    //鏍¢獙-鏄惁杩涜婧愬崟瀵瑰簲鏉$爜鏍稿锛�'Y'涓烘牳瀵癸級
+                    if (oSystemParameter.omodel.Kf_POStockInBillCheck_SourceBarCodeCtl == "Y")
+                    {
+                        sSourceBarCodeCtl = "Y";
+                    }
+                }
+                //鐢熶骇鍏ュ簱鍗�
+                if (HBillType == "1202")
+                {
+                    //鏍¢獙-鏄惁杩涜婧愬崟瀵瑰簲鏉$爜鏍稿锛�'Y'涓烘牳瀵癸級
+                    if (oSystemParameter.omodel.Kf_ProductInBillCheck_SourceBarCodeCtl == "Y")
+                    {
+                        sSourceBarCodeCtl = "Y";
+                    }
+                }
+                //鍏朵粬鍏ュ簱鍗�
+                if (HBillType == "1203")
+                {
+                    //鏍¢獙-鏄惁杩涜婧愬崟瀵瑰簲鏉$爜鏍稿锛�'Y'涓烘牳瀵癸級
+                    if (oSystemParameter.omodel.Kf_OtherInBillCheck_SourceBarCodeCtl == "Y")
+                    {
+                        sSourceBarCodeCtl = "Y";
+                    }
+                }
+                //棰嗘枡鍑哄簱鍗�
+                else if (HBillType == "1204")
+                {
+                    //鏍¢獙-鏄惁杩涜婧愬崟瀵瑰簲鏉$爜鏍稿锛�'Y'涓烘牳瀵癸級
+                    if (oSystemParameter.omodel.Kf_MateOutBillCheck_SourceBarCodeCtl == "Y")
+                    {
+                        sSourceBarCodeCtl = "Y";
+                    }
+                }
+                //閿�鍞嚭搴撳崟
+                else if (HBillType == "1205")
+                {
+                    //鏍¢獙-鏄惁杩涜婧愬崟瀵瑰簲鏉$爜鏍稿锛�'Y'涓烘牳瀵癸級
+                    if (oSystemParameter.omodel.Kf_SellOutBillCheck_SourceBarCodeCtl == "Y")
+                    {
+                        sSourceBarCodeCtl = "Y";
+                    }
+                }
+                //鍏朵粬鍑哄簱鍗�
+                else if (HBillType == "1206")
+                {
+                    //鏍¢獙-鏄惁杩涜婧愬崟瀵瑰簲鏉$爜鏍稿锛�'Y'涓烘牳瀵癸級
+                    if (oSystemParameter.omodel.Kf_OtherOutBillCheck_SourceBarCodeCtl == "Y")
+                    {
+                        sSourceBarCodeCtl = "Y";
+                    }
+                }
+                //濮斿棰嗘枡鍗�
+                else if (HBillType == "1211")
+                {
+                    //鏍¢獙-鏄惁杩涜婧愬崟瀵瑰簲鏉$爜鏍稿锛�'Y'涓烘牳瀵癸級
+                    if (oSystemParameter.omodel.Kf_EntrustOutBillCheck_SourceBarCodeCtl == "Y")
+                    {
+                        sSourceBarCodeCtl = "Y";
+                    }
+                }
+                //鐢熶骇琛ユ枡鍗�
+                else if (HBillType == "1254")
+                {
+                    //鏍¢獙-鏄惁杩涜婧愬崟瀵瑰簲鏉$爜鏍稿锛�'Y'涓烘牳瀵癸級
+                    if (oSystemParameter.omodel.Kf_MateReplenishOutBillCheck_SourceBarCodeCtl == "Y")
+                    {
+                        sSourceBarCodeCtl = "Y";
+                    }
+                }
+                //濮斿琛ユ枡鍗�
+                else if (HBillType == "1255")
+                {
+                    //鏍¢獙-鏄惁杩涜婧愬崟瀵瑰簲鏉$爜鏍稿锛�'Y'涓烘牳瀵癸級
+                    if (oSystemParameter.omodel.Kf_EntrustReplenishOutBillCheck_SourceBarCodeCtl == "Y")
+                    {
+                        sSourceBarCodeCtl = "Y";
+                    }
+                }
+                //鐩存帴璋冩嫧鍗�
+                else if (HBillType == "1207")
+                {
+                    //鏍¢獙-鏄惁杩涜婧愬崟瀵瑰簲鏉$爜鏍稿锛�'Y'涓烘牳瀵癸級
+                    if (oSystemParameter.omodel.Kf_MoveStockBillCheck_SourceBarCodeCtl == "Y")
+                    {
+                        sSourceBarCodeCtl = "Y";
+                    }
+                }
+                #endregion
+
+                //鍘熷崟鎹负鎵爜鐢熸垚锛屽鍘熸壂鎻忕殑鏉$爜杩涜鏍稿锛屽垹闄ゆ潯鐮佸嚭鍏ュ簱鏍¢獙缂撳瓨璁板綍
+                if (sSourceBarCodeCtl == "Y")
+                {
+                    try
+                    {
+                        oCn.BeginTran();
+                        oCn.RunProc("Delete from KF_PonderationBillMain_Temp_Verify where HInterID=" + HInterID.ToString() + " and HBillType='" + HBillType + "'", ref DBUtility.ClsPub.sExeReturnInfo);
+                        //鍐欏叆鏃ュ織
+                        oCn.RunProc("Insert into System_Log(GeginDate,userid,WorkstationName,WorkList,SystemName,NetUserName,State) values " +
+                            "(getdate(),'" + HMaker + "','" + ComputerName + "','" + WorkList + "','" + SystemName + "','','鍒犻櫎')"
+                            );
+                        oCn.Commit();
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "鍗曟嵁鍙凤細" + HBillNo + " 鍒犻櫎鎴愬姛";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    catch (Exception e)
+                    {
+                        oCn.RollBack();
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍒犻櫎鎵�閫夊崟鎹潯鐮佸嚭鍏ュ簱涓存椂琛ㄨ褰曞け璐ワ紒" + e.ToString();
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+                //鍘熷崟鎹潪鎵爜鐢熸垚锛屽垹闄ゆ潯鐮佸嚭鍏ュ簱缂撳瓨鍒楄〃璁板綍
+                else
+                {
+                    try
+                    {
+                        oCn.BeginTran();
+                        oCn.RunProc("Delete from KF_PonderationBillMain_Temp where HInterID=" + HInterID.ToString() + " and HBillType='" + HBillType + "' and HSubBillType=1", ref DBUtility.ClsPub.sExeReturnInfo);
+                        //鍐欏叆鏃ュ織
+                        oCn.RunProc("Insert into System_Log(GeginDate,userid,WorkstationName,WorkList,SystemName,NetUserName,State) values " +
+                            "(getdate(),'" + HMaker + "','" + ComputerName + "','" + WorkList + "','" + SystemName + "','','鍒犻櫎')"
+                            );
+                        oCn.Commit();
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "鍗曟嵁鍙凤細" + HBillNo + " 鍒犻櫎鎴愬姛";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    catch (Exception e)
+                    {
+                        oCn.RollBack();
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍒犻櫎鎵�閫夊崟鎹潯鐮佸嚭鍏ュ簱涓存椂琛ㄨ褰曞け璐ワ紒" + e.ToString();
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+            }
+            else
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鑾峰彇绯荤粺鍙傛暟澶辫触锛� " + sErrMsg;
                 objJsonResult.data = null;
                 return objJsonResult;
             }
@@ -5816,6 +6042,227 @@
 
         #endregion
 
+        #region 鏍¢獙缂撳瓨妯″潡  宸蹭笂浼犳煡璇㈢晫闈㈠埛鏂�   20241216
+
+        /// <summary>
+        /// 宸蹭笂浼犳煡璇㈢晫闈紝鏍规嵁鍗曟嵁绫诲瀷銆佸崟鎹彿銆佺敤鎴锋煡璇㈠凡涓婁紶鍗曟嵁淇℃伅
+        /// </summary>
+        /// <returns></returns>
+        [Route("WEBSController/GetKf_ICStockBillQueryList_User_BillCheck_Json")]
+        [HttpGet]
+        public object GetKf_ICStockBillQueryList_User_BillCheck_Json(string HBillType, string HBillNo, string HMaker, Int64 HStockOrgID)
+        {
+            try
+            {
+                ds = oCn.RunProcReturn("exec h_p_Kf_ICStockBillQueryByUserList_BillCheck '" + HBillType + "','" + HBillNo + "','" + HMaker + "'," + HStockOrgID.ToString(), "h_p_Kf_ICStockBillQueryByUserList_BillCheck");
+                if (ds == null || ds.Tables[0].Rows.Count == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏌ヨ涓嶅埌璇ュ崟鎹褰曪紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                else
+                {
+                    List<object> columnNameList = new List<object>();
+                    //娣诲姞鍒楀悕
+                    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鍒楀璞$殑鍒楀悕
+                    }
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "鑾峰彇鍗曟嵁淇℃伅鎴愬姛锛�";
+                    objJsonResult.data = ds.Tables[0];
+                    objJsonResult.list = columnNameList;
+                    return objJsonResult;
+                }
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鑾峰彇宸蹭笂浼犲崟鎹俊鎭け璐ワ紒" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+
+        #endregion
+
+        #region 鏍¢獙缂撳瓨妯″潡  宸蹭笂浼犲垪琛ㄧ晫闈紝鎾ら攢鍔熻兘锛屽垹闄MS琛ㄨ褰曪紝骞舵洿鏂癟EMP琛ㄤ腑鐨勪笂浼犲瓧娈� HRelationInterID=0     20241216
+
+        /// <summary>
+        /// 宸蹭笂浼犲垪琛ㄧ晫闈紝鎾ら攢鍔熻兘锛屽垹闄MS琛ㄨ褰曪紝骞舵洿鏂癟EMP琛ㄤ腑鐨勪笂浼犲瓧娈� HRelationInterID=0
+        /// </summary>
+        /// <returns></returns>
+        [Route("WEBSController/set_DeleteICStockBillAndWMS_BillCheck_Json")]
+        [HttpGet]
+        public object set_DeleteICStockBillAndWMS_BillCheck_Json(Int64 HInterID, string HBillNo, string HBillType, string HMaker, string MvarReportTitle, Int64 HStockOrgID)
+        {
+            string WorkList = "鎾ら攢鏍¢獙宸蹭笂浼犲崟鎹紝鍗曟嵁鍙凤細" + HBillNo;
+            string SystemName = "WMS-" + MvarReportTitle + "妯″潡";
+            //鑾峰彇绯荤粺鍙傛暟
+            string sErrMsg = "";
+            if (oSystemParameter.ShowBillByOrgID(HStockOrgID, ref sErrMsg) == true)
+            {
+                string sERPMode = oSystemParameter.omodel.WMS_WMSStockCtl_ERPMode;   //搴撳瓨鎺у埗-WMS搴撳瓨鎺у埗ERP妯″紡	(WISE銆丆LOUD銆丮ES)
+                string sSourceBarCodeCtl = "N";   //鏍¢獙-鏄惁杩涜婧愬崟瀵瑰簲鏉$爜鏍稿锛�'Y'涓烘牳瀵癸級
+
+                #region 绯荤粺鍙傛暟鑾峰彇
+                //閲囪喘鍏ュ簱鍗�
+                if (HBillType == "1201")
+                {
+                    //鏍¢獙-鏄惁杩涜婧愬崟瀵瑰簲鏉$爜鏍稿锛�'Y'涓烘牳瀵癸級
+                    if (oSystemParameter.omodel.Kf_POStockInBillCheck_SourceBarCodeCtl == "Y")
+                    {
+                        sSourceBarCodeCtl = "Y";
+                    }
+                }
+                //鐢熶骇鍏ュ簱鍗�
+                if (HBillType == "1202")
+                {
+                    //鏍¢獙-鏄惁杩涜婧愬崟瀵瑰簲鏉$爜鏍稿锛�'Y'涓烘牳瀵癸級
+                    if (oSystemParameter.omodel.Kf_ProductInBillCheck_SourceBarCodeCtl == "Y")
+                    {
+                        sSourceBarCodeCtl = "Y";
+                    }
+                }
+                //鍏朵粬鍏ュ簱鍗�
+                if (HBillType == "1203")
+                {
+                    //鏍¢獙-鏄惁杩涜婧愬崟瀵瑰簲鏉$爜鏍稿锛�'Y'涓烘牳瀵癸級
+                    if (oSystemParameter.omodel.Kf_OtherInBillCheck_SourceBarCodeCtl == "Y")
+                    {
+                        sSourceBarCodeCtl = "Y";
+                    }
+                }
+                //棰嗘枡鍑哄簱鍗�
+                else if (HBillType == "1204")
+                {
+                    //鏍¢獙-鏄惁杩涜婧愬崟瀵瑰簲鏉$爜鏍稿锛�'Y'涓烘牳瀵癸級
+                    if (oSystemParameter.omodel.Kf_MateOutBillCheck_SourceBarCodeCtl == "Y")
+                    {
+                        sSourceBarCodeCtl = "Y";
+                    }
+                }
+                //閿�鍞嚭搴撳崟
+                else if (HBillType == "1205")
+                {
+                    //鏍¢獙-鏄惁杩涜婧愬崟瀵瑰簲鏉$爜鏍稿锛�'Y'涓烘牳瀵癸級
+                    if (oSystemParameter.omodel.Kf_SellOutBillCheck_SourceBarCodeCtl == "Y")
+                    {
+                        sSourceBarCodeCtl = "Y";
+                    }
+                }
+                //鍏朵粬鍑哄簱鍗�
+                else if (HBillType == "1206")
+                {
+                    //鏍¢獙-鏄惁杩涜婧愬崟瀵瑰簲鏉$爜鏍稿锛�'Y'涓烘牳瀵癸級
+                    if (oSystemParameter.omodel.Kf_OtherOutBillCheck_SourceBarCodeCtl == "Y")
+                    {
+                        sSourceBarCodeCtl = "Y";
+                    }
+                }
+                //濮斿棰嗘枡鍗�
+                else if (HBillType == "1211")
+                {
+                    //鏍¢獙-鏄惁杩涜婧愬崟瀵瑰簲鏉$爜鏍稿锛�'Y'涓烘牳瀵癸級
+                    if (oSystemParameter.omodel.Kf_EntrustOutBillCheck_SourceBarCodeCtl == "Y")
+                    {
+                        sSourceBarCodeCtl = "Y";
+                    }
+                }
+                //鐢熶骇琛ユ枡鍗�
+                else if (HBillType == "1254")
+                {
+                    //鏍¢獙-鏄惁杩涜婧愬崟瀵瑰簲鏉$爜鏍稿锛�'Y'涓烘牳瀵癸級
+                    if (oSystemParameter.omodel.Kf_MateReplenishOutBillCheck_SourceBarCodeCtl == "Y")
+                    {
+                        sSourceBarCodeCtl = "Y";
+                    }
+                }
+                //濮斿琛ユ枡鍗�
+                else if (HBillType == "1255")
+                {
+                    //鏍¢獙-鏄惁杩涜婧愬崟瀵瑰簲鏉$爜鏍稿锛�'Y'涓烘牳瀵癸級
+                    if (oSystemParameter.omodel.Kf_EntrustReplenishOutBillCheck_SourceBarCodeCtl == "Y")
+                    {
+                        sSourceBarCodeCtl = "Y";
+                    }
+                }
+                //鐩存帴璋冩嫧鍗�
+                else if (HBillType == "1207")
+                {
+                    //鏍¢獙-鏄惁杩涜婧愬崟瀵瑰簲鏉$爜鏍稿锛�'Y'涓烘牳瀵癸級
+                    if (oSystemParameter.omodel.Kf_MoveStockBillCheck_SourceBarCodeCtl == "Y")
+                    {
+                        sSourceBarCodeCtl = "Y";
+                    }
+                }
+                #endregion
+
+                try
+                {
+                    oCn.BeginTran();
+                    ds = oCn.RunProcReturn("exec h_p_WMS_ICStockBillAndWMS_Delete_BillCheck " + HInterID + ",'" + HBillNo + "','" + HBillType + "','" + sSourceBarCodeCtl + "','" + sERPMode + "'", "h_p_WMS_ICStockBillAndWMS_Delete_BillCheck");
+                    if (ds == null || ds.Tables[0].Rows.Count == 0)
+                    {
+                        oCn.RollBack();
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鎾ら攢鍗曟嵁宸蹭笂浼犺褰曞け璐ワ紝鎾ら攢鍗曟嵁鍒ゆ柇閿欒锛�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    else if (DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HBack"]) == 1)
+                    {
+                        oCn.RollBack();
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;  //澶辫触锛�
+                        objJsonResult.Message = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HRemark"]);
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    else
+                    {
+                        //鍐欏叆鏃ュ織
+                        oCn.RunProc("Insert into  System_Log(GeginDate,userid,WorkstationName,WorkList,SystemName,NetUserName,State) values " +
+                            "(getdate(),'" + HMaker + "','" + ComputerName + "','" + WorkList + "','" + SystemName + "','','鎾ら攢')"
+                            );
+                        oCn.Commit();
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;  //鎴愬姛锛�
+                        objJsonResult.Message = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HRemark"]);
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+                catch (Exception e)
+                {
+                    oCn.RollBack();
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鎾ら攢鍗曟嵁宸蹭笂浼犺褰曞け璐ワ紒" + e.ToString();
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+            }
+            else
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鑾峰彇绯荤粺鍙傛暟澶辫触锛� " + sErrMsg;
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+
+        #endregion
+
         #region 缂撳瓨妯″潡    宸蹭笂浼犲垪琛ㄧ晫闈紝鎾ら攢鍔熻兘
 
         /// <summary>
diff --git "a/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\345\267\245\347\250\213\351\241\271\347\233\256/PM_ProjectBillController.cs" "b/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\345\267\245\347\250\213\351\241\271\347\233\256/PM_ProjectBillController.cs"
index 26184fa..7c7dcb8 100644
--- "a/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\345\267\245\347\250\213\351\241\271\347\233\256/PM_ProjectBillController.cs"
+++ "b/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\345\267\245\347\250\213\351\241\271\347\233\256/PM_ProjectBillController.cs"
@@ -48,6 +48,7 @@
         public class PM_ProjectBill_Main
         {
             public int HInterID;
+            public string HBillSubType;
             public string HBillNo;
             public string HProNumber;
             public string HProName;
@@ -125,6 +126,43 @@
             public double HYuShouKuanMoney;             //棰勬敹娆�
             public double HGongFeiMoney;                //宸ヨ垂缁撹处
             public double HJieZhangMoney;				//缁撶畻缁撹处
+
+            public int HTaskClassID; //浠诲姟澶х被(Gy_TaskClass)
+            public int HTaskClassEntryID; //浠诲姟椤圭洰鍒嗙被(Gy_TaskClass)
+            public string  HTaskAddress; //浠诲姟鍦扮偣 
+            public string  HBreakStatus; //鎹熷潖鎯呭喌 
+            public string  HWaterLeakage; //婕忔按閲� 
+            public string  HPipeDiameter; //绠″緞 
+            public string  HPipeMaterial; //绠¢亾鏉愯川 
+            public string  HAlarmEmp; //鎶ユ紡浜� 
+            public string  HAlarmLink; //鎶ユ紡浜鸿仈绯荤數璇� 
+            public string  HReceEmp; //鍙楃悊浜� 
+            public string  HReceTime; //鍙楃悊鏃堕棿锛堝勾鏈堟棩鏃跺垎绉掞級 
+            public double HTaskMaterMoney; //浠诲姟鏉愭枡璐� 
+            public double HTaskSetupMoney; //浠诲姟瀹夎璐� 
+            public double HTaskOtherMoney; //浠诲姟闄勫睘璐� 
+            public double HTaskExamMoney; //浠诲姟鑰冩牳璐� 
+            public double HTaskWorkMoney; //浠诲姟宸ヨ垂 
+            public bool  HIsAccount; //鏄惁缁撹处(澶嶉�夋)
+            public string  HAccountDate; //缁撶畻缁撹处鏃ユ湡 
+            public string  HAccountWorkMoneyDate; //宸ヨ垂缁撹处鏃ユ湡 
+            public bool HIsCheckExam; //鏄惁瀹℃牳鑰冩牳璐�(澶嶉�夋)
+            public bool HIsCheckWorkMoney; //鏄惁瀹℃牳宸ヨ垂(澶嶉�夋)
+            public string  HInfoBackTime; //鍥炲鏃堕棿锛堝勾鏈堟棩鏃跺垎绉掞級 
+            public string HInfoBackMan; //鍥炲浜� 
+            public string HInfoNote; //鍥炲鍐呭(瀵屾枃鏈級 
+            public string  HTaskBTime; //浠诲姟寮�濮嬫椂闂达紙骞存湀鏃ユ椂鍒嗙锛� 
+            public string  HTaskETime; //浠诲姟瀹屽伐鏃堕棿锛堝勾鏈堟棩鏃跺垎绉掞級 
+            public string  HTaskNote; //浠诲姟璇︾粏鍐呭锛堝瘜鏂囨湰锛� 
+            public string  HTaskWorkEmp; //宸ヤ綔浜哄憳锛堝瘜鏂囨湰锛� 
+            public string  HBeginCloseValveTime; //寮�濮嬪叧闃�鏃堕棿锛堝勾鏈堟棩鏃跺垎绉掞級 
+            public string  HEndCloseValveTime; //缁撴潫鍏抽榾鏃堕棿锛堝勾鏈堟棩鏃跺垎绉掞級
+            public long  HCloseValveQty; //鍏抽榾鍙暟
+            public string  HBeginOpenValveTime; //寮�濮嬪紑闃�鏃堕棿锛堝勾鏈堟棩鏃跺垎绉掞級 
+            public string  HEndOpenValveTime; //缁撴潫寮�闃�鏃堕棿锛堝勾鏈堟棩鏃跺垎绉掞級 
+            public long HOpenValveQty; //寮�闃�鍙暟
+            public string  HValveWorkEmp; //鎿嶄綔浜哄憳
+            public string  HTaskRemark; //浠诲姟澶囨敞锛堝瘜鏂囨湰锛�
 
         }
         #endregion
@@ -240,7 +278,7 @@
                 int HYear = int.Parse(mainList[0].HDate.Split('-')[0]);
                 int HPeriod = int.Parse(mainList[0].HDate.Split('-')[1]);
                 string HBillType = "4750";
-                string HBillSubType = "";
+                string HBillSubType = mainList[0].HBillSubType;
                 int HInterID = mainList[0].HInterID;
                 string HDate = mainList[0].HDate;
                 string HBillNo = mainList[0].HBillNo;
@@ -306,6 +344,43 @@
                 double HGongFeiMoney = mainList[0].HGongFeiMoney;               //宸ヨ垂缁撹处
                 double HJieZhangMoney = mainList[0].HJieZhangMoney;				//缁撶畻缁撹处
 
+                int HTaskClassID = mainList[0].HTaskClassID; //浠诲姟澶х被(Gy_TaskClass)
+                int HTaskClassEntryID = mainList[0].HTaskClassEntryID; //浠诲姟椤圭洰鍒嗙被(Gy_TaskClass)
+                string HTaskAddress = mainList[0].HTaskAddress; //浠诲姟鍦扮偣 
+                string HBreakStatus = mainList[0].HBreakStatus; //鎹熷潖鎯呭喌 
+                string HWaterLeakage = mainList[0].HWaterLeakage; //婕忔按閲� 
+                string HPipeDiameter = mainList[0].HPipeDiameter; //绠″緞 
+                string HPipeMaterial = mainList[0].HPipeMaterial; //绠¢亾鏉愯川 
+                string HAlarmEmp = mainList[0].HAlarmEmp; //鎶ユ紡浜� 
+                string HAlarmLink = mainList[0].HAlarmLink; //鎶ユ紡浜鸿仈绯荤數璇� 
+                string HReceEmp = mainList[0].HReceEmp; //鍙楃悊浜� 
+                string HReceTime = mainList[0].HReceTime; //鍙楃悊鏃堕棿锛堝勾鏈堟棩鏃跺垎绉掞級 
+                double HTaskMaterMoney = mainList[0].HTaskMaterMoney; //浠诲姟鏉愭枡璐� 
+                double HTaskSetupMoney = mainList[0].HTaskSetupMoney; //浠诲姟瀹夎璐� 
+                double HTaskOtherMoney = mainList[0].HTaskOtherMoney; //浠诲姟闄勫睘璐� 
+                double HTaskExamMoney = mainList[0].HTaskExamMoney; //浠诲姟鑰冩牳璐� 
+                double HTaskWorkMoney = mainList[0].HTaskWorkMoney; //浠诲姟宸ヨ垂 
+                bool HIsAccount = mainList[0].HIsAccount; //鏄惁缁撹处(澶嶉�夋)
+                string HAccountDate = mainList[0].HAccountDate; //缁撶畻缁撹处鏃ユ湡 
+                string HAccountWorkMoneyDate = mainList[0].HAccountWorkMoneyDate; //宸ヨ垂缁撹处鏃ユ湡 
+                bool HIsCheckExam = mainList[0].HIsCheckExam; //鏄惁瀹℃牳鑰冩牳璐�(澶嶉�夋)
+                bool HIsCheckWorkMoney = mainList[0].HIsCheckWorkMoney; //鏄惁瀹℃牳宸ヨ垂(澶嶉�夋)
+                string HInfoBackTime = mainList[0].HInfoBackTime; //鍥炲鏃堕棿锛堝勾鏈堟棩鏃跺垎绉掞級 
+                string HInfoBackMan = mainList[0].HInfoBackMan; //鍥炲浜� 
+                string HInfoNote = mainList[0].HInfoNote; //鍥炲鍐呭(瀵屾枃鏈級 
+                string HTaskBTime = mainList[0].HTaskBTime; //浠诲姟寮�濮嬫椂闂达紙骞存湀鏃ユ椂鍒嗙锛� 
+                string HTaskETime = mainList[0].HTaskETime; //浠诲姟瀹屽伐鏃堕棿锛堝勾鏈堟棩鏃跺垎绉掞級 
+                string HTaskNote = mainList[0].HTaskNote; //浠诲姟璇︾粏鍐呭锛堝瘜鏂囨湰锛� 
+                string HTaskWorkEmp = mainList[0].HTaskWorkEmp; //宸ヤ綔浜哄憳锛堝瘜鏂囨湰锛� 
+                string HBeginCloseValveTime = mainList[0].HBeginCloseValveTime; //寮�濮嬪叧闃�鏃堕棿锛堝勾鏈堟棩鏃跺垎绉掞級 
+                string HEndCloseValveTime = mainList[0].HEndCloseValveTime; //缁撴潫鍏抽榾鏃堕棿锛堝勾鏈堟棩鏃跺垎绉掞級
+                long HCloseValveQty = mainList[0].HCloseValveQty; //鍏抽榾鍙暟
+                string HBeginOpenValveTime = mainList[0].HBeginOpenValveTime; //寮�濮嬪紑闃�鏃堕棿锛堝勾鏈堟棩鏃跺垎绉掞級 
+                string HEndOpenValveTime = mainList[0].HEndOpenValveTime; //缁撴潫寮�闃�鏃堕棿锛堝勾鏈堟棩鏃跺垎绉掞級 
+                long HOpenValveQty = mainList[0].HOpenValveQty; //寮�闃�鍙暟
+                string HValveWorkEmp = mainList[0].HValveWorkEmp; //鎿嶄綔浜哄憳
+                string HTaskRemark = mainList[0].HTaskRemark; //浠诲姟澶囨敞锛堝瘜鏂囨湰锛�
+
 
                 if (OperationType == 2)
                 {
@@ -327,7 +402,8 @@
                     string sql = "insert into PM_ProjectBillMain" +
                         "(HYear,HPeriod,HBillType,HBillSubType,HInterID,HDate,HBillNo,HBillStatus,HRemark,HMaker,HMakeDate,HProNumber,HProName,HCusID,HBeginDate,HEndDate,HSumMoney," +
                         "HProMoney,HWorkMoney,HOtherMoney,HProType,HPMEmpID,HWorkEmpID,HDepEmpID,HConWorkDays,HDepDays,HLastMoney,HPayCusID,HOrgID,HMaterID,HProjectClassID,HBuildComp,HBuildAddress,HWorkNo,HReDate,HPicNo,HWorkTask,HProjectNote,HContacts,HContactNumber" +
-                        ",HSupplierID,HMangerEmpID,HMaterPlanDate,HWorkerID,HPlanWorkTimes,HRelWorkTimes,HTestDate,HTestCheckerID,HTestNote,HSewageDate,HWaterSupplyDate,HWorkNote,HWorkProcNote,HYuSuanMoney,HHeTongMoney,HJieSuanMoney,HShenJiMoney,HCaiLiaoMoney,HAnZhuangMoney,HBanZuMoney,HYuShouKuanMoney,HGongFeiMoney,HJieZhangMoney) " +
+                        ",HSupplierID,HMangerEmpID,HMaterPlanDate,HWorkerID,HPlanWorkTimes,HRelWorkTimes,HTestDate,HTestCheckerID,HTestNote,HSewageDate,HWaterSupplyDate,HWorkNote,HWorkProcNote,HYuSuanMoney,HHeTongMoney,HJieSuanMoney,HShenJiMoney,HCaiLiaoMoney,HAnZhuangMoney,HBanZuMoney,HYuShouKuanMoney,HGongFeiMoney,HJieZhangMoney," +
+                        "HTaskClassID,HTaskClassEntryID,HTaskAddress,HBreakStatus,HWaterLeakage,HPipeDiameter,HPipeMaterial,HAlarmEmp,HAlarmLink,HReceEmp,HReceTime,HTaskMaterMoney,HTaskSetupMoney,HTaskOtherMoney,HTaskExamMoney,HTaskWorkMoney,HIsAccount,HAccountDate,HAccountWorkMoneyDate,HIsCheckExam,HIsCheckWorkMoney,HInfoBackTime,HInfoBackMan,HInfoNote,HTaskBTime,HTaskETime,HTaskNote,HTaskWorkEmp,HBeginCloseValveTime,HEndCloseValveTime,HCloseValveQty,HBeginOpenValveTime,HEndOpenValveTime,HOpenValveQty,HValveWorkEmp,HTaskRemark)" +
                         "values(" +
                         "" + HYear +
                         "," + HPeriod +
@@ -392,6 +468,12 @@
                         ",'" + HYuShouKuanMoney + "'" + 
                         ",'" + HGongFeiMoney + "'" + 
                         ",'" + HJieZhangMoney + "'" +
+                        ",'" + HTaskClassID + "'" + ",'" + HTaskClassEntryID + "'" + ",'" + HTaskAddress + "'" + ",'" + HBreakStatus + "'" + ",'" + HWaterLeakage + "'" + ",'" + HPipeDiameter + "'" + ",'" + HPipeMaterial + "'" + 
+                        ",'" + HAlarmEmp + "'" +",'" + HAlarmLink + "'" + ",'" + HReceEmp + "'" + ",'" + HReceTime + "'" + ",'" + HTaskMaterMoney + "'" + ",'" + HTaskSetupMoney + "'" + ",'" + HTaskOtherMoney + "'" +
+                        ",'" + HTaskExamMoney + "'" + ",'" + HTaskWorkMoney + "'" + ",'" + (HIsAccount?1:0) + "'" + ",'" + HAccountDate + "'" + ",'" + HAccountWorkMoneyDate + "'" + ",'" + (HIsCheckExam ? 1 : 0) + "'" +
+                        ",'" + (HIsCheckWorkMoney ? 1 : 0) + "'" + ",'" + HInfoBackTime + "'" + ",'" + HInfoBackMan + "'" + ",'" + HInfoNote + "'" + ",'" + HTaskBTime + "'" +
+                        ",'" + HTaskETime + "'" + ",'" + HTaskNote + "'" + ",'" + HTaskWorkEmp + "'" + ",'" + HBeginCloseValveTime + "'" + ",'" + HEndCloseValveTime + "'" +
+                        ",'" + HCloseValveQty + "'" + ",'" + HBeginOpenValveTime + "'" + ",'" + HEndOpenValveTime + "'" + ",'" + HOpenValveQty + "'" + ",'" + HValveWorkEmp + "'" + ",'" + HTaskRemark + "'" +
                         ")";
 
                     //涓昏〃
@@ -402,14 +484,14 @@
                 else if (OperationType == 3 || ds.Tables[0].Rows.Count != 0)                    //缂栬緫
                 {
                     string sql = "update PM_ProjectBillMain set " +
-                        "HYear = " + HYear +
-                        ",HPeriod = " + HPeriod +
-                        ",HBillType = '" + HBillType +
-                        "',HBillSubType = '" + HBillSubType +
-                        "',HDate = '" + HDate +
-                        "',HBillNo = '" + HBillNo +
-                        "',HBillStatus = " + HBillStatus +
-                        ",HRemark = '" + HRemark +
+                        //"HYear = " + HYear +
+                        //",HPeriod = " + HPeriod +
+                        //",HBillType = '" + HBillType +
+                        //"',HBillSubType = '" + HBillSubType +
+                        //"',HDate = '" + HDate +
+                        "HBillNo = '" + HBillNo +
+                        //"',HBillStatus = " + HBillStatus +
+                        "',HRemark = '" + HRemark +
                         "',HUpdater = '" + HUpdater +
                         "',HUpdateDate = '" + HUpdaterDate +
                         "',HProNumber = '" + HProNumber +
@@ -465,7 +547,12 @@
                         "',HYuShouKuanMoney = '" + HYuShouKuanMoney +
                         "',HGongFeiMoney = '" + HGongFeiMoney +
                         "',HJieZhangMoney = '" + HJieZhangMoney +
-
+                        "',HTaskClassID = '" + HTaskClassID + "',HTaskClassEntryID = '" + HTaskClassEntryID + "',HTaskAddress = '" + HTaskAddress + "',HBreakStatus = '" + HBreakStatus + "',HWaterLeakage = '" + HWaterLeakage + "',HPipeDiameter = '" + HPipeDiameter +
+                        "',HPipeMaterial = '" + HPipeMaterial + "',HAlarmEmp = '" + HAlarmEmp + "',HAlarmLink = '" + HAlarmLink + "',HReceEmp = '" + HReceEmp + "',HReceTime = '" + HReceTime + "',HTaskMaterMoney = '" + HTaskMaterMoney +
+                        "',HTaskSetupMoney = '" + HTaskSetupMoney + "',HTaskOtherMoney = '" + HTaskOtherMoney + "',HTaskExamMoney = '" + HTaskExamMoney + "',HTaskWorkMoney = '" + HTaskWorkMoney + "',HIsAccount = '" + (HIsAccount?1:0) + "',HAccountDate = '" + HAccountDate +
+                        "',HAccountWorkMoneyDate = '" + HAccountWorkMoneyDate + "',HIsCheckExam = '" + (HIsCheckExam?1:0) + "',HIsCheckWorkMoney = '" + (HIsCheckWorkMoney?1:0) + "',HInfoBackTime = '" + HInfoBackTime + "',HInfoBackMan = '" + HInfoBackMan + "',HInfoNote = '" + HInfoNote +
+                        "',HTaskBTime = '" + HTaskBTime + "',HTaskETime = '" + HTaskETime + "',HTaskNote = '" + HTaskNote + "',HTaskWorkEmp = '" + HTaskWorkEmp + "',HBeginCloseValveTime = '" + HBeginCloseValveTime + "',HEndCloseValveTime = '" + HEndCloseValveTime +
+                        "',HCloseValveQty = '" + HCloseValveQty + "',HBeginOpenValveTime = '" + HBeginOpenValveTime + "',HEndOpenValveTime = '" + HEndOpenValveTime + "',HOpenValveQty = '" + HOpenValveQty + "',HValveWorkEmp = '" + HValveWorkEmp + "',HTaskRemark = '" + HTaskRemark +
 
                         "' where HInterID = " + HInterID;
 
diff --git a/WebAPI/Properties/PublishProfiles/FolderProfilewtt.pubxml.user b/WebAPI/Properties/PublishProfiles/FolderProfilewtt.pubxml.user
index 8985c4b..f735738 100644
--- a/WebAPI/Properties/PublishProfiles/FolderProfilewtt.pubxml.user
+++ b/WebAPI/Properties/PublishProfiles/FolderProfilewtt.pubxml.user
@@ -4,7 +4,7 @@
 -->
 <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
   <PropertyGroup>
-    <History>True|2024-12-09T03:01:35.7691980Z;True|2024-12-09T09:20:22.9742701+08:00;True|2024-12-09T08:47:26.0470083+08:00;True|2024-12-06T13:13:33.9776030+08:00;True|2024-12-05T14:33:41.1542437+08:00;True|2024-12-05T14:21:02.3120095+08:00;True|2024-12-05T14:13:09.2733831+08:00;True|2024-12-05T13:27:25.9831554+08:00;True|2024-12-05T13:23:25.4183580+08:00;True|2024-12-05T11:27:26.9609695+08:00;True|2024-12-05T09:20:29.4596887+08:00;True|2024-12-05T08:47:57.2553570+08:00;True|2024-12-05T08:41:06.4860297+08:00;True|2024-12-05T08:32:16.9785572+08:00;True|2024-12-04T15:54:19.4995372+08:00;True|2024-12-04T11:10:12.2273624+08:00;True|2024-12-04T10:21:44.8769236+08:00;False|2024-12-04T10:20:59.8206595+08:00;True|2024-12-04T09:52:03.8506923+08:00;True|2024-12-03T15:09:48.8710712+08:00;False|2024-12-03T15:08:46.8904626+08:00;True|2024-11-28T10:42:45.3823067+08:00;True|2024-11-28T09:58:38.0983021+08:00;True|2024-11-27T16:16:28.4276838+08:00;True|2024-11-27T16:09:08.0834912+08:00;True|2024-11-27T14:32:21.1684294+08:00;True|2024-11-27T13:24:51.2115157+08:00;True|2024-11-27T13:16:51.5888615+08:00;True|2024-11-26T10:47:18.1958719+08:00;False|2024-11-26T10:46:22.2016963+08:00;False|2024-11-25T10:22:55.3420353+08:00;True|2024-11-20T09:08:48.6293480+08:00;True|2024-11-19T17:01:27.8454996+08:00;True|2024-11-19T08:20:49.6371464+08:00;True|2024-11-18T15:27:25.3419580+08:00;True|2024-11-18T15:19:07.4691728+08:00;True|2024-11-18T14:57:25.8637252+08:00;True|2024-11-18T14:52:10.6158576+08:00;True|2024-11-18T14:46:03.5051743+08:00;True|2024-11-18T13:42:14.5146469+08:00;True|2024-11-18T13:27:53.4498275+08:00;True|2024-11-18T11:26:05.8168670+08:00;True|2024-11-18T11:04:00.4711300+08:00;True|2024-11-18T10:54:15.6267907+08:00;True|2024-11-18T10:45:29.5275370+08:00;True|2024-11-15T16:58:39.1926238+08:00;True|2024-11-15T16:45:12.0168760+08:00;True|2024-11-15T16:37:11.8513587+08:00;True|2024-11-15T16:31:13.0430714+08:00;True|2024-11-15T16:27:45.3575015+08:00;False|2024-11-15T16:26:49.5306586+08:00;True|2024-11-15T16:16:54.0542122+08:00;True|2024-11-15T15:51:41.6920560+08:00;False|2024-11-15T15:50:37.8798414+08:00;True|2024-11-06T14:13:46.3129972+08:00;False|2024-11-06T14:12:47.9022879+08:00;False|2024-11-05T20:45:28.3960353+08:00;True|2024-11-05T19:04:11.0417788+08:00;False|2024-11-05T19:03:03.9263878+08:00;True|2024-11-05T15:54:24.8374699+08:00;False|2024-11-05T15:53:24.4214141+08:00;True|2024-10-25T16:51:46.3066612+08:00;True|2024-10-25T12:16:27.8737941+08:00;True|2024-10-25T10:12:38.8056269+08:00;False|2024-10-25T10:11:44.1117608+08:00;True|2024-10-25T09:54:06.8572059+08:00;True|2024-10-25T08:21:42.6333993+08:00;True|2024-10-24T17:56:19.5319332+08:00;True|2024-10-24T17:50:10.0801119+08:00;False|2024-10-24T17:49:21.0726954+08:00;True|2024-10-24T17:40:46.0577697+08:00;False|2024-10-24T17:39:53.3743103+08:00;True|2024-10-24T14:57:00.6752320+08:00;True|2024-10-24T10:08:39.8269595+08:00;False|2024-10-24T10:07:47.3834032+08:00;True|2024-10-22T10:33:10.1961964+08:00;True|2024-10-21T08:43:54.1422810+08:00;False|2024-10-21T08:43:00.6574201+08:00;True|2024-10-18T14:56:55.6749850+08:00;True|2024-10-18T14:47:05.1073813+08:00;True|2024-10-18T11:24:23.9069952+08:00;True|2024-10-18T11:14:57.8486575+08:00;False|2024-10-18T11:14:07.5289704+08:00;True|2024-10-18T10:57:00.2425175+08:00;False|2024-10-18T10:56:04.8949960+08:00;True|2024-10-15T16:44:32.6189434+08:00;True|2024-10-15T14:38:49.8658311+08:00;True|2024-10-15T09:49:55.2197004+08:00;False|2024-10-15T09:49:14.8790668+08:00;False|2024-10-12T15:28:24.1303695+08:00;True|2024-10-10T10:59:36.7878419+08:00;False|2024-10-10T10:58:40.9900315+08:00;True|2024-10-03T10:57:02.9299524+08:00;True|2024-10-03T10:02:10.1156720+08:00;True|2024-09-30T11:07:22.5376794+08:00;True|2024-09-30T10:15:40.3990343+08:00;True|2024-09-30T10:04:38.1942221+08:00;True|2024-09-29T19:22:01.5340857+08:00;False|2024-09-29T19:21:12.2387012+08:00;True|2024-09-26T09:50:22.2637977+08:00;True|2024-09-25T20:44:33.3994634+08:00;True|2024-09-25T16:07:23.2747063+08:00;True|2024-09-25T14:55:37.9194143+08:00;True|2024-09-24T20:03:43.9841995+08:00;True|2024-09-24T19:42:48.7479102+08:00;True|2024-09-24T19:38:31.5777012+08:00;True|2024-09-24T16:26:58.5969765+08:00;True|2024-09-24T15:31:00.7140362+08:00;True|2024-09-24T10:17:46.7830753+08:00;True|2024-09-24T09:40:19.5788062+08:00;False|2024-09-24T09:39:27.4521802+08:00;True|2024-09-23T19:35:55.3572583+08:00;True|2024-09-23T18:53:15.4480118+08:00;False|2024-09-23T18:52:22.0135173+08:00;True|2024-09-20T09:59:12.9943442+08:00;False|2024-09-20T09:58:18.6945854+08:00;True|2024-09-12T20:40:58.7161451+08:00;False|2024-09-12T20:40:00.0672966+08:00;True|2024-09-12T16:47:22.7671323+08:00;True|2024-09-12T16:34:18.5850144+08:00;True|2024-09-12T16:13:32.1929032+08:00;True|2024-09-12T09:12:54.4456999+08:00;False|2024-09-12T09:12:06.1002866+08:00;False|2024-09-11T21:06:15.4423786+08:00;True|2024-09-10T15:26:48.7055081+08:00;True|2024-09-10T09:26:36.8509916+08:00;True|2024-09-09T19:51:32.6059511+08:00;True|2024-09-09T19:05:47.5349922+08:00;True|2024-09-09T09:26:23.2022383+08:00;False|2024-09-09T09:25:27.3736749+08:00;True|2024-09-06T15:32:52.1865278+08:00;True|2024-09-06T15:16:01.1405794+08:00;True|2024-09-06T14:21:05.7482343+08:00;True|2024-09-06T14:09:17.1494566+08:00;True|2024-09-06T13:49:56.4128481+08:00;True|2024-09-06T13:11:53.0863947+08:00;True|2024-09-06T09:34:54.5934463+08:00;True|2024-09-06T08:47:19.9744092+08:00;True|2024-09-05T15:01:38.6968629+08:00;True|2024-09-05T14:56:09.3505818+08:00;True|2024-09-05T14:49:56.8774757+08:00;True|2024-09-05T08:14:13.2359921+08:00;False|2024-09-05T08:13:11.8797534+08:00;True|2024-09-03T16:52:02.8227375+08:00;False|2024-09-03T16:51:32.4250926+08:00;True|2024-09-03T16:33:05.7269609+08:00;True|2024-09-03T16:00:15.0288548+08:00;True|2024-08-29T08:06:32.4732067+08:00;False|2024-08-29T08:06:02.4801886+08:00;True|2024-08-26T10:17:08.7733750+08:00;False|2024-08-26T10:11:05.1864217+08:00;False|2024-08-26T09:50:31.1539306+08:00;False|2024-08-26T09:47:37.4351309+08:00;True|2024-08-16T16:55:32.0918962+08:00;True|2024-08-16T16:53:23.3505641+08:00;False|2024-08-16T16:49:30.4579212+08:00;False|2024-08-16T16:47:01.9799743+08:00;</History>
+    <History>True|2024-12-17T05:56:47.7915112Z;True|2024-12-17T11:13:27.2665832+08:00;True|2024-12-16T16:01:15.5110052+08:00;True|2024-12-16T15:53:18.1111331+08:00;True|2024-12-16T15:13:43.9719840+08:00;True|2024-12-16T15:08:49.2287341+08:00;True|2024-12-16T14:59:21.3003410+08:00;True|2024-12-16T10:16:34.6636364+08:00;True|2024-12-16T10:12:38.1827164+08:00;False|2024-12-16T10:12:16.1621752+08:00;True|2024-12-13T15:44:29.9921182+08:00;False|2024-12-13T15:43:36.1775569+08:00;True|2024-12-11T09:06:23.2065068+08:00;True|2024-12-11T09:02:10.9767948+08:00;True|2024-12-11T08:26:16.2292105+08:00;True|2024-12-10T16:17:47.2702447+08:00;True|2024-12-10T14:47:18.4352590+08:00;True|2024-12-10T14:10:37.0165625+08:00;True|2024-12-10T13:59:25.4712057+08:00;True|2024-12-10T13:46:02.3070111+08:00;True|2024-12-10T13:39:19.2434918+08:00;True|2024-12-10T10:42:47.3763447+08:00;True|2024-12-10T10:28:20.0524748+08:00;True|2024-12-09T11:01:35.7691980+08:00;True|2024-12-09T09:20:22.9742701+08:00;True|2024-12-09T08:47:26.0470083+08:00;True|2024-12-06T13:13:33.9776030+08:00;True|2024-12-05T14:33:41.1542437+08:00;True|2024-12-05T14:21:02.3120095+08:00;True|2024-12-05T14:13:09.2733831+08:00;True|2024-12-05T13:27:25.9831554+08:00;True|2024-12-05T13:23:25.4183580+08:00;True|2024-12-05T11:27:26.9609695+08:00;True|2024-12-05T09:20:29.4596887+08:00;True|2024-12-05T08:47:57.2553570+08:00;True|2024-12-05T08:41:06.4860297+08:00;True|2024-12-05T08:32:16.9785572+08:00;True|2024-12-04T15:54:19.4995372+08:00;True|2024-12-04T11:10:12.2273624+08:00;True|2024-12-04T10:21:44.8769236+08:00;False|2024-12-04T10:20:59.8206595+08:00;True|2024-12-04T09:52:03.8506923+08:00;True|2024-12-03T15:09:48.8710712+08:00;False|2024-12-03T15:08:46.8904626+08:00;True|2024-11-28T10:42:45.3823067+08:00;True|2024-11-28T09:58:38.0983021+08:00;True|2024-11-27T16:16:28.4276838+08:00;True|2024-11-27T16:09:08.0834912+08:00;True|2024-11-27T14:32:21.1684294+08:00;True|2024-11-27T13:24:51.2115157+08:00;True|2024-11-27T13:16:51.5888615+08:00;True|2024-11-26T10:47:18.1958719+08:00;False|2024-11-26T10:46:22.2016963+08:00;False|2024-11-25T10:22:55.3420353+08:00;True|2024-11-20T09:08:48.6293480+08:00;True|2024-11-19T17:01:27.8454996+08:00;True|2024-11-19T08:20:49.6371464+08:00;True|2024-11-18T15:27:25.3419580+08:00;True|2024-11-18T15:19:07.4691728+08:00;True|2024-11-18T14:57:25.8637252+08:00;True|2024-11-18T14:52:10.6158576+08:00;True|2024-11-18T14:46:03.5051743+08:00;True|2024-11-18T13:42:14.5146469+08:00;True|2024-11-18T13:27:53.4498275+08:00;True|2024-11-18T11:26:05.8168670+08:00;True|2024-11-18T11:04:00.4711300+08:00;True|2024-11-18T10:54:15.6267907+08:00;True|2024-11-18T10:45:29.5275370+08:00;True|2024-11-15T16:58:39.1926238+08:00;True|2024-11-15T16:45:12.0168760+08:00;True|2024-11-15T16:37:11.8513587+08:00;True|2024-11-15T16:31:13.0430714+08:00;True|2024-11-15T16:27:45.3575015+08:00;False|2024-11-15T16:26:49.5306586+08:00;True|2024-11-15T16:16:54.0542122+08:00;True|2024-11-15T15:51:41.6920560+08:00;False|2024-11-15T15:50:37.8798414+08:00;True|2024-11-06T14:13:46.3129972+08:00;False|2024-11-06T14:12:47.9022879+08:00;False|2024-11-05T20:45:28.3960353+08:00;True|2024-11-05T19:04:11.0417788+08:00;False|2024-11-05T19:03:03.9263878+08:00;True|2024-11-05T15:54:24.8374699+08:00;False|2024-11-05T15:53:24.4214141+08:00;True|2024-10-25T16:51:46.3066612+08:00;True|2024-10-25T12:16:27.8737941+08:00;True|2024-10-25T10:12:38.8056269+08:00;False|2024-10-25T10:11:44.1117608+08:00;True|2024-10-25T09:54:06.8572059+08:00;True|2024-10-25T08:21:42.6333993+08:00;True|2024-10-24T17:56:19.5319332+08:00;True|2024-10-24T17:50:10.0801119+08:00;False|2024-10-24T17:49:21.0726954+08:00;True|2024-10-24T17:40:46.0577697+08:00;False|2024-10-24T17:39:53.3743103+08:00;True|2024-10-24T14:57:00.6752320+08:00;True|2024-10-24T10:08:39.8269595+08:00;False|2024-10-24T10:07:47.3834032+08:00;True|2024-10-22T10:33:10.1961964+08:00;True|2024-10-21T08:43:54.1422810+08:00;False|2024-10-21T08:43:00.6574201+08:00;True|2024-10-18T14:56:55.6749850+08:00;True|2024-10-18T14:47:05.1073813+08:00;True|2024-10-18T11:24:23.9069952+08:00;True|2024-10-18T11:14:57.8486575+08:00;False|2024-10-18T11:14:07.5289704+08:00;True|2024-10-18T10:57:00.2425175+08:00;False|2024-10-18T10:56:04.8949960+08:00;True|2024-10-15T16:44:32.6189434+08:00;True|2024-10-15T14:38:49.8658311+08:00;True|2024-10-15T09:49:55.2197004+08:00;False|2024-10-15T09:49:14.8790668+08:00;False|2024-10-12T15:28:24.1303695+08:00;True|2024-10-10T10:59:36.7878419+08:00;False|2024-10-10T10:58:40.9900315+08:00;True|2024-10-03T10:57:02.9299524+08:00;True|2024-10-03T10:02:10.1156720+08:00;True|2024-09-30T11:07:22.5376794+08:00;True|2024-09-30T10:15:40.3990343+08:00;True|2024-09-30T10:04:38.1942221+08:00;True|2024-09-29T19:22:01.5340857+08:00;False|2024-09-29T19:21:12.2387012+08:00;True|2024-09-26T09:50:22.2637977+08:00;True|2024-09-25T20:44:33.3994634+08:00;True|2024-09-25T16:07:23.2747063+08:00;True|2024-09-25T14:55:37.9194143+08:00;True|2024-09-24T20:03:43.9841995+08:00;True|2024-09-24T19:42:48.7479102+08:00;True|2024-09-24T19:38:31.5777012+08:00;True|2024-09-24T16:26:58.5969765+08:00;True|2024-09-24T15:31:00.7140362+08:00;True|2024-09-24T10:17:46.7830753+08:00;True|2024-09-24T09:40:19.5788062+08:00;False|2024-09-24T09:39:27.4521802+08:00;True|2024-09-23T19:35:55.3572583+08:00;True|2024-09-23T18:53:15.4480118+08:00;False|2024-09-23T18:52:22.0135173+08:00;True|2024-09-20T09:59:12.9943442+08:00;False|2024-09-20T09:58:18.6945854+08:00;True|2024-09-12T20:40:58.7161451+08:00;False|2024-09-12T20:40:00.0672966+08:00;True|2024-09-12T16:47:22.7671323+08:00;True|2024-09-12T16:34:18.5850144+08:00;True|2024-09-12T16:13:32.1929032+08:00;True|2024-09-12T09:12:54.4456999+08:00;False|2024-09-12T09:12:06.1002866+08:00;False|2024-09-11T21:06:15.4423786+08:00;True|2024-09-10T15:26:48.7055081+08:00;True|2024-09-10T09:26:36.8509916+08:00;True|2024-09-09T19:51:32.6059511+08:00;True|2024-09-09T19:05:47.5349922+08:00;True|2024-09-09T09:26:23.2022383+08:00;False|2024-09-09T09:25:27.3736749+08:00;True|2024-09-06T15:32:52.1865278+08:00;True|2024-09-06T15:16:01.1405794+08:00;True|2024-09-06T14:21:05.7482343+08:00;True|2024-09-06T14:09:17.1494566+08:00;True|2024-09-06T13:49:56.4128481+08:00;True|2024-09-06T13:11:53.0863947+08:00;True|2024-09-06T09:34:54.5934463+08:00;True|2024-09-06T08:47:19.9744092+08:00;True|2024-09-05T15:01:38.6968629+08:00;True|2024-09-05T14:56:09.3505818+08:00;True|2024-09-05T14:49:56.8774757+08:00;True|2024-09-05T08:14:13.2359921+08:00;False|2024-09-05T08:13:11.8797534+08:00;True|2024-09-03T16:52:02.8227375+08:00;False|2024-09-03T16:51:32.4250926+08:00;True|2024-09-03T16:33:05.7269609+08:00;True|2024-09-03T16:00:15.0288548+08:00;True|2024-08-29T08:06:32.4732067+08:00;False|2024-08-29T08:06:02.4801886+08:00;True|2024-08-26T10:17:08.7733750+08:00;False|2024-08-26T10:11:05.1864217+08:00;False|2024-08-26T09:50:31.1539306+08:00;False|2024-08-26T09:47:37.4351309+08:00;True|2024-08-16T16:55:32.0918962+08:00;True|2024-08-16T16:53:23.3505641+08:00;False|2024-08-16T16:49:30.4579212+08:00;False|2024-08-16T16:47:01.9799743+08:00;</History>
     <_PublishTargetUrl>G:\issWeb\缃戠珯鍙戝竷\API</_PublishTargetUrl>
   </PropertyGroup>
   <ItemGroup>
@@ -45,28 +45,28 @@
       <publishTime>02/22/2013 16:43:40</publishTime>
     </File>
     <File Include="bin/BLL.dll">
-      <publishTime>12/09/2024 11:01:07</publishTime>
+      <publishTime>12/17/2024 11:13:01</publishTime>
     </File>
     <File Include="bin/BLL.pdb">
-      <publishTime>12/09/2024 11:01:07</publishTime>
+      <publishTime>12/17/2024 11:13:01</publishTime>
     </File>
     <File Include="bin/BouncyCastle.Crypto.dll">
       <publishTime>12/18/2020 05:32:28</publishTime>
     </File>
     <File Include="bin/DAL.dll">
-      <publishTime>12/09/2024 11:01:05</publishTime>
+      <publishTime>12/17/2024 11:12:59</publishTime>
     </File>
     <File Include="bin/DAL.pdb">
-      <publishTime>12/09/2024 11:01:05</publishTime>
+      <publishTime>12/17/2024 11:12:59</publishTime>
     </File>
     <File Include="bin/Dapper.dll">
       <publishTime>07/22/2016 22:52:40</publishTime>
     </File>
     <File Include="bin/DBUtility.dll">
-      <publishTime>12/09/2024 11:00:59</publishTime>
+      <publishTime>12/13/2024 15:43:49</publishTime>
     </File>
     <File Include="bin/DBUtility.pdb">
-      <publishTime>12/09/2024 11:00:59</publishTime>
+      <publishTime>12/13/2024 15:43:49</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/09/2024 11:01:00</publishTime>
+      <publishTime>12/13/2024 15:43:49</publishTime>
     </File>
     <File Include="bin/Model.pdb">
-      <publishTime>12/09/2024 11:01:00</publishTime>
+      <publishTime>12/13/2024 15:43:49</publishTime>
     </File>
     <File Include="bin/Models/ClsSc_MouldScrapOutBillMain.cs">
       <publishTime>04/15/2024 12:55:45</publishTime>
@@ -147,34 +147,34 @@
       <publishTime>10/23/2021 17:07:54</publishTime>
     </File>
     <File Include="bin/Pub_Class.dll">
-      <publishTime>12/09/2024 11:00:57</publishTime>
+      <publishTime>12/13/2024 15:43:46</publishTime>
     </File>
     <File Include="bin/Pub_Class.pdb">
-      <publishTime>12/09/2024 11:00:57</publishTime>
+      <publishTime>12/13/2024 15:43:46</publishTime>
     </File>
     <File Include="bin/Pub_Control.dll">
-      <publishTime>12/09/2024 11:00:58</publishTime>
+      <publishTime>12/13/2024 15:43:47</publishTime>
     </File>
     <File Include="bin/Pub_Control.pdb">
-      <publishTime>12/09/2024 11:00:58</publishTime>
+      <publishTime>12/13/2024 15:43:47</publishTime>
     </File>
     <File Include="bin/RestSharp.dll">
       <publishTime>08/31/2012 06:22:50</publishTime>
     </File>
     <File Include="bin/SQLHelper.dll">
-      <publishTime>12/09/2024 11:00:58</publishTime>
+      <publishTime>12/13/2024 15:43:47</publishTime>
     </File>
     <File Include="bin/SQLHelper.pdb">
-      <publishTime>12/09/2024 11:00:58</publishTime>
+      <publishTime>12/13/2024 15:43:47</publishTime>
     </File>
     <File Include="bin/Swashbuckle.Core.dll">
       <publishTime>02/16/2015 01:57:08</publishTime>
     </File>
     <File Include="bin/SyntacticSugar.dll">
-      <publishTime>12/09/2024 10:53:27</publishTime>
+      <publishTime>12/11/2024 09:03:39</publishTime>
     </File>
     <File Include="bin/SyntacticSugar.pdb">
-      <publishTime>12/09/2024 10:53:27</publishTime>
+      <publishTime>12/11/2024 09:03:39</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/09/2024 10:53:33</publishTime>
+      <publishTime>12/11/2024 09:03:45</publishTime>
     </File>
     <File Include="bin/TopSdk.pdb">
-      <publishTime>12/09/2024 10:53:33</publishTime>
+      <publishTime>12/11/2024 09:03:45</publishTime>
     </File>
     <File Include="bin/WebActivatorEx.dll">
       <publishTime>11/24/2014 19:18:48</publishTime>
     </File>
     <File Include="bin/WebAPI.dll">
-      <publishTime>12/09/2024 11:01:34</publishTime>
+      <publishTime>12/17/2024 13:56:45</publishTime>
     </File>
     <File Include="bin/WebAPI.pdb">
-      <publishTime>12/09/2024 11:01:34</publishTime>
+      <publishTime>12/17/2024 13:56:45</publishTime>
     </File>
     <File Include="bin/WebAPI.XmlSerializers.dll">
       <publishTime>08/16/2024 16:55:28</publishTime>
diff --git a/WebAPI/Properties/PublishProfiles/JFAPI.pubxml.user b/WebAPI/Properties/PublishProfiles/JFAPI.pubxml.user
index 4c92e8e..17e61c1 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-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>
+    <History>True|2024-12-16T09:07:07.3386872Z;True|2024-12-16T16:34:59.1101964+08:00;True|2024-12-16T16:19:07.9287470+08:00;False|2024-12-16T16:18:46.4617432+08:00;True|2024-12-13T18:06:11.0778539+08:00;True|2024-12-13T16:53:52.2283177+08:00;True|2024-12-13T16:23:15.9531944+08:00;True|2024-12-13T13:58:03.7464045+08:00;True|2024-12-13T10:40:33.9285602+08:00;True|2024-12-13T10:38:03.8494063+08:00;False|2024-12-13T10:37:52.4251132+08:00;True|2024-12-13T10:31:07.4994631+08:00;False|2024-12-13T10:30:40.8021885+08:00;True|2024-12-12T10:01:42.4944750+08:00;False|2024-12-12T10:01:15.7147977+08:00;True|2024-12-11T17:21:58.0453583+08:00;True|2024-12-11T10:59:15.3836831+08:00;True|2024-12-11T09:49:19.4060272+08:00;False|2024-12-11T09:48:51.7603525+08:00;True|2024-12-11T08:58:41.4567855+08:00;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/11/2024 08:58:23</publishTime>
+      <publishTime>12/13/2024 16:53:32</publishTime>
     </File>
     <File Include="bin/BLL.pdb">
-      <publishTime>12/11/2024 08:58:23</publishTime>
+      <publishTime>12/13/2024 16:53:32</publishTime>
     </File>
     <File Include="bin/BouncyCastle.Crypto.dll">
       <publishTime>12/18/2020 05:32:28</publishTime>
     </File>
     <File Include="bin/DAL.dll">
-      <publishTime>12/11/2024 08:58:21</publishTime>
+      <publishTime>12/13/2024 16:53:30</publishTime>
     </File>
     <File Include="bin/DAL.pdb">
-      <publishTime>12/11/2024 08:58:21</publishTime>
+      <publishTime>12/13/2024 16:53:30</publishTime>
     </File>
     <File Include="bin/Dapper.dll">
       <publishTime>07/22/2016 22:52:40</publishTime>
     </File>
     <File Include="bin/DBUtility.dll">
-      <publishTime>12/11/2024 08:58:18</publishTime>
+      <publishTime>12/13/2024 10:30:47</publishTime>
     </File>
     <File Include="bin/DBUtility.pdb">
-      <publishTime>12/11/2024 08:58:18</publishTime>
+      <publishTime>12/13/2024 10:30:47</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/11/2024 08:58:18</publishTime>
+      <publishTime>12/13/2024 16:22:53</publishTime>
     </File>
     <File Include="bin/Model.pdb">
-      <publishTime>12/11/2024 08:58:18</publishTime>
+      <publishTime>12/13/2024 16:22:53</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/11/2024 08:58:16</publishTime>
+      <publishTime>12/13/2024 10:30:45</publishTime>
     </File>
     <File Include="bin/Pub_Class.pdb">
-      <publishTime>12/11/2024 08:58:16</publishTime>
+      <publishTime>12/13/2024 10:30:45</publishTime>
     </File>
     <File Include="bin/Pub_Control.dll">
-      <publishTime>12/11/2024 08:58:17</publishTime>
+      <publishTime>12/13/2024 10:30:46</publishTime>
     </File>
     <File Include="bin/Pub_Control.pdb">
-      <publishTime>12/11/2024 08:58:17</publishTime>
+      <publishTime>12/13/2024 10:30:46</publishTime>
     </File>
     <File Include="bin/RestSharp.dll">
       <publishTime>08/31/2012 06:22:50</publishTime>
     </File>
     <File Include="bin/SQLHelper.dll">
-      <publishTime>12/11/2024 08:58:17</publishTime>
+      <publishTime>12/13/2024 10:30:46</publishTime>
     </File>
     <File Include="bin/SQLHelper.pdb">
-      <publishTime>12/11/2024 08:58:17</publishTime>
+      <publishTime>12/13/2024 10:30:46</publishTime>
     </File>
     <File Include="bin/Swashbuckle.Core.dll">
       <publishTime>02/16/2015 01:57:08</publishTime>
     </File>
     <File Include="bin/SyntacticSugar.dll">
-      <publishTime>12/11/2024 08:57:34</publishTime>
+      <publishTime>12/13/2024 08:23:31</publishTime>
     </File>
     <File Include="bin/SyntacticSugar.pdb">
-      <publishTime>12/11/2024 08:57:34</publishTime>
+      <publishTime>12/13/2024 08:23:31</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/11/2024 08:57:37</publishTime>
+      <publishTime>12/13/2024 10:12:31</publishTime>
     </File>
     <File Include="bin/TopSdk.pdb">
-      <publishTime>12/11/2024 08:57:37</publishTime>
+      <publishTime>12/13/2024 10:12:32</publishTime>
     </File>
     <File Include="bin/WebActivatorEx.dll">
       <publishTime>11/24/2014 19:18:48</publishTime>
     </File>
     <File Include="bin/WebAPI.dll">
-      <publishTime>12/11/2024 08:57:58</publishTime>
+      <publishTime>12/16/2024 17:06:09</publishTime>
     </File>
     <File Include="bin/WebAPI.pdb">
-      <publishTime>12/11/2024 08:57:58</publishTime>
+      <publishTime>12/16/2024 17:06:09</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/06/2024 16:55:28</publishTime>
+      <publishTime>12/11/2024 09:49:18</publishTime>
     </File>
   </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/WebAPI/WebAPI.csproj.user b/WebAPI/WebAPI.csproj.user
index b04473a..be6507d 100644
--- a/WebAPI/WebAPI.csproj.user
+++ b/WebAPI/WebAPI.csproj.user
@@ -1,8 +1,8 @@
 锘�<?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
   <PropertyGroup>
-    <LastActiveSolutionConfig>Release|Any CPU</LastActiveSolutionConfig>
-    <NameOfLastUsedPublishProfile>D:\缃戠珯鍙戝竷\鍚庣浠g爜\MES-WEB-API\MES-WEB-API\WebAPI\Properties\PublishProfiles\FolderProfile1.pubxml</NameOfLastUsedPublishProfile>
+    <LastActiveSolutionConfig>Debug|Any CPU</LastActiveSolutionConfig>
+    <NameOfLastUsedPublishProfile>C:\Users\86130\Desktop\鏅轰簯杩堟�漒MES-WEB-API\WebAPI\Properties\PublishProfiles\FolderProfilewtt.pubxml</NameOfLastUsedPublishProfile>
     <UseIISExpress>true</UseIISExpress>
     <Use64BitIISExpress />
     <IISExpressSSLPort />

--
Gitblit v1.9.1