From 51c8ecb7a3e5c8d681c7498c7a2e5ee1f108b90d Mon Sep 17 00:00:00 2001
From: duhe <226547893@qq.com>
Date: 星期五, 26 四月 2024 13:41:57 +0800
Subject: [PATCH] 1

---
 WebAPI/Controllers/基础资料/工资基础资料/Gy_WorkTypeController.cs      |    2 
 WebAPI/Web References/WebS/WebService1.wsdl                  |  225 ++
 DAL/仓库管理/ClsKf_MoveStockBill.cs                              |    8 
 WebAPI/Controllers/CJGL/Cj_SingleStationController.cs        |   39 
 WebAPI/Controllers/条码管理/WEBSController.cs                    |  120 +
 DAL/工资管理/ClsPay_SingleBalBill.cs                             |  180 +
 DAL/采购管理/ClsCg_PayableBill.cs                                |   35 
 WebAPI/Controllers/BaseSet/Gy_SupplierController.cs          |   10 
 WebAPI/Controllers/SCGL/Sc_MESTransFerWorkBillController.cs  |   58 
 WebAPI/Controllers/仓存管理/领料发货/Kf_StepFoldOutBillController.cs |   82 +
 WebAPI/Web References/WebS/Reference.cs                      | 1219 +++++++++++++++++-
 WebAPI/Web.config                                            |    4 
 WebAPI/Controllers/CJGL/Cj_StationEntrustInBillController.cs |   17 
 WebAPI/Models/Supplier.cs                                    |    1 
 WebAPI/Controllers/项目管理/工程项目/PM_ProjectBillController.cs     |   39 
 WebAPI/Controllers/CGGL/Kf_POStockInBillController.cs        |   20 
 WebAPI/Controllers/CGGL/Cg_POInStockBillController.cs        |   18 
 Pub_Class/CustomerCls/ClsXt_SystemParameter.cs               |  147 ++
 WebAPI/Controllers/CGGL/Cg_PayableBillController.cs          |    6 
 WebAPI/Controllers/PlateBindingController.cs                 |  123 +
 WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs       |  371 +++++
 WebAPI/Controllers/Sc_MouldRepairInBillListController.cs     |   54 
 WebAPI/Controllers/WebAPIController.cs                       |   18 
 Pub_Class/CustomerCls/ClsXt_SystemParameterMain.cs           |    5 
 WebAPI/Controllers/仓存管理/验收入库/Kf_ProductInBillController.cs   |  621 ++++++++
 WebAPI/Controllers/仓存管理/验收入库/Kf_StepFoldinBillController.cs  |  132 +
 DAL/工位看板/ClsGy_SOPBill.cs                                    |    7 
 Model/工资管理/ClsPay_SingleBalBillSub.cs                        |    1 
 WebAPI/ListModels.cs                                         |   18 
 DAL/销售管理/ClsXs_ReceivableBill.cs                             |   62 
 WebAPI/Controllers/基础资料/基础资料/Gy_SOPBillEditController.cs     |  103 +
 WebAPI/Controllers/工资管理/Pay_SingleBalBillController.cs       |  251 +++
 WebAPI/WebAPI.csproj                                         |    1 
 Model/采购管理/ClsCg_PayableBillMain.cs                          |    2 
 34 files changed, 3,670 insertions(+), 329 deletions(-)

diff --git "a/DAL/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_MoveStockBill.cs" "b/DAL/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_MoveStockBill.cs"
index 7f03b2f..9a4511d 100644
--- "a/DAL/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_MoveStockBill.cs"
+++ "b/DAL/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_MoveStockBill.cs"
@@ -87,6 +87,10 @@
                 " where HInterID=" + lngBillKey.ToString());
                 //鍒犻櫎鍏宠仈
                 DeleteRelation(ref sReturn, lngBillKey);
+
+                //鐩存帴璋冩嫧鍗� 淇敼 鎾ら攢 鍥炲~ 璋冩嫧鐢宠鍗� 鍏宠仈鏁伴噺
+                oCn.RunProc("exec h_p_Kf_UpDateRelation_MoveStockRequestToPOStockIn_Del " + omodel.HInterID.ToString());
+
                 //鍒犻櫎瀛愯〃
                 DeleteBillSub(lngBillKey);
                 //鎻掑叆瀛愯〃
@@ -140,6 +144,8 @@
                 }
                 //============================
 
+                //鐩存帴璋冩嫧鍗� 淇敼 鍥炲~ 璋冩嫧鐢宠鍗� 鍏宠仈鏁伴噺
+                oCn.RunProc("exec h_p_Kf_UpDateRelation_MoveStockRequestToPOStockIn_Add " + omodel.HInterID.ToString());
 
                 sReturn = "淇敼鍗曟嵁鎴愬姛锛�";
                 oCn.Commit();
@@ -254,6 +260,8 @@
                 }
                 //============================
 
+                //鐩存帴璋冩嫧鍗� 淇敼 鍥炲~ 璋冩嫧鐢宠鍗� 鍏宠仈鏁伴噺
+                oCn.RunProc("exec h_p_Kf_UpDateRelation_MoveStockRequestToPOStockIn_Add " + omodel.HInterID.ToString());
 
                 sReturn = "鏂板鍗曟嵁鎴愬姛锛�";
                 oCn.Commit();
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 33bfbbd..521d38e 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"
@@ -88,7 +88,12 @@
             try
             {
                 //寰楀埌mainid
-                omodel.HInterID = DBUtility.ClsPub.CreateBillID(BillType, ref DBUtility.ClsPub.sExeReturnInfo);
+                if (omodel.HInterID.ToString() == null || omodel.HInterID == 0 || omodel.HInterID.ToString() == "undefined")
+                {
+                    omodel.HInterID = DBUtility.ClsPub.CreateBillID(BillType, ref DBUtility.ClsPub.sExeReturnInfo);
+                }
+
+               
                 //鑻AINDI閲嶅鍒欓噸鏂拌幏鍙�
                 oCn.BeginTran();
                 //涓昏〃
diff --git "a/DAL/\345\267\245\350\265\204\347\256\241\347\220\206/ClsPay_SingleBalBill.cs" "b/DAL/\345\267\245\350\265\204\347\256\241\347\220\206/ClsPay_SingleBalBill.cs"
index ac73af0..da19e6a 100644
--- "a/DAL/\345\267\245\350\265\204\347\256\241\347\220\206/ClsPay_SingleBalBill.cs"
+++ "b/DAL/\345\267\245\350\265\204\347\256\241\347\220\206/ClsPay_SingleBalBill.cs"
@@ -29,15 +29,75 @@
         {
             DetailColl = null;
         }
-       
+
         #endregion   鑷畾涔夋柟娉�
+
+        //淇濆瓨鍓嶆帶鍒�
+        public bool BeforeSave(Int64 HInterID, string HBillNo, Int64 OperationType, ref string sReturn)
+        {
+            try
+            {
+                DataSet Ds = oCn.RunProcReturn("Exec h_p_Pay_SingleBalBill_BeforeSaveCtrl " + HInterID.ToString() + ",'" + HBillNo + "'," + OperationType.ToString(), "h_p_Pay_SingleBalBill_BeforeSaveCtrl");
+                if (Ds == null || Ds.Tables[0].Rows.Count == 0)
+                {
+                    sReturn = "淇濆瓨鍓嶅垽鏂け璐ワ紒";
+                    return false;
+                }
+                else
+                {
+                    if (DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HBack"]) == 1)
+                    {
+                        sReturn = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HRemark"]);
+                        return false;
+                    }
+                }
+                return true;
+            }
+            catch (Exception e)
+            {
+                throw (e);
+            }
+        }
+
+        //淇濆瓨鍚庢帶鍒�
+        public bool AfterSave(Int64 HInterID, string HBillNo, Int64 OperationType, ref string sReturn)
+        {
+            try
+            {
+                DataSet Ds = oCn.RunProcReturn("Exec h_p_Pay_SingleBalBill_AfterSaveCtrl " + HInterID.ToString() + ",'" + HBillNo + "'," + OperationType.ToString(), "h_p_Pay_SingleBalBill_AfterSaveCtrl");
+                if (Ds == null || Ds.Tables[0].Rows.Count == 0)
+                {
+                    sReturn = "淇濆瓨鍚庡垽鏂け璐ワ紒";
+                    return false;
+                }
+                else
+                {
+                    if (DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HBack"]) == 1)
+                    {
+                        sReturn = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HRemark"]);
+                        return false;
+                    }
+                }
+                return true;
+            }
+            catch (Exception e)
+            {
+                throw (e);
+            }
+        }
+
         //淇敼鍗曟嵁
         public override bool ModifyBill(Int64 lngBillKey, ref string sReturn)
         {
             try
             {
-                //
                 oCn.BeginTran();
+                //淇濆瓨鍓嶆帶鍒�
+                if (!BeforeSave(lngBillKey, omodel.HBillNo, 2, ref sReturn))
+                {
+                    oCn.RollBack();
+                    return false;
+                }
                 //鏇存柊涓昏〃
                 oCn.RunProc("UpDate Pay_SingleBalBillMain set  " +
                 " HBillNo='" + omodel.HBillNo + "'" +  //鍥哄畾璧嬪��===============
@@ -48,12 +108,13 @@
                 ",HUpDater='" + DBUtility.ClsPub.CurUserName + "'" +
                 ",HUpDateDate=getdate()" +
                 //========================================
-                ",HGroupID=" + omodel.HGroupID.ToString() +
                 ",HDeptID=" + omodel.HDeptID.ToString() +
+                ",HGroupID=" + omodel.HGroupID.ToString() +
                 ",HEmpID=" + omodel.HEmpID.ToString() +
-                ",HPayType=" + omodel.HPayType.ToString() +
+                ",HPayType='" + omodel.HPayType + "'" +
                 ",HExplanation='" + omodel.HExplanation + "'" +
                 ",HInnerBillNo='" + omodel.HInnerBillNo + "'" +
+                ",HStockOrgID=" + omodel.HSTOCKORGID.ToString() +
                 " where HInterID=" + lngBillKey.ToString());
                 //鍒犻櫎鍏宠仈
                 DeleteRelation(ref sReturn, lngBillKey);
@@ -64,37 +125,30 @@
                 foreach (Model.ClsPay_SingleBalBillSub oSub in DetailColl)
                 {
                     oCn.RunProc("Insert into Pay_SingleBalBillSub " +
-                      " (HInterID,HEntryID,HCloseMan,HEntryCloseDate,HCloseType,HRemark" +
-                      ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
-                      ",HMaterID,HProcID,HEmpID,HSourceID,HTimes,HQty,HPrice,HSqty" +
-                      ",HMoney,HICMOInterID,HICMOBillNo,HProcReportInterID,HProcReportEntryID,HProcReportBillNo" +
+                      " (HInterID,HEntryID,HRemark,HRelationQty,HRelationMoney" +
+                      ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType" +
+                      ",HMaterID,HProcID,HSourceID,HEmpID,HTimes,HQty" +
+                      ",HPrice,HPackQty,HPackPrice,HPackMoney,HPackMaterID,HPriceRate" +
+                      ",HSubsidyID,HSubsidyTotal,HDeuctID,HDeuctTotal,HSubsidyQty,HSubsidyMoney,HMoney" +
+                      ",HICMOInterID,HICMOEntryID,HICMOBillNo,HProcReportInterID,HProcReportEntryID,HProcReportBillNo" +
                       ",HProcPlanInterID,HProcPlanEntryID,HProcPlanBillNo" +
-                      ",HPriceRate,HSubsidyTotal,HDeuctTotal,HSubsidyID,HDeuctID" +
-                      ",HPackQty,HPackPrice,HPackMoney,HPackMaterID,HSubsidyQty,HSubsidyMoney" +
                       ") values("
-                      + omodel.HInterID.ToString() + "," + oSub.HEntryID.ToString() + ",'" + oSub.HCloseMan + "','" + oSub.HEntryCloseDate.ToShortDateString() + "'," + Convert.ToString(oSub.HCloseType ? 1 : 0) + ",'" + oSub.HRemark + "'" +
-                      "," + oSub.HSourceInterID.ToString() + "," + oSub.HSourceEntryID.ToString() + ",'" + oSub.HSourceBillNo + "','" + oSub.HSourceBillType + "'," + oSub.HRelationQty.ToString() + "," + oSub.HRelationMoney.ToString() +
-                      "," + oSub.HMaterID.ToString() + "," + oSub.HProcID.ToString() + "," + oSub.HEmpID.ToString() + "," + oSub.HSourceID.ToString()
-                      + "," + oSub.HTimes.ToString() + "," + oSub.HQty.ToString() + "," + oSub.HPrice.ToString() + "," + oSub.HSqty.ToString() +
-                      "," + oSub.HMoney.ToString() + "," + oSub.HICMOInterID.ToString() + ",'" + oSub.HICMOBillNo + "'," + oSub.HProcReportInterID.ToString() + "," + oSub.HProcReportEntryID.ToString() + ",'" + oSub.HProcReportBillNo + "'" +
+                      + omodel.HInterID.ToString() + "," + oSub.HEntryID.ToString() + ",'" + oSub.HRemark + "'," + oSub.HRelationQty.ToString() + "," + oSub.HRelationMoney.ToString() +
+                      "," + oSub.HSourceInterID.ToString() + "," + oSub.HSourceEntryID.ToString() + ",'" + oSub.HSourceBillNo + "','" + oSub.HSourceBillType + "'" +
+                      "," + oSub.HMaterID.ToString() + "," + oSub.HProcID.ToString() + "," + oSub.HSourceID.ToString() + "," + oSub.HEmpID.ToString() + "," + oSub.HTimes.ToString() + "," + oSub.HQty.ToString() +
+                      "," + oSub.HPrice.ToString() + "," + oSub.HPackQty.ToString() + "," + oSub.HPackPrice.ToString() + "," + oSub.HPackMoney.ToString() + "," + oSub.HPackMaterID.ToString() + "," + oSub.HPriceRate.ToString() +
+                      "," + oSub.HSubsidyID.ToString() + "," + oSub.HSubsidyTotal.ToString() + "," + oSub.HDeuctID.ToString() + "," + oSub.HDeuctTotal.ToString() + "," + oSub.HSubsidyQty.ToString() + "," + oSub.HSubsidyMoney.ToString() + "," + oSub.HMoney.ToString() +
+                      "," + oSub.HICMOInterID.ToString() + "," + oSub.HICMOEntryID.ToString() + ",'" + oSub.HICMOBillNo + "'," + oSub.HProcReportInterID.ToString() + "," + oSub.HProcReportEntryID.ToString() + ",'" + oSub.HProcReportBillNo + "'" +
                       "," + oSub.HProcPlanInterID.ToString() + "," + oSub.HProcPlanEntryID.ToString() + ",'" + oSub.HProcPlanBillNo + "'" +
-                      "," + oSub.HPriceRate.ToString() + "," + oSub.HSubsidyTotal.ToString() + "," + oSub.HDeuctTotal.ToString() + "," + oSub.HSubsidyID.ToString() + "," + oSub.HDeuctID.ToString() +
-                      "," + oSub.HPackQty.ToString() + "," + oSub.HPackPrice.ToString() + "," + oSub.HPackMoney.ToString() + "," + oSub.HPackMaterID.ToString() + "," + oSub.HSubsidyQty.ToString() + "," + oSub.HSubsidyMoney.ToString() +
                       ") ");
                 }
-                //
-                //foreach (Model.ClsPay_SingleBalBillSub oSub in DetailColl)
-                //{
-                //    Ds = oCn.RunProcReturn("exec h_p_Pay_SingleBalBill_Qty " + oSub.HICMOInterID, "");
-                //    if (Ds.Tables[0].Rows.Count == 0)
-                //        return;
-                //    if (DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HBool"]) == "Y")
-                //    {
-                //        sReturn = "姹囨姤鏁伴噺瓒呰繃璁″垝鏁伴噺锛佷笉鍏佽淇濆瓨";
-                //        return false;
-                //    }
-                //}
-                sReturn = "淇敼鍗曟嵁鎴愬姛锛�";
+                //淇濆瓨鍚庢帶鍒�
+                if (!AfterSave(lngBillKey, omodel.HBillNo, 2, ref sReturn))
+                {
+                    oCn.RollBack();
+                    return false;
+                }
+                sReturn = "鍗曟嵁鍙凤細" + omodel.HBillNo + " 淇敼鎴愬姛锛�";
                 oCn.Commit();
                 return true;
             }
@@ -114,52 +168,54 @@
                 omodel.HInterID = DBUtility.ClsPub.CreateBillID(BillType, ref DBUtility.ClsPub.sExeReturnInfo);
                 //鑻AINDI閲嶅鍒欓噸鏂拌幏鍙�
                 oCn.BeginTran();
+                //淇濆瓨鍓嶆帶鍒�
+                if (!BeforeSave(omodel.HInterID, omodel.HBillNo, 1, ref sReturn))
+                {
+                    oCn.RollBack();
+                    return false;
+                }
                 //涓昏〃
                 oCn.RunProc("Insert Into Pay_SingleBalBillMain   " +
                 "(HBillType,HBillSubType,HInterID,HBillNo,HDate" +
-                ",HYear,HPeriod,HRemark,HMaker,HMakeDate,HSaveFlag" +
-                ",HGroupID,HDeptID,HEmpID,HPayType,HExplanation,HInnerBillNo" +
+                ",HYear,HPeriod,HRemark,HMaker,HMakeDate" +
+                ",HMainSourceInterID,HMainSourceEntryID,HMainSourceBillNo,HMainSourceBillType" +
+                ",HDeptID,HGroupID,HEmpID,HPayType,HExplanation" +
+                ",HSaveFlag,HInnerBillNo,HStockOrgID" +
                 ") " +
-                " values('" + this.BillType + "','"  + this.HBillSubType + "'," +omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "','" + omodel.HDate + "'" +
-                ", " + omodel.HYear.ToString() + "," + omodel.HPeriod.ToString() + ",'" + omodel.HRemark + "','" + DBUtility.ClsPub.CurUserName + "',getdate()," + Convert.ToString(omodel.HSaveFlag ? 1 : 0) + 
-                ", " + omodel.HGroupID.ToString() + "," + omodel.HDeptID.ToString() + "," + omodel.HEmpID.ToString() + "," + omodel.HPayType.ToString() + ",'" + omodel.HExplanation + "','" + omodel.HInnerBillNo + "'" +
+                " values('" + this.BillType + "','" + this.HBillSubType + "'," + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "','" + omodel.HDate.ToShortDateString() + "'" +
+                ", " + omodel.HYear.ToString() + "," + omodel.HPeriod.ToString() + ",'" + omodel.HRemark + "','" + DBUtility.ClsPub.CurUserName + "',getdate()" +
+                ", " + omodel.HMainSourceInterID.ToString() + "," + omodel.HMainSourceEntryID.ToString() + ",'" + omodel.HMainSourceBillNo + "','" + omodel.HMainSourceBillType + "'" +
+                ", " + omodel.HDeptID.ToString() + "," + omodel.HGroupID.ToString() + "," + omodel.HEmpID.ToString() + "," + omodel.HPayType.ToString() + ",'" + omodel.HExplanation + "'" +
+                ", " + Convert.ToString(omodel.HSaveFlag ? 1 : 0) + ",'" + omodel.HInnerBillNo + "'," + omodel.HSTOCKORGID.ToString() +
                 ") ");
                 //鎻掑叆瀛愯〃
                 foreach (Model.ClsPay_SingleBalBillSub oSub in DetailColl)
                 {
                     oCn.RunProc("Insert into Pay_SingleBalBillSub " +
-                      " (HInterID,HEntryID,HCloseMan,HEntryCloseDate,HCloseType,HRemark" +
-                      ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
-                      ",HMaterID,HProcID,HEmpID,HSourceID,HTimes,HQty,HPrice,HSqty" +
-                      ",HMoney,HICMOInterID,HICMOBillNo,HProcReportInterID,HProcReportEntryID,HProcReportBillNo" +
+                      " (HInterID,HEntryID,HRemark,HRelationQty,HRelationMoney" +
+                      ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType" +
+                      ",HMaterID,HProcID,HSourceID,HEmpID,HTimes,HQty" +
+                      ",HPrice,HPackQty,HPackPrice,HPackMoney,HPackMaterID,HPriceRate" +
+                      ",HSubsidyID,HSubsidyTotal,HDeuctID,HDeuctTotal,HSubsidyQty,HSubsidyMoney,HMoney" +
+                      ",HICMOInterID,HICMOEntryID,HICMOBillNo,HProcReportInterID,HProcReportEntryID,HProcReportBillNo" +
                       ",HProcPlanInterID,HProcPlanEntryID,HProcPlanBillNo" +
-                      ",HPriceRate,HSubsidyTotal,HDeuctTotal,HSubsidyID,HDeuctID" +
-                      ",HPackQty,HPackPrice,HPackMoney,HPackMaterID,HSubsidyQty,HSubsidyMoney" +
                       ") values("
-                      + omodel.HInterID.ToString() + "," + oSub.HEntryID.ToString() + ",'" + oSub.HCloseMan + "','" + oSub.HEntryCloseDate.ToShortDateString() + "'," + Convert.ToString(oSub.HCloseType ? 1 : 0) + ",'" + oSub.HRemark + "'" +
-                      "," + oSub.HSourceInterID.ToString() + "," + oSub.HSourceEntryID.ToString() + ",'" + oSub.HSourceBillNo + "','" + oSub.HSourceBillType + "'," + oSub.HRelationQty.ToString() + "," + oSub.HRelationMoney.ToString() +
-                      "," + oSub.HMaterID.ToString() + "," + oSub.HProcID.ToString() + "," + oSub.HEmpID.ToString() + "," + oSub.HSourceID.ToString()
-                      + "," + oSub.HTimes.ToString() + "," + oSub.HQty.ToString() + "," + oSub.HPrice.ToString() + "," + oSub.HSqty.ToString() +
-                      "," + oSub.HMoney.ToString() + "," + oSub.HICMOInterID.ToString() + ",'" + oSub.HICMOBillNo + "'," + oSub.HProcReportInterID.ToString() + "," + oSub.HProcReportEntryID.ToString() + ",'" + oSub.HProcReportBillNo + "'" +
+                      + omodel.HInterID.ToString() + "," + oSub.HEntryID.ToString() + ",'" + oSub.HRemark + "'," + oSub.HRelationQty.ToString() + "," + oSub.HRelationMoney.ToString() +
+                      "," + oSub.HSourceInterID.ToString() + "," + oSub.HSourceEntryID.ToString() + ",'" + oSub.HSourceBillNo + "','" + oSub.HSourceBillType + "'" +
+                      "," + oSub.HMaterID.ToString() + "," + oSub.HProcID.ToString() + "," + oSub.HSourceID.ToString() + "," + oSub.HEmpID.ToString() + "," + oSub.HTimes.ToString() + "," + oSub.HQty.ToString() +
+                      "," + oSub.HPrice.ToString() + "," + oSub.HPackQty.ToString() + "," + oSub.HPackPrice.ToString() + "," + oSub.HPackMoney.ToString() + "," + oSub.HPackMaterID.ToString() + "," + oSub.HPriceRate.ToString() +
+                      "," + oSub.HSubsidyID.ToString() + "," + oSub.HSubsidyTotal.ToString() + "," + oSub.HDeuctID.ToString() + "," + oSub.HDeuctTotal.ToString() + "," + oSub.HSubsidyQty.ToString() + "," + oSub.HSubsidyMoney.ToString() + "," + oSub.HMoney.ToString() +
+                      "," + oSub.HICMOInterID.ToString() + "," + oSub.HICMOEntryID.ToString() + ",'" + oSub.HICMOBillNo + "'," + oSub.HProcReportInterID.ToString() + "," + oSub.HProcReportEntryID.ToString() + ",'" + oSub.HProcReportBillNo + "'" +
                       "," + oSub.HProcPlanInterID.ToString() + "," + oSub.HProcPlanEntryID.ToString() + ",'" + oSub.HProcPlanBillNo + "'" +
-                      "," + oSub.HPriceRate.ToString() + "," + oSub.HSubsidyTotal.ToString() + "," + oSub.HDeuctTotal.ToString() + "," + oSub.HSubsidyID.ToString() + "," + oSub.HDeuctID.ToString() +
-                      "," + oSub.HPackQty.ToString() + "," + oSub.HPackPrice.ToString() + "," + oSub.HPackMoney.ToString() + "," + oSub.HPackMaterID.ToString() + "," + oSub.HSubsidyQty.ToString() + "," + oSub.HSubsidyMoney.ToString() +
                       ") ");
                 }
-                //
-                //foreach (Model.ClsPay_SingleBalBillSub oSub in DetailColl)
-                //{
-                //    Ds = oCn.RunProcReturn("exec h_p_Pay_SingleBalBill_Qty " + oSub.HICMOInterID, "");
-                //    if (Ds.Tables[0].Rows.Count == 0)
-                //        return;
-                //    if (DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HBool"]) == "Y")
-                //    {
-                //        sReturn = "姹囨姤鏁伴噺瓒呰繃璁″垝鏁伴噺锛佷笉鍏佽淇濆瓨";
-                //        return false;
-                //    }
-                //}
-                //
-                sReturn = "鏂板鍗曟嵁鎴愬姛锛�";
+                //淇濆瓨鍚庢帶鍒�
+                if (!AfterSave(omodel.HInterID, omodel.HBillNo, 1, ref sReturn))
+                {
+                    oCn.RollBack();
+                    return false;
+                }
+                sReturn = "鍗曟嵁鍙凤細" + omodel.HBillNo + " 鏂板鎴愬姛锛�";
                 oCn.Commit();
                 return true;
             }
diff --git "a/DAL/\351\207\207\350\264\255\347\256\241\347\220\206/ClsCg_PayableBill.cs" "b/DAL/\351\207\207\350\264\255\347\256\241\347\220\206/ClsCg_PayableBill.cs"
index d92218b..00285c8 100644
--- "a/DAL/\351\207\207\350\264\255\347\256\241\347\220\206/ClsCg_PayableBill.cs"
+++ "b/DAL/\351\207\207\350\264\255\347\256\241\347\220\206/ClsCg_PayableBill.cs"
@@ -32,10 +32,35 @@
         #endregion
         #endregion
 
+        //鍒犻櫎鍏宠仈
+        public override void DeleteRelation(ref string sReturn, Int64 lngBillKey)
+        {
+            //閲囪喘鍏ュ簱鍗� 閲囪喘璁㈠崟 鍏宠仈鏁伴噺
+            try
+            {
+                if (DetailColl[0].HSourceBillType == "1201")                      //閲囪喘鍏ュ簱鍗�
+                {
+                    oCn.RunProc("exec h_p_Cg_UpDateRelation_POStockInToPayable_Del " + lngBillKey.ToString());
+                }
+                else if (DetailColl[0].HSourceBillType == "1102")                    //閲囪喘璁㈠崟
+                {
+                    oCn.RunProc("exec h_p_Cg_UpDateRelation_POOrderToPayable_Del " + lngBillKey.ToString());
+                }
+                else
+                {
+
+                }
+            }
+            catch (Exception e)
+            {
+                throw (e);
+            }
+        }
+
         //鏂板鍏宠仈
         public override void AddNewRelation(ref string sReturn, Int64 lngBillKey)
         {
-            //鏀舵枡閫氱煡鍗� 閫�鏂欓�氱煡鍗� 鍏宠仈鏁伴噺
+            //閲囪喘鍏ュ簱鍗� 閲囪喘璁㈠崟 鍏宠仈鏁伴噺
             try
             {
                 if (DetailColl[0].HSourceBillType == "1201")                      //閲囪喘鍏ュ簱鍗�
@@ -94,7 +119,7 @@
                     ",HCurID = " + omodel.HCurID + "" +
                     ",HExRate = " + omodel.HExRate + "" +
                     ",HEmpID = " + omodel.HEmpID + "" +
-                    ",HManagerID = " + omodel.HManagerID + "" +
+                    ",HMangerID = " + omodel.HMangerID + "" +
                     ",HDeptID = " + omodel.HDeptID + "" +
                     ",HExplanation = '" + omodel.HExplanation + "'" +
                     ",HInnerBillNo = '" + omodel.HInnerBillNo + "'" +
@@ -225,7 +250,7 @@
                 string mainSql = "insert into Cg_PayableBillMain" +
                     "(HInterID,HBillNo,HDate,HYear,HPeriod,HBillType,HBillSubType" +
                     ",HMainSourceInterID,HMainSourceEntryID,HMainSourceBillNo,HMainSourceBillType" +
-                    ",HMaker,HMakeDate,HSSID,HPSStyleID,HReceiveDate,HSupID,HCurID,HExRate,HEmpID,HManagerID,HDeptID,HExplanation,HInnerBillNo,HRemark) " +
+                    ",HMaker,HMakeDate,HSSID,HPSStyleID,HReceiveDate,HSupID,HCurID,HExRate,HEmpID,HMangerID,HDeptID,HExplanation,HInnerBillNo,HRemark) " +
                     "values(" +
                     "" + omodel.HInterID + "" +
                     ",'" + omodel.HBillNo + "'" +
@@ -247,7 +272,7 @@
                     "," + omodel.HCurID + "" +
                     "," + omodel.HExRate + "" +
                     "," + omodel.HEmpID + "" +
-                    "," + omodel.HManagerID + "" +
+                    "," + omodel.HMangerID + "" +
                     "," + omodel.HDeptID + "" +
                     ",'" + omodel.HExplanation + "'" +
                     ",'" + omodel.HInnerBillNo + "'" +
@@ -383,7 +408,7 @@
                 omodel.HCurID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HCurID"]);
                 omodel.HExRate = DBUtility.ClsPub.isDoule(Ds.Tables[0].Rows[0]["HExRate"]);
                 omodel.HEmpID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HEmpID"]);
-                omodel.HManagerID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HManagerID"]);
+                omodel.HMangerID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HMangerID"]);
                 omodel.HDeptID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HDeptID"]);
 
                 omodel.HExplanation = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HExplanation"]);
diff --git "a/DAL/\351\224\200\345\224\256\347\256\241\347\220\206/ClsXs_ReceivableBill.cs" "b/DAL/\351\224\200\345\224\256\347\256\241\347\220\206/ClsXs_ReceivableBill.cs"
index 7f7a56b..3691193 100644
--- "a/DAL/\351\224\200\345\224\256\347\256\241\347\220\206/ClsXs_ReceivableBill.cs"
+++ "b/DAL/\351\224\200\345\224\256\347\256\241\347\220\206/ClsXs_ReceivableBill.cs"
@@ -32,6 +32,61 @@
         #endregion
         #endregion
 
+
+        #region 鍏宠仈鏁伴噺
+
+        //鍒犻櫎鍏宠仈
+        //public override void DeleteRelation(ref string sReturn, Int64 lngBillKey)
+        //{
+        //    //閿�鍞鍗� 閿�鍞嚭搴撳崟 鍏宠仈鏁伴噺
+        //    try
+        //    {
+        //        if (DetailColl[0].HSourceBillType == "1401")                    //閿�鍞鍗�
+        //        {
+        //            oCn.RunProc("exec h_p_Xs_UpDateRelation_SeOrderToPOStockIn_Del " + lngBillKey.ToString());
+        //        }
+        //        else if (DetailColl[0].HSourceBillType == "1205")                    //閿�鍞嚭搴撳崟
+        //        {
+        //            oCn.RunProc("exec h_p_Xs_UpDateRelation_ICStockoPOStockIn_Del " + lngBillKey.ToString());
+        //        }
+        //        else
+        //        {
+        //        }
+        //    }
+        //    catch (Exception e)
+        //    {
+        //        throw (e);
+        //    }
+        //}
+        ////鏂板鍏宠仈
+        //public override void AddNewRelation(ref string sReturn, Int64 lngBillKey)
+        //{
+        //    //閿�鍞鍗� 閿�鍞嚭搴撳崟 鍏宠仈鏁伴噺
+        //    try
+        //    {
+        //        if (DetailColl[0].HSourceBillType == "1401")                    //閿�鍞鍗�
+        //        {
+        //            oCn.RunProc("exec h_p_Xs_UpDateRelation_SeOrderToPOStockIn_Add " + lngBillKey.ToString());
+        //        }
+        //        else if (DetailColl[0].HSourceBillType == "1205")                    //閿�鍞嚭搴撳崟
+        //        {
+        //            oCn.RunProc("exec h_p_Xs_UpDateRelation_ICStockToPOStockIn_Add " + lngBillKey.ToString());
+        //        }
+        //        else
+        //        {
+
+        //        }
+        //    }
+        //    catch (Exception e)
+        //    {
+        //        throw (e);
+        //    }
+        //}
+
+        #endregion
+
+
+
         #region 淇敼鍗曟嵁
         public override bool ModifyBill(Int64 lngBillKey, ref string sReturn)
         {
@@ -113,6 +168,9 @@
                         ")";
                     oCn.RunProc(subSql);
                 }
+
+                ////鏇存柊璁㈠崟鍏宠仈鏁伴噺
+                //AddNewRelation(ref sReturn, omodel.HInterID);
 
                 sReturn = "淇敼鍗曟嵁鎴愬姛锛�";
                 oCn.Commit();
@@ -229,6 +287,10 @@
                         ")";
                     oCn.RunProc(subSql);
                 }
+
+                ////鏇存柊璁㈠崟鍏宠仈鏁伴噺
+                //AddNewRelation(ref sReturn, omodel.HInterID);
+
                 sReturn = "鏂板鍗曟嵁鎴愬姛锛�";
                 oCn.Commit();
                 return true;
diff --git "a/Model/\345\267\245\350\265\204\347\256\241\347\220\206/ClsPay_SingleBalBillSub.cs" "b/Model/\345\267\245\350\265\204\347\256\241\347\220\206/ClsPay_SingleBalBillSub.cs"
index 52a0201..46a60cc 100644
--- "a/Model/\345\267\245\350\265\204\347\256\241\347\220\206/ClsPay_SingleBalBillSub.cs"
+++ "b/Model/\345\267\245\350\265\204\347\256\241\347\220\206/ClsPay_SingleBalBillSub.cs"
@@ -21,6 +21,7 @@
 
         public double HMoney;//		decimal(18,8)		--金额 
         public Int64 HICMOInterID;//	int		--生产任务单ID
+        public Int64 HICMOEntryID;//	int		--生产任务单子ID
         public string HICMOBillNo;//	varchar(50)		--生产任务单号
         public Int64 HProcReportInterID;//        int      --工序汇报单ID
         public Int64 HProcReportEntryID;//	int	--工序汇报单子ID
diff --git "a/Model/\351\207\207\350\264\255\347\256\241\347\220\206/ClsCg_PayableBillMain.cs" "b/Model/\351\207\207\350\264\255\347\256\241\347\220\206/ClsCg_PayableBillMain.cs"
index 236bde1..a8403b1 100644
--- "a/Model/\351\207\207\350\264\255\347\256\241\347\220\206/ClsCg_PayableBillMain.cs"
+++ "b/Model/\351\207\207\350\264\255\347\256\241\347\220\206/ClsCg_PayableBillMain.cs"
@@ -12,7 +12,7 @@
         public Int64 HCurID;            //int       --币别
         public double HExRate;          //money     --汇率
         public Int64 HDeptID;           //int       --部门
-        public Int64 HManagerID;        //int       --主管
+        public Int64 HMangerID;        //int       --主管
         public Int64 HEmpID;            //int       --业务员
         public string HReceiveDate;
         public string HExplanation;
diff --git a/Pub_Class/CustomerCls/ClsXt_SystemParameter.cs b/Pub_Class/CustomerCls/ClsXt_SystemParameter.cs
index fecbba8..2889df2 100644
--- a/Pub_Class/CustomerCls/ClsXt_SystemParameter.cs
+++ b/Pub_Class/CustomerCls/ClsXt_SystemParameter.cs
@@ -142,11 +142,6 @@
                     {
                         omodel.Sc_ICMOReportBill_DeleterAndMakerMustSame = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
                     }
-                    //生产汇报单 报工台报检申请生产汇报单前判断是否首检检验
-                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Sc_ICMOReportBill_FirstCheckOut")
-                    {
-                        omodel.Sc_ICMOReportBill_FirstCheckOut = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
-                    }
                     //生产汇报单 报工台报检申请生产汇报单前判断是否过程检验
                     if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Sc_ICMOReportBill_ProcessCheckOut")
                     {
@@ -701,6 +696,14 @@
                     {
                         omodel.Kf_MateReplenishOutBill_SourceWHSPCtl = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
                     }
+                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_MateReplenishOutBill_FIFOList")
+                    {
+                        omodel.Kf_MateReplenishOutBill_FIFOList = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
+                    }
+                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_MateReplenishOutBill_FIFOCtl")
+                    {
+                        omodel.Kf_MateReplenishOutBill_FIFOCtl = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
+                    }
                     //生产补料单暂存删除人必须是制单人
                     if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_MateReplenishOutBill_DeleterAndMakerMustSame")
                     {
@@ -756,6 +759,14 @@
                     if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_EntrustReplenishOutBill_SourceWHSPCtl")
                     {
                         omodel.Kf_EntrustReplenishOutBill_SourceWHSPCtl = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
+                    }
+                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_EntrustReplenishOutBill_FIFOList")
+                    {
+                        omodel.Kf_EntrustReplenishOutBill_FIFOList = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
+                    }
+                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_EntrustReplenishOutBill_FIFOCtl")
+                    {
+                        omodel.Kf_EntrustReplenishOutBill_FIFOCtl = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
                     }
                     //委外补料单暂存删除人必须是制单人
                     if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_EntrustReplenishOutBill_DeleterAndMakerMustSame")
@@ -1855,6 +1866,16 @@
                     {
                         omodel.Sc_ICMOReportBill_MESFlag = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
                     }
+                    //生产汇报单暂存删除人必须是制单人
+                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Sc_ICMOReportBill_DeleterAndMakerMustSame")
+                    {
+                        omodel.Sc_ICMOReportBill_DeleterAndMakerMustSame = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
+                    }
+                    //生产汇报单 报工台报检申请生产汇报单前判断是否过程检验
+                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Sc_ICMOReportBill_ProcessCheckOut")
+                    {
+                        omodel.Sc_ICMOReportBill_ProcessCheckOut = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
+                    }
                     //========收料通知单(送货单、到货确认)
                     if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Cg_POInStockBill_BarCodeCtl")
                     {
@@ -1913,6 +1934,11 @@
                     {
                         omodel.Kf_POStockInBill_AutoBarCode = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
                     }
+                    //采购入库单暂存删除人必须是制单人
+                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_POStockInBill_DeleterAndMakerMustSame")
+                    {
+                        omodel.Kf_POStockInBill_DeleterAndMakerMustSame = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
+                    }
 
                     //===========产品入库单
                     if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_ProductInBill_AutoCheck")
@@ -1959,6 +1985,11 @@
                     {
                         omodel.Kf_ProductInBill_Display = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
                     }
+                    //产品入库单暂存删除人必须是制单人
+                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_ProductInBill_DeleterAndMakerMustSame")
+                    {
+                        omodel.Kf_ProductInBill_DeleterAndMakerMustSame = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
+                    }
 
                     //=========其他入库单
                     if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_OtherInBill_AutoCheck")
@@ -2000,6 +2031,11 @@
                     if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_OtherInBill_SourceWHSPCtl")
                     {
                         omodel.Kf_OtherInBill_SourceWHSPCtl = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
+                    }
+                    //其他入库单暂存删除人必须是制单人
+                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_OtherInBill_DeleterAndMakerMustSame")
+                    {
+                        omodel.Kf_OtherInBill_DeleterAndMakerMustSame = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
                     }
                     //============其他入库单  校验
                     if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_OtherInBillCheck_MustQtyCtl")
@@ -2055,6 +2091,11 @@
                     if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_EntrustInBill_SourceWHSPCtl")
                     {
                         omodel.Kf_EntrustInBill_SourceWHSPCtl = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
+                    }
+                    //委外入库单暂存删除人必须是制单人
+                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_EntrustInBill_DeleterAndMakerMustSame")
+                    {
+                        omodel.Kf_EntrustInBill_DeleterAndMakerMustSame = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
                     }
 
                     //==========生产领料单
@@ -2181,6 +2222,11 @@
                     {
                         omodel.Kf_SellOutBill_Display = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
                     }
+                    //销售出库单暂存删除人必须是制单人
+                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_SellOutBill_DeleterAndMakerMustSame")
+                    {
+                        omodel.Kf_SellOutBill_DeleterAndMakerMustSame = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
+                    }
                     //============销售出库单    校验
                     if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_SellOutBillCheck_MustQtyCtl")
                     {
@@ -2243,6 +2289,11 @@
                     if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_OtherOutBill_FIFOCtl")
                     {
                         omodel.Kf_OtherOutBill_FIFOCtl = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
+                    }
+                    //其他出库单暂存删除人必须是制单人
+                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_OtherOutBill_DeleterAndMakerMustSame")
+                    {
+                        omodel.Kf_OtherOutBill_DeleterAndMakerMustSame = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
                     }
                     //===========其他出库单  校验
                     if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_OtherOutBillCheck_MustQtyCtl")
@@ -2307,6 +2358,11 @@
                     {
                         omodel.Kf_EntrustOutBill_SimpleMode = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
                     }
+                    //委外出库单暂存删除人必须是制单人
+                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_EntrustOutBill_DeleterAndMakerMustSame")
+                    {
+                        omodel.Kf_EntrustOutBill_DeleterAndMakerMustSame = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
+                    }
                     //==========委外领料单    校验
                     if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_EntrustOutBillCheck_MustQtyCtl")
                     {
@@ -2358,6 +2414,19 @@
                     {
                         omodel.Kf_MateReplenishOutBill_SourceWHSPCtl = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
                     }
+                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_MateReplenishOutBill_FIFOList")
+                    {
+                        omodel.Kf_MateReplenishOutBill_FIFOList = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
+                    }
+                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_MateReplenishOutBill_FIFOCtl")
+                    {
+                        omodel.Kf_MateReplenishOutBill_FIFOCtl = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
+                    }
+                    //生产补料单暂存删除人必须是制单人
+                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_MateReplenishOutBill_DeleterAndMakerMustSame")
+                    {
+                        omodel.Kf_MateReplenishOutBill_DeleterAndMakerMustSame = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
+                    }
                     //==========生产补料单    校验
                     if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_MateReplenishOutBillCheck_MustQtyCtl")
                     {
@@ -2408,6 +2477,19 @@
                     if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_EntrustReplenishOutBill_SourceWHSPCtl")
                     {
                         omodel.Kf_EntrustReplenishOutBill_SourceWHSPCtl = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
+                    }
+                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_EntrustReplenishOutBill_FIFOList")
+                    {
+                        omodel.Kf_EntrustReplenishOutBill_FIFOList = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
+                    }
+                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_EntrustReplenishOutBill_FIFOCtl")
+                    {
+                        omodel.Kf_EntrustReplenishOutBill_FIFOCtl = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
+                    }
+                    //委外补料单暂存删除人必须是制单人
+                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_EntrustReplenishOutBill_DeleterAndMakerMustSame")
+                    {
+                        omodel.Kf_EntrustReplenishOutBill_DeleterAndMakerMustSame = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
                     }
                     //===========委外补料单    校验
                     if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_EntrustReplenishOutBillCheck_MustQtyCtl")
@@ -2472,6 +2554,11 @@
                     {
                         omodel.Kf_MoveStockBill_Display = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
                     }
+                    //直接调拨单暂存删除人必须是制单人
+                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_MoveStockBill_DeleterAndMakerMustSame")
+                    {
+                        omodel.Kf_MoveStockBill_DeleterAndMakerMustSame = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
+                    }
                     //==========直接调拨单  校验
                     if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_MoveStockBillCheck_MustQtyCtl")
                     {
@@ -2531,6 +2618,11 @@
                     {
                         omodel.Kf_MoveStockStepOutBill_FIFOCtl = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
                     }
+                    //分步式调出单暂存删除人必须是制单人
+                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_MoveStockStepOutBill_DeleterAndMakerMustSame")
+                    {
+                        omodel.Kf_MoveStockStepOutBill_DeleterAndMakerMustSame = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
+                    }
 
                     //===========分步式调入单
                     if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_MoveStockStepInBill_AutoCheck")
@@ -2581,6 +2673,11 @@
                     {
                         omodel.Kf_MoveStockStepInBill_SourceBarCodeCtl = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
                     }
+                    //分步式调入单暂存删除人必须是制单人
+                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_MoveStockStepInBill_DeleterAndMakerMustSame")
+                    {
+                        omodel.Kf_MoveStockStepInBill_DeleterAndMakerMustSame = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
+                    }
 
                     //===============采购退料单
                     if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_POStockInBackBill_AutoCheck")
@@ -2618,6 +2715,11 @@
                     if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_POStockInBackBill_SourceWHSPCtl")
                     {
                         omodel.Kf_POStockInBackBill_SourceWHSPCtl = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
+                    }
+                    //采购退料单暂存删除人必须是制单人
+                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_POStockInBackBill_DeleterAndMakerMustSame")
+                    {
+                        omodel.Kf_POStockInBackBill_DeleterAndMakerMustSame = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
                     }
 
                     //===========生产退库单
@@ -2657,6 +2759,11 @@
                     {
                         omodel.Kf_ProductInBackBill_SourceWHSPCtl = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
                     }
+                    //产品退库单暂存删除人必须是制单人
+                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_ProductInBackBill_DeleterAndMakerMustSame")
+                    {
+                        omodel.Kf_ProductInBackBill_DeleterAndMakerMustSame = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
+                    }
 
                     //===========其他入库红字
                     if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_OtherInBackBill_AutoCheck")
@@ -2695,6 +2802,11 @@
                     {
                         omodel.Kf_OtherInBackBill_SourceWHSPCtl = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
                     }
+                    //其他入库红字单暂存删除人必须是制单人
+                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_OtherInBackBill_DeleterAndMakerMustSame")
+                    {
+                        omodel.Kf_OtherInBackBill_DeleterAndMakerMustSame = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
+                    }
 
                     //===========委外退库单
                     if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_EntrustInBackBill_AutoCheck")
@@ -2729,6 +2841,11 @@
                     {
                         omodel.Kf_EntrustInBackBill_MaterWHSPCtl = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
                     }
+                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_EntrustInBackBill_SourceWHSPCtl")
+                    {
+                        omodel.Kf_EntrustInBackBill_SourceWHSPCtl = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
+                    }
+                    //其他入库红字单暂存删除人必须是制单人
                     if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_EntrustInBackBill_SourceWHSPCtl")
                     {
                         omodel.Kf_EntrustInBackBill_SourceWHSPCtl = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
@@ -2775,6 +2892,11 @@
                     {
                         omodel.Kf_MateOutBackBill_SimpleMode = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
                     }
+                    //生产退料单暂存删除人必须是制单人
+                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_MateOutBackBill_DeleterAndMakerMustSame")
+                    {
+                        omodel.Kf_MateOutBackBill_DeleterAndMakerMustSame = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
+                    }
 
                     //==========销售退库单
                     if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_SellOutBackBill_AutoCheck")
@@ -2817,6 +2939,11 @@
                     {
                         omodel.Kf_SellOutBackBill_AutoSavePOStockInBackBill = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
                     }
+                    //销售退库单暂存删除人必须是制单人
+                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_SellOutBackBill_DeleterAndMakerMustSame")
+                    {
+                        omodel.Kf_SellOutBackBill_DeleterAndMakerMustSame = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
+                    }
 
                     //=========其他出库红字
                     if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_OtherOutBackBill_AutoCheck")
@@ -2854,6 +2981,11 @@
                     if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_OtherOutBackBill_SourceWHSPCtl")
                     {
                         omodel.Kf_OtherOutBackBill_SourceWHSPCtl = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
+                    }
+                    //其他出库红字单暂存删除人必须是制单人
+                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_OtherOutBackBill_DeleterAndMakerMustSame")
+                    {
+                        omodel.Kf_OtherOutBackBill_DeleterAndMakerMustSame = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
                     }
 
                     //===========委外退料单
@@ -2897,6 +3029,11 @@
                     {
                         omodel.Kf_EntrustOutBackBill_SimpleMode = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
                     }
+                    //委外退料单暂存删除人必须是制单人
+                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Kf_EntrustOutBackBill_DeleterAndMakerMustSame")
+                    {
+                        omodel.Kf_EntrustOutBackBill_DeleterAndMakerMustSame = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
+                    }
 
                     //===========生产组托单
                     if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Sc_PackUnionBill_SourceBillTypeCtl")
diff --git a/Pub_Class/CustomerCls/ClsXt_SystemParameterMain.cs b/Pub_Class/CustomerCls/ClsXt_SystemParameterMain.cs
index b16841f..2b8e083 100644
--- a/Pub_Class/CustomerCls/ClsXt_SystemParameterMain.cs
+++ b/Pub_Class/CustomerCls/ClsXt_SystemParameterMain.cs
@@ -189,6 +189,8 @@
         public string Kf_MateReplenishOutBill_MultilineCtl;    //是否存在多行相同物料时自动拆分换行('Y'为自动拆分)
         public string Kf_MateReplenishOutBill_MaterWHSPCtl;    //是否取物料默认仓库仓位('Y'为是)
         public string Kf_MateReplenishOutBill_SourceWHSPCtl;   //是否取源单中仓库仓位('Y'为是)
+        public string Kf_MateReplenishOutBill_FIFOList;        //先进先出下架清单
+        public string Kf_MateReplenishOutBill_FIFOCtl;         //先进先出控制
         public string Kf_MateReplenishOutBill_DeleterAndMakerMustSame;    //生产补料单暂存删除人必须是制单人
         //生产补料  校验
         public string Kf_MateReplenishOutBillCheck_MustQtyCtl;   //校验数量控制
@@ -206,6 +208,8 @@
         public string Kf_EntrustReplenishOutBill_MultilineCtl;    //是否存在多行相同物料时自动拆分换行('Y'为自动拆分)
         public string Kf_EntrustReplenishOutBill_MaterWHSPCtl;    //是否取物料默认仓库仓位('Y'为是)
         public string Kf_EntrustReplenishOutBill_SourceWHSPCtl;   //是否取源单中仓库仓位('Y'为是)
+        public string Kf_EntrustReplenishOutBill_FIFOList;        //先进先出下架清单
+        public string Kf_EntrustReplenishOutBill_FIFOCtl;         //先进先出控制
         public string Kf_EntrustReplenishOutBill_DeleterAndMakerMustSame;    //委外补料单暂存删除人必须是制单人
         //委外补料    校验
         public string Kf_EntrustReplenishOutBillCheck_MustQtyCtl;   //校验数量控制
@@ -436,6 +440,7 @@
         public string MES_StationInBill_DeleteRelationCtl;              //进站接收单删除时是否进行关联控制
         public string MES_StationInBill_PreQtyCtl;              //本道进站数量不能大于上道出站合格数量
         public string MES_StationInBill_QtyRateCtl;              //本道进站数量汇总数不能大于流转卡数量上限
+        public string MES_StationInBill_DyCentralInspectionControl;              //判断工序进站之前是否做过检验单
 
         //工序出站汇报单
         public string MES_StationOutBill_AutoCheck;                        //保存后是否自动审核
diff --git a/WebAPI/Controllers/BaseSet/Gy_SupplierController.cs b/WebAPI/Controllers/BaseSet/Gy_SupplierController.cs
index 54effae..f746dea 100644
--- a/WebAPI/Controllers/BaseSet/Gy_SupplierController.cs
+++ b/WebAPI/Controllers/BaseSet/Gy_SupplierController.cs
@@ -121,7 +121,7 @@
         {
             try
             {
-                string sql = string.Format(@"select  s.HItemID,s.HNumber 缂栫爜,s.HName 鍚嶇О,s.HHelpCode  鍔╄鐮�,s.HShortName 绠�绉�,s.HAddress 鍦板潃,s.HLinkMan 鑱旂郴浜�,s.HLinkPhone 鑱旂郴鐢佃瘽
+                string sql = string.Format(@"select  s.HItemID,s.HUSEORGID,o.Hname 浣跨敤缁勭粐,s.HCREATEORGID ,d.Hname 鍒涘缓缁勭粐,s.HNumber 缂栫爜,s.HName 鍚嶇О,s.HHelpCode  鍔╄鐮�,s.HShortName 绠�绉�,s.HAddress 鍦板潃,s.HLinkMan 鑱旂郴浜�,s.HLinkPhone 鑱旂郴鐢佃瘽
                                             ,s.HMobilePhone 鎵嬫満,s.HFax 浼犵湡,s.HPostalCode 閭紪,s.HEmail 鐢靛瓙閭欢,s.HCorMan 娉曚汉浠h〃,s.HBank 寮�鎴烽摱琛�,s.HBankAccount 閾惰璐﹀彿,
                                            s.HTaxNum 绋庡姟鐧昏鍙�,s.HEnglishName 鑻辨枃鍚嶇О,s.HEngLishAddress 鑻辨枃鍦板潃,s.HCountry 鍥藉,s.HStopflag 绂佺敤鏍囧織
                                            ,s.HRemark 澶囨敞,s.HAreaID 鍦板尯ID,a.HName 鍦板尯鍚嶇О,s.HTaxRate 澧炲�肩◣鐜�,s.HCurID 榛樿璐у竵ID,r.HName 榛樿璐у竵,
@@ -129,6 +129,8 @@
                                            left join Gy_AreaSet a on s.HAreaID=a.HItemID
                                            left join Gy_Currency r on s.HCurID=r.HItemID 
                                            left  join Gy_SettleStyle e on s.HSSID=e.HItemID
+                                           left join Xt_ORGANIZATIONS o on s.HUSEORGID=o.HItemID
+										   left join Xt_ORGANIZATIONS d on s.HCREATEORGID=d.HItemID
                                            where s.HItemID='" + HInterID + "'");
                 ds = oCN.RunProcReturn(sql, "Gy_Supplier");
 
@@ -228,13 +230,13 @@
                     ",HShortName,HAddress,HLinkMan,HLinkPhone,HMobilePhone" +
                     ",HFax,HPostalCode,HEmail,HBank,HBankAccount" +
                     ",HTaxNum,HTaxRate,HCountry,HCorMan,HEnglishName" +
-                    ",HEnglishAddress,HCurID,HSSID,HAreaID,HMaterClass) " +
+                    ",HEnglishAddress,HCurID,HSSID,HAreaID,HMaterClass,HUSEORGID,HCREATEORGID) " +
                 " values('" + HNumber + "','" + HName + "','" + HHelpCode + "','" + HShortNumber + "','" + HParentID + "'" +
                 "," + HLevel + ",1,'" + HStopflag + "','" + HRemark + "'" +
                 ",'" + HShortName + "','" + HAddress + "','" + HLinkMan + "','" + HLinkPhone + "','" + HMobilePhone + "'" +
                 ",'" + HFax + "','" + HPostalCode + "','" + HEmail + "','" + HBank + "','" + HBankAccount + "'" +
                 ",'" + HTaxNum + "','" + HTaxRate + "','" + HCountry + "','" + HCorMan + "','" + HEnglishName + "'" +
-                ",'" + HEnglishAddress + "'," + HCurID + "," + HSSID + "," + HAreaID +" ,'" + HMaterClass + 
+                ",'" + HEnglishAddress + "'," + HCurID + "," + HSSID + "," + HAreaID +" ,'" + HMaterClass + " ','" + HUseOrgID + "' ,'" + HCreateOrgID +
               "') ");
                 //淇敼涓婄骇涓洪潪鏈骇浠g爜
                 oCN.RunProc("Update Gy_Supplier set HEndflag=0 where HItemID=" + HParentID, ref DBUtility.ClsPub.sExeReturnInfo);
@@ -422,6 +424,8 @@
                    ",HCurID=" + HCurID.ToString() +
                    ",HSSID=" + HSSID.ToString() +
                    ",HMaterClass='" + HMaterClass +
+                   "',HUSEORGID='" + HUseOrgID.ToString() +
+                   "',HCREATEORGID='" + HCreateOrgID.ToString() +
                    "',HAreaID=" + HAreaID.ToString() + "Where HItemID=" + HItemID, ref DBUtility.ClsPub.sExeReturnInfo);
 
 
diff --git a/WebAPI/Controllers/CGGL/Cg_POInStockBillController.cs b/WebAPI/Controllers/CGGL/Cg_POInStockBillController.cs
index 7a44c8f..cefcc62 100644
--- a/WebAPI/Controllers/CGGL/Cg_POInStockBillController.cs
+++ b/WebAPI/Controllers/CGGL/Cg_POInStockBillController.cs
@@ -199,13 +199,17 @@
 
                 oCN.BeginTran(); //寮�濮嬩簨鍔�
                 //鏌ヨ鏁版嵁
-                ds = oCN.RunProcReturn("select * from Cg_POInStockBillMain a inner join Cg_POInStockBillSub b on a.HInterID=b.HInterID  where a.HInterID= '" + HInterID + "'", "Kf_ICStockBillMain");
-               //鎵ц瀛樺偍杩囩▼杩涜鍙嶅啓
-                dss = oCN.RunProcReturn("exec h_p_Cg_POOrderBillMain_Delete " + HQty + ", '" + HSourceInterID + "', '" + HSourceEntryID + "','" + user + " '", "h_p_Cg_POInStockBillMain");
+                ds = oCN.RunProcReturn("select * from Cg_POInStockBillMain a inner join Cg_POInStockBillSub b on a.HInterID=b.HInterID  where a.HInterID= '" + HInterID + "'", "Cg_POInStockBillMain");
+
+                //鏀舵枡閫氱煡鍗曞垹闄ゅ洖濉噰璐鍗曞叧鑱旀暟閲�
+                oCN.RunProc("exec h_p_Cg_UpDatePOOrderRelation_Del " + HInterID);
+
+                ////鎵ц瀛樺偍杩囩▼杩涜鍙嶅啓 璇ヨ涔熸槸  鏀舵枡閫氱煡鍗� 鍙嶅啓  閲囪喘璁㈠崟 
+                // dss = oCN.RunProcReturn("exec h_p_Cg_POOrderBillMain_Delete " + HQty + ", '" + HSourceInterID + "', '" + HSourceEntryID + "','" + user + " '", "h_p_Cg_POInStockBillMain");
                 var sReturn = "";
-                if (DBUtility.ClsPub.isLong(dss.Tables[0].Rows[0]["HBack"]) != 0)
+                if (DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HBacker"]) != 0)
                 {
-                    sReturn = DBUtility.ClsPub.isStrNull(dss.Tables[0].Rows[0]["HBackRemark"]).ToString();
+                    sReturn = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]).ToString();
                     objJsonResult.code = "0";
                     objJsonResult.count = 0;
                     objJsonResult.Message = sReturn;
@@ -679,9 +683,9 @@
                     NewHEntryID = ClsPub.isLong(Cs.Tables[0].Rows[0]["HEntryID"].ToString());
                     NewHEntryID += 1;
                 }
-                //鍙嶅啓閲囪喘鍏ュ簱鍗�
+                //鍙嶅啓閲囪喘璁㈠崟鍗�   涓婇潰鏂规硶涓篃鏈夊弽鍐�  姝よ缁欐敞閿�
                 string sReturn = "";
-                ds = oCN.RunProcReturn("exec h_p_Cg_POOrderBillMain " + oSub.HQty + ", '" + oSub.HSourceInterID + "', '" + oSub.HSourceEntryID + "','" + user + " '", "h_p_Cg_POOrderBillMain");
+                //ds = oCN.RunProcReturn("exec h_p_Cg_POOrderBillMain " + oSub.HQty + ", '" + oSub.HSourceInterID + "', '" + oSub.HSourceEntryID + "','" + user + " '", "h_p_Cg_POOrderBillMain");
                 if (DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HBack"]) != 0)
                 {
                     sReturn = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]).ToString();
diff --git a/WebAPI/Controllers/CGGL/Cg_PayableBillController.cs b/WebAPI/Controllers/CGGL/Cg_PayableBillController.cs
index 8343c6f..f6dc975 100644
--- a/WebAPI/Controllers/CGGL/Cg_PayableBillController.cs
+++ b/WebAPI/Controllers/CGGL/Cg_PayableBillController.cs
@@ -337,6 +337,12 @@
 
                 oCN.BeginTran();
 
+                //搴斾粯鍗� 鍒犻櫎 鎾ら攢 閲囪喘鍏ュ簱鍗� 鍏宠仈鏁伴噺
+                oCN.RunProc("exec h_p_Cg_UpDateRelation_POStockInToPayable_Del " + HInterID);
+
+                //搴斾粯鍗� 鍒犻櫎 鎾ら攢 閲囪喘璁㈠崟 鍏宠仈鏁伴噺
+                oCN.RunProc("exec h_p_Cg_UpDateRelation_POOrderToPayable_Del " + HInterID);
+
                 oCN.RunProc("delete from Cg_PayableBillMain where HInterID = " + HInterID);
                 oCN.RunProc("delete from Cg_PayableSub where HInterID= " + HInterID);
 
diff --git a/WebAPI/Controllers/CGGL/Kf_POStockInBillController.cs b/WebAPI/Controllers/CGGL/Kf_POStockInBillController.cs
index d20ec39..ada9c0f 100644
--- a/WebAPI/Controllers/CGGL/Kf_POStockInBillController.cs
+++ b/WebAPI/Controllers/CGGL/Kf_POStockInBillController.cs
@@ -202,7 +202,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 + "','" +
-                    HBillSubType + "','" + HDate + "','" + HBillNo + "','" + HBillStatus + "','" + HAddress +
+                    1201 + "','" + HDate + "','" + HBillNo + "','" + HBillStatus + "','" + HAddress +
                     "'," + HSupID + "," + HCurID + "," + HWHID + "," + HEmpID + "," + HManagerID + "," + 
                     HSecManagerID + ","+ HKeeperID +"," + HDeptID + ",'" + HExplanation + "','" + HRemark
                     + "','" + HInnerBillNo + "'," + HSTOCKORGID + "," + HOWNERID + ",'" + HMaker + "',getdate(),"+ HProjectID + ",'"+ HInvoiceBillNo + "')";
@@ -218,6 +218,13 @@
                                  + ",HAddress='" + HAddress + "',HInnerBillNo='" + HInnerBillNo + "',HProjectID="+ HProjectID + ",HInvoiceBillNo='"+ HInvoiceBillNo + "' where HInterID=" + HInterID;
 
                     oCN.RunProc(sql);
+
+                    //閲囪喘鍏ュ簱鍗�  缂栬緫 鎾ら攢鍥炲~  閲囪喘璁㈠崟  鍏宠仈鏁伴噺
+                    oCN.RunProc("exec h_p_Cg_UpDateRelation_POOrderToPOStockIn_Del " + HInterID);
+
+                    //閲囪喘鍏ュ簱鍗�  缂栬緫 鎾ら攢鍥炲~  鏀舵枡閫氱煡鍗�  鍏宠仈鏁伴噺
+                    oCN.RunProc("exec h_p_Cg_UpDateRelation_POInStockToPOStockIn_Del " + HInterID);
+
                     //鍒犻櫎瀛愯〃
                     oCN.RunProc("delete from Kf_ICStockBillSub where HInterID='" + HInterID + "'");
                 }
@@ -229,7 +236,7 @@
 
                 //閲囪喘鍏ュ簱鍗曟柊澧炲洖濉敹鏂欓�氱煡鍗曞叧鑱旀暟閲�
                 oCN.RunProc("exec h_p_Cg_UpDateRelation_POInStockToPOStockIn_Add " + HInterID);
-                
+
 
                 if (objJsonResult.code == "0")
                 {
@@ -421,6 +428,13 @@
 
                 string sReturn = "";
                 oCN.BeginTran();
+
+                //閲囪喘鍏ュ簱鍗�  鍒犻櫎 鎾ら攢鍥炲~  閲囪喘璁㈠崟  鍏宠仈鏁伴噺
+                oCN.RunProc("exec h_p_Cg_UpDateRelation_POOrderToPOStockIn_Del " + HInterID);
+
+                //閲囪喘鍏ュ簱鍗�  鍒犻櫎 鎾ら攢鍥炲~  鏀舵枡閫氱煡鍗�  鍏宠仈鏁伴噺
+                oCN.RunProc("exec h_p_Cg_UpDateRelation_POInStockToPOStockIn_Del " + HInterID);
+
                 oCN.RunProc("Delete From Kf_ICStockBillMain where HInterID = " + HInterID);
                 oCN.RunProc("Delete From Kf_ICStockBillSub where HInterID = " + HInterID);
                 oCN.Commit();
@@ -1175,7 +1189,7 @@
         #endregion
 
 
-        #region 閲囪喘鍏ュ簱鍗� 鏍规嵁涓诲唴鐮佷笌瀛愬唴鐮佽幏鍙栭噰璐叆搴撳崟鏁版嵁
+        #region 閲囪喘鍏ュ簱鍗�  鏍规嵁涓诲唴鐮佷笌瀛愬唴鐮佽幏鍙栭噰璐叆搴撳崟鏁版嵁
         [Route("Kf_POStockInBill/loadKf_POStockInBill_Push")]
         [HttpGet]
         public object loadKf_POStockInBill_Push(long HInterID, long HSubID)
diff --git a/WebAPI/Controllers/CJGL/Cj_SingleStationController.cs b/WebAPI/Controllers/CJGL/Cj_SingleStationController.cs
index 4800450..57b9a60 100644
--- a/WebAPI/Controllers/CJGL/Cj_SingleStationController.cs
+++ b/WebAPI/Controllers/CJGL/Cj_SingleStationController.cs
@@ -1851,6 +1851,45 @@
         }
         #endregion
 
+        #region 宸ュ簭鍗曞搧杩囩珯 杩芥函鎶ヨ〃 閰嶄欢娓呭崟鏌ヨ
+        [Route("Sc_AssemblyBill/AssemblyBillAndStationInBillList_SN")]
+        [HttpGet]
+        public object AssemblyBillAndStationInBillList_SN(string sWhere)
+        {
+            try
+            {
+                List<object> columnNameList = new List<object>();
+
+                string sql1 = "exec h_p_Sc_AssemblyBillAndStationInBillList_SN ";
+                string sql = sql1 + sWhere;
+                ds = oCN.RunProcReturn(sql, "h_p_Sc_AssemblyBillAndStationInBillList_SN");
+
+                //娣诲姞鍒楀悕
+                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 = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = ds.Tables[0];
+                objJsonResult.list = columnNameList;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
         #region 宸ュ簭鍗曞搧杩囩珯 閫嗗悜杩芥函鎶ヨ〃 娴佽浆鍗℃煡璇�
         [Route("Cj_SingleStation/Sc_ProcessExchangeBillMainList")]
         [HttpGet]
diff --git a/WebAPI/Controllers/CJGL/Cj_StationEntrustInBillController.cs b/WebAPI/Controllers/CJGL/Cj_StationEntrustInBillController.cs
index 15577f4..a989769 100644
--- a/WebAPI/Controllers/CJGL/Cj_StationEntrustInBillController.cs
+++ b/WebAPI/Controllers/CJGL/Cj_StationEntrustInBillController.cs
@@ -1023,14 +1023,21 @@
                 }
 
                 ds = oCN.RunProcReturn("select ManagerFlag from gy_czygl where czymc='" + user.Trim() + "'", "gy_czygl");
-                if (!(bool)ds.Tables[0].Rows[0]["ManagerFlag"])  //鏄惁绠$悊鍛�
+                string sErr = "";
+                oSystemParameter.ShowBill(ref sErr);
+                if (oSystemParameter.omodel.WMS_CampanyName == "涔斾竴") 
                 {
-                    //涓嶆槸绠$悊鍛�
-                    sWhere += " and 鍒跺崟浜� = '" + user + "'";
+                }
+                else
+                {
+                    if (!(bool)ds.Tables[0].Rows[0]["ManagerFlag"])  //鏄惁绠$悊鍛�
+                    {
+                        //涓嶆槸绠$悊鍛�
+                        sWhere += " and 鍒跺崟浜� = '" + user + "'";
+                    }
                 }
 
-
-                string sql = "select * from  h_v_QC_FirstPieceCheckBillMainList where 1=1  " + sWhere + " order by 鏃ユ湡 ";
+                string sql = "select * from  h_v_QC_FirstPieceCheckBillMainList where 1=1  " + sWhere ;
 
                 ds = oCN.RunProcReturn(sql, "h_v_QC_FirstPieceCheckBillMainList");
 
diff --git a/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs b/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs
index 2dbbae2..8442208 100644
--- a/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs
+++ b/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs
@@ -3210,5 +3210,376 @@
             }
         }
         #endregion
+
+        #region  褰撳墠宸ュ崟(鎵爜姹囨姤) 鏉$爜鏌ヨ
+        [Route("Cj_StationOutBill_CurrentWork/SNHBardCodeList")]
+        [HttpGet]
+        public object SNHBardCodeList(string HBarCode, string user, int HOrgID)
+        {
+            try
+            {
+                ds = oCN.RunProcReturn(@"select HSourceInterID,HSourceBillNo from Gy_BarCodeBill WITH(NOLOCK) where HBarCode='" + HBarCode + "'", "Gy_BarCodeBill");
+              
+                if (ds.Tables[0].Rows.Count > 0)
+                {
+                    string HSourceInterID = ds.Tables[0].Rows[0]["HSourceInterID"].ToString();
+                    string HSourceBillNo = ds.Tables[0].Rows[0]["HSourceBillNo"].ToString();
+
+                    ds = oCN.RunProcReturn("select * from gy_czygl WITH(NOLOCK) where czymc='" + user + "'", "gy_czygl");
+                    string HProcID = ds.Tables[0].Rows[0]["HProcID"].ToString();
+
+                    ds = oCN.RunProcReturn("select  * from h_v_Sc_ProcessExchangeBillList where hmainid=" + HSourceInterID + " and 鍗曟嵁鍙�='" + HSourceBillNo + "' and HProcID=" + HProcID, "h_v_Sc_ProcessExchangeBillList");
+
+                    if (ds.Tables[0].Rows.Count == 0) {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鏉$爜:" + HBarCode + ",娴佽浆鍗�:" + HSourceBillNo + ",涓庡綋鍓嶆祦杞崱,鎵�瀵瑰簲鐨勫伐搴忎笉瀛樺湪!";
+                        objJsonResult.data = ds.Tables[0];
+                        return objJsonResult;
+                    }
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "";
+                    objJsonResult.data = ds.Tables[0];
+                    return objJsonResult;
+                }
+                else {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏉$爜鏌ユ棤鏁版嵁!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+            }
+            catch (Exception e)
+            {
+
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "娌℃湁杩斿洖浠讳綍璁板綍锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region  褰撳墠宸ュ崟(鎵爜姹囨姤) 鍑虹珯鍗曟煡璇�
+        [Route("Cj_StationOutBill_CurrentWork/get_Out_Display")]
+        [HttpGet]
+        public object get_Out_Display(string sWhere, string user,string HBillSubType)
+        {
+            try
+            {
+                //鍒ゆ柇鏄惁鏈夋煡璇㈡潈闄�
+                if (!DBUtility.ClsPub.Security_Log("Cj_StationOutBill_Query", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍑虹珯鍗曟棤鏌ヨ鏉冮檺!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                string sql1 = "select * from h_v_MES_StationOutBillList_SN where 1 = 1 ";
+                string sql = sql1 + sWhere + "  order by 鍒跺崟鏃ユ湡 desc";
+                ds = oCN.RunProcReturn(sql, "h_v_MES_StationOutBillList_SN");
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = ds.Tables[0];
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 褰撳墠宸ュ崟(鎵爜姹囨姤)  瀛愯〃淇濆瓨
+        [Route("Cj_StationOutBill_CurrentWork/AddBillSub")]
+        [HttpPost]
+        public object AddBillSub([FromBody] JObject oMain)
+        {
+            var _value = oMain["oMain"].ToString();
+            string msg1 = _value.ToString();
+            string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+            try
+            {
+                //鍙嶅簭鍒楀寲
+                string msg2 = "[" + sArray[0].ToString() + "]";
+                string user = sArray[1].ToString();//鐢ㄦ埛鍚�
+                string OperationType = sArray[2].ToString();//绫诲瀷
+
+                if (OperationType == "5")
+                {
+                    //鍒ゆ柇鏄惁鏈夌紪杈戞潈闄�
+                    if (!DBUtility.ClsPub.Security_Log("Cj_StationOutBill_Sub_Edit", 1, false, user))
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "瀹屽伐鍗曟棤缂栬緫鏉冮檺!";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+                else
+                {
+                    //鍒ゆ柇鏄惁鏈夌紪杈戞潈闄�
+                    if (!DBUtility.ClsPub.Security_Log("Cj_StationOutBill_Edit", 1, false, user))
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍑虹珯鍗曟棤缂栬緫鏉冮檺!";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+
+                List<StationBill> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<StationBill>>(msg2);
+                long HInterID = list[0].HInterID;//閫掑叆type寰楀埌鐨勫崟鎹甀D
+                string HBillNo = list[0].HBillNo;//閫掑叆type寰楀埌鐨勫崟鎹彿
+                double HQty = list[0].HQty;//鍚堟牸鏁伴噺
+                long HProcExchInterID = list[0].lngBillKey;
+                long HProcExchEntryID = list[0].lngBillSubKey;
+                string HProcExchBillNo = list[0].HProcExchBillNo;//娴佽浆鍗�
+                string HBarCode = list[0].HBarCode;//鏉$爜
+                string eventType = list[0].eventType;
+
+                //鑻AINDI閲嶅鍒欓噸鏂拌幏鍙�
+                oCN.BeginTran();
+                if ("Add".Equals(eventType))
+                {
+                    ds = oCN.RunProcReturn("select  * from Sc_StationOutBillSub_SN WITH(NOLOCK) where HInterID='" + HInterID + "' order by HEntryID desc", "Sc_StationOutBillSub_SN");
+
+                    oCN.RunProc($@"insert into Sc_StationOutBillSub_SN(HInterID,HBillNo_bak,HEntryID,HBarCode,HBarCodeQty,HMakeTime,HRemark,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney)
+values({HInterID}, '{HBillNo}', {(ds.Tables[0].Rows.Count == 0 ? 1 : int.Parse(ds.Tables[0].Rows[0]["HEntryID"].ToString()) + 1)}, '{HBarCode}', {HQty}, GETDATE(), '', " + HProcExchInterID + "," + HProcExchEntryID + ", '" + HProcExchBillNo + "', '', 0, 0)");
+
+                }
+                else
+                {
+                    oCN.RollBack();
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鎿嶄綔绫诲瀷鏃犳晥锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                oCN.Commit();
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鏂板鍗曟嵁鎴愬姛锛�";
+                objJsonResult.data = ds.Tables[0];
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                oCN.RollBack();
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 褰撳墠宸ュ崟(鎵爜姹囨姤) 鍒犻櫎鍑虹珯鏁版嵁
+        [Route("Cj_StationOutBill_CurrentWork/DelOutBill_SN")]
+        [HttpGet]
+        public object DelOutBill_SN(int HInterID, string HDeleteMan,string HBillSubType)
+        {
+            try
+            {
+                //鍒ゆ柇鏄惁鏈夋煡璇㈡潈闄�
+                if (!DBUtility.ClsPub.Security_Log("Cj_StationOutBill_Drop", 1, false, HDeleteMan))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犲垹闄ゆ潈闄�!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                ds = oCN.RunProcReturn("select * from h_v_MES_StationOutBillList_SN WITH(NOLOCK) where hmainid = " + HInterID, "h_v_MES_StationOutBillList_SN");
+              
+                if (ds.Tables[0].Rows.Count == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏌ユ棤鏁版嵁锛�";
+                    objJsonResult.data = null;
+                }
+
+                oCN.BeginTran();
+
+                string sql = "";
+                if (ds.Tables[0].Rows.Count == 1)
+                {
+                    sql = "delete from Sc_StationOutBillMain where HInterID = " + HInterID;
+                    oCN.RunProc(sql);
+                }
+                sql = "delete from Sc_StationOutBillSub_SN where HInterID = " + HInterID ;
+                oCN.RunProc(sql);
+
+                oCN.Commit();
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                oCN.RollBack();
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region  褰撳墠宸ュ崟(鎵爜姹囨姤) 浠〃鐩樻煡璇�
+        [Route("Cj_StationOutBill_CurrentWork/get_PanelDisplay")]
+        [HttpGet]
+        public object get_PanelDisplay(string HBarCode, string user, int HOrgID)
+        {
+            try
+            {
+                ds = oCN.RunProcReturn(@"select HSourceInterID,HSourceBillNo from Gy_BarCodeBill WITH(NOLOCK) where HBarCode='" + HBarCode + "'", "Gy_BarCodeBill");
+
+                objJsonResult.code = "1";
+                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  褰撳墠宸ュ崟(璧嬬爜姹囨姤) 鏍规嵁鐢熶骇璁㈠崟鏌ヨ鏁版嵁
+        [Route("Cj_StationOutBill_CodingReport/get_ICMOProcessExchangeBillList")]
+        [HttpGet]
+        public object get_ICMOProcessExchangeBillList(string sWhere, string user, int HOrgID)
+        {
+            try
+            {
+                ds = oCN.RunProcReturn("select * from h_v_Sc_ICMOProcessExchangeBillList WITH(NOLOCK) where 1=1 " + sWhere, "h_v_Sc_ICMOProcessExchangeBillList");
+
+                objJsonResult.code = "1";
+                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  褰撳墠宸ュ崟(璧嬬爜姹囨姤) 鏌ヨ褰撳墠鐢ㄦ埛浠婂ぉ鐢熸垚鏉$爜鐨勬暟鎹�
+        [Route("Cj_StationOutBill_CodingReport/get_BarCodeBillList")]
+        [HttpGet]
+        public object get_BarCodeBillList(string sWhere, string user, int HOrgID)
+        {
+            try
+            {
+                ds = oCN.RunProcReturn("select * from h_v_IF_BarCodeBillList WITH(NOLOCK) where 1=1 " + sWhere, "h_v_IF_BarCodeBillList");
+
+                objJsonResult.code = "1";
+                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 褰撳墠宸ュ崟(鎵爜姹囨姤) 鍒犻櫎鍑虹珯鏁版嵁
+        [Route("Cj_StationOutBill_CodingReport/DelBarCodeBill_SN")]
+        [HttpGet]
+        public object DelBarCodeBill_SN(int HInterID, string HDeleteMan, string HBillSubType)
+        {
+            try
+            {
+                //鍒ゆ柇鏄惁鏈夋煡璇㈡潈闄�
+                if (!DBUtility.ClsPub.Security_Log("Gy_BarCodeBillList_Edit", 1, false, HDeleteMan))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犲垹闄ゆ潈闄�!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                ds = oCN.RunProcReturn("select * from h_v_IF_BarCodeBillList WITH(NOLOCK) where hmainid = " + HInterID, "h_v_IF_BarCodeBillList");
+
+                if (ds.Tables[0].Rows.Count == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏌ユ棤鏁版嵁锛�";
+                    objJsonResult.data = null;
+                }
+
+                oCN.BeginTran();
+
+                string sql = "";
+                sql = "delete from Gy_BarCodeBill where HItemID = " + HInterID;
+                oCN.RunProc(sql);
+
+                oCN.Commit();
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                oCN.RollBack();
+                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/PlateBindingController.cs b/WebAPI/Controllers/PlateBindingController.cs
new file mode 100644
index 0000000..1821d54
--- /dev/null
+++ b/WebAPI/Controllers/PlateBindingController.cs
@@ -0,0 +1,123 @@
+锘縰sing Newtonsoft.Json;
+using Newtonsoft.Json.Linq;
+using Pub_Class;
+using System;
+using System.Collections.Generic;
+using System.Data;
+using System.IO;
+using System.Text;
+using System.Web.Http;
+using WebAPI.Models;
+
+namespace WebAPI.Controllers
+{
+    public class PlateBindingController : ApiController
+    {
+        private json objJsonResult = new json();
+        public DataSet ds = new DataSet();
+        SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+
+        /// <summary>
+        /// 淇濆瓨骞虫澘缁戝畾
+        /// </summary>
+        /// <param name="msg"></param>
+        /// <returns></returns>
+        [Route("Save/Xt_PlateBinding")]
+        [HttpPost]
+        public object Save([FromBody] JObject msg)
+        {
+            try
+            {
+                DataSet ds;
+                var _value = msg["msg"].ToString();
+                string msg3 = _value.ToString();
+                string[] sArray = msg3.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+                string msg1 = sArray[0].ToString();
+                string user = sArray[1].ToString();
+
+                string filePath = "Configuration";
+                bool isAppend = true;
+
+                filePath = $@"{filePath}\PlateBinding.txt";
+
+                filePath = "D:\\" + filePath;
+
+                if (!System.IO.Directory.Exists(Path.GetDirectoryName(filePath)))
+                {
+                    System.IO.Directory.CreateDirectory(Path.GetDirectoryName(filePath));
+                }
+                //鍒ゆ柇鏄惁宸茬粡瀛樺湪骞虫澘缁戝畾鏂囦欢锛岃嫢宸插瓨鍦ㄥ垯鍒犻櫎锛岄噸鏂板垱寤�
+                bool fileExists = System.IO.File.Exists(filePath);
+
+                //瀛樺湪 鍒欏垹闄よ鏂囦欢
+                if (fileExists)
+                {
+                    File.Delete(filePath);                    
+                }
+                //鍒涘缓鏂囦欢
+
+                using (StreamWriter writer = new StreamWriter(filePath, isAppend))
+                {
+                    //瀛樺湪鐨勬椂鍊欐墠鍐欎竴琛�
+                    if (fileExists && isAppend)
+                    {
+                        writer.WriteLine();
+                    }
+
+                    var content = msg1 is string ? msg1 : JsonConvert.SerializeObject(msg1);
+                    writer.WriteLine($"{DateTime.Now}");
+                    writer.WriteLine("");
+                    msg1 = msg1.Replace("{","").Replace("}","").Replace("\"","");
+                    string[] arr = msg1.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries);
+                    for (int i = 0; i < arr.Length; i++)
+                    {
+                        writer.WriteLine(arr[i]);
+                    }
+                }
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "骞虫澘缁戝畾淇℃伅鍐欏叆鎴愬姛锛�";
+                objJsonResult.data = "";
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鍐欏叆骞虫澘缁戝畾淇℃伅杩囩▼涓彂鐢熷紓甯革紒";
+                objJsonResult.data = "";
+                return objJsonResult;
+            }
+        }
+
+        #region 鑾峰彇骞虫澘缁戝畾鏂囦欢鏁版嵁
+
+        [Route("Get/Xt_PlateBinding")]
+        [HttpGet]
+        public object Get(string user)
+        {
+            try
+            {
+                //鏍规嵁鎸囧畾璺緞锛岃鍙栨枃浠跺唴瀹癸紝杩斿洖鏁版嵁涓烘暟缁勬牸寮�
+                string[] ConfigFileInfo = File.ReadAllLines(@"D:\Configuration\PlateBinding.txt");
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = ConfigFileInfo;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+    }
+}
diff --git a/WebAPI/Controllers/SCGL/Sc_MESTransFerWorkBillController.cs b/WebAPI/Controllers/SCGL/Sc_MESTransFerWorkBillController.cs
index b4524fb..9542814 100644
--- a/WebAPI/Controllers/SCGL/Sc_MESTransFerWorkBillController.cs
+++ b/WebAPI/Controllers/SCGL/Sc_MESTransFerWorkBillController.cs
@@ -1808,6 +1808,64 @@
         }
         #endregion
 
+        #region 寮傚父鍙嶉鎺ユ敹鍗曞垪琛�(寮傚父鍙嶉鍒峰崱绛惧埌)
+
+        [Route("OA_ErrMsgBackSignBill_BrushCard/ErrMsgBackReceive")]
+        [HttpGet]
+        public object ErrMsgBackReceive(string sWhere, string user)
+        {
+            try
+            {
+                List<object> columnNameList = new List<object>();
+
+                //鏌ョ湅鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("OA_ErrMsgBackReceiveBillMain_Query", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                if (sWhere == null || sWhere.Equals(""))
+                {
+                    string sql = "select * from h_v_OA_ErrMsgBackReceiveBillList_BrushCard order by 鍗曟嵁鍙� desc";
+                    ds = oCN.RunProcReturn(sql, "h_v_OA_ErrMsgBackReceiveBillList_BrushCard");
+                }
+                else
+                {
+                    string sql1 = "select * from h_v_OA_ErrMsgBackReceiveBillList_BrushCard where 1 = 1 ";
+                    string sql = sql1 + sWhere + " order by 鍗曟嵁鍙� desc";
+                    ds = oCN.RunProcReturn(sql, "h_v_OA_ErrMsgBackReceiveBillList_BrushCard");
+                }
+
+                //娣诲姞鍒楀悕
+                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 = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = ds.Tables[0];
+                objJsonResult.list = columnNameList;
+                return objJsonResult;
+            }
+            catch (Exception ex)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鏌ヨ鏁版嵁寮傚父锛岃涓庣鐞嗗憳鑱旂郴锛�" + ex.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
         #endregion
 
         #region  寮傚父鍙嶉绛惧埌鍗�
diff --git a/WebAPI/Controllers/Sc_MouldRepairInBillListController.cs b/WebAPI/Controllers/Sc_MouldRepairInBillListController.cs
index ef3378b..a73f3e8 100644
--- a/WebAPI/Controllers/Sc_MouldRepairInBillListController.cs
+++ b/WebAPI/Controllers/Sc_MouldRepairInBillListController.cs
@@ -1013,8 +1013,8 @@
 
                     oItemSub.HCloseType = false;   //鍏抽棴绫诲瀷
 
-                    oItemSub.HSourceInterID = 0;     // 婧愬崟涓诲唴鐮�
-                    oItemSub.HSourceEntryID = 0;   //婧愬崟瀛愬唴鐮�
+                    //oItemSub.HSourceInterID = 0;     // 婧愬崟涓诲唴鐮�
+                    //oItemSub.HSourceEntryID = 0;   //婧愬崟瀛愬唴鐮�
 
 
                     oBill.DetailColl.Add(oItemSub);
@@ -1539,8 +1539,7 @@
         }
         #endregion
 
-
-        #region 璋冩嫧鍗曞垪琛�
+        #region 鐩存帴璋冩嫧鍗曞垪琛�
         /// <summary>
         /// 璋冩嫧鍗曞垪琛�
         /// </summary>
@@ -1589,7 +1588,7 @@
         }
         #endregion
 
-        #region 璋冩嫧鍗�  鍒犻櫎
+        #region 鐩存帴璋冩嫧鍗�  鍒犻櫎
         [Route("Kf_MoveStockBill/DelteteGetMoveStockBill")]
         [HttpGet]
         public object DelteteGetMoveStockBill(string HInterID, string user)
@@ -1632,6 +1631,10 @@
                 //==================================================================================  
 
                 oCN.BeginTran();
+
+                //鐩存帴璋冩嫧鍗� 鍒犻櫎  鎾ら攢 鍥炲~  璋冩嫧鐢宠鍗�  鍏宠仈鏁伴噺
+                oCN.RunProc("exec h_p_Kf_UpDateRelation_MoveStockRequestToPOStockIn_Del " + HInterID);
+
                 oCN.RunProc("Delete From Kf_ICStockBillMain where HInterID = " + HInterID);
                 oCN.RunProc("Delete From Kf_ICStockBillSub where HInterID = " + HInterID);
 
@@ -1670,6 +1673,43 @@
             catch (Exception e)
             {
                 oCN.RollBack();
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 鐩存帴璋冩嫧鍗�  鏍规嵁涓诲唴鐮佷笌瀛愬唴鐮佽幏鍙栬皟鎷ㄧ敵璇峰崟鏁版嵁
+        [Route("Kf_MoveStockBill/loadKf_MoveStockBillMain_Push")]
+        [HttpGet]
+        public object loadKf_MoveStockBillMain_Push(long HInterID, long HSubID)
+        {
+            try
+            {
+
+                ds = oCN.RunProcReturn("select * from h_v_IF_MoveStockRequestBillList_Litee where hmainid =" + HInterID + " and hsubid = " + HSubID, "h_v_IF_MoveStockRequestBillList_Litee");
+                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 = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "Sucess锛�";
+                    objJsonResult.data = ds.Tables[0];
+                    return objJsonResult;
+                }
+            }
+            catch (Exception e)
+            {
                 objJsonResult.code = "0";
                 objJsonResult.count = 0;
                 objJsonResult.Message = "Exception锛�" + e.ToString();
@@ -1798,6 +1838,10 @@
                 //閿�鍞嚭搴撳垹闄ゅ洖濉攢鍞鍗曞叧鑱旀暟閲�
                 //oCN.RunProc("exec h_p_Xs_UpDateRelation_SeOrderToSellOut_Delete " + HInterID);
 
+                //閿�鍞嚭搴撳垹闄ゅ洖濉敹璐ч�氱煡鍗曞叧鑱旀暟閲�
+                //oCN.RunProc("exec h_p_Xs_UpDateRelation_SeOutStockToPOStockIn_Del " + HInterID);
+
+
                 //oCN.RunProc("Delete From Kf_ICStockBillMain where HInterID = " + HInterID);
                 //oCN.RunProc("Delete From Kf_ICStockBillSub where HInterID = " + HInterID);
 
diff --git a/WebAPI/Controllers/WebAPIController.cs b/WebAPI/Controllers/WebAPIController.cs
index fdb9109..31c8db2 100644
--- a/WebAPI/Controllers/WebAPIController.cs
+++ b/WebAPI/Controllers/WebAPIController.cs
@@ -11636,14 +11636,26 @@
         /// <returns></returns>
         [Route("Web/GetHSourceBillType")]
         [HttpGet]
-        public object GetHSourceBillType(string HName)
+        public object GetHSourceBillType(string HName,int Num)
         {
             try
             {
                 ClsCN oCn = new ClsCN();
                 DataSet oDs = new DataSet();
-                //==========
-                oDs = oCn.RunProcReturn("select * from  Xt_BillSourceSet where HName='"+HName+"'", "Xt_BillSourceSet");
+                //鏈夌殑鍗曞瓙婧愬崟鍒嗕负绾㈣摑鍗�  0浠h〃钃濆崟  1浠h〃绾㈠崟
+                if (Num==0)
+                {           //婧愬崟涓鸿摑鍗�
+                    oDs = oCn.RunProcReturn("select * from  Xt_BillSourceSet where HName='" + HName + "' HRedBlueFlag ='"+ Num+"' ", "Xt_BillSourceSet");
+                }
+                else if (Num==1)
+                {          //婧愬崟涓虹孩鍗�
+                    oDs = oCn.RunProcReturn("select * from  Xt_BillSourceSet where HName='" + HName + "' HRedBlueFlag ='" + Num + "' ", "Xt_BillSourceSet");
+                }
+                else if(Num==2)
+                {       //涓嶅垎绾㈣摑鍗�
+                    oDs = oCn.RunProcReturn("select * from  Xt_BillSourceSet where HName='" + HName + "'", "Xt_BillSourceSet");
+                }
+                
                 objjson.code = "1";
                 objjson.count = 1;
                 objjson.Message = "鑾峰彇鎴愬姛锛�";
diff --git "a/WebAPI/Controllers/\344\273\223\345\255\230\347\256\241\347\220\206/\351\242\206\346\226\231\345\217\221\350\264\247/Kf_StepFoldOutBillController.cs" "b/WebAPI/Controllers/\344\273\223\345\255\230\347\256\241\347\220\206/\351\242\206\346\226\231\345\217\221\350\264\247/Kf_StepFoldOutBillController.cs"
index e71f4bc..c9bffe1 100644
--- "a/WebAPI/Controllers/\344\273\223\345\255\230\347\256\241\347\220\206/\351\242\206\346\226\231\345\217\221\350\264\247/Kf_StepFoldOutBillController.cs"
+++ "b/WebAPI/Controllers/\344\273\223\345\255\230\347\256\241\347\220\206/\351\242\206\346\226\231\345\217\221\350\264\247/Kf_StepFoldOutBillController.cs"
@@ -251,7 +251,7 @@
 	                    ,HDeleteMan,HCloseMan
 	                    ,HRemark,HExplanation,HInnerBillNo,HCurID)
                         values(" + HInterID + ",'" + HBillNo + "','" + HDate + "','" + 1250 + "','" +
-                    HBillSubType + "'," + HBillStatus + "," + DateTime.Now.Year + "," + DateTime.Now.Month + "," + HSupID +
+                    1250 + "'," + HBillStatus + "," + DateTime.Now.Year + "," + DateTime.Now.Month + "," + HSupID +
                     "," + HWHID + "," + HSCWHID + "," + HEmpID + "," + HManagerID + "," + HSecManagerID +
                     "," + HKeeperID + "," + HDeptID + ",'" + HMaker + "','" + HMakeDate + "','" + HChecker + "','" + HUpDater + "','" + HDeleteMan + "','" + HCloseMan + "','"
                     + HRemark + "','" + HExplanation + "','" + HInnerBillNo + "'," + HCurID + "" + ")");
@@ -259,7 +259,9 @@
                 else if (OperationType == 3 || ds.Tables[0].Rows.Count != 0)
                 { //淇敼
                     String sql="update Kf_ICStockBillMain   set " +
-                                "HRemark='" + HRemark + "', HUpDater='" + HMaker + "', HUpDateDate=getdate()" + " where HInterID=" + "HInterID";
+                                    "HRemark='" + HRemark + "', HUpDater='" + HMaker + "', HUpDateDate=getdate()" +
+                                 ",HSupID=" + HSupID + ",HWHID=" + HWHID + ",HSCWHID=" + HSCWHID + ", HEmpID=" + HEmpID + ",HManagerID=" + HManagerID + ",HSecManagerID = " + HSecManagerID
+                                 + ",HKeeperID=" + HKeeperID + ",HDeptID=" + HDeptID + "  where HInterID=" + HInterID;
 
                     oCn.RunProc(sql);
                     //鍒犻櫎瀛愯〃
@@ -719,25 +721,89 @@
                 //Type 1 浣滃簾  2  鍙嶄綔搴�
                 if (Type == 1)
                 {
-                    if (!BillOld.Cancelltion(int.Parse(HInterID), ref ClsPub.sExeReturnInfo))
+                    DataSet ds;
+                    string sql = "select * from Kf_ICStockBillMain where HinterID = " + HInterID;
+                    ds = oCn.RunProcReturn(sql, "Kf_ICStockBillMain");
+                    if (ds == null || ds.Tables[0].Rows.Count == 0)
                     {
                         objJsonResult.code = "0";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "浣滃簾澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦紒";
                         objJsonResult.data = null;
                         return objJsonResult;
                     }
+                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
+                    {
+                        if (ds.Tables[0].Rows[0]["HChecker"] != null && ds.Tables[0].Rows[0]["HChecker"].ToString() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸插鏍�!涓嶈兘杩涜浣滃簾!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        if (ds.Tables[0].Rows[0]["HDeleteMan"] != null && ds.Tables[0].Rows[0]["HDeleteMan"].ToString() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸蹭綔搴�!涓嶉渶瑕佸啀浣滃簾!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        //浣滃簾鍗曟嵁
+                        if (!BillOld.Cancelltion(int.Parse(HInterID), ref ClsPub.sExeReturnInfo))
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 1;
+                            objJsonResult.Message = "浣滃簾澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                    
                 }
                 else
                 {
-                    if (!BillOld.AbandonCancelltion(int.Parse(HInterID), ref ClsPub.sExeReturnInfo))
+                    DataSet ds;
+                    string sql = "select * from Kf_ICStockBillMain where HinterID = " + HInterID;
+                    ds = oCn.RunProcReturn(sql, "Kf_ICStockBillMain");
+                    if (ds == null || ds.Tables[0].Rows.Count == 0)
                     {
                         objJsonResult.code = "0";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "鍙嶄綔搴熷け璐�!鍘熷洜:" + ClsPub.sExeReturnInfo;
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦紒";
                         objJsonResult.data = null;
                         return objJsonResult;
                     }
+                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
+                    {
+                        if (ds.Tables[0].Rows[0]["HChecker"] != null && ds.Tables[0].Rows[0]["HChecker"].ToString() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸插鏍�!涓嶈兘杩涜浣滃簾!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        if (ds.Tables[0].Rows[0]["HDeleteMan"] != null && ds.Tables[0].Rows[0]["HDeleteMan"].ToString() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸蹭綔搴�!涓嶉渶瑕佸啀浣滃簾!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        //浣滃簾鍗曟嵁
+                        if (!BillOld.AbandonCancelltion(int.Parse(HInterID), ref ClsPub.sExeReturnInfo))
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 1;
+                            objJsonResult.Message = "鍙嶄綔搴熷け璐�!鍘熷洜:" + ClsPub.sExeReturnInfo;
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }   
+                    }
+                    
                 }
 
                 oCn.Commit();//鎻愪氦浜嬪姟
diff --git "a/WebAPI/Controllers/\344\273\223\345\255\230\347\256\241\347\220\206/\351\252\214\346\224\266\345\205\245\345\272\223/Kf_ProductInBillController.cs" "b/WebAPI/Controllers/\344\273\223\345\255\230\347\256\241\347\220\206/\351\252\214\346\224\266\345\205\245\345\272\223/Kf_ProductInBillController.cs"
index e9d1972..a866df1 100644
--- "a/WebAPI/Controllers/\344\273\223\345\255\230\347\256\241\347\220\206/\351\252\214\346\224\266\345\205\245\345\272\223/Kf_ProductInBillController.cs"
+++ "b/WebAPI/Controllers/\344\273\223\345\255\230\347\256\241\347\220\206/\351\252\214\346\224\266\345\205\245\345\272\223/Kf_ProductInBillController.cs"
@@ -12,18 +12,541 @@
 
 namespace WebAPI.Controllers
 {
-    //鐢熶骇鍏ュ簱鍗旵ontroller
     public class Kf_ProductInBillController : ApiController
     {
-        //鑾峰彇绯荤粺鍙傛暟
-        Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter();
-
         public DBUtility.ClsPub.Enum_BillStatus BillStatus;
-        public DAL.ClsKf_ProductInBill BillOld = new DAL.ClsKf_ProductInBill();
+        public const string ModName = "1202";                   //鍗曟嵁绫诲瀷
+        public const string ModCaption = "鐢熶骇鍏ュ簱鍗�";          //鍗曟嵁鍚嶇О
+        public const string ModRightName = "Kf_ProductInBill";
+        public const string ModRightNameList = ModRightName + "List";       //鍒楄〃
+        public const string ModRightNameEdit = ModRightName + "_Edit";      //缂栬緫
+        public const string ModRightNameCheck = ModRightName + "_Check";    //瀹℃牳
+        public const string ModRightNameClose = ModRightName + "_Close";    //鍏抽棴
+        public const string ModRightNameDelete = ModRightName + "_Delete";  //浣滃簾
+        public const string ModRightNameDrop = ModRightName + "_Drop";      //鍒犻櫎
+        public const string ModRightNameMoney = ModRightName + "_Money";    //閲戦
+        public const string ModRightNameQty = ModRightName + "_Qty";        //鏁伴噺
+        public DataSet ds = new DataSet();
         private json objJsonResult = new json();
-        SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
-        DataSet ds;
+        SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
+        public DAL.ClsKf_ProductInBill oBill = new DAL.ClsKf_ProductInBill();
+        public DAL.ClsKf_ProductInBill BillOld = new DAL.ClsKf_ProductInBill();
 
+
+        #region 鐢熶骇鍏ュ簱鍗曞垪琛�
+        /// <summary>
+        /// 鑾峰彇鐢熶骇鍏ュ簱鍗曞垪琛ㄤ俊鎭�
+        /// </summary>
+        /// <returns></returns>
+        [Route("Kf_ProductInBillController/GetKf_ProductInBillList_Json")]
+        [HttpGet]
+        public object GetKf_ProductInBillList_Json(string sWhere, string HMaker, string OperationType, string ViewName)
+        {
+            try
+            {
+                //鍒ゆ柇鏉冮檺
+                if (OperationType == "1")
+                {
+                    //鍒ゆ柇鏉冮檺
+                    if (!DBUtility.ClsPub.Security_Log(ModRightNameList, 3, false, HMaker))
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鎮ㄦ病鏈夎妯″潡鏉冮檺,璇蜂笌绠$悊鍛樿仈绯伙紒";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+
+                //杩斿洖鍒楄〃淇℃伅
+                ds = oCn.RunProcReturn("select * from " + ViewName + " where 1=1 " + sWhere + " order by hmainid desc", ViewName);
+                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 鐢熶骇鍏ュ簱鍗� 鍒犻櫎
+        /// <summary>
+        /// 鍒犻櫎鐢熶骇鍏ュ簱鍗�
+        /// </summary>
+        /// <returns></returns>
+        [Route("Kf_ProductInBillController/GetKf_ProductInBill_Delete_Json")]
+        [HttpGet]
+        public object GetKf_ProductInBill_Delete_Json(Int64 HInterID, string HMaker)
+        {
+            try
+            {
+                //鍒ゆ柇鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log(ModRightNameDrop, 3, false, HMaker))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鎮ㄦ病鏈夎妯″潡鍒犻櫎鍔熻兘鏉冮檺,璇蜂笌绠$悊鍛樿仈绯伙紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                //鍒ゆ柇瀛樺湪鎬�
+                if (oBill.ShowBill(HInterID, ref DBUtility.ClsPub.sExeReturnInfo))
+                {
+                    //鍒犻櫎鍓嶆帶鍒�
+                    DataSet BeforeDs = oCn.RunProcReturn("Exec h_p_Kf_ProductInBill_BeforeDelCtrl " + HInterID.ToString() + ",'" + HMaker + "'", "h_p_Kf_ProductInBill_BeforeDelCtrl");
+                    if (BeforeDs == null || BeforeDs.Tables[0].Rows.Count == 0)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍒犻櫎鍓嶅垽鏂け璐ワ紒";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    else
+                    {
+                        if (DBUtility.ClsPub.isLong(BeforeDs.Tables[0].Rows[0]["HBack"]) == 1)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍒犻櫎澶辫触锛�" + DBUtility.ClsPub.isStrNull(BeforeDs.Tables[0].Rows[0]["HRemark"]);
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                    //鍒犻櫎鍗曟嵁锛堝寘鍚垹闄ゅ悗鎺у埗銆佸啓鍏ユ棩蹇楋級
+                    if (!oBill.DeleteBill(oBill.omodel.HInterID, oBill.omodel.HBillNo, "h_p_Kf_ProductInBill_AfterDelCtrl", HMaker, ref ClsPub.sExeReturnInfo))
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍒犻櫎澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    else
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "鍒犻櫎鐢熶骇鍏ュ簱鍗曟垚鍔燂紒";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏈煡璇㈠埌璇ョ敓浜у叆搴撳崟锛岃鍒锋柊鏁版嵁鍚庨噸鏂伴�夋嫨锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鍒犻櫎鐢熶骇鍏ュ簱鍗曞け璐ワ紒" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 鐢熶骇鍏ュ簱鍗� 瀹℃牳/鍙嶅鏍�
+        /// <summary>
+        /// 瀹℃牳/鍙嶅鏍哥敓浜у叆搴撳崟
+        /// </summary>
+        /// <param name="HInterID">鍗曟嵁ID</param>
+        /// <param name="Type">瀹℃牳(1),鍙嶅鏍�(2)</param>
+        /// <param name="HMaker">瀹℃牳浜�</param>
+        /// <returns></returns>
+        [Route("Kf_ProductInBillController/GetKf_ProductInBill_Check_Json")]
+        [HttpGet]
+        public object GetKf_ProductInBill_Check_Json(Int64 HInterID, int Type, string HMaker)
+        {
+            try
+            {
+                //鍒ゆ柇鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 3, false, HMaker))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鎮ㄦ病鏈夎妯″潡瀹℃牳/鍙嶅鏍稿姛鑳芥潈闄�,璇蜂笌绠$悊鍛樿仈绯伙紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                //鍒ゆ柇瀛樺湪鎬�
+                if (oBill.ShowBill(HInterID, ref DBUtility.ClsPub.sExeReturnInfo))
+                {
+                    //Type 1 瀹℃牳  2  鍙嶅鏍�
+                    if (Type == 1)
+                    {
+                        if (oBill.omodel.HChecker.Trim() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸插鏍革紝涓嶈兘鍐嶆瀹℃牳锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        if (oBill.omodel.HCloseMan.Trim() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸插叧闂紝涓嶈兘鍐嶆瀹℃牳锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        if (oBill.omodel.HDeleteMan.Trim() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸蹭綔搴燂紝涓嶈兘鍐嶆瀹℃牳锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        //瀹℃牳鍓嶆帶鍒�
+                        DataSet BeforeDs = oCn.RunProcReturn("Exec h_p_Kf_ProductInBill_BeforeCheckCtrl " + HInterID.ToString() + ",'" + HMaker + "'", "h_p_Kf_ProductInBill_BeforeCheckCtrl");
+                        if (BeforeDs == null || BeforeDs.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "瀹℃牳鍓嶅垽鏂け璐ワ紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            if (DBUtility.ClsPub.isLong(BeforeDs.Tables[0].Rows[0]["HBack"]) == 1)
+                            {
+                                objJsonResult.code = "0";
+                                objJsonResult.count = 0;
+                                objJsonResult.Message = "瀹℃牳澶辫触锛�" + DBUtility.ClsPub.isStrNull(BeforeDs.Tables[0].Rows[0]["HRemark"]);
+                                objJsonResult.data = null;
+                                return objJsonResult;
+                            }
+                        }
+                        //瀹℃牳鍗曟嵁
+                        if (!oBill.CheckBill(HInterID, oBill.omodel.HBillNo, "h_p_Kf_ProductInBill_AfterCheckCtrl", HMaker, ref ClsPub.sExeReturnInfo))
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 1;
+                            objJsonResult.Message = "鍗曟嵁鍙凤細" + oBill.omodel.HBillNo + " 瀹℃牳鎴愬姛锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult; ;
+                        }
+                    }
+                    else
+                    {
+                        if (oBill.omodel.HChecker.Trim() == "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鏈鏍革紝涓嶉渶瑕佸弽瀹℃牳锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        //鍙嶅鏍稿墠鎺у埗
+                        DataSet BeforeDs = oCn.RunProcReturn("Exec h_p_Kf_ProductInBill_BeforeUnCheckCtrl " + HInterID.ToString() + ",'" + HMaker + "'", "h_p_Kf_ProductInBill_BeforeUnCheckCtrl");
+                        if (BeforeDs == null || BeforeDs.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍙嶅鏍稿墠鍒ゆ柇澶辫触锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            if (DBUtility.ClsPub.isLong(BeforeDs.Tables[0].Rows[0]["HBack"]) == 1)
+                            {
+                                objJsonResult.code = "0";
+                                objJsonResult.count = 0;
+                                objJsonResult.Message = "鍙嶅鏍稿け璐ワ紒" + DBUtility.ClsPub.isStrNull(BeforeDs.Tables[0].Rows[0]["HRemark"]);
+                                objJsonResult.data = null;
+                                return objJsonResult;
+                            }
+                        }
+
+                        //鍙嶅鏍稿崟鎹�
+                        if (!oBill.AbandonCheck(HInterID, oBill.omodel.HBillNo, "h_p_Kf_ProductInBill_AfterUnCheckCtrl", HMaker, ref ClsPub.sExeReturnInfo))
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍙嶅鏍稿け璐�!鍘熷洜:" + ClsPub.sExeReturnInfo;
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 1;
+                            objJsonResult.Message = "鍗曟嵁鍙凤細" + oBill.omodel.HBillNo + " 鍙嶅鏍告垚鍔燂紒";
+                            objJsonResult.data = null;
+                            return objJsonResult; ;
+                        }
+                    }
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏈煡璇㈠埌璇ョ敓浜у叆搴撳崟锛岃鍒锋柊鏁版嵁鍚庨噸鏂伴�夋嫨锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "瀹℃牳鎴栧弽瀹℃牳鐢熶骇鍏ュ簱鍗曞け璐ワ紒" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 鐢熶骇鍏ュ簱鍗� 鍏抽棴/鍙嶅叧闂�
+        /// <summary>
+        /// 鍏抽棴/鍙嶅叧闂敓浜у叆搴撳崟
+        /// </summary>
+        /// <param name="HInterID">鍗曟嵁ID</param>
+        /// <param name="Type">鍏抽棴(1),鍙嶅叧闂�(2)</param>
+        /// <param name="HMaker">鍏抽棴浜�</param>
+        /// <returns></returns>
+        [Route("Kf_ProductInBillController/GetKf_ProductInBill_Close_Json")]
+        [HttpGet]
+        public object GetKf_ProductInBill_Close_Json(Int64 HInterID, int Type, string HMaker)
+        {
+            try
+            {
+                //鍒ゆ柇鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log(ModRightNameClose, 3, false, HMaker))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鎮ㄦ病鏈夎妯″潡鍏抽棴/鍙嶅叧闂姛鑳芥潈闄�,璇蜂笌绠$悊鍛樿仈绯伙紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                //鍒ゆ柇瀛樺湪鎬�
+                if (oBill.ShowBill(HInterID, ref DBUtility.ClsPub.sExeReturnInfo))
+                {
+                    //Type 1 鍏抽棴  2  鍙嶅叧闂�
+                    if (Type == 1)
+                    {
+                        if (oBill.omodel.HCloseMan.Trim() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸插叧闂紝涓嶈兘鍐嶆鍏抽棴锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        //鍏抽棴鍗曟嵁
+                        if (!oBill.CloseBill(HInterID, oBill.omodel.HBillNo, HMaker, ref ClsPub.sExeReturnInfo))
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍏抽棴澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 1;
+                            objJsonResult.Message = "鍗曟嵁鍙凤細" + oBill.omodel.HBillNo + " 鍏抽棴鎴愬姛锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult; ;
+                        }
+                    }
+                    else
+                    {
+                        if (oBill.omodel.HCloseMan.Trim() == "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鏈叧闂紝涓嶉渶瑕佸弽鍏抽棴锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        //鍙嶅叧闂崟鎹�
+                        if (!oBill.CancelClose(HInterID, oBill.omodel.HBillNo, HMaker, ref ClsPub.sExeReturnInfo))
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍙嶅叧闂け璐�!鍘熷洜:" + ClsPub.sExeReturnInfo;
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 1;
+                            objJsonResult.Message = "鍗曟嵁鍙凤細" + oBill.omodel.HBillNo + " 鍙嶅叧闂垚鍔燂紒";
+                            objJsonResult.data = null;
+                            return objJsonResult; ;
+                        }
+                    }
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏈煡璇㈠埌璇ョ敓浜у叆搴撳崟锛岃鍒锋柊鏁版嵁鍚庨噸鏂伴�夋嫨锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鍏抽棴鎴栧弽鍏抽棴鐢熶骇鍏ュ簱鍗曞け璐ワ紒" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 鐢熶骇鍏ュ簱鍗� 浣滃簾/鍙嶄綔搴�
+        /// <summary>
+        /// 浣滃簾/鍙嶄綔搴熺敓浜у叆搴撳崟
+        /// </summary>
+        /// <param name="HInterID">鍗曟嵁ID</param>
+        /// <param name="Type">浣滃簾(1),鍙嶄綔搴�(2)</param>
+        /// <param name="HMaker">浣滃簾浜�</param>
+        /// <returns></returns>
+        [Route("Kf_ProductInBillController/GetKf_ProductInBill_Cancelltion_Json")]
+        [HttpGet]
+        public object GetKf_ProductInBill_Cancelltion_Json(Int64 HInterID, int Type, string HMaker)
+        {
+            try
+            {
+                //鍒ゆ柇鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log(ModRightNameDelete, 3, false, HMaker))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鎮ㄦ病鏈夎妯″潡浣滃簾/鍙嶄綔搴熷姛鑳芥潈闄�,璇蜂笌绠$悊鍛樿仈绯伙紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                //鍒ゆ柇瀛樺湪鎬�
+                if (oBill.ShowBill(HInterID, ref DBUtility.ClsPub.sExeReturnInfo))
+                {
+                    //Type 1 浣滃簾  2  鍙嶄綔搴�
+                    if (Type == 1)
+                    {
+                        if (oBill.omodel.HDeleteMan.Trim() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸蹭綔搴燂紝涓嶈兘鍐嶆浣滃簾锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        //浣滃簾鍗曟嵁
+                        if (!oBill.Cancelltion(HInterID, oBill.omodel.HBillNo, HMaker, ref ClsPub.sExeReturnInfo))
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "浣滃簾澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 1;
+                            objJsonResult.Message = "鍗曟嵁鍙凤細" + oBill.omodel.HBillNo + " 浣滃簾鎴愬姛锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult; ;
+                        }
+                    }
+                    else
+                    {
+                        if (oBill.omodel.HDeleteMan.Trim() == "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鏈綔搴燂紝涓嶉渶瑕佸弽浣滃簾锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        //鍙嶄綔搴熷崟鎹�
+                        if (!oBill.AbandonCancelltion(HInterID, oBill.omodel.HBillNo, HMaker, ref ClsPub.sExeReturnInfo))
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍙嶄綔搴熷け璐�!鍘熷洜:" + ClsPub.sExeReturnInfo;
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 1;
+                            objJsonResult.Message = "鍗曟嵁鍙凤細" + oBill.omodel.HBillNo + " 鍙嶄綔搴熸垚鍔燂紒";
+                            objJsonResult.data = null;
+                            return objJsonResult; ;
+                        }
+                    }
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏈煡璇㈠埌璇ョ敓浜у叆搴撳崟锛岃鍒锋柊鏁版嵁鍚庨噸鏂伴�夋嫨锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "浣滃簾鎴栧弽浣滃簾鐢熶骇鍏ュ簱鍗曞け璐ワ紒" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+
+
+
+        //---------------------------------------------------------------------------------------------鏃ф柟娉�20240422鍓�
 
         #region 鐢熶骇鍏ュ簱鍗� 鏌ユ壘璁板綍鍔熻兘
         /// <summary>
@@ -38,7 +561,7 @@
             try
             {
 
-                ds = oCN.RunProcReturn("select * from h_v_IF_ProductInBillList where hmainid=" + HInterID, "h_v_IF_ProductInBillList");
+                ds = oCn.RunProcReturn("select * from h_v_IF_ProductInBillList where hmainid=" + HInterID, "h_v_IF_ProductInBillList");
                 if (ds == null || ds.Tables[0].Rows.Count == 0)
                 {
                     objJsonResult.code = "0";
@@ -91,12 +614,12 @@
 
                 if (sWhere == null || sWhere.Equals(""))
                 {
-                    ds = oCN.RunProcReturn("select * from h_v_IF_ProductInBillList where 1=1  order by hmainid desc", "h_v_IF_ProductInBillList");
+                    ds = oCn.RunProcReturn("select * from h_v_IF_ProductInBillList where 1=1  order by hmainid desc", "h_v_IF_ProductInBillList");
                 }
                 else
                 {
                     string sql = "select * from h_v_IF_ProductInBillList where 1 = 1 " + sWhere + " order by hmainid desc";
-                    ds = oCN.RunProcReturn(sql, "h_v_IF_ProductInBillList");
+                    ds = oCn.RunProcReturn(sql, "h_v_IF_ProductInBillList");
                 }
 
 
@@ -133,7 +656,7 @@
                 string HBillNo = "";
                 //鍒犻櫎鍓嶆帶鍒�=========================================      
                 string sql1 = "exec h_p_Kf_ProductInBill_BeforeDelCtrl " + HInterID + ",'" + HBillNo + "','" + user + "'";
-                ds = oCN.RunProcReturn(sql1, "h_p_Kf_ProductInBill_BeforeDelCtrl");
+                ds = oCn.RunProcReturn(sql1, "h_p_Kf_ProductInBill_BeforeDelCtrl");
                 if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
                 {
                     objJsonResult.code = "0";
@@ -154,14 +677,14 @@
                 //==================================================================================      
 
                 string sReturn = "";
-                oCN.BeginTran();
-                oCN.RunProc("Delete From Kf_ICStockBillMain where HInterID = " + HInterID);
-                oCN.RunProc("Delete From Kf_ICStockBillSub where HInterID = " + HInterID);
-                oCN.Commit();
+                oCn.BeginTran();
+                oCn.RunProc("Delete From Kf_ICStockBillMain where HInterID = " + HInterID);
+                oCn.RunProc("Delete From Kf_ICStockBillSub where HInterID = " + HInterID);
+                oCn.Commit();
 
                 //鍒犻櫎鍚庢帶鍒�==================================================================================      
                 string sql2 = "exec h_p_Kf_ProductInBill_AfterDelCtrl " + HInterID + ",'" + HBillNo + "','" + user + "'";
-                ds = oCN.RunProcReturn(sql2, "h_p_Kf_ProductInBill_AfterDelCtrl");
+                ds = oCn.RunProcReturn(sql2, "h_p_Kf_ProductInBill_AfterDelCtrl");
                 if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
                 {
                     sReturn = "鍒犻櫎鍚庡垽鏂け璐ワ紝璇蜂笌缃戠粶绠$悊浜哄憳鑱旂郴";
@@ -169,7 +692,7 @@
                     objJsonResult.count = 1;
                     objJsonResult.Message = "鍒犻櫎澶辫触!鍘熷洜:" + sReturn;
                     objJsonResult.data = null;
-                    oCN.RollBack();
+                    oCn.RollBack();
                     return objJsonResult;
                 }
                 if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
@@ -179,7 +702,7 @@
                     objJsonResult.count = 1;
                     objJsonResult.Message = "鍒犻櫎澶辫触!鍘熷洜:" + sReturn;
                     objJsonResult.data = null;
-                    oCN.RollBack();
+                    oCn.RollBack();
                     return objJsonResult;
                 }
                 //==============================================================================================
@@ -192,7 +715,7 @@
             }
             catch (Exception e)
             {
-                oCN.RollBack();
+                oCn.RollBack();
                 objJsonResult.code = "0";
                 objJsonResult.count = 0;
                 objJsonResult.Message = "Exception锛�" + e.ToString();
@@ -211,19 +734,19 @@
             {
                 var _value = sMainSub["sMainSub"].ToString();
                 string msg1 = _value.ToString();
-                oCN.BeginTran();
+                oCn.BeginTran();
                 //淇濆瓨涓昏〃
                 objJsonResult = AddBillMain(msg1);
                 if (objJsonResult.code == "0")
                 {
-                    oCN.RollBack();
+                    oCn.RollBack();
                     objJsonResult.code = "0";
                     objJsonResult.count = 0;
                     objJsonResult.Message = objJsonResult.Message;
                     objJsonResult.data = null;
                     return objJsonResult;
                 }
-                oCN.Commit();
+                oCn.Commit();
                 objJsonResult.code = "1";
                 objJsonResult.count = 1;
                 objJsonResult.Message = "鍗曟嵁淇濆瓨鎴愬姛锛�";
@@ -233,7 +756,7 @@
             }
             catch (Exception e)
             {
-                oCN.RollBack();
+                oCn.RollBack();
                 objJsonResult.code = "0";
                 objJsonResult.count = 0;
                 objJsonResult.Message = "淇濆瓨澶辫触锛�" + e.ToString();
@@ -304,12 +827,12 @@
                 string HSUPPLYADDRESS = mainList2[0].HSUPPLYADDRESS == null ? "''" : mainList2[0].HSUPPLYADDRESS;
                 long HPROVIDERCONTACTID = mainList2[0].HPROVIDERCONTACTID == null ? 0 : mainList2[0].HPROVIDERCONTACTID;
 
-                ds = oCN.RunProcReturn("select * from h_v_IF_ProductInBillList where hmainid=" + HInterID + " and 鍗曟嵁鍙�='" + HBillNo + "'", "h_v_IF_ProductInBillList");
+                ds = oCn.RunProcReturn("select * from h_v_IF_ProductInBillList where hmainid=" + HInterID + " and 鍗曟嵁鍙�='" + HBillNo + "'", "h_v_IF_ProductInBillList");
                 if ((OperationType == 1 || OperationType == 2 || OperationType == 4) && ds.Tables[0].Rows.Count == 0)//鏂板
                 {
 
                     //淇濆瓨鍓嶆帶鍒�=========================================
-                    ds = oCN.RunProcReturn("exec h_p_Kf_ProductInBill_BeforeSaveCtrl " + HInterID, "h_p_Kf_ProductInBill_BeforeSaveCtrl");
+                    ds = oCn.RunProcReturn("exec h_p_Kf_ProductInBill_BeforeSaveCtrl " + HInterID, "h_p_Kf_ProductInBill_BeforeSaveCtrl");
 
                     if (ds == null || ds.Tables[0].Rows.Count == 0)
                     {
@@ -337,7 +860,7 @@
                     "," + HManagerID + "," + HEmpID + "," + HDeptID + "," + HSecManagerID + "," + HKeeperID + ",'" + HRemark + "','" + HMaker +
                     "',getdate()" + "," + HCurID + "," + HExRate + "," + HWHID + ",'" + HInnerBillNo + "','" + HExplanation + "')";
 
-                    oCN.RunProc(sql);
+                    oCn.RunProc(sql);
 
                 }
                 else if (OperationType == 3 || ds.Tables[0].Rows.Count != 0)
@@ -348,20 +871,20 @@
                                  + ",HExRate=" + HExRate + ",HEmpID=" + HEmpID + ",HManagerID=" + HManagerID + ",HDeptID=" + HDeptID
                                  + ",HInnerBillNo='" + HInnerBillNo + "' where HInterID=" + HInterID;
 
-                    oCN.RunProc(sql);
+                    oCn.RunProc(sql);
 
                     
                     //鍒犻櫎瀛愯〃
-                    oCN.RunProc("delete from Kf_ICStockBillSub where HInterID='" + HInterID + "'");
+                    oCn.RunProc("delete from Kf_ICStockBillSub where HInterID='" + HInterID + "'");
                 }
                 //淇濆瓨瀛愯〃
                 objJsonResult = AddBillSub(msg3, HInterID, OperationType, user);
 
                 //鐢熶骇鍏ュ簱鍗曟柊澧炲洖濉敓浜ц鍗曞叧鑱旀暟閲�
-                oCN.RunProc("exec h_p_Kf_UpDateRelation_ProductInToICMO_Add " + HInterID);
+                oCn.RunProc("exec h_p_Kf_UpDateRelation_ProductInToICMO_Add " + HInterID);
 
                 //鐢熶骇鍏ュ簱鍗曟柊澧炲洖濉敓浜ф眹鎶ュ崟鍏宠仈鏁伴噺
-                oCN.RunProc("exec h_p_Kf_UpDateRelation_ProductInToICMOReport_Add " + HInterID);
+                oCn.RunProc("exec h_p_Kf_UpDateRelation_ProductInToICMOReport_Add " + HInterID);
 
                 if (objJsonResult.code == "0")
                 {
@@ -445,7 +968,7 @@
 
                 DataSet Cs;
                 Int64 NewHEntryID = 1;
-                Cs = oCN.RunProcReturn("select MAX(HEntryID)HEntryID from Kf_ICStockBillSub", "Kf_ICStockBillSub");
+                Cs = oCn.RunProcReturn("select MAX(HEntryID)HEntryID from Kf_ICStockBillSub", "Kf_ICStockBillSub");
                 if (Cs.Tables[0].Rows.Count != 0 && ClsPub.isLong(Cs.Tables[0].Rows[0]["HEntryID"].ToString()) != 0)
                 {
                     NewHEntryID = ClsPub.isLong(Cs.Tables[0].Rows[0]["HEntryID"].ToString());
@@ -453,7 +976,7 @@
                 }
                
 
-                oCN.RunProc($@"Insert into Kf_ICStockBillSub 
+                oCn.RunProc($@"Insert into Kf_ICStockBillSub 
                 (HInterID,HEntryID,HMaterID,HUnitID,HQtyMust,HQty,HPrice
 	            ,HMoney,HWHID,HSPID,HRemark,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HPOOrderInterID
                 ,HPOOrderEntryID,HPOORderBillNo,HSecUnitID,HSeOrderInterID,HSeOrderEntryID,HSeOrderBillNo,HRelationQty,HSecUnitRate,HPropertyID) 
@@ -463,7 +986,7 @@
 
             }
             //淇濆瓨鍚庢帶鍒�=========================================              
-            ds = oCN.RunProcReturn("exec h_p_Kf_ProductInBill_AfterSaveCtrl " + HInterID, "h_p_Kf_ProductInBill_AfterSaveCtrl");
+            ds = oCn.RunProcReturn("exec h_p_Kf_ProductInBill_AfterSaveCtrl " + HInterID, "h_p_Kf_ProductInBill_AfterSaveCtrl");
 
             if (ds == null || ds.Tables[0].Rows.Count == 0)
             {
@@ -496,14 +1019,14 @@
         [HttpGet]
         public ApiResult<DataTable> getMaterialByMaterID(Int64 HMaterID)
         {
-            SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+            SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
 
             string sql = "select a.HItemID HMaterID,a.HNumber HMaterNumber,a.HName HMaterName,a.HMaterRuleType,a.HModel HMaterModel,a.HUnitID, b.HNumber HUnitNumber, b.HName HUnitName" +
                 " from Gy_Material AS a " +
                 " LEFT OUTER JOIN Gy_Unit AS b on a.HUnitID = b.HItemID " +
                 " where a.HItemID =" + HMaterID;
 
-            var dataSet = oCN.RunProcReturn(sql, "Gy_Material");
+            var dataSet = oCn.RunProcReturn(sql, "Gy_Material");
 
 
             if (dataSet == null || dataSet.Tables[0].Rows.Count == 0)
@@ -541,7 +1064,7 @@
 
                 ClsPub.CurUserName = user;
                 BillOld.MvarItemKey = "Kf_ICStockBillMain";
-                oCN.BeginTran();//寮�濮嬩簨鍔�
+                oCn.BeginTran();//寮�濮嬩簨鍔�
 
                 //Type 1 瀹℃牳  2  鍙嶅鏍�
                 if (Type == 1)
@@ -549,7 +1072,7 @@
                     //鍒ゆ柇鍗曟嵁鏄惁宸茬粡瀹℃牳
                     DataSet ds;
                     string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
+                    ds = oCn.RunProcReturn(sql, BillOld.MvarItemKey);
                     if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
                     {
                         if (ds.Tables[0].Rows[0]["HChecker"] != null && ds.Tables[0].Rows[0]["HChecker"].ToString() != "")
@@ -576,7 +1099,7 @@
                     //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍙嶅鏍�
                     DataSet ds;
                     string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
+                    ds = oCn.RunProcReturn(sql, BillOld.MvarItemKey);
                     if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
                     {
                         if (ds.Tables[0].Rows[0]["HChecker"] == null || ds.Tables[0].Rows[0]["HChecker"].ToString() == "")
@@ -612,7 +1135,7 @@
                     }
                 }
 
-                oCN.Commit();//鎻愪氦浜嬪姟
+                oCn.Commit();//鎻愪氦浜嬪姟
 
                 objJsonResult.code = "0";
                 objJsonResult.count = 1;
@@ -729,7 +1252,7 @@
 
                     //瀹℃牳鍓嶆帶鍒�=========================================      
                     string sql1 = "exec h_p_Kf_ProductInBill_BeforeCheckCtrl " + oBill.omodel.HInterID + ",'" + oBill.omodel.HBillNo + "','" + CurUserName + "'";
-                    ds = oCN.RunProcReturn(sql1, "h_p_Kf_ProductInBill_BeforeCheckCtrl");
+                    ds = oCn.RunProcReturn(sql1, "h_p_Kf_ProductInBill_BeforeCheckCtrl");
                     if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
                     {
                         objJsonResult.code = "0";
@@ -770,7 +1293,7 @@
                 if (IsAudit == 1) //鍙嶅鏍告彁浜�
                 {
                     //鍙嶅鏍稿墠鎺у埗=========================================
-                    DataSet ds = oCN.RunProcReturn("Exec h_p_Kf_ProductInBill_BeforeUnCheckCtrl " + oBill.omodel.HInterID + ",'" + oBill.omodel.HBillNo + "','" + CurUserName + "'", "h_p_Kf_ProductInBill_BeforeUnCheckCtrl");
+                    DataSet ds = oCn.RunProcReturn("Exec h_p_Kf_ProductInBill_BeforeUnCheckCtrl " + oBill.omodel.HInterID + ",'" + oBill.omodel.HBillNo + "','" + CurUserName + "'", "h_p_Kf_ProductInBill_BeforeUnCheckCtrl");
                     if (ds == null)
                     {
                         objJsonResult.code = "0";
@@ -848,7 +1371,7 @@
 
                 ClsPub.CurUserName = user;
                 BillOld.MvarItemKey = "Kf_ICStockBillMain";
-                oCN.BeginTran();//寮�濮嬩簨鍔�
+                oCn.BeginTran();//寮�濮嬩簨鍔�
 
                 //Type 1 鍏抽棴  2  鍙嶅叧闂�
                 if (Type == 1)
@@ -856,7 +1379,7 @@
                     //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍏抽棴
                     DataSet ds;
                     string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
+                    ds = oCn.RunProcReturn(sql, BillOld.MvarItemKey);
                     if (ds == null || ds.Tables[0].Rows.Count == 0)
                     {
                         objJsonResult.code = "0";
@@ -908,7 +1431,7 @@
                     //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍙嶅叧闂�
                     DataSet ds;
                     string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
+                    ds = oCn.RunProcReturn(sql, BillOld.MvarItemKey);
                     if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
                     {
                         if (ds.Tables[0].Rows[0]["HDeleteMan"] != null && ds.Tables[0].Rows[0]["HDeleteMan"].ToString() != "")
@@ -947,7 +1470,7 @@
                     }
                 }
 
-                oCN.Commit();//鎻愪氦浜嬪姟
+                oCn.Commit();//鎻愪氦浜嬪姟
 
                 objJsonResult.code = "0";
                 objJsonResult.count = 1;
@@ -995,7 +1518,7 @@
 
                 ClsPub.CurUserName = user;
                 BillOld.MvarItemKey = "Kf_ICStockBillMain";
-                oCN.BeginTran();//寮�濮嬩簨鍔�
+                oCn.BeginTran();//寮�濮嬩簨鍔�
 
                 //Type 1 浣滃簾  2  鍙嶄綔搴�
                 if (Type == 1)
@@ -1003,7 +1526,7 @@
                     //鍒ゆ柇鍗曟嵁鏄惁宸茬粡浣滃簾
                     DataSet ds;
                     string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
+                    ds = oCn.RunProcReturn(sql, BillOld.MvarItemKey);
                     if (ds == null || ds.Tables[0].Rows.Count == 0)
                     {
                         objJsonResult.code = "0";
@@ -1046,7 +1569,7 @@
                     //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍙嶄綔搴�
                     DataSet ds;
                     string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
+                    ds = oCn.RunProcReturn(sql, BillOld.MvarItemKey);
                     if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
                     {
                         if (ds.Tables[0].Rows[0]["HChecker"] != null && ds.Tables[0].Rows[0]["HChecker"].ToString() != "")
@@ -1077,7 +1600,7 @@
                     }
                 }
 
-                oCN.Commit();//鎻愪氦浜嬪姟
+                oCn.Commit();//鎻愪氦浜嬪姟
 
                 objJsonResult.code = "0";
                 objJsonResult.count = 1;
diff --git "a/WebAPI/Controllers/\344\273\223\345\255\230\347\256\241\347\220\206/\351\252\214\346\224\266\345\205\245\345\272\223/Kf_StepFoldinBillController.cs" "b/WebAPI/Controllers/\344\273\223\345\255\230\347\256\241\347\220\206/\351\252\214\346\224\266\345\205\245\345\272\223/Kf_StepFoldinBillController.cs"
index e8c9713..46c29bf 100644
--- "a/WebAPI/Controllers/\344\273\223\345\255\230\347\256\241\347\220\206/\351\252\214\346\224\266\345\205\245\345\272\223/Kf_StepFoldinBillController.cs"
+++ "b/WebAPI/Controllers/\344\273\223\345\255\230\347\256\241\347\220\206/\351\252\214\346\224\266\345\205\245\345\272\223/Kf_StepFoldinBillController.cs"
@@ -255,7 +255,7 @@
 	                    ,HDeleteMan,HCloseMan
 	                    ,HRemark,HExplanation,HInnerBillNo,HCurID)
                         values(" + HInterID + ",'" + HBillNo + "','" + HDate + "','" + 1251 + "','" +
-                    HBillSubType + "'," + HBillStatus + "," + DateTime.Now.Year + "," + DateTime.Now.Month + "," + HSupID +
+                    1251 + "'," + HBillStatus + "," + DateTime.Now.Year + "," + DateTime.Now.Month + "," + HSupID +
                     "," + HWHID + "," + HSCWHID + "," + HEmpID + "," + HManagerID + "," + HSecManagerID +
                     "," + HKeeperID + "," + HDeptID + ",'" + HMaker + "','" + HMakeDate + "','" + HChecker + "','" + HUpDater + "','" + HDeleteMan + "','" + HCloseMan + "','"
                     + HRemark + "','" + HExplanation + "','" + HInnerBillNo + "'," + HCurID + "" + ")");
@@ -263,14 +263,23 @@
                 else if (OperationType == 3 || ds.Tables[0].Rows.Count != 0)
                 { //淇敼
                     String sql = "update Kf_ICStockBillMain   set " +
-                                "HRemark='" + HRemark + "', HUpDater='" + HMaker + "', HUpDateDate=getdate()" + " where HInterID=" + "HInterID";
+                               "HRemark='" + HRemark + "', HUpDater='" + HMaker + "', HUpDateDate=getdate()" +
+                                 ",HSupID=" + HSupID + ",HWHID=" + HWHID + ",HSCWHID=" + HSCWHID + ", HEmpID=" + HEmpID + ",HManagerID=" + HManagerID + ",HSecManagerID = " + HSecManagerID
+                                 + ",HKeeperID=" + HKeeperID + ",HDeptID=" + HDeptID + "  where HInterID=" + HInterID;
 
                     oCN.RunProc(sql);
+
+                    //鍒嗗竷寮忚皟鍏ュ崟 缂栬緫 鎾ら攢 鍥炲~鍒嗗竷寮忚皟鍑哄崟鍏宠仈鏁伴噺
+                    oCN.RunProc("exec h_p_Kf_UpDateRelation_ICStockToPOStockIn_Del " + HInterID);
+
                     //鍒犻櫎瀛愯〃
                     oCN.RunProc("delete from Kf_ICStockBillSub where HInterID='" + HInterID + "'");
                 }
                 //淇濆瓨瀛愯〃
                 objJsonResult = AddBillSub(msg3, HInterID, OperationType);
+
+                //鍒嗗竷寮忚皟鍏ュ崟鏂板鍥炲~鍒嗗竷寮忚皟鍑哄崟鍏宠仈鏁伴噺
+                oCN.RunProc("exec h_p_Kf_UpDateRelation_ICStockToPOStockIn_Add " + HInterID);
 
                 if (objJsonResult.code == "0")
                 {
@@ -374,8 +383,13 @@
             try
             {
                 oCN.BeginTran();
+
+                //鍒嗗竷寮忚皟鍏ュ崟鏂板鍥炲~鍒嗗竷寮忚皟鍑哄崟鍏宠仈鏁伴噺
+                oCN.RunProc("exec h_p_Kf_UpDateRelation_ICStockToPOStockIn_Del " + HInterID);
+
                 oCN.RunProc("Delete From Kf_ICStockBillMain where HInterID = " + HInterID);
                 oCN.RunProc("Delete From Kf_ICStockBillSub where HInterID = " + HInterID);
+
                 oCN.Commit();
                 objJsonResult.code = "1";
                 objJsonResult.count = 1;
@@ -724,25 +738,89 @@
                 //Type 1 浣滃簾  2  鍙嶄綔搴�
                 if (Type == 1)
                 {
-                    if (!BillOld.Cancelltion(int.Parse(HInterID), ref ClsPub.sExeReturnInfo))
+                    DataSet ds;
+                    string sql = "select * from Kf_ICStockBillMain where HinterID = " + HInterID;
+                    ds = oCN.RunProcReturn(sql, "Kf_ICStockBillMain");
+                    if (ds == null || ds.Tables[0].Rows.Count == 0)
                     {
                         objJsonResult.code = "0";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "浣滃簾澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦紒";
                         objJsonResult.data = null;
                         return objJsonResult;
                     }
+                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
+                    {
+                        if (ds.Tables[0].Rows[0]["HChecker"] != null && ds.Tables[0].Rows[0]["HChecker"].ToString() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸插鏍�!涓嶈兘杩涜浣滃簾!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        if (ds.Tables[0].Rows[0]["HDeleteMan"] != null && ds.Tables[0].Rows[0]["HDeleteMan"].ToString() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸蹭綔搴�!涓嶉渶瑕佸啀浣滃簾!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        //浣滃簾鍗曟嵁
+                        if (!BillOld.Cancelltion(int.Parse(HInterID), ref ClsPub.sExeReturnInfo))
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 1;
+                            objJsonResult.Message = "浣滃簾澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                    
                 }
                 else
                 {
-                    if (!BillOld.AbandonCancelltion(int.Parse(HInterID), ref ClsPub.sExeReturnInfo))
+                    DataSet ds;
+                    string sql = "select * from Kf_ICStockBillMain where HinterID = " + HInterID;
+                    ds = oCN.RunProcReturn(sql, "Kf_ICStockBillMain");
+                    if (ds == null || ds.Tables[0].Rows.Count == 0)
                     {
                         objJsonResult.code = "0";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "鍙嶄綔搴熷け璐�!鍘熷洜:" + ClsPub.sExeReturnInfo;
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦紒";
                         objJsonResult.data = null;
                         return objJsonResult;
                     }
+                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
+                    {
+                        if (ds.Tables[0].Rows[0]["HChecker"] != null && ds.Tables[0].Rows[0]["HChecker"].ToString() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸插鏍�!涓嶈兘杩涜浣滃簾!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        if (ds.Tables[0].Rows[0]["HDeleteMan"] != null && ds.Tables[0].Rows[0]["HDeleteMan"].ToString() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸蹭綔搴�!涓嶉渶瑕佸啀浣滃簾!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        //浣滃簾鍗曟嵁
+                        if (!BillOld.AbandonCancelltion(int.Parse(HInterID), ref ClsPub.sExeReturnInfo))
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 1;
+                            objJsonResult.Message = "鍙嶄綔搴熷け璐�!鍘熷洜:" + ClsPub.sExeReturnInfo;
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                    
                 }
 
                 oCN.Commit();//鎻愪氦浜嬪姟
@@ -764,5 +842,43 @@
             }
         }
         #endregion
+
+        #region 鍒嗘寮忚皟鍏ュ崟  鏍规嵁涓诲唴鐮佷笌瀛愬唴鐮佽幏鍙栧垎甯冨紡璋冨嚭鍗曟暟鎹�
+        [Route("Kf_StepFoldInBill/loadKf_ICStockBillMain_Push")]
+        [HttpGet]
+        public object loadKf_ICStockBillMain_Push(long HInterID, long HSubID)
+        {
+            try
+            {
+
+                ds = oCN.RunProcReturn("select * from h_v_IF_StepFoldOutBillList where hmainid =" + HInterID + " and hsubid = " + HSubID, "h_v_IF_StepFoldOutBillList");
+                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 = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "Sucess锛�";
+                    objJsonResult.data = ds.Tables[0];
+                    return objJsonResult;
+                }
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
     }
 }
\ No newline at end of file
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_SOPBillEditController.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_SOPBillEditController.cs"
index b022291..465324f 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_SOPBillEditController.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_SOPBillEditController.cs"
@@ -241,6 +241,92 @@
             }
         }
         #endregion
+
+        #region 淇濆瓨鍗曟嵁
+        [Route("Gy_SOPBill/Save")]
+        [HttpPost]
+        public object Save([FromBody] JObject oMain)
+        {
+            try
+            {
+                var _value = oMain["oMain"].ToString();
+                string msg1 = _value.ToString();
+                string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+                string msgMain = sArray[0].ToString(); //琛ㄥご淇℃伅
+                string msgSub = sArray[1].ToString(); //琛ㄤ綋淇℃伅
+                string OperationType = sArray[2].ToString(); //鎿嶄綔绫诲瀷
+                string user = sArray[3].ToString(); //鐢ㄦ埛
+
+                ListModels oListModels = new ListModels();
+                DAL.ClsGy_SOPBill oBill = new DAL.ClsGy_SOPBill();
+                List<Model.ClsGy_SOPBillMain> lsmain = new List<Model.ClsGy_SOPBillMain>();
+                msgMain = msgMain.Replace("\\", "");
+                msgMain = msgMain.Replace("\n", "");  //\n
+                lsmain = oListModels.getObjectByJson_Gy_SOPBillMain(msgMain);
+                foreach (Model.ClsGy_SOPBillMain oItem in lsmain)
+                {                    
+                    oBill.omodel = oItem;
+                }
+                //琛ㄤ綋鏁版嵁
+                //鎸� },{鏉ユ媶鍒嗘暟缁� //鍘绘帀銆愬拰銆�
+                msgSub = msgSub.Substring(1, msgSub.Length - 2);
+                msgSub = msgSub.Replace("\\", "");
+                msgSub = msgSub.Replace("\n", "");  //\n
+                //msg2 = msg2.Replace("'", "鈥�");
+                List<Model.ClsGy_SOPBillSub> ls = new List<Model.ClsGy_SOPBillSub>();
+                ls = oListModels.getObjectByJson_Gy_SOPBillSub(msgSub);
+                int i = 0;
+                foreach (Model.ClsGy_SOPBillSub oItemSub in ls)
+                {
+
+                    i++;
+                    oItemSub.HEntryID = i;
+                    
+                    oBill.DetailColl.Add(oItemSub);
+
+                }
+                //淇濆瓨
+                //淇濆瓨瀹屾瘯鍚庡鐞�
+                bool bResult;
+                if (OperationType == "1" || OperationType == "2")
+                {
+                    // bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
+                    bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
+                }
+                else
+                {
+                    bResult = oBill.ModifyBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
+                }
+                if (bResult)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "淇濆瓨鎴愬姛锛�";
+                    //WebAPIController.Add_Log("閫佽揣鍗曚笅鎺�", UserName, "鐢熸垚閫佽揣鍗�");
+                    objJsonResult.data = 1;
+                    return objJsonResult;
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "淇濆瓨澶辫触锛�" + DBUtility.ClsPub.sExeReturnInfo;
+                    objJsonResult.data = 1;
+                    return objJsonResult;
+                }              
+            }
+            catch (Exception e)
+            {
+                oCN.RollBack();
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.Message;
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
         [Route("Gy_SOPBill/Use")]
         [HttpGet]
         public object sy_Click()
@@ -292,9 +378,9 @@
 
             string HBillNo = HttpContext.Current.Request.Params["HBillNo"];  //鍗曟嵁鍙�
             string HUserName = HttpContext.Current.Request.Params["HUserName"];  //鍒涘缓浜�
-            string HInterID = HttpContext.Current.Request.Params["HInterID"];  //鍒涘缓浜�
-            HttpPostedFile files = HttpContext.Current.Request.Files["file"]; //鍗曟嵁涓诲唴鐮�
-            string path = HttpContext.Current.Server.MapPath("~/../Files/" + HBillNo);
+            string HInterID = HttpContext.Current.Request.Params["HInterID"];  //鍗曟嵁鍐呯爜
+            HttpPostedFile files = HttpContext.Current.Request.Files["file"]; //鏂囦欢
+            string path = HttpContext.Current.Server.MapPath("~/../Files/SOP/" + HBillNo);
             //string path = @"D:\\Files\\"+ HBillNo;
             Int64 HEntryID = Convert.ToInt64(HttpContext.Current.Request.Params["HEntryID"]);  //瀛愬唴鐮�
             dynamic dyResult = UpLoadFile(files, path, HBillNo, HInterID, HUserName, HEntryID);
@@ -313,8 +399,7 @@
                 objJsonResult.Message = dyResult.returnval;
                 objJsonResult.data = null;
                 return objJsonResult;
-            }
-
+            }           
         }
 
         public dynamic UpLoadFile(HttpPostedFile files, string path, string HBillNo, string HInterID, string HUserName,Int64 HEntryID)
@@ -371,7 +456,7 @@
                 {
                     File.Delete(fileurl);      //鍒犻櫎鎸囧畾鏂囦欢
                     files.SaveAs(fileurl);
-                    string StrPath = "/files/" + HBillNo + "/" + filename;
+                    string StrPath = "/files/SOP/" + HBillNo + "/" + filename;
                     if (File.Exists(fileurl))
                     {
                         //杩欓噷鍙互鎵ц涓�浜涘叾瀹冪殑鎿嶄綔锛屾瘮濡傛洿鏂版暟鎹簱
@@ -379,7 +464,7 @@
                         oCN.RunProc("Insert into Gy_SOPBillSub2 (HFileName,HPath,HFileType" +
                                ",HUpMan,HUpTime,HInterID,HEntryID,HSno,HFileID,HFileSize" +
                               ") values('"
-                               + filename.ToString() + "','" + filePath.ToString() + "','" +  fileExtension.ToString() + "'" +
+                               + filename.ToString() + "','" + StrPath.ToString() + "','" +  fileExtension.ToString() + "'" +
                                ",'" + HUserName + "',getdate()"  + ",'" + HInterID + "','" + HEntryID + "','" + Sno + "','" + lID + "','" + filesize +
                         "') ");
                     }
@@ -392,7 +477,7 @@
                 {
                     Directory.CreateDirectory(fileSavePath); //娣诲姞鏂囦欢澶�
                     files.SaveAs(fileurl);
-                    string StrPath = "/files/" + HBillNo + "/" + filename;
+                    string StrPath = "/files/SOP/" + HBillNo + "/" + filename;
                     if (File.Exists(fileurl))
                     {
                         //杩欓噷鍙互鎵ц涓�浜涘叾瀹冪殑鎿嶄綔锛屾瘮濡傛洿鏂版暟鎹簱
@@ -400,7 +485,7 @@
                         oCN.RunProc("Insert into Gy_SOPBillSub2 (HFileName,HPath,HFileType" +
                                      ",HUpMan,HUpTime,HInterID,HEntryID,HSno,HFileID,HFileSize" +
                                     ") values('"
-                                     + filename.ToString() + "','" + filePath.ToString() + "','" + fileExtension.ToString() + "'" +
+                                     + filename.ToString() + "','" + StrPath.ToString() + "','" + fileExtension.ToString() + "'" +
                                      ",'" + HUserName + "',getdate()" + ",'" + HInterID + "','" + HEntryID + "','" + Sno + "','" + lID + "','" + filesize +
                                     "') ");
                     }
diff --git "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\267\245\350\265\204\345\237\272\347\241\200\350\265\204\346\226\231/Gy_WorkTypeController.cs" "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\267\245\350\265\204\345\237\272\347\241\200\350\265\204\346\226\231/Gy_WorkTypeController.cs"
index 16684c7..ff98ed7 100644
--- "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\267\245\350\265\204\345\237\272\347\241\200\350\265\204\346\226\231/Gy_WorkTypeController.cs"
+++ "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\267\245\350\265\204\345\237\272\347\241\200\350\265\204\346\226\231/Gy_WorkTypeController.cs"
@@ -40,7 +40,7 @@
         {
             try
             {
-                //鍒ゆ柇鏉冮檺
+                //鍒ゆ柇鏉冮檺  1涓虹洿鎺ュ垪琛ㄦā鍧楁墦寮�  2涓轰粠鍏朵粬妯″潡璺宠浆鎵撳紑鍒楄〃
                 if (OperationType == "1")
                 {
                     //鍒ゆ柇鏉冮檺
diff --git "a/WebAPI/Controllers/\345\267\245\350\265\204\347\256\241\347\220\206/Pay_SingleBalBillController.cs" "b/WebAPI/Controllers/\345\267\245\350\265\204\347\256\241\347\220\206/Pay_SingleBalBillController.cs"
index bdb05bd..fafa6d8 100644
--- "a/WebAPI/Controllers/\345\267\245\350\265\204\347\256\241\347\220\206/Pay_SingleBalBillController.cs"
+++ "b/WebAPI/Controllers/\345\267\245\350\265\204\347\256\241\347\220\206/Pay_SingleBalBillController.cs"
@@ -592,7 +592,231 @@
         }
         #endregion
 
+        #region 宸ヨ祫缁撶畻鍗�(涓汉)妯″潡   浠庡垪琛ㄩ�変腑鎵撳紑鍗曟嵁锛岃繑鍥炲崟鎹俊鎭椂璋冪敤
+        /// <summary>
+        /// 宸ヨ祫缁撶畻鍗�(涓汉)缂栬緫鏃讹紝鏍规嵁鍗曟嵁ID鑾峰彇鍗曟嵁淇℃伅
+        /// </summary>
+        /// <returns></returns>
+        [Route("Pay_SingleBalBillController/GetPay_SingleBalBill_Json")]
+        [HttpGet]
+        public object GetPay_SingleBalBill_Json(Int64 HInterID, string HMaker)
+        {
+            try
+            {
+                //鍒ゆ柇鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log(ModRightNameEdit, 3, false, HMaker))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鎮ㄦ病鏈夎妯″潡缂栬緫鏉冮檺,璇蜂笌绠$悊鍛樿仈绯伙紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
 
+                //杩斿洖鍒楄〃淇℃伅
+                ds = oCn.RunProcReturn("exec h_p_Pay_SingleBalBill_EditInit " + HInterID, "h_p_Pay_SingleBalBill_EditInit");
+                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>
+        /// 宸ヨ祫缁撶畻鍗�(涓汉)淇濆瓨
+        /// </summary>
+        [Route("Pay_SingleBalBillController/GetPay_SingleBalBill_Save_Json")]
+        [HttpPost]
+        public object GetPay_SingleBalBill_Save_Json([FromBody] JObject sMainSub)
+        {
+            var _value = sMainSub["sMainSub"].ToString();
+            string msg1 = _value.ToString();
+            string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+            string sMainStr = sArray[0].ToString();         //涓昏〃鏁版嵁
+            string sSubStr = sArray[1].ToString();          //瀛愯〃鏁版嵁
+            string OperationType = sArray[2].ToString();    //鎿嶄綔绫诲瀷锛�1鏂板銆�2缂栬緫锛�
+            string HMaker = sArray[3].ToString();           //鍒跺崟浜�
+            try
+            {
+                //鍒ゆ柇鏉冮檺
+                if (OperationType == "1")
+                {
+                    BillStatus = DBUtility.ClsPub.Enum_BillStatus.BillStatus_AddNew;
+                    //鍒ゆ柇鏂板鏉冮檺
+                    if (!DBUtility.ClsPub.Security_Log(ModRightName, 1, false, HMaker))
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鎮ㄦ病鏈夎妯″潡鏂板鏉冮檺,璇蜂笌绠$悊鍛樿仈绯伙紒";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+                else
+                {
+                    BillStatus = DBUtility.ClsPub.Enum_BillStatus.BillStatus_Modify;
+                    //鍒ゆ柇缂栬緫鏉冮檺
+                    if (!DBUtility.ClsPub.Security_Log(ModRightNameEdit, 1, false, HMaker))
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鎮ㄦ病鏈夎妯″潡缂栬緫鏉冮檺,璇蜂笌绠$悊鍛樿仈绯伙紒";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+                //琛ㄥご璧嬪��
+                sMainStr = sMainStr.Replace("\\", "");
+                sMainStr = sMainStr.Replace("\n", "");
+                sMainStr = "[" + sMainStr.ToString() + "]";
+                List<Model.ClsPay_SingleBalBillMain> lsmain = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsPay_SingleBalBillMain>>(sMainStr);
+                foreach (Model.ClsPay_SingleBalBillMain oItem in lsmain)
+                {
+                    //鍗曟嵁鍙锋槸鍚﹂噸澶�
+                    if (oBill.IsExistBillNo(ref ClsPub.sExeReturnInfo, oItem.HBillNo, BillStatus, oItem.HInterID))
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍗曟嵁鍙烽噸澶嶏紒涓嶅厑璁镐繚瀛橈紒";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    //鍒ゆ柇浼氳鏈熸槸鍚﹀悎鐞�
+                    string s = "";
+                    int sYear = 0;
+                    int sPeriod = 0;
+                    if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod_Pay(oItem.HDate, ref sYear, ref sPeriod, ref s) == false)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = s;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+
+                    oItem.HYear = sYear;
+                    oItem.HPeriod = sPeriod;
+                    DBUtility.ClsPub.CurUserName = oItem.HMaker;
+                    oBill.omodel = oItem;
+                }
+                //琛ㄤ綋璧嬪��
+                //鎸� },{鏉ユ媶鍒嗘暟缁� //鍘绘帀銆愬拰銆�
+                sSubStr = sSubStr.Substring(1, sSubStr.Length - 2);
+                sSubStr = sSubStr.Replace("\\", "");
+                sSubStr = sSubStr.Replace("\n", "");
+                sSubStr = "[" + sSubStr.ToString() + "]";
+                List<Model.ClsPay_SingleBalBillSub> ls = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsPay_SingleBalBillSub>>(sSubStr);
+                int i = 0;
+                foreach (Model.ClsPay_SingleBalBillSub oItemSub in ls)
+                {
+                    i++;
+                    oItemSub.HEntryID = i;
+                    oBill.DetailColl.Add(oItemSub);
+                }
+
+                //淇濆瓨
+                bool bResult;
+                if (OperationType == "1")   //鏂板淇濆瓨
+                {
+                    bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
+                }
+                else                        //缂栬緫淇濆瓨
+                {
+                    bResult = oBill.ModifyBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
+                }
+
+                if (bResult)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = DBUtility.ClsPub.sExeReturnInfo;  //鎴愬姛锛�
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "淇濆瓨澶辫触锛�" + DBUtility.ClsPub.sExeReturnInfo;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "淇濆瓨澶辫触锛�" + e.Message;
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+
+        #endregion
+
+        #region 鏍规嵁鐗╂枡ID銆佸伐搴廔D銆佽祫婧怚D鑾峰彇宸ヤ环
+        [Route("Pay_SingleBalBill/get_HPrice_BaseMaterHProcHSource")]
+        [HttpGet]
+        public object get_HPrice_BaseMaterHProcHSource(Int64 HMaterID, Int64 HProcID, Int64 HSourceID)
+        {
+            try
+            {
+                DAL.ClsGy_ProcPrice_Ctl oProcPrice = new DAL.ClsGy_ProcPrice_Ctl();
+                double HPrice = oProcPrice.LoadProcPrice(HMaterID, HProcID, HSourceID, true);
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = HPrice;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+        //---------------------------------------------------------------------------------------------鏃ф柟娉�
 
         #region 宸ヨ祫缁撶畻鍗曚釜浜�-鏌ヨ
         /// <summary>
@@ -1375,33 +1599,6 @@
                     objJsonResult.data = null;
                     return objJsonResult;
                 }
-            }
-        }
-        #endregion
-
-        #region 鏍规嵁鐗╂枡ID銆佸伐搴廔D銆佽祫婧怚D鑾峰彇宸ヤ环
-        [Route("Pay_SingleBalBill/get_HPrice_BaseMaterHProcHSource")]
-        [HttpGet]
-        public object get_HPrice_BaseMaterHProcHSource(Int64 HMaterID, Int64 HProcID, Int64 HSourceID)
-        {
-            try
-            {
-                DAL.ClsGy_ProcPrice_Ctl oProcPrice = new DAL.ClsGy_ProcPrice_Ctl();
-                double HPrice = oProcPrice.LoadProcPrice(HMaterID, HProcID, HSourceID, true);
-
-                objJsonResult.code = "1";
-                objJsonResult.count = 1;
-                objJsonResult.Message = "Sucess锛�";
-                objJsonResult.data = HPrice;
-                return objJsonResult;
-            }
-            catch(Exception e)
-            {
-                objJsonResult.code = "0";
-                objJsonResult.count = 0;
-                objJsonResult.Message = e.ToString();
-                objJsonResult.data = null;
-                return objJsonResult;
             }
         }
         #endregion
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 dbb8fe9..9f7c131 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"
@@ -2419,6 +2419,84 @@
 
         #region 鐢熶骇琛ユ枡    涓婁紶鐢熷崟
 
+        #region 鐢熶骇琛ユ枡    鏂板妯″紡
+
+        /// <summary>
+        /// 鐢熶骇琛ユ枡鏂板涓婁紶
+        /// </summary>
+        /// <returns></returns>
+        [Route("WEBSController/set_SaveMateReplenishOutBill_Json")]
+        [HttpPost]
+        public object set_SaveMateReplenishOutBill_Json([FromBody] JObject oMain)
+        {
+            var _value = oMain["oMain"].ToString();
+            string msg1 = _value.ToString();
+            try
+            {
+                List<Model.ClsKf_MateReplenishOutBillMain> lsmain = new List<Model.ClsKf_MateReplenishOutBillMain>();
+                ListModels oListModels = new ListModels();
+                lsmain = oListModels.getMateReplenishOutBillMainByJson(msg1);
+                WebS.ClsKf_MateReplenishOutBillMain websLsmain = new WebS.ClsKf_MateReplenishOutBillMain();
+                string sSourceType = lsmain[0].HMainSourceBillType;
+                websLsmain.HInterID = lsmain[0].HInterID;
+                websLsmain.HBillNo = lsmain[0].HBillNo;
+                websLsmain.HBillType = lsmain[0].HBillType;
+                websLsmain.HDate = lsmain[0].HDate;
+                websLsmain.HDeptID = lsmain[0].HDeptID;
+                websLsmain.HWHID = lsmain[0].HWHID;
+                websLsmain.HSCWHID = lsmain[0].HSCWHID;
+                websLsmain.HSupID = lsmain[0].HSupID;
+                websLsmain.HKeeperID = lsmain[0].HKeeperID;
+                websLsmain.HSecManagerID = lsmain[0].HSecManagerID;
+                websLsmain.HEmpID = lsmain[0].HEmpID;
+                websLsmain.HManagerID = lsmain[0].HManagerID;
+                websLsmain.HRemark = lsmain[0].HRemark;
+                websLsmain.HExplanation = lsmain[0].HExplanation;
+                websLsmain.HInnerBillNo = lsmain[0].HInnerBillNo;
+                websLsmain.HRedBlueFlag = lsmain[0].HRedBlueFlag;
+                websLsmain.HBillSubType = lsmain[0].HBillSubType;
+                if (lsmain[0].HMainSourceBillType == "3720")
+                {
+                    websLsmain.HMainSourceBillType = "鐢熶骇鐢ㄦ枡娓呭崟";
+                }
+                else
+                {
+                    websLsmain.HMainSourceBillType = "鎵嬪伐褰曞叆";
+                }
+                websLsmain.HMaker = lsmain[0].HMaker;
+                websLsmain.HBillerID = lsmain[0].HBillerID;
+                websLsmain.HSTOCKORGID = lsmain[0].HSTOCKORGID;
+                websLsmain.HOWNERID = lsmain[0].HSTOCKORGID;
+
+                if (oWebs.set_SaveMateReplenishOutBill_New(websLsmain, sSourceType, ref DBUtility.ClsPub.sErrInfo))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = DBUtility.ClsPub.sErrInfo;  //鎴愬姛锛�
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = DBUtility.ClsPub.sErrInfo;  //澶辫触锛�
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鐢熶骇琛ユ枡鍗曚笂浼犲け璐ワ紒" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+
+        #endregion
+
         #region 鐢熶骇琛ユ枡    鏍¢獙妯″紡
 
         /// <summary>
@@ -3285,6 +3363,48 @@
 
         #endregion
 
+        #region 鐢熶骇琛ユ枡    鎵弿婧愬崟鏉$爜
+
+        /// <summary>
+        /// 鐢熶骇琛ユ枡    鎵弿婧愬崟鏉$爜
+        /// </summary>
+        /// <returns></returns>
+        [Route("WEBSController/Get_SourceBarCode_MateReplenishOut_Json")]
+        [HttpGet]
+        public object get_SourceBarCode_MateReplenishOut_Json(Int64 HInterID, string HBillNo, string HBillType, string HSourceBillNo, string HSourceBillType, string HMaker, Int64 HFIFOWhID, Int64 HStockOrgID)
+        {
+            try
+            {
+                WebSoBar = oWebs.get_SourceBarCode_MateReplenishOut(HInterID, HBillNo, HBillType, HSourceBillNo, HSourceBillType, HMaker, HFIFOWhID, HStockOrgID, ref DBUtility.ClsPub.sErrInfo);
+                if (WebSoBar == null)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = DBUtility.ClsPub.sErrInfo;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "鎴愬姛";
+                    objJsonResult.data = WebSoBar;
+                    return objJsonResult;
+                }
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鎵弿婧愬崟鏉$爜澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+
+        #endregion
+
         #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 bceb379..82f7912 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"
@@ -81,6 +81,14 @@
             public int HConWorkDays;
             public int HDepDays;
             public double HLastMoney;
+            public int HProjectClassID;
+            public string HBuildComp;
+            public string HBuildAddress;
+            public string HWorkNo;
+            public string HReDate;
+            public string HPicNo;
+            public string HWorkTask;
+            public string HProjectNote;
 
         }
         #endregion
@@ -225,7 +233,14 @@
                 int HMaterID = mainList[0].HMaterID;
                 string HUpdater = mainList[0].HUpdater;
                 string HUpdaterDate = mainList[0].HUpdaterDate;
-
+                int HProjectClassID = mainList[0].HProjectClassID;
+                string HBuildComp = mainList[0].HBuildComp;
+                string HBuildAddress = mainList[0].HBuildAddress;
+                string HWorkNo = mainList[0].HWorkNo;
+                string HReDate = mainList[0].HReDate;
+                string HPicNo = mainList[0].HPicNo;
+                string HWorkTask = mainList[0].HWorkTask;
+                string HProjectNote = mainList[0].HProjectNote;
                 if (OperationType == 2)
                 {
                     ds = oCN.RunProcReturn("select * from PM_ProjectBillMain where HBillNo ='" + HBillNo + "'", "PM_ProjectBillMain");
@@ -245,7 +260,7 @@
                 {
                     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) " +
+                        "HProMoney,HWorkMoney,HOtherMoney,HProType,HPMEmpID,HWorkEmpID,HDepEmpID,HConWorkDays,HDepDays,HLastMoney,HPayCusID,HOrgID,HMaterID,HProjectClassID,HBuildComp,HBuildAddress,HWorkNo,HReDate,HPicNo,HWorkTask,HProjectNote) " +
                         "values(" +
                         "" + HYear +
                         "," + HPeriod +
@@ -277,7 +292,15 @@
                         "," + HPayCusID +
                         "," + HOrgID +
                         "," + HMaterID +
-                        ")";
+                        "," + HProjectClassID +
+                        ",'" + HBuildComp +
+                        "','" + HBuildAddress +
+                        "','" + HWorkNo +
+                        "','" + HReDate +
+                        "','" + HPicNo +
+                        "','" + HWorkTask +
+                        "','" + HProjectNote +
+                        "')";
 
                     //涓昏〃
                     oCN.RunProc(sql);
@@ -316,7 +339,15 @@
                         ",HPayCusID = " + HPayCusID +
                         ",HOrgID = " + HOrgID +
                         ",HMaterID = " + HMaterID +
-                        " where HInterID = " + HInterID;
+                        ",HProjectClassID = " + HProjectClassID +
+                        ",HBuildComp = '" + HBuildComp +
+                        "',HBuildAddress = '" + HBuildAddress +
+                        "',HWorkNo = '" + HWorkNo +
+                        "',HReDate = '" + HReDate +
+                        "',HPicNo = '" + HPicNo +
+                        "',HWorkTask = '" + HWorkTask +
+                        "',HProjectNote ='" + HProjectNote +
+                        "' where HInterID = " + HInterID;
 
                     oCN.RunProc(sql);
 
diff --git a/WebAPI/ListModels.cs b/WebAPI/ListModels.cs
index 6e44e80..f7c9643 100644
--- a/WebAPI/ListModels.cs
+++ b/WebAPI/ListModels.cs
@@ -3988,5 +3988,23 @@
             return list;
         }
 
+        ///浣滀笟鎸囧涔� 涓昏〃 
+        ///ClsGy_SOPBillMain
+        public List<Model.ClsGy_SOPBillMain> getObjectByJson_Gy_SOPBillMain(string jsonString)
+        {
+            jsonString = "[" + jsonString.ToString() + "]";
+            List<Model.ClsGy_SOPBillMain> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsGy_SOPBillMain>>(jsonString);
+            return list;
+        }
+
+        ///浣滀笟鎸囧涔� 瀛愯〃
+        ///ClsGy_SOPBillSub
+        public List<Model.ClsGy_SOPBillSub> getObjectByJson_Gy_SOPBillSub(string jsonString)
+        {
+            jsonString = "[" + jsonString.ToString() + "]";
+            List<Model.ClsGy_SOPBillSub> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsGy_SOPBillSub>>(jsonString);
+            return list;
+        }
+
     }
 } 
\ No newline at end of file
diff --git a/WebAPI/Models/Supplier.cs b/WebAPI/Models/Supplier.cs
index 766438b..29cdc49 100644
--- a/WebAPI/Models/Supplier.cs
+++ b/WebAPI/Models/Supplier.cs
@@ -75,5 +75,6 @@
 
         public string HMaterClass { get; set; }
 
+
     }
 }
\ No newline at end of file
diff --git a/WebAPI/Web References/WebS/Reference.cs b/WebAPI/Web References/WebS/Reference.cs
index 6a789db..3362ea3 100644
--- a/WebAPI/Web References/WebS/Reference.cs
+++ b/WebAPI/Web References/WebS/Reference.cs
@@ -34,6 +34,8 @@
     [System.Xml.Serialization.XmlIncludeAttribute(typeof(ClsXt_BaseBillMain))]
     public partial class WebService1 : System.Web.Services.Protocols.SoapHttpClientProtocol {
         
+        private System.Threading.SendOrPostCallback set_DelSc_MouldStockBillMain_TempOperationCompleted;
+        
         private System.Threading.SendOrPostCallback set_SaveMouldStockBill_NewOperationCompleted;
         
         private System.Threading.SendOrPostCallback MouldTempList_ModifyOperationCompleted;
@@ -290,6 +292,8 @@
         
         private System.Threading.SendOrPostCallback get_SourceBarCode_OtherOutOperationCompleted;
         
+        private System.Threading.SendOrPostCallback get_SourceBarCode_MateReplenishOutOperationCompleted;
+        
         private System.Threading.SendOrPostCallback get_SourceBarCode_MoveStockOperationCompleted;
         
         private System.Threading.SendOrPostCallback get_SourceBarCode_MoveStockStepOutOperationCompleted;
@@ -325,8 +329,6 @@
         private System.Threading.SendOrPostCallback Get_CheckTypeByMouldBarCode_ProdCheckStockOperationCompleted;
         
         private System.Threading.SendOrPostCallback GetMouldBillEntry_TmpListOperationCompleted;
-        
-        private System.Threading.SendOrPostCallback set_DelSc_MouldStockBillMain_TempOperationCompleted;
         
         private System.Threading.SendOrPostCallback set_CheckOtherInBillOperationCompleted;
         
@@ -1195,6 +1197,9 @@
         }
         
         /// <remarks/>
+        public event set_DelSc_MouldStockBillMain_TempCompletedEventHandler set_DelSc_MouldStockBillMain_TempCompleted;
+        
+        /// <remarks/>
         public event set_SaveMouldStockBill_NewCompletedEventHandler set_SaveMouldStockBill_NewCompleted;
         
         /// <remarks/>
@@ -1579,6 +1584,9 @@
         public event get_SourceBarCode_OtherOutCompletedEventHandler get_SourceBarCode_OtherOutCompleted;
         
         /// <remarks/>
+        public event get_SourceBarCode_MateReplenishOutCompletedEventHandler get_SourceBarCode_MateReplenishOutCompleted;
+        
+        /// <remarks/>
         public event get_SourceBarCode_MoveStockCompletedEventHandler get_SourceBarCode_MoveStockCompleted;
         
         /// <remarks/>
@@ -1631,9 +1639,6 @@
         
         /// <remarks/>
         public event GetMouldBillEntry_TmpListCompletedEventHandler GetMouldBillEntry_TmpListCompleted;
-        
-        /// <remarks/>
-        public event set_DelSc_MouldStockBillMain_TempCompletedEventHandler set_DelSc_MouldStockBillMain_TempCompleted;
         
         /// <remarks/>
         public event set_CheckOtherInBillCompletedEventHandler set_CheckOtherInBillCompleted;
@@ -2876,6 +2881,42 @@
         
         /// <remarks/>
         public event GetSc_ICMOBackBillListCompletedEventHandler GetSc_ICMOBackBillListCompleted;
+        
+        /// <remarks/>
+        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/set_DelSc_MouldStockBillMain_Temp", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+        public bool set_DelSc_MouldStockBillMain_Temp(long HInterID, long HMouldInterID, string sHBillType, ref string sErrMsg) {
+            object[] results = this.Invoke("set_DelSc_MouldStockBillMain_Temp", new object[] {
+                        HInterID,
+                        HMouldInterID,
+                        sHBillType,
+                        sErrMsg});
+            sErrMsg = ((string)(results[1]));
+            return ((bool)(results[0]));
+        }
+        
+        /// <remarks/>
+        public void set_DelSc_MouldStockBillMain_TempAsync(long HInterID, long HMouldInterID, string sHBillType, string sErrMsg) {
+            this.set_DelSc_MouldStockBillMain_TempAsync(HInterID, HMouldInterID, sHBillType, sErrMsg, null);
+        }
+        
+        /// <remarks/>
+        public void set_DelSc_MouldStockBillMain_TempAsync(long HInterID, long HMouldInterID, string sHBillType, string sErrMsg, object userState) {
+            if ((this.set_DelSc_MouldStockBillMain_TempOperationCompleted == null)) {
+                this.set_DelSc_MouldStockBillMain_TempOperationCompleted = new System.Threading.SendOrPostCallback(this.Onset_DelSc_MouldStockBillMain_TempOperationCompleted);
+            }
+            this.InvokeAsync("set_DelSc_MouldStockBillMain_Temp", new object[] {
+                        HInterID,
+                        HMouldInterID,
+                        sHBillType,
+                        sErrMsg}, this.set_DelSc_MouldStockBillMain_TempOperationCompleted, userState);
+        }
+        
+        private void Onset_DelSc_MouldStockBillMain_TempOperationCompleted(object arg) {
+            if ((this.set_DelSc_MouldStockBillMain_TempCompleted != null)) {
+                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
+                this.set_DelSc_MouldStockBillMain_TempCompleted(this, new set_DelSc_MouldStockBillMain_TempCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
+            }
+        }
         
         /// <remarks/>
         [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/set_SaveMouldStockBill_New", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
@@ -9002,6 +9043,52 @@
         }
         
         /// <remarks/>
+        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/get_SourceBarCode_MateReplenishOut", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+        public ClsKf_ICStockBill_WMS get_SourceBarCode_MateReplenishOut(long HInterID, string HBillNo, string HBillType, string HSourceBillNo, string HSourceBillType, string HMaker, long HFIFOWhID, long HOWNERID, ref string sErrMsg) {
+            object[] results = this.Invoke("get_SourceBarCode_MateReplenishOut", new object[] {
+                        HInterID,
+                        HBillNo,
+                        HBillType,
+                        HSourceBillNo,
+                        HSourceBillType,
+                        HMaker,
+                        HFIFOWhID,
+                        HOWNERID,
+                        sErrMsg});
+            sErrMsg = ((string)(results[1]));
+            return ((ClsKf_ICStockBill_WMS)(results[0]));
+        }
+        
+        /// <remarks/>
+        public void get_SourceBarCode_MateReplenishOutAsync(long HInterID, string HBillNo, string HBillType, string HSourceBillNo, string HSourceBillType, string HMaker, long HFIFOWhID, long HOWNERID, string sErrMsg) {
+            this.get_SourceBarCode_MateReplenishOutAsync(HInterID, HBillNo, HBillType, HSourceBillNo, HSourceBillType, HMaker, HFIFOWhID, HOWNERID, sErrMsg, null);
+        }
+        
+        /// <remarks/>
+        public void get_SourceBarCode_MateReplenishOutAsync(long HInterID, string HBillNo, string HBillType, string HSourceBillNo, string HSourceBillType, string HMaker, long HFIFOWhID, long HOWNERID, string sErrMsg, object userState) {
+            if ((this.get_SourceBarCode_MateReplenishOutOperationCompleted == null)) {
+                this.get_SourceBarCode_MateReplenishOutOperationCompleted = new System.Threading.SendOrPostCallback(this.Onget_SourceBarCode_MateReplenishOutOperationCompleted);
+            }
+            this.InvokeAsync("get_SourceBarCode_MateReplenishOut", new object[] {
+                        HInterID,
+                        HBillNo,
+                        HBillType,
+                        HSourceBillNo,
+                        HSourceBillType,
+                        HMaker,
+                        HFIFOWhID,
+                        HOWNERID,
+                        sErrMsg}, this.get_SourceBarCode_MateReplenishOutOperationCompleted, userState);
+        }
+        
+        private void Onget_SourceBarCode_MateReplenishOutOperationCompleted(object arg) {
+            if ((this.get_SourceBarCode_MateReplenishOutCompleted != null)) {
+                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
+                this.get_SourceBarCode_MateReplenishOutCompleted(this, new get_SourceBarCode_MateReplenishOutCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
+            }
+        }
+        
+        /// <remarks/>
         [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/get_SourceBarCode_MoveStock", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
         public ClsKf_ICStockBill_WMS get_SourceBarCode_MoveStock(long HInterID, string HBillNo, string HBillType, string HSourceBillNo, string HSourceBillType, string HMaker, long HFIFOWhID, long HOWNERID, ref string sErrMsg) {
             object[] results = this.Invoke("get_SourceBarCode_MoveStock", new object[] {
@@ -10313,42 +10400,6 @@
             if ((this.GetMouldBillEntry_TmpListCompleted != null)) {
                 System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                 this.GetMouldBillEntry_TmpListCompleted(this, new GetMouldBillEntry_TmpListCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
-            }
-        }
-        
-        /// <remarks/>
-        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/set_DelSc_MouldStockBillMain_Temp", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
-        public bool set_DelSc_MouldStockBillMain_Temp(long HInterID, long HMouldInterID, string sHBillType, ref string sErrMsg) {
-            object[] results = this.Invoke("set_DelSc_MouldStockBillMain_Temp", new object[] {
-                        HInterID,
-                        HMouldInterID,
-                        sHBillType,
-                        sErrMsg});
-            sErrMsg = ((string)(results[1]));
-            return ((bool)(results[0]));
-        }
-        
-        /// <remarks/>
-        public void set_DelSc_MouldStockBillMain_TempAsync(long HInterID, long HMouldInterID, string sHBillType, string sErrMsg) {
-            this.set_DelSc_MouldStockBillMain_TempAsync(HInterID, HMouldInterID, sHBillType, sErrMsg, null);
-        }
-        
-        /// <remarks/>
-        public void set_DelSc_MouldStockBillMain_TempAsync(long HInterID, long HMouldInterID, string sHBillType, string sErrMsg, object userState) {
-            if ((this.set_DelSc_MouldStockBillMain_TempOperationCompleted == null)) {
-                this.set_DelSc_MouldStockBillMain_TempOperationCompleted = new System.Threading.SendOrPostCallback(this.Onset_DelSc_MouldStockBillMain_TempOperationCompleted);
-            }
-            this.InvokeAsync("set_DelSc_MouldStockBillMain_Temp", new object[] {
-                        HInterID,
-                        HMouldInterID,
-                        sHBillType,
-                        sErrMsg}, this.set_DelSc_MouldStockBillMain_TempOperationCompleted, userState);
-        }
-        
-        private void Onset_DelSc_MouldStockBillMain_TempOperationCompleted(object arg) {
-            if ((this.set_DelSc_MouldStockBillMain_TempCompleted != null)) {
-                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
-                this.set_DelSc_MouldStockBillMain_TempCompleted(this, new set_DelSc_MouldStockBillMain_TempCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
             }
         }
         
@@ -36685,6 +36736,8 @@
         
         private string sc_ICMOReportBill_AutoCheckField;
         
+        private string sc_ICMOReportBill_SaveAutoAddnewField;
+        
         private string sc_ICMOReportBill_ERPModeField;
         
         private string sc_ICMOReportBill_MustQtyCtlField;
@@ -36709,15 +36762,23 @@
         
         private string sc_ICMOReportBill_FirstCheckOutField;
         
+        private string sc_ICMOReportBill_ProcessCheckOutField;
+        
         private string sc_ICMOReportBill_DeleterAndMakerMustSameField;
         
         private string cg_POInStockBill_AutoCheckField;
+        
+        private string cg_POInStockBill_SaveAutoAddnewField;
         
         private string cg_POInStockBill_ERPModeField;
         
         private string cg_POInStockBill_BarCodeCtlField;
         
+        private string cg_POInStockBill_DeleterAndMakerMustSameField;
+        
         private string kf_POStockInBill_AutoCheckField;
+        
+        private string kf_POStockInBill_SaveAutoAddnewField;
         
         private string kf_POStockInBill_ERPModeField;
         
@@ -36743,6 +36804,8 @@
         
         private string kf_ProductInBill_AutoCheckField;
         
+        private string kf_ProductInBill_SaveAutoAddnewField;
+        
         private string kf_ProductInBill_ERPModeField;
         
         private string kf_ProductInBill_MustQtyCtlField;
@@ -36766,6 +36829,8 @@
         private string kf_ProductInBill_DeleterAndMakerMustSameField;
         
         private string kf_OtherInBill_AutoCheckField;
+        
+        private string kf_OtherInBill_SaveAutoAddnewField;
         
         private string kf_OtherInBill_ERPModeField;
         
@@ -36795,6 +36860,8 @@
         
         private string kf_EntrustInBill_AutoCheckField;
         
+        private string kf_EntrustInBill_SaveAutoAddnewField;
+        
         private string kf_EntrustInBill_ERPModeField;
         
         private string kf_EntrustInBill_MustQtyCtlField;
@@ -36816,6 +36883,8 @@
         private string kf_EntrustInBill_DeleterAndMakerMustSameField;
         
         private string kf_MateOutBill_AutoCheckField;
+        
+        private string kf_MateOutBill_SaveAutoAddnewField;
         
         private string kf_MateOutBill_ERPModeField;
         
@@ -36850,6 +36919,8 @@
         private string kf_MateOutBillCheck_MultilineCtlField;
         
         private string kf_SellOutBill_AutoCheckField;
+        
+        private string kf_SellOutBill_SaveAutoAddnewField;
         
         private string kf_SellOutBill_ERPModeField;
         
@@ -36889,6 +36960,8 @@
         
         private string kf_OtherOutBill_AutoCheckField;
         
+        private string kf_OtherOutBill_SaveAutoAddnewField;
+        
         private string kf_OtherOutBill_ERPModeField;
         
         private string kf_OtherOutBill_MustQtyCtlField;
@@ -36918,6 +36991,8 @@
         private string kf_OtherOutBillCheck_MultilineCtlField;
         
         private string kf_EntrustOutBill_AutoCheckField;
+        
+        private string kf_EntrustOutBill_SaveAutoAddnewField;
         
         private string kf_EntrustOutBill_ERPModeField;
         
@@ -36951,6 +37026,8 @@
         
         private string kf_MateReplenishOutBill_AutoCheckField;
         
+        private string kf_MateReplenishOutBill_SaveAutoAddnewField;
+        
         private string kf_MateReplenishOutBill_ERPModeField;
         
         private string kf_MateReplenishOutBill_MustQtyCtlField;
@@ -36967,6 +37044,10 @@
         
         private string kf_MateReplenishOutBill_SourceWHSPCtlField;
         
+        private string kf_MateReplenishOutBill_FIFOListField;
+        
+        private string kf_MateReplenishOutBill_FIFOCtlField;
+        
         private string kf_MateReplenishOutBill_DeleterAndMakerMustSameField;
         
         private string kf_MateReplenishOutBillCheck_MustQtyCtlField;
@@ -36976,6 +37057,8 @@
         private string kf_MateReplenishOutBillCheck_MultilineCtlField;
         
         private string kf_EntrustReplenishOutBill_AutoCheckField;
+        
+        private string kf_EntrustReplenishOutBill_SaveAutoAddnewField;
         
         private string kf_EntrustReplenishOutBill_ERPModeField;
         
@@ -36993,6 +37076,10 @@
         
         private string kf_EntrustReplenishOutBill_SourceWHSPCtlField;
         
+        private string kf_EntrustReplenishOutBill_FIFOListField;
+        
+        private string kf_EntrustReplenishOutBill_FIFOCtlField;
+        
         private string kf_EntrustReplenishOutBill_DeleterAndMakerMustSameField;
         
         private string kf_EntrustReplenishOutBillCheck_MustQtyCtlField;
@@ -37002,6 +37089,8 @@
         private string kf_EntrustReplenishOutBillCheck_MultilineCtlField;
         
         private string kf_MoveStockBill_AutoCheckField;
+        
+        private string kf_MoveStockBill_SaveAutoAddnewField;
         
         private string kf_MoveStockBill_ERPModeField;
         
@@ -37035,6 +37124,8 @@
         
         private string kf_MoveStockStepOutBill_AutoCheckField;
         
+        private string kf_MoveStockStepOutBill_SaveAutoAddnewField;
+        
         private string kf_MoveStockStepOutBill_ERPModeField;
         
         private string kf_MoveStockStepOutBill_MustQtyCtlField;
@@ -37058,6 +37149,8 @@
         private string kf_MoveStockStepOutBill_DeleterAndMakerMustSameField;
         
         private string kf_MoveStockStepInBill_AutoCheckField;
+        
+        private string kf_MoveStockStepInBill_SaveAutoAddnewField;
         
         private string kf_MoveStockStepInBill_ERPModeField;
         
@@ -37085,6 +37178,8 @@
         
         private string kf_POStockInBackBill_AutoCheckField;
         
+        private string kf_POStockInBackBill_SaveAutoAddnewField;
+        
         private string kf_POStockInBackBill_ERPModeField;
         
         private string kf_POStockInBackBill_MustQtyCtlField;
@@ -37104,6 +37199,8 @@
         private string kf_POStockInBackBill_DeleterAndMakerMustSameField;
         
         private string kf_ProductInBackBill_AutoCheckField;
+        
+        private string kf_ProductInBackBill_SaveAutoAddnewField;
         
         private string kf_ProductInBackBill_ERPModeField;
         
@@ -37125,6 +37222,8 @@
         
         private string kf_OtherInBackBill_AutoCheckField;
         
+        private string kf_OtherInBackBill_SaveAutoAddnewField;
+        
         private string kf_OtherInBackBill_ERPModeField;
         
         private string kf_OtherInBackBill_MustQtyCtlField;
@@ -37145,6 +37244,8 @@
         
         private string kf_EntrustInBackBill_AutoCheckField;
         
+        private string kf_EntrustInBackBill_SaveAutoAddnewField;
+        
         private string kf_EntrustInBackBill_ERPModeField;
         
         private string kf_EntrustInBackBill_MustQtyCtlField;
@@ -37164,6 +37265,8 @@
         private string kf_EntrustInBackBill_DeleterAndMakerMustSameField;
         
         private string kf_MateOutBackBill_AutoCheckField;
+        
+        private string kf_MateOutBackBill_SaveAutoAddnewField;
         
         private string kf_MateOutBackBill_ERPModeField;
         
@@ -37187,6 +37290,8 @@
         
         private string kf_SellOutBackBill_AutoCheckField;
         
+        private string kf_SellOutBackBill_SaveAutoAddnewField;
+        
         private string kf_SellOutBackBill_ERPModeField;
         
         private string kf_SellOutBackBill_MustQtyCtlField;
@@ -37209,6 +37314,8 @@
         
         private string kf_OtherOutBackBill_AutoCheckField;
         
+        private string kf_OtherOutBackBill_SaveAutoAddnewField;
+        
         private string kf_OtherOutBackBill_ERPModeField;
         
         private string kf_OtherOutBackBill_MustQtyCtlField;
@@ -37228,6 +37335,8 @@
         private string kf_OtherOutBackBill_DeleterAndMakerMustSameField;
         
         private string kf_EntrustOutBackBill_AutoCheckField;
+        
+        private string kf_EntrustOutBackBill_SaveAutoAddnewField;
         
         private string kf_EntrustOutBackBill_ERPModeField;
         
@@ -37249,9 +37358,15 @@
         
         private string kf_EntrustOutBackBill_DeleterAndMakerMustSameField;
         
+        private string sc_PackUnionBill_AutoCheckField;
+        
+        private string sc_PackUnionBill_SaveAutoAddnewField;
+        
         private string sc_PackUnionBill_SourceBillTypeCtlField;
         
         private string sc_PackUnionBill_SourceBillNoCtlField;
+        
+        private string sc_PackUnionBill_DeleterAndMakerMustSameField;
         
         private string wMS_ERPStockCtlField;
         
@@ -37301,9 +37416,23 @@
         
         private string barCode_DeleterAndMakerMustSameField;
         
+        private string sc_ICMOBill_AutoCheckField;
+        
+        private string sc_ICMOBill_SaveAutoAddnewField;
+        
         private string sc_ICMOBill_AutoProcExchBillField;
         
+        private string sc_ICMOBill_DeleterAndMakerMustSameField;
+        
+        private string sc_ProcessExchangeBill_AutoCheckField;
+        
+        private string sc_ProcessExchangeBill_SaveAutoAddnewField;
+        
         private string sc_ProcessExchangeBill_AutoBarCodeField;
+        
+        private string sc_ProcessExchangeBill_DeleterAndMakerMustSameField;
+        
+        private string mES_StationInBill_AutoCheckField;
         
         private string mES_StationInBill_FIFOCtlField;
         
@@ -37330,6 +37459,12 @@
         private string mES_StationInBill_DeleteRelationCtlField;
         
         private string mES_StationInBill_PreQtyCtlField;
+        
+        private string mES_StationInBill_QtyRateCtlField;
+        
+        private string mES_StationInBill_DyCentralInspectionControlField;
+        
+        private string mES_StationOutBill_AutoCheckField;
         
         private string mES_StationOutBill_QtyCtlField;
         
@@ -37361,11 +37496,17 @@
         
         private string mES_StationOutBill_NextQtyCtlField;
         
+        private string mES_StationOutBill_QtyRateCtlField;
+        
+        private string qC_NoPassProdCheckBill_AutoCheckField;
+        
         private string qC_NoPassProdCheckBill_QtyCtlField;
         
         private string qC_NoPassProdCheckBill_BadReasonQtyCtrlField;
         
         private string qC_NoPassProdCheckBill_DeleteCtlField;
+        
+        private string mES_StationEntrustInBill_AutoCheckField;
         
         private string mES_StationEntrustInBill_FIFOCtlField;
         
@@ -37379,25 +37520,61 @@
         
         private string mES_StationEntrustInBill_SaveAutoAddnewField;
         
+        private string mES_StationEntrustInBill_QtyRateCtlField;
+        
+        private string mES_StationEntrustOutBill_AutoCheckField;
+        
         private string mES_StationEntrustOutBill_QtyCtlField;
         
         private string mES_StationEntrustOutBill_DeleteCtlField;
         
         private string mES_StationEntrustOutBill_SaveAutoAddnewField;
         
+        private string mES_StationEntrustOutBill_QtyRateCtlField;
+        
         private string sc_MESBeginWorkBill_AutoCheckField;
+        
+        private string sc_MESBeginWorkBill_SaveAutoAddnewField;
+        
+        private string sc_MESBeginWorkBill_DeleterAndMakerMustSameField;
         
         private string sc_MESReturnWorkBill_AutoCheckField;
         
+        private string sc_MESReturnWorkBill_SaveAutoAddnewField;
+        
+        private string sc_MESReturnWorkBill_DeleterAndMakerMustSameField;
+        
         private string sc_MESEndWorkBill_AutoCheckField;
+        
+        private string sc_MESEndWorkBill_SaveAutoAddnewField;
+        
+        private string sc_MESEndWorkBill_DeleterAndMakerMustSameField;
         
         private string sc_MESStopWorkBill_AutoCheckField;
         
+        private string sc_MESStopWorkBill_SaveAutoAddnewField;
+        
+        private string sc_MESStopWorkBill_DeleterAndMakerMustSameField;
+        
         private string sc_ICMOBillWorkQtyStatus_AutoCheckField;
+        
+        private string sc_ICMOBillWorkQtyStatus_SaveAutoAddnewField;
+        
+        private string sc_ICMOBillWorkQtyStatus_DeleterAndMakerMustSameField;
+        
+        private string sc_ICMOBillWorkQtyStatus_AutoNextWorkBillField;
         
         private string sc_ICMOBillQualityStatus_AutoCheckField;
         
+        private string sc_ICMOBillQualityStatus_SaveAutoAddnewField;
+        
+        private string sc_ICMOBillQualityStatus_DeleterAndMakerMustSameField;
+        
         private string sc_MaterToSourceBill_AutoCheckField;
+        
+        private string sc_MaterToSourceBill_SaveAutoAddnewField;
+        
+        private string sc_MaterToSourceBill_DeleterAndMakerMustSameField;
         
         private string sc_MaterToSourceBill_MouldLifeCtrlField;
         
@@ -37405,17 +37582,55 @@
         
         private string oA_ErrMsgBackBill_AutoCheckField;
         
+        private string oA_ErrMsgBackBill_SaveAutoAddnewField;
+        
+        private string oA_ErrMsgBackBill_DeleterAndMakerMustSameField;
+        
         private string sc_MESProceReportWorkBill_AutoCheckField;
         
+        private string sc_MESProceReportWorkBill_SaveAutoAddnewField;
+        
+        private string sc_MESProceReportWorkBill_DeleterAndMakerMustSameField;
+        
         private string qC_FirstPieceCheckBill_AutoCheckField;
+        
+        private string qC_FirstPieceCheckBill_SaveAutoAddnewField;
+        
+        private string qC_FirstPieceCheckBill_DeleterAndMakerMustSameField;
+        
+        private string qC_FirstPieceCheckBill_QCSchemeSourceField;
+        
+        private string qC_PatrolProcCheckBill_AutoCheckField;
+        
+        private string qC_PatrolProcCheckBill_SaveAutoAddnewField;
+        
+        private string qC_PatrolProcCheckBill_DeleterAndMakerMustSameField;
+        
+        private string qC_PatrolProcCheckBill_QCSchemeSourceField;
+        
+        private string qC_ProcessCheckBill_AutoCheckField;
+        
+        private string qC_ProcessCheckBill_SaveAutoAddnewField;
+        
+        private string qC_ProcessCheckBill_DeleterAndMakerMustSameField;
+        
+        private string qC_ProcessCheckBill_QCSchemeSourceField;
         
         private string sc_MouldProdOutBill_AutoCheckField;
         
         private string sc_MouldProdOutBill_SaveAutoAddnewField;
         
+        private string sc_MouldProdOutBill_DeleterAndMakerMustSameField;
+        
         private string sc_MouldProdOutBill_MouldLifeCtrlField;
         
         private string sc_MouldProdOutBill_MouldLifeCtrlTypeField;
+        
+        private string gy_RoutingBill_AutoCheckField;
+        
+        private string gy_RoutingBill_SaveAutoAddnewField;
+        
+        private string gy_RoutingBill_DeleterAndMakerMustSameField;
         
         private string gy_RoutingBill_SaveAutoLastProcField;
         
@@ -37426,6 +37641,16 @@
             }
             set {
                 this.sc_ICMOReportBill_AutoCheckField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Sc_ICMOReportBill_SaveAutoAddnew {
+            get {
+                return this.sc_ICMOReportBill_SaveAutoAddnewField;
+            }
+            set {
+                this.sc_ICMOReportBill_SaveAutoAddnewField = value;
             }
         }
         
@@ -37550,6 +37775,16 @@
         }
         
         /// <remarks/>
+        public string Sc_ICMOReportBill_ProcessCheckOut {
+            get {
+                return this.sc_ICMOReportBill_ProcessCheckOutField;
+            }
+            set {
+                this.sc_ICMOReportBill_ProcessCheckOutField = value;
+            }
+        }
+        
+        /// <remarks/>
         public string Sc_ICMOReportBill_DeleterAndMakerMustSame {
             get {
                 return this.sc_ICMOReportBill_DeleterAndMakerMustSameField;
@@ -37566,6 +37801,16 @@
             }
             set {
                 this.cg_POInStockBill_AutoCheckField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Cg_POInStockBill_SaveAutoAddnew {
+            get {
+                return this.cg_POInStockBill_SaveAutoAddnewField;
+            }
+            set {
+                this.cg_POInStockBill_SaveAutoAddnewField = value;
             }
         }
         
@@ -37590,12 +37835,32 @@
         }
         
         /// <remarks/>
+        public string Cg_POInStockBill_DeleterAndMakerMustSame {
+            get {
+                return this.cg_POInStockBill_DeleterAndMakerMustSameField;
+            }
+            set {
+                this.cg_POInStockBill_DeleterAndMakerMustSameField = value;
+            }
+        }
+        
+        /// <remarks/>
         public string Kf_POStockInBill_AutoCheck {
             get {
                 return this.kf_POStockInBill_AutoCheckField;
             }
             set {
                 this.kf_POStockInBill_AutoCheckField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Kf_POStockInBill_SaveAutoAddnew {
+            get {
+                return this.kf_POStockInBill_SaveAutoAddnewField;
+            }
+            set {
+                this.kf_POStockInBill_SaveAutoAddnewField = value;
             }
         }
         
@@ -37720,6 +37985,16 @@
         }
         
         /// <remarks/>
+        public string Kf_ProductInBill_SaveAutoAddnew {
+            get {
+                return this.kf_ProductInBill_SaveAutoAddnewField;
+            }
+            set {
+                this.kf_ProductInBill_SaveAutoAddnewField = value;
+            }
+        }
+        
+        /// <remarks/>
         public string Kf_ProductInBill_ERPMode {
             get {
                 return this.kf_ProductInBill_ERPModeField;
@@ -37836,6 +38111,16 @@
             }
             set {
                 this.kf_OtherInBill_AutoCheckField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Kf_OtherInBill_SaveAutoAddnew {
+            get {
+                return this.kf_OtherInBill_SaveAutoAddnewField;
+            }
+            set {
+                this.kf_OtherInBill_SaveAutoAddnewField = value;
             }
         }
         
@@ -37980,6 +38265,16 @@
         }
         
         /// <remarks/>
+        public string Kf_EntrustInBill_SaveAutoAddnew {
+            get {
+                return this.kf_EntrustInBill_SaveAutoAddnewField;
+            }
+            set {
+                this.kf_EntrustInBill_SaveAutoAddnewField = value;
+            }
+        }
+        
+        /// <remarks/>
         public string Kf_EntrustInBill_ERPMode {
             get {
                 return this.kf_EntrustInBill_ERPModeField;
@@ -38086,6 +38381,16 @@
             }
             set {
                 this.kf_MateOutBill_AutoCheckField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Kf_MateOutBill_SaveAutoAddnew {
+            get {
+                return this.kf_MateOutBill_SaveAutoAddnewField;
+            }
+            set {
+                this.kf_MateOutBill_SaveAutoAddnewField = value;
             }
         }
         
@@ -38256,6 +38561,16 @@
             }
             set {
                 this.kf_SellOutBill_AutoCheckField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Kf_SellOutBill_SaveAutoAddnew {
+            get {
+                return this.kf_SellOutBill_SaveAutoAddnewField;
+            }
+            set {
+                this.kf_SellOutBill_SaveAutoAddnewField = value;
             }
         }
         
@@ -38450,6 +38765,16 @@
         }
         
         /// <remarks/>
+        public string Kf_OtherOutBill_SaveAutoAddnew {
+            get {
+                return this.kf_OtherOutBill_SaveAutoAddnewField;
+            }
+            set {
+                this.kf_OtherOutBill_SaveAutoAddnewField = value;
+            }
+        }
+        
+        /// <remarks/>
         public string Kf_OtherOutBill_ERPMode {
             get {
                 return this.kf_OtherOutBill_ERPModeField;
@@ -38596,6 +38921,16 @@
             }
             set {
                 this.kf_EntrustOutBill_AutoCheckField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Kf_EntrustOutBill_SaveAutoAddnew {
+            get {
+                return this.kf_EntrustOutBill_SaveAutoAddnewField;
+            }
+            set {
+                this.kf_EntrustOutBill_SaveAutoAddnewField = value;
             }
         }
         
@@ -38760,6 +39095,16 @@
         }
         
         /// <remarks/>
+        public string Kf_MateReplenishOutBill_SaveAutoAddnew {
+            get {
+                return this.kf_MateReplenishOutBill_SaveAutoAddnewField;
+            }
+            set {
+                this.kf_MateReplenishOutBill_SaveAutoAddnewField = value;
+            }
+        }
+        
+        /// <remarks/>
         public string Kf_MateReplenishOutBill_ERPMode {
             get {
                 return this.kf_MateReplenishOutBill_ERPModeField;
@@ -38840,6 +39185,26 @@
         }
         
         /// <remarks/>
+        public string Kf_MateReplenishOutBill_FIFOList {
+            get {
+                return this.kf_MateReplenishOutBill_FIFOListField;
+            }
+            set {
+                this.kf_MateReplenishOutBill_FIFOListField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Kf_MateReplenishOutBill_FIFOCtl {
+            get {
+                return this.kf_MateReplenishOutBill_FIFOCtlField;
+            }
+            set {
+                this.kf_MateReplenishOutBill_FIFOCtlField = value;
+            }
+        }
+        
+        /// <remarks/>
         public string Kf_MateReplenishOutBill_DeleterAndMakerMustSame {
             get {
                 return this.kf_MateReplenishOutBill_DeleterAndMakerMustSameField;
@@ -38886,6 +39251,16 @@
             }
             set {
                 this.kf_EntrustReplenishOutBill_AutoCheckField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Kf_EntrustReplenishOutBill_SaveAutoAddnew {
+            get {
+                return this.kf_EntrustReplenishOutBill_SaveAutoAddnewField;
+            }
+            set {
+                this.kf_EntrustReplenishOutBill_SaveAutoAddnewField = value;
             }
         }
         
@@ -38970,6 +39345,26 @@
         }
         
         /// <remarks/>
+        public string Kf_EntrustReplenishOutBill_FIFOList {
+            get {
+                return this.kf_EntrustReplenishOutBill_FIFOListField;
+            }
+            set {
+                this.kf_EntrustReplenishOutBill_FIFOListField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Kf_EntrustReplenishOutBill_FIFOCtl {
+            get {
+                return this.kf_EntrustReplenishOutBill_FIFOCtlField;
+            }
+            set {
+                this.kf_EntrustReplenishOutBill_FIFOCtlField = value;
+            }
+        }
+        
+        /// <remarks/>
         public string Kf_EntrustReplenishOutBill_DeleterAndMakerMustSame {
             get {
                 return this.kf_EntrustReplenishOutBill_DeleterAndMakerMustSameField;
@@ -39016,6 +39411,16 @@
             }
             set {
                 this.kf_MoveStockBill_AutoCheckField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Kf_MoveStockBill_SaveAutoAddnew {
+            get {
+                return this.kf_MoveStockBill_SaveAutoAddnewField;
+            }
+            set {
+                this.kf_MoveStockBill_SaveAutoAddnewField = value;
             }
         }
         
@@ -39180,6 +39585,16 @@
         }
         
         /// <remarks/>
+        public string Kf_MoveStockStepOutBill_SaveAutoAddnew {
+            get {
+                return this.kf_MoveStockStepOutBill_SaveAutoAddnewField;
+            }
+            set {
+                this.kf_MoveStockStepOutBill_SaveAutoAddnewField = value;
+            }
+        }
+        
+        /// <remarks/>
         public string Kf_MoveStockStepOutBill_ERPMode {
             get {
                 return this.kf_MoveStockStepOutBill_ERPModeField;
@@ -39296,6 +39711,16 @@
             }
             set {
                 this.kf_MoveStockStepInBill_AutoCheckField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Kf_MoveStockStepInBill_SaveAutoAddnew {
+            get {
+                return this.kf_MoveStockStepInBill_SaveAutoAddnewField;
+            }
+            set {
+                this.kf_MoveStockStepInBill_SaveAutoAddnewField = value;
             }
         }
         
@@ -39430,6 +39855,16 @@
         }
         
         /// <remarks/>
+        public string Kf_POStockInBackBill_SaveAutoAddnew {
+            get {
+                return this.kf_POStockInBackBill_SaveAutoAddnewField;
+            }
+            set {
+                this.kf_POStockInBackBill_SaveAutoAddnewField = value;
+            }
+        }
+        
+        /// <remarks/>
         public string Kf_POStockInBackBill_ERPMode {
             get {
                 return this.kf_POStockInBackBill_ERPModeField;
@@ -39526,6 +39961,16 @@
             }
             set {
                 this.kf_ProductInBackBill_AutoCheckField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Kf_ProductInBackBill_SaveAutoAddnew {
+            get {
+                return this.kf_ProductInBackBill_SaveAutoAddnewField;
+            }
+            set {
+                this.kf_ProductInBackBill_SaveAutoAddnewField = value;
             }
         }
         
@@ -39630,6 +40075,16 @@
         }
         
         /// <remarks/>
+        public string Kf_OtherInBackBill_SaveAutoAddnew {
+            get {
+                return this.kf_OtherInBackBill_SaveAutoAddnewField;
+            }
+            set {
+                this.kf_OtherInBackBill_SaveAutoAddnewField = value;
+            }
+        }
+        
+        /// <remarks/>
         public string Kf_OtherInBackBill_ERPMode {
             get {
                 return this.kf_OtherInBackBill_ERPModeField;
@@ -39730,6 +40185,16 @@
         }
         
         /// <remarks/>
+        public string Kf_EntrustInBackBill_SaveAutoAddnew {
+            get {
+                return this.kf_EntrustInBackBill_SaveAutoAddnewField;
+            }
+            set {
+                this.kf_EntrustInBackBill_SaveAutoAddnewField = value;
+            }
+        }
+        
+        /// <remarks/>
         public string Kf_EntrustInBackBill_ERPMode {
             get {
                 return this.kf_EntrustInBackBill_ERPModeField;
@@ -39826,6 +40291,16 @@
             }
             set {
                 this.kf_MateOutBackBill_AutoCheckField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Kf_MateOutBackBill_SaveAutoAddnew {
+            get {
+                return this.kf_MateOutBackBill_SaveAutoAddnewField;
+            }
+            set {
+                this.kf_MateOutBackBill_SaveAutoAddnewField = value;
             }
         }
         
@@ -39940,6 +40415,16 @@
         }
         
         /// <remarks/>
+        public string Kf_SellOutBackBill_SaveAutoAddnew {
+            get {
+                return this.kf_SellOutBackBill_SaveAutoAddnewField;
+            }
+            set {
+                this.kf_SellOutBackBill_SaveAutoAddnewField = value;
+            }
+        }
+        
+        /// <remarks/>
         public string Kf_SellOutBackBill_ERPMode {
             get {
                 return this.kf_SellOutBackBill_ERPModeField;
@@ -40050,6 +40535,16 @@
         }
         
         /// <remarks/>
+        public string Kf_OtherOutBackBill_SaveAutoAddnew {
+            get {
+                return this.kf_OtherOutBackBill_SaveAutoAddnewField;
+            }
+            set {
+                this.kf_OtherOutBackBill_SaveAutoAddnewField = value;
+            }
+        }
+        
+        /// <remarks/>
         public string Kf_OtherOutBackBill_ERPMode {
             get {
                 return this.kf_OtherOutBackBill_ERPModeField;
@@ -40146,6 +40641,16 @@
             }
             set {
                 this.kf_EntrustOutBackBill_AutoCheckField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Kf_EntrustOutBackBill_SaveAutoAddnew {
+            get {
+                return this.kf_EntrustOutBackBill_SaveAutoAddnewField;
+            }
+            set {
+                this.kf_EntrustOutBackBill_SaveAutoAddnewField = value;
             }
         }
         
@@ -40250,6 +40755,26 @@
         }
         
         /// <remarks/>
+        public string Sc_PackUnionBill_AutoCheck {
+            get {
+                return this.sc_PackUnionBill_AutoCheckField;
+            }
+            set {
+                this.sc_PackUnionBill_AutoCheckField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Sc_PackUnionBill_SaveAutoAddnew {
+            get {
+                return this.sc_PackUnionBill_SaveAutoAddnewField;
+            }
+            set {
+                this.sc_PackUnionBill_SaveAutoAddnewField = value;
+            }
+        }
+        
+        /// <remarks/>
         public string Sc_PackUnionBill_SourceBillTypeCtl {
             get {
                 return this.sc_PackUnionBill_SourceBillTypeCtlField;
@@ -40266,6 +40791,16 @@
             }
             set {
                 this.sc_PackUnionBill_SourceBillNoCtlField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Sc_PackUnionBill_DeleterAndMakerMustSame {
+            get {
+                return this.sc_PackUnionBill_DeleterAndMakerMustSameField;
+            }
+            set {
+                this.sc_PackUnionBill_DeleterAndMakerMustSameField = value;
             }
         }
         
@@ -40510,6 +41045,26 @@
         }
         
         /// <remarks/>
+        public string Sc_ICMOBill_AutoCheck {
+            get {
+                return this.sc_ICMOBill_AutoCheckField;
+            }
+            set {
+                this.sc_ICMOBill_AutoCheckField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Sc_ICMOBill_SaveAutoAddnew {
+            get {
+                return this.sc_ICMOBill_SaveAutoAddnewField;
+            }
+            set {
+                this.sc_ICMOBill_SaveAutoAddnewField = value;
+            }
+        }
+        
+        /// <remarks/>
         public string Sc_ICMOBill_AutoProcExchBill {
             get {
                 return this.sc_ICMOBill_AutoProcExchBillField;
@@ -40520,12 +41075,62 @@
         }
         
         /// <remarks/>
+        public string Sc_ICMOBill_DeleterAndMakerMustSame {
+            get {
+                return this.sc_ICMOBill_DeleterAndMakerMustSameField;
+            }
+            set {
+                this.sc_ICMOBill_DeleterAndMakerMustSameField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Sc_ProcessExchangeBill_AutoCheck {
+            get {
+                return this.sc_ProcessExchangeBill_AutoCheckField;
+            }
+            set {
+                this.sc_ProcessExchangeBill_AutoCheckField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Sc_ProcessExchangeBill_SaveAutoAddnew {
+            get {
+                return this.sc_ProcessExchangeBill_SaveAutoAddnewField;
+            }
+            set {
+                this.sc_ProcessExchangeBill_SaveAutoAddnewField = value;
+            }
+        }
+        
+        /// <remarks/>
         public string Sc_ProcessExchangeBill_AutoBarCode {
             get {
                 return this.sc_ProcessExchangeBill_AutoBarCodeField;
             }
             set {
                 this.sc_ProcessExchangeBill_AutoBarCodeField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Sc_ProcessExchangeBill_DeleterAndMakerMustSame {
+            get {
+                return this.sc_ProcessExchangeBill_DeleterAndMakerMustSameField;
+            }
+            set {
+                this.sc_ProcessExchangeBill_DeleterAndMakerMustSameField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string MES_StationInBill_AutoCheck {
+            get {
+                return this.mES_StationInBill_AutoCheckField;
+            }
+            set {
+                this.mES_StationInBill_AutoCheckField = value;
             }
         }
         
@@ -40656,6 +41261,36 @@
             }
             set {
                 this.mES_StationInBill_PreQtyCtlField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string MES_StationInBill_QtyRateCtl {
+            get {
+                return this.mES_StationInBill_QtyRateCtlField;
+            }
+            set {
+                this.mES_StationInBill_QtyRateCtlField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string MES_StationInBill_DyCentralInspectionControl {
+            get {
+                return this.mES_StationInBill_DyCentralInspectionControlField;
+            }
+            set {
+                this.mES_StationInBill_DyCentralInspectionControlField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string MES_StationOutBill_AutoCheck {
+            get {
+                return this.mES_StationOutBill_AutoCheckField;
+            }
+            set {
+                this.mES_StationOutBill_AutoCheckField = value;
             }
         }
         
@@ -40810,6 +41445,26 @@
         }
         
         /// <remarks/>
+        public string MES_StationOutBill_QtyRateCtl {
+            get {
+                return this.mES_StationOutBill_QtyRateCtlField;
+            }
+            set {
+                this.mES_StationOutBill_QtyRateCtlField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string QC_NoPassProdCheckBill_AutoCheck {
+            get {
+                return this.qC_NoPassProdCheckBill_AutoCheckField;
+            }
+            set {
+                this.qC_NoPassProdCheckBill_AutoCheckField = value;
+            }
+        }
+        
+        /// <remarks/>
         public string QC_NoPassProdCheckBill_QtyCtl {
             get {
                 return this.qC_NoPassProdCheckBill_QtyCtlField;
@@ -40836,6 +41491,16 @@
             }
             set {
                 this.qC_NoPassProdCheckBill_DeleteCtlField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string MES_StationEntrustInBill_AutoCheck {
+            get {
+                return this.mES_StationEntrustInBill_AutoCheckField;
+            }
+            set {
+                this.mES_StationEntrustInBill_AutoCheckField = value;
             }
         }
         
@@ -40900,6 +41565,26 @@
         }
         
         /// <remarks/>
+        public string MES_StationEntrustInBill_QtyRateCtl {
+            get {
+                return this.mES_StationEntrustInBill_QtyRateCtlField;
+            }
+            set {
+                this.mES_StationEntrustInBill_QtyRateCtlField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string MES_StationEntrustOutBill_AutoCheck {
+            get {
+                return this.mES_StationEntrustOutBill_AutoCheckField;
+            }
+            set {
+                this.mES_StationEntrustOutBill_AutoCheckField = value;
+            }
+        }
+        
+        /// <remarks/>
         public string MES_StationEntrustOutBill_QtyCtl {
             get {
                 return this.mES_StationEntrustOutBill_QtyCtlField;
@@ -40930,12 +41615,42 @@
         }
         
         /// <remarks/>
+        public string MES_StationEntrustOutBill_QtyRateCtl {
+            get {
+                return this.mES_StationEntrustOutBill_QtyRateCtlField;
+            }
+            set {
+                this.mES_StationEntrustOutBill_QtyRateCtlField = value;
+            }
+        }
+        
+        /// <remarks/>
         public string Sc_MESBeginWorkBill_AutoCheck {
             get {
                 return this.sc_MESBeginWorkBill_AutoCheckField;
             }
             set {
                 this.sc_MESBeginWorkBill_AutoCheckField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Sc_MESBeginWorkBill_SaveAutoAddnew {
+            get {
+                return this.sc_MESBeginWorkBill_SaveAutoAddnewField;
+            }
+            set {
+                this.sc_MESBeginWorkBill_SaveAutoAddnewField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Sc_MESBeginWorkBill_DeleterAndMakerMustSame {
+            get {
+                return this.sc_MESBeginWorkBill_DeleterAndMakerMustSameField;
+            }
+            set {
+                this.sc_MESBeginWorkBill_DeleterAndMakerMustSameField = value;
             }
         }
         
@@ -40950,12 +41665,52 @@
         }
         
         /// <remarks/>
+        public string Sc_MESReturnWorkBill_SaveAutoAddnew {
+            get {
+                return this.sc_MESReturnWorkBill_SaveAutoAddnewField;
+            }
+            set {
+                this.sc_MESReturnWorkBill_SaveAutoAddnewField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Sc_MESReturnWorkBill_DeleterAndMakerMustSame {
+            get {
+                return this.sc_MESReturnWorkBill_DeleterAndMakerMustSameField;
+            }
+            set {
+                this.sc_MESReturnWorkBill_DeleterAndMakerMustSameField = value;
+            }
+        }
+        
+        /// <remarks/>
         public string Sc_MESEndWorkBill_AutoCheck {
             get {
                 return this.sc_MESEndWorkBill_AutoCheckField;
             }
             set {
                 this.sc_MESEndWorkBill_AutoCheckField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Sc_MESEndWorkBill_SaveAutoAddnew {
+            get {
+                return this.sc_MESEndWorkBill_SaveAutoAddnewField;
+            }
+            set {
+                this.sc_MESEndWorkBill_SaveAutoAddnewField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Sc_MESEndWorkBill_DeleterAndMakerMustSame {
+            get {
+                return this.sc_MESEndWorkBill_DeleterAndMakerMustSameField;
+            }
+            set {
+                this.sc_MESEndWorkBill_DeleterAndMakerMustSameField = value;
             }
         }
         
@@ -40970,12 +41725,62 @@
         }
         
         /// <remarks/>
+        public string Sc_MESStopWorkBill_SaveAutoAddnew {
+            get {
+                return this.sc_MESStopWorkBill_SaveAutoAddnewField;
+            }
+            set {
+                this.sc_MESStopWorkBill_SaveAutoAddnewField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Sc_MESStopWorkBill_DeleterAndMakerMustSame {
+            get {
+                return this.sc_MESStopWorkBill_DeleterAndMakerMustSameField;
+            }
+            set {
+                this.sc_MESStopWorkBill_DeleterAndMakerMustSameField = value;
+            }
+        }
+        
+        /// <remarks/>
         public string Sc_ICMOBillWorkQtyStatus_AutoCheck {
             get {
                 return this.sc_ICMOBillWorkQtyStatus_AutoCheckField;
             }
             set {
                 this.sc_ICMOBillWorkQtyStatus_AutoCheckField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Sc_ICMOBillWorkQtyStatus_SaveAutoAddnew {
+            get {
+                return this.sc_ICMOBillWorkQtyStatus_SaveAutoAddnewField;
+            }
+            set {
+                this.sc_ICMOBillWorkQtyStatus_SaveAutoAddnewField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Sc_ICMOBillWorkQtyStatus_DeleterAndMakerMustSame {
+            get {
+                return this.sc_ICMOBillWorkQtyStatus_DeleterAndMakerMustSameField;
+            }
+            set {
+                this.sc_ICMOBillWorkQtyStatus_DeleterAndMakerMustSameField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Sc_ICMOBillWorkQtyStatus_AutoNextWorkBill {
+            get {
+                return this.sc_ICMOBillWorkQtyStatus_AutoNextWorkBillField;
+            }
+            set {
+                this.sc_ICMOBillWorkQtyStatus_AutoNextWorkBillField = value;
             }
         }
         
@@ -40990,12 +41795,52 @@
         }
         
         /// <remarks/>
+        public string Sc_ICMOBillQualityStatus_SaveAutoAddnew {
+            get {
+                return this.sc_ICMOBillQualityStatus_SaveAutoAddnewField;
+            }
+            set {
+                this.sc_ICMOBillQualityStatus_SaveAutoAddnewField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Sc_ICMOBillQualityStatus_DeleterAndMakerMustSame {
+            get {
+                return this.sc_ICMOBillQualityStatus_DeleterAndMakerMustSameField;
+            }
+            set {
+                this.sc_ICMOBillQualityStatus_DeleterAndMakerMustSameField = value;
+            }
+        }
+        
+        /// <remarks/>
         public string Sc_MaterToSourceBill_AutoCheck {
             get {
                 return this.sc_MaterToSourceBill_AutoCheckField;
             }
             set {
                 this.sc_MaterToSourceBill_AutoCheckField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Sc_MaterToSourceBill_SaveAutoAddnew {
+            get {
+                return this.sc_MaterToSourceBill_SaveAutoAddnewField;
+            }
+            set {
+                this.sc_MaterToSourceBill_SaveAutoAddnewField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Sc_MaterToSourceBill_DeleterAndMakerMustSame {
+            get {
+                return this.sc_MaterToSourceBill_DeleterAndMakerMustSameField;
+            }
+            set {
+                this.sc_MaterToSourceBill_DeleterAndMakerMustSameField = value;
             }
         }
         
@@ -41030,6 +41875,26 @@
         }
         
         /// <remarks/>
+        public string OA_ErrMsgBackBill_SaveAutoAddnew {
+            get {
+                return this.oA_ErrMsgBackBill_SaveAutoAddnewField;
+            }
+            set {
+                this.oA_ErrMsgBackBill_SaveAutoAddnewField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string OA_ErrMsgBackBill_DeleterAndMakerMustSame {
+            get {
+                return this.oA_ErrMsgBackBill_DeleterAndMakerMustSameField;
+            }
+            set {
+                this.oA_ErrMsgBackBill_DeleterAndMakerMustSameField = value;
+            }
+        }
+        
+        /// <remarks/>
         public string Sc_MESProceReportWorkBill_AutoCheck {
             get {
                 return this.sc_MESProceReportWorkBill_AutoCheckField;
@@ -41040,12 +41905,142 @@
         }
         
         /// <remarks/>
+        public string Sc_MESProceReportWorkBill_SaveAutoAddnew {
+            get {
+                return this.sc_MESProceReportWorkBill_SaveAutoAddnewField;
+            }
+            set {
+                this.sc_MESProceReportWorkBill_SaveAutoAddnewField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Sc_MESProceReportWorkBill_DeleterAndMakerMustSame {
+            get {
+                return this.sc_MESProceReportWorkBill_DeleterAndMakerMustSameField;
+            }
+            set {
+                this.sc_MESProceReportWorkBill_DeleterAndMakerMustSameField = value;
+            }
+        }
+        
+        /// <remarks/>
         public string QC_FirstPieceCheckBill_AutoCheck {
             get {
                 return this.qC_FirstPieceCheckBill_AutoCheckField;
             }
             set {
                 this.qC_FirstPieceCheckBill_AutoCheckField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string QC_FirstPieceCheckBill_SaveAutoAddnew {
+            get {
+                return this.qC_FirstPieceCheckBill_SaveAutoAddnewField;
+            }
+            set {
+                this.qC_FirstPieceCheckBill_SaveAutoAddnewField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string QC_FirstPieceCheckBill_DeleterAndMakerMustSame {
+            get {
+                return this.qC_FirstPieceCheckBill_DeleterAndMakerMustSameField;
+            }
+            set {
+                this.qC_FirstPieceCheckBill_DeleterAndMakerMustSameField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string QC_FirstPieceCheckBill_QCSchemeSource {
+            get {
+                return this.qC_FirstPieceCheckBill_QCSchemeSourceField;
+            }
+            set {
+                this.qC_FirstPieceCheckBill_QCSchemeSourceField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string QC_PatrolProcCheckBill_AutoCheck {
+            get {
+                return this.qC_PatrolProcCheckBill_AutoCheckField;
+            }
+            set {
+                this.qC_PatrolProcCheckBill_AutoCheckField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string QC_PatrolProcCheckBill_SaveAutoAddnew {
+            get {
+                return this.qC_PatrolProcCheckBill_SaveAutoAddnewField;
+            }
+            set {
+                this.qC_PatrolProcCheckBill_SaveAutoAddnewField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string QC_PatrolProcCheckBill_DeleterAndMakerMustSame {
+            get {
+                return this.qC_PatrolProcCheckBill_DeleterAndMakerMustSameField;
+            }
+            set {
+                this.qC_PatrolProcCheckBill_DeleterAndMakerMustSameField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string QC_PatrolProcCheckBill_QCSchemeSource {
+            get {
+                return this.qC_PatrolProcCheckBill_QCSchemeSourceField;
+            }
+            set {
+                this.qC_PatrolProcCheckBill_QCSchemeSourceField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string QC_ProcessCheckBill_AutoCheck {
+            get {
+                return this.qC_ProcessCheckBill_AutoCheckField;
+            }
+            set {
+                this.qC_ProcessCheckBill_AutoCheckField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string QC_ProcessCheckBill_SaveAutoAddnew {
+            get {
+                return this.qC_ProcessCheckBill_SaveAutoAddnewField;
+            }
+            set {
+                this.qC_ProcessCheckBill_SaveAutoAddnewField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string QC_ProcessCheckBill_DeleterAndMakerMustSame {
+            get {
+                return this.qC_ProcessCheckBill_DeleterAndMakerMustSameField;
+            }
+            set {
+                this.qC_ProcessCheckBill_DeleterAndMakerMustSameField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string QC_ProcessCheckBill_QCSchemeSource {
+            get {
+                return this.qC_ProcessCheckBill_QCSchemeSourceField;
+            }
+            set {
+                this.qC_ProcessCheckBill_QCSchemeSourceField = value;
             }
         }
         
@@ -41070,6 +42065,16 @@
         }
         
         /// <remarks/>
+        public string Sc_MouldProdOutBill_DeleterAndMakerMustSame {
+            get {
+                return this.sc_MouldProdOutBill_DeleterAndMakerMustSameField;
+            }
+            set {
+                this.sc_MouldProdOutBill_DeleterAndMakerMustSameField = value;
+            }
+        }
+        
+        /// <remarks/>
         public string Sc_MouldProdOutBill_MouldLifeCtrl {
             get {
                 return this.sc_MouldProdOutBill_MouldLifeCtrlField;
@@ -41086,6 +42091,36 @@
             }
             set {
                 this.sc_MouldProdOutBill_MouldLifeCtrlTypeField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Gy_RoutingBill_AutoCheck {
+            get {
+                return this.gy_RoutingBill_AutoCheckField;
+            }
+            set {
+                this.gy_RoutingBill_AutoCheckField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Gy_RoutingBill_SaveAutoAddnew {
+            get {
+                return this.gy_RoutingBill_SaveAutoAddnewField;
+            }
+            set {
+                this.gy_RoutingBill_SaveAutoAddnewField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Gy_RoutingBill_DeleterAndMakerMustSame {
+            get {
+                return this.gy_RoutingBill_DeleterAndMakerMustSameField;
+            }
+            set {
+                this.gy_RoutingBill_DeleterAndMakerMustSameField = value;
             }
         }
         
@@ -48516,6 +49551,40 @@
     
     /// <remarks/>
     [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3752.0")]
+    public delegate void set_DelSc_MouldStockBillMain_TempCompletedEventHandler(object sender, set_DelSc_MouldStockBillMain_TempCompletedEventArgs e);
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3752.0")]
+    [System.Diagnostics.DebuggerStepThroughAttribute()]
+    [System.ComponentModel.DesignerCategoryAttribute("code")]
+    public partial class set_DelSc_MouldStockBillMain_TempCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
+        
+        private object[] results;
+        
+        internal set_DelSc_MouldStockBillMain_TempCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
+                base(exception, cancelled, userState) {
+            this.results = results;
+        }
+        
+        /// <remarks/>
+        public bool Result {
+            get {
+                this.RaiseExceptionIfNecessary();
+                return ((bool)(this.results[0]));
+            }
+        }
+        
+        /// <remarks/>
+        public string sErrMsg {
+            get {
+                this.RaiseExceptionIfNecessary();
+                return ((string)(this.results[1]));
+            }
+        }
+    }
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3752.0")]
     public delegate void set_SaveMouldStockBill_NewCompletedEventHandler(object sender, set_SaveMouldStockBill_NewCompletedEventArgs e);
     
     /// <remarks/>
@@ -53220,6 +54289,40 @@
     
     /// <remarks/>
     [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3752.0")]
+    public delegate void get_SourceBarCode_MateReplenishOutCompletedEventHandler(object sender, get_SourceBarCode_MateReplenishOutCompletedEventArgs e);
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3752.0")]
+    [System.Diagnostics.DebuggerStepThroughAttribute()]
+    [System.ComponentModel.DesignerCategoryAttribute("code")]
+    public partial class get_SourceBarCode_MateReplenishOutCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
+        
+        private object[] results;
+        
+        internal get_SourceBarCode_MateReplenishOutCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
+                base(exception, cancelled, userState) {
+            this.results = results;
+        }
+        
+        /// <remarks/>
+        public ClsKf_ICStockBill_WMS Result {
+            get {
+                this.RaiseExceptionIfNecessary();
+                return ((ClsKf_ICStockBill_WMS)(this.results[0]));
+            }
+        }
+        
+        /// <remarks/>
+        public string sErrMsg {
+            get {
+                this.RaiseExceptionIfNecessary();
+                return ((string)(this.results[1]));
+            }
+        }
+    }
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3752.0")]
     public delegate void get_SourceBarCode_MoveStockCompletedEventHandler(object sender, get_SourceBarCode_MoveStockCompletedEventArgs e);
     
     /// <remarks/>
@@ -53890,40 +54993,6 @@
             get {
                 this.RaiseExceptionIfNecessary();
                 return ((System.Data.DataSet)(this.results[0]));
-            }
-        }
-        
-        /// <remarks/>
-        public string sErrMsg {
-            get {
-                this.RaiseExceptionIfNecessary();
-                return ((string)(this.results[1]));
-            }
-        }
-    }
-    
-    /// <remarks/>
-    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3752.0")]
-    public delegate void set_DelSc_MouldStockBillMain_TempCompletedEventHandler(object sender, set_DelSc_MouldStockBillMain_TempCompletedEventArgs e);
-    
-    /// <remarks/>
-    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3752.0")]
-    [System.Diagnostics.DebuggerStepThroughAttribute()]
-    [System.ComponentModel.DesignerCategoryAttribute("code")]
-    public partial class set_DelSc_MouldStockBillMain_TempCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
-        
-        private object[] results;
-        
-        internal set_DelSc_MouldStockBillMain_TempCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
-                base(exception, cancelled, userState) {
-            this.results = results;
-        }
-        
-        /// <remarks/>
-        public bool Result {
-            get {
-                this.RaiseExceptionIfNecessary();
-                return ((bool)(this.results[0]));
             }
         }
         
diff --git a/WebAPI/Web References/WebS/WebService1.wsdl b/WebAPI/Web References/WebS/WebService1.wsdl
index 6de8fc9..91a31b4 100644
--- a/WebAPI/Web References/WebS/WebService1.wsdl
+++ b/WebAPI/Web References/WebS/WebService1.wsdl
@@ -2,6 +2,24 @@
 <wsdl:definitions xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://tempuri.org/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" targetNamespace="http://tempuri.org/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
   <wsdl:types>
     <s:schema elementFormDefault="qualified" targetNamespace="http://tempuri.org/">
+      <s:element name="set_DelSc_MouldStockBillMain_Temp">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="1" maxOccurs="1" name="HInterID" type="s:long" />
+            <s:element minOccurs="1" maxOccurs="1" name="HMouldInterID" type="s:long" />
+            <s:element minOccurs="0" maxOccurs="1" name="sHBillType" type="s:string" />
+            <s:element minOccurs="0" maxOccurs="1" name="sErrMsg" type="s:string" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:element name="set_DelSc_MouldStockBillMain_TempResponse">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="1" maxOccurs="1" name="set_DelSc_MouldStockBillMain_TempResult" type="s:boolean" />
+            <s:element minOccurs="0" maxOccurs="1" name="sErrMsg" type="s:string" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
       <s:element name="set_SaveMouldStockBill_New">
         <s:complexType>
           <s:sequence>
@@ -1034,6 +1052,7 @@
       <s:complexType name="ClsXt_SystemParameterMain">
         <s:sequence>
           <s:element minOccurs="0" maxOccurs="1" name="Sc_ICMOReportBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Sc_ICMOReportBill_SaveAutoAddnew" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Sc_ICMOReportBill_ERPMode" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Sc_ICMOReportBill_MustQtyCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Sc_ICMOReportBill_MulSourceBill" type="s:string" />
@@ -1046,11 +1065,15 @@
           <s:element minOccurs="0" maxOccurs="1" name="Sc_ICMOReportBill_UpdateSourceInterID" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Sc_ICMOReportBill_MESFlag" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Sc_ICMOReportBill_FirstCheckOut" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Sc_ICMOReportBill_ProcessCheckOut" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Sc_ICMOReportBill_DeleterAndMakerMustSame" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Cg_POInStockBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Cg_POInStockBill_SaveAutoAddnew" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Cg_POInStockBill_ERPMode" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Cg_POInStockBill_BarCodeCtl" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Cg_POInStockBill_DeleterAndMakerMustSame" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_POStockInBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Kf_POStockInBill_SaveAutoAddnew" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_POStockInBill_ERPMode" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_POStockInBill_MustQtyCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_POStockInBill_MulSourceBill" type="s:string" />
@@ -1063,6 +1086,7 @@
           <s:element minOccurs="0" maxOccurs="1" name="Kf_POStockInBill_AutoBarCode" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_POStockInBill_DeleterAndMakerMustSame" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_ProductInBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Kf_ProductInBill_SaveAutoAddnew" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_ProductInBill_ERPMode" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_ProductInBill_MustQtyCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_ProductInBill_MulSourceBill" type="s:string" />
@@ -1075,6 +1099,7 @@
           <s:element minOccurs="0" maxOccurs="1" name="Kf_ProductInBill_Display" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_ProductInBill_DeleterAndMakerMustSame" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_OtherInBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Kf_OtherInBill_SaveAutoAddnew" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_OtherInBill_ERPMode" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_OtherInBill_MustQtyCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_OtherInBill_MulSourceBill" type="s:string" />
@@ -1089,6 +1114,7 @@
           <s:element minOccurs="0" maxOccurs="1" name="Kf_OtherInBillCheck_WHSPCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_OtherInBillCheck_MultilineCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustInBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustInBill_SaveAutoAddnew" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustInBill_ERPMode" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustInBill_MustQtyCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustInBill_MulSourceBill" type="s:string" />
@@ -1100,6 +1126,7 @@
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustInBill_SourceWHSPCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustInBill_DeleterAndMakerMustSame" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MateOutBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Kf_MateOutBill_SaveAutoAddnew" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MateOutBill_ERPMode" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MateOutBill_MustQtyCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MateOutBill_MulSourceBill" type="s:string" />
@@ -1117,6 +1144,7 @@
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MateOutBillCheck_WHSPCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MateOutBillCheck_MultilineCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_SellOutBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Kf_SellOutBill_SaveAutoAddnew" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_SellOutBill_ERPMode" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_SellOutBill_MustQtyCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_SellOutBill_MulSourceBill" type="s:string" />
@@ -1136,6 +1164,7 @@
           <s:element minOccurs="0" maxOccurs="1" name="Kf_SellOutBillCheck_MultilineCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_SellOutBillCheck_SourceBarCodeCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_OtherOutBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Kf_OtherOutBill_SaveAutoAddnew" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_OtherOutBill_ERPMode" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_OtherOutBill_MustQtyCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_OtherOutBill_MulSourceBill" type="s:string" />
@@ -1151,6 +1180,7 @@
           <s:element minOccurs="0" maxOccurs="1" name="Kf_OtherOutBillCheck_WHSPCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_OtherOutBillCheck_MultilineCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustOutBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustOutBill_SaveAutoAddnew" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustOutBill_ERPMode" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustOutBill_MustQtyCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustOutBill_MulSourceBill" type="s:string" />
@@ -1167,6 +1197,7 @@
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustOutBillCheck_WHSPCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustOutBillCheck_MultilineCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MateReplenishOutBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Kf_MateReplenishOutBill_SaveAutoAddnew" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MateReplenishOutBill_ERPMode" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MateReplenishOutBill_MustQtyCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MateReplenishOutBill_MulSourceBill" type="s:string" />
@@ -1175,11 +1206,14 @@
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MateReplenishOutBill_MultilineCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MateReplenishOutBill_MaterWHSPCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MateReplenishOutBill_SourceWHSPCtl" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Kf_MateReplenishOutBill_FIFOList" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Kf_MateReplenishOutBill_FIFOCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MateReplenishOutBill_DeleterAndMakerMustSame" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MateReplenishOutBillCheck_MustQtyCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MateReplenishOutBillCheck_WHSPCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MateReplenishOutBillCheck_MultilineCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustReplenishOutBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustReplenishOutBill_SaveAutoAddnew" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustReplenishOutBill_ERPMode" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustReplenishOutBill_MustQtyCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustReplenishOutBill_MulSourceBill" type="s:string" />
@@ -1188,11 +1222,14 @@
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustReplenishOutBill_MultilineCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustReplenishOutBill_MaterWHSPCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustReplenishOutBill_SourceWHSPCtl" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustReplenishOutBill_FIFOList" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustReplenishOutBill_FIFOCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustReplenishOutBill_DeleterAndMakerMustSame" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustReplenishOutBillCheck_MustQtyCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustReplenishOutBillCheck_WHSPCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustReplenishOutBillCheck_MultilineCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MoveStockBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Kf_MoveStockBill_SaveAutoAddnew" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MoveStockBill_ERPMode" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MoveStockBill_MustQtyCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MoveStockBill_MulSourceBill" type="s:string" />
@@ -1209,6 +1246,7 @@
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MoveStockBillCheck_WHSPCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MoveStockBillCheck_MultilineCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MoveStockStepOutBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Kf_MoveStockStepOutBill_SaveAutoAddnew" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MoveStockStepOutBill_ERPMode" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MoveStockStepOutBill_MustQtyCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MoveStockStepOutBill_MulSourceBill" type="s:string" />
@@ -1221,6 +1259,7 @@
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MoveStockStepOutBill_FIFOCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MoveStockStepOutBill_DeleterAndMakerMustSame" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MoveStockStepInBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Kf_MoveStockStepInBill_SaveAutoAddnew" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MoveStockStepInBill_ERPMode" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MoveStockStepInBill_MustQtyCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MoveStockStepInBill_MulSourceBill" type="s:string" />
@@ -1234,6 +1273,7 @@
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MoveStockStepInBill_SourceBarCodeCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MoveStockStepInBill_DeleterAndMakerMustSame" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_POStockInBackBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Kf_POStockInBackBill_SaveAutoAddnew" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_POStockInBackBill_ERPMode" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_POStockInBackBill_MustQtyCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_POStockInBackBill_MulSourceBill" type="s:string" />
@@ -1244,6 +1284,7 @@
           <s:element minOccurs="0" maxOccurs="1" name="Kf_POStockInBackBill_SourceWHSPCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_POStockInBackBill_DeleterAndMakerMustSame" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_ProductInBackBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Kf_ProductInBackBill_SaveAutoAddnew" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_ProductInBackBill_ERPMode" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_ProductInBackBill_MustQtyCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_ProductInBackBill_MulSourceBill" type="s:string" />
@@ -1254,6 +1295,7 @@
           <s:element minOccurs="0" maxOccurs="1" name="Kf_ProductInBackBill_SourceWHSPCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_ProductInBackBill_DeleterAndMakerMustSame" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_OtherInBackBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Kf_OtherInBackBill_SaveAutoAddnew" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_OtherInBackBill_ERPMode" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_OtherInBackBill_MustQtyCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_OtherInBackBill_MulSourceBill" type="s:string" />
@@ -1264,6 +1306,7 @@
           <s:element minOccurs="0" maxOccurs="1" name="Kf_OtherInBackBill_SourceWHSPCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_OtherInBackBill_DeleterAndMakerMustSame" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustInBackBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustInBackBill_SaveAutoAddnew" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustInBackBill_ERPMode" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustInBackBill_MustQtyCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustInBackBill_MulSourceBill" type="s:string" />
@@ -1274,6 +1317,7 @@
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustInBackBill_SourceWHSPCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustInBackBill_DeleterAndMakerMustSame" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MateOutBackBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Kf_MateOutBackBill_SaveAutoAddnew" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MateOutBackBill_ERPMode" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MateOutBackBill_MustQtyCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MateOutBackBill_MulSourceBill" type="s:string" />
@@ -1285,6 +1329,7 @@
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MateOutBackBill_SimpleMode" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_MateOutBackBill_DeleterAndMakerMustSame" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_SellOutBackBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Kf_SellOutBackBill_SaveAutoAddnew" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_SellOutBackBill_ERPMode" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_SellOutBackBill_MustQtyCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_SellOutBackBill_MulSourceBill" type="s:string" />
@@ -1296,6 +1341,7 @@
           <s:element minOccurs="0" maxOccurs="1" name="Kf_SellOutBackBill_AutoSavePOStockInBackBill" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_SellOutBackBill_DeleterAndMakerMustSame" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_OtherOutBackBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Kf_OtherOutBackBill_SaveAutoAddnew" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_OtherOutBackBill_ERPMode" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_OtherOutBackBill_MustQtyCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_OtherOutBackBill_MulSourceBill" type="s:string" />
@@ -1306,6 +1352,7 @@
           <s:element minOccurs="0" maxOccurs="1" name="Kf_OtherOutBackBill_SourceWHSPCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_OtherOutBackBill_DeleterAndMakerMustSame" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustOutBackBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustOutBackBill_SaveAutoAddnew" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustOutBackBill_ERPMode" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustOutBackBill_MustQtyCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustOutBackBill_MulSourceBill" type="s:string" />
@@ -1316,8 +1363,11 @@
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustOutBackBill_SourceWHSPCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustOutBackBill_SimpleMode" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Kf_EntrustOutBackBill_DeleterAndMakerMustSame" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Sc_PackUnionBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Sc_PackUnionBill_SaveAutoAddnew" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Sc_PackUnionBill_SourceBillTypeCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Sc_PackUnionBill_SourceBillNoCtl" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Sc_PackUnionBill_DeleterAndMakerMustSame" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="WMS_ERPStockCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="WMS_WMSStockCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="WMS_WMSStockCtl_ERPMode" type="s:string" />
@@ -1342,8 +1392,15 @@
           <s:element minOccurs="0" maxOccurs="1" name="BarCode_AutoMateOutBackBillWMS" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="BarCode_AutoSellOutBackBillWMS" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="BarCode_DeleterAndMakerMustSame" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Sc_ICMOBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Sc_ICMOBill_SaveAutoAddnew" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Sc_ICMOBill_AutoProcExchBill" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Sc_ICMOBill_DeleterAndMakerMustSame" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Sc_ProcessExchangeBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Sc_ProcessExchangeBill_SaveAutoAddnew" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Sc_ProcessExchangeBill_AutoBarCode" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Sc_ProcessExchangeBill_DeleterAndMakerMustSame" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="MES_StationInBill_AutoCheck" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="MES_StationInBill_FIFOCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="MES_StationInBill_FullMoveCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="MES_StationInBill_QtyCtl" type="s:string" />
@@ -1357,6 +1414,9 @@
           <s:element minOccurs="0" maxOccurs="1" name="MES_StationInBill_SaveAutoAddnew" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="MES_StationInBill_DeleteRelationCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="MES_StationInBill_PreQtyCtl" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="MES_StationInBill_QtyRateCtl" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="MES_StationInBill_DyCentralInspectionControl" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="MES_StationOutBill_AutoCheck" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="MES_StationOutBill_QtyCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="MES_StationOutBill_QtyPreQtyCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="MES_StationOutBill_QtyNextQtyCtl" type="s:string" />
@@ -1372,34 +1432,74 @@
           <s:element minOccurs="0" maxOccurs="1" name="MES_StationOutBill_SaveAutoAddnew" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="MES_StationOutBill_DeleteRelationCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="MES_StationOutBill_NextQtyCtl" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="MES_StationOutBill_QtyRateCtl" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="QC_NoPassProdCheckBill_AutoCheck" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="QC_NoPassProdCheckBill_QtyCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="QC_NoPassProdCheckBill_BadReasonQtyCtrl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="QC_NoPassProdCheckBill_DeleteCtl" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="MES_StationEntrustInBill_AutoCheck" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="MES_StationEntrustInBill_FIFOCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="MES_StationEntrustInBill_FullMoveCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="MES_StationEntrustInBill_QtyCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="MES_StationEntrustInBill_OneCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="MES_StationEntrustInBill_DeleteCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="MES_StationEntrustInBill_SaveAutoAddnew" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="MES_StationEntrustInBill_QtyRateCtl" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="MES_StationEntrustOutBill_AutoCheck" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="MES_StationEntrustOutBill_QtyCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="MES_StationEntrustOutBill_DeleteCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="MES_StationEntrustOutBill_SaveAutoAddnew" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="MES_StationEntrustOutBill_QtyRateCtl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Sc_MESBeginWorkBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Sc_MESBeginWorkBill_SaveAutoAddnew" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Sc_MESBeginWorkBill_DeleterAndMakerMustSame" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Sc_MESReturnWorkBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Sc_MESReturnWorkBill_SaveAutoAddnew" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Sc_MESReturnWorkBill_DeleterAndMakerMustSame" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Sc_MESEndWorkBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Sc_MESEndWorkBill_SaveAutoAddnew" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Sc_MESEndWorkBill_DeleterAndMakerMustSame" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Sc_MESStopWorkBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Sc_MESStopWorkBill_SaveAutoAddnew" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Sc_MESStopWorkBill_DeleterAndMakerMustSame" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Sc_ICMOBillWorkQtyStatus_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Sc_ICMOBillWorkQtyStatus_SaveAutoAddnew" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Sc_ICMOBillWorkQtyStatus_DeleterAndMakerMustSame" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Sc_ICMOBillWorkQtyStatus_AutoNextWorkBill" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Sc_ICMOBillQualityStatus_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Sc_ICMOBillQualityStatus_SaveAutoAddnew" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Sc_ICMOBillQualityStatus_DeleterAndMakerMustSame" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Sc_MaterToSourceBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Sc_MaterToSourceBill_SaveAutoAddnew" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Sc_MaterToSourceBill_DeleterAndMakerMustSame" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Sc_MaterToSourceBill_MouldLifeCtrl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Sc_MaterToSourceBill_MouldLifeCtrlType" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="OA_ErrMsgBackBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="OA_ErrMsgBackBill_SaveAutoAddnew" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="OA_ErrMsgBackBill_DeleterAndMakerMustSame" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Sc_MESProceReportWorkBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Sc_MESProceReportWorkBill_SaveAutoAddnew" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Sc_MESProceReportWorkBill_DeleterAndMakerMustSame" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="QC_FirstPieceCheckBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="QC_FirstPieceCheckBill_SaveAutoAddnew" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="QC_FirstPieceCheckBill_DeleterAndMakerMustSame" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="QC_FirstPieceCheckBill_QCSchemeSource" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="QC_PatrolProcCheckBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="QC_PatrolProcCheckBill_SaveAutoAddnew" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="QC_PatrolProcCheckBill_DeleterAndMakerMustSame" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="QC_PatrolProcCheckBill_QCSchemeSource" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="QC_ProcessCheckBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="QC_ProcessCheckBill_SaveAutoAddnew" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="QC_ProcessCheckBill_DeleterAndMakerMustSame" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="QC_ProcessCheckBill_QCSchemeSource" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Sc_MouldProdOutBill_AutoCheck" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Sc_MouldProdOutBill_SaveAutoAddnew" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Sc_MouldProdOutBill_DeleterAndMakerMustSame" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Sc_MouldProdOutBill_MouldLifeCtrl" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Sc_MouldProdOutBill_MouldLifeCtrlType" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Gy_RoutingBill_AutoCheck" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Gy_RoutingBill_SaveAutoAddnew" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Gy_RoutingBill_DeleterAndMakerMustSame" type="s:string" />
           <s:element minOccurs="0" maxOccurs="1" name="Gy_RoutingBill_SaveAutoLastProc" type="s:string" />
         </s:sequence>
       </s:complexType>
@@ -3537,6 +3637,29 @@
           </s:sequence>
         </s:complexType>
       </s:element>
+      <s:element name="get_SourceBarCode_MateReplenishOut">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="1" maxOccurs="1" name="HInterID" type="s:long" />
+            <s:element minOccurs="0" maxOccurs="1" name="HBillNo" type="s:string" />
+            <s:element minOccurs="0" maxOccurs="1" name="HBillType" type="s:string" />
+            <s:element minOccurs="0" maxOccurs="1" name="HSourceBillNo" type="s:string" />
+            <s:element minOccurs="0" maxOccurs="1" name="HSourceBillType" type="s:string" />
+            <s:element minOccurs="0" maxOccurs="1" name="HMaker" type="s:string" />
+            <s:element minOccurs="1" maxOccurs="1" name="HFIFOWhID" type="s:long" />
+            <s:element minOccurs="1" maxOccurs="1" name="HOWNERID" type="s:long" />
+            <s:element minOccurs="0" maxOccurs="1" name="sErrMsg" type="s:string" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:element name="get_SourceBarCode_MateReplenishOutResponse">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="get_SourceBarCode_MateReplenishOutResult" type="tns:ClsKf_ICStockBill_WMS" />
+            <s:element minOccurs="0" maxOccurs="1" name="sErrMsg" type="s:string" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
       <s:element name="get_SourceBarCode_MoveStock">
         <s:complexType>
           <s:sequence>
@@ -4025,24 +4148,6 @@
                 </s:sequence>
               </s:complexType>
             </s:element>
-            <s:element minOccurs="0" maxOccurs="1" name="sErrMsg" type="s:string" />
-          </s:sequence>
-        </s:complexType>
-      </s:element>
-      <s:element name="set_DelSc_MouldStockBillMain_Temp">
-        <s:complexType>
-          <s:sequence>
-            <s:element minOccurs="1" maxOccurs="1" name="HInterID" type="s:long" />
-            <s:element minOccurs="1" maxOccurs="1" name="HMouldInterID" type="s:long" />
-            <s:element minOccurs="0" maxOccurs="1" name="sHBillType" type="s:string" />
-            <s:element minOccurs="0" maxOccurs="1" name="sErrMsg" type="s:string" />
-          </s:sequence>
-        </s:complexType>
-      </s:element>
-      <s:element name="set_DelSc_MouldStockBillMain_TempResponse">
-        <s:complexType>
-          <s:sequence>
-            <s:element minOccurs="1" maxOccurs="1" name="set_DelSc_MouldStockBillMain_TempResult" type="s:boolean" />
             <s:element minOccurs="0" maxOccurs="1" name="sErrMsg" type="s:string" />
           </s:sequence>
         </s:complexType>
@@ -13828,6 +13933,12 @@
       </s:element>
     </s:schema>
   </wsdl:types>
+  <wsdl:message name="set_DelSc_MouldStockBillMain_TempSoapIn">
+    <wsdl:part name="parameters" element="tns:set_DelSc_MouldStockBillMain_Temp" />
+  </wsdl:message>
+  <wsdl:message name="set_DelSc_MouldStockBillMain_TempSoapOut">
+    <wsdl:part name="parameters" element="tns:set_DelSc_MouldStockBillMain_TempResponse" />
+  </wsdl:message>
   <wsdl:message name="set_SaveMouldStockBill_NewSoapIn">
     <wsdl:part name="parameters" element="tns:set_SaveMouldStockBill_New" />
   </wsdl:message>
@@ -14596,6 +14707,12 @@
   <wsdl:message name="get_SourceBarCode_OtherOutSoapOut">
     <wsdl:part name="parameters" element="tns:get_SourceBarCode_OtherOutResponse" />
   </wsdl:message>
+  <wsdl:message name="get_SourceBarCode_MateReplenishOutSoapIn">
+    <wsdl:part name="parameters" element="tns:get_SourceBarCode_MateReplenishOut" />
+  </wsdl:message>
+  <wsdl:message name="get_SourceBarCode_MateReplenishOutSoapOut">
+    <wsdl:part name="parameters" element="tns:get_SourceBarCode_MateReplenishOutResponse" />
+  </wsdl:message>
   <wsdl:message name="get_SourceBarCode_MoveStockSoapIn">
     <wsdl:part name="parameters" element="tns:get_SourceBarCode_MoveStock" />
   </wsdl:message>
@@ -14703,12 +14820,6 @@
   </wsdl:message>
   <wsdl:message name="GetMouldBillEntry_TmpListSoapOut">
     <wsdl:part name="parameters" element="tns:GetMouldBillEntry_TmpListResponse" />
-  </wsdl:message>
-  <wsdl:message name="set_DelSc_MouldStockBillMain_TempSoapIn">
-    <wsdl:part name="parameters" element="tns:set_DelSc_MouldStockBillMain_Temp" />
-  </wsdl:message>
-  <wsdl:message name="set_DelSc_MouldStockBillMain_TempSoapOut">
-    <wsdl:part name="parameters" element="tns:set_DelSc_MouldStockBillMain_TempResponse" />
   </wsdl:message>
   <wsdl:message name="set_CheckOtherInBillSoapIn">
     <wsdl:part name="parameters" element="tns:set_CheckOtherInBill" />
@@ -17195,6 +17306,10 @@
     <wsdl:part name="parameters" element="tns:GetSc_ICMOBackBillListResponse" />
   </wsdl:message>
   <wsdl:portType name="WebService1Soap">
+    <wsdl:operation name="set_DelSc_MouldStockBillMain_Temp">
+      <wsdl:input message="tns:set_DelSc_MouldStockBillMain_TempSoapIn" />
+      <wsdl:output message="tns:set_DelSc_MouldStockBillMain_TempSoapOut" />
+    </wsdl:operation>
     <wsdl:operation name="set_SaveMouldStockBill_New">
       <wsdl:input message="tns:set_SaveMouldStockBill_NewSoapIn" />
       <wsdl:output message="tns:set_SaveMouldStockBill_NewSoapOut" />
@@ -17707,6 +17822,10 @@
       <wsdl:input message="tns:get_SourceBarCode_OtherOutSoapIn" />
       <wsdl:output message="tns:get_SourceBarCode_OtherOutSoapOut" />
     </wsdl:operation>
+    <wsdl:operation name="get_SourceBarCode_MateReplenishOut">
+      <wsdl:input message="tns:get_SourceBarCode_MateReplenishOutSoapIn" />
+      <wsdl:output message="tns:get_SourceBarCode_MateReplenishOutSoapOut" />
+    </wsdl:operation>
     <wsdl:operation name="get_SourceBarCode_MoveStock">
       <wsdl:input message="tns:get_SourceBarCode_MoveStockSoapIn" />
       <wsdl:output message="tns:get_SourceBarCode_MoveStockSoapOut" />
@@ -17778,10 +17897,6 @@
     <wsdl:operation name="GetMouldBillEntry_TmpList">
       <wsdl:input message="tns:GetMouldBillEntry_TmpListSoapIn" />
       <wsdl:output message="tns:GetMouldBillEntry_TmpListSoapOut" />
-    </wsdl:operation>
-    <wsdl:operation name="set_DelSc_MouldStockBillMain_Temp">
-      <wsdl:input message="tns:set_DelSc_MouldStockBillMain_TempSoapIn" />
-      <wsdl:output message="tns:set_DelSc_MouldStockBillMain_TempSoapOut" />
     </wsdl:operation>
     <wsdl:operation name="set_CheckOtherInBill">
       <wsdl:input message="tns:set_CheckOtherInBillSoapIn" />
@@ -19442,6 +19557,15 @@
   </wsdl:portType>
   <wsdl:binding name="WebService1Soap" type="tns:WebService1Soap">
     <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
+    <wsdl:operation name="set_DelSc_MouldStockBillMain_Temp">
+      <soap:operation soapAction="http://tempuri.org/set_DelSc_MouldStockBillMain_Temp" style="document" />
+      <wsdl:input>
+        <soap:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
     <wsdl:operation name="set_SaveMouldStockBill_New">
       <soap:operation soapAction="http://tempuri.org/set_SaveMouldStockBill_New" style="document" />
       <wsdl:input>
@@ -20594,6 +20718,15 @@
         <soap:body use="literal" />
       </wsdl:output>
     </wsdl:operation>
+    <wsdl:operation name="get_SourceBarCode_MateReplenishOut">
+      <soap:operation soapAction="http://tempuri.org/get_SourceBarCode_MateReplenishOut" style="document" />
+      <wsdl:input>
+        <soap:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
     <wsdl:operation name="get_SourceBarCode_MoveStock">
       <soap:operation soapAction="http://tempuri.org/get_SourceBarCode_MoveStock" style="document" />
       <wsdl:input>
@@ -20749,15 +20882,6 @@
     </wsdl:operation>
     <wsdl:operation name="GetMouldBillEntry_TmpList">
       <soap:operation soapAction="http://tempuri.org/GetMouldBillEntry_TmpList" style="document" />
-      <wsdl:input>
-        <soap:body use="literal" />
-      </wsdl:input>
-      <wsdl:output>
-        <soap:body use="literal" />
-      </wsdl:output>
-    </wsdl:operation>
-    <wsdl:operation name="set_DelSc_MouldStockBillMain_Temp">
-      <soap:operation soapAction="http://tempuri.org/set_DelSc_MouldStockBillMain_Temp" style="document" />
       <wsdl:input>
         <soap:body use="literal" />
       </wsdl:input>
@@ -24494,6 +24618,15 @@
   </wsdl:binding>
   <wsdl:binding name="WebService1Soap12" type="tns:WebService1Soap">
     <soap12:binding transport="http://schemas.xmlsoap.org/soap/http" />
+    <wsdl:operation name="set_DelSc_MouldStockBillMain_Temp">
+      <soap12:operation soapAction="http://tempuri.org/set_DelSc_MouldStockBillMain_Temp" style="document" />
+      <wsdl:input>
+        <soap12:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap12:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
     <wsdl:operation name="set_SaveMouldStockBill_New">
       <soap12:operation soapAction="http://tempuri.org/set_SaveMouldStockBill_New" style="document" />
       <wsdl:input>
@@ -25646,6 +25779,15 @@
         <soap12:body use="literal" />
       </wsdl:output>
     </wsdl:operation>
+    <wsdl:operation name="get_SourceBarCode_MateReplenishOut">
+      <soap12:operation soapAction="http://tempuri.org/get_SourceBarCode_MateReplenishOut" style="document" />
+      <wsdl:input>
+        <soap12:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap12:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
     <wsdl:operation name="get_SourceBarCode_MoveStock">
       <soap12:operation soapAction="http://tempuri.org/get_SourceBarCode_MoveStock" style="document" />
       <wsdl:input>
@@ -25801,15 +25943,6 @@
     </wsdl:operation>
     <wsdl:operation name="GetMouldBillEntry_TmpList">
       <soap12:operation soapAction="http://tempuri.org/GetMouldBillEntry_TmpList" style="document" />
-      <wsdl:input>
-        <soap12:body use="literal" />
-      </wsdl:input>
-      <wsdl:output>
-        <soap12:body use="literal" />
-      </wsdl:output>
-    </wsdl:operation>
-    <wsdl:operation name="set_DelSc_MouldStockBillMain_Temp">
-      <soap12:operation soapAction="http://tempuri.org/set_DelSc_MouldStockBillMain_Temp" style="document" />
       <wsdl:input>
         <soap12:body use="literal" />
       </wsdl:input>
diff --git a/WebAPI/Web.config b/WebAPI/Web.config
index 0eb305a..674d84e 100644
--- a/WebAPI/Web.config
+++ b/WebAPI/Web.config
@@ -22,7 +22,7 @@
 		<!--<add key="FileIP" value="http://localhost:8082/LuBaoAPI"/>-->
 		<!--<add key="FileIP" value="http://localhost:8080/" />-->
 		<!--<add key="sUrl" value="http://183.129.128.86:9090/WEBS-WMSTest/WebService1.asmx"/>    -->
-		<!--add key="sUrl" value="http://192.168.63.53/WEBS-WMS/WebService1.asmx"/>   棰滃彴寮忔満-->
+		<add key="sUrl" value="http://192.168.63.53/WEBS-WMS/WebService1.asmx"/>   <!--棰滃彴寮忔満-->
 		<!--<add key="sUrl" value="http://60.190.4.42:9003/WebService/WebService1.asmx" /> 澶忓疂-->
 		<!--<add key="sUrl" value="http://60.190.4.42:9003/WebService/WebService1.asmx" /> -->
 		<!--<add key="sUrl" value="http://10.10.130.181/WEBS-WMS/WebService1.asmx"/>    鍗氭棩绉戞妧-->
@@ -34,7 +34,7 @@
 		<!--<add key="sUrl" value="http://192.168.80.90:9090/WEBS-WMS/WebService1.asmx"/>     瀹夌憺鏈嶅姟鍣�-->
 		<!--<add key="sUrl" value="http://47.96.97.237/WEBS-WMS/WebService1.asmx"/> -->	<!--娴嬭瘯鏈嶅姟鍣�-->
 		<!--<add key="sUrl" value="http://localhost:8082/WEBS/WebService1.asmx"/>    鏈湴-->
-		<add key="sUrl" value="http://192.168.110.57:81/WEBS/WebService1.asmx"/>	<!--闄堥洴闈欐湰鍦伴厤缃�-->
+		<!--<add key="sUrl" value="http://192.168.110.57:81/WEBS/WebService1.asmx"/>	闄堥洴闈欐湰鍦伴厤缃�-->
 		<!--<add key="sUrl" value="http://192.168.1.57:8082/WEBS-WMS/WebService1.asmx"/>涔濊彵-->
 
 		<add key="webpages:Version" value="3.0.0.0" />
diff --git a/WebAPI/WebAPI.csproj b/WebAPI/WebAPI.csproj
index fca7dca..24962fd 100644
--- a/WebAPI/WebAPI.csproj
+++ b/WebAPI/WebAPI.csproj
@@ -417,6 +417,7 @@
     <Compile Include="Controllers\MJGL\Sc_MouldStatusChangeBillController.cs" />
     <Compile Include="Controllers\MJGL\Sc_MouldUpperBillController.cs" />
     <Compile Include="Controllers\Pay_ReportController.cs" />
+    <Compile Include="Controllers\PlateBindingController.cs" />
     <Compile Include="Controllers\SBGL\Gy_FixCardChangeBillController.cs" />
     <Compile Include="Controllers\SBGL\Gy_FixCardBillController.cs" />
     <Compile Include="Controllers\SBGL\Sb_EquipConkBookBillController.cs" />

--
Gitblit v1.9.1