From 32fd56464b3dfba976db1eef6d99b70b8a470a0a Mon Sep 17 00:00:00 2001
From: yusijie <ysj@hz-kingdee.com>
Date: 星期三, 06 三月 2024 08:37:40 +0800
Subject: [PATCH] Merge branch 'master' of http://101.37.171.70:10101/r/MES-WEB-API

---
 WebAPI/Controllers/XSGL/YS_ReceiveBillController.cs           |   45 
 DAL/ClsPM_ProjectBeginBillMain.cs                             |  291 +
 Model/计划管理/ClsGy_MaterialTechParamBillMain.cs                 |   19 
 WebAPI/WebAPI.csproj.user                                     |    2 
 DAL/仓库管理/ClsKf_StepFoldInBill.cs                              |  360 +
 DAL/采购管理/ClsCg_PayableBill.cs                                 |   18 
 Model/采购管理/ClsCg_PayableSub.cs                                |    2 
 WebAPI/Controllers/仓存管理/领料发货/Kf_StepFoldOutBillController.cs  |  722 ++
 DAL/ClsPM_ProjectMoneyBillMain.cs                             |  286 +
 WebAPI/Controllers/BaseSet/Gy_BadReasonController.cs          |  241 
 WebAPI/Models/ClsCg_POInStockBill.cs                          |    2 
 Model/仓库管理/ClsKf_StepFoldInBillMain.cs                        |   27 
 DAL/仓库管理/ClsKf_StepFoldOutBill.cs                             |  360 +
 Model/仓库管理/ClsKf_MoveStockStepInBillScheme.cs                 |   30 
 WebAPI/Controllers/CGGL/Cg_PayableBillController.cs           |   15 
 WebAPI/Controllers/XSGL/YF_PayMentOtherBillController.cs      |  907 +++
 WebAPI/Controllers/XSGL/Kf_SellOutBillController.cs           |   54 
 WebAPI/Controllers/WebAPIController.cs                        |  316 +
 WebAPI/Controllers/工资管理/Pay_OutApplyBillController.cs         | 1040 ++-
 WebAPI/Controllers/生产管理/生产任务单/Sc_ICMOBillController.cs        |   86 
 WebAPI/Controllers/XSGL/Xs_ReceivableBillController.cs        |   80 
 WebAPI/Controllers/XSGL/Xs_SeOrderBillController.cs           |  240 
 WebAPI/ListModels.cs                                          |  149 
 DAL/ClsGy_MaterialMouldBillMain.cs                            |  280 +
 WebAPI/Controllers/BaseSet/Gy_CustomerController.cs           |   34 
 Model/项目管理/ClsGy_MaterialMouldBillMain.cs                     |   17 
 DAL/DAL.csproj                                                |    7 
 Model/项目管理/ClsPM_ProjectBeginBillMain.cs                      |   29 
 Model/销售管理/ClsXs_SeOrderBillMain.cs                           |    1 
 WebAPI/WebAPI.csproj                                          |    6 
 Model/计划管理/ClsGy_MaterialTechParamBillSub.cs                  |   16 
 Model/项目管理/ClsPM_ProjectMoneyBillMain.cs                      |   21 
 WebAPI/Web References/WebS/WebService1.wsdl                   |    2 
 Model/仓库管理/ClsKf_StepFoldOutBillSub.cs                        |   44 
 WebAPI/Properties/PublishProfiles/FolderProfile.pubxml.user   |  158 
 Model/仓库管理/ClsKf_StepFoldInBillSub.cs                         |   44 
 WebAPI/Controllers/CJGL/Cj_SingleStationController.cs         |   10 
 WebAPI/DLL/ClsGy_ProjectMoney_Ctl.cs                          |  102 
 WebAPI/Controllers/条码管理/WEBSController.cs                     |  426 +
 DAL/应收管理/ClsYS_ReceiveOtherBill.cs                            |   60 
 WebAPI/Controllers/XSGL/Xs_CusBalanceReportController.cs      |  149 
 Model/Model.csproj                                            |   21 
 Model/仓库管理/ClsKf_MoveStockStepOutBillScheme.cs                |   30 
 Model/应收管理/ClsYS_ReceiveOtherBillMain.cs                      |   13 
 WebAPI/Controllers/LMESController.cs                          |    2 
 WebAPI/Service/LuBaoSevice.cs                                 |   21 
 Model/仓库管理/ClsKf_MoveStockStepInBillSub.cs                    |   30 
 DAL/计划管理/ClsGy_MaterialTechParamBillMain.cs                   |  284 +
 Model/仓库管理/ClsKf_StepFoldOutBillMain.cs                       |   28 
 WebAPI/Web References/WebS/Reference.cs                       |   24 
 WebAPI/Web.config                                             |    2 
 WebAPI/Controllers/JHGL/Gy_MaterialTechParamBillController.cs |  536 ++
 DAL/销售管理/ClsXs_SeOrderBill.cs                                 |    5 
 WebAPI/Controllers/项目管理/工程项目/PM_ProjectBillController.cs      | 1801 ++++++
 Model/仓库管理/ClsKf_MoveStockStepOutBillMain.cs                  |    3 
 WebAPI/Controllers/工资管理/Pay_OverApplyBillController.cs        | 1037 ++-
 WebAPI/Controllers/CGGL/Kf_POStockInBillController.cs         |    2 
 WebAPI/Controllers/BaseSet/Xt_grdAlignment_WMESController.cs  |  251 
 DBUtility/业务单据/ClsXt_BaseBill.cs                              |   79 
 WebAPI/Controllers/SCGL/Sc_ICMOChangeBillController.cs        |    6 
 Model/项目管理/ClsPM_ProjectEndBillSub.cs                         |   11 
 Model/应付管理/ClsYF_PayMentOtherBillMain.cs                      |   13 
 Model/ClsGy_MaterialMouldBillSub.cs                           |   14 
 Model/项目管理/ClsPM_ProjectMoneyBillSub.cs                       |   14 
 WebAPI/Controllers/仓存管理/验收入库/Kf_StepFoldinBillController.cs   |  639 +
 Model/仓库管理/ClsKf_MoveStockStepInBillMain.cs                   |   24 
 WebAPI/Controllers/MJGL/Sc_MouldinventoryBillController.cs    |  536 ++
 Model/仓库管理/ClsKf_MoveStockBillMain.cs                         |    6 
 DAL/ClsPM_ProjectEndBillMain.cs                               |  293 +
 Model/项目管理/ClsPM_ProjectEndBillMain.cs                        |   29 
 WebAPI/Controllers/XSGL/YS_ReceiveOtherBillController.cs      |  907 +++
 DAL/应付管理/ClsYF_PayMentOtherBill.cs                            |   82 
 Model/基础资料/基础资料/ClsGy_ProjectMoney_Model.cs                   |   14 
 WebAPI/Controllers/工资管理/Pay_PayMentBillController.cs          | 1039 ++-
 Model/项目管理/ClsPM_ProjectBeginBillSub.cs                       |   11 
 WebAPI/Controllers/工资管理/Pay_DuSubsidyItemBillController.cs    | 1067 ++-
 Model/采购管理/ClsCg_PayableBillMain.cs                           |    2 
 77 files changed, 13,202 insertions(+), 2,372 deletions(-)

diff --git a/DAL/ClsGy_MaterialMouldBillMain.cs b/DAL/ClsGy_MaterialMouldBillMain.cs
new file mode 100644
index 0000000..0e61617
--- /dev/null
+++ b/DAL/ClsGy_MaterialMouldBillMain.cs
@@ -0,0 +1,280 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Text;
+using System.Data;
+
+namespace DAL
+{
+    public  class ClsGy_MaterialMouldBillMain : DBUtility.ClsXt_BaseBill
+    {
+        public Model.ClsGy_MaterialMouldBillMain omodel = new Model.ClsGy_MaterialMouldBillMain();
+        public List<Model.ClsGy_MaterialMouldBillSub> DetailColl = new List<Model.ClsGy_MaterialMouldBillSub>();
+
+        public ClsGy_MaterialMouldBillMain()
+        {
+            base.MvarItemKeySub = "Gy_MaterialMouldBillSub";
+            base.MvarItemKeySub2 = "";
+            base.MvarItemKeySub3 = "";
+            base.MvarItemKeySub4 = "";
+            base.MvarItemKey= "Gy_MaterialMouldBillMain";
+            base.MvarReportTitle="浜у搧鍣ㄥ叿娓呭崟";
+            base.BillType="3333";
+            base.HBillSubType = "3333";
+
+        }
+
+        #region 鍥哄畾浠g爜
+        #region 鏃犲弬鏋勯�犲嚱鏁�
+        ~ClsGy_MaterialMouldBillMain()
+        {
+            DetailColl = null;
+        }
+        #endregion
+        #endregion
+
+        //#region 淇敼鍗曟嵁
+        public override bool ModifyBill(Int64 lngBillKey, ref string sReturn)
+        {
+            try
+            {
+                oCn.BeginTran();
+                //鏇存柊涓昏〃
+                string mainSql = "update Gy_MaterialMouldBillMain set " +
+                    " HBillNo = '" + omodel.HBillNo +
+                    "', HDate = '" + omodel.HDate +
+                    "', HRemark = '" + omodel.HRemark +
+                    "', HUpDater = '" + omodel.HUpDater +
+                    "', HUpDateDate = getdate()" +
+                     //===============================================================
+                    
+                     ", HDeptID = '" + omodel.HDeptID +
+                    "', HEmpID = '" + omodel.HEmpID +
+                    "', HMaterID = '" + omodel.HMaterID +
+                    "', HWorkCenterID = '" + omodel.HWorkCenterID +
+                    "', HEquipID  = '" + omodel.HEquipID +
+                    "', HOrgID	  = '" + omodel.HOrgID +
+                    "' where HInterID = " + omodel.HInterID;
+
+                oCn.RunProc(mainSql);
+                //鍒犻櫎鍏宠仈
+                DeleteRelation(ref sReturn, lngBillKey);
+                //鍒犻櫎瀛愯〃
+                DeleteBillSub(lngBillKey);
+
+                //鎻掑叆瀛愯〃
+                omodel.HInterID = lngBillKey;
+                foreach (Model.ClsGy_MaterialMouldBillSub oSub in DetailColl)
+                {
+                    string subSql = "insert into Gy_MaterialMouldBillSub" +
+                            "" +
+                            "" +
+                            "" +
+                            "(HInterID,HEntryID,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType" +
+                            ",HMouldID,HQty,HMouldQty,HRate) " +
+                            " values(" +
+                            "" + omodel.HInterID.ToString() +
+                            "," + oSub.HEntryID.ToString() +
+                            "," + oSub.HSourceInterID +
+                            "," + oSub.HSourceEntryID +
+                            ",'" + oSub.HSourceBillNo +
+                            "','" + oSub.HSourceBillType +
+                            "','" + oSub.HMouldID +
+                            "'," + oSub.HQty +
+                            "," + oSub.HMouldQty +
+                            ",'" + oSub.HRate +
+                            "')";
+                    oCn.RunProc(subSql);
+                }
+
+                sReturn = "淇敼鍗曟嵁鎴愬姛锛�";
+                oCn.Commit();
+                return true;
+            }
+            catch (Exception e)
+            {
+                sReturn = e.Message;
+                oCn.RollBack();
+                throw (e);
+            }
+        }
+        //#endregion
+
+        #region  鏂板鍗曟嵁
+        public override bool AddBill(ref string sReturn)
+        {
+            try
+            {
+                DataSet ds;
+
+
+                oCn.BeginTran();
+
+                //妫�鏌ヤ富琛ㄥ唴鐮佹槸鍚﹂噸澶嶏紝鑻ラ噸澶嶅垯閲嶆柊鐢熸垚骞剁户缁鏌ワ紝鐩村埌涓嶅啀閲嶅
+                while (true)
+                {
+                    ds = oCn.RunProcReturn("select * from Gy_MaterialMouldBillMain where HInterID = " + omodel.HInterID, "Gy_MaterialMouldBillMain");
+                    if(ds!=null && ds.Tables[0].Rows.Count > 0)
+                    {
+                        omodel.HInterID = DBUtility.ClsPub.CreateBillID(BillType, ref DBUtility.ClsPub.sExeReturnInfo);
+                    }
+                    else
+                    {
+                        break;
+                    }
+                }
+
+                //鎻掑叆涓昏〃
+                string mainSql = "insert into Gy_MaterialMouldBillMain" +
+                    "(HYear,HPeriod,HBillType,HBillSubType,HInterID,HDate,HBillNo,HRemark,HMaker,HMakeDate" +
+                    ",HDeptID,HEmpID,HMaterID,HWorkCenterID,HEquipID,HOrgID ) " +
+                    "values(" +
+                    "" + omodel.HYear.ToString() +
+                    "," + omodel.HPeriod.ToString() +
+                    ",'" + this.BillType +
+                    "','" + this.HBillSubType +
+                    "'," + omodel.HInterID +
+                    ",'" + omodel.HDate +
+                    "','" + omodel.HBillNo +
+                    "','" + omodel.HRemark +
+                    "','" + omodel.HMaker +
+                    "','" + omodel.HMakeDate +
+                    "'," + omodel.HDeptID +
+                    "," + omodel.HEmpID +
+                    ",'" + omodel.HMaterID +
+                    "','" + omodel.HWorkCenterID +
+                    "','" + omodel.HEquipID +
+                     "','" + omodel.HOrgID +
+                    "')";
+
+                oCn.RunProc(mainSql);
+
+                //鎻掑叆瀛愯〃
+                foreach (Model.ClsGy_MaterialMouldBillSub oSub in DetailColl)
+                {
+                    string subSql = "insert into Gy_MaterialMouldBillSub" +
+                           "" +
+                           "" +
+                           "" +
+                           "(HInterID,HEntryID,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType" +
+                           ",HMouldID,HQty,HMouldQty,HRate) " +
+                           " values(" +
+                           "" + omodel.HInterID.ToString() +
+                           "," + oSub.HEntryID.ToString() +
+                           "," + oSub.HSourceInterID +
+                           "," + oSub.HSourceEntryID +
+                           ",'" + oSub.HSourceBillNo +
+                           "','" + oSub.HSourceBillType +
+                           "','" + oSub.HMouldID +
+                           "'," + oSub.HQty +
+                           "," + oSub.HMouldQty +
+                           ",'" + oSub.HRate +
+                           "')";
+                    oCn.RunProc(subSql);
+                }
+                sReturn = "鏂板鍗曟嵁鎴愬姛锛�";
+                oCn.Commit();
+                return true;
+            }
+            catch (Exception e)
+            {
+                sReturn = e.Message;
+                oCn.RollBack();
+                throw (e);
+            }
+        }
+        #endregion
+
+        #region 鏄剧ず鍗曟嵁
+        //public override bool ShowBill(Int64 lngBillKey, ref string sReturn)
+        //{
+        //    try
+        //    {
+        //        //鏌ヨ涓昏〃
+        //        DataSet Ds ;
+        //        Ds = oCn.RunProcReturn("select * from PM_WorkReportWeekBillMain Where HInterID = " + lngBillKey.ToString(), "PM_WorkReportWeekBillMain");
+        //        if(Ds.Tables[0].Rows.Count==0)
+        //        {
+        //            sReturn = "鍗曟嵁鏈壘鍒帮紒";
+        //            return false;
+        //        }
+
+        //        //鍥哄畾璧嬪��===========================================
+        //        omodel.HYear = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HYear"]);
+        //        omodel.HPeriod = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HPeriod"]);
+        //        omodel.HBillType = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HBillType"]);
+        //        omodel.HBillSubType = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HBillSubType"]);
+        //        omodel.HInterID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HInterID"]);
+        //        omodel.HDate = DBUtility.ClsPub.isDate(Ds.Tables[0].Rows[0]["HDate"]);
+        //        omodel.HBillNo = Ds.Tables[0].Rows[0]["HBillNo"].ToString().Trim();
+        //        omodel.HBillStatus = DBUtility.ClsPub.isInt(Ds.Tables[0].Rows[0]["HBillStatus"]);
+        //        omodel.HCheckItemNowID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HCheckItemNowID"]);
+        //        omodel.HCheckItemNextID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HCheckItemNextID"]);
+        //        omodel.HCheckFlowID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HCheckFlowID"]);
+        //        omodel.HRemark = Ds.Tables[0].Rows[0]["HRemark"].ToString().Trim();
+        //        omodel.HBackDate = Ds.Tables[0].Rows[0]["HBackDate"].ToString().Trim();
+        //        omodel.HBacker = Ds.Tables[0].Rows[0]["HBacker"].ToString().Trim();
+        //        omodel.HCheckDate = Ds.Tables[0].Rows[0]["HCheckDate"].ToString().Trim();
+        //        omodel.HChecker = Ds.Tables[0].Rows[0]["HChecker"].ToString().Trim();
+        //        omodel.HMaker = Ds.Tables[0].Rows[0]["HMaker"].ToString().Trim();
+        //        omodel.HMakeDate = Ds.Tables[0].Rows[0]["HMakeDate"].ToString().Trim();
+        //        omodel.HUpDateDate = Ds.Tables[0].Rows[0]["HUpDateDate"].ToString().Trim();
+        //        omodel.HUpDater = Ds.Tables[0].Rows[0]["HUpDater"].ToString().Trim();
+        //        omodel.HCloseDate = Ds.Tables[0].Rows[0]["HCloseDate"].ToString().Trim();
+        //        omodel.HCloseMan = Ds.Tables[0].Rows[0]["HCloseMan"].ToString().Trim();
+        //        omodel.HCloseType = DBUtility.ClsPub.isBool(Ds.Tables[0].Rows[0]["HCloseType"]);
+        //        omodel.HDeleteDate = Ds.Tables[0].Rows[0]["HDeleteDate"].ToString().Trim();
+        //        omodel.HDeleteMan = Ds.Tables[0].Rows[0]["HDeleteMan"].ToString().Trim();
+        //        //========================================================
+
+        //        omodel.HOrgID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HOrgID"]);
+        //        omodel.HWeek = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HWeek"]);
+        //        omodel.HBeginDate = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HBeginDate"]);
+        //        omodel.HEndDate = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HEndDate"]);
+        //        omodel.HPlanEmpID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HPlanEmpID"]);
+
+        //        //
+                
+        //        //寰幆
+        //        DataSet DsSub ;
+        //        DsSub = oCn.RunProcReturn("select * from PM_WorkTaskWeekBillSub where HInterID = " + lngBillKey.ToString() + "order by HEntryID", "PM_WorkTaskWeekBillSub");
+        //        DetailColl.Clear();//娓呯┖
+        //        for (int i = 0; i < DsSub.Tables[0].Rows.Count; i++)
+        //        {
+        //            Model.ClsPM_WorkTaskWeekBillSub oSub = new Model.ClsPM_WorkTaskWeekBillSub();
+        //            // 鍥哄畾璧嬪��===============================================
+        //            oSub.HInterID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HInterID"]);
+        //            oSub.HEntryID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HEntryID"]);
+        //            oSub.HSourceInterID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HSourceInterID"]);
+        //            oSub.HSourceEntryID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HSourceEntryID"]);
+        //            oSub.HSourceBillType = DsSub.Tables[0].Rows[i]["HSourceBillType"].ToString().Trim();
+        //            oSub.HSourceBillNo = DsSub.Tables[0].Rows[i]["HSourceBillNo"].ToString().Trim();
+        //            oSub.HRelationQty = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HRelationQty"]);
+        //            oSub.HRelationMoney = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HRelationMoney"]); 
+        //            oSub.HCloseMan =  DBUtility.ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HCloseMan"]);
+        //            oSub.HCloseType = DBUtility.ClsPub.isBool(DsSub.Tables[0].Rows[i]["HCloseType"]);
+        //            oSub.HEntryCloseDate = DBUtility.ClsPub.isDate(DsSub.Tables[0].Rows[i]["HEntryCloseDate"]);
+        //            oSub.HRemark = DsSub.Tables[0].Rows[i]["HRemark"].ToString().Trim();
+        //            //===================================================
+        //            oSub.HWeekDay = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HWeekDay"]);
+        //            oSub.HSno = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HSno"]);
+        //            oSub.HProjectID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HProjectID"]);
+        //            oSub.HProjectStageID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HProjectStageID"]);
+        //            oSub.HTaskNote = DBUtility.ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HTaskNote"]);
+        //            oSub.HPlanTimes = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HPlanTimes"]);
+
+        //            DetailColl.Add(oSub);
+        //        }
+        //        sReturn = "鏄剧ず鍗曟嵁鎴愬姛锛�";
+        //        return true;
+        //    }
+        //    catch (Exception e)
+        //    {
+        //        sReturn = e.Message;
+        //        throw (e);
+        //    }
+        //}
+        #endregion
+
+    }
+
+}
diff --git a/DAL/ClsPM_ProjectBeginBillMain.cs b/DAL/ClsPM_ProjectBeginBillMain.cs
new file mode 100644
index 0000000..db1e496
--- /dev/null
+++ b/DAL/ClsPM_ProjectBeginBillMain.cs
@@ -0,0 +1,291 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Text;
+using System.Data;
+
+namespace DAL
+{
+    public class ClsPM_ProjectBeginBillMain : DBUtility.ClsXt_BaseBill
+    {
+
+        public Model.ClsPM_ProjectBeginBillMain omodel = new Model.ClsPM_ProjectBeginBillMain();
+        public List<Model.ClsPM_ProjectBeginBillSub> DetailColl = new List<Model.ClsPM_ProjectBeginBillSub>();
+
+        public ClsPM_ProjectBeginBillMain()
+        {
+            base.MvarItemKeySub = "PM_ProjectBeginBillSub";
+            base.MvarItemKeySub2 = "";
+            base.MvarItemKeySub3 = "";
+            base.MvarItemKeySub4 = "";
+            base.MvarItemKey = "PM_ProjectBeginBillMain";
+            base.MvarReportTitle = "椤圭洰鍚姩鍗�";
+            base.BillType = "4760";
+            base.HBillSubType = "4760";
+
+        }
+
+        #region 鍥哄畾浠g爜
+        #region 鏃犲弬鏋勯�犲嚱鏁�
+        ~ClsPM_ProjectBeginBillMain()
+        {
+            DetailColl = null;
+        }
+        #endregion
+        #endregion
+
+        //#region 淇敼鍗曟嵁
+        public override bool ModifyBill(Int64 lngBillKey, ref string sReturn)
+        {
+            try
+            {
+                
+                oCn.BeginTran();
+                //鏇存柊涓昏〃
+                string mainSql = "update PM_ProjectBeginBillMain set " +
+                    " HBillNo = '" + omodel.HBillNo +
+                     "', HRemark  = '" + omodel.HRemark +
+                     "', HProjectID  = '" + omodel.HProjectID +
+                    "', HProNumber   = '" + omodel.HProNumber +
+                    "', HProName  = '" + omodel.HProName +
+                    "', HCusID  = '" + omodel.HCusID +
+                     "', HPMTeamID  = '" + omodel.HPMTeamID +
+                    "', HPMEmpID = '" + omodel.HPMEmpID +
+                    "', HWorkEmpID  = '" + omodel.HWorkEmpID +
+                     "', HManagerID  = '" + omodel.HManagerID +
+                    "', HOrgID  ='" + omodel.HOrgID +
+                     "', HNote  ='" + omodel.HNote +
+                     "', HPlanBeginDate ='" + omodel.HPlanBeginDate +
+                     "', HPlanEndDate  ='" + omodel.HPlanEndDate +
+                     "', HSumMoney  ='" + omodel.HSumMoney +
+                     "', HProType  ='" + omodel.HProType +
+                     "', HMoney  ='" + omodel.HMoney +
+                     "', HConWorkDays  ='" + omodel.HConWorkDays +
+                     "', HUpDater = '" + omodel.HUpDater +
+                    "', HUpDateDate = getdate()" +
+                    //===============================================================
+
+                    " where HInterID = " + omodel.HInterID;
+                oCn.RunProc(mainSql);
+                //鍒犻櫎鍏宠仈
+                DeleteRelation(ref sReturn, lngBillKey);
+                //鍒犻櫎瀛愯〃
+                DeleteBillSub(lngBillKey);
+
+                ////鎻掑叆瀛愯〃
+                //omodel.HInterID = lngBillKey;
+                //foreach (Model.ClsPM_ProjectMoneyBillSub oSub in DetailColl)
+                //{
+                //    string subSql = "insert into PM_ProjectMoneyBillSub " +
+                //        "" +
+                //        "" +
+                //        "" +
+                //        "(HInterID,HEntryID,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType" +
+                //        ",HProMoneyID,HQty,HPrice,HMoney) " +
+                //        " values(" +
+                //        "" + omodel.HInterID.ToString() +
+                //        "," + oSub.HEntryID.ToString() +
+                //        "," + oSub.HSourceInterID +
+                //        "," + oSub.HSourceEntryID +
+                //        ",'" + oSub.HSourceBillNo +
+                //        "','" + oSub.HSourceBillType +
+                //        "','" + oSub.HProMoneyID +
+                //        "'," + oSub.HQty +
+                //        "," + oSub.HPrice +
+                //        ",'" + oSub.HMoney +
+                //        "')";
+                //    oCn.RunProc(subSql);
+                //}
+
+
+                sReturn = "淇敼鍗曟嵁鎴愬姛锛�";
+                oCn.Commit();
+                return true;
+            }
+            catch (Exception e)
+            {
+                sReturn = e.Message;
+                oCn.RollBack();
+                throw (e);
+            }
+        }
+        //#endregion
+
+        #region  鏂板鍗曟嵁
+        public override bool AddBill(ref string sReturn)
+        {
+            try
+            {
+                DataSet ds;
+
+
+                oCn.BeginTran();
+
+                //妫�鏌ヤ富琛ㄥ唴鐮佹槸鍚﹂噸澶嶏紝鑻ラ噸澶嶅垯閲嶆柊鐢熸垚骞剁户缁鏌ワ紝鐩村埌涓嶅啀閲嶅
+                while (true)
+                {
+                    ds = oCn.RunProcReturn("select * from PM_ProjectBeginBillMain where HInterID = " + omodel.HInterID, "PM_ProjectBeginBillMain");
+                    if (ds != null && ds.Tables[0].Rows.Count > 0)
+                    {
+                        omodel.HInterID = DBUtility.ClsPub.CreateBillID(BillType, ref DBUtility.ClsPub.sExeReturnInfo);
+                    }
+                    else
+                    {
+                        break;
+                    }
+                }
+                
+                //鎻掑叆涓昏〃
+                string mainSql = "insert into PM_ProjectBeginBillMain" +
+                    "(HYear,HPeriod,HBillType,HBillSubType,HInterID,HDate,HBillNo,HRemark,HMaker,HMakeDate" +
+                    ",HProjectID,HProNumber,HProName,HCusID,HPMTeamID,HPMEmpID,HWorkEmpID,HManagerID,HOrgID,HNote,HPlanBeginDate,HPlanEndDate,HSumMoney,HProType,HMoney,HConWorkDays) " +
+                    "values(" +
+                    "" + (omodel.HYear.ToString() != "0" ? omodel.HYear.ToString() : DateTime.Now.Year.ToString()) +
+                    "," + omodel.HPeriod.ToString() +
+                    ",'" + this.BillType +
+                    "','" + this.HBillSubType +
+                    "'," + omodel.HInterID +
+                    ",'" + omodel.HDate +
+                    "','" + omodel.HBillNo +
+                    "','" + omodel.HRemark +
+                    "','" + omodel.HMaker +
+                    "','" + omodel.HMakeDate +
+                    "','" + omodel.HProjectID +
+                    "','" + omodel.HProNumber +
+                    "','" + omodel.HProName +
+                    "','" + omodel.HCusID +
+                    "','" + omodel.HPMTeamID +
+                    "','" + omodel.HPMEmpID +
+                    "','" + omodel.HWorkEmpID +
+                    "','" + omodel.HManagerID +
+                    "','" + omodel.HOrgID +
+                    "','" + omodel.HNote +
+                    "','" + omodel.HPlanBeginDate +
+                    "','" + omodel.HPlanEndDate +
+                    "','" + omodel.HSumMoney +
+                    "','" + omodel.HProType +
+                    "','" + omodel.HMoney +
+                     "','" + omodel.HConWorkDays +
+                    "')";
+
+                oCn.RunProc(mainSql);
+
+                //鎻掑叆瀛愯〃
+                //foreach (Model.ClsPM_ProjectMoneyBillSub oSub in DetailColl)
+                //{
+                //    string subSql = "insert into PM_ProjectMoneyBillSub " +
+                //        "" +
+                //        "" +
+                //        "" +
+                //        "(HInterID,HEntryID,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType" +
+                //        ",HProMoneyID,HQty,HPrice,HMoney) " +
+                //        " values(" +
+                //        "" + omodel.HInterID.ToString() +
+                //        "," + oSub.HEntryID.ToString() +
+                //        "," + oSub.HSourceInterID +
+                //        "," + oSub.HSourceEntryID +
+                //        ",'" + oSub.HSourceBillNo +
+                //        "','" + oSub.HSourceBillType +
+                //        "','" + oSub.HProMoneyID +
+                //        "'," + oSub.HQty +
+                //        "," + oSub.HPrice +
+                //        ",'" + oSub.HMoney +
+                //        "')";
+                //    oCn.RunProc(subSql);
+                //}
+
+                sReturn = "鏂板鍗曟嵁鎴愬姛锛�";
+                oCn.Commit();
+                return true;
+            }
+            catch (Exception e)
+            {
+                sReturn = e.Message;
+                oCn.RollBack();
+                throw (e);
+            }
+        }
+        #endregion
+
+        #region 鏄剧ず鍗曟嵁
+        public override bool ShowBill(Int64 lngBillKey, ref string sReturn)
+        {
+            try
+            {
+                //鏌ヨ涓昏〃
+                DataSet Ds;
+                Ds = oCn.RunProcReturn("select * from PM_ProjectBeginBillMain Where HInterID = " + lngBillKey.ToString(), "PM_ProjectBeginBillMain");
+                if (Ds.Tables[0].Rows.Count == 0)
+                {
+                    sReturn = "鍗曟嵁鏈壘鍒帮紒";
+                    return false;
+                }
+
+                //鍥哄畾璧嬪��===========================================
+                omodel.HYear = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HYear"]);
+                omodel.HPeriod = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HPeriod"]);
+                omodel.HBillType = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HBillType"]);
+                omodel.HBillSubType = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HBillSubType"]);
+                omodel.HInterID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HInterID"]);
+                omodel.HDate = DBUtility.ClsPub.isDate(Ds.Tables[0].Rows[0]["HDate"]);
+                omodel.HBillNo = Ds.Tables[0].Rows[0]["HBillNo"].ToString().Trim();
+                omodel.HBillStatus = DBUtility.ClsPub.isInt(Ds.Tables[0].Rows[0]["HBillStatus"]);
+                omodel.HCheckItemNowID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HCheckItemNowID"]);
+                omodel.HCheckItemNextID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HCheckItemNextID"]);
+                omodel.HCheckFlowID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HCheckFlowID"]);
+                omodel.HRemark = Ds.Tables[0].Rows[0]["HRemark"].ToString().Trim();
+                omodel.HBackDate = Ds.Tables[0].Rows[0]["HBackDate"].ToString().Trim();
+                omodel.HBacker = Ds.Tables[0].Rows[0]["HBacker"].ToString().Trim();
+                omodel.HCheckDate = Ds.Tables[0].Rows[0]["HCheckDate"].ToString().Trim();
+                omodel.HChecker = Ds.Tables[0].Rows[0]["HChecker"].ToString().Trim();
+                omodel.HMaker = Ds.Tables[0].Rows[0]["HMaker"].ToString().Trim();
+                omodel.HMakeDate = Ds.Tables[0].Rows[0]["HMakeDate"].ToString().Trim();
+                omodel.HUpDateDate = Ds.Tables[0].Rows[0]["HUpDateDate"].ToString().Trim();
+                omodel.HUpDater = Ds.Tables[0].Rows[0]["HUpDater"].ToString().Trim();
+                omodel.HCloseDate = Ds.Tables[0].Rows[0]["HCloseDate"].ToString().Trim();
+                omodel.HCloseMan = Ds.Tables[0].Rows[0]["HCloseMan"].ToString().Trim();
+                omodel.HCloseType = DBUtility.ClsPub.isBool(Ds.Tables[0].Rows[0]["HCloseType"]);
+                omodel.HDeleteDate = Ds.Tables[0].Rows[0]["HDeleteDate"].ToString().Trim();
+                omodel.HDeleteMan = Ds.Tables[0].Rows[0]["HDeleteMan"].ToString().Trim();
+                //========================================================
+
+                //
+
+                //寰幆
+                DataSet DsSub;
+                DsSub = oCn.RunProcReturn("select * from PM_ProjectBeginBillSub where HInterID = " + lngBillKey.ToString() + "order by HEntryID", "PM_ProjectBeginBillSub");
+                DetailColl.Clear();//娓呯┖
+                for (int i = 0; i < DsSub.Tables[0].Rows.Count; i++)
+                {
+                    Model.ClsPM_ProjectBeginBillSub oSub = new Model.ClsPM_ProjectBeginBillSub();
+                    // 鍥哄畾璧嬪��===============================================
+                    oSub.HInterID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HInterID"]);
+                    oSub.HEntryID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HEntryID"]);
+                    oSub.HSourceInterID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HSourceInterID"]);
+                    oSub.HSourceEntryID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HSourceEntryID"]);
+                    oSub.HSourceBillType = DsSub.Tables[0].Rows[i]["HSourceBillType"].ToString().Trim();
+                    oSub.HSourceBillNo = DsSub.Tables[0].Rows[i]["HSourceBillNo"].ToString().Trim();
+                    oSub.HRelationQty = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HRelationQty"]);
+                    oSub.HRelationMoney = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HRelationMoney"]);
+                    oSub.HCloseMan = DBUtility.ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HCloseMan"]);
+                    oSub.HCloseType = DBUtility.ClsPub.isBool(DsSub.Tables[0].Rows[i]["HCloseType"]);
+                    oSub.HEntryCloseDate = DBUtility.ClsPub.isDate(DsSub.Tables[0].Rows[i]["HEntryCloseDate"]);
+                    oSub.HRemark = DsSub.Tables[0].Rows[i]["HRemark"].ToString().Trim();
+                    //===================================================
+                   
+
+                    DetailColl.Add(oSub);
+                }
+                sReturn = "鏄剧ず鍗曟嵁鎴愬姛锛�";
+                return true;
+            }
+            catch (Exception e)
+            {
+                sReturn = e.Message;
+                throw (e);
+            }
+        }
+        #endregion
+
+    }
+
+}
diff --git a/DAL/ClsPM_ProjectEndBillMain.cs b/DAL/ClsPM_ProjectEndBillMain.cs
new file mode 100644
index 0000000..989c8a5
--- /dev/null
+++ b/DAL/ClsPM_ProjectEndBillMain.cs
@@ -0,0 +1,293 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Text;
+using System.Data;
+
+namespace DAL
+{
+    public class ClsPM_ProjectEndBillMain : DBUtility.ClsXt_BaseBill
+    {
+
+        public Model.ClsPM_ProjectEndBillMain omodel = new Model.ClsPM_ProjectEndBillMain();
+        public List<Model.ClsPM_ProjectEndBillSub> DetailColl = new List<Model.ClsPM_ProjectEndBillSub>();
+
+        public ClsPM_ProjectEndBillMain()
+        {
+            base.MvarItemKeySub = "PM_ProjectEndBillSub";
+            base.MvarItemKeySub2 = "";
+            base.MvarItemKeySub3 = "";
+            base.MvarItemKeySub4 = "";
+            base.MvarItemKey = "PM_ProjectEndBillMain";
+            base.MvarReportTitle = "椤圭洰楠屾敹鍗�";
+            base.BillType = "4761";
+            base.HBillSubType = "4761";
+
+        }
+
+        #region 鍥哄畾浠g爜
+        #region 鏃犲弬鏋勯�犲嚱鏁�
+        ~ClsPM_ProjectEndBillMain()
+        {
+            DetailColl = null;
+        }
+        #endregion
+        #endregion
+
+        //#region 淇敼鍗曟嵁
+        public override bool ModifyBill(Int64 lngBillKey, ref string sReturn)
+        {
+            try
+            {
+                
+                oCn.BeginTran();
+                //鏇存柊涓昏〃
+                string mainSql = "update PM_ProjectEndBillMain set " +
+                    " HBillNo = '" + omodel.HBillNo +
+                     "', HRemark  = '" + omodel.HRemark +
+                     "', HProjectID  = '" + omodel.HProjectID +
+                    "', HProNumber   = '" + omodel.HProNumber +
+                    "', HProName  = '" + omodel.HProName +
+                    "', HCusID  = '" + omodel.HCusID +
+                     "', HPMTeamID  = '" + omodel.HPMTeamID +
+                    "', HPMEmpID = '" + omodel.HPMEmpID +
+                    "', HWorkEmpID  = '" + omodel.HWorkEmpID +
+                     "', HManagerID  = '" + omodel.HManagerID +
+                    "', HOrgID  ='" + omodel.HOrgID +
+                     "', HNote  ='" + omodel.HNote +
+                     "', HTestNote ='" + omodel.HTestNote +
+                     "', HTestDate  ='" + omodel.HTestDate +
+                     "', HTestEmp  ='" + omodel.HTestEmp +
+                     "', HRunBeginDate  ='" + omodel.HRunBeginDate +
+                     "', HEndDate  ='" + omodel.HEndDate +
+                     "', HConWorkDays  ='" + omodel.HConWorkDays +
+                     "', HUpDater = '" + omodel.HUpDater +
+                    "', HUpDateDate = getdate()" +
+                    //===============================================================
+
+                    " where HInterID = " + omodel.HInterID;
+                oCn.RunProc(mainSql);
+                //鍒犻櫎鍏宠仈
+                DeleteRelation(ref sReturn, lngBillKey);
+                //鍒犻櫎瀛愯〃
+                DeleteBillSub(lngBillKey);
+
+                ////鎻掑叆瀛愯〃
+                //omodel.HInterID = lngBillKey;
+                //foreach (Model.ClsPM_ProjectMoneyBillSub oSub in DetailColl)
+                //{
+                //    string subSql = "insert into PM_ProjectMoneyBillSub " +
+                //        "" +
+                //        "" +
+                //        "" +
+                //        "(HInterID,HEntryID,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType" +
+                //        ",HProMoneyID,HQty,HPrice,HMoney) " +
+                //        " values(" +
+                //        "" + omodel.HInterID.ToString() +
+                //        "," + oSub.HEntryID.ToString() +
+                //        "," + oSub.HSourceInterID +
+                //        "," + oSub.HSourceEntryID +
+                //        ",'" + oSub.HSourceBillNo +
+                //        "','" + oSub.HSourceBillType +
+                //        "','" + oSub.HProMoneyID +
+                //        "'," + oSub.HQty +
+                //        "," + oSub.HPrice +
+                //        ",'" + oSub.HMoney +
+                //        "')";
+                //    oCn.RunProc(subSql);
+                //}
+
+
+                sReturn = "淇敼鍗曟嵁鎴愬姛锛�";
+                oCn.Commit();
+                return true;
+            }
+            catch (Exception e)
+            {
+                sReturn = e.Message;
+                oCn.RollBack();
+                throw (e);
+            }
+        }
+        //#endregion
+
+        #region  鏂板鍗曟嵁
+        public override bool AddBill(ref string sReturn)
+        {
+            try
+            {
+                DataSet ds;
+
+
+                oCn.BeginTran();
+
+                //妫�鏌ヤ富琛ㄥ唴鐮佹槸鍚﹂噸澶嶏紝鑻ラ噸澶嶅垯閲嶆柊鐢熸垚骞剁户缁鏌ワ紝鐩村埌涓嶅啀閲嶅
+                while (true)
+                {
+                    ds = oCn.RunProcReturn("select * from PM_ProjectEndBillMain where HInterID = " + omodel.HInterID, "PM_ProjectEndBillMain");
+                    if (ds != null && ds.Tables[0].Rows.Count > 0)
+                    {
+                        omodel.HInterID = DBUtility.ClsPub.CreateBillID(BillType, ref DBUtility.ClsPub.sExeReturnInfo);
+                    }
+                    else
+                    {
+                        break;
+                    }
+                }
+                
+                //鎻掑叆涓昏〃
+                string mainSql = "insert into PM_ProjectEndBillMain " +
+                    "(HYear,HPeriod,HBillType,HBillSubType,HInterID,HDate,HBillNo,HRemark,HMaker,HMakeDate" +
+                    ",HProjectID,HProNumber,HProName,HCusID,HPMTeamID,HPMEmpID,HWorkEmpID,HManagerID,HOrgID,HTestEmp,HNote,HTestNote,HTestDate,HRunBeginDate,HEndDate,HConWorkDays) " +
+                    "values(" +
+                    "" + (omodel.HYear.ToString() != "0" ? omodel.HYear.ToString() : DateTime.Now.Year.ToString()) +
+                    "," + omodel.HPeriod.ToString() +
+                    ",'" + this.BillType +
+                    "','" + this.HBillSubType +
+                    "'," + omodel.HInterID +
+                    ",'" + omodel.HDate +
+                    "','" + omodel.HBillNo +
+                    "','" + omodel.HRemark +
+                    "','" + omodel.HMaker +
+                    "','" + omodel.HMakeDate +
+                    "','" + omodel.HProjectID +
+                    "','" + omodel.HProNumber +
+                    "','" + omodel.HProName +
+                    "','" + omodel.HCusID +
+                    "','" + omodel.HPMTeamID +
+                    "','" + omodel.HPMEmpID +
+                    "','" + omodel.HWorkEmpID +
+                    "','" + omodel.HManagerID +
+                    "','" + omodel.HOrgID +
+                    "','" + omodel.HTestEmp +
+                    "','" + omodel.HNote +
+                    "','" + omodel.HTestNote +
+                    "','" + omodel.HTestDate +
+                    "','" + omodel.HRunBeginDate +
+                    "','" + omodel.HEndDate +
+                     "','" + omodel.HConWorkDays +
+                    "')";
+
+                oCn.RunProc(mainSql);
+
+                //鎻掑叆瀛愯〃
+                //foreach (Model.ClsPM_ProjectMoneyBillSub oSub in DetailColl)
+                //{
+                //    string subSql = "insert into PM_ProjectMoneyBillSub " +
+                //        "" +
+                //        "" +
+                //        "" +
+                //        "(HInterID,HEntryID,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType" +
+                //        ",HProMoneyID,HQty,HPrice,HMoney) " +
+                //        " values(" +
+                //        "" + omodel.HInterID.ToString() +
+                //        "," + oSub.HEntryID.ToString() +
+                //        "," + oSub.HSourceInterID +
+                //        "," + oSub.HSourceEntryID +
+                //        ",'" + oSub.HSourceBillNo +
+                //        "','" + oSub.HSourceBillType +
+                //        "','" + oSub.HProMoneyID +
+                //        "'," + oSub.HQty +
+                //        "," + oSub.HPrice +
+                //        ",'" + oSub.HMoney +
+                //        "')";
+                //    oCn.RunProc(subSql);
+                //}
+
+                sReturn = "鏂板鍗曟嵁鎴愬姛锛�";
+                oCn.Commit();
+                return true;
+            }
+            catch (Exception e)
+            {
+                sReturn = e.Message;
+                oCn.RollBack();
+                throw (e);
+            }
+        }
+        #endregion
+
+        #region 鏄剧ず鍗曟嵁
+        public override bool ShowBill(Int64 lngBillKey, ref string sReturn)
+        {
+            try
+            {
+                //鏌ヨ涓昏〃
+                DataSet Ds;
+                Ds = oCn.RunProcReturn("select * from PM_ProjectEndBillMain  Where HInterID = " + lngBillKey.ToString(), "PM_ProjectEndBillMain");
+                if (Ds.Tables[0].Rows.Count == 0)
+                {
+                    sReturn = "鍗曟嵁鏈壘鍒帮紒";
+                    return false;
+                }
+
+                //鍥哄畾璧嬪��===========================================
+                omodel.HYear = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HYear"]);
+                omodel.HPeriod = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HPeriod"]);
+                omodel.HBillType = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HBillType"]);
+                omodel.HBillSubType = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HBillSubType"]);
+                omodel.HInterID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HInterID"]);
+                omodel.HDate = DBUtility.ClsPub.isDate(Ds.Tables[0].Rows[0]["HDate"]);
+                omodel.HBillNo = Ds.Tables[0].Rows[0]["HBillNo"].ToString().Trim();
+                omodel.HBillStatus = DBUtility.ClsPub.isInt(Ds.Tables[0].Rows[0]["HBillStatus"]);
+                omodel.HCheckItemNowID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HCheckItemNowID"]);
+                omodel.HCheckItemNextID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HCheckItemNextID"]);
+                omodel.HCheckFlowID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HCheckFlowID"]);
+                omodel.HRemark = Ds.Tables[0].Rows[0]["HRemark"].ToString().Trim();
+                omodel.HBackDate = Ds.Tables[0].Rows[0]["HBackDate"].ToString().Trim();
+                omodel.HBacker = Ds.Tables[0].Rows[0]["HBacker"].ToString().Trim();
+                omodel.HCheckDate = Ds.Tables[0].Rows[0]["HCheckDate"].ToString().Trim();
+                omodel.HChecker = Ds.Tables[0].Rows[0]["HChecker"].ToString().Trim();
+                omodel.HMaker = Ds.Tables[0].Rows[0]["HMaker"].ToString().Trim();
+                omodel.HMakeDate = Ds.Tables[0].Rows[0]["HMakeDate"].ToString().Trim();
+                omodel.HUpDateDate = Ds.Tables[0].Rows[0]["HUpDateDate"].ToString().Trim();
+                omodel.HUpDater = Ds.Tables[0].Rows[0]["HUpDater"].ToString().Trim();
+                omodel.HCloseDate = Ds.Tables[0].Rows[0]["HCloseDate"].ToString().Trim();
+                omodel.HCloseMan = Ds.Tables[0].Rows[0]["HCloseMan"].ToString().Trim();
+                omodel.HCloseType = DBUtility.ClsPub.isBool(Ds.Tables[0].Rows[0]["HCloseType"]);
+                omodel.HDeleteDate = Ds.Tables[0].Rows[0]["HDeleteDate"].ToString().Trim();
+                omodel.HDeleteMan = Ds.Tables[0].Rows[0]["HDeleteMan"].ToString().Trim();
+                //========================================================
+
+            
+
+                //
+
+                //寰幆
+                DataSet DsSub;
+                DsSub = oCn.RunProcReturn("select * from PM_ProjectEndBillSub  where HInterID = " + lngBillKey.ToString() + "order by HEntryID", "PM_ProjectEndBillSub ");
+                DetailColl.Clear();//娓呯┖
+                for (int i = 0; i < DsSub.Tables[0].Rows.Count; i++)
+                {
+                    Model.ClsPM_ProjectEndBillSub oSub = new Model.ClsPM_ProjectEndBillSub();
+                    // 鍥哄畾璧嬪��===============================================
+                    oSub.HInterID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HInterID"]);
+                    oSub.HEntryID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HEntryID"]);
+                    oSub.HSourceInterID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HSourceInterID"]);
+                    oSub.HSourceEntryID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HSourceEntryID"]);
+                    oSub.HSourceBillType = DsSub.Tables[0].Rows[i]["HSourceBillType"].ToString().Trim();
+                    oSub.HSourceBillNo = DsSub.Tables[0].Rows[i]["HSourceBillNo"].ToString().Trim();
+                    oSub.HRelationQty = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HRelationQty"]);
+                    oSub.HRelationMoney = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HRelationMoney"]);
+                    oSub.HCloseMan = DBUtility.ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HCloseMan"]);
+                    oSub.HCloseType = DBUtility.ClsPub.isBool(DsSub.Tables[0].Rows[i]["HCloseType"]);
+                    oSub.HEntryCloseDate = DBUtility.ClsPub.isDate(DsSub.Tables[0].Rows[i]["HEntryCloseDate"]);
+                    oSub.HRemark = DsSub.Tables[0].Rows[i]["HRemark"].ToString().Trim();
+                    //===================================================
+                 
+
+                    DetailColl.Add(oSub);
+                }
+                sReturn = "鏄剧ず鍗曟嵁鎴愬姛锛�";
+                return true;
+            }
+            catch (Exception e)
+            {
+                sReturn = e.Message;
+                throw (e);
+            }
+        }
+        #endregion
+
+    }
+
+}
diff --git a/DAL/ClsPM_ProjectMoneyBillMain.cs b/DAL/ClsPM_ProjectMoneyBillMain.cs
new file mode 100644
index 0000000..af86b4d
--- /dev/null
+++ b/DAL/ClsPM_ProjectMoneyBillMain.cs
@@ -0,0 +1,286 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Text;
+using System.Data;
+
+namespace DAL
+{
+    public  class ClsPM_ProjectMoneyBillMain : DBUtility.ClsXt_BaseBill
+    {
+        public Model.ClsPM_ProjectMoneyBillMain omodel = new Model.ClsPM_ProjectMoneyBillMain();
+        public List<Model.ClsPM_ProjectMoneyBillSub> DetailColl = new List<Model.ClsPM_ProjectMoneyBillSub>();
+
+        public ClsPM_ProjectMoneyBillMain()
+        {
+            base.MvarItemKeySub = "PM_ProjectMoneyBillSub";
+            base.MvarItemKeySub2 = "";
+            base.MvarItemKeySub3 = "";
+            base.MvarItemKeySub4 = "";
+            base.MvarItemKey= "PM_ProjectMoneyBillMain";
+            base.MvarReportTitle="椤圭洰璐圭敤鍗�";
+            base.BillType="4759";
+            base.HBillSubType = "4759";
+
+        }
+
+        #region 鍥哄畾浠g爜
+        #region 鏃犲弬鏋勯�犲嚱鏁�
+        ~ClsPM_ProjectMoneyBillMain()
+        {
+            DetailColl = null;
+        }
+        #endregion
+        #endregion
+
+        //#region 淇敼鍗曟嵁
+        public override bool ModifyBill(Int64 lngBillKey, ref string sReturn)
+        {
+            try
+            {
+                oCn.BeginTran();
+                //鏇存柊涓昏〃
+                string mainSql = "update PM_ProjectMoneyBillMain set " +
+                    " HBillNo = '" + omodel.HBillNo +
+                     "', HRemark  = '" + omodel.HRemark + 
+                     "', HProjectID  = '" + omodel.HProjectID +
+                    "', HProNumber   = '" + omodel.HProNumber+
+                    "', HProName  = '" + omodel.HProName +
+                    "', HCusID  = '" + omodel.HCusID +
+                     "', HPMTeamID  = '" + omodel.HPMTeamID +
+                    "', HPMEmpID = '" + omodel.HPMEmpID +
+                    "', HWorkEmpID  = '" + omodel.HWorkEmpID +
+                     "', HManagerID  = '" + omodel.HManagerID +
+                    "', HOrgID  ='" + omodel.HOrgID +
+                    "', HUpDater = '" + omodel.HUpDater +
+                    "', HUpDateDate = getdate()" +
+                    //===============================================================
+
+                    " where HInterID = " + omodel.HInterID;
+                oCn.RunProc(mainSql);
+                //鍒犻櫎鍏宠仈
+                DeleteRelation(ref sReturn, lngBillKey);
+                //鍒犻櫎瀛愯〃
+                DeleteBillSub(lngBillKey);
+
+                //鎻掑叆瀛愯〃
+                omodel.HInterID = lngBillKey;
+                foreach (Model.ClsPM_ProjectMoneyBillSub oSub in DetailColl)
+                {
+                    string subSql = "insert into PM_ProjectMoneyBillSub " +
+                        "" +
+                        "" +
+                        "" +
+                        "(HInterID,HEntryID,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType" +
+                        ",HProMoneyID,HQty,HPrice,HMoney) " +
+                        " values(" +
+                        "" + omodel.HInterID.ToString() +
+                        "," + oSub.HEntryID.ToString() +
+                        "," + oSub.HSourceInterID +
+                        "," + oSub.HSourceEntryID +
+                        ",'" + oSub.HSourceBillNo +
+                        "','" + oSub.HSourceBillType +
+                        "','" + oSub.HProMoneyID +
+                        "'," + oSub.HQty +
+                        "," + oSub.HPrice +
+                        ",'" + oSub.HMoney +
+                        "')";
+                    oCn.RunProc(subSql);
+                }
+
+
+                sReturn = "淇敼鍗曟嵁鎴愬姛锛�";
+                oCn.Commit();
+                return true;
+            }
+            catch (Exception e)
+            {
+                sReturn = e.Message;
+                oCn.RollBack();
+                throw (e);
+            }
+        }
+        //#endregion
+
+        #region  鏂板鍗曟嵁
+        public override bool AddBill(ref string sReturn)
+        {
+            try
+            {
+                DataSet ds;
+
+
+                oCn.BeginTran();
+
+                //妫�鏌ヤ富琛ㄥ唴鐮佹槸鍚﹂噸澶嶏紝鑻ラ噸澶嶅垯閲嶆柊鐢熸垚骞剁户缁鏌ワ紝鐩村埌涓嶅啀閲嶅
+                while (true)
+                {
+                    ds = oCn.RunProcReturn("select * from PM_ProjectMoneyBillMain where HInterID = " + omodel.HInterID, "PM_ProjectMoneyBillMain");
+                    if(ds!=null && ds.Tables[0].Rows.Count > 0)
+                    {
+                        omodel.HInterID = DBUtility.ClsPub.CreateBillID(BillType, ref DBUtility.ClsPub.sExeReturnInfo);
+                    }
+                    else
+                    {
+                        break;
+                    }
+                }
+
+                //鎻掑叆涓昏〃
+                string mainSql = "insert into PM_ProjectMoneyBillMain" +
+                    "(HYear,HPeriod,HBillType,HBillSubType,HInterID,HDate,HBillNo,HRemark,HMaker,HMakeDate" +
+                    ",HProjectID,HProNumber,HProName,HCusID,HPMTeamID,HPMEmpID,HWorkEmpID,HManagerID,HOrgID) " +
+                    "values(" +
+                    "" + (omodel.HYear.ToString() != "0" ? omodel.HYear.ToString() : DateTime.Now.Year.ToString()) +
+                    "," + omodel.HPeriod.ToString() +
+                    ",'" + this.BillType +
+                    "','" + this.HBillSubType +
+                    "'," + omodel.HInterID +
+                    ",'" + omodel.HDate +
+                    "','" + omodel.HBillNo +
+                    "','" + omodel.HRemark +
+                    "','" + omodel.HMaker +
+                    "','" + omodel.HMakeDate +
+                    "','" + omodel.HProjectID +
+                    "','" + omodel.HProNumber +
+                    "','" + omodel.HProName+
+                    "','" + omodel.HCusID+
+                    "','" + omodel.HPMTeamID+
+                    "','" + omodel.HPMEmpID+
+                    "','" + omodel.HWorkEmpID+
+                    "','" + omodel.HManagerID+
+                    "','" + omodel.HOrgID+
+                    "')";
+
+                oCn.RunProc(mainSql);
+
+                //鎻掑叆瀛愯〃
+                foreach (Model.ClsPM_ProjectMoneyBillSub oSub in DetailColl)
+                {
+                    string subSql = "insert into PM_ProjectMoneyBillSub " +
+                        "" +
+                        "" +
+                        "" +
+                        "(HInterID,HEntryID,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType" +
+                        ",HProMoneyID,HQty,HPrice,HMoney) " +
+                        " values(" +
+                        "" + omodel.HInterID.ToString() +
+                        "," + oSub.HEntryID.ToString() +
+                        "," + oSub.HSourceInterID +
+                        "," + oSub.HSourceEntryID +
+                        ",'" + oSub.HSourceBillNo +
+                        "','" + oSub.HSourceBillType +
+                        "','" + oSub.HProMoneyID +
+                        "'," + oSub.HQty +
+                        "," + oSub.HPrice +
+                        ",'" + oSub.HMoney +
+                        "')";
+                    oCn.RunProc(subSql);
+                }
+
+                sReturn = "鏂板鍗曟嵁鎴愬姛锛�";
+                oCn.Commit();
+                return true;
+            }
+            catch (Exception e)
+            {
+                sReturn = e.Message;
+                oCn.RollBack();
+                throw (e);
+            }
+        }
+        #endregion
+
+        #region 鏄剧ず鍗曟嵁
+        //public override bool ShowBill(Int64 lngBillKey, ref string sReturn)
+        //{
+        //    try
+        //    {
+        //        //鏌ヨ涓昏〃
+        //        DataSet Ds ;
+        //        Ds = oCn.RunProcReturn("select * from PM_WorkReportWeekBillMain Where HInterID = " + lngBillKey.ToString(), "PM_WorkReportWeekBillMain");
+        //        if(Ds.Tables[0].Rows.Count==0)
+        //        {
+        //            sReturn = "鍗曟嵁鏈壘鍒帮紒";
+        //            return false;
+        //        }
+
+        //        //鍥哄畾璧嬪��===========================================
+        //        omodel.HYear = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HYear"]);
+        //        omodel.HPeriod = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HPeriod"]);
+        //        omodel.HBillType = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HBillType"]);
+        //        omodel.HBillSubType = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HBillSubType"]);
+        //        omodel.HInterID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HInterID"]);
+        //        omodel.HDate = DBUtility.ClsPub.isDate(Ds.Tables[0].Rows[0]["HDate"]);
+        //        omodel.HBillNo = Ds.Tables[0].Rows[0]["HBillNo"].ToString().Trim();
+        //        omodel.HBillStatus = DBUtility.ClsPub.isInt(Ds.Tables[0].Rows[0]["HBillStatus"]);
+        //        omodel.HCheckItemNowID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HCheckItemNowID"]);
+        //        omodel.HCheckItemNextID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HCheckItemNextID"]);
+        //        omodel.HCheckFlowID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HCheckFlowID"]);
+        //        omodel.HRemark = Ds.Tables[0].Rows[0]["HRemark"].ToString().Trim();
+        //        omodel.HBackDate = Ds.Tables[0].Rows[0]["HBackDate"].ToString().Trim();
+        //        omodel.HBacker = Ds.Tables[0].Rows[0]["HBacker"].ToString().Trim();
+        //        omodel.HCheckDate = Ds.Tables[0].Rows[0]["HCheckDate"].ToString().Trim();
+        //        omodel.HChecker = Ds.Tables[0].Rows[0]["HChecker"].ToString().Trim();
+        //        omodel.HMaker = Ds.Tables[0].Rows[0]["HMaker"].ToString().Trim();
+        //        omodel.HMakeDate = Ds.Tables[0].Rows[0]["HMakeDate"].ToString().Trim();
+        //        omodel.HUpDateDate = Ds.Tables[0].Rows[0]["HUpDateDate"].ToString().Trim();
+        //        omodel.HUpDater = Ds.Tables[0].Rows[0]["HUpDater"].ToString().Trim();
+        //        omodel.HCloseDate = Ds.Tables[0].Rows[0]["HCloseDate"].ToString().Trim();
+        //        omodel.HCloseMan = Ds.Tables[0].Rows[0]["HCloseMan"].ToString().Trim();
+        //        omodel.HCloseType = DBUtility.ClsPub.isBool(Ds.Tables[0].Rows[0]["HCloseType"]);
+        //        omodel.HDeleteDate = Ds.Tables[0].Rows[0]["HDeleteDate"].ToString().Trim();
+        //        omodel.HDeleteMan = Ds.Tables[0].Rows[0]["HDeleteMan"].ToString().Trim();
+        //        //========================================================
+
+        //        omodel.HOrgID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HOrgID"]);
+        //        omodel.HWeek = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HWeek"]);
+        //        omodel.HBeginDate = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HBeginDate"]);
+        //        omodel.HEndDate = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HEndDate"]);
+        //        omodel.HPlanEmpID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HPlanEmpID"]);
+
+        //        //
+                
+        //        //寰幆
+        //        DataSet DsSub ;
+        //        DsSub = oCn.RunProcReturn("select * from PM_WorkTaskWeekBillSub where HInterID = " + lngBillKey.ToString() + "order by HEntryID", "PM_WorkTaskWeekBillSub");
+        //        DetailColl.Clear();//娓呯┖
+        //        for (int i = 0; i < DsSub.Tables[0].Rows.Count; i++)
+        //        {
+        //            Model.ClsPM_WorkTaskWeekBillSub oSub = new Model.ClsPM_WorkTaskWeekBillSub();
+        //            // 鍥哄畾璧嬪��===============================================
+        //            oSub.HInterID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HInterID"]);
+        //            oSub.HEntryID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HEntryID"]);
+        //            oSub.HSourceInterID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HSourceInterID"]);
+        //            oSub.HSourceEntryID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HSourceEntryID"]);
+        //            oSub.HSourceBillType = DsSub.Tables[0].Rows[i]["HSourceBillType"].ToString().Trim();
+        //            oSub.HSourceBillNo = DsSub.Tables[0].Rows[i]["HSourceBillNo"].ToString().Trim();
+        //            oSub.HRelationQty = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HRelationQty"]);
+        //            oSub.HRelationMoney = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HRelationMoney"]); 
+        //            oSub.HCloseMan =  DBUtility.ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HCloseMan"]);
+        //            oSub.HCloseType = DBUtility.ClsPub.isBool(DsSub.Tables[0].Rows[i]["HCloseType"]);
+        //            oSub.HEntryCloseDate = DBUtility.ClsPub.isDate(DsSub.Tables[0].Rows[i]["HEntryCloseDate"]);
+        //            oSub.HRemark = DsSub.Tables[0].Rows[i]["HRemark"].ToString().Trim();
+        //            //===================================================
+        //            oSub.HWeekDay = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HWeekDay"]);
+        //            oSub.HSno = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HSno"]);
+        //            oSub.HProjectID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HProjectID"]);
+        //            oSub.HProjectStageID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HProjectStageID"]);
+        //            oSub.HTaskNote = DBUtility.ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HTaskNote"]);
+        //            oSub.HPlanTimes = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HPlanTimes"]);
+
+        //            DetailColl.Add(oSub);
+        //        }
+        //        sReturn = "鏄剧ず鍗曟嵁鎴愬姛锛�";
+        //        return true;
+        //    }
+        //    catch (Exception e)
+        //    {
+        //        sReturn = e.Message;
+        //        throw (e);
+        //    }
+        //}
+        #endregion
+
+    }
+
+}
diff --git a/DAL/DAL.csproj b/DAL/DAL.csproj
index a3d128d..350aa3b 100644
--- a/DAL/DAL.csproj
+++ b/DAL/DAL.csproj
@@ -80,12 +80,18 @@
     <Compile Include="ClsPay_EarlyLateErrBill.cs" />
     <Compile Include="ClsPay_RewardPunishBill.cs" />
     <Compile Include="ClsPay_WorkErrTimesBill.cs" />
+    <Compile Include="ClsPM_ProjectEndBillMain.cs" />
+    <Compile Include="ClsPM_ProjectBeginBillMain.cs" />
+    <Compile Include="ClsPM_ProjectMoneyBillMain.cs" />
     <Compile Include="ClsPM_CustomerTaskBillMain.cs" />
+    <Compile Include="ClsGy_MaterialMouldBillMain.cs" />
     <Compile Include="ClsPM_WorkPlanMonthBillMain.cs" />
     <Compile Include="MES\ClsSc_SourceLineRepairBill.cs" />
     <Compile Include="MES\ClsSc_MESMaterToSourceBill .cs" />
     <Compile Include="浜轰簨绠$悊\ClsHR_EmpFosterBill.cs" />
     <Compile Include="浜轰簨绠$悊\ClsHR_EmpUpChangeBill.cs" />
+    <Compile Include="浠撳簱绠$悊\ClsKf_StepFoldInBill.cs" />
+    <Compile Include="浠撳簱绠$悊\ClsKf_StepFoldOutBill.cs" />
     <Compile Include="浠撳簱绠$悊\ClsKf_SellOutBillForLayUI.cs" />
     <Compile Include="浠撳簱绠$悊\鏉$爜绠$悊\ClsGy_BarCodeBill_ChaiMa.cs" />
     <Compile Include="浠撳簱绠$悊\鏉$爜绠$悊\ClsKF_BarCodeStatusChangeBill.cs" />
@@ -625,6 +631,7 @@
     <Compile Include="鐢熶骇绠$悊\璁惧绠$悊\璁惧鎶曚骇\ClsSb_EquipWorkBeforeCheckBill.cs" />
     <Compile Include="绯荤粺鍏敤\ClsXt_SystemParameter_Ctl.cs" />
     <Compile Include="绯荤粺鍏敤\ClsXt_BillSubType_Ctl.cs" />
+    <Compile Include="璁″垝绠$悊\ClsGy_MaterialTechParamBillMain.cs" />
     <Compile Include="璐ㄦ绠$悊\ClsQC_FirstPieceCheckBill.cs" />
     <Compile Include="璐ㄦ绠$悊\ClsQC_LastPieceCheckBill.cs" />
     <Compile Include="璐ㄦ绠$悊\ClsQC_NoPassProdCheckBill.cs" />
diff --git "a/DAL/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_StepFoldInBill.cs" "b/DAL/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_StepFoldInBill.cs"
new file mode 100644
index 0000000..1494d7e
--- /dev/null
+++ "b/DAL/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_StepFoldInBill.cs"
@@ -0,0 +1,360 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Text;
+using System.Data;
+
+namespace DAL
+{
+    public  class ClsKf_StepFoldInBill : DBUtility.ClsXt_BaseBill
+    {
+        public Model.ClsKf_StepFoldInBillMain omodel = new Model.ClsKf_StepFoldInBillMain();
+        public List<Model.ClsKf_StepFoldInBillSub> DetailColl = new List<Model.ClsKf_StepFoldInBillSub>();
+
+        public ClsKf_StepFoldInBill()
+        {
+            base.MvarItemKeySub = "Kf_ICStockBillSub";
+            base.MvarItemKeySub2 = "";
+            base.MvarItemKeySub3 = "";
+            base.MvarItemKeySub4 = "";
+            base.MvarItemKey= "Kf_ICStockBillMain";
+            base.MvarReportTitle="鍒嗘寮忚皟鍏ュ崟";
+            base.BillType= "1251";
+            base.HBillSubType = "1251";
+
+        }
+
+        #region 鍥哄畾浠g爜
+        #region 鏃犲弬鏋勯�犲嚱鏁�
+        ~ClsKf_StepFoldInBill()
+        {
+            DetailColl = null;
+        }
+        #endregion
+        #endregion
+
+        #region 淇敼鍗曟嵁
+        public override bool ModifyBill(Int64 lngBillKey, ref string sReturn)
+        {
+            try
+            {
+                oCn.BeginTran();
+                //鏇存柊涓昏〃
+                string mainSql = "update Kf_ICStockBillMain  set " +
+                    "HBillNo = '" + omodel.HBillNo + "'" +
+                    ",HDate = '" + omodel.HDate + "'" +
+                    ",HMainSourceInterID = " + omodel.HMainSourceInterID + "" +
+                    ",HMainSourceEntryID = " + omodel.HMainSourceEntryID + "" +
+                    ",HMainSourceBillNo = '" + omodel.HMainSourceBillNo + "'" +
+                    ",HMainSourceBillType = '" + omodel.HMainSourceBillType + "'" +
+                    ",HUpDater = '" + omodel.HUpDater + "'" +
+                    ",HUpDateDate = '" + DBUtility.ClsPub.isStrNull(DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss")) + "'" +
+                    ",HSupID = " + omodel.HSupID + "" +
+                    ",HPSStyleID = " + omodel.HPSStyleID + "" +
+                    ",HCurID = " + omodel.HCurID + "" +
+                    ",HEmpID = " + omodel.HEmpID + "" +
+                    ",HManagerID = " + omodel.HManagerID + "" +
+                    ",HKeeperID = " + omodel.HKeeperID + "" +
+                    ",HSecManagerID = " + omodel.HSecManagerID + "" +
+                    ",HWHID = " + omodel.HWHID + "" +
+                    ",HSCWHID = " + omodel.HSCWHID + "" +
+                    ",HDeptID = " + omodel.HDeptID + "" +
+                    ",HExplanation = '" + omodel.HExplanation + "'" +
+                    ",HInnerBillNo = '" + omodel.HInnerBillNo + "'" +
+                    ",HRemark = '" + omodel.HRemark + "'" +
+                    " where HInterID = " + omodel.HInterID;
+                oCn.RunProc(mainSql);
+
+                //鍒犻櫎鍏宠仈
+                DeleteRelation(ref sReturn, lngBillKey);
+                //鍒犻櫎瀛愯〃
+                DeleteBillSub(lngBillKey);
+
+                //鎻掑叆瀛愯〃
+                omodel.HInterID = lngBillKey;
+                //鎻掑叆瀛愯〃
+                foreach (Model.ClsKf_StepFoldInBillSub oSub in DetailColl)
+                {
+                    string subSql = "insert into Kf_ICStockBillSub" +
+                        "(HInterID,HEntryID,HBillNo_bak,HMaterID,HUnitID,HQtyMust,HQty,HPrice,HMoney,HOrderPrice,HWHID,HSCWHID,HRemark" +
+                        ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
+                        ",HPOOrderInterID,HPOOrderEntryID,HPOOrderBillNo" +
+                        ",HSeOrderInterID,HSeOrderEntryID,HSeOrderBillNo) " +
+                        " values(" +
+                       "" + omodel.HInterID + "" +
+                       "," + oSub.HEntryID + "" +
+                       ",'" + omodel.HBillNo + "'" +
+                       "," + oSub.HMaterID + "" +
+                       "," + oSub.HUnitID + "" +
+                        "," + oSub.HQtyMust + "" +
+                       "," + oSub.HQty + "" +
+                       "," + oSub.HPrice + "" +
+                       "," + oSub.HMoney + "" +
+                       "," + oSub.HOrderPrice + "" +
+                       "," + oSub.HWHID + "" +
+                       "," + oSub.HSCWHID + "" +
+                       ",'" + oSub.HRemark + "'" +
+                       "," + oSub.HSourceInterID + "" +
+                       "," + oSub.HSourceEntryID + "" +
+                       ",'" + oSub.HSourceBillNo + "'" +
+                       ",'" + oSub.HSourceBillType + "'" +
+                       "," + oSub.HRelationQty + "" +
+                       "," + oSub.HRelationMoney + "" +
+                       "," + oSub.HPOOrderInterID + "" +
+                       "," + oSub.HPOOrderEntryID + "" +
+                       ",'" + oSub.HPOOrderBillNo + "'" +
+                       "," + oSub.HSeOrderInterID + "" +
+                       "," + oSub.HSeOrderEntryID + "" +
+                       ",'" + oSub.HSeOrderBillNo + "'" +
+                        ")";
+                    oCn.RunProc(subSql);
+                }
+
+                sReturn = "淇敼鍗曟嵁鎴愬姛锛�";
+                oCn.Commit();
+                return true;
+            }
+            catch (Exception e)
+            {
+                sReturn = e.Message;
+                oCn.RollBack();
+                throw (e);
+            }
+        }
+        #endregion
+
+        #region  鏂板鍗曟嵁
+        public override bool AddBill(ref string sReturn)
+        {
+            try
+            {
+                DataSet ds;
+
+
+                oCn.BeginTran();
+
+                //妫�鏌ヤ富琛ㄥ唴鐮佹槸鍚﹂噸澶嶏紝鑻ラ噸澶嶅垯閲嶆柊鐢熸垚骞剁户缁鏌ワ紝鐩村埌涓嶅啀閲嶅
+                while (true)
+                {
+                    ds = oCn.RunProcReturn("select * from Kf_ICStockBillMain where HInterID = " + omodel.HInterID, "Kf_ICStockBillMain");
+                    if(ds!=null && ds.Tables[0].Rows.Count > 0)
+                    {
+                        omodel.HInterID = DBUtility.ClsPub.CreateBillID(BillType, ref DBUtility.ClsPub.sExeReturnInfo);
+                    }
+                    else
+                    {
+                        break;
+                    }
+                }
+
+                //鎻掑叆涓昏〃
+                string mainSql = "insert into Kf_ICStockBillMain" +
+                    "(HInterID,HBillNo,HDate,HYear,HPeriod,HBillType,HBillSubType" +
+                    ",HMainSourceInterID,HMainSourceEntryID,HMainSourceBillNo,HMainSourceBillType" +
+                    ",HMaker,HMakeDate,HWHID,HSCWHID,HSupID,HPSStyleID,HCurID,HEmpID,HManagerID,HSecManagerID,HKeeperID,HDeptID,HExplanation,HInnerBillNo,HRemark) " +
+                    "values(" +
+                    "" + omodel.HInterID + "" +
+                    ",'" + omodel.HBillNo + "'" +
+                    ",'" + omodel.HDate + "'" +
+                    "," + DBUtility.ClsPub.isLong(DateTime.Now.Year) + "" +
+                    "," + DBUtility.ClsPub.isLong(DateTime.Now.Month) + "" +
+                    ",'" + BillType + "'" +
+                    ",'" + HBillSubType + "'" +
+                    "," + omodel.HMainSourceInterID + "" +
+                    "," + omodel.HMainSourceEntryID + "" +
+                    ",'" + omodel.HMainSourceBillNo + "'" +
+                    ",'" + omodel.HMainSourceBillType + "'" +
+                    ",'" + omodel.HMaker + "'" +
+                    ",'" + DBUtility.ClsPub.isStrNull(DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss")) + "'" +
+                    "," + omodel.HWHID + "" +
+                    "," + omodel.HSCWHID + "" +
+                    "," + omodel.HSupID + "" +
+                    "," + omodel.HPSStyleID + "" +
+                    "," + omodel.HCurID + "" +
+                    "," + omodel.HEmpID + "" +
+                    "," + omodel.HManagerID + "" +
+                    "," + omodel.HSecManagerID + "" +
+                    "," + omodel.HKeeperID + "" +
+                    "," + omodel.HDeptID + "" +
+                    ",'" + omodel.HExplanation + "'" +
+                    ",'" + omodel.HInnerBillNo + "'" +
+                    ",'" + omodel.HRemark + "'" +
+                    ")";
+
+                oCn.RunProc(mainSql);
+
+                //鎻掑叆瀛愯〃
+                foreach (Model.ClsKf_StepFoldInBillSub oSub in DetailColl)
+                {
+                    string subSql = "insert into Kf_ICStockBillSub" +
+                        "(HInterID,HEntryID,HBillNo_bak,HMaterID,HUnitID,HQtyMust,HQty,HPrice,HTaxPrice,HMoney,HOrderPrice,HWHID,HSCWHID,HRemark" +
+                        ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
+                        ",HPOOrderInterID,HPOOrderEntryID,HPOOrderBillNo" +
+                        ",HSeOrderInterID,HSeOrderEntryID,HSeOrderBillNo,HBatchNo) " +
+                        " values(" +
+                       "" + omodel.HInterID + "" +
+                       "," + oSub.HEntryID + "" +
+                       ",'" + omodel.HBillNo + "'" +
+                       "," + oSub.HMaterID + "" +
+                       "," + oSub.HUnitID + "" +
+                       "," + oSub.HQtyMust + "" +
+                       "," + oSub.HQty + "" +
+                       "," + oSub.HPrice + "" +
+                       "," + oSub.HMoney + "" +
+                       "," + oSub.HOrderPrice + "" +
+                       "," + oSub.HWHID + "" +
+                       "," + oSub.HSCWHID + "" +
+                       ",'" + oSub.HRemark + "'" +
+                       "," + oSub.HSourceInterID + "" +
+                       "," + oSub.HSourceEntryID + "" +
+                       ",'" + oSub.HSourceBillNo + "'" +
+                       ",'" + oSub.HSourceBillType + "'" +
+                       "," + oSub.HRelationQty + "" +
+                       "," + oSub.HRelationMoney + "" +
+                       "," + oSub.HPOOrderInterID + "" +
+                       "," + oSub.HPOOrderEntryID + "" +
+                       ",'" + oSub.HPOOrderBillNo + "'" +
+                       "," + oSub.HSeOrderInterID + "" +
+                       "," + oSub.HSeOrderEntryID + "" +
+                       ",'" + oSub.HSeOrderBillNo + "'" +
+                       ",'" + oSub.HBatchNo + "'" +
+                        ")";
+                    oCn.RunProc(subSql);
+                }
+                sReturn = "鏂板鍗曟嵁鎴愬姛锛�";
+                oCn.Commit();
+                return true;
+            }
+            catch (Exception e)
+            {
+                sReturn = e.Message;
+                oCn.RollBack();
+                throw (e);
+            }
+        }
+        #endregion
+
+        #region 鏄剧ず鍗曟嵁
+        public override bool ShowBill(Int64 lngBillKey, ref string sReturn)
+        {
+            try
+            {
+                //鏌ヨ涓昏〃
+                DataSet Ds ;
+                Ds = oCn.RunProcReturn("select * from Kf_ICStockBillMain Where HInterID = " + lngBillKey.ToString(), "Kf_ICStockBillMain");
+                if(Ds.Tables[0].Rows.Count==0)
+                {
+                    sReturn = "鍗曟嵁鏈壘鍒帮紒";
+                    return false;
+                }
+
+                //鍥哄畾璧嬪��===========================================
+                omodel.HYear = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HYear"]);
+                omodel.HPeriod = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HPeriod"]);
+                omodel.HBillType = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HBillType"]);
+                omodel.HBillSubType = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HBillSubType"]);
+                omodel.HInterID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HInterID"]);
+                omodel.HDate = DBUtility.ClsPub.isDate(Ds.Tables[0].Rows[0]["HDate"]);
+                omodel.HBillNo = Ds.Tables[0].Rows[0]["HBillNo"].ToString().Trim();
+                omodel.HBillStatus = DBUtility.ClsPub.isInt(Ds.Tables[0].Rows[0]["HBillStatus"]);
+                omodel.HCheckItemNowID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HCheckItemNowID"]);
+                omodel.HCheckItemNextID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HCheckItemNextID"]);
+                omodel.HCheckFlowID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HCheckFlowID"]);
+                omodel.HRemark = Ds.Tables[0].Rows[0]["HRemark"].ToString().Trim();
+                omodel.HBackDate = Ds.Tables[0].Rows[0]["HBackDate"].ToString().Trim();
+                omodel.HBacker = Ds.Tables[0].Rows[0]["HBacker"].ToString().Trim();
+                omodel.HBackRemark = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HBackRemark"]);
+                omodel.HCheckDate = Ds.Tables[0].Rows[0]["HCheckDate"].ToString().Trim();
+                omodel.HChecker = Ds.Tables[0].Rows[0]["HChecker"].ToString().Trim();
+                omodel.HMaker = Ds.Tables[0].Rows[0]["HMaker"].ToString().Trim();
+                omodel.HMakeDate = Ds.Tables[0].Rows[0]["HMakeDate"].ToString().Trim();
+                omodel.HUpDateDate = Ds.Tables[0].Rows[0]["HUpDateDate"].ToString().Trim();
+                omodel.HUpDater = Ds.Tables[0].Rows[0]["HUpDater"].ToString().Trim();
+                omodel.HCloseDate = Ds.Tables[0].Rows[0]["HCloseDate"].ToString().Trim();
+                omodel.HCloseMan = Ds.Tables[0].Rows[0]["HCloseMan"].ToString().Trim();
+                omodel.HCloseType = DBUtility.ClsPub.isBool(Ds.Tables[0].Rows[0]["HCloseType"]);
+                omodel.HDeleteDate = Ds.Tables[0].Rows[0]["HDeleteDate"].ToString().Trim();
+                omodel.HDeleteMan = Ds.Tables[0].Rows[0]["HDeleteMan"].ToString().Trim();
+                //========================================================
+                omodel.HMainSourceInterID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HMainSourceInterID"]);
+                omodel.HMainSourceEntryID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HMainSourceEntryID"]);
+                omodel.HMainSourceBillNo = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HMainSourceBillNo"]);
+                omodel.HMainSourceBillType = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HMainSourceBillType"]);
+
+               
+                omodel.HSupID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HSupID"]);
+                omodel.HPSStyleID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HPSStyleID"]);
+                omodel.HCurID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HCurID"]);
+                omodel.HEmpID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HEmpID"]);
+                omodel.HManagerID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HManagerID"]);
+                omodel.HSecManagerID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HSecManagerID"]);
+                omodel.HKeeperID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HKeeperID"]);
+                omodel.HDeptID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HDeptID"]);
+                omodel.HWHID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HWHID"]);
+                omodel.HSCWHID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HSCWHID"]);
+
+                omodel.HExplanation = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HExplanation"]);
+                omodel.HInnerBillNo = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HInnerBillNo"]);
+
+
+                //
+
+                //寰幆
+                DataSet DsSub ;
+                DsSub = oCn.RunProcReturn("select * from Kf_ICStockBillSub where HInterID = " + lngBillKey.ToString() + "order by HEntryID", "Kf_ICStockBillSub");
+                DetailColl.Clear();//娓呯┖
+                for (int i = 0; i < DsSub.Tables[0].Rows.Count; i++)
+                {
+                    Model.ClsKf_StepFoldInBillSub oSub = new Model.ClsKf_StepFoldInBillSub();
+                    // 鍥哄畾璧嬪��===============================================
+                    oSub.HInterID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HInterID"]);
+                    oSub.HEntryID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HEntryID"]);
+                    oSub.HBillNo_bak = DBUtility.ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HBillNo_bak"]);
+                    oSub.HCloseMan =  DBUtility.ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HCloseMan"]);
+                    oSub.HCloseType = DBUtility.ClsPub.isBool(DsSub.Tables[0].Rows[i]["HCloseType"]);
+                    oSub.HEntryCloseDate = DBUtility.ClsPub.isDate(DsSub.Tables[0].Rows[i]["HEntryCloseDate"]);
+
+                    oSub.HSourceInterID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HSourceInterID"]);
+                    oSub.HSourceEntryID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HSourceEntryID"]);
+                    oSub.HSourceBillType = DsSub.Tables[0].Rows[i]["HSourceBillType"].ToString().Trim();
+                    oSub.HSourceBillNo = DsSub.Tables[0].Rows[i]["HSourceBillNo"].ToString().Trim();
+                    oSub.HRelationQty = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HRelationQty"]);
+                    oSub.HRelationMoney = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HRelationMoney"]); 
+                    
+                    oSub.HRemark = DsSub.Tables[0].Rows[i]["HRemark"].ToString().Trim();
+                    //===================================================
+                    oSub.HMaterID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HMaterID"]);
+                    oSub.HQtyMust = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HQtyMust"]);
+                    oSub.HUnitID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HUnitID"]);
+                    oSub.HQty = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[0]["HQty"]);
+                    oSub.HPrice = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[0]["HPrice"]);
+                    oSub.HOrderPrice = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[0]["HOrderPrice"]);
+                    oSub.HWHID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HWHID "]);
+                    oSub.HSCWHID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HSCWHID"]);
+
+
+
+                    oSub.HPOOrderInterID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[0]["HPOOrderInterID"]);
+                    oSub.HPOOrderEntryID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[0]["HPOOrderEntryID"]);
+                    oSub.HPOOrderBillNo = DBUtility.ClsPub.isStrNull(DsSub.Tables[0].Rows[0]["HPOOrderBillNo"]);
+
+                    oSub.HSeOrderInterID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[0]["HSeOrderInterID"]);
+                    oSub.HSeOrderEntryID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[0]["HSeOrderEntryID"]);
+                    oSub.HSeOrderBillNo = DBUtility.ClsPub.isStrNull(DsSub.Tables[0].Rows[0]["HSeOrderBillNo"]);
+                    oSub.HBatchNo = DBUtility.ClsPub.isStrNull(DsSub.Tables[0].Rows[0]["HBatchNo"]);
+
+                    DetailColl.Add(oSub);
+                }
+                sReturn = "鏄剧ず鍗曟嵁鎴愬姛锛�";
+                return true;
+            }
+            catch (Exception e)
+            {
+                sReturn = e.Message;
+                throw (e);
+            }
+        }
+        #endregion
+
+    }
+
+}
diff --git "a/DAL/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_StepFoldOutBill.cs" "b/DAL/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_StepFoldOutBill.cs"
new file mode 100644
index 0000000..96ae3f6
--- /dev/null
+++ "b/DAL/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_StepFoldOutBill.cs"
@@ -0,0 +1,360 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Text;
+using System.Data;
+
+namespace DAL
+{
+    public  class ClsKf_StepFoldOutBill : DBUtility.ClsXt_BaseBill
+    {
+        public Model.ClsKf_StepFoldOutBillMain omodel = new Model.ClsKf_StepFoldOutBillMain();
+        public List<Model.ClsKf_StepFoldOutBillSub> DetailColl = new List<Model.ClsKf_StepFoldOutBillSub>();
+
+        public ClsKf_StepFoldOutBill()
+        {
+            base.MvarItemKeySub = "Kf_ICStockBillSub";
+            base.MvarItemKeySub2 = "";
+            base.MvarItemKeySub3 = "";
+            base.MvarItemKeySub4 = "";
+            base.MvarItemKey= "Kf_ICStockBillMain";
+            base.MvarReportTitle="鍒嗘寮忚皟鍑哄崟";
+            base.BillType= "1250";
+            base.HBillSubType = "1250";
+
+        }
+
+        #region 鍥哄畾浠g爜
+        #region 鏃犲弬鏋勯�犲嚱鏁�
+        ~ClsKf_StepFoldOutBill()
+        {
+            DetailColl = null;
+        }
+        #endregion
+        #endregion
+
+        #region 淇敼鍗曟嵁
+        public override bool ModifyBill(Int64 lngBillKey, ref string sReturn)
+        {
+            try
+            {
+                oCn.BeginTran();
+                //鏇存柊涓昏〃
+                string mainSql = "update Kf_ICStockBillMain  set " +
+                    "HBillNo = '" + omodel.HBillNo + "'" +
+                    ",HDate = '" + omodel.HDate + "'" +
+                    ",HMainSourceInterID = " + omodel.HMainSourceInterID + "" +
+                    ",HMainSourceEntryID = " + omodel.HMainSourceEntryID + "" +
+                    ",HMainSourceBillNo = '" + omodel.HMainSourceBillNo + "'" +
+                    ",HMainSourceBillType = '" + omodel.HMainSourceBillType + "'" +
+                    ",HUpDater = '" + omodel.HUpDater + "'" +
+                    ",HUpDateDate = '" + DBUtility.ClsPub.isStrNull(DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss")) + "'" +
+                    ",HSupID = " + omodel.HSupID + "" +
+                    ",HPSStyleID = " + omodel.HPSStyleID + "" +
+                    ",HCurID = " + omodel.HCurID + "" +
+                    ",HEmpID = " + omodel.HEmpID + "" +
+                    ",HManagerID = " + omodel.HManagerID + "" +
+                    ",HKeeperID = " + omodel.HKeeperID + "" +
+                    ",HSecManagerID = " + omodel.HSecManagerID + "" +
+                    ",HWHID = " + omodel.HWHID + "" +
+                    ",HSCWHID = " + omodel.HSCWHID + "" +
+                    ",HDeptID = " + omodel.HDeptID + "" +
+                    ",HExplanation = '" + omodel.HExplanation + "'" +
+                    ",HInnerBillNo = '" + omodel.HInnerBillNo + "'" +
+                    ",HRemark = '" + omodel.HRemark + "'" +
+                    " where HInterID = " + omodel.HInterID;
+                oCn.RunProc(mainSql);
+
+                //鍒犻櫎鍏宠仈
+                DeleteRelation(ref sReturn, lngBillKey);
+                //鍒犻櫎瀛愯〃
+                DeleteBillSub(lngBillKey);
+
+                //鎻掑叆瀛愯〃
+                omodel.HInterID = lngBillKey;
+                //鎻掑叆瀛愯〃
+                foreach (Model.ClsKf_StepFoldOutBillSub oSub in DetailColl)
+                {
+                    string subSql = "insert into Kf_ICStockBillSub" +
+                        "(HInterID,HEntryID,HBillNo_bak,HMaterID,HUnitID,HQtyMust,HQty,HPrice,HMoney,HOrderPrice,HWHID,HSCWHID,HRemark" +
+                        ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
+                        ",HPOOrderInterID,HPOOrderEntryID,HPOOrderBillNo" +
+                        ",HSeOrderInterID,HSeOrderEntryID,HSeOrderBillNo) " +
+                        " values(" +
+                       "" + omodel.HInterID + "" +
+                       "," + oSub.HEntryID + "" +
+                       ",'" + omodel.HBillNo + "'" +
+                       "," + oSub.HMaterID + "" +
+                       "," + oSub.HUnitID + "" +
+                        "," + oSub.HQtyMust + "" +
+                       "," + oSub.HQty + "" +
+                       "," + oSub.HPrice + "" +
+                       "," + oSub.HMoney + "" +
+                       "," + oSub.HOrderPrice + "" +
+                       "," + oSub.HWHID + "" +
+                       "," + oSub.HSCWHID + "" +
+                       ",'" + oSub.HRemark + "'" +
+                       "," + oSub.HSourceInterID + "" +
+                       "," + oSub.HSourceEntryID + "" +
+                       ",'" + oSub.HSourceBillNo + "'" +
+                       ",'" + oSub.HSourceBillType + "'" +
+                       "," + oSub.HRelationQty + "" +
+                       "," + oSub.HRelationMoney + "" +
+                       "," + oSub.HPOOrderInterID + "" +
+                       "," + oSub.HPOOrderEntryID + "" +
+                       ",'" + oSub.HPOOrderBillNo + "'" +
+                       "," + oSub.HSeOrderInterID + "" +
+                       "," + oSub.HSeOrderEntryID + "" +
+                       ",'" + oSub.HSeOrderBillNo + "'" +
+                        ")";
+                    oCn.RunProc(subSql);
+                }
+
+                sReturn = "淇敼鍗曟嵁鎴愬姛锛�";
+                oCn.Commit();
+                return true;
+            }
+            catch (Exception e)
+            {
+                sReturn = e.Message;
+                oCn.RollBack();
+                throw (e);
+            }
+        }
+        #endregion
+
+        #region  鏂板鍗曟嵁
+        public override bool AddBill(ref string sReturn)
+        {
+            try
+            {
+                DataSet ds;
+
+
+                oCn.BeginTran();
+
+                //妫�鏌ヤ富琛ㄥ唴鐮佹槸鍚﹂噸澶嶏紝鑻ラ噸澶嶅垯閲嶆柊鐢熸垚骞剁户缁鏌ワ紝鐩村埌涓嶅啀閲嶅
+                while (true)
+                {
+                    ds = oCn.RunProcReturn("select * from Kf_ICStockBillMain where HInterID = " + omodel.HInterID, "Kf_ICStockBillMain");
+                    if(ds!=null && ds.Tables[0].Rows.Count > 0)
+                    {
+                        omodel.HInterID = DBUtility.ClsPub.CreateBillID(BillType, ref DBUtility.ClsPub.sExeReturnInfo);
+                    }
+                    else
+                    {
+                        break;
+                    }
+                }
+
+                //鎻掑叆涓昏〃
+                string mainSql = "insert into Kf_ICStockBillMain" +
+                    "(HInterID,HBillNo,HDate,HYear,HPeriod,HBillType,HBillSubType" +
+                    ",HMainSourceInterID,HMainSourceEntryID,HMainSourceBillNo,HMainSourceBillType" +
+                    ",HMaker,HMakeDate,HWHID,HSCWHID,HSupID,HPSStyleID,HCurID,HEmpID,HManagerID,HSecManagerID,HKeeperID,HDeptID,HExplanation,HInnerBillNo,HRemark) " +
+                    "values(" +
+                    "" + omodel.HInterID + "" +
+                    ",'" + omodel.HBillNo + "'" +
+                    ",'" + omodel.HDate + "'" +
+                    "," + DBUtility.ClsPub.isLong(DateTime.Now.Year) + "" +
+                    "," + DBUtility.ClsPub.isLong(DateTime.Now.Month) + "" +
+                    ",'" + BillType + "'" +
+                    ",'" + HBillSubType + "'" +
+                    "," + omodel.HMainSourceInterID + "" +
+                    "," + omodel.HMainSourceEntryID + "" +
+                    ",'" + omodel.HMainSourceBillNo + "'" +
+                    ",'" + omodel.HMainSourceBillType + "'" +
+                    ",'" + omodel.HMaker + "'" +
+                    ",'" + DBUtility.ClsPub.isStrNull(DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss")) + "'" +
+                    "," + omodel.HWHID + "" +
+                    "," + omodel.HSCWHID + "" +
+                    "," + omodel.HSupID + "" +
+                    "," + omodel.HPSStyleID + "" +
+                    "," + omodel.HCurID + "" +
+                    "," + omodel.HEmpID + "" +
+                    "," + omodel.HManagerID + "" +
+                    "," + omodel.HSecManagerID + "" +
+                    "," + omodel.HKeeperID + "" +
+                    "," + omodel.HDeptID + "" +
+                    ",'" + omodel.HExplanation + "'" +
+                    ",'" + omodel.HInnerBillNo + "'" +
+                    ",'" + omodel.HRemark + "'" +
+                    ")";
+
+                oCn.RunProc(mainSql);
+
+                //鎻掑叆瀛愯〃
+                foreach (Model.ClsKf_StepFoldOutBillSub oSub in DetailColl)
+                {
+                    string subSql = "insert into Kf_ICStockBillSub" +
+                        "(HInterID,HEntryID,HBillNo_bak,HMaterID,HUnitID,HQtyMust,HQty,HPrice,HTaxPrice,HMoney,HOrderPrice,HWHID,HSCWHID,HRemark" +
+                        ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
+                        ",HPOOrderInterID,HPOOrderEntryID,HPOOrderBillNo" +
+                        ",HSeOrderInterID,HSeOrderEntryID,HSeOrderBillNo,HBatchNo) " +
+                        " values(" +
+                       "" + omodel.HInterID + "" +
+                       "," + oSub.HEntryID + "" +
+                       ",'" + omodel.HBillNo + "'" +
+                       "," + oSub.HMaterID + "" +
+                       "," + oSub.HUnitID + "" +
+                       "," + oSub.HQtyMust + "" +
+                       "," + oSub.HQty + "" +
+                       "," + oSub.HPrice + "" +
+                       "," + oSub.HMoney + "" +
+                       "," + oSub.HOrderPrice + "" +
+                       "," + oSub.HWHID + "" +
+                       "," + oSub.HSCWHID + "" +
+                       ",'" + oSub.HRemark + "'" +
+                       "," + oSub.HSourceInterID + "" +
+                       "," + oSub.HSourceEntryID + "" +
+                       ",'" + oSub.HSourceBillNo + "'" +
+                       ",'" + oSub.HSourceBillType + "'" +
+                       "," + oSub.HRelationQty + "" +
+                       "," + oSub.HRelationMoney + "" +
+                       "," + oSub.HPOOrderInterID + "" +
+                       "," + oSub.HPOOrderEntryID + "" +
+                       ",'" + oSub.HPOOrderBillNo + "'" +
+                       "," + oSub.HSeOrderInterID + "" +
+                       "," + oSub.HSeOrderEntryID + "" +
+                       ",'" + oSub.HSeOrderBillNo + "'" +
+                       ",'" + oSub.HBatchNo + "'" +
+                        ")";
+                    oCn.RunProc(subSql);
+                }
+                sReturn = "鏂板鍗曟嵁鎴愬姛锛�";
+                oCn.Commit();
+                return true;
+            }
+            catch (Exception e)
+            {
+                sReturn = e.Message;
+                oCn.RollBack();
+                throw (e);
+            }
+        }
+        #endregion
+
+        #region 鏄剧ず鍗曟嵁
+        public override bool ShowBill(Int64 lngBillKey, ref string sReturn)
+        {
+            try
+            {
+                //鏌ヨ涓昏〃
+                DataSet Ds ;
+                Ds = oCn.RunProcReturn("select * from Kf_ICStockBillMain Where HInterID = " + lngBillKey.ToString(), "Kf_ICStockBillMain");
+                if(Ds.Tables[0].Rows.Count==0)
+                {
+                    sReturn = "鍗曟嵁鏈壘鍒帮紒";
+                    return false;
+                }
+
+                //鍥哄畾璧嬪��===========================================
+                omodel.HYear = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HYear"]);
+                omodel.HPeriod = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HPeriod"]);
+                omodel.HBillType = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HBillType"]);
+                omodel.HBillSubType = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HBillSubType"]);
+                omodel.HInterID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HInterID"]);
+                omodel.HDate = DBUtility.ClsPub.isDate(Ds.Tables[0].Rows[0]["HDate"]);
+                omodel.HBillNo = Ds.Tables[0].Rows[0]["HBillNo"].ToString().Trim();
+                omodel.HBillStatus = DBUtility.ClsPub.isInt(Ds.Tables[0].Rows[0]["HBillStatus"]);
+                omodel.HCheckItemNowID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HCheckItemNowID"]);
+                omodel.HCheckItemNextID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HCheckItemNextID"]);
+                omodel.HCheckFlowID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HCheckFlowID"]);
+                omodel.HRemark = Ds.Tables[0].Rows[0]["HRemark"].ToString().Trim();
+                omodel.HBackDate = Ds.Tables[0].Rows[0]["HBackDate"].ToString().Trim();
+                omodel.HBacker = Ds.Tables[0].Rows[0]["HBacker"].ToString().Trim();
+                omodel.HBackRemark = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HBackRemark"]);
+                omodel.HCheckDate = Ds.Tables[0].Rows[0]["HCheckDate"].ToString().Trim();
+                omodel.HChecker = Ds.Tables[0].Rows[0]["HChecker"].ToString().Trim();
+                omodel.HMaker = Ds.Tables[0].Rows[0]["HMaker"].ToString().Trim();
+                omodel.HMakeDate = Ds.Tables[0].Rows[0]["HMakeDate"].ToString().Trim();
+                omodel.HUpDateDate = Ds.Tables[0].Rows[0]["HUpDateDate"].ToString().Trim();
+                omodel.HUpDater = Ds.Tables[0].Rows[0]["HUpDater"].ToString().Trim();
+                omodel.HCloseDate = Ds.Tables[0].Rows[0]["HCloseDate"].ToString().Trim();
+                omodel.HCloseMan = Ds.Tables[0].Rows[0]["HCloseMan"].ToString().Trim();
+                omodel.HCloseType = DBUtility.ClsPub.isBool(Ds.Tables[0].Rows[0]["HCloseType"]);
+                omodel.HDeleteDate = Ds.Tables[0].Rows[0]["HDeleteDate"].ToString().Trim();
+                omodel.HDeleteMan = Ds.Tables[0].Rows[0]["HDeleteMan"].ToString().Trim();
+                //========================================================
+                omodel.HMainSourceInterID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HMainSourceInterID"]);
+                omodel.HMainSourceEntryID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HMainSourceEntryID"]);
+                omodel.HMainSourceBillNo = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HMainSourceBillNo"]);
+                omodel.HMainSourceBillType = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HMainSourceBillType"]);
+
+               
+                omodel.HSupID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HSupID"]);
+                omodel.HPSStyleID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HPSStyleID"]);
+                omodel.HCurID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HCurID"]);
+                omodel.HEmpID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HEmpID"]);
+                omodel.HManagerID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HManagerID"]);
+                omodel.HSecManagerID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HSecManagerID"]);
+                omodel.HKeeperID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HKeeperID"]);
+                omodel.HDeptID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HDeptID"]);
+                omodel.HWHID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HWHID"]);
+                omodel.HSCWHID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HSCWHID"]);
+
+                omodel.HExplanation = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HExplanation"]);
+                omodel.HInnerBillNo = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HInnerBillNo"]);
+
+
+                //
+
+                //寰幆
+                DataSet DsSub ;
+                DsSub = oCn.RunProcReturn("select * from Kf_ICStockBillSub where HInterID = " + lngBillKey.ToString() + "order by HEntryID", "Kf_ICStockBillSub");
+                DetailColl.Clear();//娓呯┖
+                for (int i = 0; i < DsSub.Tables[0].Rows.Count; i++)
+                {
+                    Model.ClsKf_StepFoldOutBillSub oSub = new Model.ClsKf_StepFoldOutBillSub();
+                    // 鍥哄畾璧嬪��===============================================
+                    oSub.HInterID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HInterID"]);
+                    oSub.HEntryID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HEntryID"]);
+                    oSub.HBillNo_bak = DBUtility.ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HBillNo_bak"]);
+                    oSub.HCloseMan =  DBUtility.ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HCloseMan"]);
+                    oSub.HCloseType = DBUtility.ClsPub.isBool(DsSub.Tables[0].Rows[i]["HCloseType"]);
+                    oSub.HEntryCloseDate = DBUtility.ClsPub.isDate(DsSub.Tables[0].Rows[i]["HEntryCloseDate"]);
+
+                    oSub.HSourceInterID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HSourceInterID"]);
+                    oSub.HSourceEntryID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HSourceEntryID"]);
+                    oSub.HSourceBillType = DsSub.Tables[0].Rows[i]["HSourceBillType"].ToString().Trim();
+                    oSub.HSourceBillNo = DsSub.Tables[0].Rows[i]["HSourceBillNo"].ToString().Trim();
+                    oSub.HRelationQty = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HRelationQty"]);
+                    oSub.HRelationMoney = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HRelationMoney"]); 
+                    
+                    oSub.HRemark = DsSub.Tables[0].Rows[i]["HRemark"].ToString().Trim();
+                    //===================================================
+                    oSub.HMaterID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HMaterID"]);
+                    oSub.HQtyMust = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HQtyMust"]);
+                    oSub.HUnitID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HUnitID"]);
+                    oSub.HQty = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[0]["HQty"]);
+                    oSub.HPrice = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[0]["HPrice"]);
+                    oSub.HOrderPrice = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[0]["HOrderPrice"]);
+                    oSub.HWHID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HWHID "]);
+                    oSub.HSCWHID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HSCWHID"]);
+
+
+
+                    oSub.HPOOrderInterID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[0]["HPOOrderInterID"]);
+                    oSub.HPOOrderEntryID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[0]["HPOOrderEntryID"]);
+                    oSub.HPOOrderBillNo = DBUtility.ClsPub.isStrNull(DsSub.Tables[0].Rows[0]["HPOOrderBillNo"]);
+
+                    oSub.HSeOrderInterID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[0]["HSeOrderInterID"]);
+                    oSub.HSeOrderEntryID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[0]["HSeOrderEntryID"]);
+                    oSub.HSeOrderBillNo = DBUtility.ClsPub.isStrNull(DsSub.Tables[0].Rows[0]["HSeOrderBillNo"]);
+                    oSub.HBatchNo = DBUtility.ClsPub.isStrNull(DsSub.Tables[0].Rows[0]["HBatchNo"]);
+
+                    DetailColl.Add(oSub);
+                }
+                sReturn = "鏄剧ず鍗曟嵁鎴愬姛锛�";
+                return true;
+            }
+            catch (Exception e)
+            {
+                sReturn = e.Message;
+                throw (e);
+            }
+        }
+        #endregion
+
+    }
+
+}
diff --git "a/DAL/\345\272\224\344\273\230\347\256\241\347\220\206/ClsYF_PayMentOtherBill.cs" "b/DAL/\345\272\224\344\273\230\347\256\241\347\220\206/ClsYF_PayMentOtherBill.cs"
index cdb98b5..da6fabd 100644
--- "a/DAL/\345\272\224\344\273\230\347\256\241\347\220\206/ClsYF_PayMentOtherBill.cs"
+++ "b/DAL/\345\272\224\344\273\230\347\256\241\347\220\206/ClsYF_PayMentOtherBill.cs"
@@ -47,14 +47,18 @@
                 ",HRemark='" + omodel.HRemark + "'" +
                 ",HUpDater='" + DBUtility.ClsPub.CurUserName + "'" +
                 ",HUpDateDate=getdate()" +
-                    //========================================
+                //========================================
                 ",HAccDate='" + omodel.HAccDate.ToShortDateString() + "'" +
-                ",HSupID=" + omodel.HSupID.ToString() +
+                ",HCusID=" + omodel.HCusID.ToString() +
                 ",HCurID=" + omodel.HCurID.ToString() +
                 ",HExRate=" + omodel.HExRate.ToString() +
                 ",HDeptID=" + omodel.HDeptID.ToString() +
                 ",HEmpID=" + omodel.HEmpID.ToString() +
-                ",HSumMoney=" + omodel.HSumMoney.ToString() +
+                ",HProjectMoneyID =" + omodel.HProjectMoneyID.ToString() +
+                ",HType='" + omodel.HType.ToString() + "'" +
+                ",HMoney='" + omodel.HMoney + "'" +
+                ",HTaxRate='" + omodel.HTaxRate + "'" +
+                ",HSumMoney='" + omodel.HSumMoney + "'" +
                 ",HExplanation='" + omodel.HExplanation + "'" +
                 ",HInnerBillNo='" + omodel.HInnerBillNo + "'" +
                 " where HInterID=" + lngBillKey.ToString());
@@ -62,30 +66,7 @@
                 DeleteRelation(ref sReturn, lngBillKey);
                 //鍒犻櫎瀛愯〃
                 DeleteBillSub(lngBillKey);
-                //鎻掑叆瀛愯〃
-                omodel.HInterID = lngBillKey;
-                foreach (Model.ClsYF_PayMentOtherBillSub oSub in DetailColl)
-                {
-                    //oCn.RunProc("Insert into YF_PayMentOtherBillSub " +
-                    //  " (HInterID,HEntryID,HCloseMan,HEntryCloseDate,HCloseType,HRemark" +
-                    //  ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
-                    //  ") 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() +
-                    //  ") ");
-                }
-                //
-                //foreach (Model.ClsYF_PayMentOtherBillSub oSub in DetailColl)
-                //{
-                //    Ds = oCn.RunProcReturn("exec h_p_YF_PayMentOtherBill_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 = "淇敼鍗曟嵁鎴愬姛锛�";
                 oCn.Commit();
                 return true;
@@ -108,40 +89,17 @@
                 oCn.BeginTran();
                 //涓昏〃
                 oCn.RunProc("Insert Into YF_PayMentOtherBillMain   " +
-                "(HBillType,HBillSubType,HInterID,HBillNo,HDate" +
-                ",HYear,HPeriod,HRemark,HMaker,HMakeDate" +
-                ",HAccDate,HSupID,HCurID,HExRate" +
-                ",HDeptID,HEmpID,HSumMoney,HExplanation,HInnerBillNo" +
-                ") " +
-                " values('" + this.BillType + "','"  + this.HBillSubType + "'," +omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "','" + omodel.HDate + "'" +
-                ", " + omodel.HYear.ToString() + "," + omodel.HPeriod.ToString() + ",'" + omodel.HRemark + "','" + DBUtility.ClsPub.CurUserName + "',getdate()" +
-                ",'" + omodel.HAccDate.ToShortDateString() + "'," + omodel.HSupID.ToString() + "," + omodel.HCurID.ToString() + "," + omodel.HExRate.ToString() +
-                ", " + omodel.HDeptID.ToString() + "," + omodel.HEmpID.ToString() + "," + omodel.HSumMoney.ToString() + ",'"  + omodel.HExplanation +"','"+ omodel.HInnerBillNo + "'" +
-                ") ");
-                //鎻掑叆瀛愯〃
-                foreach (Model.ClsYF_PayMentOtherBillSub oSub in DetailColl)
-                {
-                    //oCn.RunProc("Insert into YF_PayMentOtherBillSub " +
-                    //  " (HInterID,HEntryID,HCloseMan,HEntryCloseDate,HCloseType,HRemark" +
-                    //  ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
-                    //  ") 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() +
-                    //  ") ");
-                }
-                //
-                //foreach (Model.ClsYF_PayMentOtherBillSub oSub in DetailColl)
-                //{
-                //    Ds = oCn.RunProcReturn("exec h_p_YF_PayMentOtherBill_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;
-                //    }
-                //}
-                //
+               "(HBillType,HBillSubType,HInterID,HBillNo,HDate" +
+               ",HYear,HPeriod,HRemark,HMaker,HMakeDate" +
+               ",HAccDate,HCusID,HCurID,HExRate" +
+               ",HDeptID,HEmpID,HProjectMoneyID,HType,HMoney,HTaxRate,HSumMoney,HExplanation,HInnerBillNo,HOrgID" +
+               ") " +
+               " values('" + this.BillType + "','" + this.HBillSubType + "'," + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "','" + omodel.HDate + "'" +
+               ", " + omodel.HYear.ToString() + "," + omodel.HPeriod.ToString() + ",'" + omodel.HRemark + "','" + DBUtility.ClsPub.CurUserName + "',getdate()" +
+               ",'" + omodel.HAccDate.ToShortDateString() + "'," + omodel.HCusID.ToString() + "," + omodel.HCurID.ToString() + "," + omodel.HExRate.ToString() +
+               ", '" + omodel.HDeptID.ToString() + "','" + omodel.HEmpID.ToString() + "','" + omodel.HProjectMoneyID.ToString() + "','" + omodel.HType + "','" + omodel.HMoney + "','" + omodel.HTaxRate + "','" + omodel.HSumMoney + "','" + omodel.HExplanation + "','" + omodel.HInnerBillNo + "','" + omodel.HOrgID + "'" +
+               ") ");
+              
                 sReturn = "鏂板鍗曟嵁鎴愬姛锛�";
                 oCn.Commit();
                 return true;
@@ -194,7 +152,7 @@
                 omodel.HDeleteMan = Ds.Tables[0].Rows[0]["HDeleteMan"].ToString().Trim();
                 //========================================================
                 omodel.HAccDate = DBUtility.ClsPub.isDate(Ds.Tables[0].Rows[0]["HAccDate"]);
-                omodel.HSupID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HSupID"]);
+                omodel.HCusID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HCusID"]);
                 omodel.HCurID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HCurID"]);
                 omodel.HExRate = DBUtility.ClsPub.isSingle(Ds.Tables[0].Rows[0]["HExRate"]);
                 omodel.HDeptID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HDeptID"]);
diff --git "a/DAL/\345\272\224\346\224\266\347\256\241\347\220\206/ClsYS_ReceiveOtherBill.cs" "b/DAL/\345\272\224\346\224\266\347\256\241\347\220\206/ClsYS_ReceiveOtherBill.cs"
index 85e60be..36e0d22 100644
--- "a/DAL/\345\272\224\346\224\266\347\256\241\347\220\206/ClsYS_ReceiveOtherBill.cs"
+++ "b/DAL/\345\272\224\346\224\266\347\256\241\347\220\206/ClsYS_ReceiveOtherBill.cs"
@@ -54,7 +54,11 @@
                 ",HExRate=" + omodel.HExRate.ToString() +
                 ",HDeptID=" + omodel.HDeptID.ToString() +
                 ",HEmpID=" + omodel.HEmpID.ToString() +
-                ",HSumMoney=" + omodel.HSumMoney.ToString() +
+                ",HProjectMoneyID =" + omodel.HProjectMoneyID.ToString() +
+                ",HType='" + omodel.HType.ToString() + "'" +
+                ",HMoney='" + omodel.HMoney + "'" +
+                ",HTaxRate='" + omodel.HTaxRate + "'" +
+                ",HSumMoney='" + omodel.HSumMoney + "'" +
                 ",HExplanation='" + omodel.HExplanation + "'" +
                 ",HInnerBillNo='" + omodel.HInnerBillNo + "'" +
                 " where HInterID=" + lngBillKey.ToString());
@@ -62,30 +66,7 @@
                 DeleteRelation(ref sReturn, lngBillKey);
                 //鍒犻櫎瀛愯〃
                 DeleteBillSub(lngBillKey);
-                //鎻掑叆瀛愯〃
-                omodel.HInterID = lngBillKey;
-                foreach (Model.ClsYS_ReceiveOtherBillSub oSub in DetailColl)
-                {
-                    //oCn.RunProc("Insert into YS_ReceiveOtherBillSub " +
-                    //  " (HInterID,HEntryID,HCloseMan,HEntryCloseDate,HCloseType,HRemark" +
-                    //  ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
-                    //  ") 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() +
-                    //  ") ");
-                }
-                //
-                //foreach (Model.ClsYS_ReceiveOtherBillSub oSub in DetailColl)
-                //{
-                //    Ds = oCn.RunProcReturn("exec h_p_YS_ReceiveOtherBill_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 = "淇敼鍗曟嵁鎴愬姛锛�";
                 oCn.Commit();
                 return true;
@@ -111,37 +92,14 @@
                 "(HBillType,HBillSubType,HInterID,HBillNo,HDate" +
                 ",HYear,HPeriod,HRemark,HMaker,HMakeDate" +
                 ",HAccDate,HCusID,HCurID,HExRate" +
-                ",HDeptID,HEmpID,HSumMoney,HExplanation,HInnerBillNo" +
+                ",HDeptID,HEmpID,HProjectMoneyID,HType,HMoney,HTaxRate,HSumMoney,HExplanation,HInnerBillNo,HOrgID" +
                 ") " +
                 " values('" + this.BillType + "','"  + this.HBillSubType + "'," +omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "','" + omodel.HDate + "'" +
                 ", " + omodel.HYear.ToString() + "," + omodel.HPeriod.ToString() + ",'" + omodel.HRemark + "','" + DBUtility.ClsPub.CurUserName + "',getdate()" +
                 ",'" + omodel.HAccDate.ToShortDateString() + "'," + omodel.HCusID.ToString() + "," + omodel.HCurID.ToString() + "," + omodel.HExRate.ToString() +
-                ", " + omodel.HDeptID.ToString() + "," + omodel.HEmpID.ToString() + "," + omodel.HSumMoney.ToString() + ",'"  + omodel.HExplanation +"','"+ omodel.HInnerBillNo + "'" +
+                ", '" + omodel.HDeptID.ToString() + "','" + omodel.HEmpID.ToString() + "','" + omodel.HProjectMoneyID.ToString() + "','"  + omodel.HType+ "','"+ omodel.HMoney+ "','" + omodel.HTaxRate + "','" + omodel.HSumMoney + "','" + omodel.HExplanation + "','" + omodel.HInnerBillNo + "','" + omodel.HOrgID + "'" +
                 ") ");
-                //鎻掑叆瀛愯〃
-                foreach (Model.ClsYS_ReceiveOtherBillSub oSub in DetailColl)
-                {
-                    //oCn.RunProc("Insert into YS_ReceiveOtherBillSub " +
-                    //  " (HInterID,HEntryID,HCloseMan,HEntryCloseDate,HCloseType,HRemark" +
-                    //  ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
-                    //  ") 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() +
-                    //  ") ");
-                }
-                //
-                //foreach (Model.ClsYS_ReceiveOtherBillSub oSub in DetailColl)
-                //{
-                //    Ds = oCn.RunProcReturn("exec h_p_YS_ReceiveOtherBill_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 = "鏂板鍗曟嵁鎴愬姛锛�";
                 oCn.Commit();
                 return true;
diff --git "a/DAL/\350\256\241\345\210\222\347\256\241\347\220\206/ClsGy_MaterialTechParamBillMain.cs" "b/DAL/\350\256\241\345\210\222\347\256\241\347\220\206/ClsGy_MaterialTechParamBillMain.cs"
new file mode 100644
index 0000000..1fe62dc
--- /dev/null
+++ "b/DAL/\350\256\241\345\210\222\347\256\241\347\220\206/ClsGy_MaterialTechParamBillMain.cs"
@@ -0,0 +1,284 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Text;
+using System.Data;
+
+namespace DAL
+{
+    public  class ClsGy_MaterialTechParamBillMain : DBUtility.ClsXt_BaseBill
+    {
+        public Model.ClsGy_MaterialTechParamBillMain omodel = new Model.ClsGy_MaterialTechParamBillMain();
+        public List<Model.ClsGy_MaterialTechParamBillSub> DetailColl = new List<Model.ClsGy_MaterialTechParamBillSub>();
+
+        public ClsGy_MaterialTechParamBillMain()
+        {
+            base.MvarItemKeySub = "Gy_MaterialTechParamBillSub";
+            base.MvarItemKeySub2 = "";
+            base.MvarItemKeySub3 = "";
+            base.MvarItemKeySub4 = "";
+            base.MvarItemKey= "Gy_MaterialTechParamBillMain";
+            base.MvarReportTitle= "浜у搧宸ヨ壓鍙傛暟娓呭崟";
+            base.BillType="3334";
+            base.HBillSubType = "3334";
+
+        }
+
+        #region 鍥哄畾浠g爜
+        #region 鏃犲弬鏋勯�犲嚱鏁�
+        ~ClsGy_MaterialTechParamBillMain()
+        {
+            DetailColl = null;
+        }
+        #endregion
+        #endregion
+
+        //#region 淇敼鍗曟嵁
+        public override bool ModifyBill(Int64 lngBillKey, ref string sReturn)
+        {
+            try
+            {
+                oCn.BeginTran();
+                //鏇存柊涓昏〃
+                string mainSql = "update Gy_MaterialTechParamBillMain set " +
+                    " HBillNo = '" + omodel.HBillNo +
+                    "', HDate = '" + omodel.HDate +
+                    "', HRemark = '" + omodel.HRemark +
+                    "', HUpDater = '" + omodel.HUpDater +
+                    "', HUpDateDate = getdate()" +
+                     //===============================================================
+                    
+                     ", HDeptID = '" + omodel.HDeptID +
+                    "', HEmpID = '" + omodel.HEmpID +
+                    "', HMaterID = '" + omodel.HMaterID +
+                    "', HWorkCenterID = '" + omodel.HWorkCenterID +
+                    "', HProcID  = '" + omodel.HProcID +
+                    "', HEquipID  = '" + omodel.HEquipID +
+                    "', HOrgID	  = '" + omodel.HOrgID +
+                    "' where HInterID = " + omodel.HInterID;
+
+                oCn.RunProc(mainSql);
+                //鍒犻櫎鍏宠仈
+                DeleteRelation(ref sReturn, lngBillKey);
+                //鍒犻櫎瀛愯〃
+                DeleteBillSub(lngBillKey);
+
+                //鎻掑叆瀛愯〃
+                omodel.HInterID = lngBillKey;
+                foreach (Model.ClsGy_MaterialTechParamBillSub oSub in DetailColl)
+                {
+                    string subSql = "insert into Gy_MaterialTechParamBillSub" +
+                            "" +
+                            "" +
+                            "" +
+                            "(HInterID,HEntryID,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType" +
+                            ",HTechParamID,HTechParamUnitID,HStd,HMax,HMin) " +
+                            " values(" +
+                            "" + omodel.HInterID.ToString() +
+                            "," + oSub.HEntryID.ToString() +
+                            "," + oSub.HSourceInterID +
+                            "," + oSub.HSourceEntryID +
+                            ",'" + oSub.HSourceBillNo +
+                            "','" + oSub.HSourceBillType +
+                            "','" + oSub.HTechParamID +
+                             "','" + oSub.HTechParamUnitID +
+                            "'," + oSub.HStd +
+                            "," + oSub.HMax +
+                            ",'" + oSub.HMin +
+                            "')";
+                    oCn.RunProc(subSql);
+                }
+
+                sReturn = "淇敼鍗曟嵁鎴愬姛锛�";
+                oCn.Commit();
+                return true;
+            }
+            catch (Exception e)
+            {
+                sReturn = e.Message;
+                oCn.RollBack();
+                throw (e);
+            }
+        }
+        //#endregion
+
+        #region  鏂板鍗曟嵁
+        public override bool AddBill(ref string sReturn)
+        {
+            try
+            {
+                DataSet ds;
+
+
+                oCn.BeginTran();
+
+                //妫�鏌ヤ富琛ㄥ唴鐮佹槸鍚﹂噸澶嶏紝鑻ラ噸澶嶅垯閲嶆柊鐢熸垚骞剁户缁鏌ワ紝鐩村埌涓嶅啀閲嶅
+                while (true)
+                {
+                    ds = oCn.RunProcReturn("select * from Gy_MaterialTechParamBillMain where HInterID = " + omodel.HInterID, "Gy_MaterialTechParamBillMain");
+                    if(ds!=null && ds.Tables[0].Rows.Count > 0)
+                    {
+                        omodel.HInterID = DBUtility.ClsPub.CreateBillID(BillType, ref DBUtility.ClsPub.sExeReturnInfo);
+                    }
+                    else
+                    {
+                        break;
+                    }
+                }
+
+                //鎻掑叆涓昏〃
+                string mainSql = "insert into Gy_MaterialTechParamBillMain" +
+                    "(HYear,HPeriod,HBillType,HBillSubType,HInterID,HDate,HBillNo,HRemark,HMaker,HMakeDate" +
+                    ",HDeptID,HEmpID,HMaterID,HWorkCenterID,HEquipID,HOrgID,HProcID ) " +
+                    "values(" +
+                    "" + omodel.HYear.ToString() +
+                    "," + omodel.HPeriod.ToString() +
+                    ",'" + this.BillType +
+                    "','" + this.HBillSubType +
+                    "'," + omodel.HInterID +
+                    ",'" + omodel.HDate +
+                    "','" + omodel.HBillNo +
+                    "','" + omodel.HRemark +
+                    "','" + omodel.HMaker +
+                    "','" + omodel.HMakeDate +
+                    "'," + omodel.HDeptID +
+                    "," + omodel.HEmpID +
+                    ",'" + omodel.HMaterID +
+                    "','" + omodel.HWorkCenterID +
+                    "','" + omodel.HEquipID +
+                    "','" + omodel.HOrgID +
+                     "','" + omodel.HProcID +
+                    "')";
+
+                oCn.RunProc(mainSql);
+
+                //鎻掑叆瀛愯〃
+                foreach (Model.ClsGy_MaterialTechParamBillSub oSub in DetailColl)
+                {
+                    string subSql = "insert into Gy_MaterialTechParamBillSub" +
+                           "" +
+                           "" +
+                           "" +
+                           "(HInterID,HEntryID,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType" +
+                           ",HTechParamID,HTechParamUnitID,HStd,HMax,HMin) " +
+                           " values(" +
+                           "" + omodel.HInterID.ToString() +
+                           "," + oSub.HEntryID.ToString() +
+                           "," + oSub.HSourceInterID +
+                           "," + oSub.HSourceEntryID +
+                           ",'" + oSub.HSourceBillNo +
+                           "','" + oSub.HSourceBillType +
+                           "','" + oSub.HTechParamID +
+                            "','" + oSub.HTechParamUnitID +
+                           "'," + oSub.HStd +
+                           "," + oSub.HMax +
+                           ",'" + oSub.HMin +
+                           "')";
+                    oCn.RunProc(subSql);
+                }
+                sReturn = "鏂板鍗曟嵁鎴愬姛锛�";
+                oCn.Commit();
+                return true;
+            }
+            catch (Exception e)
+            {
+                sReturn = e.Message;
+                oCn.RollBack();
+                throw (e);
+            }
+        }
+        #endregion
+
+        #region 鏄剧ず鍗曟嵁
+        //public override bool ShowBill(Int64 lngBillKey, ref string sReturn)
+        //{
+        //    try
+        //    {
+        //        //鏌ヨ涓昏〃
+        //        DataSet Ds ;
+        //        Ds = oCn.RunProcReturn("select * from PM_WorkReportWeekBillMain Where HInterID = " + lngBillKey.ToString(), "PM_WorkReportWeekBillMain");
+        //        if(Ds.Tables[0].Rows.Count==0)
+        //        {
+        //            sReturn = "鍗曟嵁鏈壘鍒帮紒";
+        //            return false;
+        //        }
+
+        //        //鍥哄畾璧嬪��===========================================
+        //        omodel.HYear = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HYear"]);
+        //        omodel.HPeriod = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HPeriod"]);
+        //        omodel.HBillType = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HBillType"]);
+        //        omodel.HBillSubType = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HBillSubType"]);
+        //        omodel.HInterID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HInterID"]);
+        //        omodel.HDate = DBUtility.ClsPub.isDate(Ds.Tables[0].Rows[0]["HDate"]);
+        //        omodel.HBillNo = Ds.Tables[0].Rows[0]["HBillNo"].ToString().Trim();
+        //        omodel.HBillStatus = DBUtility.ClsPub.isInt(Ds.Tables[0].Rows[0]["HBillStatus"]);
+        //        omodel.HCheckItemNowID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HCheckItemNowID"]);
+        //        omodel.HCheckItemNextID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HCheckItemNextID"]);
+        //        omodel.HCheckFlowID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HCheckFlowID"]);
+        //        omodel.HRemark = Ds.Tables[0].Rows[0]["HRemark"].ToString().Trim();
+        //        omodel.HBackDate = Ds.Tables[0].Rows[0]["HBackDate"].ToString().Trim();
+        //        omodel.HBacker = Ds.Tables[0].Rows[0]["HBacker"].ToString().Trim();
+        //        omodel.HCheckDate = Ds.Tables[0].Rows[0]["HCheckDate"].ToString().Trim();
+        //        omodel.HChecker = Ds.Tables[0].Rows[0]["HChecker"].ToString().Trim();
+        //        omodel.HMaker = Ds.Tables[0].Rows[0]["HMaker"].ToString().Trim();
+        //        omodel.HMakeDate = Ds.Tables[0].Rows[0]["HMakeDate"].ToString().Trim();
+        //        omodel.HUpDateDate = Ds.Tables[0].Rows[0]["HUpDateDate"].ToString().Trim();
+        //        omodel.HUpDater = Ds.Tables[0].Rows[0]["HUpDater"].ToString().Trim();
+        //        omodel.HCloseDate = Ds.Tables[0].Rows[0]["HCloseDate"].ToString().Trim();
+        //        omodel.HCloseMan = Ds.Tables[0].Rows[0]["HCloseMan"].ToString().Trim();
+        //        omodel.HCloseType = DBUtility.ClsPub.isBool(Ds.Tables[0].Rows[0]["HCloseType"]);
+        //        omodel.HDeleteDate = Ds.Tables[0].Rows[0]["HDeleteDate"].ToString().Trim();
+        //        omodel.HDeleteMan = Ds.Tables[0].Rows[0]["HDeleteMan"].ToString().Trim();
+        //        //========================================================
+
+        //        omodel.HOrgID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HOrgID"]);
+        //        omodel.HWeek = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HWeek"]);
+        //        omodel.HBeginDate = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HBeginDate"]);
+        //        omodel.HEndDate = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HEndDate"]);
+        //        omodel.HPlanEmpID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HPlanEmpID"]);
+
+        //        //
+                
+        //        //寰幆
+        //        DataSet DsSub ;
+        //        DsSub = oCn.RunProcReturn("select * from PM_WorkTaskWeekBillSub where HInterID = " + lngBillKey.ToString() + "order by HEntryID", "PM_WorkTaskWeekBillSub");
+        //        DetailColl.Clear();//娓呯┖
+        //        for (int i = 0; i < DsSub.Tables[0].Rows.Count; i++)
+        //        {
+        //            Model.ClsPM_WorkTaskWeekBillSub oSub = new Model.ClsPM_WorkTaskWeekBillSub();
+        //            // 鍥哄畾璧嬪��===============================================
+        //            oSub.HInterID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HInterID"]);
+        //            oSub.HEntryID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HEntryID"]);
+        //            oSub.HSourceInterID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HSourceInterID"]);
+        //            oSub.HSourceEntryID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HSourceEntryID"]);
+        //            oSub.HSourceBillType = DsSub.Tables[0].Rows[i]["HSourceBillType"].ToString().Trim();
+        //            oSub.HSourceBillNo = DsSub.Tables[0].Rows[i]["HSourceBillNo"].ToString().Trim();
+        //            oSub.HRelationQty = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HRelationQty"]);
+        //            oSub.HRelationMoney = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HRelationMoney"]); 
+        //            oSub.HCloseMan =  DBUtility.ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HCloseMan"]);
+        //            oSub.HCloseType = DBUtility.ClsPub.isBool(DsSub.Tables[0].Rows[i]["HCloseType"]);
+        //            oSub.HEntryCloseDate = DBUtility.ClsPub.isDate(DsSub.Tables[0].Rows[i]["HEntryCloseDate"]);
+        //            oSub.HRemark = DsSub.Tables[0].Rows[i]["HRemark"].ToString().Trim();
+        //            //===================================================
+        //            oSub.HWeekDay = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HWeekDay"]);
+        //            oSub.HSno = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HSno"]);
+        //            oSub.HProjectID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HProjectID"]);
+        //            oSub.HProjectStageID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HProjectStageID"]);
+        //            oSub.HTaskNote = DBUtility.ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HTaskNote"]);
+        //            oSub.HPlanTimes = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HPlanTimes"]);
+
+        //            DetailColl.Add(oSub);
+        //        }
+        //        sReturn = "鏄剧ず鍗曟嵁鎴愬姛锛�";
+        //        return true;
+        //    }
+        //    catch (Exception e)
+        //    {
+        //        sReturn = e.Message;
+        //        throw (e);
+        //    }
+        //}
+        #endregion
+
+    }
+
+}
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 ebfc5e6..0da2252 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"
@@ -8,11 +8,11 @@
     public  class ClsCg_PayableBill : DBUtility.ClsXt_BaseBill
     {
         public Model.ClsCg_PayableBillMain omodel = new Model.ClsCg_PayableBillMain();
-        public List<Model.ClsCg_PayableBillSub> DetailColl = new List<Model.ClsCg_PayableBillSub>();
+        public List<Model.ClsCg_PayableSub> DetailColl = new List<Model.ClsCg_PayableSub>();
 
         public ClsCg_PayableBill()
         {
-            base.MvarItemKeySub = "Cg_PayableBillSub";
+            base.MvarItemKeySub = "Cg_PayableSub";
             base.MvarItemKeySub2 = "";
             base.MvarItemKeySub3 = "";
             base.MvarItemKeySub4 = "";
@@ -55,7 +55,7 @@
                     ",HCurID = " + omodel.HCurID + "" +
                     ",HExRate = " + omodel.HExRate + "" +
                     ",HEmpID = " + omodel.HEmpID + "" +
-                    ",HMangerID = " + omodel.HMangerID + "" +
+                    ",HManagerID = " + omodel.HManagerID + "" +
                     ",HDeptID = " + omodel.HDeptID + "" +
                     ",HExplanation = '" + omodel.HExplanation + "'" +
                     ",HInnerBillNo = '" + omodel.HInnerBillNo + "'" +
@@ -71,7 +71,7 @@
                 //鎻掑叆瀛愯〃
                 omodel.HInterID = lngBillKey;
                 //鎻掑叆瀛愯〃
-                foreach (Model.ClsCg_PayableBillSub oSub in DetailColl)
+                foreach (Model.ClsCg_PayableSub oSub in DetailColl)
                 {
                     string subSql = "insert into Cg_PayableSub" +
                         "(HInterID,HEntryID,HBillNo_bak,HMaterID,HUnitID,HQty,HPrice,HTaxPrice,HDiscountRate,HRelTaxPrice,HTaxRate,HTaxMoney" +
@@ -155,7 +155,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,HMangerID,HDeptID,HExplanation,HInnerBillNo,HRemark) " +
+                    ",HMaker,HMakeDate,HSSID,HPSStyleID,HReceiveDate,HSupID,HCurID,HExRate,HEmpID,HManagerID,HDeptID,HExplanation,HInnerBillNo,HRemark) " +
                     "values(" +
                     "" + omodel.HInterID + "" +
                     ",'" + omodel.HBillNo + "'" +
@@ -177,7 +177,7 @@
                     "," + omodel.HCurID + "" +
                     "," + omodel.HExRate + "" +
                     "," + omodel.HEmpID + "" +
-                    "," + omodel.HMangerID + "" +
+                    "," + omodel.HManagerID + "" +
                     "," + omodel.HDeptID + "" +
                     ",'" + omodel.HExplanation + "'" +
                     ",'" + omodel.HInnerBillNo + "'" +
@@ -187,7 +187,7 @@
                 oCn.RunProc(mainSql);
 
                 //鎻掑叆瀛愯〃
-                foreach (Model.ClsCg_PayableBillSub oSub in DetailColl)
+                foreach (Model.ClsCg_PayableSub oSub in DetailColl)
                 {
                     string subSql = "insert into Cg_PayableSub" +
                         "(HInterID,HEntryID,HBillNo_bak,HMaterID,HUnitID,HQty,HPrice,HTaxPrice,HDiscountRate,HRelTaxPrice,HTaxRate,HTaxMoney" +
@@ -296,7 +296,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.HMangerID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HMangerID"]);
+                omodel.HManagerID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HManagerID"]);
                 omodel.HDeptID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HDeptID"]);
 
                 omodel.HExplanation = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HExplanation"]);
@@ -318,7 +318,7 @@
                 DetailColl.Clear();//娓呯┖
                 for (int i = 0; i < DsSub.Tables[0].Rows.Count; i++)
                 {
-                    Model.ClsCg_PayableBillSub oSub = new Model.ClsCg_PayableBillSub();
+                    Model.ClsCg_PayableSub oSub = new Model.ClsCg_PayableSub();
                     // 鍥哄畾璧嬪��===============================================
                     oSub.HInterID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HInterID"]);
                     oSub.HEntryID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HEntryID"]);
diff --git "a/DAL/\351\224\200\345\224\256\347\256\241\347\220\206/ClsXs_SeOrderBill.cs" "b/DAL/\351\224\200\345\224\256\347\256\241\347\220\206/ClsXs_SeOrderBill.cs"
index 5337995..596454a 100644
--- "a/DAL/\351\224\200\345\224\256\347\256\241\347\220\206/ClsXs_SeOrderBill.cs"
+++ "b/DAL/\351\224\200\345\224\256\347\256\241\347\220\206/ClsXs_SeOrderBill.cs"
@@ -94,6 +94,7 @@
                 ",HEmpID=" + omodel.HEmpID.ToString() +
                 ",HCurID=" + omodel.HCurID.ToString() +
                 ",HExRate=" + omodel.HExRate.ToString() +
+                ",HEarnestRate=" + omodel.HEarnestRate.ToString() +
                 ",HManagerID=" + omodel.HManagerID.ToString() +
                 ",HSellSID=" + omodel.HSellSID.ToString() +
                 ",HSSID=" + omodel.HSSID.ToString() +
@@ -270,7 +271,7 @@
                 //鎻掑叆涓昏〃
                 string mainSql = "Insert Into Xs_SeOrderBillMain" +
                     "(HYear,HPeriod,HBillType,HBillSubType,HBillStatus,HExplanation" +
-                    ",HInterID,HBillNo,HDate,HInnerBillNo,HAddress,HDeptID,HCusID,HEmpID,HCurID,HExRate,HManagerID,HSellSID,HSSID,HSSDate,HPayCusID,HRemark,HOrgID,HMaker,HMakeDate,HLinkMan,HLinkPhone" +
+                    ",HInterID,HBillNo,HDate,HInnerBillNo,HAddress,HDeptID,HCusID,HEmpID,HCurID,HExRate,HEarnestRate,HManagerID,HSellSID,HSSID,HSSDate,HPayCusID,HRemark,HOrgID,HMaker,HMakeDate,HLinkMan,HLinkPhone" +
                     ",HERPInterID,HERPBillType,HSALEORGID,HSALEGROUPID,HRECEIVEID,HSETTLEID,HCHARGEID,HHEADLOCID,HRECCONTACTID,HCORRESPONDORGID,HBUSINESSTYPE) " +
                     "values(" +
                     "" + omodel.HYear +
@@ -290,6 +291,7 @@
                     "," + omodel.HEmpID +
                     "," + omodel.HCurID +
                     "," + omodel.HExRate +
+                    "," + omodel.HEarnestRate +
                     "," + omodel.HManagerID +
                     "," + omodel.HSellSID +
                     "," + omodel.HSSID +
@@ -460,6 +462,7 @@
                 omodel.HCusID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HCusID"]);
                 omodel.HCurID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HCurID"]);
                 omodel.HExRate = DBUtility.ClsPub.isSingle(Ds.Tables[0].Rows[0]["HExRate"]);
+                omodel.HEarnestRate = DBUtility.ClsPub.isDoule(Ds.Tables[0].Rows[0]["HEarnestRate"]);
                 omodel.HEmpID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HEmpID"]);
                 omodel.HManagerID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HManagerID"]);
                 omodel.HDeptID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HDeptID"]);
diff --git "a/DBUtility/\344\270\232\345\212\241\345\215\225\346\215\256/ClsXt_BaseBill.cs" "b/DBUtility/\344\270\232\345\212\241\345\215\225\346\215\256/ClsXt_BaseBill.cs"
index c98eef1..f21f2eb 100644
--- "a/DBUtility/\344\270\232\345\212\241\345\215\225\346\215\256/ClsXt_BaseBill.cs"
+++ "b/DBUtility/\344\270\232\345\212\241\345\215\225\346\215\256/ClsXt_BaseBill.cs"
@@ -178,6 +178,43 @@
                 throw (e);
             }
         }
+        //琛屽弽鍏抽棴鍗曟嵁(鍖呭惈鍐欏叆鏃ュ織)    2024-01-31
+        public bool CancelRow(Int64 lngBillKey,Int64 HEntryID, string HBillNo, string sUser, ref string sReturn)
+        {
+            try
+            {
+                oCn.BeginTran();
+                string sql = "select * from " + MvarItemKeySub + " where HInterID=" + lngBillKey.ToString() + " and HEntryID = " + HEntryID;
+                DataSet ds = oCn.RunProcReturn(sql, MvarItemKeySub);
+                if(ds==null || ds.Tables[0].Rows.Count == 0)
+                {
+                    sReturn = "琛岃褰曚笉瀛樺湪锛�";
+                    return false;
+                }
+                else
+                {
+                    sql = " Update " + MvarItemKeySub + " set HCloseMan='',HEntryCloseDate='',HCloseType=0 Where HInterID=" + lngBillKey.ToString() + " and HEntryID = " + HEntryID;
+                    oCn.RunProc(sql);
+                }
+
+                //鍐欏叆鏃ュ織
+                string WorkList = "琛屽弽鍏抽棴锛屽崟鎹彿锛�" + HBillNo + "锛涘瓙琛ㄥ唴鐮侊細" + HEntryID;
+                string SystemName = "LMES-" + MvarReportTitle + "妯″潡";
+                oCn.RunProc("Insert into  System_Log(GeginDate,userid,WorkstationName,WorkList,SystemName,NetUserName,State) values " +
+                    "(getdate(),'" + sUser + "','" + ComputerName + "','" + WorkList + "','" + SystemName + "','" + IPAddress + "','琛屽弽鍏抽棴')"
+                    );
+
+                sReturn = "琛屽弽鍏抽棴鎴愬姛锛�";
+                oCn.Commit();
+                return true;
+            }
+            catch (Exception e)
+            {
+                sReturn = e.Message;
+                oCn.RollBack();
+                throw (e);
+            }
+        }
         //鍙嶅鏍�
         public bool AbandonCheck(Int64 lngBillKey, ref string sReturn)
         {
@@ -367,7 +404,7 @@
             {
                 string HCloseMan = ClsPub.CurUserName;
                 string HCloseDate = ClsPub.GetServerDate(-1); 
-                oCn.RunProc(" Update " + MvarItemKey + " set HCloseMan='" + HCloseMan + "',HCloseDate='" + HCloseDate + "',HBillStatus=3 Where HInterID=" + lngBillKey.ToString());
+                oCn.RunProc(" Update " + MvarItemKey + " set HCloseMan='" + HCloseMan + "',HCloseDate='" + HCloseDate + "',HBillStatus=3,HCloseType = 1 Where HInterID=" + lngBillKey.ToString());
                 sReturn = "";
                 return true;
             }
@@ -405,6 +442,46 @@
                 throw (e);
             }
         }
+        //琛屽叧闂崟鎹�(鍖呭惈鍐欏叆鏃ュ織)    2024-01-31
+        public bool CloseRow(Int64 lngBillKey,Int64 HEntryID, string HBillNo, string sUser, ref string sReturn)
+        {
+            DataSet ds;
+            try
+            {
+                oCn.BeginTran();
+                string HCloseMan = sUser;
+                string HEntryCloseDate = ClsPub.GetServerDate(-1);
+                //鍙樻洿琛屽叧闂姸鎬�
+                string sql = " Update " + MvarItemKeySub + " set HCloseMan='" + HCloseMan + "',HEntryCloseDate='" + HEntryCloseDate + "',HCloseType=1 Where HInterID=" + lngBillKey.ToString() + " and HEntryID = " + HEntryID;
+                oCn.RunProc(sql);
+
+                //妫�鏌ュ崟鎹瓙琛ㄦ墍鏈夎鏄惁閮藉叧闂紝鑻ラ兘鍏抽棴鍒欒嚜鍔ㄥ叧闂崟鎹�
+                //sql = "select * from " + MvarItemKeySub + " where HInterID=" + lngBillKey + " and HCloseMan=''";
+                //ds = oCn.RunProcReturn(sql, MvarItemKeySub);
+                //if(ds!=null && ds.Tables[0].Rows.Count == 0)
+                //{
+                //    sql = " Update " + MvarItemKey + " set HCloseMan='" + HCloseMan + "',HCloseDate=getdate(),HBillStatus=3,HCloseType = 0 Where HInterID=" + lngBillKey.ToString();
+                //    oCn.RunProc(sql);
+                //}
+
+                //鍐欏叆鏃ュ織
+                string WorkList = "琛屽叧闂紝鍗曟嵁鍙凤細" + HBillNo + "锛涘瓙琛ㄥ唴鐮侊細" + HEntryID;
+                string SystemName = "LMES-" + MvarReportTitle + "妯″潡";
+                oCn.RunProc("Insert into  System_Log(GeginDate,userid,WorkstationName,WorkList,SystemName,NetUserName,State) values " +
+                    "(getdate(),'" + sUser + "','" + ComputerName + "','" + WorkList + "','" + SystemName + "','" + IPAddress + "','琛屽叧闂�')"
+                    );
+
+                sReturn = "琛屽叧闂垚鍔燂紒";
+                oCn.Commit();
+                return true;
+            }
+            catch (Exception e)
+            {
+                sReturn = e.Message;
+                oCn.RollBack();
+                throw (e);
+            }
+        }
         //浣滃簾
         public bool Cancelltion(Int64 lngBillKey, ref string sReturn)
         {
diff --git a/Model/ClsGy_MaterialMouldBillSub.cs b/Model/ClsGy_MaterialMouldBillSub.cs
new file mode 100644
index 0000000..1729267
--- /dev/null
+++ b/Model/ClsGy_MaterialMouldBillSub.cs
@@ -0,0 +1,14 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Model
+{
+    public class ClsGy_MaterialMouldBillSub : DBUtility.ClsXt_BaseBillSub
+    {
+        public Int64 HMouldID;
+        public Int64 HMouldQty;
+        public decimal HQty;
+        public decimal HRate;
+    }
+}
diff --git a/Model/Model.csproj b/Model/Model.csproj
index c013508..2dcbb71 100644
--- a/Model/Model.csproj
+++ b/Model/Model.csproj
@@ -104,6 +104,7 @@
     <Compile Include="ClsPay_RewardPunishBillSub.cs" />
     <Compile Include="ClsPay_WorkErrTimesBillMain.cs" />
     <Compile Include="ClsPay_WorkErrTimesBillSub.cs" />
+    <Compile Include="ClsGy_MaterialMouldBillSub.cs" />
     <Compile Include="ClsXt_PrintBill_Model.cs" />
     <Compile Include="CRM\ClsCrm_ClueBillMain.cs" />
     <Compile Include="CRM\ClsCrm_ClueBillSub.cs" />
@@ -225,6 +226,9 @@
     <Compile Include="浠撳簱绠$悊\ClsKf_EntrustOutBillMain.cs" />
     <Compile Include="浠撳簱绠$悊\ClsKf_EntrustOutBillSub.cs" />
     <Compile Include="浠撳簱绠$悊\ClsKf_EntrustReplenishOutBillMain.cs" />
+    <Compile Include="浠撳簱绠$悊\ClsKf_MoveStockStepInBillMain.cs" />
+    <Compile Include="浠撳簱绠$悊\ClsKf_MoveStockStepInBillScheme.cs" />
+    <Compile Include="浠撳簱绠$悊\ClsKf_MoveStockStepOutBillScheme.cs" />
     <Compile Include="浠撳簱绠$悊\ClsKf_MateReplenishOutBillMain.cs" />
     <Compile Include="浠撳簱绠$悊\ClsKf_MateOutBillMain.cs" />
     <Compile Include="浠撳簱绠$悊\ClsKf_MateOutBillScheme.cs" />
@@ -235,9 +239,14 @@
     <Compile Include="浠撳簱绠$悊\ClsKf_MateOutRequestBillSub.cs" />
     <Compile Include="浠撳簱绠$悊\ClsKF_ChangeBoxBillMain.cs" />
     <Compile Include="浠撳簱绠$悊\ClsKF_ChangeBoxBillSub.cs" />
+    <Compile Include="浠撳簱绠$悊\ClsKf_StepFoldInBillMain.cs" />
+    <Compile Include="浠撳簱绠$悊\ClsKf_StepFoldInBillSub.cs" />
+    <Compile Include="浠撳簱绠$悊\ClsKf_StepFoldOutBillSub.cs" />
+    <Compile Include="浠撳簱绠$悊\ClsKf_StepFoldOutBillMain.cs" />
     <Compile Include="浠撳簱绠$悊\ClsKf_MoveStockStepOutBillMain.cs" />
     <Compile Include="浠撳簱绠$悊\ClsKf_MoveStockBillMain.cs" />
     <Compile Include="浠撳簱绠$悊\ClsKf_MoveStockBillScheme.cs" />
+    <Compile Include="浠撳簱绠$悊\ClsKf_MoveStockStepInBillSub.cs" />
     <Compile Include="浠撳簱绠$悊\ClsKf_MoveStockStepOutBillSub.cs" />
     <Compile Include="浠撳簱绠$悊\ClsKf_MoveStockBillSub.cs" />
     <Compile Include="浠撳簱绠$悊\ClsKf_OtherInBillMain.cs" />
@@ -351,6 +360,7 @@
     <Compile Include="鍩虹璧勬枡\鍩虹璧勬枡\ClsGy_Operator_Model.cs" />
     <Compile Include="鍩虹璧勬枡\鍩虹璧勬枡\ClsGy_RateType_Model.cs" />
     <Compile Include="鍩虹璧勬枡\鍩虹璧勬枡\ClsGy_Staff_Model.cs" />
+    <Compile Include="鍩虹璧勬枡\鍩虹璧勬枡\ClsGy_ProjectMoney_Model.cs" />
     <Compile Include="鍩虹璧勬枡\鍩虹璧勬枡\ClsGy_TaxMIXMain_Model.cs" />
     <Compile Include="鍩虹璧勬枡\鍩虹璧勬枡\ClsGy_TaxMIXSub_Model.cs" />
     <Compile Include="鍩虹璧勬枡\鍩虹璧勬枡\ClsGy_TaxRate_Model.cs" />
@@ -600,6 +610,8 @@
     <Compile Include="鐢熶骇绠$悊\璁惧绠$悊\ClsSb_EquipConkBookBillMain.cs" />
     <Compile Include="鐢熶骇绠$悊\璁惧绠$悊\ClsSb_EquipConkBookBillSub.cs" />
     <Compile Include="绯荤粺鍏敤\ClsXt_SystemParameter_Model.cs" />
+    <Compile Include="璁″垝绠$悊\ClsGy_MaterialTechParamBillSub.cs" />
+    <Compile Include="璁″垝绠$悊\ClsGy_MaterialTechParamBillMain.cs" />
     <Compile Include="璐ㄦ绠$悊\ClsSc_ProcessExchangeBillMain_Note.cs" />
     <Compile Include="璐ㄦ绠$悊\ClsQC_FirstPieceCheckBillSub_ValueGrid.cs" />
     <Compile Include="璐ㄦ绠$悊\ClsQC_PatrolProcCheckBillSub_BadReason.cs" />
@@ -821,7 +833,7 @@
     <Compile Include="閲囪喘绠$悊\ClsWW_PPBomBillMain.cs" />
     <Compile Include="閲囪喘绠$悊\ClsWW_PPBomBillSub.cs" />
     <Compile Include="閲囪喘绠$悊\ClsCg_PayableBillMain.cs" />
-    <Compile Include="閲囪喘绠$悊\ClsCg_PayableBillSub.cs" />
+    <Compile Include="閲囪喘绠$悊\ClsCg_PayableSub.cs" />
     <Compile Include="閲囪喘绠$悊\Sup_SendGoodsBillMain.cs" />
     <Compile Include="閲囪喘绠$悊\Sup_SendGoodsBillSub.cs" />
     <Compile Include="閲戣澏CLOUD鍗曟嵁\浠撳簱绠$悊\ClsKf_EntrustInBackBillMain_CLD.cs" />
@@ -975,7 +987,14 @@
     <Compile Include="閿�鍞鐞哱鍗曡瘉绠$悊\ClsXs_LadingBillSub.cs" />
     <Compile Include="閿�鍞鐞哱鍗曡瘉绠$悊\ClsXs_ShippingAdviceBillMain.cs" />
     <Compile Include="閿�鍞鐞哱鍗曡瘉绠$悊\ClsXs_ShippingAdviceBillSub.cs" />
+    <Compile Include="椤圭洰绠$悊\ClsPM_ProjectEndBillMain.cs" />
+    <Compile Include="椤圭洰绠$悊\ClsPM_ProjectBeginBillMain.cs" />
+    <Compile Include="椤圭洰绠$悊\ClsPM_ProjectEndBillSub.cs" />
+    <Compile Include="椤圭洰绠$悊\ClsPM_ProjectBeginBillSub.cs" />
+    <Compile Include="椤圭洰绠$悊\ClsPM_ProjectMoneyBillSub.cs" />
+    <Compile Include="椤圭洰绠$悊\ClsPM_ProjectMoneyBillMain.cs" />
     <Compile Include="椤圭洰绠$悊\ClsPM_CustomerTaskBillMain.cs" />
+    <Compile Include="椤圭洰绠$悊\ClsGy_MaterialMouldBillMain.cs" />
     <Compile Include="椤圭洰绠$悊\ClsPM_WorkPlanMonthBillMain.cs" />
     <Compile Include="椤圭洰绠$悊\ClsPM_CustomerTaskBillSub.cs" />
     <Compile Include="椤圭洰绠$悊\ClsPM_WorkReportWeekBillSub.cs" />
diff --git "a/Model/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_MoveStockBillMain.cs" "b/Model/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_MoveStockBillMain.cs"
index 8d901f1..91159fd 100644
--- "a/Model/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_MoveStockBillMain.cs"
+++ "b/Model/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_MoveStockBillMain.cs"
@@ -24,7 +24,11 @@
         public Int64 HConveyTypeID;//	
         public Int64 HConveyCompID;//	
         public double HConveyMoney;//
-        public string HStockStyle;//    varchar(100)      //调拨类型
+        public string HStockStyle;      //    varchar(100)  //调拨类型
+        public string HTransferDirect;  //    varchar(100)  //调拨方向
+        public string HShipType;        //    varchar(100)  //出货类型
         public Int64 HGroupID;
+        public int HStockInOrgID;       //     int     		//调入组织ID
+        public int HStockOutOrgID;      //     int     		//调出组织ID
     }
 }
diff --git "a/Model/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_MoveStockStepInBillMain.cs" "b/Model/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_MoveStockStepInBillMain.cs"
new file mode 100644
index 0000000..c475add
--- /dev/null
+++ "b/Model/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_MoveStockStepInBillMain.cs"
@@ -0,0 +1,24 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Model
+{
+    public class ClsKf_MoveStockStepInBillMain : DBUtility.ClsXt_BaseBillMain
+    {
+        public Int64 HSupID;            //  int        		--供应商
+        public Int64 HWHID;             //  int         	--仓库
+        public Int64 HSCWHID;           //  int           	--调出仓库   
+        public Int64 HEmpID;            //  int        		--业务员
+        public Int64 HManagerID;        //  int    		    --负责人
+        public Int64 HSecManagerID;     //  int   		    --验收
+        public Int64 HKeeperID;         //  int     		--保管员
+        public Int64 HDeptID;           //  int     		--部门
+        public string HExplanation;     //  varchar(200)    --摘要
+        public string HInnerBillNo;     //  varchar(50)     --内部单据号
+        public bool HRedBlueFlag;       //  bit    		    --红蓝单
+        public string HStockStyle;      //  varchar(100)    --调拨类型
+        public Int64 HStockInOrgID;     //  int             --调入库存组织
+        public Int64 HStockOutOrgID;    //  int             --调出库存组织
+    }
+}
diff --git "a/Model/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_MoveStockStepInBillScheme.cs" "b/Model/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_MoveStockStepInBillScheme.cs"
new file mode 100644
index 0000000..25c29b7
--- /dev/null
+++ "b/Model/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_MoveStockStepInBillScheme.cs"
@@ -0,0 +1,30 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Model
+{
+    public class ClsKf_MoveStockStepInBillScheme : DBUtility.ClsXt_BaseBillSub
+    {
+        public Int64 HInterID;
+        public Int64 HEntryID;
+        public Int64 HItemID;
+        public string HBillType;
+        public Int64 HMaterID;
+        public Int64 HProcID;
+        public Int64 HWhID;
+        public Int64 HSCWhID;
+        public Int64 HGroupID;
+        public double HQty;
+        public string HBarCode;
+        public string HAddr;
+        public string HMaker;
+        public DateTime HMakeDate;
+        public Int64 HSourceInterID;
+        public Int64 HSourceEntryID;
+        public string HSourceBillType;
+        public string HSourceBillNo;
+        public Int64 HSourceItemID;
+
+    }
+}
diff --git "a/Model/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_MoveStockStepInBillSub.cs" "b/Model/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_MoveStockStepInBillSub.cs"
new file mode 100644
index 0000000..3c5dba5
--- /dev/null
+++ "b/Model/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_MoveStockStepInBillSub.cs"
@@ -0,0 +1,30 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Model
+{
+    public class ClsKf_MoveStockStepInBillSub : DBUtility.ClsXt_BaseBillSub
+    {
+        public Int64 HMaterID;          //  int   			--物料ID
+        public string HBatchNo;         //  varchar(50)     --批次
+        public Int64 HPropertyID;       //  int    			--辅助属性
+        public Int64 HSecUnitID;        //  int    			--辅助计量单位
+        public Single HSecUnitRate;     //  money			--换算率 	
+        public Int64 HUnitID;           //  int      		--计量单位
+        public double HQtyMust;         //  dec(18,8)       --应收数量
+        public double HQty;             //  dec(18,8)       --实收数量
+        public double HPrice;           //  dec(18,8)       --单价
+        public double HMoney;           //  dec(18,8)      	--金额
+        public Int64 HWHID;             //  int      		--收料仓库
+        public Int64 HSCWHID;           //  int         	--调出仓库ID 
+        public Int64 HSPID;             //  int      		--调入仓位
+        public Int64 HSCSPID;           //  int         	--调出仓位ID 
+        public Int64 HPOOrderInterID;   //  int      		--采购订单主内码
+        public Int64 HPOOrderEntryID;   //  int    		    --采购订单子内码
+        public string HPOOrderBillNo;   //  varchar(50)     --采购订单号
+        public Int64 HSeOrderInterID;   //   int     		--销售订单主内码
+        public Int64 HSeOrderEntryID;   //  int			    --销售订单子内码
+        public string HSeOrderBillNo;   //  varchar(50)     --销售订单号
+    }
+}
diff --git "a/Model/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_MoveStockStepOutBillMain.cs" "b/Model/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_MoveStockStepOutBillMain.cs"
index 31d783d..0d0af80 100644
--- "a/Model/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_MoveStockStepOutBillMain.cs"
+++ "b/Model/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_MoveStockStepOutBillMain.cs"
@@ -18,6 +18,9 @@
         public string HInnerBillNo;//  varchar(50)     	--内部单据号
         public bool HRedBlueFlag;//  bit    		--红蓝单
         public int HCurID;
+        public string HStockStyle;      //    varchar(100)  //调拨类型
+        public int HStockInOrgID;       //     int     		//调入组织ID
+        public int HStockOutOrgID;      //     int     		//调出组织ID
 
     }
 }
diff --git "a/Model/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_MoveStockStepOutBillScheme.cs" "b/Model/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_MoveStockStepOutBillScheme.cs"
new file mode 100644
index 0000000..a5f9cc5
--- /dev/null
+++ "b/Model/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_MoveStockStepOutBillScheme.cs"
@@ -0,0 +1,30 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Model
+{
+    public class ClsKf_MoveStockStepOutBillScheme : DBUtility.ClsXt_BaseBillSub
+    {
+        public Int64 HInterID;
+        public Int64 HEntryID;
+        public Int64 HItemID;
+        public string HBillType;
+        public Int64 HMaterID;
+        public Int64 HProcID;
+        public Int64 HWhID;
+        public Int64 HSCWhID;
+        public Int64 HGroupID;
+        public double HQty;
+        public string HBarCode;
+        public string HAddr;
+        public string HMaker;
+        public DateTime HMakeDate;
+        public Int64 HSourceInterID;
+        public Int64 HSourceEntryID;
+        public string HSourceBillType;
+        public string HSourceBillNo;
+        public Int64 HSourceItemID;
+
+    }
+}
diff --git "a/Model/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_StepFoldInBillMain.cs" "b/Model/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_StepFoldInBillMain.cs"
new file mode 100644
index 0000000..5a4d337
--- /dev/null
+++ "b/Model/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_StepFoldInBillMain.cs"
@@ -0,0 +1,27 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Model
+{
+    public class ClsKf_StepFoldInBillMain : DBUtility.ClsXt_BaseBillMain
+    {
+        public Int64 HPrintQty;     //    	int        		--打印次数
+
+        //-----------------------------------------------------------------
+
+        public Int64 HSupID;        //    	int        		--供应商         
+        public Int64 HPSStyleID;        //    	int        	--采购方式
+        public Int64 HEmpID;        //    	int        		--仓管员       
+        public Int64 HWHID;         //     	int             --调入仓库
+        public Int64 HSCWHID;       //    	int         	--调出仓库      
+        public Int64 HManagerID;     //  	int     		--负责人
+        public Int64 HSecManagerID; //  	int    		    --验收
+        public Int64 HKeeperID;     //   	int     		--保管员
+        public Int64 HDeptID;       //     	int     		--部门              
+        public string HExplanation; //    	varchar(200)    --摘要 
+        public string HInnerBillNo; //   	varchar(50)    	--内部单据号
+
+        public Int64 HCurID;
+    }
+}
diff --git "a/Model/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_StepFoldInBillSub.cs" "b/Model/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_StepFoldInBillSub.cs"
new file mode 100644
index 0000000..9e8845e
--- /dev/null
+++ "b/Model/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_StepFoldInBillSub.cs"
@@ -0,0 +1,44 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Model
+{
+    public class ClsKf_StepFoldInBillSub : DBUtility.ClsXt_BaseBillSub
+    {
+
+        public string HBillNo_bak;      //		varchar(50)	--单据号(备份,以免内码丢失,找不到对应主表)
+
+        //-----------------------------------------------------------------
+
+        public Int64 HMaterID;          //      int         --物料ID
+        public Int64 HPropertyID;       //      int         --辅助属性
+        public Int64 HSecUnitID;        //      int         --辅助计量单位
+        public Single HSecUnitRate;     //      money       --换算率 
+        public Int64 HUnitID;           //      int         --计量单位
+        public double HQtyMust;         //      dec(18,8)   --应收数量
+        public double HQty;             //      dec(18,8)   --实收数量
+        public double HPrice;           //      dec(18,8)   --单价
+        public double HMoney;           //      dec(18,8)   --金额
+        public double HOrderPrice;        //      dec(18,8)   --采购金额			--addnew
+        public Int64 HWHID;             //      int         --调入仓库
+        public Int64 HSCWHID;           //      int         --调出仓库   
+        public Int64 HPOOrderInterID;   //      int         --采购订单ID
+        public Int64 HPOOrderEntryID;   //      int         --
+        public string HPOOrderBillNo;   //                  --采购订单号
+        public Int64 HSeOrderInterID;   //      int         --销售订单ID
+        public Int64 HSeOrderEntryID;   //      int         --
+        public string HSeOrderBillNo;   //                  --销售订单号
+        public double HInvoiceQty;        //      dec(18,8)   --开票数量
+
+        public Int64 HAuxPropID;
+        public string HBatchNo;
+        public Int64 HSPID;
+        public Int64 HSCSPID;
+        public Int64 HSPGroupID;
+        public Int64 HSCSPGroupID;
+        public string HContainerNum;
+        public double HGrossQty;        //      dec(18,8)   --毛重
+        public double HNetQty;        //      dec(18,8)   --净重
+    }
+}
diff --git "a/Model/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_StepFoldOutBillMain.cs" "b/Model/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_StepFoldOutBillMain.cs"
new file mode 100644
index 0000000..98336d1
--- /dev/null
+++ "b/Model/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_StepFoldOutBillMain.cs"
@@ -0,0 +1,28 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Model
+{
+    public class ClsKf_StepFoldOutBillMain : DBUtility.ClsXt_BaseBillMain
+    {
+        public Int64 HPrintQty;     //    	int        		--打印次数
+
+        //-----------------------------------------------------------------
+
+        public Int64 HSupID;        //    	int        		--供应商         
+        public Int64 HEmpID;        //    	int        		--仓管员       
+        public Int64 HWHID;         //     	int             --调入仓库
+        public Int64 HSCWHID;       //    	int         	--调出仓库      
+        public Int64 HManagerID;     //  	int     		--负责人
+        public Int64 HSecManagerID; //  	int    		    --验收
+        public Int64 HKeeperID;     //   	int     		--保管员
+        public Int64 HDeptID;       //     	int     		--部门              
+        public string HExplanation; //    	varchar(200)    --摘要 
+        public string HInnerBillNo; //   	varchar(50)    	--内部单据号
+
+        public Int64 HCurID;
+        public Int64 HPSStyleID;
+
+    }
+}
diff --git "a/Model/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_StepFoldOutBillSub.cs" "b/Model/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_StepFoldOutBillSub.cs"
new file mode 100644
index 0000000..a00f148
--- /dev/null
+++ "b/Model/\344\273\223\345\272\223\347\256\241\347\220\206/ClsKf_StepFoldOutBillSub.cs"
@@ -0,0 +1,44 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Model
+{
+    public class ClsKf_StepFoldOutBillSub : DBUtility.ClsXt_BaseBillSub
+    {
+
+        public string HBillNo_bak;      //		varchar(50)	--单据号(备份,以免内码丢失,找不到对应主表)
+
+        //-----------------------------------------------------------------
+
+        public Int64 HMaterID;          //      int         --物料ID
+        public Int64 HPropertyID;       //      int         --辅助属性
+        public Int64 HSecUnitID;        //      int         --辅助计量单位
+        public Single HSecUnitRate;     //      money       --换算率 
+        public Int64 HUnitID;           //      int         --计量单位
+        public double HQtyMust;         //      dec(18,8)   --应收数量
+        public double HQty;             //      dec(18,8)   --实收数量
+        public double HPrice;           //      dec(18,8)   --单价
+        public double HMoney;           //      dec(18,8)   --金额
+        public double HOrderPrice;        //      dec(18,8)   --采购金额			--addnew
+        public Int64 HWHID;             //      int         --调入仓库
+        public Int64 HSCWHID;           //      int         --调出仓库   
+        public Int64 HPOOrderInterID;   //      int         --采购订单ID
+        public Int64 HPOOrderEntryID;   //      int         --
+        public string HPOOrderBillNo;   //                  --采购订单号
+        public Int64 HSeOrderInterID;   //      int         --销售订单ID
+        public Int64 HSeOrderEntryID;   //      int         --
+        public string HSeOrderBillNo;   //                  --销售订单号
+        public double HInvoiceQty;        //      dec(18,8)   --开票数量
+
+        public Int64 HAuxPropID;
+        public string HBatchNo;
+        public Int64 HSPID;
+        public Int64 HSCSPID;
+        public Int64 HSPGroupID;
+        public Int64 HSCSPGroupID;
+        public string HContainerNum;
+        public double HGrossQty;        //      dec(18,8)   --毛重
+        public double HNetQty;        //      dec(18,8)   --净重
+    }
+}
diff --git "a/Model/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/ClsGy_ProjectMoney_Model.cs" "b/Model/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/ClsGy_ProjectMoney_Model.cs"
new file mode 100644
index 0000000..8a3bcde
--- /dev/null
+++ "b/Model/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/ClsGy_ProjectMoney_Model.cs"
@@ -0,0 +1,14 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Model
+{
+    public class ClsGy_ProjectMoney_Model : DBUtility.ClsGy_Base_Model
+    {
+        public DateTime HMakeTime;
+        public int HUSEORGID;
+        public string HMakeEmp;
+        public DateTime HModifyTime;
+    }
+}
diff --git "a/Model/\345\272\224\344\273\230\347\256\241\347\220\206/ClsYF_PayMentOtherBillMain.cs" "b/Model/\345\272\224\344\273\230\347\256\241\347\220\206/ClsYF_PayMentOtherBillMain.cs"
index 656c1f3..f1179ae 100644
--- "a/Model/\345\272\224\344\273\230\347\256\241\347\220\206/ClsYF_PayMentOtherBillMain.cs"
+++ "b/Model/\345\272\224\344\273\230\347\256\241\347\220\206/ClsYF_PayMentOtherBillMain.cs"
@@ -6,14 +6,19 @@
 {
     public class ClsYF_PayMentOtherBillMain:DBUtility.ClsXt_BaseBillMain
     {
-        public DateTime HAccDate;//  datetime  //财务日期
-        public Int64 HSupID;//   int  //业务单位(gy_supplier)
+        public DateTime HAccDate;//  datetime  //收款日期
+        public Int64 HCusID;//   int  //供应商(gy_supplier)
         public Int64 HCurID;//   int   //币别
         public Single HExRate;//    money //汇率(选币别带出)
         public Int64 HDeptID;//  int  //部门
-        public Int64 HEmpID;//   int	 //业务员
-        public double HSumMoney;//  dec(18,8) //单据金额
+        public Int64 HEmpID;//   int	 //经手人
+        public Int64 HProjectMoneyID;//   int	 //费用项目
+        public string HType;//   varchar(20)     --发票类型
+        public double HMoney;//  dec(18,8) //单据金额
+        public double HTaxRate;//  dec(18,8) //税率
+        public double HSumMoney;//  dec(18,8) //总金额
         public string HExplanation;//   varchar(200)     --摘要
         public string HInnerBillNo;// varchar(100)      --内部单据号
+        public Int64 HOrgID;   //组织
     }
 }
diff --git "a/Model/\345\272\224\346\224\266\347\256\241\347\220\206/ClsYS_ReceiveOtherBillMain.cs" "b/Model/\345\272\224\346\224\266\347\256\241\347\220\206/ClsYS_ReceiveOtherBillMain.cs"
index a964ea1..0fba952 100644
--- "a/Model/\345\272\224\346\224\266\347\256\241\347\220\206/ClsYS_ReceiveOtherBillMain.cs"
+++ "b/Model/\345\272\224\346\224\266\347\256\241\347\220\206/ClsYS_ReceiveOtherBillMain.cs"
@@ -6,14 +6,19 @@
 {
     public class ClsYS_ReceiveOtherBillMain:DBUtility.ClsXt_BaseBillMain
     {
-        public DateTime HAccDate;//  datetime  //财务日期
-        public Int64 HCusID;//   int  //业务单位(gy_supplier)
+        public DateTime HAccDate;//  datetime  //收款日期
+        public Int64 HCusID;//   int  //客户(gy_supplier)
         public Int64 HCurID;//   int   //币别
         public Single HExRate;//    money //汇率(选币别带出)
         public Int64 HDeptID;//  int  //部门
-        public Int64 HEmpID;//   int	 //业务员
-        public double HSumMoney;//  dec(18,8) //单据金额
+        public Int64 HEmpID;//   int	 //经手人
+        public Int64 HProjectMoneyID;//   int	 //费用项目
+        public string HType;//   varchar(20)     --发票类型
+        public double HMoney;//  dec(18,8) //单据金额
+        public double HTaxRate;//  dec(18,8) //税率
+        public double HSumMoney;//  dec(18,8) //总金额
         public string HExplanation;//   varchar(200)     --摘要
         public string HInnerBillNo;// varchar(100)      --内部单据号
+        public Int64 HOrgID;   //组织
     }
 }
diff --git "a/Model/\350\256\241\345\210\222\347\256\241\347\220\206/ClsGy_MaterialTechParamBillMain.cs" "b/Model/\350\256\241\345\210\222\347\256\241\347\220\206/ClsGy_MaterialTechParamBillMain.cs"
new file mode 100644
index 0000000..3bdd883
--- /dev/null
+++ "b/Model/\350\256\241\345\210\222\347\256\241\347\220\206/ClsGy_MaterialTechParamBillMain.cs"
@@ -0,0 +1,19 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Model
+{
+    public class ClsGy_MaterialTechParamBillMain : DBUtility.ClsXt_BaseBillMain
+    {
+
+        public Int64 HOrgID;        //int       组织
+        public Int64 HDeptID;         //int       部门
+        public Int64 HEmpID;         //int       负责人
+        public Int64 HMaterID;         //int       物料
+        public Int64 HWorkCenterID;    //int       工作中心
+        public Int64 HEquipID;    //int      设备ID
+        public Int64 HProcID;      //int  工序
+
+    }
+}
diff --git "a/Model/\350\256\241\345\210\222\347\256\241\347\220\206/ClsGy_MaterialTechParamBillSub.cs" "b/Model/\350\256\241\345\210\222\347\256\241\347\220\206/ClsGy_MaterialTechParamBillSub.cs"
new file mode 100644
index 0000000..74f3024
--- /dev/null
+++ "b/Model/\350\256\241\345\210\222\347\256\241\347\220\206/ClsGy_MaterialTechParamBillSub.cs"
@@ -0,0 +1,16 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Model
+{
+    public class ClsGy_MaterialTechParamBillSub : DBUtility.ClsXt_BaseBillSub
+    {
+
+        public Int64 HTechParamID;   //工艺参数
+        public Int64 HTechParamUnitID;  //工艺参数单位    
+        public string HStd;         //标准值
+        public string HMax;         //上限
+        public string HMin;         //下限
+    }
+}
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 a8403b1..236bde1 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 HMangerID;        //int       --主管
+        public Int64 HManagerID;        //int       --主管
         public Int64 HEmpID;            //int       --业务员
         public string HReceiveDate;
         public string HExplanation;
diff --git "a/Model/\351\207\207\350\264\255\347\256\241\347\220\206/ClsCg_PayableBillSub.cs" "b/Model/\351\207\207\350\264\255\347\256\241\347\220\206/ClsCg_PayableSub.cs"
similarity index 95%
rename from "Model/\351\207\207\350\264\255\347\256\241\347\220\206/ClsCg_PayableBillSub.cs"
rename to "Model/\351\207\207\350\264\255\347\256\241\347\220\206/ClsCg_PayableSub.cs"
index 4ae4e13..5a4a9ac 100644
--- "a/Model/\351\207\207\350\264\255\347\256\241\347\220\206/ClsCg_PayableBillSub.cs"
+++ "b/Model/\351\207\207\350\264\255\347\256\241\347\220\206/ClsCg_PayableSub.cs"
@@ -4,7 +4,7 @@
 
 namespace Model
 {
-    public class ClsCg_PayableBillSub : DBUtility.ClsXt_BaseBillSub
+    public class ClsCg_PayableSub : DBUtility.ClsXt_BaseBillSub
     {
         public string HBillNo_bak;          //varchar           --单据号备份
         public Int64 HMaterID;              //int   			--物料ID	
diff --git "a/Model/\351\224\200\345\224\256\347\256\241\347\220\206/ClsXs_SeOrderBillMain.cs" "b/Model/\351\224\200\345\224\256\347\256\241\347\220\206/ClsXs_SeOrderBillMain.cs"
index c7d23bd..441374c 100644
--- "a/Model/\351\224\200\345\224\256\347\256\241\347\220\206/ClsXs_SeOrderBillMain.cs"
+++ "b/Model/\351\224\200\345\224\256\347\256\241\347\220\206/ClsXs_SeOrderBillMain.cs"
@@ -16,6 +16,7 @@
         public Int64 HEmpID;            //      int       		--业务员  (Gy_Employee)
         public Int64 HCurID;            //      int      		--币别 (Gy_Currency)
         public Single HExRate;          //      money      		--汇率  (选择完币别带出)
+        public double HEarnestRate;     //      money           --定金比例%
         public Int64 HManagerID;        //      int     		--主管	(Gy_Employee)
         public Int64 HSellSID;          //	    int 			--销售方式 (Gy_SellStyle)		new
         public Int64 HSSID;             //	    int				--结算方式 (Gy_SettleStyle)
diff --git "a/Model/\351\241\271\347\233\256\347\256\241\347\220\206/ClsGy_MaterialMouldBillMain.cs" "b/Model/\351\241\271\347\233\256\347\256\241\347\220\206/ClsGy_MaterialMouldBillMain.cs"
new file mode 100644
index 0000000..4b3a76f
--- /dev/null
+++ "b/Model/\351\241\271\347\233\256\347\256\241\347\220\206/ClsGy_MaterialMouldBillMain.cs"
@@ -0,0 +1,17 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Model
+{
+    public class ClsGy_MaterialMouldBillMain : DBUtility.ClsXt_BaseBillMain
+    {
+        public Int64 HOrgID;        //int       组织
+        public Int64 HDeptID;         //int       部门
+        public Int64 HEmpID;         //int       负责人
+        public Int64 HMaterID;         //int       物料
+        public Int64 HWorkCenterID;    //int       工作中心
+        public Int64 HEquipID;    //int      设备ID
+
+    }
+}
diff --git "a/Model/\351\241\271\347\233\256\347\256\241\347\220\206/ClsPM_ProjectBeginBillMain.cs" "b/Model/\351\241\271\347\233\256\347\256\241\347\220\206/ClsPM_ProjectBeginBillMain.cs"
new file mode 100644
index 0000000..d2e532e
--- /dev/null
+++ "b/Model/\351\241\271\347\233\256\347\256\241\347\220\206/ClsPM_ProjectBeginBillMain.cs"
@@ -0,0 +1,29 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Model
+{
+    public class ClsPM_ProjectBeginBillMain: DBUtility.ClsXt_BaseBillMain
+    {   
+
+        public Int64 HProjectID;    //int       项目内码
+        public string HProNumber;//	varchar(50)	//项目代码
+        public string HProName;//	varchar(50)	项目阶段
+        public string HNote;//	varchar(500)	启动内容
+        public DateTime HPlanBeginDate;   //datetime  计划开始日期
+        public DateTime HPlanEndDate;   // datetime  计划结束日期
+        public decimal HSumMoney;//		money 		 合同总金额
+        public string HProType;//	varchar(10)   项目类型(小型、标准、综合)
+        public Int64 HCusID;//		int		//客户
+        public Int64 HPMTeamID;// 	int  交付方
+        public Int64 HPMEmpID;//	int 	项目经理
+        public Int64 HWorkEmpID;//	int 	实施担当
+        public Int64 HManagerID;//	int 	管理员
+        public decimal HMoney;//		money 		 结算金额  
+        public Int64 HConWorkDays;//		int    合同预估人天
+        public Int64 HOrgID;//		int    组织
+
+
+    }
+}
diff --git "a/Model/\351\241\271\347\233\256\347\256\241\347\220\206/ClsPM_ProjectBeginBillSub.cs" "b/Model/\351\241\271\347\233\256\347\256\241\347\220\206/ClsPM_ProjectBeginBillSub.cs"
new file mode 100644
index 0000000..7b89ed9
--- /dev/null
+++ "b/Model/\351\241\271\347\233\256\347\256\241\347\220\206/ClsPM_ProjectBeginBillSub.cs"
@@ -0,0 +1,11 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Model
+{
+    public class ClsPM_ProjectBeginBillSub : DBUtility.ClsXt_BaseBillSub
+    {
+       
+    }
+}
diff --git "a/Model/\351\241\271\347\233\256\347\256\241\347\220\206/ClsPM_ProjectEndBillMain.cs" "b/Model/\351\241\271\347\233\256\347\256\241\347\220\206/ClsPM_ProjectEndBillMain.cs"
new file mode 100644
index 0000000..ba64d48
--- /dev/null
+++ "b/Model/\351\241\271\347\233\256\347\256\241\347\220\206/ClsPM_ProjectEndBillMain.cs"
@@ -0,0 +1,29 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Model
+{
+    public class ClsPM_ProjectEndBillMain : DBUtility.ClsXt_BaseBillMain
+    {   
+
+        public Int64 HProjectID;    //int       项目内码
+        public string HProNumber;//	varchar(50)	//项目代码
+        public string HProName;//	varchar(50)	项目名称
+        public string HNote;//	varchar(500)	验收内容
+        public DateTime HRunBeginDate;   //datetime  运行开始日期
+        public DateTime HEndDate;   // datetime  完工日期
+        public DateTime HTestDate;//		datetime  测试日期
+        public string HTestNote;//	varchar(10)   测试记录
+        public Int64 HTestEmp;//		int		测试人员
+        public Int64 HCusID;//		int		//客户
+        public Int64 HPMTeamID;// 	int  交付方
+        public Int64 HPMEmpID;//	int 	项目经理
+        public Int64 HWorkEmpID;//	int 	实施担当
+        public Int64 HManagerID;//	int 	管理员
+        public Int64 HConWorkDays;//		int    实际消耗人天
+        public Int64 HOrgID;//		int    组织
+
+
+    }
+}
diff --git "a/Model/\351\241\271\347\233\256\347\256\241\347\220\206/ClsPM_ProjectEndBillSub.cs" "b/Model/\351\241\271\347\233\256\347\256\241\347\220\206/ClsPM_ProjectEndBillSub.cs"
new file mode 100644
index 0000000..f2b3d3d
--- /dev/null
+++ "b/Model/\351\241\271\347\233\256\347\256\241\347\220\206/ClsPM_ProjectEndBillSub.cs"
@@ -0,0 +1,11 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Model
+{
+    public class ClsPM_ProjectEndBillSub : DBUtility.ClsXt_BaseBillSub
+    {
+       
+    }
+}
diff --git "a/Model/\351\241\271\347\233\256\347\256\241\347\220\206/ClsPM_ProjectMoneyBillMain.cs" "b/Model/\351\241\271\347\233\256\347\256\241\347\220\206/ClsPM_ProjectMoneyBillMain.cs"
new file mode 100644
index 0000000..0d7d766
--- /dev/null
+++ "b/Model/\351\241\271\347\233\256\347\256\241\347\220\206/ClsPM_ProjectMoneyBillMain.cs"
@@ -0,0 +1,21 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Model
+{
+    public class ClsPM_ProjectMoneyBillMain : DBUtility.ClsXt_BaseBillMain
+    {   
+
+        public Int64 HProjectID;    //int       项目内码
+        public string HProNumber;//	varchar(50)	//项目代码
+        public string HProName;//	varchar(50)	项目阶段
+        public Int64 HCusID;//		int		//客户
+        public Int64 HPMTeamID;// 	int  交付方
+        public Int64 HPMEmpID;//	int 	项目经理
+        public Int64 HWorkEmpID;//	int 	实施担当
+        public Int64 HManagerID;//	int 	管理员
+        public Int64 HOrgID;//		int    //组织
+
+    }
+}
diff --git "a/Model/\351\241\271\347\233\256\347\256\241\347\220\206/ClsPM_ProjectMoneyBillSub.cs" "b/Model/\351\241\271\347\233\256\347\256\241\347\220\206/ClsPM_ProjectMoneyBillSub.cs"
new file mode 100644
index 0000000..e95e5d0
--- /dev/null
+++ "b/Model/\351\241\271\347\233\256\347\256\241\347\220\206/ClsPM_ProjectMoneyBillSub.cs"
@@ -0,0 +1,14 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Model
+{
+    public class ClsPM_ProjectMoneyBillSub : DBUtility.ClsXt_BaseBillSub
+    {
+        public Int64 HProMoneyID;    //int --项目费用
+        public decimal HQty;        //money --数量
+        public decimal HPrice;        //money --单价
+        public decimal HMoney;        //money --金额
+    }
+}
diff --git a/WebAPI/Controllers/BaseSet/Gy_BadReasonController.cs b/WebAPI/Controllers/BaseSet/Gy_BadReasonController.cs
index 703a89a..dee798f 100644
--- a/WebAPI/Controllers/BaseSet/Gy_BadReasonController.cs
+++ b/WebAPI/Controllers/BaseSet/Gy_BadReasonController.cs
@@ -4634,6 +4634,247 @@
         }
         #endregion
 
+        #region  椤圭洰璐圭敤  鏌ヨ,瀹℃牳锛屽弽瀹℃牳锛岀鐢紝鍙嶇鐢�
+        /// <summary> 
+        /// 渚涘簲鍟嗗垎绫�  鏌ヨ
+        /// </summary>
+        /// <param name="sWhere"></param>
+        /// <param name="user"></param>
+        /// <returns></returns>
+        [Route("Gy_BadReason/Gy_ProjectMoneyList")]
+        [HttpGet]
+        public object Gy_ProjectMoneyList(string sWhere, string user)
+        {
+            try
+            {
+                List<object> columnNameList = new List<object>();
+                //鏌ョ湅鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("Gy_ProjectMoney_Query", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                string sql1 = "select * from  h_v_Gy_ProjectMoney where 1 = 1";
+                string sql = sql1 + sWhere + " order by 椤圭洰璐圭敤浠g爜 ";
+                ds = oCN.RunProcReturn(sql, "h_v_Gy_ProjectMoney");
+
+                //娣诲姞鍒楀悕
+                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;
+            }
+        }
+
+        /// <summary>
+        /// 椤圭洰璐圭敤 瀹℃牳銆佸弽瀹℃牳
+        /// </summary>
+        /// <param name="HInterID">鍗曟嵁ID</param>
+        /// <param name="IsAudit">瀹℃牳(0),鍙嶅鏍�(1)</param>
+        /// <param name="CurUserName">瀹℃牳浜�</param>
+        /// <returns></returns>
+        [Route("Gy_BadReason/AuditGy_ProjectMoney")]
+        [HttpGet]
+        public object AuditGy_ProjectMoney(int HInterID, int IsAudit, string CurUserName)
+        {
+            try
+            {
+                //瀹℃牳鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log_second("Gy_ProjectMoney_Check", 1, false, CurUserName))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "瀹℃牳澶辫触锛佹棤鏉冮檺锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                var ds = oCN.RunProcReturn("select * from Gy_ProjectMoney where HItemID=" + HInterID, "Gy_ProjectMoney");
+                if (ds.Tables[0].Rows.Count > 0)
+                {
+                    if (IsAudit == 0)  //瀹℃牳鍒ゆ柇
+                    {
+                        if (ds.Tables[0].Rows[0]["HCheckEmp"].ToString() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸插鏍�!涓嶈兘鍐嶆瀹℃牳锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                    if (IsAudit == 1) //鍙嶅鏍稿垽鏂�
+                    {
+                        if (ds.Tables[0].Rows[0]["HCheckEmp"].ToString() == "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鏈鏍�!涓嶉渶瑕佸弽瀹℃牳!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦�!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                oCN.BeginTran();
+
+                if (IsAudit == 0)  //瀹℃牳鍒ゆ柇
+                {
+                    oCN.RunProc("update Gy_ProjectMoney set HCheckEmp='" + CurUserName + "',HCheckTime=getdate() where HItemID=" + HInterID);
+
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "瀹℃牳鎴愬姛";
+                    objJsonResult.data = null;
+                }
+                if (IsAudit == 1) //鍙嶅鏍稿垽鏂�
+                {
+                    oCN.RunProc("update Gy_ProjectMoney set HCheckEmp='',HCheckTime=null where HItemID=" + HInterID);
+
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "鍙嶅鏍告垚鍔�";
+                    objJsonResult.data = null;
+                }
+                oCN.Commit();
+
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                oCN.RollBack();
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "瀹℃牳澶辫触鎴栬�呭弽瀹℃牳澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+
+
+
+        /// <summary>
+        /// 椤圭洰璐圭敤 绂佺敤銆佸弽绂佺敤
+        /// </summary>
+        /// <param name="HInterID">鍗曟嵁ID</param>
+        /// <param name="IsStop">绂佺敤(0),鍙嶇鐢�(1)</param>
+        /// <param name="CurUserName">瀹℃牳浜�</param>
+        /// <returns></returns>
+        [Route("Gy_BadReason/StopGy_ProjectMoney")]
+        [HttpGet]
+        public object StopGy_ProjectMoney(int HInterID, int IsStop, string CurUserName)
+        {
+            try
+            {
+                //瀹℃牳鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log_second("Gy_ProjectMoney_Close", 1, false, CurUserName))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "绂佺敤澶辫触锛佹棤鏉冮檺锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                var ds = oCN.RunProcReturn("select * from Gy_ProjectMoney where HItemID=" + HInterID, "Gy_SupType");
+                if (ds.Tables[0].Rows.Count > 0)
+                {
+                    if (IsStop == 0)  //绂佺敤鍒ゆ柇
+                    {
+                        if (ds.Tables[0].Rows[0]["HStopEmp"].ToString() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸茬鐢�!涓嶈兘鍐嶆绂佺敤锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                    if (IsStop == 1) //鍙嶇鐢ㄥ垽鏂�
+                    {
+                        if (ds.Tables[0].Rows[0]["HStopEmp"].ToString() == "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鏈鐢�!涓嶉渶瑕佸弽绂佺敤!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦�!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                oCN.BeginTran();
+
+                if (IsStop == 0)  //绂佺敤鍒ゆ柇
+                {
+                    oCN.RunProc("update Gy_ProjectMoney set HStopEmp='" + CurUserName + "',HStopTime=getdate(),HStopflag=1 where HItemID=" + HInterID);
+
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "绂佺敤鎴愬姛";
+                    objJsonResult.data = null;
+                }
+                if (IsStop == 1) //鍙嶇鐢ㄥ垽鏂�
+                {
+                    oCN.RunProc("update Gy_ProjectMoney set HStopEmp='',HStopTime=null,HStopflag=0 where HItemID=" + HInterID);
+
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "鍙嶇鐢ㄦ垚鍔�";
+                    objJsonResult.data = null;
+                }
+                oCN.Commit();
+
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                oCN.RollBack();
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "绂佺敤澶辫触鎴栬�呭弽绂佺敤澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
 
 
         #region 寮傚父绫诲瀷  鏌ヨ
diff --git a/WebAPI/Controllers/BaseSet/Gy_CustomerController.cs b/WebAPI/Controllers/BaseSet/Gy_CustomerController.cs
index 29c81c0..0d13801 100644
--- a/WebAPI/Controllers/BaseSet/Gy_CustomerController.cs
+++ b/WebAPI/Controllers/BaseSet/Gy_CustomerController.cs
@@ -747,25 +747,37 @@
                         return objJsonResult;
                     }
                     //
-                    if (oDept.DeleteByID(HItemID))
+                    try
                     {
-                        //鍐欏叆鏃ュ織
-                        ClsPub.Add_Log("", "鍒犻櫎椤圭洰锛屼唬鐮侊細" + oDeptHlp.omodel.HNumber + ",鍚嶇О锛�" + oDeptHlp.omodel.HName, ClsPub.CurUserName);
-                        //鏇存柊涓婄骇涓� 鏈骇
-                        objJsonResult.code = "1";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "鍒犻櫎鎴愬姛";
-                        objJsonResult.data = null;
-                        return objJsonResult;
+                        if (oDept.DeleteByID(HItemID))
+                        {
+                            //鍐欏叆鏃ュ織
+                            ClsPub.Add_Log("", "鍒犻櫎椤圭洰锛屼唬鐮侊細" + oDeptHlp.omodel.HNumber + ",鍚嶇О锛�" + oDeptHlp.omodel.HName, ClsPub.CurUserName);
+                            //鏇存柊涓婄骇涓� 鏈骇
+                            objJsonResult.code = "1";
+                            objJsonResult.count = 1;
+                            objJsonResult.Message = "鍒犻櫎鎴愬姛";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍒犻櫎澶辫触";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
                     }
-                    else
+                    catch (Exception e)
                     {
                         objJsonResult.code = "0";
                         objJsonResult.count = 0;
-                        objJsonResult.Message = "鍒犻櫎澶辫触";
+                        objJsonResult.Message = "鍒犻櫎澶辫触锛岃瀹㈡埛瀛樺湪鍏宠仈鐨勯攢鍞鍗曘�侀攢鍞嚭搴撳崟銆佺敓浜ц鍗曪紝鎴栫▼搴忛敊璇��";
                         objJsonResult.data = null;
                         return objJsonResult;
                     }
+                    
                 }
                 //ds = oCN.RunProcReturn("delete from Gy_Department where HItemID =  " + HItemID, "Gy_Department");
 
diff --git a/WebAPI/Controllers/BaseSet/Xt_grdAlignment_WMESController.cs b/WebAPI/Controllers/BaseSet/Xt_grdAlignment_WMESController.cs
index 8f4ae94..69c2f00 100644
--- a/WebAPI/Controllers/BaseSet/Xt_grdAlignment_WMESController.cs
+++ b/WebAPI/Controllers/BaseSet/Xt_grdAlignment_WMESController.cs
@@ -1,5 +1,6 @@
 锘縰sing Newtonsoft.Json;
 using Newtonsoft.Json.Linq;
+using Pub_Control;
 using System;
 using System.Collections.Generic;
 using System.Data;
@@ -70,6 +71,7 @@
             public string HSortFlag;
             public string HSelTotal;
             public string HColumnWidth;
+            public string HPageSize;
 
         }
         public class grdAlignmentSub
@@ -132,12 +134,15 @@
                 HGridString = HGridString.Substring(0, HGridString.Length - 1);
 
                 oCN.RunProc("Delete from Xt_grdAlignment_WMES where HUserName='" + user + "' and HModName='" + HModName + "' ");
-                oCN.RunProc("insert into Xt_grdAlignment_WMES (HUserName,HModName,HGridString,HFixCols" +
-                    ",HFontSize,HHeadTextHeight,HTextHeight,HSortFlag,HSelTotal,HColumnWidth" +
+
+                string sql = "insert into Xt_grdAlignment_WMES (HUserName,HModName,HGridString,HFixCols" +
+                    ",HFontSize,HHeadTextHeight,HTextHeight,HSortFlag,HSelTotal,HColumnWidth,HPageSize" +
                     ")  values('" + user + "','" + HModName + "','" + HGridString + "'," + (omdelMian.HFixCols == "" ? "0" : omdelMian.HFixCols) +
                     "," + (omdelMian.HFontSize == "" ? "0" : omdelMian.HFontSize) + ",0" +
                     ",0,'" + omdelMian.HSortFlag + "','" + omdelMian.HSelTotal + "'" +
-                    "," + (omdelMian.HColumnWidth == "" ? "0" : omdelMian.HColumnWidth) + ")");
+                    "," + (omdelMian.HColumnWidth == "" ? "0" : omdelMian.HColumnWidth) + "," + ((omdelMian.HPageSize == null || omdelMian.HPageSize == "") ? "0" : omdelMian.HPageSize) + ")";
+
+                oCN.RunProc(sql);
 
 
                 objJsonResult.code = "1";
@@ -199,7 +204,6 @@
             }
         }
         #endregion
-
 
         #region 鎸夐挳璁剧疆 鍒楄〃
         [Route("Xt_ModuleButtonSet_WMES/moduleButtonSetWMESList")]
@@ -354,5 +358,244 @@
         }
 
         #endregion
+
+        #region 楂樼骇杩囨护  鏂规鏌ヨ
+        public class TreeModel
+        {
+            public string id { get; set; }
+            public string title { get; set; }
+            public List<TreeModel> children = new List<TreeModel>();
+        }
+        [Route("Xt_grdAlignment_WMES/Gy_QueryConditionList_F_A")]
+        [HttpGet]
+        public object Gy_QueryConditionList_F_A(string HModName, string user)
+        {
+            try
+            {
+
+                ds = oCN.RunProcReturn("Select HInterID,HName from xt_ICSchemeMain Where HName='榛樿鏂规' and HBillName='" + HModName + "'and HUserCode='" + user + "'", "xt_ICSchemeMain");
+
+                List<TreeModel> treeModels = new List<TreeModel>();
+                if (ds.Tables[0].Rows.Count > 0)
+                {
+                    TreeModel Second = new TreeModel();
+                    Second.id = ds.Tables[0].Rows[0]["HInterID"].ToString();
+                    Second.title = ds.Tables[0].Rows[0]["HName"].ToString();
+                    treeModels.Add(Second);
+
+                    ds = oCN.RunProcReturn("Select HInterID,HName from xt_ICSchemeMain Where HName!='榛樿鏂规' and  HBillName='" + HModName + "'and HUserCode='" + user + "' order by HInterID", "xt_ICSchemeMain");
+                    foreach (DataRow row in ds.Tables[0].Rows)
+                    {
+                        TreeModel Three = new TreeModel();
+                        Three.id = row["HInterID"].ToString();
+                        Three.title = row["HName"].ToString();
+                        treeModels.Add(Three);
+                    }
+                }
+                else
+                {
+                    TreeModel first = new TreeModel();
+                    first.id = "0";
+                    first.title = "榛樿鏂规";
+                    treeModels.Add(first);
+                }
+
+
+              
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = Newtonsoft.Json.JsonConvert.SerializeObject(treeModels);
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 楂樼骇杩囨护 瀛楁杩囨护鏉′欢鏌ヨ
+        [Route("Xt_grdAlignment_WMES/Gy_QueryCondition_Z_D_select")]
+        [HttpGet]
+        public object Gy_QueryCondition_Z_D_select(string sWhere, string user, string Organization)
+        {
+            try
+            {
+                List<object> columnNameList = new List<object>();
+                ////缂栬緫鏉冮檺
+                //if (!DBUtility.ClsPub.Security_Log_second("Gy_Material", 1, false, user))
+                //{
+                //    objJsonResult.code = "0";
+                //    objJsonResult.count = 0;
+                //    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                //    objJsonResult.data = null;
+                //    return objJsonResult;
+                //}
+
+                string sql1 = string.Format(@"select * from Xt_grdCondition  where 1=1 ");
+                string sql = sql1 + sWhere;
+                ds = oCN.RunProcReturn(sql, "Xt_grdCondition");
+
+                //娣诲姞鍒楀悕
+                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.list = columnNameList;
+                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("Xt_grdAlignment_WMES/Del_Gy_QueryConditionList_F_A")]
+        [HttpGet]
+        public object Del_Gy_QueryConditionList_F_A(string HModName, string ID, string user)
+        {
+            try
+            {
+                oCN.BeginTran();
+                //鍒犻櫎鏂规涓昏〃
+                oCN.RunProc("Delete From xt_ICSchemeMain where HInterID=" + ID.ToString());
+                //鍒犻櫎 杩囨护鏉′欢
+                oCN.RunProc("Delete From Xt_grdCondition where HInterID=" + ID.ToString());
+                oCN.Commit();
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鍒犻櫎鎴愬姛锛�";
+                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 楂樼骇杩囨护 鏂规 杩囨护鏉′欢 淇濆瓨
+        public class xt_ICScheme
+        {
+            public string HFieldNameCol;
+            public string HControlCol;
+            public string HConditionCol;
+            public string HRelationCol;
+        }
+        public class data
+        {
+            public string id;
+            public string title;
+        }
+        [Route("Xt_grdAlignment_WMES/Add_Gy_QueryConditionList_F_A")]
+        [HttpPost]
+        public object Add_Gy_QueryConditionList_F_A([FromBody] JObject sMainSub)
+        {
+            try
+            {
+                var _value = sMainSub["sMainSub"].ToString();
+                string msg1 = _value.ToString();
+                string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+                string TableData = sArray[0].ToString();//瀛楁杩囨护鏉′欢
+                string F_A = sArray[1].ToString();//鏂规
+                string HModName = sArray[2].ToString();//妯″潡
+                string HUserName = sArray[3].ToString();//鐢ㄦ埛
+
+                List<xt_ICScheme> ListTableData = Newtonsoft.Json.JsonConvert.DeserializeObject<List<xt_ICScheme>>(TableData);
+                data listF_A = Newtonsoft.Json.JsonConvert.DeserializeObject<data>(F_A);
+
+                oCN.BeginTran();
+                if (listF_A.id != "0")
+                {
+                    //鍒犻櫎涓昏〃
+                    oCN.RunProc("Delete From xt_ICSchemeMain where HInterID=" + listF_A.id.ToString());
+                }
+                else {
+                    listF_A.id = Pub_Class.ClsPub.CreateBillID("0001", ref Pub_Class.ClsPub.sExeReturnInfo).ToString(); ;
+                }
+              
+                //娣诲姞鏂规涓昏〃
+                oCN.RunProc("Insert Into xt_ICSchemeMain   " +
+                "(HBillType,HInterID,HName,HUserCode" +
+                ",HBillName,HStopflag" +
+                ") " +
+                " values('0001'," + listF_A.id.ToString() + ",'" + listF_A.title + "','" + HUserName + "'" +
+                ",'" + HModName.ToString() + "',0" +
+                ") ");
+
+               
+                //鍒犻櫎瀛楁琛ㄦ暟鎹�
+                oCN.RunProc("delete Xt_grdCondition where   HInterID=" + listF_A.id.ToString());
+
+                ds = oCN.RunProcReturn("select column_name,data_type from information_schema.columns where table_name ='" + HModName + "' order by  ORDINAL_POSITION", "information");
+                //娣诲姞杩囨护瀛楁琛�
+                for (int i = 0; i < ListTableData.Count; i++)
+                {
+                    for (int j = 0; j < ds.Tables[0].Rows.Count; j++)
+                    {
+                        if (ListTableData[i].HFieldNameCol == ds.Tables[0].Rows[j]["column_name"].ToString()) {
+
+                            oCN.RunProc("Insert Into Xt_grdCondition   " +
+                            "(HInterID,HUserID,HBillName,HRow,HIDCol,HBracketLCol,HFieldNameCol,HControlCol" +
+                            ",HConditionCol,HBracketRCol,HRelationCol" +
+                            ") " +
+                            " values(" + listF_A.id.ToString() + ",'" + HUserName + "','" + HModName.Trim() + "'," + i +
+                            ",'" + Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[j]["column_name"].ToString()) + "'" +
+                            ",''" +
+                            ",'" + Pub_Class.ClsPub.isStrNull(ListTableData[i].HFieldNameCol) + "'" +
+                            ",'" + Pub_Class.ClsPub.isStrNull(ListTableData[i].HControlCol) + "'" +
+                            ",'" + Pub_Class.ClsPub.isStrNull(ListTableData[i].HConditionCol).Replace("'", "''") + "'" +
+                            ",''" +
+                            ",'" + Pub_Class.ClsPub.isStrNull(ListTableData[i].HRelationCol) + "')");
+
+                            break;
+                        }
+                    }
+                }
+
+                oCN.Commit();
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "淇濆瓨鎴愬姛锛�";
+                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/CGGL/Cg_PayableBillController.cs b/WebAPI/Controllers/CGGL/Cg_PayableBillController.cs
index 2027a30..32f81ee 100644
--- a/WebAPI/Controllers/CGGL/Cg_PayableBillController.cs
+++ b/WebAPI/Controllers/CGGL/Cg_PayableBillController.cs
@@ -173,10 +173,10 @@
                 msg3 = msg3.Replace("\\", "");
                 msg3 = msg3.Replace("\n", "");  //\n
                 //msg2 = msg2.Replace("'", "鈥�");
-                List<Model.ClsCg_PayableBillSub> ls = new List<Model.ClsCg_PayableBillSub>();
-                ls = oListModels.getObjectByJson_Cg_PayableBillSub(msg3);
+                List<Model.ClsCg_PayableSub> ls = new List<Model.ClsCg_PayableSub>();
+                ls = oListModels.getObjectByJson_Cg_PayableSub(msg3);
                 int i = 0;
-                foreach (Model.ClsCg_PayableBillSub oItemSub in ls)
+                foreach (Model.ClsCg_PayableSub oItemSub in ls)
                 {
                     i++;
                     oItemSub.HEntryID = i;
@@ -336,7 +336,7 @@
                 oCN.BeginTran();
 
                 oCN.RunProc("delete from Cg_PayableBillMain where HInterID = " + HInterID);
-                oCN.RunProc("delete from Cg_PayableBillSub where HInterID= " + HInterID);
+                oCN.RunProc("delete from Cg_PayableSub where HInterID= " + HInterID);
 
                 ////鍒犻櫎鍚庢帶鍒�==================================================================================      
                 //string sql2 = "exec h_p_Xs_ReceivableBill_AfterDelCtrl " + BillOld.omodel.HInterID + ",'" + BillOld.omodel.HBillNo + "','" + user + "'";
@@ -367,7 +367,7 @@
 
                 objJsonResult.code = "1";
                 objJsonResult.count = 1;
-                objJsonResult.Message = "鎮ㄥ凡鍒犻櫎鍗曟嵁鍙蜂负" + BillOld.omodel.HBillNo + "鐨勫簲鏀跺崟锛�";
+                objJsonResult.Message = "鎮ㄥ凡鍒犻櫎鍗曟嵁鍙蜂负" + BillOld.omodel.HBillNo + "鐨勫簲浠樺崟锛�";
                 objJsonResult.data = null;
                 return objJsonResult;
             }
@@ -382,6 +382,8 @@
             }
         }
         #endregion
+
+
 
         #region 搴斾粯鍗� 瀹℃牳/鍙嶅鏍�
         /// <summary>
@@ -576,7 +578,7 @@
             }
             catch (Exception e)
             {
-                oCN.RollBack();
+                //oCN.RollBack();
 
                 objJsonResult.code = "0";
                 objJsonResult.count = 0;
@@ -587,6 +589,7 @@
         }
         #endregion
 
+
         #region 搴斾粯鍗� 鍏抽棴/鍙嶅叧闂�
         /// <summary>
         /// </summary>
diff --git a/WebAPI/Controllers/CGGL/Kf_POStockInBillController.cs b/WebAPI/Controllers/CGGL/Kf_POStockInBillController.cs
index 3f7426b..a8ec430 100644
--- a/WebAPI/Controllers/CGGL/Kf_POStockInBillController.cs
+++ b/WebAPI/Controllers/CGGL/Kf_POStockInBillController.cs
@@ -1015,7 +1015,7 @@
             try
             {
 
-                ds = oCN.RunProcReturn("select * from h_v_IF_POStockInBillList_EditInit where hmainid =" + HInterID + " and hsubid = " + HSubID, "h_v_IF_POStockInBillList_EditInit");
+                ds = oCN.RunProcReturn("select * from h_v_IF_POStockInBillList where hmainid =" + HInterID + " and hsubid = " + HSubID, "h_v_IF_POStockInBillList");
                 if (ds == null || ds.Tables[0].Rows.Count == 0)
                 {
                     objJsonResult.code = "0";
diff --git a/WebAPI/Controllers/CJGL/Cj_SingleStationController.cs b/WebAPI/Controllers/CJGL/Cj_SingleStationController.cs
index 70a5f6d..4800450 100644
--- a/WebAPI/Controllers/CJGL/Cj_SingleStationController.cs
+++ b/WebAPI/Controllers/CJGL/Cj_SingleStationController.cs
@@ -414,14 +414,22 @@
                 string HProcID = ds.Tables[0].Rows[0]["HProcID"].ToString();
 
                 oCN.RunProc("delete from  Sc_AssemblyBill_BindSourceTemp where HInterID =" + HInterID + "  and HBillNo_bak='" + HBillNo + "'");
+                oCN.RunProc("delete from  Sc_AssemblyBill_BindBarCodeTemp where HInterID =" + HInterID + "  and HBillNo_bak='" + HBillNo + "'");
                 for (int i = 0; i < tempList.Count; i++)
                 {
-                    //涓存椂閰嶄欢琛�
+                    //涓存椂婧愬崟琛�
                     oCN.RunProc("Insert Into Sc_AssemblyBill_BindSourceTemp   " +
                     "(HInterID,HEntryID,HBillNo_bak,HSourceBillNo,HSourceInterID,HSourceEntryID,HMaterID" +
                     ",HQtyMust,HProdOrgID,HSourceBillType,HAuxPropID,HProcID,HQty,HBatchNo,HMTONo,HPlanMode) " +
                     " values(" + HInterID + "," + (i + 1) + ",'" + HBillNo + "','" + tempList[i].HProcExchBillNo + "',"+ tempList[i].HProcExchInterID + "," + tempList[i].HProcExchEntryID +","+ tempList[i].HMaterID+
                     ",'0','" + HOrgID + "','',0,"+ HProcID + ","+ tempList[i].HQty + ",'" + tempList[i].HBatchNo + "','','') ");
+
+                    //涓存椂閰嶄欢琛�
+                    oCN.RunProc("Insert Into Sc_AssemblyBill_BindBarCodeTemp   " +
+                    "(HInterID,HEntryID,HBillNo_bak,HSourceBillNo,HSourceInterID,HSourceEntryID,HMaterID" +
+                    ",HProdOrgID,HSourceBillType,HAuxPropID,HProcID,HQty,HBatchNo,HBarCode,HMTONo,HPlanMode) " +
+                    " values(" + HInterID + "," + (i + 1) + ",'" + HBillNo + "','" + tempList[i].HProcExchBillNo + "'," + tempList[i].HProcExchInterID + "," + tempList[i].HProcExchEntryID + "," + tempList[i].HMaterID +
+                    ",'" + HOrgID + "','',0," + HProcID + "," + tempList[i].HQty + ",'"+ tempList[i].HBatchNo + "','" + tempList[i].HBarCode + "','','') ");
                 }
 
                 oCN.Commit();
diff --git a/WebAPI/Controllers/JHGL/Gy_MaterialTechParamBillController.cs b/WebAPI/Controllers/JHGL/Gy_MaterialTechParamBillController.cs
new file mode 100644
index 0000000..ba7850a
--- /dev/null
+++ b/WebAPI/Controllers/JHGL/Gy_MaterialTechParamBillController.cs
@@ -0,0 +1,536 @@
+锘縰sing DBUtility;
+using Model;
+using Newtonsoft.Json;
+using Newtonsoft.Json.Linq;
+using System;
+using System.Collections.Generic;
+using System.Data;
+using System.Linq;
+using System.Web;
+using System.Web.Http;
+using System.Windows.Forms;
+using WebAPI.Models;
+
+namespace WebAPI.Controllers.MJGL
+{
+    public class Gy_MaterialTechParamBillController : ApiController
+    {
+
+
+        //浜у搧宸ヨ壓鍙傛暟娓呭崟   Gy_MaterialTechParamBill   Gy_MaterialTechParamBillMain  Gy_MaterialTechParamBillSub
+
+
+        private json objJsonResult = new json();
+        public DataSet ds = new DataSet();
+        public DBUtility.ClsPub.Enum_BillStatus BillStatus;//鍗曟嵁鐘舵�侊紙鏂板锛屼慨鏀癸紝娴忚锛屾洿鏂板崟浠凤紝鍙樻洿锛�
+        SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+        public DAL.ClsGy_MaterialTechParamBillMain BillNew1 = new DAL.ClsGy_MaterialTechParamBillMain();   //浜у搧宸ヨ壓鍙傛暟娓呭崟瀵瑰簲鍗曟嵁绫�
+        public DAL.ClsGy_MaterialTechParamBillMain BillOld1 = new DAL.ClsGy_MaterialTechParamBillMain();
+
+        #region 浜у搧宸ヨ壓鍙傛暟娓呭崟鍒楄〃
+        [Route("Sc_MouldDotCheckRuleBill/Gy_MaterialTechParamBillMainList")]
+        [HttpGet]
+        public object Gy_MaterialTechParamBillMainList(string sWhere, string user)
+        {
+            try
+            {
+                List<object> columnNameList = new List<object>();
+                //缂栬緫鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("Gy_MaterialTechParamBillMain_Query", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                if (sWhere == null || sWhere.Equals(""))
+                {
+                    ds = oCN.RunProcReturn("select * from h_v_Gy_MaterialTechParamBillMainList order by 鍗曟嵁鍙� desc", "h_v_Gy_MaterialTechParamBillMainList");
+                }
+                else
+                {
+                    string sql1 = "select * from h_v_Gy_MaterialTechParamBillMainList where 1 = 1 ";
+                    string sql = sql1 + sWhere + " order by 鍗曟嵁鍙� desc";
+                    ds = oCN.RunProcReturn(sql, "h_v_Gy_MaterialTechParamBillMainList");
+                }
+                //娣诲姞鍒楀悕
+                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
+
+        #region 浜у搧宸ヨ壓鍙傛暟娓呭崟 淇濆瓨/缂栬緫
+        /// <summary>
+        /// 淇濆瓨妯″叿缁翠慨鍗�
+        /// </summary>
+        /// <param name="msg"></param>
+        /// <returns></returns>
+        [Route("Gy_MaterialTechParamBill/SaveGy_MaterialTechParamBillMain")]
+        [HttpPost]
+        public object SaveGy_MaterialTechParamBillMain([FromBody] JObject sMainSub)
+        {
+            var _value = sMainSub["sMainSub"].ToString();
+            string msg1 = _value.ToString();
+            string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+            string msg2 = sArray[0].ToString();
+            string msg3 = sArray[1].ToString(); //瀛愯〃
+            string refSav = sArray[2].ToString();//鎿嶄綔鏂瑰紡鏁版嵁绫诲瀷 1娣诲姞 3淇敼 2 澶嶅埗
+            string user = sArray[3].ToString();//鐢ㄦ埛鍚�
+
+            string UserName = "";
+            string s = "";
+            ListModels oListModels = new ListModels();
+            try
+            {
+                //淇濆瓨鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log_second("Gy_MaterialTechParamBillMain_Edit", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犱繚瀛樻潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                DAL.ClsGy_MaterialTechParamBillMain oBill = new DAL.ClsGy_MaterialTechParamBillMain();
+                List<Model.ClsGy_MaterialTechParamBillMain> lsmain = new List<Model.ClsGy_MaterialTechParamBillMain>();
+                msg2 = msg2.Replace("\\", "");
+                msg2 = msg2.Replace("\n", "");  //\n
+                lsmain = oListModels.getObjectByJson_Gy_MaterialTechParamBillMain(msg2);
+                foreach (Model.ClsGy_MaterialTechParamBillMain oItem in lsmain)
+                {
+                    if (refSav == "Add")
+                    {
+                        //鍗曟嵁鍙锋槸鍚﹂噸澶�
+                        if (BillNew1.IsExistBillNo(ref ClsPub.sExeReturnInfo, oItem.HBillNo, BillStatus, BillOld1.omodel.HInterID))
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鍙烽噸澶嶏紒涓嶅厑璁镐繚瀛橈紒";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                    }
+                    if (refSav == "Update")
+                    {
+                        if (BillOld1.ShowBill(oItem.HInterID, ref s) == false)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "姝ゅ崟鎹湁璇紒";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                        //鍒ゆ柇鏄惁鍙紪杈�
+                        if (BillOld1.omodel.HChecker != "" && BillOld1.omodel.HChecker != null)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "姝ゅ崟鎹凡缁忚瀹℃牳锛屼笉鍏佽淇敼锛�";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                        if (BillOld1.omodel.HBillStatus > 1)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "姝ゅ崟鎹浜庝笉鍙紪杈戠姸鎬侊紝涓嶅厑璁镐慨鏀癸紒";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                        if (!DBUtility.Xt_BaseBillFun.Fun_AllowEditBill(BillOld1, ref s))
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = s + "锛屼笉鍏佽淇敼";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                    }
+                    UserName = oItem.HMaker;  //鍒跺崟浜�
+                    oItem.HBillType = "3334";
+                    oItem.HBillSubType = "3334";
+
+
+
+                    oItem.HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year);
+                    oItem.HPeriod = DBUtility.ClsPub.isLong(DateTime.Now.Month);
+                    oItem.HMakeDate = DBUtility.ClsPub.isStrNull(DateTime.Now.ToString("yyyy-MM-dd"));
+
+                    if (DBUtility.ClsPub.isStrNull(oItem.HDate) == "")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "淇濆瓨澶辫触锛佹病鏈夊崟鎹棩鏈燂紝鏃犳硶淇濆瓨锛�";
+                        objJsonResult.data = 1;
+                        return objJsonResult;
+                    }
+                    oBill.omodel = oItem;
+                }
+                // 琛ㄤ綋鏁版嵁
+                //鎸� },{鏉ユ媶鍒嗘暟缁� //鍘绘帀銆愬拰銆�
+                msg3 = msg3.Substring(1, msg3.Length - 2);
+                msg3 = msg3.Replace("\\", "");
+                msg3 = msg3.Replace("\n", "");  //\n
+                List<Model.ClsGy_MaterialTechParamBillSub> ls = new List<Model.ClsGy_MaterialTechParamBillSub>();
+                ls = oListModels.getObjectByJson_Gy_MaterialTechParamBillSub(msg3);
+                int i = 0;
+                foreach (Model.ClsGy_MaterialTechParamBillSub oItemSub in ls)
+                {
+                    i++;
+                    oItemSub.HEntryID = i;
+
+
+                    oItemSub.HEntryCloseDate = DBUtility.ClsPub.isDate(DateTime.Now);
+                    oItemSub.HCloseType = false;   //鍏抽棴绫诲瀷
+
+                    oBill.DetailColl.Add(oItemSub);
+
+                }
+                //淇濆瓨
+                //淇濆瓨瀹屾瘯鍚庡鐞�
+                bool bResult;
+                if (refSav == "Add")
+                {
+
+                    bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
+                }
+                else if (refSav == "Update")
+                {
+                    bResult = oBill.ModifyBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
+                }
+                else
+                {
+                    bResult = false;
+                }
+                if (bResult)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "淇濆瓨鎴愬姛锛�";
+                    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)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "淇濆瓨澶辫触锛�" + e.ToString();
+                objJsonResult.data = 1;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+       
+
+        #region 浜у搧宸ヨ壓鍙傛暟娓呭崟缂栬緫鏃惰幏鍙栬〃浣撴暟鎹�
+        [Route("Gy_MaterialTechParamBill/Gy_MaterialTechParamBillMainEditList")]
+        [HttpGet]
+        public object Gy_MaterialTechParamBillMainEditList(string HInterID, string User)
+        {
+            try
+            {
+                List<DataTable> tableList = new List<DataTable>();
+
+                //鏌ョ湅鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("Gy_MaterialTechParamBillMain_Edit", 1, false, User))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                if (HInterID == null || HInterID.Equals(""))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "HInterID涓嶈兘涓虹┖锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                
+                ds = oCN.RunProcReturn("exec h_p_Gy_MaterialTechParamBillMain_EditInit  " + HInterID, "h_p_Gy_MaterialTechParamBillMain_EditInit");
+                tableList.Add(ds.Tables[0]);
+                tableList.Add(ds.Tables[1]);
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = tableList;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 浜у搧宸ヨ壓鍙傛暟娓呭崟璁板綍鍒犻櫎鍔熻兘
+        [Route("Gy_MaterialTechParamBill/DeleteGy_MaterialTechParamBillMain")]
+        [HttpGet]
+        public object DeleteGy_MaterialTechParamBillMain(string HInterID, string user)
+        {
+            try
+            {
+                //鏌ョ湅鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("Gy_MaterialTechParamBillMain_Drop", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犲垹闄ゆ潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                if (HInterID == null || HInterID.Equals(""))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "HInterID涓嶈兘涓虹┖锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                oCN.BeginTran();
+
+                oCN.RunProc("delete from Gy_MaterialTechParamBillMain    where HInterID = " + HInterID);
+                oCN.RunProc("delete from Gy_MaterialTechParamBillSub   where HInterID = " + HInterID);
+
+                oCN.Commit();
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鍒犻櫎鎴愬姛锛�";
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 浜у搧宸ヨ壓鍙傛暟娓呭崟鍒楄〃 瀹℃牳/鍙嶅鏍稿姛鑳�
+        [Route("Gy_MaterialTechParamBill/CheckGy_MaterialTechParamBillMain")]
+        [HttpGet]
+        public object CheckGy_MaterialTechParamBillMain(string HInterID, int IsAudit, string user)
+        {
+            try
+            {
+                //瀹℃牳鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log_second("Gy_MaterialTechParamBillMain_Check", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "瀹℃牳澶辫触锛佹棤鏉冮檺锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                var ds = oCN.RunProcReturn("select * from Gy_MaterialTechParamBillMain  where HInterID=" + HInterID, "Gy_MaterialTechParamBillMain ");
+                if (ds.Tables[0].Rows.Count > 0)
+                {
+                    if (IsAudit == 0)  //瀹℃牳鍒ゆ柇
+                    {
+                        if (ds.Tables[0].Rows[0]["HChecker"].ToString() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸插鏍�!涓嶈兘鍐嶆瀹℃牳锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                    if (IsAudit == 1) //鍙嶅鏍稿垽鏂�
+                    {
+                        if (ds.Tables[0].Rows[0]["HChecker"].ToString() == "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鏈鏍�!涓嶉渶瑕佸弽瀹℃牳!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦�!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                oCN.BeginTran();
+
+                if (IsAudit == 0)  //瀹℃牳鍒ゆ柇
+                {
+                    oCN.RunProc("update Gy_MaterialTechParamBillMain  set HChecker='" + user + "',HCheckDate=getdate() where HInterID=" + HInterID);
+
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "瀹℃牳鎴愬姛";
+                    objJsonResult.data = null;
+                }
+                if (IsAudit == 1) //鍙嶅鏍稿垽鏂�
+                {
+                    oCN.RunProc("update Gy_MaterialTechParamBillMain  set HChecker='',HCheckDate=null where HInterID=" + HInterID);
+
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "鍙嶅鏍告垚鍔�";
+                    objJsonResult.data = null;
+                }
+                oCN.Commit();
+
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                oCN.RollBack();
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "瀹℃牳澶辫触鎴栬�呭弽瀹℃牳澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+
+        }
+        #endregion
+
+        #region 浜у搧宸ヨ壓鍙傛暟娓呭崟鍒楄〃 鍏抽棴/鍙嶅叧闂姛鑳�
+        [Route("Gy_MaterialTechParamBill/CloseGy_MaterialTechParamBillMain")]
+        [HttpGet]
+        public object CloseGy_MaterialTechParamBillMain(string HInterID, int IsAudit, string user)
+        {
+            try
+            {
+                //鍒ゆ柇鏄惁鏈夊叧闂潈闄�
+                if (!DBUtility.ClsPub.Security_Log("Gy_MaterialTechParamBillMain_Close", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳潈闄愬叧闂�!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
+                var ds = oCN.RunProcReturn("select * from Gy_MaterialTechParamBillMain  where HInterID=" + HInterID, "Gy_MaterialTechParamBillMain");
+                if (ds.Tables[0].Rows.Count > 0)
+                {
+                    if (IsAudit == 0)  //鍏抽棴鍒ゆ柇
+                    {
+                        if (ds.Tables[0].Rows[0]["HCloseMan"].ToString() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸插叧闂�!涓嶈兘鍐嶆鍏抽棴锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                    if (IsAudit == 1) //鍙嶅叧闂垽鏂�
+                    {
+                        if (ds.Tables[0].Rows[0]["HCloseMan"].ToString() == "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鏈叧闂�!涓嶉渶瑕佸弽鍏抽棴!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦�!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                oCN.BeginTran();
+
+                if (IsAudit == 0)  //鍏抽棴鍒ゆ柇
+                {
+                    oCN.RunProc("update Gy_MaterialTechParamBillMain  set HCloseMan='" + user + "',HCloseDate=getdate() where HInterID=" + HInterID);
+
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "鍏抽棴鎴愬姛";
+                    objJsonResult.data = null;
+                }
+                if (IsAudit == 1) //鍙嶅鏍稿垽鏂�
+                {
+                    oCN.RunProc("update Gy_MaterialTechParamBillMain  set HCloseMan='',HCloseDate=null where HInterID=" + HInterID);
+
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "鍙嶅叧闂垚鍔�";
+                    objJsonResult.data = null;
+                }
+                oCN.Commit();
+
+                return objJsonResult;
+
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鎵ц澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+    }
+}
\ No newline at end of file
diff --git a/WebAPI/Controllers/LMESController.cs b/WebAPI/Controllers/LMESController.cs
index a0f8cec..2006a1a 100644
--- a/WebAPI/Controllers/LMESController.cs
+++ b/WebAPI/Controllers/LMESController.cs
@@ -104,6 +104,8 @@
                 }
 
                 SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+
+
                 ds = oCN.RunProcReturn("select * from h_v_Sc_ProcessExchangeBillQuery where 1 = 1 " + sWhere + " order by hmainid desc ", "h_v_Sc_ProcessExchangeBillQuery");
 
 
diff --git a/WebAPI/Controllers/MJGL/Sc_MouldinventoryBillController.cs b/WebAPI/Controllers/MJGL/Sc_MouldinventoryBillController.cs
new file mode 100644
index 0000000..1cca0a0
--- /dev/null
+++ b/WebAPI/Controllers/MJGL/Sc_MouldinventoryBillController.cs
@@ -0,0 +1,536 @@
+锘縰sing DBUtility;
+using Model;
+using Newtonsoft.Json;
+using Newtonsoft.Json.Linq;
+using System;
+using System.Collections.Generic;
+using System.Data;
+using System.Linq;
+using System.Web;
+using System.Web.Http;
+using System.Windows.Forms;
+using WebAPI.Models;
+
+namespace WebAPI.Controllers.MJGL
+{
+    public class Sc_MouldinventoryBillController : ApiController
+    {
+
+
+        //浜у搧鍣ㄥ叿娓呭崟   Sc_MouldinventoryBill   Gy_MaterialMouldBillMain
+
+
+        private json objJsonResult = new json();
+        public DataSet ds = new DataSet();
+        public DBUtility.ClsPub.Enum_BillStatus BillStatus;//鍗曟嵁鐘舵�侊紙鏂板锛屼慨鏀癸紝娴忚锛屾洿鏂板崟浠凤紝鍙樻洿锛�
+        SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+        public DAL.ClsGy_MaterialMouldBillMain BillNew1 = new DAL.ClsGy_MaterialMouldBillMain();   //浜у搧鍣ㄥ叿娓呭崟瀵瑰簲鍗曟嵁绫�
+        public DAL.ClsGy_MaterialMouldBillMain BillOld1 = new DAL.ClsGy_MaterialMouldBillMain();
+
+        #region 浜у搧鍣ㄥ叿娓呭崟鍗曞垪琛�
+        [Route("Sc_MouldDotCheckRuleBill/Gy_MaterialMouldBillMainList")]
+        [HttpGet]
+        public object Sc_MouldDotCheckRuleList(string sWhere, string user)
+        {
+            try
+            {
+                List<object> columnNameList = new List<object>();
+                //缂栬緫鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("Gy_MaterialMouldBillMain_Query", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                if (sWhere == null || sWhere.Equals(""))
+                {
+                    ds = oCN.RunProcReturn("select * from h_v_Gy_MaterialMouldBillMainList order by 鍗曟嵁鍙� desc", "h_v_Gy_MaterialMouldBillMainList");
+                }
+                else
+                {
+                    string sql1 = "select * from h_v_Gy_MaterialMouldBillMainList where 1 = 1 ";
+                    string sql = sql1 + sWhere + " order by 鍗曟嵁鍙� desc";
+                    ds = oCN.RunProcReturn(sql, "h_v_Gy_MaterialMouldBillMainList");
+                }
+                //娣诲姞鍒楀悕
+                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
+
+        #region 浜у搧鍣ㄥ叿娓呭崟 淇濆瓨/缂栬緫
+        /// <summary>
+        /// 淇濆瓨妯″叿缁翠慨鍗�
+        /// </summary>
+        /// <param name="msg"></param>
+        /// <returns></returns>
+        [Route("Sc_MouldinventoryBill/SaveGy_MaterialMouldBillMain")]
+        [HttpPost]
+        public object SaveGy_MaterialMouldBillMain([FromBody] JObject sMainSub)
+        {
+            var _value = sMainSub["sMainSub"].ToString();
+            string msg1 = _value.ToString();
+            string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+            string msg2 = sArray[0].ToString();
+            string msg3 = sArray[1].ToString(); //瀛愯〃
+            string refSav = sArray[2].ToString();//鎿嶄綔鏂瑰紡鏁版嵁绫诲瀷 1娣诲姞 3淇敼 2 澶嶅埗
+            string user = sArray[3].ToString();//鐢ㄦ埛鍚�
+
+            string UserName = "";
+            string s = "";
+            ListModels oListModels = new ListModels();
+            try
+            {
+                //淇濆瓨鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log_second("Gy_MaterialMouldBillMain_Edit", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犱繚瀛樻潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                DAL.ClsGy_MaterialMouldBillMain oBill = new DAL.ClsGy_MaterialMouldBillMain();
+                List<Model.ClsGy_MaterialMouldBillMain> lsmain = new List<Model.ClsGy_MaterialMouldBillMain>();
+                msg2 = msg2.Replace("\\", "");
+                msg2 = msg2.Replace("\n", "");  //\n
+                lsmain = oListModels.getObjectByJson_Gy_MaterialMouldBillMain(msg2);
+                foreach (Model.ClsGy_MaterialMouldBillMain oItem in lsmain)
+                {
+                    if (refSav == "Add")
+                    {
+                        //鍗曟嵁鍙锋槸鍚﹂噸澶�
+                        if (BillNew1.IsExistBillNo(ref ClsPub.sExeReturnInfo, oItem.HBillNo, BillStatus, BillOld1.omodel.HInterID))
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鍙烽噸澶嶏紒涓嶅厑璁镐繚瀛橈紒";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                    }
+                    if (refSav == "Update")
+                    {
+                        if (BillOld1.ShowBill(oItem.HInterID, ref s) == false)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "姝ゅ崟鎹湁璇紒";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                        //鍒ゆ柇鏄惁鍙紪杈�
+                        if (BillOld1.omodel.HChecker != "" && BillOld1.omodel.HChecker != null)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "姝ゅ崟鎹凡缁忚瀹℃牳锛屼笉鍏佽淇敼锛�";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                        if (BillOld1.omodel.HBillStatus > 1)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "姝ゅ崟鎹浜庝笉鍙紪杈戠姸鎬侊紝涓嶅厑璁镐慨鏀癸紒";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                        if (!DBUtility.Xt_BaseBillFun.Fun_AllowEditBill(BillOld1, ref s))
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = s + "锛屼笉鍏佽淇敼";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                    }
+                    UserName = oItem.HMaker;  //鍒跺崟浜�
+                    oItem.HBillType = "3333";
+                    oItem.HBillSubType = "3333";
+
+
+
+                    oItem.HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year);
+                    oItem.HPeriod = DBUtility.ClsPub.isLong(DateTime.Now.Month);
+                    oItem.HMakeDate = DBUtility.ClsPub.isStrNull(DateTime.Now.ToString("yyyy-MM-dd"));
+
+                    if (DBUtility.ClsPub.isStrNull(oItem.HDate) == "")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "淇濆瓨澶辫触锛佹病鏈夊崟鎹棩鏈燂紝鏃犳硶淇濆瓨锛�";
+                        objJsonResult.data = 1;
+                        return objJsonResult;
+                    }
+                    oBill.omodel = oItem;
+                }
+                // 琛ㄤ綋鏁版嵁
+                //鎸� },{鏉ユ媶鍒嗘暟缁� //鍘绘帀銆愬拰銆�
+                msg3 = msg3.Substring(1, msg3.Length - 2);
+                msg3 = msg3.Replace("\\", "");
+                msg3 = msg3.Replace("\n", "");  //\n
+                List<Model.ClsGy_MaterialMouldBillSub> ls = new List<Model.ClsGy_MaterialMouldBillSub>();
+                ls = oListModels.getObjectByJson_Gy_MaterialMouldBillSub(msg3);
+                int i = 0;
+                foreach (Model.ClsGy_MaterialMouldBillSub oItemSub in ls)
+                {
+                    i++;
+                    oItemSub.HEntryID = i;
+
+
+                    oItemSub.HEntryCloseDate = DBUtility.ClsPub.isDate(DateTime.Now);
+                    oItemSub.HCloseType = false;   //鍏抽棴绫诲瀷
+
+                    oBill.DetailColl.Add(oItemSub);
+
+                }
+                //淇濆瓨
+                //淇濆瓨瀹屾瘯鍚庡鐞�
+                bool bResult;
+                if (refSav == "Add")
+                {
+
+                    bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
+                }
+                else if (refSav == "Update")
+                {
+                    bResult = oBill.ModifyBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
+                }
+                else
+                {
+                    bResult = false;
+                }
+                if (bResult)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "淇濆瓨鎴愬姛锛�";
+                    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)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "淇濆瓨澶辫触锛�" + e.ToString();
+                objJsonResult.data = 1;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+       
+
+        #region 浜у搧鍣ㄥ叿娓呭崟缂栬緫鏃惰幏鍙栬〃浣撴暟鎹�
+        [Route("Sc_MouldinventoryBill/Gy_MaterialMouldBillMainEditList")]
+        [HttpGet]
+        public object Gy_MaterialMouldBillMainEditList(string HInterID, string User)
+        {
+            try
+            {
+                List<DataTable> tableList = new List<DataTable>();
+
+                //鏌ョ湅鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("Gy_MaterialMouldBillMain_Edit", 1, false, User))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                if (HInterID == null || HInterID.Equals(""))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "HInterID涓嶈兘涓虹┖锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                
+                ds = oCN.RunProcReturn("exec h_p_Gy_MaterialMouldBillMain_EditInit  " + HInterID, "h_p_Gy_MaterialMouldBillMain_EditInit");
+                tableList.Add(ds.Tables[0]);
+                tableList.Add(ds.Tables[1]);
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = tableList;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 浜у搧鍣ㄥ叿娓呭崟璁板綍鍒犻櫎鍔熻兘
+        [Route("Sc_MouldinventoryBill/DeleteGy_MaterialMouldBillMain")]
+        [HttpGet]
+        public object DeleteGy_MaterialMouldBillMain(string HInterID, string user)
+        {
+            try
+            {
+                //鏌ョ湅鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("Gy_MaterialMouldBillMain_Drop", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犲垹闄ゆ潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                if (HInterID == null || HInterID.Equals(""))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "HInterID涓嶈兘涓虹┖锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                oCN.BeginTran();
+
+                oCN.RunProc("delete from Gy_MaterialMouldBillMain   where HInterID = " + HInterID);
+                oCN.RunProc("delete from Gy_MaterialMouldBillSub   where HInterID = " + HInterID);
+
+                oCN.Commit();
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鍒犻櫎鎴愬姛锛�";
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 浜у搧鍣ㄥ叿娓呭崟鍒楄〃 瀹℃牳/鍙嶅鏍稿姛鑳�
+        [Route("Sc_MouldinventoryBill/CheckGy_MaterialMouldBillMain")]
+        [HttpGet]
+        public object CheckGy_MaterialMouldBillMain(string HInterID, int IsAudit, string user)
+        {
+            try
+            {
+                //瀹℃牳鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log_second("Gy_MaterialMouldBillMain_Check", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "瀹℃牳澶辫触锛佹棤鏉冮檺锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                var ds = oCN.RunProcReturn("select * from Gy_MaterialMouldBillMain  where HInterID=" + HInterID, "Gy_MaterialMouldBillMain ");
+                if (ds.Tables[0].Rows.Count > 0)
+                {
+                    if (IsAudit == 0)  //瀹℃牳鍒ゆ柇
+                    {
+                        if (ds.Tables[0].Rows[0]["HChecker"].ToString() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸插鏍�!涓嶈兘鍐嶆瀹℃牳锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                    if (IsAudit == 1) //鍙嶅鏍稿垽鏂�
+                    {
+                        if (ds.Tables[0].Rows[0]["HChecker"].ToString() == "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鏈鏍�!涓嶉渶瑕佸弽瀹℃牳!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦�!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                oCN.BeginTran();
+
+                if (IsAudit == 0)  //瀹℃牳鍒ゆ柇
+                {
+                    oCN.RunProc("update Gy_MaterialMouldBillMain  set HChecker='" + user + "',HCheckDate=getdate() where HInterID=" + HInterID);
+
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "瀹℃牳鎴愬姛";
+                    objJsonResult.data = null;
+                }
+                if (IsAudit == 1) //鍙嶅鏍稿垽鏂�
+                {
+                    oCN.RunProc("update Gy_MaterialMouldBillMain  set HChecker='',HCheckDate=null where HInterID=" + HInterID);
+
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "鍙嶅鏍告垚鍔�";
+                    objJsonResult.data = null;
+                }
+                oCN.Commit();
+
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                oCN.RollBack();
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "瀹℃牳澶辫触鎴栬�呭弽瀹℃牳澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+
+        }
+        #endregion
+
+        #region 浜у搧鍣ㄥ叿娓呭崟鍒楄〃 鍏抽棴/鍙嶅叧闂姛鑳�
+        [Route("Sc_MouldinventoryBill/CloseGy_MaterialMouldBillMain")]
+        [HttpGet]
+        public object CloseGy_MaterialMouldBillMain(string HInterID, int IsAudit, string user)
+        {
+            try
+            {
+                //鍒ゆ柇鏄惁鏈夊叧闂潈闄�
+                if (!DBUtility.ClsPub.Security_Log("Gy_MaterialMouldBillMain_Close", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳潈闄愬叧闂�!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
+                var ds = oCN.RunProcReturn("select * from Gy_MaterialMouldBillMain  where HInterID=" + HInterID, "Gy_MaterialMouldBillMain");
+                if (ds.Tables[0].Rows.Count > 0)
+                {
+                    if (IsAudit == 0)  //鍏抽棴鍒ゆ柇
+                    {
+                        if (ds.Tables[0].Rows[0]["HCloseMan"].ToString() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸插叧闂�!涓嶈兘鍐嶆鍏抽棴锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                    if (IsAudit == 1) //鍙嶅叧闂垽鏂�
+                    {
+                        if (ds.Tables[0].Rows[0]["HCloseMan"].ToString() == "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鏈叧闂�!涓嶉渶瑕佸弽鍏抽棴!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦�!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                oCN.BeginTran();
+
+                if (IsAudit == 0)  //鍏抽棴鍒ゆ柇
+                {
+                    oCN.RunProc("update Gy_MaterialMouldBillMain  set HCloseMan='" + user + "',HCloseDate=getdate() where HInterID=" + HInterID);
+
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "鍏抽棴鎴愬姛";
+                    objJsonResult.data = null;
+                }
+                if (IsAudit == 1) //鍙嶅鏍稿垽鏂�
+                {
+                    oCN.RunProc("update Gy_MaterialMouldBillMain  set HCloseMan='',HCloseDate=null where HInterID=" + HInterID);
+
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "鍙嶅叧闂垚鍔�";
+                    objJsonResult.data = null;
+                }
+                oCN.Commit();
+
+                return objJsonResult;
+
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鎵ц澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+    }
+}
\ No newline at end of file
diff --git a/WebAPI/Controllers/SCGL/Sc_ICMOChangeBillController.cs b/WebAPI/Controllers/SCGL/Sc_ICMOChangeBillController.cs
index e78e6ca..44988ea 100644
--- a/WebAPI/Controllers/SCGL/Sc_ICMOChangeBillController.cs
+++ b/WebAPI/Controllers/SCGL/Sc_ICMOChangeBillController.cs
@@ -488,8 +488,10 @@
                     }
 
                     //妫�鏌ユ簮鍗曟槸鍚﹀瓨鍦�
-                    string sql = "select * from Sc_ICMOBillSub where HInterID = " + oBill.omodel.HMainSourceInterID + " and HEntryID =" + oBill.omodel.HMainSourceEntryID;
-                    ds = oCN.RunProcReturn(sql, "Sc_ICMOBillSub");
+                    string sql = "select * from Sc_ICMOBillMain as a " +
+                        " inner join Sc_ICMOBillSub as b on a.HInterID = b.HInterID " +
+                        " where b.HInterID = " + oBill.omodel.HMainSourceInterID + " and b.HEntryID =" + oBill.omodel.HMainSourceEntryID;
+                    ds = oCN.RunProcReturn(sql, "Sc_ICMOBill");
                     if(ds==null || ds.Tables[0].Rows.Count == 0)
                     {
                         objJsonResult.code = "0";
diff --git a/WebAPI/Controllers/WebAPIController.cs b/WebAPI/Controllers/WebAPIController.cs
index ca443ac..abc503b 100644
--- a/WebAPI/Controllers/WebAPIController.cs
+++ b/WebAPI/Controllers/WebAPIController.cs
@@ -7859,6 +7859,287 @@
         }
         #endregion
 
+        #region  椤圭洰璐圭敤  璁剧疆鍒楄〃/淇濆瓨/缂栬緫/鍒犻櫎鏂规硶
+        /// <summary>
+        ///  椤圭洰璐圭敤 淇濆瓨
+        /// </summary>
+        /// <param name="msg"></param>
+        /// <returns></returns>
+        [Route("SaveGy_ProjectMoneyList")]
+        [HttpPost]
+        public object SaveGy_ProjectMoneyList([FromBody] JObject msg)
+        {
+            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 msg2 = sArray[1].ToString();
+
+            //鏌ョ湅鏉冮檺
+            if (!DBUtility.ClsPub.Security_Log("Gy_ProjectMoney_Edit", 1, false, msg2))
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鏃犱繚瀛樻潈闄愶紒";
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+
+            Int64 HItemID = 0;
+            SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+            //鑾峰彇鏈�澶D鍊艰祴鍊�
+            DataSet Maxds = oCN.RunProcReturn("select isNull(MAX(HItemID),0) HItemID from Gy_ProjectMoney ", "Gy_ProjectMoney");
+            if (Maxds != null || Maxds.Tables[0].Rows.Count > 0)
+            {
+                //HItemID= Maxds.Tables[0].Rows[0]["HItemID"]
+                var maxid = Convert.ToInt32(Maxds.Tables[0].Rows[0]["HItemID"]);
+                maxid += 1;
+                HItemID = maxid;
+            }
+            ListModels oListModels = new ListModels();
+            try
+            {
+                
+                WebAPI.DLL.ClsGy_ProjectMoney_Ctl oBill = new WebAPI.DLL.ClsGy_ProjectMoney_Ctl();
+                List<Model.ClsGy_ProjectMoney_Model> lsmain = new List<Model.ClsGy_ProjectMoney_Model>();
+                msg1 = msg1.Replace("\\", "");
+                msg1 = msg1.Replace("\n", "");
+                lsmain = oListModels.getObjectByJson_Gy_ProjectMoney(msg1);
+                foreach (Model.ClsGy_ProjectMoney_Model oItem in lsmain)
+                {
+                    if (oItem.HNumber.Trim() == "")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "淇濆瓨澶辫触锛佷唬鐮佷笉鑳戒负绌猴紒";
+                        objJsonResult.data = 1;
+                        return objJsonResult;
+                    }
+                    if (oItem.HName.Trim() == "")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "淇濆瓨澶辫触锛佸悕绉颁笉鑳戒负绌猴紒";
+                        objJsonResult.data = 1;
+                        return objJsonResult;
+                    }
+                    if (!DBUtility.ClsPub.AllowNumber(oItem.HNumber.Trim()))
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "淇濆瓨澶辫触锛佷唬鐮佷腑涓嶈兘鍑虹幇杩炵画鈥�.鈥欏苟涓旈浣嶆湯浣嶄笉鑳戒负鈥�.鈥欙紒";
+                        objJsonResult.data = 1;
+                        return objJsonResult;
+                    }
+                    //鏌ヨ鏁版嵁涓槸鍚﹀瓨鍦ㄩ噸澶嶄唬鐮�
+
+                    ds = oCN.RunProcReturn("select * from  Gy_ProjectMoney where HStopflag=0 and HNumber='" + oItem.HNumber.Trim() + "'", "Gy_ProjectMoney");
+                    if (oItem.HNumber.Trim() == "")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "淇濆瓨澶辫触锛佷唬鐮佷负绌猴紒";
+                        objJsonResult.data = 1;
+                        return objJsonResult;
+                    }
+                    //鏂板鏃跺垽鏂�
+                    if (oItem.HItemID == 0)
+                    {
+                        if (ds == null || ds.Tables[0].Rows.Count == 0)
+                        {
+
+                        }
+                        else
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "淇濆瓨澶辫触锛佷唬鐮侀噸澶嶏紒";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                        //妫�鏌ョ埗绾ф槸鍚﹀瓨鍦�
+                        string sParent;
+                        sParent = DBUtility.ClsPub.GetParentCode(oItem.HNumber.Trim());
+                        if (sParent.Trim() == "")
+                        {
+                            oBill.oModel.HParentID = 0;
+                        }
+                        else
+                        {
+                            if (oBill.HavParentCode(sParent.Trim(), HItemID))
+                            {
+                                oBill.oModel.HParentID = oBill.oModel.HItemID;
+                            }
+                            else
+                            {
+                                objJsonResult.code = "0";
+                                objJsonResult.count = 0;
+                                objJsonResult.Message = "淇濆瓨澶辫触锛佷笂绾т唬鐮佷笉瀛樺湪鎴栬绂佺敤锛�";
+                                objJsonResult.data = 1;
+                                return objJsonResult;
+                            }
+                        }
+                    }
+                    else//缂栬緫鏃跺垽鏂�
+                    {
+                        //妫�鏌ョ埗绾ф槸鍚﹀瓨鍦�
+                        string sParent;
+                        sParent = DBUtility.ClsPub.GetParentCode(oItem.HNumber.Trim());
+                        if (sParent.Trim() == "")
+                        {
+                            oBill.oModel.HParentID = 0;
+                        }
+                        else
+                        {
+                            if (oBill.HavParentCode(sParent.Trim(), oItem.HItemID))
+                            {
+                                oBill.oModel.HParentID = oBill.oModel.HItemID;
+                            }
+                            else
+                            {
+                                objJsonResult.code = "0";
+                                objJsonResult.count = 0;
+                                objJsonResult.Message = "淇濆瓨澶辫触锛佷笂绾т唬鐮佷笉瀛樺湪鎴栬绂佺敤锛�";
+                                objJsonResult.data = 1;
+                                return objJsonResult;
+                            }
+                        }
+                    }
+                    //寰楀埌鐭唬鐮�
+                    string sShortNumber;
+                    sShortNumber = DBUtility.ClsPub.GetShortNumber(oItem.HNumber.Trim());
+                    if (sShortNumber.Trim() == "")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "淇濆瓨澶辫触锛佺煭浠g爜涓虹┖锛�";
+                        objJsonResult.data = 1;
+                        return objJsonResult;
+                    }
+                    oItem.HShortNumber = sShortNumber;//鐭唬鐮�
+                    oItem.HEndFlag = true;//鏈骇鏍囧織
+                    oItem.HLevel = DBUtility.ClsPub.GetLevel(oItem.HNumber.Trim()); //绛夌骇
+                    oItem.HMakeEmp = msg2; //鍒涘缓浜�
+
+                    oBill.oModel = oItem;
+                }
+
+                //淇濆瓨
+                //淇濆瓨瀹屾瘯鍚庡鐞�
+                bool bResult;
+                if (oBill.oModel.HItemID == 0)
+                {
+                    // bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
+                    bResult = oBill.AddNew();
+                }
+                else
+                {
+                    bResult = oBill.ModifyByID(oBill.oModel.HItemID);
+                }
+                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)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "淇濆瓨澶辫触锛�" + e.ToString();
+                objJsonResult.data = 1;
+                return objJsonResult;
+            }
+        }
+
+        /// <summary>
+        /// 椤圭洰璐圭敤 鑾峰彇淇℃伅
+        /// </summary>
+        /// <returns></returns>
+        [Route("GetGy_ProjectMoneyDetail")]
+        [HttpGet]
+        public ApiResult<DataSet> GetGy_ProjectMoneyDetail(string HID)
+        {
+            var model = LuBaoSevice.GetGy_ProjectMoneyDetail(HID);
+            return model;
+        }
+
+        /// <summary>
+        /// 椤圭洰璐圭敤 鍒犻櫎鍔熻兘
+        /// </summary>
+        /// <returns></returns>
+        [Route("DeltetGy_ProjectMoney")]
+        [HttpGet]
+        public object DeltetGy_ProjectMoney(string HItemID, string user)
+        {
+            DataSet ds;
+            //string ModRightNameCheck = "Sc_ProcessReport_check";
+            try
+            {
+                //鍒犻櫎鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("Gy_ProjectMoney_Drop", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犲垹闄ゆ潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+                if (string.IsNullOrWhiteSpace(HItemID))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "HItemID涓虹┖锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                oCN.BeginTran();//寮�濮嬩簨鍔�
+                ds = oCN.RunProcReturn("select * from Gy_ProjectMoney where HItemID=" + HItemID, "Gy_ProjectMoney");
+                if (ds == null || ds.Tables[0].Rows.Count == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "娌℃湁鏁版嵁锛屾棤娉曞垹闄わ紒";
+                    objJsonResult.data = null;
+                    return objJsonResult; ;
+                }
+
+
+                oCN.RunProc("delete Gy_ProjectMoney where HItemID=" + HItemID);
+                oCN.Commit();//鎻愪氦浜嬪姟
+                objJsonResult.code = "0";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鏁版嵁鍒犻櫎鎴愬姛锛�";
+                objJsonResult.data = null;
+                return objJsonResult; ;
+
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鍒犻櫎澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
 
         /// <summary>
         /// 鐢ㄥ叧鑱斿伐搴忚幏鍙栦俊鎭�
@@ -8670,11 +8951,11 @@
                 SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                 if (sWhere == null || sWhere.Equals(""))
                 {
-                    ds = oCN.RunProcReturn("Select HInterID,HEquipFileNumber,HName  from Gy_EquipFileBillMain where 0=0 Order by HInterID ", "Gy_EquipFileBillMain");
+                    ds = oCN.RunProcReturn("Select HInterID,HEquipFileNumber,HName,HModel2  from Gy_EquipFileBillMain where 0=0 Order by HInterID ", "Gy_EquipFileBillMain");
                 }
                 else
                 {
-                    string sql1 = "Select HInterID,HEquipFileNumber,HName  from Gy_EquipFileBillMain where 0=0  ";
+                    string sql1 = "Select HInterID,HEquipFileNumber,HName,HModel2  from Gy_EquipFileBillMain where 0=0  ";
                     string sql = sql1 + sWhere;
                     ds = oCN.RunProcReturn(sql, "Gy_EquipFileBillMain");
                 }
@@ -10050,6 +10331,37 @@
         }
 
 
+        /// <summary>
+        /// 鑾峰彇閫夊崟鍙风殑婧愬崟绫诲瀷
+        /// </summary>
+        /// <returns></returns>
+        [Route("Web/GetHSourceBillName")]
+        [HttpGet]
+        public object GetHSourceBillName(string HBillType)
+        {
+            try
+            {
+                ClsCN oCn = new ClsCN();
+                DataSet oDs = new DataSet();
+                //==========
+                oDs = oCn.RunProcReturn("select * from  xt_BillType where HNumber='" + HBillType + "'", "xt_BillType");
+                objjson.code = "1";
+                objjson.count = 1;
+                objjson.Message = "鑾峰彇鎴愬姛锛�";
+                objjson.data = oDs.Tables[0];
+                return objjson; ;
+            }
+            catch (Exception e)
+            {
+
+                objjson.code = "0";
+                objjson.count = 0;
+                objjson.Message = "鑾峰彇澶辫触锛佸紓甯�" + e.ToString();
+                objjson.data = null;
+                return objjson; ;
+            }
+        }
+
         #region [浠庢暟鎹簱鍔犺浇鑿滃崟]
         public class MenuLoad
         {
diff --git a/WebAPI/Controllers/XSGL/Kf_SellOutBillController.cs b/WebAPI/Controllers/XSGL/Kf_SellOutBillController.cs
index 58ee9ae..33bce9c 100644
--- a/WebAPI/Controllers/XSGL/Kf_SellOutBillController.cs
+++ b/WebAPI/Controllers/XSGL/Kf_SellOutBillController.cs
@@ -1029,5 +1029,59 @@
             }
         }
         #endregion
+
+        #region 閿�鍞嚭搴撳崟 妫�鏌ュ崟鎹槸鍚﹀瓨鍦�
+        /// <summary>
+        /// </summary>
+        /// <param name="HInterID">鍗曟嵁ID</param>
+        /// <returns></returns>
+        [Route("Kf_SellOutBill/CheckSellOutBill_IsExist")]
+        [HttpGet]
+        public object CheckSellOutBill_IsExist(int HInterID)
+        {
+            try
+            {
+                //HInterID鏁版嵁鍒ゆ柇
+                if (HInterID <= 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "HInterID灏忎簬0锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                Int64 lngBillKey = 0;
+                lngBillKey = DBUtility.ClsPub.isLong(HInterID);                                         //瀵笻InterID杩涜绫诲瀷鐨勮浆鎹�
+                DAL.ClsKf_SellOutBill oBill = new DAL.ClsKf_SellOutBill();                              //瀹炰緥鍖栧崟鎹搷浣滅被锛岀敤浜庤繘琛岀浉鍏虫搷浣�
+
+                //閽堝闇�瑕佽繘琛岀殑鎿嶄綔锛屾楠屽綋鍓嶅崟鎹殑鐘舵�佹槸鍚︽敮鎸侀渶瑕佽繘琛岀殑鎿嶄綔
+                if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo))                    //鏍规嵁HInterID鑾峰彇璇ュ崟鎹殑鏁版嵁
+                {
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "鍗曟嵁瀛樺湪";
+                    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.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
     }
 }
\ No newline at end of file
diff --git a/WebAPI/Controllers/XSGL/Xs_CusBalanceReportController.cs b/WebAPI/Controllers/XSGL/Xs_CusBalanceReportController.cs
new file mode 100644
index 0000000..5ffec76
--- /dev/null
+++ b/WebAPI/Controllers/XSGL/Xs_CusBalanceReportController.cs
@@ -0,0 +1,149 @@
+锘縰sing Newtonsoft.Json;
+using Newtonsoft.Json.Linq;
+using Pub_Class;
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.Data;
+using System.Data.SqlClient;
+using System.Web.Http;
+using WebAPI.Models;
+using System.IO;
+using System.Web;
+using WebAPI.Controllers.SCGL.鏃ヨ鍒掔鐞�;
+
+namespace WebAPI.Controllers
+{
+    //瀹㈡埛浣欓鏌ヨ鎶ヨ〃Controller
+    public class Xs_CusBalanceReportController : ApiController
+    {
+        //鑾峰彇绯荤粺鍙傛暟
+        Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter();
+        public DBUtility.ClsPub.Enum_BillStatus BillStatus;
+
+        private json objJsonResult = new json();
+        SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+        DataSet ds;
+
+        #region 瀹㈡埛浣欓鏌ヨ鎶ヨ〃 鏌ヨ
+        /// <summary>
+        ///鍙傛暟锛歴tring sql銆�
+        ///杩斿洖鍊硷細object銆�
+        /// </summary>
+        [Route("Xs_CusBalanceReport/list")]
+        [HttpGet]
+        public object getXs_CusBalanceReport(string sWhere, string user, string userid)
+        {
+            try
+            {
+                List<object> columnNameList = new List<object>();
+                ////鏌ョ湅鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("Xs_CusBalanceReport_Query", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
+                //鏌ヨ
+                if (sWhere == null || sWhere.Equals(""))
+                {
+                    string sql = "exec h_p_Xs_CusBalanceReport_Query '','" + userid + "'";
+                    ds = oCN.RunProcReturn(sql, "h_p_Xs_CusBalanceReport_Query");
+                }
+                else
+                {
+                    string sql = "exec h_p_Xs_CusBalanceReport_Query '" + sWhere + "','" + userid + "'";
+                    ds = oCN.RunProcReturn(sql, "h_p_Xs_CusBalanceReport_Query");
+                }
+
+                //娣诲姞鍒楀悕
+                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 瀹㈡埛浣欓鏌ヨ鎶ヨ〃 鍗犵敤棰濆害鏄庣粏
+        /// <summary>
+        ///鍙傛暟锛歴tring sql銆�
+        ///杩斿洖鍊硷細object銆�
+        /// </summary>
+        [Route("Xs_CusBalanceReport/getHIsUsingBalanceEntry")]
+        [HttpGet]
+        public object getHIsUsingBalanceEntry(string sWhere,Int64 HCusID, string user, string userid)
+        {
+            try
+            {
+                List<object> columnNameList = new List<object>();
+                //////鏌ョ湅鏉冮檺
+                //if (!DBUtility.ClsPub.Security_Log("Xs_CusBalanceReport_Query", 1, false, user))
+                //{
+                //    objJsonResult.code = "0";
+                //    objJsonResult.count = 0;
+                //    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                //    objJsonResult.data = null;
+                //    return objJsonResult;
+                //}
+
+                //鏌ヨ
+                if (sWhere == null || sWhere.Equals(""))
+                {
+                    string sql = "exec h_p_Xs_CusBalanceReport_HIsUsingBalanceEntry_Query '','" + userid + "'," + HCusID;
+                    ds = oCN.RunProcReturn(sql, "h_p_Xs_CusBalanceReport_Query");
+                }
+                else
+                {
+                    string sql = "exec h_p_Xs_CusBalanceReport_HIsUsingBalanceEntry_Query '" + sWhere +"','" + userid + "'," + HCusID;
+                    ds = oCN.RunProcReturn(sql, "h_p_Xs_CusBalanceReport_Query");
+                }
+
+                //娣诲姞鍒楀悕
+                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
+    }
+}
\ No newline at end of file
diff --git a/WebAPI/Controllers/XSGL/Xs_ReceivableBillController.cs b/WebAPI/Controllers/XSGL/Xs_ReceivableBillController.cs
index 03f0323..02e88d1 100644
--- a/WebAPI/Controllers/XSGL/Xs_ReceivableBillController.cs
+++ b/WebAPI/Controllers/XSGL/Xs_ReceivableBillController.cs
@@ -38,14 +38,14 @@
             {
                 List<object> columnNameList = new List<object>();
                 //鏌ョ湅鏉冮檺
-                //if (!DBUtility.ClsPub.Security_Log("Xs_ReceivableBill_Query", 1, false, user))
-                //{
-                //    objJsonResult.code = "0";
-                //    objJsonResult.count = 0;
-                //    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
-                //    objJsonResult.data = null;
-                //    return objJsonResult;
-                //}
+                if (!DBUtility.ClsPub.Security_Log("Xs_ReceivableBill_Query", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
 
                 if (sWhere == null || sWhere.Equals(""))
                 {
@@ -105,14 +105,14 @@
             try
             {
                 //缂栬緫鏉冮檺
-                //if (!DBUtility.ClsPub.Security_Log_second("Xs_ReceivableBill_Edit", 1, false, msg4))
-                //{
-                //    objJsonResult.code = "0";
-                //    objJsonResult.count = 0;
-                //    objJsonResult.Message = "鏃犱繚瀛樻潈闄愶紒";
-                //    objJsonResult.data = null;
-                //    return objJsonResult;
-                //}
+                if (!DBUtility.ClsPub.Security_Log_second("Xs_ReceivableBill_Edit", 1, false, msg4))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犱繚瀛樻潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
 
                 DAL.ClsXs_ReceivableBill oBill = new DAL.ClsXs_ReceivableBill();
                 List<Model.ClsXs_ReceivableBillMain> lsmain = new List<Model.ClsXs_ReceivableBillMain>();
@@ -301,14 +301,14 @@
                 string s = "";
 
                 //鏌ョ湅鏉冮檺
-                //if (!DBUtility.ClsPub.Security_Log("Xs_ReceivableBill_Drop", 1, false, user))
-                //{
-                //    objJsonResult.code = "0";
-                //    objJsonResult.count = 0;
-                //    objJsonResult.Message = "鏃犲垹闄ゆ潈闄愶紒";
-                //    objJsonResult.data = null;
-                //    return objJsonResult;
-                //}
+                if (!DBUtility.ClsPub.Security_Log("Xs_ReceivableBill_Drop", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犲垹闄ゆ潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
 
                 if (HInterID == null || HInterID.Equals(""))
                 {
@@ -427,14 +427,14 @@
             try
             {
                 //瀹℃牳鏉冮檺
-                //if (!DBUtility.ClsPub.Security_Log_second(ModRightNameCheck, 1, false, CurUserName))
-                //{
-                //    objJsonResult.code = "0";
-                //    objJsonResult.count = 0;
-                //    objJsonResult.Message = "瀹℃牳澶辫触锛佹棤鏉冮檺锛�";
-                //    objJsonResult.data = null;
-                //    return objJsonResult;
-                //}
+                if (!DBUtility.ClsPub.Security_Log_second(ModRightNameCheck, 1, false, CurUserName))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "瀹℃牳澶辫触锛佹棤鏉冮檺锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
                 //HInterID鏁版嵁鍒ゆ柇
                 if (HInterID <= 0)
                 {
@@ -631,14 +631,14 @@
             try
             {
                 //妫�鏌ユ潈闄�
-                //if (!DBUtility.ClsPub.Security_Log_second(ModRightNameCheck, 1, false, CurUserName))
-                //{
-                //    objJsonResult.code = "0";
-                //    objJsonResult.count = 0;
-                //    objJsonResult.Message = "鍏抽棴澶辫触锛佹棤鏉冮檺锛�";
-                //    objJsonResult.data = null;
-                //    return objJsonResult;
-                //}
+                if (!DBUtility.ClsPub.Security_Log_second(ModRightNameCheck, 1, false, CurUserName))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍏抽棴澶辫触锛佹棤鏉冮檺锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
                 //HInterID鏁版嵁鍒ゆ柇
                 if (HInterID <= 0)
                 {
diff --git a/WebAPI/Controllers/XSGL/Xs_SeOrderBillController.cs b/WebAPI/Controllers/XSGL/Xs_SeOrderBillController.cs
index ce31d58..f81653f 100644
--- a/WebAPI/Controllers/XSGL/Xs_SeOrderBillController.cs
+++ b/WebAPI/Controllers/XSGL/Xs_SeOrderBillController.cs
@@ -1153,6 +1153,17 @@
                             objJsonResult.data = 1;
                             return objJsonResult;
                         }
+
+                        string sql = "select count(*) Xs_ExceptiveCheckRequestBillCount from Xs_ExceptiveCheckRequestBillMain where HMainSourceInterID = " + BillOld.omodel.HInterID;
+                        ds = oCN.RunProcReturn(sql, "Xs_ExceptiveCheckRequestBillMain");
+                        if (ds != null && Int64.Parse(ds.Tables[0].Rows[0]["Xs_ExceptiveCheckRequestBillCount"].ToString()) > 0)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "淇濆瓨澶辫触锛屽崟鎹瓨鍦ㄤ笅娓稿崟鎹甗鐗规壒鐢宠鍗昡锛�";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
                     }
                     UserName = oItem.HMaker;  //鍒跺崟浜�
                     oItem.HBillType = "1401";
@@ -1549,7 +1560,7 @@
                 if (IsAudit == 1) //鍙嶅鏍告彁浜�
                 {
                     //鍙嶅鏍稿墠鎺у埗=========================================
-                    DataSet ds = oCN.RunProcReturn("Exec h_p_Xs_SeOrderBill_BeforeAbandonCheckCtrl " + lngBillKey, "h_p_Xs_SeOrderBill_BeforeAbandonCheckCtrl");
+                    DataSet ds = oCN.RunProcReturn("Exec h_p_Xs_SeOrderBill_BeforeAbandonCheckCtrl " + oBill.omodel.HInterID + ",'" + oBill.omodel.HBillNo + "','" + CurUserName + "'", "h_p_Xs_SeOrderBill_BeforeAbandonCheckCtrl");
                     if (ds == null)
                     {
                         objJsonResult.code = "0";
@@ -1612,6 +1623,7 @@
         {
             string ModRightNameCheck = "Xs_SeOrderBill_Close";
             DBUtility.ClsPub.CurUserName = CurUserName;
+            string sql = "";
             try
             {
                 //妫�鏌ユ潈闄�
@@ -1678,6 +1690,18 @@
                             objJsonResult.data = null;
                             return objJsonResult;
                         }
+
+                        //鍒ゆ柇鍗曟嵁鏄惁涓鸿嚜鍔ㄥ叧闂�
+                        sql = "select * from Xs_SeOrderBillMain where HInterID = " + HInterID;
+                        ds = oCN.RunProcReturn(sql, "Xs_SeOrderBillMain");
+                        if (ds.Tables[0].Rows[0]["HCloseType"].ToString() == "False")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍙嶅叧闂け璐�!鍗曟嵁涓鸿嚜鍔ㄥ叧闂紝涓嶈兘杩涜鎵嬪姩鍙嶅叧闂紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
                     }
                 }
                 else
@@ -1713,8 +1737,198 @@
                 }
                 if (IsAudit == 1) //鍙嶅叧闂彁浜�
                 {
+                    oBill.oCn.BeginTran();
                     //鍙嶅叧闂彁浜�
                     if (oBill.CancelClose(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo) == true)
+                    {
+                        ds = oCN.RunProcReturn("exec h_p_Kf_CheckSeOrderBill_CrediControl " + oBill.omodel.HInterID, "h_p_Kf_CheckSeOrderBill_CrediControl");
+                        if (ds.Tables[0].Rows[0]["HBack"].ToString() == "1")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + ds.Tables[0].Rows[0]["HRemark"].ToString();
+                            objJsonResult.data = null;
+                            oBill.oCn.RollBack();
+                            return objJsonResult;
+                        }
+
+                        oBill.oCn.Commit();
+                        objJsonResult.code = "1";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "鍙嶅叧闂垚鍔�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    else
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍙嶅叧闂け璐�!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo;
+                        objJsonResult.data = null;
+                        oBill.oCn.RollBack();
+                        return objJsonResult;
+                    }
+                }
+                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="IsAudit">鍏抽棴(0),鍙嶅叧闂�(1)</param>
+        /// <param name="CurUserName">鍏抽棴浜�</param>
+        /// <returns></returns>
+        [Route("Xs_SeOrderBill/CloseRowXs_SeOrderBill")]
+        [HttpGet]
+        public object CloseRowXs_SeOrderBill(int HInterID,int HEntryID, int IsAudit, string CurUserName)
+        {
+            string ModRightNameCheck = "Xs_SeOrderBill_Close";
+            string SubBillName = "Xs_SeOrderBillSub";                   //瀛愯〃琛ㄥ悕
+            DBUtility.ClsPub.CurUserName = CurUserName;
+            DataSet ds = null;
+            try
+            {
+                //妫�鏌ユ潈闄�
+                if (!DBUtility.ClsPub.Security_Log_second(ModRightNameCheck, 1, false, CurUserName))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "琛屽叧闂け璐ワ紒鏃犳潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                //HInterID鏁版嵁鍒ゆ柇
+                if (HInterID <= 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "HInterID灏忎簬0锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                Int64 lngBillKey = 0;
+                lngBillKey = DBUtility.ClsPub.isLong(HInterID);                                         //瀵笻InterID杩涜绫诲瀷鐨勮浆鎹�
+                DAL.ClsXs_SeOrderBill oBill = new DAL.ClsXs_SeOrderBill();              //瀹炰緥鍖栧崟鎹搷浣滅被锛岀敤浜庤繘琛岀浉鍏虫搷浣�
+
+                //閽堝闇�瑕佽繘琛岀殑鎿嶄綔锛屾楠屽綋鍓嶅崟鎹殑鐘舵�佹槸鍚︽敮鎸侀渶瑕佽繘琛岀殑鎿嶄綔
+                if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo))                    //鏍规嵁HInterID鑾峰彇璇ュ崟鎹殑鏁版嵁
+                {
+                    if (oBill.omodel.HDeleteMan.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.HChecker.Trim() == "")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍗曟嵁鏈鏍�!涓嶈兘杩涜琛屽叧闂紒";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+
+                    string sql = "select * from " + SubBillName + " where HInterID = " + HInterID + " and HEntryID = " + HEntryID;
+                    ds = oCN.RunProcReturn(sql, "Xs_SeOrderBillSub");
+                    if (ds == null || ds.Tables[0].Rows.Count == 0)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "璇ヨ鏁版嵁涓嶅瓨鍦�!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    if (IsAudit == 0)  //琛屽叧闂垽鏂�
+                    {
+                        if (ds.Tables[0].Rows[0]["HCloseMan"].ToString().Trim() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "琛屽凡鍏抽棴!涓嶈兘鍐嶆琛屽叧闂紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                    if (IsAudit == 1) //琛屽弽鍏抽棴鍒ゆ柇
+                    {
+                        if (ds.Tables[0].Rows[0]["HCloseMan"].ToString().Trim() == "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "琛屾湭鍏抽棴!涓嶉渶瑕佸啀琛屽弽鍏抽棴锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+
+                        //鍒ゆ柇琛屾槸鍚︿负鑷姩鍏抽棴
+                        string temp = ds.Tables[0].Rows[0]["HCloseType"].ToString();
+                        if (ds.Tables[0].Rows[0]["HCloseType"].ToString() == "False")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "琛屽弽鍏抽棴澶辫触!琛屼负鑷姩鍏抽棴锛屼笉鑳借繘琛屾墜鍔ㄥ弽鍏抽棴锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦�!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
+                //杩涜闇�瑕佽繘琛岀殑琛屽叧闂�/琛屽弽鍏抽棴鎿嶄綔
+                if (IsAudit == 0) //琛屽叧闂彁浜�
+                {
+                    //琛屽叧闂彁浜�
+                    if (oBill.CloseRow(lngBillKey,HEntryID,oBill.omodel.HBillNo,CurUserName, ref DBUtility.ClsPub.sExeReturnInfo) == true)
+                    {
+                        objJsonResult.code = "1";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "琛屽叧闂垚鍔�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    else
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "琛屽叧闂け璐�!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+                if (IsAudit == 1) //琛屽弽鍏抽棴鎻愪氦
+                {
+                    //琛屽弽鍏抽棴鎻愪氦
+                    if (oBill.CancelRow(lngBillKey, HEntryID, oBill.omodel.HBillNo, CurUserName, ref DBUtility.ClsPub.sExeReturnInfo) == true)
                     {
                         objJsonResult.code = "1";
                         objJsonResult.count = 1;
@@ -2004,29 +2218,7 @@
                 }
                 else
                 {
-                    string sql = "select * from Gy_UserCustomerRelation where HUserID = '" + CurUserID + "'";
-                    ds = oCN.RunProcReturn(sql, "Gy_UserCustomerRelation");
-                    if (ds == null || ds.Tables[0].Rows.Count == 0)
-                    {
-                        sWhere = " and 1 = 0";
-                    }
-                    else
-                    {
-                        sWhere = " and HCusID in (";
-                        for (var i = 0; i < ds.Tables[0].Rows.Count; i++)
-                        {
-                            if (i < ds.Tables[0].Rows.Count - 1)
-                            {
-                                sWhere += ds.Tables[0].Rows[i]["HCusID"].ToString() + ",";
-                            }
-                            else
-                            {
-                                sWhere += ds.Tables[0].Rows[i]["HCusID"].ToString() + ")";
-                            }
-                        }
-                    }
-
-                    //sWhere = " and 1=1 ";
+                    sWhere = " and HCusID in (select hcusid from Gy_UserCustomerRelation Where HUserID = '" + CurUserID + "') ";
                 }
 
                 objJsonResult.code = "1";
diff --git a/WebAPI/Controllers/XSGL/YF_PayMentOtherBillController.cs b/WebAPI/Controllers/XSGL/YF_PayMentOtherBillController.cs
new file mode 100644
index 0000000..302af3d
--- /dev/null
+++ b/WebAPI/Controllers/XSGL/YF_PayMentOtherBillController.cs
@@ -0,0 +1,907 @@
+锘縰sing Newtonsoft.Json;
+using Newtonsoft.Json.Linq;
+using Pub_Class;
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.Data;
+using System.Data.SqlClient;
+using System.Web.Http;
+using WebAPI.Models;
+
+namespace WebAPI.Controllers
+{
+    //鍏朵粬搴斾粯鍗旵ontroller
+    public class YF_PayMentOtherBillController : ApiController
+    {
+        //鍏朵粬搴斾粯鍗�
+        //鑾峰彇绯荤粺鍙傛暟    YF_PayMentOtherBillMain     YF_PayMentOtherBill
+        Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter();
+        public DBUtility.ClsPub.Enum_BillStatus BillStatus;
+        public DAL.ClsYF_PayMentOtherBill BillOld = new DAL.ClsYF_PayMentOtherBill();
+        public DAL.ClsYF_PayMentOtherBill BillNew0 = new DAL.ClsYF_PayMentOtherBill();
+
+        private json objJsonResult = new json();
+        SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+        DataSet ds;
+
+        #region 鍏朵粬搴斾粯鍗曞垪琛� 鏌ヨ
+        /// <summary>
+        /// 杩斿洖椤圭洰闃舵鍒楄〃
+        ///鍙傛暟锛歴tring sql銆�
+        ///杩斿洖鍊硷細object銆�
+        /// </summary>
+        [Route("YF_PayMentOtherBill/YF_PayMentOtherBillMainList")]
+        [HttpGet]
+        public object YF_PayMentOtherBillMainList(string sWhere, string user)
+        {
+            try
+            {
+                List<object> columnNameList = new List<object>();
+                //鏌ョ湅鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("YF_PayMentOtherBill_Qty", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                if (sWhere == null || sWhere.Equals(""))
+                {
+                    ds = oCN.RunProcReturn("select * from h_v_YF_PayMentOtherBillMainList order by 鍗曟嵁鍙� desc", "h_v_YF_PayMentOtherBillMainList");
+                }
+                else
+                {
+                    string sql1 = "select * from h_v_YF_PayMentOtherBillMainList where 1 = 1 ";
+                    string sql = sql1 + sWhere + " order by 鍗曟嵁鍙� desc";
+                    ds = oCN.RunProcReturn(sql, "h_v_YF_PayMentOtherBillMainList");
+                }
+
+                //娣诲姞鍒楀悕
+                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("YF_PayMentOtherBill/SaveYF_PayMentOtherBillMain")]
+        [HttpPost]
+        public object SaveYF_PayMentOtherBillMain([FromBody] JObject msg)
+        {
+            var _value = msg["msg"].ToString();
+            string msg1 = _value.ToString();
+            string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+            string msg2 = sArray[0].ToString();                             //琛ㄥご鏁版嵁
+            string refSav = sArray[1].ToString();                           //鎿嶄綔鏂瑰紡
+            string msg4 = sArray[2].ToString();                             //鐢ㄦ埛
+
+            DBUtility.ClsPub.CurUserName = msg4;
+
+            string UserName = "";
+            string s = "";
+            ListModels oListModels = new ListModels();
+            try
+            {
+                //缂栬緫鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log_second("YF_PayMentOtherBill_Edit", 1, false, msg4))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犱繚瀛樻潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                DAL.ClsYF_PayMentOtherBill oBill = new DAL.ClsYF_PayMentOtherBill();
+                List<Model.ClsYF_PayMentOtherBillMain> lsmain = new List<Model.ClsYF_PayMentOtherBillMain>();
+                msg2 = msg2.Replace("\\", "");
+                msg2 = msg2.Replace("\n", "");  //\n
+                lsmain = oListModels.getObjectByJson_YF_PayMentOtherBillMain(msg2);
+                foreach (Model.ClsYF_PayMentOtherBillMain oItem in lsmain)
+                {
+                    if (refSav == "Add")
+                    {
+                        //鍗曟嵁鍙锋槸鍚﹂噸澶�
+                        if (BillNew0.IsExistBillNo(ref ClsPub.sExeReturnInfo, oItem.HBillNo, BillStatus, BillOld.omodel.HInterID))
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鍙烽噸澶嶏紒涓嶅厑璁镐繚瀛橈紒";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                    }
+                    if (refSav == "Update")
+                    {
+                        if (BillOld.ShowBill(oItem.HInterID, ref s) == false)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "姝ゅ崟鎹湁璇紒";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                        //鍒ゆ柇鏄惁鍙紪杈�
+                        if (BillOld.omodel.HChecker != "" && BillOld.omodel.HChecker != null)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "姝ゅ崟鎹凡缁忚瀹℃牳锛屼笉鍏佽淇敼锛�";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                        if (BillOld.omodel.HBillStatus > 1)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "姝ゅ崟鎹浜庝笉鍙紪杈戠姸鎬侊紝涓嶅厑璁镐慨鏀癸紒";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                        if (!DBUtility.Xt_BaseBillFun.Fun_AllowEditBill(BillOld, ref s))
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = s + "锛屼笉鍏佽淇敼";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                    }
+                    UserName = oItem.HMaker;  //鍒跺崟浜�
+                    oItem.HBillType = "2102";
+                    oItem.HBillSubType = "2102";
+
+                    oItem.HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year);
+                    oItem.HPeriod = DBUtility.ClsPub.isLong(DateTime.Now.Month);
+                    oItem.HMakeDate = DBUtility.ClsPub.isStrNull(DateTime.Now.ToString("yyyy-MM-dd"));
+
+                    if (DBUtility.ClsPub.isStrNull(oItem.HDate) == "")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "淇濆瓨澶辫触锛佹病鏈夊崟鎹棩鏈燂紝鏃犳硶淇濆瓨锛�";
+                        objJsonResult.data = 1;
+                        return objJsonResult;
+                    }
+                    oBill.omodel = oItem;
+                }
+
+                //淇濆瓨
+                //淇濆瓨瀹屾瘯鍚庡鐞�
+                bool bResult;
+                if (refSav == "Add")
+                {
+                   
+                    bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
+                }
+                else if (refSav == "Update")
+                {
+                    bResult = oBill.ModifyBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
+                }
+                else
+                {
+                    bResult = false;
+                }
+                if (bResult)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "淇濆瓨鎴愬姛锛�";
+                    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)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "淇濆瓨澶辫触锛�" + e.ToString();
+                objJsonResult.data = 1;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 鍏朵粬搴斾粯鍗� 缂栬緫椤甸潰鍒濆鍖�
+        [Route("YF_PayMentOtherBill/YF_PayMentOtherBillMainEditList")]
+        [HttpGet]
+        public object YF_PayMentOtherBillMainEditList(long HInterID)
+        {
+            try
+            {
+                ds = oCN.RunProcReturn("select * from h_v_YF_PayMentOtherBillMainList where hmainid=" + HInterID, "h_v_YF_PayMentOtherBillMainList");
+                if (ds == null || ds.Tables[0].Rows.Count == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "false锛�";
+                    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
+
+        #region 鍏朵粬搴斾粯鍗� 鍒犻櫎
+        /// <summary>
+        ///鍙傛暟锛歴tring HInterID銆�
+        ///杩斿洖鍊硷細object銆�
+        /// </summary>
+        [Route("YF_PayMentOtherBill/DeleteYF_PayMentOtherBillMain")]
+        [HttpGet]
+        public object DeleteYF_PayMentOtherBillMain(string HInterID, string user)
+        {
+            try
+            {
+                string s = "";
+
+                //鏌ョ湅鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("YF_PayMentOtherBill_Drop", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犲垹闄ゆ潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                if (HInterID == null || HInterID.Equals(""))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "HInterID涓嶈兘涓虹┖锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                if (BillOld.ShowBill(long.Parse(HInterID), ref s) == false)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "姝ゅ崟鎹湁璇紒";
+                    objJsonResult.data = 1;
+                    return objJsonResult;
+                }
+                //鍒ゆ柇鏄惁鍙紪杈�
+                if (BillOld.omodel.HChecker != "" && BillOld.omodel.HChecker != null)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "姝ゅ崟鎹凡缁忚瀹℃牳锛屼笉鍏佽鍒犻櫎锛�";
+                    objJsonResult.data = 1;
+                    return objJsonResult;
+                }
+
+                //鍒犻櫎鍓嶆帶鍒�=========================================      
+                string sql1 = "exec h_p_YF_PayMentOtherBill_BeforeDelCtrl " + BillOld.omodel.HInterID + ",'" + BillOld.omodel.HBillNo + "','" + user + "'";
+                ds = oCN.RunProcReturn(sql1, "h_p_YF_PayMentOtherBill_BeforeDelCtrl");
+                if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "鍒犻櫎澶辫触!鍘熷洜:鍒犻櫎鍓嶅垽鏂け璐ワ紝璇蜂笌缃戠粶绠$悊浜哄憳鑱旂郴";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "鍒犻櫎澶辫触!鍘熷洜:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                //==================================================================================  
+
+
+
+                oCN.BeginTran();
+
+                oCN.RunProc("delete from YF_PayMentOtherBillMain where HInterID = " + HInterID);
+                oCN.RunProc("delete from YF_PayMentOtherBillSub where HInterID= " + HInterID);
+
+                //鍒犻櫎鍚庢帶鍒�==================================================================================      
+                string sql2 = "exec h_p_YF_PayMentOtherBill_AfterDelCtrl " + BillOld.omodel.HInterID + ",'" + BillOld.omodel.HBillNo + "','" + user + "'";
+                ds = oCN.RunProcReturn(sql2, "h_p_YF_PayMentOtherBill_AfterDelCtrl");
+                if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
+                {
+                    s = "鍒犻櫎鍚庡垽鏂け璐ワ紝璇蜂笌缃戠粶绠$悊浜哄憳鑱旂郴";
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "鍒犻櫎澶辫触!鍘熷洜:" + s;
+                    objJsonResult.data = null;
+                    oCN.RollBack();
+                    return objJsonResult;
+                }
+                if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
+                {
+                    s = ds.Tables[0].Rows[0]["HRemark"].ToString();
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "鍒犻櫎澶辫触!鍘熷洜:" + s;
+                    objJsonResult.data = null;
+                    oCN.RollBack();
+                    return objJsonResult;
+                }
+                //==============================================================================================
+
+                oCN.Commit();
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鍒犻櫎鎴愬姛";
+                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 鍏朵粬搴斾粯鍗� 瀹℃牳/鍙嶅鏍�
+        /// <summary>
+        /// </summary>
+        /// <param name="HInterID">鍗曟嵁ID</param>
+        /// <param name="IsAudit">瀹℃牳(0),鍙嶅鏍�(1)</param>
+        /// <param name="CurUserName">瀹℃牳浜�</param>
+        /// <returns></returns>
+        [Route("YF_PayMentOtherBill/AuditYF_PayMentOtherBillMain")]
+        [HttpGet]
+        public object AuditYF_PayMentOtherBillMain(int HInterID, int IsAudit, string CurUserName)
+        {
+            string ModRightNameCheck = "YF_PayMentOtherBill_Check";
+            DBUtility.ClsPub.CurUserName = CurUserName;
+            try
+            {
+                //瀹℃牳鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log_second(ModRightNameCheck, 1, false, CurUserName))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "瀹℃牳澶辫触锛佹棤鏉冮檺锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                //HInterID鏁版嵁鍒ゆ柇
+                if (HInterID <= 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "HInterID灏忎簬0锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
+                Int64 lngBillKey = 0;
+                lngBillKey = DBUtility.ClsPub.isLong(HInterID);                                         //瀵笻InterID杩涜绫诲瀷鐨勮浆鎹�
+                DAL.ClsYF_PayMentOtherBill oBill = new DAL.ClsYF_PayMentOtherBill();                              //瀹炰緥鍖栧崟鎹搷浣滅被锛岀敤浜庤繘琛岀浉鍏虫搷浣�
+
+                //閽堝闇�瑕佽繘琛岀殑鎿嶄綔锛屾楠屽綋鍓嶅崟鎹殑鐘舵�佹槸鍚︽敮鎸侀渶瑕佽繘琛岀殑鎿嶄綔
+                if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo))                    //鏍规嵁HInterID鑾峰彇璇ュ崟鎹殑鏁版嵁
+                {
+                    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;
+                    }
+                    if (IsAudit == 0)  //瀹℃牳鍒ゆ柇
+                    {
+                        if (oBill.omodel.HChecker.Trim() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸插鏍�!涓嶈兘鍐嶆瀹℃牳锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                    if (IsAudit == 1) //鍙嶅鏍稿垽鏂�
+                    {
+                        if (oBill.omodel.HChecker.Trim() == "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鏈鏍�!涓嶉渶瑕佸弽瀹℃牳!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦�!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
+                //杩涜闇�瑕佽繘琛岀殑瀹℃牳/鍙嶅鏍告搷浣�
+                if (IsAudit == 0) //瀹℃牳鎻愪氦
+                {
+                    oCN.BeginTran();
+
+                    //璁板綍杩斿洖淇℃伅
+                    string msg = "";
+
+                    if(oBill.omodel.HMainSourceInterID != 0)
+                    {
+                        //妫�楠屾簮鍗曟槸鍚﹀瓨鍦ㄥ強鍗曟嵁鐘舵��
+                        string sql = "select * from YF_PayMentOtherBillMain where HInterID = " + oBill.omodel.HMainSourceInterID;
+                        ds = oCN.RunProcReturn(sql, "YF_PayMentOtherBillMain");
+                        if (ds == null || ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:婧愬崟-鐗规壒鐢宠鍗曚笉瀛樺湪!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else if (ds.Tables[0].Rows[0]["HBillStatus"].ToString() != "2")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:婧愬崟-鐗规壒鐢宠鍗曟湭澶勪簬宸插鏍哥姸鎬�!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        
+                     
+                    }
+
+                    //瀹℃牳鍓嶆帶鍒�=========================================      
+                    string sql1 = "exec h_p_YF_PayMentOtherBill_BeforeCheckCtrl " + oBill.omodel.HInterID + ",'" + oBill.omodel.HBillNo + "','" + CurUserName + "'";
+                    ds = oCN.RunProcReturn(sql1, "h_p_YF_PayMentOtherBill_BeforeCheckCtrl");
+                    if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:瀹℃牳鍓嶅垽鏂け璐ワ紝璇蜂笌缃戠粶绠$悊浜哄憳鑱旂郴";
+                        objJsonResult.data = null;
+                        oCN.RollBack();
+                        return objJsonResult;
+                    }
+
+                    if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ;
+                        objJsonResult.data = null;
+                        oCN.RollBack();
+                        return objJsonResult;
+                    }
+                    //==================================================================================      
+
+                    //瀹℃牳鎻愪氦
+                    if (oBill.CheckBill(oBill.omodel.HInterID,oBill.omodel.HBillNo, "h_p_YF_PayMentOtherBill_AfterCheckCtrl", CurUserName, ref DBUtility.ClsPub.sExeReturnInfo) == true)
+                    {
+                        oCN.Commit();
+
+                        objJsonResult.code = "1";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "瀹℃牳鎴愬姛锛�" + msg;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    else
+                    {
+                        oCN.RollBack();
+
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+                if (IsAudit == 1) //鍙嶅鏍告彁浜�
+                {
+                   
+                    //鍙嶅鏍稿墠鎺у埗=========================================        
+                    string sql1 = "exec h_p_YF_PayMentOtherBill_BeforeUnCheckCtrl " + oBill.omodel.HInterID + ",'" + oBill.omodel.HBillNo + "','" + CurUserName + "'";
+                    ds = oCN.RunProcReturn(sql1, "h_p_YF_PayMentOtherBill_BeforeUnCheckCtrl");
+                    if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "鍙嶅鏍稿け璐�!鍘熷洜:鍙嶅鏍稿墠鍒ゆ柇澶辫触锛岃涓庣綉缁滅鐞嗕汉鍛樿仈绯�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+
+                    }
+                    if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "鍙嶅鏍稿け璐�!鍘熷洜:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    //===========================================================          
+
+                    //鍙嶅鏍告彁浜bandonCheck
+                    if (oBill.AbandonCheck(oBill.omodel.HInterID, oBill.omodel.HBillNo, "h_p_YF_PayMentOtherBill_AfterUnCheckCtrl", CurUserName, ref DBUtility.ClsPub.sExeReturnInfo) == true)
+                    {
+                        objJsonResult.code = "1";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "鍙嶅鏍告垚鍔�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    else
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍙嶅鏍稿け璐�!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                oCN.RollBack();
+
+                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="IsAudit">鍏抽棴(0),鍙嶅叧闂�(1)</param>
+        /// <param name="CurUserName">鍏抽棴浜�</param>
+        /// <returns></returns>
+        [Route("YF_PayMentOtherBill/CloseYF_PayMentOtherBill")]
+        [HttpGet]
+        public object CloseYF_PayMentOtherBill(int HInterID, int IsAudit, string CurUserName)
+        {
+            string ModRightNameCheck = "YF_PayMentOtherBill_Close";
+            DBUtility.ClsPub.CurUserName = CurUserName;
+            try
+            {
+                //妫�鏌ユ潈闄�
+                if (!DBUtility.ClsPub.Security_Log_second(ModRightNameCheck, 1, false, CurUserName))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍏抽棴澶辫触锛佹棤鏉冮檺锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                //HInterID鏁版嵁鍒ゆ柇
+                if (HInterID <= 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "HInterID灏忎簬0锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
+                Int64 lngBillKey = 0;
+                lngBillKey = DBUtility.ClsPub.isLong(HInterID);                                         //瀵笻InterID杩涜绫诲瀷鐨勮浆鎹�
+                DAL.ClsYF_PayMentOtherBill oBill = new DAL.ClsYF_PayMentOtherBill();              //瀹炰緥鍖栧崟鎹搷浣滅被锛岀敤浜庤繘琛岀浉鍏虫搷浣�
+
+                //閽堝闇�瑕佽繘琛岀殑鎿嶄綔锛屾楠屽綋鍓嶅崟鎹殑鐘舵�佹槸鍚︽敮鎸侀渶瑕佽繘琛岀殑鎿嶄綔
+                if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo))                    //鏍规嵁HInterID鑾峰彇璇ュ崟鎹殑鏁版嵁
+                {
+                    if (oBill.omodel.HDeleteMan.Trim() != "")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍗曟嵁宸蹭綔搴�!涓嶈兘杩涜鍏抽棴锛�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    if (oBill.omodel.HChecker.Trim() == "")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍗曟嵁鏈鏍�!涓嶈兘杩涜鍏抽棴锛�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    if (IsAudit == 0)  //鍏抽棴鍒ゆ柇
+                    {
+                        if (oBill.omodel.HCloseMan.Trim() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸插叧闂�!涓嶈兘鍐嶆鍏抽棴锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                    if (IsAudit == 1) //鍙嶅叧闂垽鏂�
+                    {
+                        if (oBill.omodel.HCloseMan.Trim() == "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鏈叧闂�!涓嶉渶瑕佸弽鍏抽棴锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦�!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
+                //杩涜闇�瑕佽繘琛岀殑鍏抽棴/鍙嶅叧闂搷浣�
+                if (IsAudit == 0) //鍏抽棴鎻愪氦
+                {
+                    //鍏抽棴鎻愪氦
+                    if (oBill.CloseBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo) == true)
+                    {
+                        objJsonResult.code = "1";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "鍏抽棴鎴愬姛";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    else
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍏抽棴澶辫触!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+                if (IsAudit == 1) //鍙嶅叧闂彁浜�
+                {
+                    //鍙嶅叧闂彁浜�
+                    if (oBill.CancelClose(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo) == true)
+                    {
+                        objJsonResult.code = "1";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "鍙嶅叧闂垚鍔�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    else
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍙嶅叧闂け璐�!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+                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="IsAudit">浣滃簾(0),鍙嶄綔搴�(1)</param>
+        /// <param name="CurUserName">浣滃簾浜�</param>
+        /// <returns></returns>
+        [Route("YF_PayMentOtherBill/DeleteYF_PayMentOtherBill")]
+        [HttpGet]
+        public object DeleteYF_PayMentOtherBill(int HInterID, int IsAudit, string CurUserName)
+        {
+            string ModRightNameCheck = "YF_PayMentOtherBill_Delete";
+            DBUtility.ClsPub.CurUserName = CurUserName;
+            try
+            {
+                //妫�鏌ユ潈闄�
+                if (!DBUtility.ClsPub.Security_Log_second(ModRightNameCheck, 1, false, CurUserName))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "浣滃簾澶辫触锛佹棤鏉冮檺锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                //HInterID鏁版嵁鍒ゆ柇
+                if (HInterID <= 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "HInterID灏忎簬0锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
+                Int64 lngBillKey = 0;
+                lngBillKey = DBUtility.ClsPub.isLong(HInterID);                                         //瀵笻InterID杩涜绫诲瀷鐨勮浆鎹�
+                DAL.ClsYF_PayMentOtherBill oBill = new DAL.ClsYF_PayMentOtherBill();              //瀹炰緥鍖栧崟鎹搷浣滅被锛岀敤浜庤繘琛岀浉鍏虫搷浣�
+
+                //閽堝闇�瑕佽繘琛岀殑鎿嶄綔锛屾楠屽綋鍓嶅崟鎹殑鐘舵�佹槸鍚︽敮鎸侀渶瑕佽繘琛岀殑鎿嶄綔
+                if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo))                    //鏍规嵁HInterID鑾峰彇璇ュ崟鎹殑鏁版嵁
+                {
+                    if (oBill.omodel.HChecker.Trim() != "")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍗曟嵁宸插鏍�!涓嶈兘杩涜浣滃簾锛�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    if (IsAudit == 0)  //浣滃簾鍒ゆ柇
+                    {
+                        if (oBill.omodel.HDeleteMan.Trim() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸蹭綔搴�!涓嶈兘鍐嶄綔搴燂紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                    if (IsAudit == 1) //鍙嶄綔搴熷垽鏂�
+                    {
+                        if (oBill.omodel.HDeleteMan.Trim() == "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鏈綔搴�!涓嶉渶瑕佸弽浣滃簾锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦�!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
+                //杩涜闇�瑕佽繘琛岀殑浣滃簾/鍙嶄綔搴熸搷浣�
+                if (IsAudit == 0) //浣滃簾鎻愪氦
+                {
+                    //浣滃簾鎻愪氦
+                    if (oBill.Cancelltion(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo) == true)
+                    {
+                        objJsonResult.code = "1";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "浣滃簾鎴愬姛";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    else
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "浣滃簾澶辫触!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+                if (IsAudit == 1) //鍙嶅叧闂彁浜�
+                {
+                    //鍙嶅叧闂彁浜�
+                    if (oBill.AbandonCancelltion(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo) == true)
+                    {
+                        objJsonResult.code = "1";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "鍙嶄綔搴熸垚鍔�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    else
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍙嶄綔搴熷け璐�!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "浣滃簾澶辫触鎴栬�呭弽浣滃簾澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+      
+    }
+}
\ No newline at end of file
diff --git a/WebAPI/Controllers/XSGL/YS_ReceiveBillController.cs b/WebAPI/Controllers/XSGL/YS_ReceiveBillController.cs
index 3eca178..eea8e80 100644
--- a/WebAPI/Controllers/XSGL/YS_ReceiveBillController.cs
+++ b/WebAPI/Controllers/XSGL/YS_ReceiveBillController.cs
@@ -1011,5 +1011,50 @@
             }
         }
         #endregion
+
+        #region 鏀舵鍗� 鏍规嵁瀹㈡埛鑾峰彇鍏宠仈鑱屽憳
+        [Route("YS_ReceiveBill/getRelationEmpByCusID")]
+        [HttpGet]
+        public object getRelationEmpByCusID(long HCusID)
+        {
+            try
+            {
+                string sql = @"select b.HEmpID HEmpID,e.HName HEmpName,b.HDeptID HDeptID,d.HName HDeptName,d.HEmpID HManagerID,e1.HName HManagerName
+                            from Gy_UserCustomerRelation as a
+                            left join Gy_Czygl as b on a.HUserID = b.Czybm
+                            left join Gy_Employee as e on b.HEmpID = e.HItemID
+                            left join Gy_Department as d on b.HDeptID = d.HItemID
+                            left join Gy_Employee as e1 on d.HEmpID = e1.HItemID
+                            where a.HCusID = " + HCusID;
+                ds = oCN.RunProcReturn(sql, "Gy_UserCustomerRelation");
+
+
+                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/XSGL/YS_ReceiveOtherBillController.cs b/WebAPI/Controllers/XSGL/YS_ReceiveOtherBillController.cs
new file mode 100644
index 0000000..414620a
--- /dev/null
+++ b/WebAPI/Controllers/XSGL/YS_ReceiveOtherBillController.cs
@@ -0,0 +1,907 @@
+锘縰sing Newtonsoft.Json;
+using Newtonsoft.Json.Linq;
+using Pub_Class;
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.Data;
+using System.Data.SqlClient;
+using System.Web.Http;
+using WebAPI.Models;
+
+namespace WebAPI.Controllers
+{
+    //鍏朵粬搴旀敹鍗旵ontroller
+    public class YS_ReceiveOtherBillController : ApiController
+    {
+        //鍏朵粬搴旀敹鍗�
+        //鑾峰彇绯荤粺鍙傛暟    YS_ReceiveOtherBillMain
+        Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter();
+        public DBUtility.ClsPub.Enum_BillStatus BillStatus;
+        public DAL.ClsYS_ReceiveOtherBill BillOld = new DAL.ClsYS_ReceiveOtherBill();
+        public DAL.ClsYS_ReceiveOtherBill BillNew0 = new DAL.ClsYS_ReceiveOtherBill();
+
+        private json objJsonResult = new json();
+        SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+        DataSet ds;
+
+        #region 鍏朵粬搴旀敹鍗曞垪琛� 鏌ヨ
+        /// <summary>
+        /// 杩斿洖椤圭洰闃舵鍒楄〃
+        ///鍙傛暟锛歴tring sql銆�
+        ///杩斿洖鍊硷細object銆�
+        /// </summary>
+        [Route("YS_ReceiveOtherBill/YS_ReceiveOtherBillMainList")]
+        [HttpGet]
+        public object YS_ReceiveOtherBillMainList(string sWhere, string user)
+        {
+            try
+            {
+                List<object> columnNameList = new List<object>();
+                //鏌ョ湅鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("YS_ReceiveOtherBillMain_Query", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                if (sWhere == null || sWhere.Equals(""))
+                {
+                    ds = oCN.RunProcReturn("select * from h_v_YS_ReceiveOtherBillMainList order by 鍗曟嵁鍙� desc", "h_v_YS_ReceiveOtherBillMainList");
+                }
+                else
+                {
+                    string sql1 = "select * from h_v_YS_ReceiveOtherBillMainList where 1 = 1 ";
+                    string sql = sql1 + sWhere + " order by 鍗曟嵁鍙� desc";
+                    ds = oCN.RunProcReturn(sql, "h_v_YS_ReceiveOtherBillMainList");
+                }
+
+                //娣诲姞鍒楀悕
+                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("YS_ReceiveOtherBill/SaveYS_ReceiveOtherBillMain")]
+        [HttpPost]
+        public object SaveYS_ReceiveOtherBillMain([FromBody] JObject msg)
+        {
+            var _value = msg["msg"].ToString();
+            string msg1 = _value.ToString();
+            string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+            string msg2 = sArray[0].ToString();                             //琛ㄥご鏁版嵁
+            string refSav = sArray[1].ToString();                           //鎿嶄綔鏂瑰紡
+            string msg4 = sArray[2].ToString();                             //鐢ㄦ埛
+
+            DBUtility.ClsPub.CurUserName = msg4;
+
+            string UserName = "";
+            string s = "";
+            ListModels oListModels = new ListModels();
+            try
+            {
+                //缂栬緫鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log_second("YS_ReceiveOtherBillMain_Edit", 1, false, msg4))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犱繚瀛樻潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                DAL.ClsYS_ReceiveOtherBill oBill = new DAL.ClsYS_ReceiveOtherBill();
+                List<Model.ClsYS_ReceiveOtherBillMain> lsmain = new List<Model.ClsYS_ReceiveOtherBillMain>();
+                msg2 = msg2.Replace("\\", "");
+                msg2 = msg2.Replace("\n", "");  //\n
+                lsmain = oListModels.getObjectByJson_YS_ReceiveOtherBillMain(msg2);
+                foreach (Model.ClsYS_ReceiveOtherBillMain oItem in lsmain)
+                {
+                    if (refSav == "Add")
+                    {
+                        //鍗曟嵁鍙锋槸鍚﹂噸澶�
+                        if (BillNew0.IsExistBillNo(ref ClsPub.sExeReturnInfo, oItem.HBillNo, BillStatus, BillOld.omodel.HInterID))
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鍙烽噸澶嶏紒涓嶅厑璁镐繚瀛橈紒";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                    }
+                    if (refSav == "Update")
+                    {
+                        if (BillOld.ShowBill(oItem.HInterID, ref s) == false)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "姝ゅ崟鎹湁璇紒";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                        //鍒ゆ柇鏄惁鍙紪杈�
+                        if (BillOld.omodel.HChecker != "" && BillOld.omodel.HChecker != null)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "姝ゅ崟鎹凡缁忚瀹℃牳锛屼笉鍏佽淇敼锛�";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                        if (BillOld.omodel.HBillStatus > 1)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "姝ゅ崟鎹浜庝笉鍙紪杈戠姸鎬侊紝涓嶅厑璁镐慨鏀癸紒";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                        if (!DBUtility.Xt_BaseBillFun.Fun_AllowEditBill(BillOld, ref s))
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = s + "锛屼笉鍏佽淇敼";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                    }
+                    UserName = oItem.HMaker;  //鍒跺崟浜�
+                    oItem.HBillType = "2002";
+                    oItem.HBillSubType = "2002";
+
+                    oItem.HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year);
+                    oItem.HPeriod = DBUtility.ClsPub.isLong(DateTime.Now.Month);
+                    oItem.HMakeDate = DBUtility.ClsPub.isStrNull(DateTime.Now.ToString("yyyy-MM-dd"));
+
+                    if (DBUtility.ClsPub.isStrNull(oItem.HDate) == "")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "淇濆瓨澶辫触锛佹病鏈夊崟鎹棩鏈燂紝鏃犳硶淇濆瓨锛�";
+                        objJsonResult.data = 1;
+                        return objJsonResult;
+                    }
+                    oBill.omodel = oItem;
+                }
+
+                //淇濆瓨
+                //淇濆瓨瀹屾瘯鍚庡鐞�
+                bool bResult;
+                if (refSav == "Add")
+                {
+                   
+                    bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
+                }
+                else if (refSav == "Update")
+                {
+                    bResult = oBill.ModifyBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
+                }
+                else
+                {
+                    bResult = false;
+                }
+                if (bResult)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "淇濆瓨鎴愬姛锛�";
+                    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)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "淇濆瓨澶辫触锛�" + e.ToString();
+                objJsonResult.data = 1;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 鍏朵粬搴旀敹鍗� 缂栬緫椤甸潰鍒濆鍖�
+        [Route("YS_ReceiveOtherBill/YS_ReceiveOtherBillMainEditList")]
+        [HttpGet]
+        public object YS_ReceiveOtherBillMainEditList(long HInterID)
+        {
+            try
+            {
+                ds = oCN.RunProcReturn("select * from h_v_YS_ReceiveOtherBillMainList where hmainid=" + HInterID, "h_v_YS_ReceiveOtherBillMainList");
+                if (ds == null || ds.Tables[0].Rows.Count == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "false锛�";
+                    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
+
+        #region 鍏朵粬搴旀敹鍗� 鍒犻櫎
+        /// <summary>
+        ///鍙傛暟锛歴tring HInterID銆�
+        ///杩斿洖鍊硷細object銆�
+        /// </summary>
+        [Route("YS_ReceiveOtherBill/DeleteYS_ReceiveOtherBillMain")]
+        [HttpGet]
+        public object DeleteYS_ReceiveOtherBillMain(string HInterID, string user)
+        {
+            try
+            {
+                string s = "";
+
+                //鏌ョ湅鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("YS_ReceiveOtherBillMain_Drop", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犲垹闄ゆ潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                if (HInterID == null || HInterID.Equals(""))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "HInterID涓嶈兘涓虹┖锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                if (BillOld.ShowBill(long.Parse(HInterID), ref s) == false)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "姝ゅ崟鎹湁璇紒";
+                    objJsonResult.data = 1;
+                    return objJsonResult;
+                }
+                //鍒ゆ柇鏄惁鍙紪杈�
+                if (BillOld.omodel.HChecker != "" && BillOld.omodel.HChecker != null)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "姝ゅ崟鎹凡缁忚瀹℃牳锛屼笉鍏佽鍒犻櫎锛�";
+                    objJsonResult.data = 1;
+                    return objJsonResult;
+                }
+
+                //鍒犻櫎鍓嶆帶鍒�=========================================      
+                string sql1 = "exec h_p_YS_ReceiveOtherBill_BeforeDelCtrl " + BillOld.omodel.HInterID + ",'" + BillOld.omodel.HBillNo + "','" + user + "'";
+                ds = oCN.RunProcReturn(sql1, "h_p_YS_ReceiveOtherBill_BeforeDelCtrl");
+                if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "鍒犻櫎澶辫触!鍘熷洜:鍒犻櫎鍓嶅垽鏂け璐ワ紝璇蜂笌缃戠粶绠$悊浜哄憳鑱旂郴";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "鍒犻櫎澶辫触!鍘熷洜:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                //==================================================================================  
+
+
+
+                oCN.BeginTran();
+
+                oCN.RunProc("delete from YS_ReceiveOtherBillMain where HInterID = " + HInterID);
+                oCN.RunProc("delete from YS_ReceiveOtherBillSub where HInterID= " + HInterID);
+
+                //鍒犻櫎鍚庢帶鍒�==================================================================================      
+                string sql2 = "exec h_p_YS_ReceiveOtherBill_AfterDelCtrl " + BillOld.omodel.HInterID + ",'" + BillOld.omodel.HBillNo + "','" + user + "'";
+                ds = oCN.RunProcReturn(sql2, "h_p_YS_ReceiveOtherBill_AfterDelCtrl");
+                if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
+                {
+                    s = "鍒犻櫎鍚庡垽鏂け璐ワ紝璇蜂笌缃戠粶绠$悊浜哄憳鑱旂郴";
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "鍒犻櫎澶辫触!鍘熷洜:" + s;
+                    objJsonResult.data = null;
+                    oCN.RollBack();
+                    return objJsonResult;
+                }
+                if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
+                {
+                    s = ds.Tables[0].Rows[0]["HRemark"].ToString();
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "鍒犻櫎澶辫触!鍘熷洜:" + s;
+                    objJsonResult.data = null;
+                    oCN.RollBack();
+                    return objJsonResult;
+                }
+                //==============================================================================================
+
+                oCN.Commit();
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鍒犻櫎鎴愬姛";
+                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 鍏朵粬搴旀敹鍗� 瀹℃牳/鍙嶅鏍�
+        /// <summary>
+        /// </summary>
+        /// <param name="HInterID">鍗曟嵁ID</param>
+        /// <param name="IsAudit">瀹℃牳(0),鍙嶅鏍�(1)</param>
+        /// <param name="CurUserName">瀹℃牳浜�</param>
+        /// <returns></returns>
+        [Route("YS_ReceiveOtherBill/AuditYS_ReceiveOtherBillMain")]
+        [HttpGet]
+        public object AuditYS_ReceiveOtherBillMain(int HInterID, int IsAudit, string CurUserName)
+        {
+            string ModRightNameCheck = "YS_ReceiveOtherBillMain_Check";
+            DBUtility.ClsPub.CurUserName = CurUserName;
+            try
+            {
+                //瀹℃牳鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log_second(ModRightNameCheck, 1, false, CurUserName))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "瀹℃牳澶辫触锛佹棤鏉冮檺锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                //HInterID鏁版嵁鍒ゆ柇
+                if (HInterID <= 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "HInterID灏忎簬0锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
+                Int64 lngBillKey = 0;
+                lngBillKey = DBUtility.ClsPub.isLong(HInterID);                                         //瀵笻InterID杩涜绫诲瀷鐨勮浆鎹�
+                DAL.ClsYS_ReceiveOtherBill oBill = new DAL.ClsYS_ReceiveOtherBill();                              //瀹炰緥鍖栧崟鎹搷浣滅被锛岀敤浜庤繘琛岀浉鍏虫搷浣�
+
+                //閽堝闇�瑕佽繘琛岀殑鎿嶄綔锛屾楠屽綋鍓嶅崟鎹殑鐘舵�佹槸鍚︽敮鎸侀渶瑕佽繘琛岀殑鎿嶄綔
+                if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo))                    //鏍规嵁HInterID鑾峰彇璇ュ崟鎹殑鏁版嵁
+                {
+                    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;
+                    }
+                    if (IsAudit == 0)  //瀹℃牳鍒ゆ柇
+                    {
+                        if (oBill.omodel.HChecker.Trim() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸插鏍�!涓嶈兘鍐嶆瀹℃牳锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                    if (IsAudit == 1) //鍙嶅鏍稿垽鏂�
+                    {
+                        if (oBill.omodel.HChecker.Trim() == "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鏈鏍�!涓嶉渶瑕佸弽瀹℃牳!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦�!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
+                //杩涜闇�瑕佽繘琛岀殑瀹℃牳/鍙嶅鏍告搷浣�
+                if (IsAudit == 0) //瀹℃牳鎻愪氦
+                {
+                    oCN.BeginTran();
+
+                    //璁板綍杩斿洖淇℃伅
+                    string msg = "";
+
+                    if(oBill.omodel.HMainSourceInterID != 0)
+                    {
+                        //妫�楠屾簮鍗曟槸鍚﹀瓨鍦ㄥ強鍗曟嵁鐘舵��
+                        string sql = "select * from YS_ReceiveOtherBillMain where HInterID = " + oBill.omodel.HMainSourceInterID;
+                        ds = oCN.RunProcReturn(sql, "YS_ReceiveOtherBillMain");
+                        if (ds == null || ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:婧愬崟-鐗规壒鐢宠鍗曚笉瀛樺湪!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else if (ds.Tables[0].Rows[0]["HBillStatus"].ToString() != "2")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:婧愬崟-鐗规壒鐢宠鍗曟湭澶勪簬宸插鏍哥姸鎬�!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        
+                     
+                    }
+
+                    //瀹℃牳鍓嶆帶鍒�=========================================      
+                    string sql1 = "exec h_p_YS_ReceiveOtherBill_BeforeCheckCtrl " + oBill.omodel.HInterID + ",'" + oBill.omodel.HBillNo + "','" + CurUserName + "'";
+                    ds = oCN.RunProcReturn(sql1, "h_p_YS_ReceiveOtherBill_BeforeCheckCtrl");
+                    if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:瀹℃牳鍓嶅垽鏂け璐ワ紝璇蜂笌缃戠粶绠$悊浜哄憳鑱旂郴";
+                        objJsonResult.data = null;
+                        oCN.RollBack();
+                        return objJsonResult;
+                    }
+
+                    if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ;
+                        objJsonResult.data = null;
+                        oCN.RollBack();
+                        return objJsonResult;
+                    }
+                    //==================================================================================      
+
+                    //瀹℃牳鎻愪氦
+                    if (oBill.CheckBill(oBill.omodel.HInterID,oBill.omodel.HBillNo, "h_p_YS_ReceiveOtherBill_AfterCheckCtrl", CurUserName, ref DBUtility.ClsPub.sExeReturnInfo) == true)
+                    {
+                        oCN.Commit();
+
+                        objJsonResult.code = "1";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "瀹℃牳鎴愬姛锛�" + msg;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    else
+                    {
+                        oCN.RollBack();
+
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+                if (IsAudit == 1) //鍙嶅鏍告彁浜�
+                {
+                   
+                    //鍙嶅鏍稿墠鎺у埗=========================================        
+                    string sql1 = "exec h_p_YS_ReceiveOtherBill_BeforeUnCheckCtrl " + oBill.omodel.HInterID + ",'" + oBill.omodel.HBillNo + "','" + CurUserName + "'";
+                    ds = oCN.RunProcReturn(sql1, "h_p_YS_ReceiveOtherBill_BeforeUnCheckCtrl");
+                    if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "鍙嶅鏍稿け璐�!鍘熷洜:鍙嶅鏍稿墠鍒ゆ柇澶辫触锛岃涓庣綉缁滅鐞嗕汉鍛樿仈绯�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+
+                    }
+                    if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "鍙嶅鏍稿け璐�!鍘熷洜:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    //===========================================================          
+
+                    //鍙嶅鏍告彁浜bandonCheck
+                    if (oBill.AbandonCheck(oBill.omodel.HInterID, oBill.omodel.HBillNo, "h_p_YS_ReceiveOtherBill_AfterUnCheckCtrl", CurUserName, ref DBUtility.ClsPub.sExeReturnInfo) == true)
+                    {
+                        objJsonResult.code = "1";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "鍙嶅鏍告垚鍔�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    else
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍙嶅鏍稿け璐�!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                oCN.RollBack();
+
+                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="IsAudit">鍏抽棴(0),鍙嶅叧闂�(1)</param>
+        /// <param name="CurUserName">鍏抽棴浜�</param>
+        /// <returns></returns>
+        [Route("YS_ReceiveOtherBill/CloseYS_ReceiveOtherBill")]
+        [HttpGet]
+        public object CloseYS_ReceiveOtherBill(int HInterID, int IsAudit, string CurUserName)
+        {
+            string ModRightNameCheck = "YS_ReceiveOtherBill_Close";
+            DBUtility.ClsPub.CurUserName = CurUserName;
+            try
+            {
+                //妫�鏌ユ潈闄�
+                if (!DBUtility.ClsPub.Security_Log_second(ModRightNameCheck, 1, false, CurUserName))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍏抽棴澶辫触锛佹棤鏉冮檺锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                //HInterID鏁版嵁鍒ゆ柇
+                if (HInterID <= 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "HInterID灏忎簬0锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
+                Int64 lngBillKey = 0;
+                lngBillKey = DBUtility.ClsPub.isLong(HInterID);                                         //瀵笻InterID杩涜绫诲瀷鐨勮浆鎹�
+                DAL.ClsYS_ReceiveOtherBill oBill = new DAL.ClsYS_ReceiveOtherBill();              //瀹炰緥鍖栧崟鎹搷浣滅被锛岀敤浜庤繘琛岀浉鍏虫搷浣�
+
+                //閽堝闇�瑕佽繘琛岀殑鎿嶄綔锛屾楠屽綋鍓嶅崟鎹殑鐘舵�佹槸鍚︽敮鎸侀渶瑕佽繘琛岀殑鎿嶄綔
+                if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo))                    //鏍规嵁HInterID鑾峰彇璇ュ崟鎹殑鏁版嵁
+                {
+                    if (oBill.omodel.HDeleteMan.Trim() != "")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍗曟嵁宸蹭綔搴�!涓嶈兘杩涜鍏抽棴锛�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    if (oBill.omodel.HChecker.Trim() == "")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍗曟嵁鏈鏍�!涓嶈兘杩涜鍏抽棴锛�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    if (IsAudit == 0)  //鍏抽棴鍒ゆ柇
+                    {
+                        if (oBill.omodel.HCloseMan.Trim() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸插叧闂�!涓嶈兘鍐嶆鍏抽棴锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                    if (IsAudit == 1) //鍙嶅叧闂垽鏂�
+                    {
+                        if (oBill.omodel.HCloseMan.Trim() == "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鏈叧闂�!涓嶉渶瑕佸弽鍏抽棴锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦�!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
+                //杩涜闇�瑕佽繘琛岀殑鍏抽棴/鍙嶅叧闂搷浣�
+                if (IsAudit == 0) //鍏抽棴鎻愪氦
+                {
+                    //鍏抽棴鎻愪氦
+                    if (oBill.CloseBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo) == true)
+                    {
+                        objJsonResult.code = "1";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "鍏抽棴鎴愬姛";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    else
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍏抽棴澶辫触!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+                if (IsAudit == 1) //鍙嶅叧闂彁浜�
+                {
+                    //鍙嶅叧闂彁浜�
+                    if (oBill.CancelClose(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo) == true)
+                    {
+                        objJsonResult.code = "1";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "鍙嶅叧闂垚鍔�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    else
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍙嶅叧闂け璐�!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+                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="IsAudit">浣滃簾(0),鍙嶄綔搴�(1)</param>
+        /// <param name="CurUserName">浣滃簾浜�</param>
+        /// <returns></returns>
+        [Route("YS_ReceiveOtherBill/DeleteYS_ReceiveOtherBill")]
+        [HttpGet]
+        public object DeleteYS_ReceiveOtherBill(int HInterID, int IsAudit, string CurUserName)
+        {
+            string ModRightNameCheck = "YS_ReceiveOtherBill_Delete";
+            DBUtility.ClsPub.CurUserName = CurUserName;
+            try
+            {
+                //妫�鏌ユ潈闄�
+                if (!DBUtility.ClsPub.Security_Log_second(ModRightNameCheck, 1, false, CurUserName))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "浣滃簾澶辫触锛佹棤鏉冮檺锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                //HInterID鏁版嵁鍒ゆ柇
+                if (HInterID <= 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "HInterID灏忎簬0锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
+                Int64 lngBillKey = 0;
+                lngBillKey = DBUtility.ClsPub.isLong(HInterID);                                         //瀵笻InterID杩涜绫诲瀷鐨勮浆鎹�
+                DAL.ClsYS_ReceiveOtherBill oBill = new DAL.ClsYS_ReceiveOtherBill();              //瀹炰緥鍖栧崟鎹搷浣滅被锛岀敤浜庤繘琛岀浉鍏虫搷浣�
+
+                //閽堝闇�瑕佽繘琛岀殑鎿嶄綔锛屾楠屽綋鍓嶅崟鎹殑鐘舵�佹槸鍚︽敮鎸侀渶瑕佽繘琛岀殑鎿嶄綔
+                if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo))                    //鏍规嵁HInterID鑾峰彇璇ュ崟鎹殑鏁版嵁
+                {
+                    if (oBill.omodel.HChecker.Trim() != "")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍗曟嵁宸插鏍�!涓嶈兘杩涜浣滃簾锛�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    if (IsAudit == 0)  //浣滃簾鍒ゆ柇
+                    {
+                        if (oBill.omodel.HDeleteMan.Trim() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸蹭綔搴�!涓嶈兘鍐嶄綔搴燂紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                    if (IsAudit == 1) //鍙嶄綔搴熷垽鏂�
+                    {
+                        if (oBill.omodel.HDeleteMan.Trim() == "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鏈綔搴�!涓嶉渶瑕佸弽浣滃簾锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦�!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
+                //杩涜闇�瑕佽繘琛岀殑浣滃簾/鍙嶄綔搴熸搷浣�
+                if (IsAudit == 0) //浣滃簾鎻愪氦
+                {
+                    //浣滃簾鎻愪氦
+                    if (oBill.Cancelltion(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo) == true)
+                    {
+                        objJsonResult.code = "1";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "浣滃簾鎴愬姛";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    else
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "浣滃簾澶辫触!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+                if (IsAudit == 1) //鍙嶅叧闂彁浜�
+                {
+                    //鍙嶅叧闂彁浜�
+                    if (oBill.AbandonCancelltion(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo) == true)
+                    {
+                        objJsonResult.code = "1";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "鍙嶄綔搴熸垚鍔�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    else
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍙嶄綔搴熷け璐�!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "浣滃簾澶辫触鎴栬�呭弽浣滃簾澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+      
+    }
+}
\ No newline at end of file
diff --git "a/WebAPI/Controllers/\344\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 9779566..e71f4bc 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"
@@ -5,6 +5,9 @@
 using System.Web;
 using System.Web.Http;
 using WebAPI.Models;
+using Newtonsoft.Json.Linq;
+using Model;
+using DBUtility;
 
 namespace WebAPI.Controllers.浠撳瓨绠$悊.棰嗘枡鍙戣揣
 {
@@ -14,34 +17,76 @@
         private json objJsonResult = new json();
         public DataSet ds = new DataSet();
         public SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
+        public DAL.ClsKf_StepFoldOutBill BillOld = new DAL.ClsKf_StepFoldOutBill();
 
-        #region 鍒嗘寮忚皟鍑哄崟 鏌ヨ
+        #region 鍒嗘寮忚皟鍑哄崟 杩斿洖鍒楄〃
 
         [Route("Kf_StepFoldOutBill/GetStepFoldOutBillList")]
         [HttpGet]
-        public object GetStepFoldOutBillList(string sWhere, string user, string Organization)
+        //public object GetStepFoldOutBillList(string sWhere, string user, string Organization)
+        //{
+        //    try
+        //    {
+        //        //鍒ゆ柇鏄惁鏈夋煡璇㈡潈闄�
+        //        if (!DBUtility.ClsPub.Security_Log("Kf_MoveStockStepOutBillQuery", 1, false, user))
+        //        {
+        //            objJsonResult.code = "0";
+        //            objJsonResult.count = 0;
+        //            objJsonResult.Message = "鏃犳煡璇㈡潈闄�!";
+        //            objJsonResult.data = null;
+        //            return objJsonResult;
+        //        }
+
+        //        string sql1 = string.Format("select * from h_v_IF_StepFoldOutBillList where (璋冨叆缁勭粐='" + Organization + "')");
+        //        if (sWhere == null || sWhere.Equals(""))
+        //        {
+        //            ds = oCn.RunProcReturn(sql1 + " order by hmainid desc", "h_v_IF_StepFoldOutBillList");
+        //        }
+        //        else
+        //        {
+        //            string sql = sql1 + sWhere + " order by hmainid desc";
+        //            ds = oCn.RunProcReturn(sql, "h_v_IF_StepFoldOutBillList");
+        //        }
+
+        //        //if (ds.Tables[0].Rows.Count != 0 || ds != null)
+        //        //{
+        //        objJsonResult.code = "1";
+        //        objJsonResult.count = 1;
+        //        objJsonResult.Message = "Sucess锛�";
+        //        objJsonResult.data = ds.Tables[0];
+        //        return objJsonResult;
+        //        //}
+        //        //else
+        //        //{
+        //        //objJsonResult.code = "0";
+        //        //objJsonResult.count = 0;
+        //        //objJsonResult.Message = "鏃犳暟鎹�";
+        //        //objJsonResult.data = null;
+        //        //return objJsonResult;
+        //        //}
+        //    }
+        //    catch (Exception ex)
+        //    {
+        //        objJsonResult.code = "0";
+        //        objJsonResult.count = 0;
+        //        objJsonResult.Message = "娌℃湁杩斿洖浠讳綍璁板綍锛�" + ex.ToString();
+        //        objJsonResult.data = null;
+        //        return objJsonResult;
+        //    }
+        //}
+        public object list(string sWhere)
         {
             try
             {
-                //鍒ゆ柇鏄惁鏈夋煡璇㈡潈闄�
-                if (!DBUtility.ClsPub.Security_Log("Kf_MoveStockStepOutBillQuery", 1, false, user))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "鏃犳煡璇㈡潈闄�!";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-                string sql1 = string.Format("select * from h_v_Kf_MoveStockStepOutBillList where (璋冨叆缁勭粐='" + Organization + "')");
                 if (sWhere == null || sWhere.Equals(""))
                 {
-                    ds = oCn.RunProcReturn(sql1 + " order by hmainid desc", "h_v_Kf_MoveStockStepOutBillList");
+                    ds = oCn.RunProcReturn("select * from h_v_IF_StepFoldOutBillList order by hmainid desc", "h_v_IF_StepFoldOutBillList");
                 }
                 else
                 {
+                    string sql1 = "select * from h_v_IF_StepFoldOutBillList where 1 = 1 ";
                     string sql = sql1 + sWhere + " order by hmainid desc";
-                    ds = oCn.RunProcReturn(sql, "h_v_Kf_MoveStockStepOutBillList");
+                    ds = oCn.RunProcReturn(sql, "h_v_IF_StepFoldOutBillList");
                 }
 
                 //if (ds.Tables[0].Rows.Count != 0 || ds != null)
@@ -61,16 +106,659 @@
                 //return objJsonResult;
                 //}
             }
-            catch (Exception ex)
+            catch (Exception e)
             {
                 objJsonResult.code = "0";
                 objJsonResult.count = 0;
-                objJsonResult.Message = "娌℃湁杩斿洖浠讳綍璁板綍锛�" + ex.ToString();
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 鍒嗘寮忚皟鍑哄崟 鏌ヨ
+        [Route("Kf_StepFoldOutBill/cx")]
+        [HttpGet]
+        public object cx(long HInterID)
+        {
+            try
+            {
+
+                ds = oCn.RunProcReturn("select * from h_v_IF_StepFoldOutBillList where hmainid =" + HInterID, "h_v_IF_StepFoldOutBillList");
+                if (ds == null || ds.Tables[0].Rows.Count == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "false锛�";
+                    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
+
+        #region 鍒嗘寮忚皟鍑哄崟 淇濆瓨/缂栬緫鍔熻兘
+        [Route("Kf_StepFoldOutBill/Kf_StepFoldOutBillEdit")]
+        [HttpPost]
+        public object StepFoldOutBillEdit([FromBody] JObject sMainSub)
+        {
+            try
+            {
+                var _value = sMainSub["sMainSub"].ToString();
+                string msg1 = _value.ToString();
+                oCn.BeginTran();
+                //淇濆瓨涓昏〃
+                objJsonResult = AddBillMain(msg1);
+                if (objJsonResult.code == "0")
+                {
+                    oCn.RollBack();
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = objJsonResult.Message;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                oCn.Commit();
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鍗曟嵁淇濆瓨鎴愬姛锛�";
+                objJsonResult.data = null;
+                return objJsonResult;
+
+            }
+            catch (Exception e)
+            {
+                oCn.RollBack();
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "淇濆瓨澶辫触锛�" + e.ToString();
                 objJsonResult.data = null;
                 return objJsonResult;
             }
         }
 
+        public json AddBillMain(string msg1)
+        {
+            string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+            string msg2 = sArray[0].ToString(); //涓昏〃鏁版嵁
+            string msg3 = sArray[1].ToString(); //瀛愯〃鏁版嵁
+            int OperationType = int.Parse(sArray[2].ToString()); // 鏁版嵁绫诲瀷 1娣诲姞 3淇敼
+            string user = sArray[3].ToString();
+            string msg_allVal = sArray[4].ToString(); //涓昏〃+瀛愯〃鎵�鏈夋暟鎹�
+
+            try
+            {
+                msg2 = "[" + msg2.ToString() + "]";
+                List<ClsKf_StepFoldOutBillMain> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsKf_StepFoldOutBillMain>>(msg2);
+
+                long HInterID = mainList[0].HInterID;//閫掑叆type寰楀埌鐨勫崟鎹甀D
+                string HBillNo = mainList[0].HBillNo;//閫掑叆type寰楀埌鐨勫崟鎹彿
+                long HPRDORGID = mainList[0].HPRDORGID;//缁勭粐
+                DateTime HDate = mainList[0].HDate;//鏃ユ湡
+                string HRemark = mainList[0].HRemark;//澶囨敞
+                long HSupID = mainList[0].HSupID;//渚涘簲鍟�
+                long HEmpID = mainList[0].HEmpID;//浠撶鍛�
+                long HDeptID = mainList[0].HDeptID;//閮ㄩ棬
+                long HWHID = mainList[0].HWHID;//璋冨叆浠撳簱
+                long HSCWHID = mainList[0].HSCWHID;//璋冨嚭浠撳簱
+                long HManagerID = mainList[0].HManagerID;//璐熻矗浜�
+                long HSecManagerID = mainList[0].HSecManagerID;//楠屾敹鍛�
+                long HKeeperID = mainList[0].HKeeperID;//淇濈鍛�
+                string HMaker = user;//鍒跺崟浜�
+                string HExplanation = mainList[0].HExplanation;//鎽樿
+                string HInnerBillNo = mainList[0].HInnerBillNo;//鍐呴儴鍗曟嵁鍙� 
+
+                string HBillType = mainList[0].HBillType;
+                string HBillSubType = mainList[0].HBillSubType;
+                long HBillStatus = mainList[0].HBillStatus;
+                string HMakeDate = mainList[0].HMakeDate;
+                string HChecker = mainList[0].HChecker;
+                string HCheckDate = mainList[0].HCheckDate;
+                string HUpDater = mainList[0].HUpDater;
+                string HUpDateDate = mainList[0].HUpDateDate;
+                string HDeleteMan = mainList[0].HDeleteMan;
+                string HDeleteDate = mainList[0].HDeleteDate;
+                string HCloseMan = mainList[0].HCloseMan;
+                string HCloseDate = mainList[0].HCloseDate;
+                long HCurID = mainList[0].HCurID;
+
+                ds = oCn.RunProcReturn("select * from h_v_IF_StepFoldOutBillList where hmainid=" + HInterID + " and 鍗曟嵁鍙�='" + HBillNo + "'", "h_v_IF_StepFoldOutBillList");
+
+                if ((OperationType == 1 || OperationType == 2) && ds.Tables[0].Rows.Count == 0)//鏂板
+                {
+                    //涓昏〃
+                    oCn.RunProc(@"Insert Into Kf_ICStockBillMain   
+                        (HInterID,HBillNo,HDate,HBillType,HBillSubType,HBillStatus,HYear,HPeriod
+	                    ,HSupID,HWHID,HSCWHID,HEmpID,HManagerID,HSecManagerID,HKeeperID,HDeptID
+	                    ,HMaker,HMakeDate,HChecker,HUpDater
+	                    ,HDeleteMan,HCloseMan
+	                    ,HRemark,HExplanation,HInnerBillNo,HCurID)
+                        values(" + HInterID + ",'" + HBillNo + "','" + HDate + "','" + 1250 + "','" +
+                    HBillSubType + "'," + 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 + "" + ")");
+                }
+                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";
+
+                    oCn.RunProc(sql);
+                    //鍒犻櫎瀛愯〃
+                    oCn.RunProc("delete from Kf_ICStockBillSub where HInterID='" + HInterID + "'");
+                }
+                //淇濆瓨瀛愯〃
+                objJsonResult = AddBillSub(msg3, HInterID, OperationType);
+
+                if (objJsonResult.code == "0")
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = objJsonResult.Message;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = null;
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+
+        public json AddBillSub(string msg3, long HInterID, int OperationType)
+        {
+            List<ClsKf_StepFoldOutBillSub> DetailColl = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsKf_StepFoldOutBillSub>>(msg3);
+
+            int i = 0;
+            foreach (ClsKf_StepFoldOutBillSub oSub in DetailColl)
+            {
+                i++;
+                if (oSub.HQty <= 0 || oSub.HQty == null)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "绗�" + i + "琛岋紝鏁伴噺涓嶈兘涓�0鎴栬�呭皬浜�0";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                if (oSub.HMaterID == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "绗�" + i + "琛岋紝鐗╂枡涓嶈兘涓虹┖";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
+                if (oSub.HUnitID == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "绗�" + i + "琛岋紝璁¢噺鍗曚綅涓嶈兘涓虹┖";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                DataSet Cs;
+                Int64 NewHEntryID = 1;
+                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());
+                    NewHEntryID += 1;
+                }
+
+                oCn.RunProc($@"Insert into Kf_ICStockBillSub 
+                (HInterID,HEntryID,HRemark
+	            ,HMaterID,HUnitID,HSecUnitID,HPropertyID,HBatchNo
+	            ,HWHID,HSCWHID,HSPID,HSCSPID
+	            ,HQtyMust,HQty,HRelationQty,HRelationMoney,HSecUnitRate,HPrice,HMoney,HOrderPrice
+	            ,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType
+	            ,HPOOrderInterID,HPOOrderEntryID,HPOOrderBillNo,HSeOrderInterID,HSeOrderEntryID,HSeOrderBillNo) 
+                 values({HInterID},{NewHEntryID},'{oSub.HRemark}'
+                ,{oSub.HMaterID},{oSub.HUnitID},{oSub.HSecUnitID},{oSub.HPropertyID},'{oSub.HBatchNo}',{oSub.HWHID},{oSub.HSCWHID}
+                ,{oSub.HSPID},{oSub.HSCSPID},{oSub.HQtyMust},{(oSub.HQty == null ? 0 : oSub.HQty)},{oSub.HRelationQty},{oSub.HRelationMoney},{oSub.HSecUnitRate}
+                ,{oSub.HPrice},{oSub.HMoney},{oSub.HOrderPrice}
+                ,{oSub.HSourceInterID},{oSub.HSourceEntryID},'{oSub.HSourceBillNo}','{oSub.HSourceBillType}',{oSub.HPOOrderInterID},{oSub.HPOOrderEntryID}
+                ,'{oSub.HPOOrderBillNo}',{oSub.HSeOrderInterID},{oSub.HSeOrderEntryID},'{oSub.HSeOrderBillNo}')");
+            }
+
+            objJsonResult.code = "1";
+            objJsonResult.count = 1;
+            objJsonResult.Message = null;
+            objJsonResult.data = null;
+            return objJsonResult;
+        }
+
         #endregion
+
+        #region 鍒嗘寮忚皟鍑哄崟 鍒犻櫎鍔熻兘
+        [Route("Fb_StepFoldOutBill/DeltetFb_StepFoldOutBill")]
+        [HttpGet]
+        public object DeltetFb_StepFoldOutBill(string HInterID)
+        {
+            try
+            {
+                oCn.BeginTran();
+                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;
+                objJsonResult.Message = "鍒犻櫎鎴愬姛锛�";
+                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 鍒嗘寮忚皟鍑哄崟 瀹℃牳/鍙嶅鏍�
+        /// <summary>
+        /// 
+        /// </summary>
+        /// <param name="HInterID">鍗曟嵁ID</param>
+        /// <param name="IsAudit">瀹℃牳(0),鍙嶅鏍�(1)</param>
+        /// <param name="CurUserName">瀹℃牳浜�</param>
+        /// <returns></returns>
+        [Route("Kf_StepFoldOutBill/AuditKf_StepFoldOutBill")]
+        [HttpGet]
+        public object AuditKf_StepFoldOutBill(string HInterID, int Type, string user)
+        {
+            string sql = "";
+            //ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
+            try
+            {
+                //鍒ゆ柇鏄惁鏈夊鏍告潈闄�
+                if (!DBUtility.ClsPub.Security_Log("Kf_MoveStockStepOutBill_Check", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳潈闄愬鏍�!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                if (string.IsNullOrWhiteSpace(HInterID))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "HInterID涓虹┖锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                ClsPub.CurUserName = user;
+                BillOld.MvarItemKey = "Kf_ICStockBillMain";
+
+
+                ds = oCn.RunProcReturn("select * from Kf_ICStockBillMain where HInterID = " + int.Parse(HInterID), "Kf_ICStockBillMain");
+                string HBillNo = "";
+                oCn.BeginTran();//寮�濮嬩簨鍔�
+
+                if (ds == null || ds.Tables[0].Rows.Count == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                else
+                {
+                    HBillNo = ds.Tables[0].Rows[0]["HBillNo"].ToString();
+                }
+
+
+
+
+                //Type 1 瀹℃牳  2  鍙嶅鏍�
+                if (Type == 1)
+                {
+                    //瀹℃牳鍓嶆帶鍒�
+                    sql = "exec h_p_Cg_POInStockBill_BeforeCheckCtrl " + int.Parse(HInterID) + ",'" + HBillNo + "','" + user + "'";
+                    ds = oCn.RunProcReturn(sql, "h_p_Cg_POInStockBill_BeforeCheckCtrl");
+                    if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:瀹℃牳鍓嶅垽鏂け璐ワ紝璇蜂笌缃戠粶绠$悊浜哄憳鑱旂郴";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+
+                    }
+                    if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+
+                    if (!BillOld.CheckBill(int.Parse(HInterID), HBillNo, "h_p_Cg_POInStockBill_AfterCheckCtrl", user, ref ClsPub.sExeReturnInfo))
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+                else
+                {
+                    //鍙嶅鏍稿墠鎺у埗
+                    sql = "exec h_p_Cg_POInStockBill_BeforeUnCheckCtrl " + int.Parse(HInterID) + ",'" + HBillNo + "','" + user + "'";
+                    ds = oCn.RunProcReturn(sql, "h_p_Cg_POInStockBill_BeforeUnCheckCtrl");
+                    if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "鍙嶅鏍稿け璐�!鍘熷洜:鍙嶅鏍稿墠鍒ゆ柇澶辫触锛岃涓庣綉缁滅鐞嗕汉鍛樿仈绯�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+
+                    }
+                    if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "鍙嶅鏍稿け璐�!鍘熷洜:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    if (BillOld.AbandonCheck(int.Parse(HInterID), HBillNo, "h_p_Cg_POInStockBill_AfterUnCheckCtrl", user, ref ClsPub.sExeReturnInfo))
+                    {
+                        SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
+
+                    }
+                    else
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+
+                objJsonResult.code = "0";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鎵ц鎴愬姛锛�";
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鎵ц澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 鍒嗘寮忚皟鍑哄崟 鍏抽棴/鍙嶅叧闂姛鑳�
+        [Route("Kf_StepFoldOutBill/CloseKf_StepFoldOutBill")]
+        [HttpGet]
+        public object CloseKf_StepFoldOutBill(string HInterID, int Type, string user)
+        {
+            try
+            {
+                //鍒ゆ柇鏄惁鏈夊垹闄ゆ潈闄�
+                if (!DBUtility.ClsPub.Security_Log("Kf_MoveStockStepOutBill_Close", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳潈闄愬叧闂�!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                if (string.IsNullOrWhiteSpace(HInterID))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "HInterID涓虹┖锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                ClsPub.CurUserName = user;
+                BillOld.MvarItemKey = "Kf_ICStockBillMain";
+                oCn.BeginTran();//寮�濮嬩簨鍔�
+
+                //Type 1 鍏抽棴  2  鍙嶅叧闂�
+                if (Type == 1)
+                {
+                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍏抽棴
+                    DataSet ds;
+                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
+                    ds = oCn.RunProcReturn(sql, BillOld.MvarItemKey);
+                    if (ds == null || ds.Tables[0].Rows.Count == 0)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦紒";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
+                    {
+                        if (ds.Tables[0].Rows[0]["HDeleteMan"] != null && ds.Tables[0].Rows[0]["HDeleteMan"].ToString() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸蹭綔搴�!涓嶈兘杩涜鍏抽棴!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        //if (ds.Tables[0].Rows[0]["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]["HCloseMan"] != null && ds.Tables[0].Rows[0]["HCloseMan"].ToString() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸插叧闂�!涓嶈兘鍐嶆鍏抽棴!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        //鍏抽棴鍗曟嵁
+                        if (!BillOld.CloseBill(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 1;
+                            objJsonResult.Message = "鍏抽棴澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                }
+                else
+                {
+                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍙嶅叧闂�
+                    DataSet ds;
+                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
+                    ds = oCn.RunProcReturn(sql, BillOld.MvarItemKey);
+                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
+                    {
+                        if (ds.Tables[0].Rows[0]["HDeleteMan"] != null && ds.Tables[0].Rows[0]["HDeleteMan"].ToString() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸蹭綔搴�!涓嶈兘杩涜鍏抽棴!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        //if (ds.Tables[0].Rows[0]["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]["HCloseMan"] == null || ds.Tables[0].Rows[0]["HCloseMan"].ToString() == "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鏈叧闂�!涓嶉渶瑕佸啀鍙嶅叧闂�!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        //鍙嶅叧闂崟鎹�
+                        if (!BillOld.CancelClose(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 1;
+                            objJsonResult.Message = "鍙嶅叧闂け璐�!鍘熷洜:" + ClsPub.sExeReturnInfo;
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                }
+
+                oCn.Commit();//鎻愪氦浜嬪姟
+
+                objJsonResult.code = "0";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鎵ц鎴愬姛锛�";
+                objJsonResult.data = null;
+                return objJsonResult; ;
+
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鎵ц澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 鍒嗘寮忚皟鍑哄崟 浣滃簾/鍙嶄綔搴熷姛鑳�
+        [Route("Kf_StepFoldOutBill/CancellKf_StepFoldOutBill")]
+        [HttpGet]
+        public object CancellKf_StepFoldOutBill(string HInterID, int Type, string user)
+        {
+            try
+            {
+                //鍒ゆ柇鏄惁鏈夊垹闄ゆ潈闄�
+                if (!DBUtility.ClsPub.Security_Log("Kf_MoveStockStepOutBill_Delete", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳潈闄愪綔搴�!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                if (string.IsNullOrWhiteSpace(HInterID))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "HInterID涓虹┖锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                ClsPub.CurUserName = user;
+
+                oCn.BeginTran();//寮�濮嬩簨鍔�
+
+                //Type 1 浣滃簾  2  鍙嶄綔搴�
+                if (Type == 1)
+                {
+                    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))
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "鍙嶄綔搴熷け璐�!鍘熷洜:" + ClsPub.sExeReturnInfo;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+
+                oCn.Commit();//鎻愪氦浜嬪姟
+
+                objJsonResult.code = "0";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鎵ц鎴愬姛锛�";
+                objJsonResult.data = null;
+                return objJsonResult; ;
+
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鎵ц澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
     }
 }
\ No newline at end of file
diff --git "a/WebAPI/Controllers/\344\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 f82e477..e8c9713 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"
@@ -6,6 +6,8 @@
 using System.Web;
 using System.Web.Http;
 using WebAPI.Models;
+using Newtonsoft.Json.Linq;
+using Model;
 
 namespace WebAPI.Controllers.浠撳瓨绠$悊.楠屾敹鍏ュ簱
 {
@@ -13,37 +15,81 @@
     {
         public DBUtility.ClsPub.Enum_BillStatus BillStatus;//鍗曟嵁鐘舵�侊紙鏂板锛屼慨鏀癸紝娴忚锛屾洿鏂板崟浠凤紝鍙樻洿锛�
         private json objJsonResult = new json();
-        public DAL.ClsCg_POInStockBill BillOld = new DAL.ClsCg_POInStockBill();
+        //public DAL.ClsCg_POInStockBill BillOld = new DAL.ClsCg_POInStockBill();
         public DataSet ds = new DataSet();
         public SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+        public DAL.ClsKf_StepFoldInBill BillOld = new DAL.ClsKf_StepFoldInBill();
 
-        #region 鍒嗘寮忚皟鍏ュ崟 鏌ヨ
+        #region 鍒嗘寮忚皟鍏ュ崟 杩斿洖鍒楄〃
 
         [Route("Kf_StepFoldinBill/GetStepFoldinBillList")]
         [HttpGet]
-        public object GetStepFoldinBillList(string sWhere, string user, string Organization)
+        //public object GetStepFoldinBillList(string sWhere, string user, string Organization)
+        //{
+        //    try
+        //    {
+        //        //鍒ゆ柇鏌ヨ鏉冮檺
+        //        if (!DBUtility.ClsPub.Security_Log("Fb_StepFoldinBill_Query", 1, false, user))
+        //        {
+        //            objJsonResult.code = "0";
+        //            objJsonResult.count = 0;
+        //            objJsonResult.Message = "鏃犳煡璇㈡潈闄�!";
+        //            objJsonResult.data = null;
+        //            return objJsonResult;
+        //        }
+
+        //        string sql1 = string.Format("select * from h_v_Kf_MoveStockStepInBillList where (璋冨叆缁勭粐='" + Organization + "')");
+        //        if (sWhere == null || sWhere.Equals(""))
+        //        {
+        //            ds = oCN.RunProcReturn(sql1 + " order by hmainid desc", "h_v_Kf_MoveStockStepInBillList");
+        //        }
+        //        else
+        //        {
+        //            string sql = sql1 + sWhere + " order by hmainid desc";
+        //            ds = oCN.RunProcReturn(sql, "h_v_Kf_MoveStockStepInBillList");
+        //        }
+
+        //        //if (ds.Tables[0].Rows.Count != 0 || ds != null)
+        //        //{
+        //        objJsonResult.code = "1";
+        //        objJsonResult.count = 1;
+        //        objJsonResult.Message = "Sucess锛�";
+        //        objJsonResult.data = ds.Tables[0];
+        //        return objJsonResult;
+        //        //}
+        //        //else
+        //        //{
+        //        //objJsonResult.code = "0";
+        //        //objJsonResult.count = 0;
+        //        //objJsonResult.Message = "鏃犳暟鎹�";
+        //        //objJsonResult.data = null;
+        //        //return objJsonResult;
+        //        //}
+        //    }
+        //    catch (Exception ex)
+        //    {
+        //        objJsonResult.code = "0";
+        //        objJsonResult.count = 0;
+        //        objJsonResult.Message = "娌℃湁杩斿洖浠讳綍璁板綍锛�" + ex.ToString();
+        //        objJsonResult.data = null;
+        //        return objJsonResult;
+        //    }
+        //}
+
+        //#endregion
+        public object list(string sWhere)
         {
             try
             {
-                //鍒ゆ柇鏌ヨ鏉冮檺
-                if (!DBUtility.ClsPub.Security_Log("Fb_StepFoldinBill_Query", 1, false, user))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "鏃犳煡璇㈡潈闄�!";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-                string sql1 = string.Format("select * from h_v_Kf_MoveStockStepInBillList where (璋冨叆缁勭粐='" + Organization + "')");
                 if (sWhere == null || sWhere.Equals(""))
                 {
-                    ds = oCN.RunProcReturn(sql1 + " order by hmainid desc", "h_v_Kf_MoveStockStepInBillList");
+                    ds = oCN.RunProcReturn("select * from h_v_IF_StepFoldInBillList order by hmainid desc", "h_v_IF_StepFoldInBillList");
                 }
                 else
                 {
+                    string sql1 = "select * from h_v_IF_StepFoldInBillList where 1 = 1 ";
                     string sql = sql1 + sWhere + " order by hmainid desc";
-                    ds = oCN.RunProcReturn(sql, "h_v_Kf_MoveStockStepInBillList");
+                    ds = oCN.RunProcReturn(sql, "h_v_IF_StepFoldInBillList");
                 }
 
                 //if (ds.Tables[0].Rows.Count != 0 || ds != null)
@@ -63,17 +109,292 @@
                 //return objJsonResult;
                 //}
             }
-            catch (Exception ex)
+            catch (Exception e)
             {
                 objJsonResult.code = "0";
                 objJsonResult.count = 0;
-                objJsonResult.Message = "娌℃湁杩斿洖浠讳綍璁板綍锛�" + ex.ToString();
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 鍒嗘寮忚皟鍏ュ崟 鏌ヨ
+        [Route("Kf_StepFoldInBill/cx")]
+        [HttpGet]
+        public object cx(long HInterID)
+        {
+            try
+            {
+
+                ds = oCN.RunProcReturn("select * from h_v_IF_StepFoldInBillList where hmainid =" + HInterID, "h_v_IF_StepFoldInBillList");
+                if (ds == null || ds.Tables[0].Rows.Count == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "false锛�";
+                    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
+
+        #region 鍒嗘寮忚皟鍏ュ崟 淇濆瓨/缂栬緫鍔熻兘
+        [Route("Kf_StepFoldInBill/Kf_StepFoldInBillEdit")]
+        [HttpPost]
+        public object StepFoldInBillEdit([FromBody] JObject sMainSub)
+        {
+            try
+            {
+                var _value = sMainSub["sMainSub"].ToString();
+                string msg1 = _value.ToString();
+                oCN.BeginTran();
+                //淇濆瓨涓昏〃
+                objJsonResult = AddBillMain(msg1);
+                if (objJsonResult.code == "0")
+                {
+                    oCN.RollBack();
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = objJsonResult.Message;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                oCN.Commit();
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鍗曟嵁淇濆瓨鎴愬姛锛�";
+                objJsonResult.data = null;
+                return objJsonResult;
+
+            }
+            catch (Exception e)
+            {
+                oCN.RollBack();
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "淇濆瓨澶辫触锛�" + e.ToString();
                 objJsonResult.data = null;
                 return objJsonResult;
             }
         }
 
+        public json AddBillMain(string msg1)
+        {
+            string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+            string msg2 = sArray[0].ToString(); //涓昏〃鏁版嵁
+            string msg3 = sArray[1].ToString(); //瀛愯〃鏁版嵁
+            int OperationType = int.Parse(sArray[2].ToString()); // 鏁版嵁绫诲瀷 1娣诲姞 3淇敼
+            string user = sArray[3].ToString();
+            string msg_allVal = sArray[4].ToString(); //涓昏〃+瀛愯〃鎵�鏈夋暟鎹�
+
+            try
+            {
+                msg2 = "[" + msg2.ToString() + "]";
+                List<ClsKf_StepFoldInBillMain> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsKf_StepFoldInBillMain>>(msg2);
+
+                long HInterID = mainList[0].HInterID;//閫掑叆type寰楀埌鐨勫崟鎹甀D
+                string HBillNo = mainList[0].HBillNo;//閫掑叆type寰楀埌鐨勫崟鎹彿
+                long HPRDORGID = mainList[0].HPRDORGID;//缁勭粐
+                DateTime HDate = mainList[0].HDate;//鏃ユ湡
+                string HRemark = mainList[0].HRemark;//澶囨敞
+                long HSupID = mainList[0].HSupID;//渚涘簲鍟�
+                long HPSStyleID = mainList[0].HPSStyleID;//閲囪喘鏂瑰紡
+                long HEmpID = mainList[0].HEmpID;//浠撶鍛�
+                long HDeptID = mainList[0].HDeptID;//閮ㄩ棬
+                long HWHID = mainList[0].HWHID;//璋冨叆浠撳簱
+                long HSCWHID = mainList[0].HSCWHID;//璋冨嚭浠撳簱
+                long HManagerID = mainList[0].HManagerID;//璐熻矗浜�
+                long HSecManagerID = mainList[0].HSecManagerID;//楠屾敹鍛�
+                long HKeeperID = mainList[0].HKeeperID;//淇濈鍛�
+                string HMaker = user;//鍒跺崟浜�
+                string HExplanation = mainList[0].HExplanation;//鎽樿
+                string HInnerBillNo = mainList[0].HInnerBillNo;//鍐呴儴鍗曟嵁鍙� 
+
+                string HBillType = mainList[0].HBillType;
+                string HBillSubType = mainList[0].HBillSubType;
+                long HBillStatus = mainList[0].HBillStatus;
+                string HMakeDate = mainList[0].HMakeDate;
+                string HChecker = mainList[0].HChecker;
+                string HCheckDate = mainList[0].HCheckDate;
+                string HUpDater = mainList[0].HUpDater;
+                string HUpDateDate = mainList[0].HUpDateDate;
+                string HDeleteMan = mainList[0].HDeleteMan;
+                string HDeleteDate = mainList[0].HDeleteDate;
+                string HCloseMan = mainList[0].HCloseMan;
+                string HCloseDate = mainList[0].HCloseDate;
+                long HCurID = mainList[0].HCurID;
+
+                ds = oCN.RunProcReturn("select * from h_v_IF_StepFoldInBillList where hmainid=" + HInterID + " and 鍗曟嵁鍙�='" + HBillNo + "'", "h_v_IF_StepFoldInBillList");
+
+                if ((OperationType == 1 || OperationType == 2) && ds.Tables[0].Rows.Count == 0)//鏂板
+                {
+                    //涓昏〃
+                    oCN.RunProc(@"Insert Into Kf_ICStockBillMain   
+                        (HInterID,HBillNo,HDate,HBillType,HBillSubType,HBillStatus,HYear,HPeriod
+	                    ,HSupID,HWHID,HSCWHID,HEmpID,HManagerID,HSecManagerID,HKeeperID,HDeptID
+	                    ,HMaker,HMakeDate,HChecker,HUpDater
+	                    ,HDeleteMan,HCloseMan
+	                    ,HRemark,HExplanation,HInnerBillNo,HCurID)
+                        values(" + HInterID + ",'" + HBillNo + "','" + HDate + "','" + 1251 + "','" +
+                    HBillSubType + "'," + 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 + "" + ")");
+                }
+                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";
+
+                    oCN.RunProc(sql);
+                    //鍒犻櫎瀛愯〃
+                    oCN.RunProc("delete from Kf_ICStockBillSub where HInterID='" + HInterID + "'");
+                }
+                //淇濆瓨瀛愯〃
+                objJsonResult = AddBillSub(msg3, HInterID, OperationType);
+
+                if (objJsonResult.code == "0")
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = objJsonResult.Message;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = null;
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+
+        public json AddBillSub(string msg3, long HInterID, int OperationType)
+        {
+            List<ClsKf_StepFoldInBillSub> DetailColl = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsKf_StepFoldInBillSub>>(msg3);
+
+            int i = 0;
+            foreach (ClsKf_StepFoldInBillSub oSub in DetailColl)
+            {
+                i++;
+                if (oSub.HQty <= 0 || oSub.HQty == null)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "绗�" + i + "琛岋紝鏁伴噺涓嶈兘涓�0鎴栬�呭皬浜�0";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                if (oSub.HMaterID == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "绗�" + i + "琛岋紝鐗╂枡涓嶈兘涓虹┖";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
+                if (oSub.HUnitID == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "绗�" + i + "琛岋紝璁¢噺鍗曚綅涓嶈兘涓虹┖";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                DataSet Cs;
+                Int64 NewHEntryID = 1;
+                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());
+                    NewHEntryID += 1;
+                }
+
+                oCN.RunProc($@"Insert into Kf_ICStockBillSub 
+                (HInterID,HEntryID,HRemark
+	            ,HMaterID,HUnitID,HSecUnitID,HPropertyID,HBatchNo
+	            ,HWHID,HSCWHID,HSPID,HSCSPID
+	            ,HQtyMust,HQty,HRelationQty,HRelationMoney,HSecUnitRate,HPrice,HMoney,HOrderPrice
+	            ,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType
+	            ,HPOOrderInterID,HPOOrderEntryID,HPOOrderBillNo,HSeOrderInterID,HSeOrderEntryID,HSeOrderBillNo) 
+                 values({HInterID},{NewHEntryID},'{oSub.HRemark}'
+                ,{oSub.HMaterID},{oSub.HUnitID},{oSub.HSecUnitID},{oSub.HPropertyID},'{oSub.HBatchNo}',{oSub.HWHID},{oSub.HSCWHID}
+                ,{oSub.HSPID},{oSub.HSCSPID},{oSub.HQtyMust},{(oSub.HQty == null ? 0 : oSub.HQty)},{oSub.HRelationQty},{oSub.HRelationMoney},{oSub.HSecUnitRate}
+                ,{oSub.HPrice},{oSub.HMoney},{oSub.HOrderPrice}
+                ,{oSub.HSourceInterID},{oSub.HSourceEntryID},'{oSub.HSourceBillNo}','{oSub.HSourceBillType}',{oSub.HPOOrderInterID},{oSub.HPOOrderEntryID}
+                ,'{oSub.HPOOrderBillNo}',{oSub.HSeOrderInterID},{oSub.HSeOrderEntryID},'{oSub.HSeOrderBillNo}')");
+            }
+
+            objJsonResult.code = "1";
+            objJsonResult.count = 1;
+            objJsonResult.Message = null;
+            objJsonResult.data = null;
+            return objJsonResult;
+        }
+
         #endregion
+
+        #region 鍒嗘寮忚皟鍏ュ崟 鍒犻櫎鍔熻兘
+        [Route("Fb_StepFoldInBill/DeltetFb_StepFoldInBill")]
+        [HttpGet]
+        public object DeltetFb_StepFoldInBill(string HInterID)
+        {
+            try
+            {
+                oCN.BeginTran();
+                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;
+                objJsonResult.Message = "鍒犻櫎鎴愬姛锛�";
+                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 鍒嗘寮忚皟鍏ュ崟 瀹℃牳/鍙嶅鏍�
         /// <summary>
@@ -83,10 +404,12 @@
         /// <param name="IsAudit">瀹℃牳(0),鍙嶅鏍�(1)</param>
         /// <param name="CurUserName">瀹℃牳浜�</param>
         /// <returns></returns>
-        [Route("Fb_StepFoldinBill/AuditFb_StepFoldinBill")]
+        [Route("Kf_StepFoldInBill/AuditKf_StepFoldInBill")]
         [HttpGet]
-        public object AuditFb_StepFoldinBill(string HInterID, int Type, string user)
+        public object AuditKf_StepFoldInBill(string HInterID, int Type, string user)
         {
+            string sql = "";
+            //ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
             try
             {
                 //鍒ゆ柇鏄惁鏈夊鏍告潈闄�
@@ -110,113 +433,105 @@
 
                 ClsPub.CurUserName = user;
                 BillOld.MvarItemKey = "Kf_ICStockBillMain";
+
+
+                ds = oCN.RunProcReturn("select * from Kf_ICStockBillMain where HInterID = " + int.Parse(HInterID), "Kf_ICStockBillMain");
+                string HBillNo = "";
                 oCN.BeginTran();//寮�濮嬩簨鍔�
+
+                if (ds == null || ds.Tables[0].Rows.Count == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                else
+                {
+                    HBillNo = ds.Tables[0].Rows[0]["HBillNo"].ToString();
+                }
+
+
+
 
                 //Type 1 瀹℃牳  2  鍙嶅鏍�
                 if (Type == 1)
                 {
-                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡瀹℃牳
-                    DataSet ds;
-                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
-                    if (ds == null || ds.Tables[0].Rows.Count == 0)
+                    //瀹℃牳鍓嶆帶鍒�
+                    sql = "exec h_p_Cg_POInStockBill_BeforeCheckCtrl " + int.Parse(HInterID) + ",'" + HBillNo + "','" + user + "'";
+                    ds = oCN.RunProcReturn(sql, "h_p_Cg_POInStockBill_BeforeCheckCtrl");
+                    if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
                     {
                         objJsonResult.code = "0";
-                        objJsonResult.count = 0;
-                        objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦紒";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:瀹℃牳鍓嶅垽鏂け璐ワ紝璇蜂笌缃戠粶绠$悊浜哄憳鑱旂郴";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+
+                    }
+                    if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ;
                         objJsonResult.data = null;
                         return objJsonResult;
                     }
-                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
+
+                    if (!BillOld.CheckBill(int.Parse(HInterID), HBillNo, "h_p_Cg_POInStockBill_AfterCheckCtrl", user, ref ClsPub.sExeReturnInfo))
                     {
-                        if (ds.Tables[0].Rows[0]["HCloseMan"] != null && ds.Tables[0].Rows[0]["HCloseMan"].ToString() != "")
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = "鍗曟嵁宸插叧闂�!涓嶈兘鍐嶆瀹℃牳锛�";
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
-                        if (ds.Tables[0].Rows[0]["HDeleteMan"] != null && ds.Tables[0].Rows[0]["HDeleteMan"].ToString() != "")
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = "鍗曟嵁宸蹭綔搴�!涓嶈兘鍐嶆瀹℃牳锛�";
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
-                        if (ds.Tables[0].Rows[0]["HChecker"] != null && ds.Tables[0].Rows[0]["HChecker"].ToString() != "")
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = "鍗曟嵁宸插鏍�!涓嶈兘鍐嶆瀹℃牳锛�";
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
-                        //瀹℃牳鍗曟嵁
-                        if (!BillOld.CheckBill(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 1;
-                            objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
+                        objJsonResult.data = null;
+                        return objJsonResult;
                     }
                 }
                 else
                 {
-                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍙嶅鏍�
-                    DataSet ds;
-                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
-                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
+                    //鍙嶅鏍稿墠鎺у埗
+                    sql = "exec h_p_Cg_POInStockBill_BeforeUnCheckCtrl " + int.Parse(HInterID) + ",'" + HBillNo + "','" + user + "'";
+                    ds = oCN.RunProcReturn(sql, "h_p_Cg_POInStockBill_BeforeUnCheckCtrl");
+                    if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
                     {
-                        if (ds.Tables[0].Rows[0]["HCloseMan"] != null && ds.Tables[0].Rows[0]["HCloseMan"].ToString() != "")
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = "鍗曟嵁宸插叧闂�!涓嶈兘杩涜鍙嶅鏍革紒";
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
-                        if (ds.Tables[0].Rows[0]["HDeleteMan"] != null && ds.Tables[0].Rows[0]["HDeleteMan"].ToString() != "")
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = "鍗曟嵁宸蹭綔搴�!涓嶈兘杩涜鍙嶅鏍革紒";
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
-                        if (ds.Tables[0].Rows[0]["HChecker"] == null || ds.Tables[0].Rows[0]["HChecker"].ToString() == "")
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = "鍗曟嵁鏈鏍�!涓嶉渶瑕佸弽瀹℃牳!";
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
-                        //鍙嶅鏍稿崟鎹�
-                        if (!BillOld.AbandonCheck(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 1;
-                            objJsonResult.Message = "鍙嶅鏍稿け璐�!鍘熷洜:" + ClsPub.sExeReturnInfo;
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "鍙嶅鏍稿け璐�!鍘熷洜:鍙嶅鏍稿墠鍒ゆ柇澶辫触锛岃涓庣綉缁滅鐞嗕汉鍛樿仈绯�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+
+                    }
+                    if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "鍙嶅鏍稿け璐�!鍘熷洜:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    if (BillOld.AbandonCheck(int.Parse(HInterID), HBillNo, "h_p_Cg_POInStockBill_AfterUnCheckCtrl", user, ref ClsPub.sExeReturnInfo))
+                    {
+                        SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
+
+                    }
+                    else
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
+                        objJsonResult.data = null;
+                        return objJsonResult;
                     }
                 }
-
-                oCN.Commit();//鎻愪氦浜嬪姟
 
                 objJsonResult.code = "0";
                 objJsonResult.count = 1;
                 objJsonResult.Message = "鎵ц鎴愬姛锛�";
                 objJsonResult.data = null;
-                return objJsonResult; ;
-
+                return objJsonResult;
             }
+
             catch (Exception e)
             {
                 objJsonResult.code = "0";
@@ -229,9 +544,9 @@
         #endregion
 
         #region 鍒嗘寮忚皟鍏ュ崟 鍏抽棴/鍙嶅叧闂姛鑳�
-        [Route("Fb_StepFoldinBill/CloseFb_StepFoldinBill")]
+        [Route("Kf_StepFoldInBill/CloseKf_StepFoldInBill")]
         [HttpGet]
-        public object CloseFb_StepFoldinBill(string HInterID, int Type, string user)
+        public object CloseKf_StepFoldInBill(string HInterID, int Type, string user)
         {
             try
             {
@@ -283,14 +598,14 @@
                             objJsonResult.data = null;
                             return objJsonResult;
                         }
-                        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]["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]["HCloseMan"] != null && ds.Tables[0].Rows[0]["HCloseMan"].ToString() != "")
                         {
@@ -327,14 +642,14 @@
                             objJsonResult.data = null;
                             return objJsonResult;
                         }
-                        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]["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]["HCloseMan"] == null || ds.Tables[0].Rows[0]["HCloseMan"].ToString() == "")
                         {
                             objJsonResult.code = "0";
@@ -377,13 +692,13 @@
 
 
         #region 鍒嗘寮忚皟鍏ュ崟 浣滃簾/鍙嶄綔搴熷姛鑳�
-        [Route("Fb_StepFoldinBill/DropFb_StepFoldinBill")]
+        [Route("Kf_StepFoldInBill/CancellKf_StepFoldInBill")]
         [HttpGet]
-        public object DropFb_StepFoldinBill(string HInterID, int Type, string user)
+        public object CancellKf_StepFoldInBill(string HInterID, int Type, string user)
         {
             try
             {
-                //鍒ゆ柇鏄惁鏈変綔搴熸潈闄�
+                //鍒ゆ柇鏄惁鏈夊垹闄ゆ潈闄�
                 if (!DBUtility.ClsPub.Security_Log("Fb_StepFoldinBill_Delete", 1, false, user))
                 {
                     objJsonResult.code = "0";
@@ -403,86 +718,30 @@
                 }
 
                 ClsPub.CurUserName = user;
-                BillOld.MvarItemKey = "Kf_ICStockBillMain";
+
                 oCN.BeginTran();//寮�濮嬩簨鍔�
 
                 //Type 1 浣滃簾  2  鍙嶄綔搴�
                 if (Type == 1)
                 {
-                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡浣滃簾
-                    DataSet ds;
-                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
-                    if (ds == null || ds.Tables[0].Rows.Count == 0)
+                    if (!BillOld.Cancelltion(int.Parse(HInterID), ref ClsPub.sExeReturnInfo))
                     {
                         objJsonResult.code = "0";
-                        objJsonResult.count = 0;
-                        objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦紒";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "浣滃簾澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
                         objJsonResult.data = null;
                         return objJsonResult;
-                    }
-                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
-                    {
-                        if (ds.Tables[0].Rows[0]["HChecker"] != null && ds.Tables[0].Rows[0]["HChecker"].ToString() != "")
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = "鍗曟嵁宸插鏍�!涓嶈兘杩涜浣滃簾!";
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
-                        if (ds.Tables[0].Rows[0]["HDeleteMan"] != null && ds.Tables[0].Rows[0]["HDeleteMan"].ToString() != "")
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = "鍗曟嵁宸蹭綔搴�!涓嶉渶瑕佸啀浣滃簾!";
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
-                        //浣滃簾鍗曟嵁
-                        if (!BillOld.Cancelltion(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 1;
-                            objJsonResult.Message = "浣滃簾澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
                     }
                 }
                 else
                 {
-                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍙嶄綔搴�
-                    DataSet ds;
-                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
-                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
+                    if (!BillOld.AbandonCancelltion(int.Parse(HInterID), ref ClsPub.sExeReturnInfo))
                     {
-                        if (ds.Tables[0].Rows[0]["HChecker"] != null && ds.Tables[0].Rows[0]["HChecker"].ToString() != "")
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = "鍗曟嵁宸插鏍�!涓嶈兘杩涜浣滃簾!";
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
-                        if (ds.Tables[0].Rows[0]["HDeleteMan"] == null || ds.Tables[0].Rows[0]["HDeleteMan"].ToString() == "")
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = "鍗曟嵁鏈綔搴�!涓嶉渶瑕佸啀鍙嶄綔搴�!";
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
-                        //鍙嶄綔搴熷崟鎹�
-                        if (!BillOld.AbandonCancelltion(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 1;
-                            objJsonResult.Message = "鍙嶄綔搴熷け璐�!鍘熷洜:" + ClsPub.sExeReturnInfo;
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "鍙嶄綔搴熷け璐�!鍘熷洜:" + ClsPub.sExeReturnInfo;
+                        objJsonResult.data = null;
+                        return objJsonResult;
                     }
                 }
 
diff --git "a/WebAPI/Controllers/\345\267\245\350\265\204\347\256\241\347\220\206/Pay_DuSubsidyItemBillController.cs" "b/WebAPI/Controllers/\345\267\245\350\265\204\347\256\241\347\220\206/Pay_DuSubsidyItemBillController.cs"
index c4b7cf1..631f096 100644
--- "a/WebAPI/Controllers/\345\267\245\350\265\204\347\256\241\347\220\206/Pay_DuSubsidyItemBillController.cs"
+++ "b/WebAPI/Controllers/\345\267\245\350\265\204\347\256\241\347\220\206/Pay_DuSubsidyItemBillController.cs"
@@ -18,19 +18,589 @@
 {
     public class Pay_DuSubsidyItemBillController : ApiController
     {
-        public DBUtility.ClsPub.Enum_BillStatus BillStatus;//鍗曟嵁鐘舵�侊紙鏂板锛屼慨鏀癸紝娴忚锛屾洿鏂板崟浠凤紝鍙樻洿锛�
-        private json objJsonResult = new json();
+        public DBUtility.ClsPub.Enum_BillStatus BillStatus;
+        public const string ModName = "2233";                   //鍗曟嵁绫诲瀷
+        public const string ModCaption = "鎵hˉ椤圭洰璐圭敤鍗�";          //鍗曟嵁鍚嶇О
+        public const string ModRightName = "Pay_DuSubsidyItemBill";
+        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();
-        public SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+        private json objJsonResult = new json();
+        SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
+        public DAL.ClsPay_DuSubsidyItemBill oBill = new DAL.ClsPay_DuSubsidyItemBill();
+        public DAL.ClsPay_DuSubsidyItemBill BillOld = new DAL.ClsPay_DuSubsidyItemBill();
         DAL.ClsGy_Employee_View oEmp = new DAL.ClsGy_Employee_View();
         DAL.ClsGy_Department_View oDept = new DAL.ClsGy_Department_View();
         DAL.ClsGy_Group_View oGroup = new DAL.ClsGy_Group_View();
         DAL.ClsGy_ORGANIZATIONS_View oOrg = new DAL.ClsGy_ORGANIZATIONS_View();
         DAL.ClsGy_DuSubsidyItem_View oDuSItem = new DAL.ClsGy_DuSubsidyItem_View();
-        public DAL.ClsPay_DuSubsidyItemBill BillOld = new DAL.ClsPay_DuSubsidyItemBill();
-        Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter();
-        string user_LongShan = "";
-        string HName_LongShan = "";
+
+
+        #region 鎵hˉ椤圭洰璐圭敤鍗曞垪琛�
+        /// <summary>
+        /// 鑾峰彇鎵hˉ椤圭洰璐圭敤鍗曞垪琛ㄤ俊鎭�
+        /// </summary>
+        /// <returns></returns>
+        [Route("Pay_DuSubsidyItemBillController/GetPay_DuSubsidyItemBillList_Json")]
+        [HttpGet]
+        public object GetPay_DuSubsidyItemBillList_Json(string sWhere, string HMaker)
+        {
+            try
+            {
+                //鍒ゆ柇鏉冮檺
+                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 h_v_Pay_DuSubsidyItemBillList where 1=1 " + sWhere + " order by hmainid desc", "h_v_Pay_DuSubsidyItemBillList");
+                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 鎵hˉ椤圭洰璐圭敤鍗曞垹闄�
+        /// <summary>
+        /// 鍒犻櫎鎵hˉ椤圭洰璐圭敤鍗�
+        /// </summary>
+        /// <returns></returns>
+        [Route("Pay_DuSubsidyItemBillController/GetPay_DuSubsidyItemBill_Delete_Json")]
+        [HttpGet]
+        public object GetPay_DuSubsidyItemBill_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))
+                {
+                    //鍒ゆ柇浼氳鏈熸槸鍚﹀悎鐞�
+                    string s = "";
+                    int sYear = 0;
+                    int sPeriod = 0;
+                    if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod_Pay(oBill.omodel.HDate, ref sYear, ref sPeriod, ref s) == false)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = s;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    //鍒犻櫎鍓嶆帶鍒�
+                    DataSet BeforeDs = oCn.RunProcReturn("Exec h_p_Pay_DuSubsidyItemBill_BeforeDelCtrl " + HInterID.ToString() + ",'" + HMaker + "'", "h_p_Pay_DuSubsidyItemBill_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_Pay_DuSubsidyItemBill_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 = "鍒犻櫎鎵hˉ椤圭洰璐圭敤鍗曟垚鍔燂紒";
+                        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 = "鍒犻櫎鎵hˉ椤圭洰璐圭敤鍗曞け璐ワ紒" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 鎵hˉ椤圭洰璐圭敤鍗曞鏍�/鍙嶅鏍�
+        /// <summary>
+        /// 瀹℃牳/鍙嶅鏍告墸琛ラ」鐩垂鐢ㄥ崟
+        /// </summary>
+        /// <param name="HInterID">鍗曟嵁ID</param>
+        /// <param name="Type">瀹℃牳(1),鍙嶅鏍�(2)</param>
+        /// <param name="HMaker">瀹℃牳浜�</param>
+        /// <returns></returns>
+        [Route("Pay_DuSubsidyItemBillController/GetPay_DuSubsidyItemBill_Check_Json")]
+        [HttpGet]
+        public object GetPay_DuSubsidyItemBill_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))
+                {
+                    //鍒ゆ柇浼氳鏈熸槸鍚﹀悎鐞�
+                    string s = "";
+                    int sYear = 0;
+                    int sPeriod = 0;
+                    if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod_Pay(oBill.omodel.HDate, ref sYear, ref sPeriod, ref s) == false)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = s;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+
+                    //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_Pay_DuSubsidyItemBill_BeforeCheckCtrl " + HInterID.ToString() + ",'" + HMaker + "'", "h_p_Pay_DuSubsidyItemBill_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_Pay_DuSubsidyItemBill_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_Pay_DuSubsidyItemBill_BeforeUnCheckCtrl " + HInterID.ToString() + ",'" + HMaker + "'", "h_p_Pay_DuSubsidyItemBill_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_Pay_DuSubsidyItemBill_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 = "瀹℃牳鎴栧弽瀹℃牳鎵hˉ椤圭洰璐圭敤鍗曞け璐ワ紒" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 鎵hˉ椤圭洰璐圭敤鍗曞叧闂�/鍙嶅叧闂�
+        /// <summary>
+        /// 鍏抽棴/鍙嶅叧闂墸琛ラ」鐩垂鐢ㄥ崟
+        /// </summary>
+        /// <param name="HInterID">鍗曟嵁ID</param>
+        /// <param name="Type">鍏抽棴(1),鍙嶅叧闂�(2)</param>
+        /// <param name="HMaker">鍏抽棴浜�</param>
+        /// <returns></returns>
+        [Route("Pay_DuSubsidyItemBillController/GetPay_DuSubsidyItemBill_Close_Json")]
+        [HttpGet]
+        public object GetPay_DuSubsidyItemBill_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))
+                {
+                    //鍒ゆ柇浼氳鏈熸槸鍚﹀悎鐞�
+                    string s = "";
+                    int sYear = 0;
+                    int sPeriod = 0;
+                    if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod_Pay(oBill.omodel.HDate, ref sYear, ref sPeriod, ref s) == false)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = s;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+
+                    //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 = "鍏抽棴鎴栧弽鍏抽棴鎵hˉ椤圭洰璐圭敤鍗曞け璐ワ紒" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 鎵hˉ椤圭洰璐圭敤鍗曚綔搴�/鍙嶄綔搴�
+        /// <summary>
+        /// 浣滃簾/鍙嶄綔搴熸墸琛ラ」鐩垂鐢ㄥ崟
+        /// </summary>
+        /// <param name="HInterID">鍗曟嵁ID</param>
+        /// <param name="Type">浣滃簾(1),鍙嶄綔搴�(2)</param>
+        /// <param name="HMaker">浣滃簾浜�</param>
+        /// <returns></returns>
+        [Route("Pay_DuSubsidyItemBillController/GetPay_DuSubsidyItemBill_Cancelltion_Json")]
+        [HttpGet]
+        public object GetPay_DuSubsidyItemBill_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))
+                {
+                    //鍒ゆ柇浼氳鏈熸槸鍚﹀悎鐞�
+                    string s = "";
+                    int sYear = 0;
+                    int sPeriod = 0;
+                    if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod_Pay(oBill.omodel.HDate, ref sYear, ref sPeriod, ref s) == false)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = s;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+
+                    //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 = "浣滃簾鎴栧弽浣滃簾鎵hˉ椤圭洰璐圭敤鍗曞け璐ワ紒" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+
+
 
         #region 鎵hˉ椤圭洰璐圭敤鍗� 鏂板/缂栬緫
         #region 鎵hˉ椤圭洰璐圭敤鍗� 琛ㄥご鏁版嵁
@@ -92,19 +662,19 @@
             var _value = sMainSub["sMainSub"].ToString();
             string msg1 = _value.ToString();
             //寮�濮嬩簨鍔�
-            oCN.BeginTran();
+            oCn.BeginTran();
             //淇濆瓨涓昏〃
             objJsonResult = AddBillMain_Pay_DuSubsidyItemBill(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 = "鏂板鍗曟嵁鎴愬姛锛�";
@@ -189,7 +759,7 @@
 
                 //if (OperationType == 2)
                 //{
-                //    ds = oCN.RunProcReturn("select * from PM_ProjectBillMain where HBillNo ='" + HBillNo + "'", "PM_ProjectBillMain");
+                //    ds = oCn.RunProcReturn("select * from PM_ProjectBillMain where HBillNo ='" + HBillNo + "'", "PM_ProjectBillMain");
                 //    if (ds.Tables[0].Rows.Count > 0)
                 //    {
                 //        objJsonResult.code = "0";
@@ -200,7 +770,7 @@
                 //    }
                 //}
 
-                ds = oCN.RunProcReturn("select * from Pay_DuSubsidyItemBillMain where HInterID = " + HInterID + " and HBillNo = '" + HBillNo + "'", "Pay_DuSubsidyItemBillMain");
+                ds = oCn.RunProcReturn("select * from Pay_DuSubsidyItemBillMain where HInterID = " + HInterID + " and HBillNo = '" + HBillNo + "'", "Pay_DuSubsidyItemBillMain");
 
                 if ((OperationType == 1 || OperationType == 2) && ds.Tables[0].Rows.Count == 0)//鏂板
                 {
@@ -226,9 +796,9 @@
                         "')";
 
                     //涓昏〃
-                    oCN.RunProc(sql);
+                    oCn.RunProc(sql);
                     LogService.Write("鐢ㄦ埛:" + user + ",鏃ユ湡:" + DateTime.Now + ",鏂板鎵hˉ椤圭洰璐圭敤鍗�:" + HBillNo);
-                    oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + user + "','" + HComputerName + "','" + "鏂板鎵hˉ椤圭洰璐圭敤鍗曪細" + HBillNo + "','LMES-鎵hˉ椤圭洰璐圭敤鍗曟ā鍧�','" + DBUtility.ClsPub.IPAddress + "','鏂板鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo);
+                    oCn.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + user + "','" + HComputerName + "','" + "鏂板鎵hˉ椤圭洰璐圭敤鍗曪細" + HBillNo + "','LMES-鎵hˉ椤圭洰璐圭敤鍗曟ā鍧�','" + DBUtility.ClsPub.IPAddress + "','鏂板鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo);
                 }
                 else if (OperationType == 3 || ds.Tables[0].Rows.Count != 0)                    //缂栬緫
                 {
@@ -246,13 +816,13 @@
                         "', HUpdateDate = '" + HUpdaterDate +
                         "' where HInterID = " + HInterID;
 
-                    oCN.RunProc(sql);
+                    oCn.RunProc(sql);
 
                     //鍒犻櫎瀛愯〃
-                    oCN.RunProc("delete from Pay_DuSubsidyItemBillSub where HInterID= " + HInterID);
+                    oCn.RunProc("delete from Pay_DuSubsidyItemBillSub where HInterID= " + HInterID);
                     //璁板綍鏃ュ織
                     LogService.Write("鐢ㄦ埛:" + user + ",鏃ユ湡:" + DateTime.Now + ",淇敼鎵hˉ椤圭洰璐圭敤鍗�:" + HBillNo);
-                    oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + user + "','" + HComputerName + "','" + "淇敼鎵hˉ椤圭洰璐圭敤鍗曪細" + HBillNo + "','LMES-鎵hˉ椤圭洰璐圭敤鍗曟ā鍧�','" + DBUtility.ClsPub.IPAddress + "','淇敼鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo);
+                    oCn.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + user + "','" + HComputerName + "','" + "淇敼鎵hˉ椤圭洰璐圭敤鍗曪細" + HBillNo + "','LMES-鎵hˉ椤圭洰璐圭敤鍗曟ā鍧�','" + DBUtility.ClsPub.IPAddress + "','淇敼鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo);
                 }
                 //淇濆瓨瀛愯〃
                 objJsonResult = AddBillSub1_Pay_DuSubsidyItemBill(msg3, HInterID, HBillNo, OperationType);
@@ -313,7 +883,7 @@
                     ",'" + HRemark +
                     "')";
 
-                oCN.RunProc(sql);
+                oCn.RunProc(sql);
             }
 
             objJsonResult.code = "1";
@@ -324,6 +894,7 @@
         }
         #endregion
         #endregion
+
         #region 鎵hˉ椤圭洰璐圭敤鍗� 缂栬緫-椤甸潰璧嬪��
         /// <summary>
         ///鍙傛暟锛歴tring HInterID銆�
@@ -356,7 +927,7 @@
                     return objJsonResult;
                 }
 
-                ds = oCN.RunProcReturn("exec h_p_Pay_DuSubsidyItemBill_EditInit " + HInterID, "h_p_Pay_DuSubsidyItemBill_EditInit");
+                ds = oCn.RunProcReturn("exec h_p_Pay_DuSubsidyItemBill_EditInit " + HInterID, "h_p_Pay_DuSubsidyItemBill_EditInit");
                 tableList.Add(ds.Tables[0]);
                 tableList.Add(ds.Tables[1]);
 
@@ -376,438 +947,6 @@
             }
         }
         #endregion
-
-        #region 鎵hˉ椤圭洰璐圭敤鍗� 鏌ヨ
-        [Route("Pay_DuSubsidyItemBill/list")]
-        [HttpGet]
-        public object getDuSubsidyItemBillList(string sWhere, string user)
-        {
-            try
-            {
-                List<object> columnNameList = new List<object>();
-                if (!DBUtility.ClsPub.Security_Log("Pay_DuSubsidyItemBillList", 1, false, user))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-                if (sWhere == null || sWhere.Equals(""))
-                {
-                    ds = oCN.RunProcReturn("select * from h_v_Pay_DuSubsidyItemBillList order by hmainid desc", "h_v_Pay_DuSubsidyItemBillList");
-                }
-                else
-                {
-                    string sql1 = "select * from h_v_Pay_DuSubsidyItemBillList where 1 = 1 ";
-                    string sql = sql1 + sWhere + " order by hmainid desc";
-                    ds = oCN.RunProcReturn(sql, "h_v_Pay_DuSubsidyItemBillList");
-                }
-
-                //娣诲姞鍒楀悕
-                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 鎵hˉ椤圭洰璐圭敤鍗� 鍒犻櫎
-        /// <summary>
-        ///鍙傛暟锛歴tring HInterID銆�
-        ///杩斿洖鍊硷細object銆�
-        /// </summary>
-        [Route("Pay_DuSubsidyItemBill/delete")]
-        [HttpGet]
-        public object deleteDuSubsidyItemBill(string HInterID, string user)
-        {
-            try
-            {
-                //鏌ョ湅鏉冮檺
-                if (!DBUtility.ClsPub.Security_Log("Pay_DuSubsidyItemBill_Delete", 1, false, user))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "鏃犲垹闄ゆ潈闄愶紒";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-                if (HInterID == null || HInterID.Equals(""))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "HInterID涓嶈兘涓虹┖锛�";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-                oCN.BeginTran();
-
-                oCN.RunProc("delete from Pay_DuSubsidyItemBillMain where HInterID = " + HInterID);
-                oCN.RunProc("delete from Pay_DuSubsidyItemBillSub where HInterID= " + HInterID);
-
-                oCN.Commit();
-
-                objJsonResult.code = "1";
-                objJsonResult.count = 1;
-                objJsonResult.Message = "Sucess锛�";
-                objJsonResult.data = null;
-                return objJsonResult;
-            }
-            catch (Exception e)
-            {
-                objJsonResult.code = "0";
-                objJsonResult.count = 0;
-                objJsonResult.Message = "Exception锛�" + e.ToString();
-                objJsonResult.data = null;
-                return objJsonResult;
-            }
-        }
-        #endregion
-
-        #region 鎵hˉ椤圭洰璐圭敤鍗� 瀹℃牳/鍙嶅鏍�
-        /// <summary>
-        /// 
-        /// </summary>
-        /// <param name="HInterID">鍗曟嵁ID</param>
-        /// <param name="IsAudit">瀹℃牳(0),鍙嶅鏍�(1)</param>
-        /// <param name="CurUserName">瀹℃牳浜�</param>
-        /// <returns></returns>
-        [Route("Pay_DuSubsidyItemBill/AuditPay_DuSubsidyItemBill")]
-        [HttpGet]
-        public object AuditPay_DuSubsidyItemBill(string HInterID, int Type, string user)
-        {
-            try
-            {
-                //鍒ゆ柇鏄惁鏈夊鏍告潈闄�
-                if (!DBUtility.ClsPub.Security_Log("Pay_DuSubsidyItemBill_Check", 1, false, user))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "鏃犳潈闄愬鏍�!";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-                if (string.IsNullOrWhiteSpace(HInterID))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "HInterID涓虹┖锛�";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-
-                ClsPub.CurUserName = user;
-                BillOld.MvarItemKey = "Pay_DuSubsidyItemBillMain";
-                oCN.BeginTran();//寮�濮嬩簨鍔�
-
-                //Type 1 瀹℃牳  2  鍙嶅鏍�
-                if (Type == 1)
-                {
-                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡瀹℃牳
-                    DataSet ds;
-                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
-                    if (ds.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 (!BillOld.CheckBill(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
-                    {
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
-                        objJsonResult.data = null;
-                        return objJsonResult;
-                    }
-                }
-                else
-                {
-                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍙嶅鏍�
-                    DataSet ds;
-                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
-                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
-                    {
-                        if (ds.Tables[0].Rows[0]["HChecker"] == null || ds.Tables[0].Rows[0]["HChecker"].ToString() == "")
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = "鍗曟嵁宸插弽瀹℃牳!涓嶉渶瑕佸啀鍙嶅鏍�!";
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
-                    }
-                    //鍙嶅鏍稿崟鎹�
-                    if (!BillOld.AbandonCheck(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
-                    {
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "鍙嶅鏍稿け璐�!鍘熷洜:" + ClsPub.sExeReturnInfo;
-                        objJsonResult.data = null;
-                        return objJsonResult;
-                    }
-                }
-
-                oCN.Commit();//鎻愪氦浜嬪姟
-
-                objJsonResult.code = "0";
-                objJsonResult.count = 1;
-                objJsonResult.Message = "鎵ц鎴愬姛锛�";
-                objJsonResult.data = null;
-                return objJsonResult; ;
-
-            }
-            catch (Exception e)
-            {
-                objJsonResult.code = "0";
-                objJsonResult.count = 0;
-                objJsonResult.Message = "鎵ц澶辫触锛�" + e.ToString();
-                objJsonResult.data = null;
-                return objJsonResult;
-            }
-        }
-        #endregion
-        #region 鎵hˉ椤圭洰璐圭敤鍗� 鍏抽棴/鍙嶅叧闂姛鑳�
-        [Route("Pay_DuSubsidyItemBill/ClosePay_DuSubsidyItemBill")]
-        [HttpGet]
-        public object ClosePay_DuSubsidyItemBill(string HInterID, int Type, string user)
-        {
-            try
-            {
-                //鍒ゆ柇鏄惁鏈夊垹闄ゆ潈闄�
-                if (!DBUtility.ClsPub.Security_Log("Pay_DuSubsidyItemBill_Close", 1, false, user))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "鏃犳潈闄愬叧闂�!";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-                if (string.IsNullOrWhiteSpace(HInterID))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "HInterID涓虹┖锛�";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-                ClsPub.CurUserName = user;
-                BillOld.MvarItemKey = "Pay_DuSubsidyItemBillMain";
-                oCN.BeginTran();//寮�濮嬩簨鍔�
-
-                //Type 1 鍏抽棴  2  鍙嶅叧闂�
-                if (Type == 1)
-                {
-                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍏抽棴
-                    DataSet ds;
-                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
-                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
-                    {
-                        if (ds.Tables[0].Rows[0]["HCloseMan"] != null && ds.Tables[0].Rows[0]["HCloseMan"].ToString() != "")
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = "鍗曟嵁宸插叧闂�!涓嶉渶瑕佸啀鍏抽棴!";
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
-                    }
-                    //鍏抽棴鍗曟嵁
-                    if (!BillOld.CloseBill(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
-                    {
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "鍏抽棴澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
-                        objJsonResult.data = null;
-                        return objJsonResult;
-                    }
-                }
-                else
-                {
-                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍙嶅叧闂�
-                    DataSet ds;
-                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
-                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
-                    {
-                        if (ds.Tables[0].Rows[0]["HCloseMan"] == null || ds.Tables[0].Rows[0]["HCloseMan"].ToString() == "")
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = "鍗曟嵁宸插弽鍏抽棴!涓嶉渶瑕佸啀鍙嶅叧闂�!";
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
-                    }
-                    //鍙嶅叧闂崟鎹�
-                    if (!BillOld.CancelClose(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
-                    {
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "鍙嶅叧闂け璐�!鍘熷洜:" + ClsPub.sExeReturnInfo;
-                        objJsonResult.data = null;
-                        return objJsonResult;
-                    }
-                }
-
-                oCN.Commit();//鎻愪氦浜嬪姟
-
-                objJsonResult.code = "0";
-                objJsonResult.count = 1;
-                objJsonResult.Message = "鎵ц鎴愬姛锛�";
-                objJsonResult.data = null;
-                return objJsonResult; ;
-
-            }
-            catch (Exception e)
-            {
-                objJsonResult.code = "0";
-                objJsonResult.count = 0;
-                objJsonResult.Message = "鎵ц澶辫触锛�" + e.ToString();
-                objJsonResult.data = null;
-                return objJsonResult;
-            }
-        }
-        #endregion
-        #region 鎵hˉ椤圭洰璐圭敤鍗� 浣滃簾/鍙嶄綔搴熷姛鑳�
-        [Route("Pay_DuSubsidyItemBill/DropPay_DuSubsidyItemBill")]
-        [HttpGet]
-        public object DropPay_DuSubsidyItemBill(string HInterID, int Type, string user)
-        {
-            try
-            {
-                //鍒ゆ柇鏄惁鏈変綔搴熸潈闄�
-                if (!DBUtility.ClsPub.Security_Log("Pay_DuSubsidyItemBill_Drop", 1, false, user))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "鏃犳潈闄愪綔搴�!";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-                if (string.IsNullOrWhiteSpace(HInterID))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "HInterID涓虹┖锛�";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-                ClsPub.CurUserName = user;
-                BillOld.MvarItemKey = "Pay_DuSubsidyItemBillMain";
-                oCN.BeginTran();//寮�濮嬩簨鍔�
-
-                //Type 1 浣滃簾  2  鍙嶄綔搴�
-                if (Type == 1)
-                {
-                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡浣滃簾
-                    DataSet ds;
-                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
-                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
-                    {
-                        if (ds.Tables[0].Rows[0]["HDeleteMan"] != null && ds.Tables[0].Rows[0]["HDeleteMan"].ToString() != "")
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = "鍗曟嵁宸蹭綔搴�!涓嶉渶瑕佸啀浣滃簾!";
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
-                    }
-                    //浣滃簾鍗曟嵁
-                    if (!BillOld.Cancelltion(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
-                    {
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "浣滃簾澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
-                        objJsonResult.data = null;
-                        return objJsonResult;
-                    }
-                }
-                else
-                {
-                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍙嶄綔搴�
-                    DataSet ds;
-                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
-                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
-                    {
-                        if (ds.Tables[0].Rows[0]["HDeleteMan"] == null || ds.Tables[0].Rows[0]["HDeleteMan"].ToString() == "")
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = "鍗曟嵁宸插弽浣滃簾!涓嶉渶瑕佸啀鍙嶄綔搴�!";
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
-                    }
-                    //鍙嶄綔搴熷崟鎹�
-                    if (!BillOld.AbandonCancelltion(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
-                    {
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "鍙嶄綔搴熷け璐�!鍘熷洜:" + ClsPub.sExeReturnInfo;
-                        objJsonResult.data = null;
-                        return objJsonResult;
-                    }
-                }
-
-                oCN.Commit();//鎻愪氦浜嬪姟
-
-                objJsonResult.code = "0";
-                objJsonResult.count = 1;
-                objJsonResult.Message = "鎵ц鎴愬姛锛�";
-                objJsonResult.data = null;
-                return objJsonResult; ;
-
-            }
-            catch (Exception e)
-            {
-                objJsonResult.code = "0";
-                objJsonResult.count = 0;
-                objJsonResult.Message = "鎵ц澶辫触锛�" + e.ToString();
-                objJsonResult.data = null;
-                return objJsonResult;
-            }
-        }
-        #endregion
-
 
         #region 鎵hˉ椤圭洰璐圭敤鍗� 鏁版嵁瀵煎叆
         #region 鑾峰彇瀵煎叆鏂囦欢鐨勬暟鎹�
@@ -891,7 +1030,7 @@
                     error += "娌℃湁鎵惧埌銆愯亴鍛樺悕绉般�戠殑鏍囬,";
                 ////鑾峰彇鎵�鏈夌殑鎵hˉ椤圭洰锛屽垽瀹氬鍏ユ枃浠朵腑鏈寘鍚殑鎵hˉ椤圭洰
                 //DataSet ds_DuSubsidyItem;
-                //ds_DuSubsidyItem = oCN.RunProcReturn("select * from Gy_DuSubsidyItem", "Gy_DuSubsidyItem");
+                //ds_DuSubsidyItem = oCn.RunProcReturn("select * from Gy_DuSubsidyItem", "Gy_DuSubsidyItem");
                 //if (ds_DuSubsidyItem.Tables[0] != null)
                 //{
                 //    for (int i = 0; i < ds_DuSubsidyItem.Tables[0].Rows.Count; i++)
@@ -917,9 +1056,9 @@
                     return objJsonResult;
                 }
 
-                oCN.BeginTran();
+                oCn.BeginTran();
                 //鍒犻櫎涓存椂琛ㄦ暟鎹�
-                oCN.RunProc("delete from diyipi_Pay_DuSubsidyItemBill");
+                oCn.RunProc("delete from diyipi_Pay_DuSubsidyItemBill");
 
                 //涓存椂琛ㄦ坊鍔犳暟鎹�
                 for (int i = 0; i < tb2.Rows.Count; i++)
@@ -971,12 +1110,12 @@
                                 "'," + HMoney +
                                 ",'" + tb2.Rows[i]["琛ㄤ綋澶囨敞"] +
                                 "')";
-                            oCN.RunProc(sql);
+                            oCn.RunProc(sql);
                         }
                     }
                     
                 }
-                oCN.Commit();
+                oCn.Commit();
 
                 objJsonResult.code = "1";
                 objJsonResult.count = 1;
@@ -1135,7 +1274,7 @@
                     return objJsonResult;
                 }
                 //鑾峰彇涓存椂琛ㄦ暟鎹�
-                ds = oCN.RunProcReturn("select * from diyipi_Pay_DuSubsidyItemBill order by HDate desc,HYear desc,HPeriod desc,HOrgID desc,HDeptID desc,HGroupID desc,HRemarkMain desc,HEmpID desc", "diyipi_Pay_DuSubsidyItemBill");
+                ds = oCn.RunProcReturn("select * from diyipi_Pay_DuSubsidyItemBill order by HDate desc,HYear desc,HPeriod desc,HOrgID desc,HDeptID desc,HGroupID desc,HRemarkMain desc,HEmpID desc", "diyipi_Pay_DuSubsidyItemBill");
                 if (ds==null || ds.Tables[0].Rows.Count == 0)
                 {
                     objJsonResult.code = "0";
@@ -1145,7 +1284,7 @@
                     return objJsonResult;
                 }
                 //淇濆瓨鏁版嵁
-                oCN.BeginTran();
+                oCn.BeginTran();
                 DataTable dt = ds.Tables[0];
                 Pay_DuSubsidyItemBillMain mainTable = new Pay_DuSubsidyItemBillMain();
                 List<Pay_DuSubsidyItemBillSub> subTable = new List<Pay_DuSubsidyItemBillSub>();
@@ -1219,7 +1358,7 @@
                 }
 
 
-                oCN.Commit();
+                oCn.Commit();
 
                 objJsonResult.code = "1";
                 objJsonResult.count = 1;
@@ -1270,7 +1409,7 @@
                 string HMaker = mainList[0].HMaker;
                 string HMakerDate = mainList[0].HMakerDate;
                
-                ds = oCN.RunProcReturn("select * from Pay_DuSubsidyItemBillMain where HInterID = " + HInterID + " and HBillNo = '" + HBillNo + "'", "Pay_DuSubsidyItemBillMain");
+                ds = oCn.RunProcReturn("select * from Pay_DuSubsidyItemBillMain where HInterID = " + HInterID + " and HBillNo = '" + HBillNo + "'", "Pay_DuSubsidyItemBillMain");
 
                 //涓昏〃娣诲姞鏁版嵁
                 string sql = "insert into Pay_DuSubsidyItemBillMain" +
@@ -1295,9 +1434,9 @@
                     "')";
 
                 //涓昏〃
-                oCN.RunProc(sql);
+                oCn.RunProc(sql);
                 LogService.Write("鐢ㄦ埛:" + user + ",鏃ユ湡:" + DateTime.Now + ",鏂板鎵hˉ椤圭洰璐圭敤鍗�:" + HBillNo);
-                oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + user + "','" + HComputerName + "','" + "鏂板鎵hˉ椤圭洰璐圭敤鍗曪細" + HBillNo + "','LMES-鎵hˉ椤圭洰璐圭敤鍗曟ā鍧�','" + DBUtility.ClsPub.IPAddress + "','鏂板鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo);
+                oCn.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + user + "','" + HComputerName + "','" + "鏂板鎵hˉ椤圭洰璐圭敤鍗曪細" + HBillNo + "','LMES-鎵hˉ椤圭洰璐圭敤鍗曟ā鍧�','" + DBUtility.ClsPub.IPAddress + "','鏂板鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo);
                 
                
                 //淇濆瓨瀛愯〃
@@ -1358,7 +1497,7 @@
                     ",'" + HRemark +
                     "')";
 
-                oCN.RunProc(sql);
+                oCn.RunProc(sql);
             }
 
             objJsonResult.code = "1";
@@ -1379,7 +1518,7 @@
             {
                 //鑾峰彇鏈鐢ㄧ殑鎵hˉ椤圭洰
                 string sql = "select * from Gy_DuSubsidyItem where HStopFlag = 0";
-                ds = oCN.RunProcReturn(sql, "Gy_DuSubsidyItem");
+                ds = oCn.RunProcReturn(sql, "Gy_DuSubsidyItem");
                 if (ds == null || ds.Tables[0].Rows.Count == 0)
                 {
                     objJsonResult.code = "0";
diff --git "a/WebAPI/Controllers/\345\267\245\350\265\204\347\256\241\347\220\206/Pay_OutApplyBillController.cs" "b/WebAPI/Controllers/\345\267\245\350\265\204\347\256\241\347\220\206/Pay_OutApplyBillController.cs"
index 868ad54..34e3fdc 100644
--- "a/WebAPI/Controllers/\345\267\245\350\265\204\347\256\241\347\220\206/Pay_OutApplyBillController.cs"
+++ "b/WebAPI/Controllers/\345\267\245\350\265\204\347\256\241\347\220\206/Pay_OutApplyBillController.cs"
@@ -15,13 +15,588 @@
 {
     public class Pay_OutApplyBillController : ApiController
     {
-        public DBUtility.ClsPub.Enum_BillStatus BillStatus;//鍗曟嵁鐘舵�侊紙鏂板锛屼慨鏀癸紝娴忚锛屾洿鏂板崟浠凤紝鍙樻洿锛�
-        private json objJsonResult = new json();
+        public DBUtility.ClsPub.Enum_BillStatus BillStatus;
+        public const string ModName = "2221";                   //鍗曟嵁绫诲瀷
+        public const string ModCaption = "璇峰亣鐢宠鍗�";          //鍗曟嵁鍚嶇О
+        public const string ModRightName = "Pay_OutApplyBill";
+        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();
-        public SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+        private json objJsonResult = new json();
+        SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
+        public DAL.ClsPay_OutApplyBill oBill = new DAL.ClsPay_OutApplyBill();
         public DAL.ClsPay_OutApplyBill BillOld = new DAL.ClsPay_OutApplyBill();
-        string user_LongShan = "";
-        string HName_LongShan = "";
+
+
+        #region 璇峰亣鐢宠鍗曞垪琛�
+        /// <summary>
+        /// 鑾峰彇璇峰亣鐢宠鍗曞垪琛ㄤ俊鎭�
+        /// </summary>
+        /// <returns></returns>
+        [Route("Pay_OutApplyBillController/GetPay_OutApplyBillList_Json")]
+        [HttpGet]
+        public object GetPay_OutApplyBillList_Json(string sWhere, string HMaker)
+        {
+            try
+            {
+                //鍒ゆ柇鏉冮檺
+                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 h_v_Pay_OutApplyBillList where 1=1 " + sWhere + " order by hmainid desc", "h_v_Pay_OutApplyBillList");
+                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("Pay_OutApplyBillController/GetPay_OutApplyBill_Delete_Json")]
+        [HttpGet]
+        public object GetPay_OutApplyBill_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))
+                {
+                    //鍒ゆ柇浼氳鏈熸槸鍚﹀悎鐞�
+                    string s = "";
+                    int sYear = 0;
+                    int sPeriod = 0;
+                    if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod_Pay(oBill.omodel.HDate, ref sYear, ref sPeriod, ref s) == false)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = s;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    //鍒犻櫎鍓嶆帶鍒�
+                    DataSet BeforeDs = oCn.RunProcReturn("Exec h_p_Pay_OutApplyBill_BeforeDelCtrl " + HInterID.ToString() + ",'" + HMaker + "'", "h_p_Pay_OutApplyBill_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_Pay_OutApplyBill_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("Pay_OutApplyBillController/GetPay_OutApplyBill_Check_Json")]
+        [HttpGet]
+        public object GetPay_OutApplyBill_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))
+                {
+                    //鍒ゆ柇浼氳鏈熸槸鍚﹀悎鐞�
+                    string s = "";
+                    int sYear = 0;
+                    int sPeriod = 0;
+                    if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod_Pay(oBill.omodel.HDate, ref sYear, ref sPeriod, ref s) == false)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = s;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+
+                    //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_Pay_OutApplyBill_BeforeCheckCtrl " + HInterID.ToString() + ",'" + HMaker + "'", "h_p_Pay_OutApplyBill_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_Pay_OutApplyBill_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_Pay_OutApplyBill_BeforeUnCheckCtrl " + HInterID.ToString() + ",'" + HMaker + "'", "h_p_Pay_OutApplyBill_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_Pay_OutApplyBill_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("Pay_OutApplyBillController/GetPay_OutApplyBill_Close_Json")]
+        [HttpGet]
+        public object GetPay_OutApplyBill_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))
+                {
+                    //鍒ゆ柇浼氳鏈熸槸鍚﹀悎鐞�
+                    string s = "";
+                    int sYear = 0;
+                    int sPeriod = 0;
+                    if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod_Pay(oBill.omodel.HDate, ref sYear, ref sPeriod, ref s) == false)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = s;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+
+                    //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("Pay_OutApplyBillController/GetPay_OutApplyBill_Cancelltion_Json")]
+        [HttpGet]
+        public object GetPay_OutApplyBill_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))
+                {
+                    //鍒ゆ柇浼氳鏈熸槸鍚﹀悎鐞�
+                    string s = "";
+                    int sYear = 0;
+                    int sPeriod = 0;
+                    if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod_Pay(oBill.omodel.HDate, ref sYear, ref sPeriod, ref s) == false)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = s;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+
+                    //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
+
+
+
+
+
+
+
 
         #region 璇峰亣鐢宠鍗� 鏂板/缂栬緫
         #region 璇峰亣鐢宠鍗� 琛ㄥご鏁版嵁
@@ -90,19 +665,19 @@
             var _value = sMainSub["sMainSub"].ToString();
             string msg1 = _value.ToString();
             //寮�濮嬩簨鍔�
-            oCN.BeginTran();
+            oCn.BeginTran();
             //淇濆瓨涓昏〃
             objJsonResult = AddBillMain_Pay_OutApplyBill(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 = "鏂板鍗曟嵁鎴愬姛锛�";
@@ -191,7 +766,7 @@
 
                 //if (OperationType == 2)
                 //{
-                //    ds = oCN.RunProcReturn("select * from PM_ProjectBillMain where HBillNo ='" + HBillNo + "'", "PM_ProjectBillMain");
+                //    ds = oCn.RunProcReturn("select * from PM_ProjectBillMain where HBillNo ='" + HBillNo + "'", "PM_ProjectBillMain");
                 //    if (ds.Tables[0].Rows.Count > 0)
                 //    {
                 //        objJsonResult.code = "0";
@@ -202,7 +777,7 @@
                 //    }
                 //}
 
-                ds = oCN.RunProcReturn("select * from Pay_OutApplyBillMain where HInterID = " + HInterID + " and HBillNo = '" + HBillNo + "'", "Pay_OutApplyBillMain");
+                ds = oCn.RunProcReturn("select * from Pay_OutApplyBillMain where HInterID = " + HInterID + " and HBillNo = '" + HBillNo + "'", "Pay_OutApplyBillMain");
 
                 if ((OperationType == 1 || OperationType == 2) && ds.Tables[0].Rows.Count == 0)//鏂板
                 {
@@ -229,9 +804,9 @@
                         "')";
 
                     //涓昏〃
-                    oCN.RunProc(sql);
+                    oCn.RunProc(sql);
                     LogService.Write("鐢ㄦ埛:" + user + ",鏃ユ湡:" + DateTime.Now + ",鏂板璇峰亣鐢宠鍗�:" + HBillNo);
-                    oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + user + "','" + HComputerName + "','" + "鏂板璇峰亣鐢宠鍗曪細" + HBillNo + "','LMES-璇峰亣鐢宠鍗曟ā鍧�','" + DBUtility.ClsPub.IPAddress + "','鏂板鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo);
+                    oCn.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + user + "','" + HComputerName + "','" + "鏂板璇峰亣鐢宠鍗曪細" + HBillNo + "','LMES-璇峰亣鐢宠鍗曟ā鍧�','" + DBUtility.ClsPub.IPAddress + "','鏂板鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo);
                 }
                 else if (OperationType == 3 || ds.Tables[0].Rows.Count != 0)                    //缂栬緫
                 {
@@ -251,13 +826,13 @@
                         "', HUpdateDate = '" + HUpdaterDate +
                         "' where HInterID = " + HInterID;
 
-                    oCN.RunProc(sql);
+                    oCn.RunProc(sql);
 
                     //鍒犻櫎瀛愯〃
-                    oCN.RunProc("delete from Pay_OutApplyBillSub where HInterID= " + HInterID);
+                    oCn.RunProc("delete from Pay_OutApplyBillSub where HInterID= " + HInterID);
                     //璁板綍鏃ュ織
                     LogService.Write("鐢ㄦ埛:" + user + ",鏃ユ湡:" + DateTime.Now + ",淇敼璇峰亣鐢宠鍗�:" + HBillNo);
-                    oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + user + "','" + HComputerName + "','" + "淇敼璇峰亣鐢宠鍗曪細" + HBillNo + "','LMES-璇峰亣鐢宠鍗曟ā鍧�','" + DBUtility.ClsPub.IPAddress + "','淇敼鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo);
+                    oCn.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + user + "','" + HComputerName + "','" + "淇敼璇峰亣鐢宠鍗曪細" + HBillNo + "','LMES-璇峰亣鐢宠鍗曟ā鍧�','" + DBUtility.ClsPub.IPAddress + "','淇敼鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo);
                 }
                 //淇濆瓨瀛愯〃
                 objJsonResult = AddBillSub1_Pay_OutApplyBill(msg3, HInterID, HBillNo, OperationType);
@@ -326,7 +901,7 @@
                             "," + HRelTimes +
                             ",'" + HRemark +
                             "')";
-                oCN.RunProc(sql);
+                oCn.RunProc(sql);
             }
 
             objJsonResult.code = "1";
@@ -370,7 +945,7 @@
                     return objJsonResult;
                 }
 
-                ds = oCN.RunProcReturn("select * from Pay_OutApplyBillMain where HInterID = " + HInterID, "Pay_OutApplyBillMain");
+                ds = oCn.RunProcReturn("select * from Pay_OutApplyBillMain where HInterID = " + HInterID, "Pay_OutApplyBillMain");
                 string[] HBillStatusList = { "", "鏈", "瀹℃牳閫氳繃", "鍏抽棴", "浣滃簾", "瀹℃牳閫�鍥�", "瀹℃牳涓�", "宸查槄", "宸插洖澶�", "缁撴", "楠岃瘉", "涓嬭揪", "寮�宸�", "鐢宠瀹℃壒", "", "鐢宠妫�楠�", "鍒ゅ畾鍚堟牸", "鍒ゅ畾涓嶅悎鏍�" };
                 if (ds.Tables[0].Rows.Count > 0 && int.Parse(ds.Tables[0].Rows[0]["HBillStatus"].ToString()) > 1)
                 {
@@ -383,7 +958,7 @@
                 }
 
 
-                ds = oCN.RunProcReturn("exec h_p_Pay_OutApplyBill_EditInit " + HInterID, "h_p_Pay_OutApplyBill_EditInit");
+                ds = oCn.RunProcReturn("exec h_p_Pay_OutApplyBill_EditInit " + HInterID, "h_p_Pay_OutApplyBill_EditInit");
                 tableList.Add(ds.Tables[0]);
                 tableList.Add(ds.Tables[1]);
 
@@ -404,435 +979,6 @@
         }
         #endregion
 
-        #region 璇峰亣鐢宠鍗� 鏌ヨ
-        [Route("Pay_OutApplyBill/list")]
-        [HttpGet]
-        public object getOutApplyBillList(string sWhere, string user)
-        {
-            try
-            {
-                List<object> columnNameList = new List<object>();
-                if (!DBUtility.ClsPub.Security_Log("Pay_OutApplyBillList", 1, false, user))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
 
-                if (sWhere == null || sWhere.Equals(""))
-                {
-                    ds = oCN.RunProcReturn("select * from h_v_Pay_OutApplyBillList order by hmainid desc", "h_v_Pay_OutApplyBillList");
-                }
-                else
-                {
-                    string sql1 = "select * from h_v_Pay_OutApplyBillList where 1 = 1 ";
-                    string sql = sql1 + sWhere + " order by hmainid desc";
-                    ds = oCN.RunProcReturn(sql, "h_v_Pay_OutApplyBillList");
-                }
-
-                //娣诲姞鍒楀悕
-                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 璇峰亣鐢宠鍗� 鍒犻櫎
-        /// <summary>
-        ///鍙傛暟锛歴tring HInterID銆�
-        ///杩斿洖鍊硷細object銆�
-        /// </summary>
-        [Route("Pay_OutApplyBill/delete")]
-        [HttpGet]
-        public object deleteOutApplyBill(string HInterID, string user)
-        {
-            try
-            {
-                //鏌ョ湅鏉冮檺
-                if (!DBUtility.ClsPub.Security_Log("Pay_OutApplyBill_Drop", 1, false, user))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "鏃犲垹闄ゆ潈闄愶紒";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-                if (HInterID == null || HInterID.Equals(""))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "HInterID涓嶈兘涓虹┖锛�";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-                oCN.BeginTran();
-
-                oCN.RunProc("delete from Pay_OutApplyBillMain where HInterID = " + HInterID);
-                oCN.RunProc("delete from Pay_OutApplyBillSub where HInterID= " + HInterID);
-
-                oCN.Commit();
-
-                objJsonResult.code = "1";
-                objJsonResult.count = 1;
-                objJsonResult.Message = "Sucess锛�";
-                objJsonResult.data = null;
-                return objJsonResult;
-            }
-            catch (Exception e)
-            {
-                objJsonResult.code = "0";
-                objJsonResult.count = 0;
-                objJsonResult.Message = "Exception锛�" + e.ToString();
-                objJsonResult.data = null;
-                return objJsonResult;
-            }
-        }
-        #endregion
-
-        #region 璇峰亣鐢宠鍗� 瀹℃牳/鍙嶅鏍�
-        /// <summary>
-        /// 
-        /// </summary>
-        /// <param name="HInterID">鍗曟嵁ID</param>
-        /// <param name="IsAudit">瀹℃牳(0),鍙嶅鏍�(1)</param>
-        /// <param name="CurUserName">瀹℃牳浜�</param>
-        /// <returns></returns>
-        [Route("Pay_OutApplyBill/AuditPay_OutApplyBill")]
-        [HttpGet]
-        public object AuditPay_OutApplyBill(string HInterID, int Type, string user)
-        {
-            try
-            {
-                //鍒ゆ柇鏄惁鏈夊鏍告潈闄�
-                if (!DBUtility.ClsPub.Security_Log("Pay_OutApplyBill_Check", 1, false, user))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "鏃犳潈闄愬鏍�!";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-                if (string.IsNullOrWhiteSpace(HInterID))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "HInterID涓虹┖锛�";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-
-                ClsPub.CurUserName = user;
-                BillOld.MvarItemKey = "Pay_OutApplyBillMain";
-                oCN.BeginTran();//寮�濮嬩簨鍔�
-
-                //Type 1 瀹℃牳  2  鍙嶅鏍�
-                if (Type == 1)
-                {
-                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡瀹℃牳
-                    DataSet ds;
-                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
-                    if (ds.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 (!BillOld.CheckBill(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
-                    {
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
-                        objJsonResult.data = null;
-                        return objJsonResult;
-                    }
-                }
-                else
-                {
-                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍙嶅鏍�
-                    DataSet ds;
-                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
-                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
-                    {
-                        if (ds.Tables[0].Rows[0]["HChecker"] == null || ds.Tables[0].Rows[0]["HChecker"].ToString() == "")
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = "鍗曟嵁宸插弽瀹℃牳!涓嶉渶瑕佸啀鍙嶅鏍�!";
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
-                    }
-                    //鍙嶅鏍稿崟鎹�
-                    if (!BillOld.AbandonCheck(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
-                    {
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "鍙嶅鏍稿け璐�!鍘熷洜:" + ClsPub.sExeReturnInfo;
-                        objJsonResult.data = null;
-                        return objJsonResult;
-                    }
-                }
-
-                oCN.Commit();//鎻愪氦浜嬪姟
-
-                objJsonResult.code = "0";
-                objJsonResult.count = 1;
-                objJsonResult.Message = "鎵ц鎴愬姛锛�";
-                objJsonResult.data = null;
-                return objJsonResult; ;
-
-            }
-            catch (Exception e)
-            {
-                objJsonResult.code = "0";
-                objJsonResult.count = 0;
-                objJsonResult.Message = "鎵ц澶辫触锛�" + e.ToString();
-                objJsonResult.data = null;
-                return objJsonResult;
-            }
-        }
-        #endregion
-        #region 璇峰亣鐢宠鍗� 鍏抽棴/鍙嶅叧闂姛鑳�
-        [Route("Pay_OutApplyBill/ClosePay_OutApplyBill")]
-        [HttpGet]
-        public object ClosePay_OutApplyBill(string HInterID, int Type, string user)
-        {
-            try
-            {
-                //鍒ゆ柇鏄惁鏈夊垹闄ゆ潈闄�
-                if (!DBUtility.ClsPub.Security_Log("Pay_OutApplyBill_Close", 1, false, user))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "鏃犳潈闄愬叧闂�!";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-                if (string.IsNullOrWhiteSpace(HInterID))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "HInterID涓虹┖锛�";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-                ClsPub.CurUserName = user;
-                BillOld.MvarItemKey = "Pay_OutApplyBillMain";
-                oCN.BeginTran();//寮�濮嬩簨鍔�
-
-                //Type 1 鍏抽棴  2  鍙嶅叧闂�
-                if (Type == 1)
-                {
-                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍏抽棴
-                    DataSet ds;
-                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
-                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
-                    {
-                        if (ds.Tables[0].Rows[0]["HCloseMan"] != null && ds.Tables[0].Rows[0]["HCloseMan"].ToString() != "")
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = "鍗曟嵁宸插叧闂�!涓嶉渶瑕佸啀鍏抽棴!";
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
-                    }
-                    //鍏抽棴鍗曟嵁
-                    if (!BillOld.CloseBill(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
-                    {
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "鍏抽棴澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
-                        objJsonResult.data = null;
-                        return objJsonResult;
-                    }
-                }
-                else
-                {
-                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍙嶅叧闂�
-                    DataSet ds;
-                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
-                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
-                    {
-                        if (ds.Tables[0].Rows[0]["HCloseMan"] == null || ds.Tables[0].Rows[0]["HCloseMan"].ToString() == "")
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = "鍗曟嵁宸插弽鍏抽棴!涓嶉渶瑕佸啀鍙嶅叧闂�!";
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
-                    }
-                    //鍙嶅叧闂崟鎹�
-                    if (!BillOld.CancelClose(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
-                    {
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "鍙嶅叧闂け璐�!鍘熷洜:" + ClsPub.sExeReturnInfo;
-                        objJsonResult.data = null;
-                        return objJsonResult;
-                    }
-                }
-
-                oCN.Commit();//鎻愪氦浜嬪姟
-
-                objJsonResult.code = "0";
-                objJsonResult.count = 1;
-                objJsonResult.Message = "鎵ц鎴愬姛锛�";
-                objJsonResult.data = null;
-                return objJsonResult; ;
-
-            }
-            catch (Exception e)
-            {
-                objJsonResult.code = "0";
-                objJsonResult.count = 0;
-                objJsonResult.Message = "鎵ц澶辫触锛�" + e.ToString();
-                objJsonResult.data = null;
-                return objJsonResult;
-            }
-        }
-        #endregion
-        #region 璇峰亣鐢宠鍗� 浣滃簾/鍙嶄綔搴熷姛鑳�
-        [Route("Pay_OutApplyBill/DropPay_OutApplyBill")]
-        [HttpGet]
-        public object DropPay_OutApplyBill(string HInterID, int Type, string user)
-        {
-            try
-            {
-                //鍒ゆ柇鏄惁鏈変綔搴熸潈闄�
-                if (!DBUtility.ClsPub.Security_Log("Pay_OutApplyBill_Delete", 1, false, user))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "鏃犳潈闄愪綔搴�!";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-                if (string.IsNullOrWhiteSpace(HInterID))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "HInterID涓虹┖锛�";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-                ClsPub.CurUserName = user;
-                BillOld.MvarItemKey = "Pay_OutApplyBillMain";
-                oCN.BeginTran();//寮�濮嬩簨鍔�
-
-                //Type 1 浣滃簾  2  鍙嶄綔搴�
-                if (Type == 1)
-                {
-                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡浣滃簾
-                    DataSet ds;
-                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
-                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
-                    {
-                        if (ds.Tables[0].Rows[0]["HDeleteMan"] != null && ds.Tables[0].Rows[0]["HDeleteMan"].ToString() != "")
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = "鍗曟嵁宸蹭綔搴�!涓嶉渶瑕佸啀浣滃簾!";
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
-                    }
-                    //浣滃簾鍗曟嵁
-                    if (!BillOld.Cancelltion(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
-                    {
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "浣滃簾澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
-                        objJsonResult.data = null;
-                        return objJsonResult;
-                    }
-                }
-                else
-                {
-                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍙嶄綔搴�
-                    DataSet ds;
-                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
-                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
-                    {
-                        if (ds.Tables[0].Rows[0]["HDeleteMan"] == null || ds.Tables[0].Rows[0]["HDeleteMan"].ToString() == "")
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = "鍗曟嵁宸插弽浣滃簾!涓嶉渶瑕佸啀鍙嶄綔搴�!";
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
-                    }
-                    //鍙嶄綔搴熷崟鎹�
-                    if (!BillOld.AbandonCancelltion(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
-                    {
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "鍙嶄綔搴熷け璐�!鍘熷洜:" + ClsPub.sExeReturnInfo;
-                        objJsonResult.data = null;
-                        return objJsonResult;
-                    }
-                }
-
-                oCN.Commit();//鎻愪氦浜嬪姟
-
-                objJsonResult.code = "0";
-                objJsonResult.count = 1;
-                objJsonResult.Message = "鎵ц鎴愬姛锛�";
-                objJsonResult.data = null;
-                return objJsonResult; ;
-
-            }
-            catch (Exception e)
-            {
-                objJsonResult.code = "0";
-                objJsonResult.count = 0;
-                objJsonResult.Message = "鎵ц澶辫触锛�" + e.ToString();
-                objJsonResult.data = null;
-                return objJsonResult;
-            }
-        }
-        #endregion
     }
 }
\ No newline at end of file
diff --git "a/WebAPI/Controllers/\345\267\245\350\265\204\347\256\241\347\220\206/Pay_OverApplyBillController.cs" "b/WebAPI/Controllers/\345\267\245\350\265\204\347\256\241\347\220\206/Pay_OverApplyBillController.cs"
index 602e540..0c5e960 100644
--- "a/WebAPI/Controllers/\345\267\245\350\265\204\347\256\241\347\220\206/Pay_OverApplyBillController.cs"
+++ "b/WebAPI/Controllers/\345\267\245\350\265\204\347\256\241\347\220\206/Pay_OverApplyBillController.cs"
@@ -15,13 +15,585 @@
 {
     public class Pay_OverApplyBillController : ApiController
     {
-        public DBUtility.ClsPub.Enum_BillStatus BillStatus;//鍗曟嵁鐘舵�侊紙鏂板锛屼慨鏀癸紝娴忚锛屾洿鏂板崟浠凤紝鍙樻洿锛�
-        private json objJsonResult = new json();
+        public DBUtility.ClsPub.Enum_BillStatus BillStatus;
+        public const string ModName = "2209";                   //鍗曟嵁绫诲瀷
+        public const string ModCaption = "鍔犵彮鐢宠鍗�";          //鍗曟嵁鍚嶇О
+        public const string ModRightName = "Pay_OverApplyBill";
+        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();
-        public SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+        private json objJsonResult = new json();
+        SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
+        public DAL.ClsPay_OverApplyBill oBill = new DAL.ClsPay_OverApplyBill();
         public DAL.ClsPay_OverApplyBill BillOld = new DAL.ClsPay_OverApplyBill();
-        string user_LongShan = "";
-        string HName_LongShan = "";
+
+
+        #region 鍔犵彮鐢宠鍗曞垪琛�
+        /// <summary>
+        /// 鑾峰彇鍔犵彮鐢宠鍗曞垪琛ㄤ俊鎭�
+        /// </summary>
+        /// <returns></returns>
+        [Route("Pay_OverApplyBillController/GetPay_OverApplyBillList_Json")]
+        [HttpGet]
+        public object GetPay_OverApplyBillList_Json(string sWhere, string HMaker)
+        {
+            try
+            {
+                //鍒ゆ柇鏉冮檺
+                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 h_v_Pay_OverApplyBillList where 1=1 " + sWhere + " order by hmainid desc", "h_v_Pay_OverApplyBillList");
+                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("Pay_OverApplyBillController/GetPay_OverApplyBill_Delete_Json")]
+        [HttpGet]
+        public object GetPay_OverApplyBill_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))
+                {
+                    //鍒ゆ柇浼氳鏈熸槸鍚﹀悎鐞�
+                    string s = "";
+                    int sYear = 0;
+                    int sPeriod = 0;
+                    if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod_Pay(oBill.omodel.HDate, ref sYear, ref sPeriod, ref s) == false)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = s;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    //鍒犻櫎鍓嶆帶鍒�
+                    DataSet BeforeDs = oCn.RunProcReturn("Exec h_p_Pay_OverApplyBill_BeforeDelCtrl " + HInterID.ToString() + ",'" + HMaker + "'", "h_p_Pay_OverApplyBill_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_Pay_OverApplyBill_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("Pay_OverApplyBillController/GetPay_OverApplyBill_Check_Json")]
+        [HttpGet]
+        public object GetPay_OverApplyBill_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))
+                {
+                    //鍒ゆ柇浼氳鏈熸槸鍚﹀悎鐞�
+                    string s = "";
+                    int sYear = 0;
+                    int sPeriod = 0;
+                    if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod_Pay(oBill.omodel.HDate, ref sYear, ref sPeriod, ref s) == false)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = s;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+
+                    //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_Pay_OverApplyBill_BeforeCheckCtrl " + HInterID.ToString() + ",'" + HMaker + "'", "h_p_Pay_OverApplyBill_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_Pay_OverApplyBill_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_Pay_OverApplyBill_BeforeUnCheckCtrl " + HInterID.ToString() + ",'" + HMaker + "'", "h_p_Pay_OverApplyBill_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_Pay_OverApplyBill_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("Pay_OverApplyBillController/GetPay_OverApplyBill_Close_Json")]
+        [HttpGet]
+        public object GetPay_OverApplyBill_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))
+                {
+                    //鍒ゆ柇浼氳鏈熸槸鍚﹀悎鐞�
+                    string s = "";
+                    int sYear = 0;
+                    int sPeriod = 0;
+                    if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod_Pay(oBill.omodel.HDate, ref sYear, ref sPeriod, ref s) == false)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = s;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+
+                    //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("Pay_OverApplyBillController/GetPay_OverApplyBill_Cancelltion_Json")]
+        [HttpGet]
+        public object GetPay_OverApplyBill_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))
+                {
+                    //鍒ゆ柇浼氳鏈熸槸鍚﹀悎鐞�
+                    string s = "";
+                    int sYear = 0;
+                    int sPeriod = 0;
+                    if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod_Pay(oBill.omodel.HDate, ref sYear, ref sPeriod, ref s) == false)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = s;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+
+                    //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
+
+
+
+
 
         #region 鍔犵彮鐢宠鍗� 鏂板/缂栬緫
         #region 鍔犵彮鐢宠鍗� 琛ㄥご鏁版嵁
@@ -85,19 +657,19 @@
             var _value = sMainSub["sMainSub"].ToString();
             string msg1 = _value.ToString();
             //寮�濮嬩簨鍔�
-            oCN.BeginTran();
+            oCn.BeginTran();
             //淇濆瓨涓昏〃
             objJsonResult = AddBillMain_Pay_OverApplyBill(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 = "鏂板鍗曟嵁鎴愬姛锛�";
@@ -184,7 +756,7 @@
 
                 //if (OperationType == 2)
                 //{
-                //    ds = oCN.RunProcReturn("select * from PM_ProjectBillMain where HBillNo ='" + HBillNo + "'", "PM_ProjectBillMain");
+                //    ds = oCn.RunProcReturn("select * from PM_ProjectBillMain where HBillNo ='" + HBillNo + "'", "PM_ProjectBillMain");
                 //    if (ds.Tables[0].Rows.Count > 0)
                 //    {
                 //        objJsonResult.code = "0";
@@ -195,7 +767,7 @@
                 //    }
                 //}
 
-                ds = oCN.RunProcReturn("select * from Pay_OverApplyBillMain where HInterID = " + HInterID + " and HBillNo = '" + HBillNo + "'", "Pay_PayMentBillMain");
+                ds = oCn.RunProcReturn("select * from Pay_OverApplyBillMain where HInterID = " + HInterID + " and HBillNo = '" + HBillNo + "'", "Pay_PayMentBillMain");
 
                 if ((OperationType == 1 || OperationType == 2) && ds.Tables[0].Rows.Count == 0)//鏂板
                 {
@@ -221,9 +793,9 @@
                         "')";
 
                     //涓昏〃
-                    oCN.RunProc(sql);
+                    oCn.RunProc(sql);
                     LogService.Write("鐢ㄦ埛:" + user + ",鏃ユ湡:" + DateTime.Now + ",鏂板鍔犵彮鐢宠鍗�:" + HBillNo);
-                    oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + user + "','" + HComputerName + "','" + "鏂板鍔犵彮鐢宠鍗曪細" + HBillNo + "','LMES-鍔犵彮鐢宠鍗曟ā鍧�','" + DBUtility.ClsPub.IPAddress + "','鏂板鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo);
+                    oCn.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + user + "','" + HComputerName + "','" + "鏂板鍔犵彮鐢宠鍗曪細" + HBillNo + "','LMES-鍔犵彮鐢宠鍗曟ā鍧�','" + DBUtility.ClsPub.IPAddress + "','鏂板鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo);
                 }
                 else if (OperationType == 3 || ds.Tables[0].Rows.Count != 0)                    //缂栬緫
                 {
@@ -242,13 +814,13 @@
                         "', HUpdateDate = '" + HUpdaterDate +
                         "' where HInterID = " + HInterID;
 
-                    oCN.RunProc(sql);
+                    oCn.RunProc(sql);
 
                     //鍒犻櫎瀛愯〃
-                    oCN.RunProc("delete from Pay_OverApplyBillSub where HInterID= " + HInterID);
+                    oCn.RunProc("delete from Pay_OverApplyBillSub where HInterID= " + HInterID);
                     //璁板綍鏃ュ織
                     LogService.Write("鐢ㄦ埛:" + user + ",鏃ユ湡:" + DateTime.Now + ",淇敼鍔犵彮鐢宠鍗�:" + HBillNo);
-                    oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + user + "','" + HComputerName + "','" + "淇敼鍔犵彮鐢宠鍗曪細" + HBillNo + "','LMES-鍔犵彮鐢宠鍗曟ā鍧�','" + DBUtility.ClsPub.IPAddress + "','淇敼鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo);
+                    oCn.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + user + "','" + HComputerName + "','" + "淇敼鍔犵彮鐢宠鍗曪細" + HBillNo + "','LMES-鍔犵彮鐢宠鍗曟ā鍧�','" + DBUtility.ClsPub.IPAddress + "','淇敼鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo);
                 }
                 //淇濆瓨瀛愯〃
                 objJsonResult = AddBillSub1_Pay_OverApplyBill(msg3, HInterID, HBillNo, OperationType);
@@ -314,7 +886,7 @@
                     "," + HRelTimes +
                     ",'" + HRemark +
                     "')";
-                oCN.RunProc(sql);
+                oCn.RunProc(sql);
             }
 
             objJsonResult.code = "1";
@@ -357,7 +929,7 @@
                     return objJsonResult;
                 }
 
-                ds = oCN.RunProcReturn("select * from Pay_OverApplyBillMain where HInterID = " + HInterID, "Pay_PayMentBillMain");
+                ds = oCn.RunProcReturn("select * from Pay_OverApplyBillMain where HInterID = " + HInterID, "Pay_PayMentBillMain");
                 string[] HBillStatusList = { "", "鏈", "瀹℃牳閫氳繃", "鍏抽棴", "浣滃簾", "瀹℃牳閫�鍥�", "瀹℃牳涓�", "宸查槄", "宸插洖澶�", "缁撴", "楠岃瘉", "涓嬭揪", "寮�宸�", "鐢宠瀹℃壒", "", "鐢宠妫�楠�", "鍒ゅ畾鍚堟牸", "鍒ゅ畾涓嶅悎鏍�" };
                 if (ds.Tables[0].Rows.Count > 0 && int.Parse(ds.Tables[0].Rows[0]["HBillStatus"].ToString())>1)
                 {
@@ -370,7 +942,7 @@
                 }
 
 
-                ds = oCN.RunProcReturn("exec h_p_Pay_OverApplyBill_EditInit " + HInterID, "h_p_Pay_OverApplyBill_EditInit");
+                ds = oCn.RunProcReturn("exec h_p_Pay_OverApplyBill_EditInit " + HInterID, "h_p_Pay_OverApplyBill_EditInit");
                 tableList.Add(ds.Tables[0]);
                 tableList.Add(ds.Tables[1]);
 
@@ -391,435 +963,6 @@
         }
         #endregion
 
-        #region 鍔犵彮鐢宠鍗� 鏌ヨ
-        [Route("Pay_OverApplyBill/list")]
-        [HttpGet]
-        public object getOverApplyBillList(string sWhere, string user)
-        {
-            try
-            {
-                List<object> columnNameList = new List<object>();
-                if (!DBUtility.ClsPub.Security_Log("Pay_OverApplyBillList", 1, false, user))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
 
-                if (sWhere == null || sWhere.Equals(""))
-                {
-                    ds = oCN.RunProcReturn("select * from h_v_Pay_OverApplyBillList order by hmainid desc", "h_v_Pay_OverApplyBillList");
-                }
-                else
-                {
-                    string sql1 = "select * from h_v_Pay_OverApplyBillList where 1 = 1 ";
-                    string sql = sql1 + sWhere + " order by hmainid desc";
-                    ds = oCN.RunProcReturn(sql, "h_v_Pay_OverApplyBillList");
-                }
-
-                //娣诲姞鍒楀悕
-                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 鍔犵彮鐢宠鍗� 鍒犻櫎
-        /// <summary>
-        ///鍙傛暟锛歴tring HInterID銆�
-        ///杩斿洖鍊硷細object銆�
-        /// </summary>
-        [Route("Pay_OverApplyBill/delete")]
-        [HttpGet]
-        public object deleteOverApplyBill(string HInterID, string user)
-        {
-            try
-            {
-                //鏌ョ湅鏉冮檺
-                if (!DBUtility.ClsPub.Security_Log("Pay_OverApplyBill_Drop", 1, false, user))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "鏃犲垹闄ゆ潈闄愶紒";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-                if (HInterID == null || HInterID.Equals(""))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "HInterID涓嶈兘涓虹┖锛�";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-                oCN.BeginTran();
-
-                oCN.RunProc("delete from Pay_OverApplyBillMain where HInterID = " + HInterID);
-                oCN.RunProc("delete from Pay_OverApplyBillSub where HInterID= " + HInterID);
-
-                oCN.Commit();
-
-                objJsonResult.code = "1";
-                objJsonResult.count = 1;
-                objJsonResult.Message = "Sucess锛�";
-                objJsonResult.data = null;
-                return objJsonResult;
-            }
-            catch (Exception e)
-            {
-                objJsonResult.code = "0";
-                objJsonResult.count = 0;
-                objJsonResult.Message = "Exception锛�" + e.ToString();
-                objJsonResult.data = null;
-                return objJsonResult;
-            }
-        }
-        #endregion
-
-        #region 鍔犵彮鐢宠鍗� 瀹℃牳/鍙嶅鏍�
-        /// <summary>
-        /// 
-        /// </summary>
-        /// <param name="HInterID">鍗曟嵁ID</param>
-        /// <param name="IsAudit">瀹℃牳(0),鍙嶅鏍�(1)</param>
-        /// <param name="CurUserName">瀹℃牳浜�</param>
-        /// <returns></returns>
-        [Route("Pay_OverApplyBill/AuditPay_OverApplyBill")]
-        [HttpGet]
-        public object AuditPay_OverApplyBill(string HInterID, int Type, string user)
-        {
-            try
-            {
-                //鍒ゆ柇鏄惁鏈夊鏍告潈闄�
-                if (!DBUtility.ClsPub.Security_Log("Pay_OverApplyBill_Check", 1, false, user))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "鏃犳潈闄愬鏍�!";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-                if (string.IsNullOrWhiteSpace(HInterID))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "HInterID涓虹┖锛�";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-
-                ClsPub.CurUserName = user;
-                BillOld.MvarItemKey = "Pay_OverApplyBillMain";
-                oCN.BeginTran();//寮�濮嬩簨鍔�
-
-                //Type 1 瀹℃牳  2  鍙嶅鏍�
-                if (Type == 1)
-                {
-                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡瀹℃牳
-                    DataSet ds;
-                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
-                    if (ds.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 (!BillOld.CheckBill(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
-                    {
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
-                        objJsonResult.data = null;
-                        return objJsonResult;
-                    }
-                }
-                else
-                {
-                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍙嶅鏍�
-                    DataSet ds;
-                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
-                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
-                    {
-                        if (ds.Tables[0].Rows[0]["HChecker"] == null || ds.Tables[0].Rows[0]["HChecker"].ToString() == "")
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = "鍗曟嵁宸插弽瀹℃牳!涓嶉渶瑕佸啀鍙嶅鏍�!";
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
-                    }
-                    //鍙嶅鏍稿崟鎹�
-                    if (!BillOld.AbandonCheck(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
-                    {
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "鍙嶅鏍稿け璐�!鍘熷洜:" + ClsPub.sExeReturnInfo;
-                        objJsonResult.data = null;
-                        return objJsonResult;
-                    }
-                }
-
-                oCN.Commit();//鎻愪氦浜嬪姟
-
-                objJsonResult.code = "0";
-                objJsonResult.count = 1;
-                objJsonResult.Message = "鎵ц鎴愬姛锛�";
-                objJsonResult.data = null;
-                return objJsonResult; ;
-
-            }
-            catch (Exception e)
-            {
-                objJsonResult.code = "0";
-                objJsonResult.count = 0;
-                objJsonResult.Message = "鎵ц澶辫触锛�" + e.ToString();
-                objJsonResult.data = null;
-                return objJsonResult;
-            }
-        }
-        #endregion
-        #region 鍔犵彮鐢宠鍗� 鍏抽棴/鍙嶅叧闂姛鑳�
-        [Route("Pay_OverApplyBill/ClosePay_OverApplyBill")]
-        [HttpGet]
-        public object ClosePay_OverApplyBill(string HInterID, int Type, string user)
-        {
-            try
-            {
-                //鍒ゆ柇鏄惁鏈夊垹闄ゆ潈闄�
-                if (!DBUtility.ClsPub.Security_Log("Pay_OverApplyBill_Close", 1, false, user))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "鏃犳潈闄愬叧闂�!";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-                if (string.IsNullOrWhiteSpace(HInterID))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "HInterID涓虹┖锛�";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-                ClsPub.CurUserName = user;
-                BillOld.MvarItemKey = "Pay_OverApplyBillMain";
-                oCN.BeginTran();//寮�濮嬩簨鍔�
-
-                //Type 1 鍏抽棴  2  鍙嶅叧闂�
-                if (Type == 1)
-                {
-                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍏抽棴
-                    DataSet ds;
-                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
-                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
-                    {
-                        if (ds.Tables[0].Rows[0]["HCloseMan"] != null && ds.Tables[0].Rows[0]["HCloseMan"].ToString() != "")
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = "鍗曟嵁宸插叧闂�!涓嶉渶瑕佸啀鍏抽棴!";
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
-                    }
-                    //鍏抽棴鍗曟嵁
-                    if (!BillOld.CloseBill(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
-                    {
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "鍏抽棴澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
-                        objJsonResult.data = null;
-                        return objJsonResult;
-                    }
-                }
-                else
-                {
-                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍙嶅叧闂�
-                    DataSet ds;
-                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
-                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
-                    {
-                        if (ds.Tables[0].Rows[0]["HCloseMan"] == null || ds.Tables[0].Rows[0]["HCloseMan"].ToString() == "")
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = "鍗曟嵁宸插弽鍏抽棴!涓嶉渶瑕佸啀鍙嶅叧闂�!";
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
-                    }
-                    //鍙嶅叧闂崟鎹�
-                    if (!BillOld.CancelClose(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
-                    {
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "鍙嶅叧闂け璐�!鍘熷洜:" + ClsPub.sExeReturnInfo;
-                        objJsonResult.data = null;
-                        return objJsonResult;
-                    }
-                }
-
-                oCN.Commit();//鎻愪氦浜嬪姟
-
-                objJsonResult.code = "0";
-                objJsonResult.count = 1;
-                objJsonResult.Message = "鎵ц鎴愬姛锛�";
-                objJsonResult.data = null;
-                return objJsonResult; ;
-
-            }
-            catch (Exception e)
-            {
-                objJsonResult.code = "0";
-                objJsonResult.count = 0;
-                objJsonResult.Message = "鎵ц澶辫触锛�" + e.ToString();
-                objJsonResult.data = null;
-                return objJsonResult;
-            }
-        }
-        #endregion
-        #region 鍔犵彮鐢宠鍗� 浣滃簾/鍙嶄綔搴熷姛鑳�
-        [Route("Pay_OverApplyBill/DropPay_OverApplyBill")]
-        [HttpGet]
-        public object DropPay_OverApplyBill(string HInterID, int Type, string user)
-        {
-            try
-            {
-                //鍒ゆ柇鏄惁鏈変綔搴熸潈闄�
-                if (!DBUtility.ClsPub.Security_Log("Pay_OverApplyBill_Delete", 1, false, user))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "鏃犳潈闄愪綔搴�!";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-                if (string.IsNullOrWhiteSpace(HInterID))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "HInterID涓虹┖锛�";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-                ClsPub.CurUserName = user;
-                BillOld.MvarItemKey = "Pay_OverApplyBillMain";
-                oCN.BeginTran();//寮�濮嬩簨鍔�
-
-                //Type 1 浣滃簾  2  鍙嶄綔搴�
-                if (Type == 1)
-                {
-                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡浣滃簾
-                    DataSet ds;
-                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
-                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
-                    {
-                        if (ds.Tables[0].Rows[0]["HDeleteMan"] != null && ds.Tables[0].Rows[0]["HDeleteMan"].ToString() != "")
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = "鍗曟嵁宸蹭綔搴�!涓嶉渶瑕佸啀浣滃簾!";
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
-                    }
-                    //浣滃簾鍗曟嵁
-                    if (!BillOld.Cancelltion(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
-                    {
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "浣滃簾澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
-                        objJsonResult.data = null;
-                        return objJsonResult;
-                    }
-                }
-                else
-                {
-                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍙嶄綔搴�
-                    DataSet ds;
-                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
-                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
-                    {
-                        if (ds.Tables[0].Rows[0]["HDeleteMan"] == null || ds.Tables[0].Rows[0]["HDeleteMan"].ToString() == "")
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = "鍗曟嵁宸插弽浣滃簾!涓嶉渶瑕佸啀鍙嶄綔搴�!";
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
-                    }
-                    //鍙嶄綔搴熷崟鎹�
-                    if (!BillOld.AbandonCancelltion(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
-                    {
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "鍙嶄綔搴熷け璐�!鍘熷洜:" + ClsPub.sExeReturnInfo;
-                        objJsonResult.data = null;
-                        return objJsonResult;
-                    }
-                }
-
-                oCN.Commit();//鎻愪氦浜嬪姟
-
-                objJsonResult.code = "0";
-                objJsonResult.count = 1;
-                objJsonResult.Message = "鎵ц鎴愬姛锛�";
-                objJsonResult.data = null;
-                return objJsonResult; ;
-
-            }
-            catch (Exception e)
-            {
-                objJsonResult.code = "0";
-                objJsonResult.count = 0;
-                objJsonResult.Message = "鎵ц澶辫触锛�" + e.ToString();
-                objJsonResult.data = null;
-                return objJsonResult;
-            }
-        }
-        #endregion
     }
 }
\ No newline at end of file
diff --git "a/WebAPI/Controllers/\345\267\245\350\265\204\347\256\241\347\220\206/Pay_PayMentBillController.cs" "b/WebAPI/Controllers/\345\267\245\350\265\204\347\256\241\347\220\206/Pay_PayMentBillController.cs"
index 9fcc17f..1149cb1 100644
--- "a/WebAPI/Controllers/\345\267\245\350\265\204\347\256\241\347\220\206/Pay_PayMentBillController.cs"
+++ "b/WebAPI/Controllers/\345\267\245\350\265\204\347\256\241\347\220\206/Pay_PayMentBillController.cs"
@@ -15,13 +15,587 @@
 {
     public class Pay_PayMentBillController : ApiController
     {
-        public DBUtility.ClsPub.Enum_BillStatus BillStatus;//鍗曟嵁鐘舵�侊紙鏂板锛屼慨鏀癸紝娴忚锛屾洿鏂板崟浠凤紝鍙樻洿锛�
-        private json objJsonResult = new json();
+        public DBUtility.ClsPub.Enum_BillStatus BillStatus;
+        public const string ModName = "2202";                   //鍗曟嵁绫诲瀷
+        public const string ModCaption = "宸ヨ祫鍗�";          //鍗曟嵁鍚嶇О
+        public const string ModRightName = "Pay_PayMentBill";
+        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();
-        public SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+        private json objJsonResult = new json();
+        SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
+        public DAL.ClsPay_PayMentBill oBill = new DAL.ClsPay_PayMentBill();
         public DAL.ClsPay_PayMentBill BillOld = new DAL.ClsPay_PayMentBill();
-        string user_LongShan = "";
-        string HName_LongShan = "";
+
+
+        #region 宸ヨ祫鍗曞垪琛�
+        /// <summary>
+        /// 鑾峰彇宸ヨ祫鍗曞垪琛ㄤ俊鎭�
+        /// </summary>
+        /// <returns></returns>
+        [Route("Pay_PayMentBillController/GetPay_PayMentBillList_Json")]
+        [HttpGet]
+        public object GetPay_PayMentBillList_Json(string sWhere, string HMaker)
+        {
+            try
+            {
+                //鍒ゆ柇鏉冮檺
+                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 h_v_Pay_PayMentBillList where 1=1 " + sWhere + " order by hmainid desc", "h_v_Pay_PayMentBillList");
+                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("Pay_PayMentBillController/GetPay_PayMentBill_Delete_Json")]
+        [HttpGet]
+        public object GetPay_PayMentBill_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))
+                {
+                    //鍒ゆ柇浼氳鏈熸槸鍚﹀悎鐞�
+                    string s = "";
+                    int sYear = 0;
+                    int sPeriod = 0;
+                    if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod_Pay(oBill.omodel.HDate, ref sYear, ref sPeriod, ref s) == false)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = s;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    //鍒犻櫎鍓嶆帶鍒�
+                    DataSet BeforeDs = oCn.RunProcReturn("Exec h_p_Pay_PayMentBill_BeforeDelCtrl " + HInterID.ToString() + ",'" + HMaker + "'", "h_p_Pay_PayMentBill_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_Pay_PayMentBill_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("Pay_PayMentBillController/GetPay_PayMentBill_Check_Json")]
+        [HttpGet]
+        public object GetPay_PayMentBill_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))
+                {
+                    //鍒ゆ柇浼氳鏈熸槸鍚﹀悎鐞�
+                    string s = "";
+                    int sYear = 0;
+                    int sPeriod = 0;
+                    if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod_Pay(oBill.omodel.HDate, ref sYear, ref sPeriod, ref s) == false)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = s;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+
+                    //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_Pay_PayMentBill_BeforeCheckCtrl " + HInterID.ToString() + ",'" + HMaker + "'", "h_p_Pay_PayMentBill_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_Pay_PayMentBill_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_Pay_PayMentBill_BeforeUnCheckCtrl " + HInterID.ToString() + ",'" + HMaker + "'", "h_p_Pay_PayMentBill_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_Pay_PayMentBill_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("Pay_PayMentBillController/GetPay_PayMentBill_Close_Json")]
+        [HttpGet]
+        public object GetPay_PayMentBill_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))
+                {
+                    //鍒ゆ柇浼氳鏈熸槸鍚﹀悎鐞�
+                    string s = "";
+                    int sYear = 0;
+                    int sPeriod = 0;
+                    if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod_Pay(oBill.omodel.HDate, ref sYear, ref sPeriod, ref s) == false)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = s;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+
+                    //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("Pay_PayMentBillController/GetPay_PayMentBill_Cancelltion_Json")]
+        [HttpGet]
+        public object GetPay_PayMentBill_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))
+                {
+                    //鍒ゆ柇浼氳鏈熸槸鍚﹀悎鐞�
+                    string s = "";
+                    int sYear = 0;
+                    int sPeriod = 0;
+                    if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod_Pay(oBill.omodel.HDate, ref sYear, ref sPeriod, ref s) == false)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = s;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+
+                    //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
+
+
+
+
+
+
 
         #region 宸ヨ祫鍗� 鏂板/缂栬緫
         #region 宸ヨ祫鍗� 琛ㄥご鏁版嵁
@@ -94,19 +668,19 @@
             var _value = sMainSub["sMainSub"].ToString();
             string msg1 = _value.ToString();
             //寮�濮嬩簨鍔�
-            oCN.BeginTran();
+            oCn.BeginTran();
             //淇濆瓨涓昏〃
             objJsonResult = AddBillMain_Pay_PayMentBill(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 = "鏂板鍗曟嵁鎴愬姛锛�";
@@ -191,7 +765,7 @@
 
                 //if (OperationType == 2)
                 //{
-                //    ds = oCN.RunProcReturn("select * from PM_ProjectBillMain where HBillNo ='" + HBillNo + "'", "PM_ProjectBillMain");
+                //    ds = oCn.RunProcReturn("select * from PM_ProjectBillMain where HBillNo ='" + HBillNo + "'", "PM_ProjectBillMain");
                 //    if (ds.Tables[0].Rows.Count > 0)
                 //    {
                 //        objJsonResult.code = "0";
@@ -202,7 +776,7 @@
                 //    }
                 //}
 
-                ds = oCN.RunProcReturn("select * from Pay_PayMentBillMain where HInterID = " + HInterID + " and HBillNo = '" + HBillNo + "'", "Pay_PayMentBillMain");
+                ds = oCn.RunProcReturn("select * from Pay_PayMentBillMain where HInterID = " + HInterID + " and HBillNo = '" + HBillNo + "'", "Pay_PayMentBillMain");
 
                 if ((OperationType == 1 || OperationType == 2) && ds.Tables[0].Rows.Count == 0)//鏂板
                 {
@@ -229,9 +803,9 @@
                         "')";
 
                     //涓昏〃
-                    oCN.RunProc(sql);
+                    oCn.RunProc(sql);
                     LogService.Write("鐢ㄦ埛:" + user + ",鏃ユ湡:" + DateTime.Now + ",鏂板宸ヨ祫鍗�:" + HBillNo);
-                    oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + user + "','" + HComputerName + "','" + "鏂板宸ヨ祫鍗曪細" + HBillNo + "','LMES-宸ヨ祫鍗曟ā鍧�','" + DBUtility.ClsPub.IPAddress + "','鏂板鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo);
+                    oCn.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + user + "','" + HComputerName + "','" + "鏂板宸ヨ祫鍗曪細" + HBillNo + "','LMES-宸ヨ祫鍗曟ā鍧�','" + DBUtility.ClsPub.IPAddress + "','鏂板鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo);
                 }
                 else if (OperationType == 3 || ds.Tables[0].Rows.Count != 0)                    //缂栬緫
                 {
@@ -251,13 +825,13 @@
                         "', HUpdateDate = '" + HUpdaterDate +
                         "' where HInterID = " + HInterID;
 
-                    oCN.RunProc(sql);
+                    oCn.RunProc(sql);
 
                     //鍒犻櫎瀛愯〃
-                    oCN.RunProc("delete from Pay_PayMentBillSub where HInterID= " + HInterID);
+                    oCn.RunProc("delete from Pay_PayMentBillSub where HInterID= " + HInterID);
                     //璁板綍鏃ュ織
                     LogService.Write("鐢ㄦ埛:" + user + ",鏃ユ湡:" + DateTime.Now + ",淇敼宸ヨ祫鍗�:" + HBillNo);
-                    oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + user + "','" + HComputerName + "','" + "淇敼宸ヨ祫鍗曪細" + HBillNo + "','LMES-宸ヨ祫鍗曟ā鍧�','" + DBUtility.ClsPub.IPAddress + "','淇敼鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo);
+                    oCn.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + user + "','" + HComputerName + "','" + "淇敼宸ヨ祫鍗曪細" + HBillNo + "','LMES-宸ヨ祫鍗曟ā鍧�','" + DBUtility.ClsPub.IPAddress + "','淇敼鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo);
                 }
                 //淇濆瓨瀛愯〃
                 objJsonResult = AddBillSub1_Pay_PayMentBill(msg3, HInterID, HBillNo, OperationType);
@@ -342,7 +916,7 @@
                     "," + HRelPay +
                     ",'" + HRemark +
                     "')";
-                oCN.RunProc(sql);
+                oCn.RunProc(sql);
             }
 
             objJsonResult.code = "1";
@@ -385,7 +959,7 @@
                     return objJsonResult;
                 }
 
-                ds = oCN.RunProcReturn("exec h_p_Pay_PayMentBill_EditInit " + HInterID, "h_p_Pay_PayMentBill_EditInit");
+                ds = oCn.RunProcReturn("exec h_p_Pay_PayMentBill_EditInit " + HInterID, "h_p_Pay_PayMentBill_EditInit");
                 tableList.Add(ds.Tables[0]);
                 tableList.Add(ds.Tables[1]);
 
@@ -406,436 +980,7 @@
         }
         #endregion
 
-        #region 宸ヨ祫鍗� 鏌ヨ
-        [Route("Pay_PayMentBill/list")]
-        [HttpGet]
-        public object getPayMentBillList(string sWhere, string user)
-        {
-            try
-            {
-                List<object> columnNameList = new List<object>();
-                if (!DBUtility.ClsPub.Security_Log("Pay_PayMentBillList", 1, false, user))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
 
-                if (sWhere == null || sWhere.Equals(""))
-                {
-                    ds = oCN.RunProcReturn("select * from h_v_Pay_PayMentBillList order by hmainid desc", "h_v_Pay_PayMentBillList");
-                }
-                else
-                {
-                    string sql1 = "select * from h_v_Pay_PayMentBillList where 1 = 1 ";
-                    string sql = sql1 + sWhere + " order by hmainid desc";
-                    ds = oCN.RunProcReturn(sql, "h_v_Pay_PayMentBillList");
-                }
-
-                //娣诲姞鍒楀悕
-                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 宸ヨ祫鍗� 鍒犻櫎
-        /// <summary>
-        ///鍙傛暟锛歴tring HInterID銆�
-        ///杩斿洖鍊硷細object銆�
-        /// </summary>
-        [Route("Pay_PayMentBill/delete")]
-        [HttpGet]
-        public object deletePayMentBill(string HInterID, string user)
-        {
-            try
-            {
-                //鏌ョ湅鏉冮檺
-                if (!DBUtility.ClsPub.Security_Log("Pay_PayMentBill_Delete", 1, false, user))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "鏃犲垹闄ゆ潈闄愶紒";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-                if (HInterID == null || HInterID.Equals(""))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "HInterID涓嶈兘涓虹┖锛�";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-                oCN.BeginTran();
-
-                oCN.RunProc("delete from Pay_PayMentBillMain where HInterID = " + HInterID);
-                oCN.RunProc("delete from Pay_PayMentBillSub where HInterID= " + HInterID);
-
-                oCN.Commit();
-
-                objJsonResult.code = "1";
-                objJsonResult.count = 1;
-                objJsonResult.Message = "Sucess锛�";
-                objJsonResult.data = null;
-                return objJsonResult;
-            }
-            catch (Exception e)
-            {
-                objJsonResult.code = "0";
-                objJsonResult.count = 0;
-                objJsonResult.Message = "Exception锛�" + e.ToString();
-                objJsonResult.data = null;
-                return objJsonResult;
-            }
-        }
-        #endregion
-
-        #region 宸ヨ祫鍗� 瀹℃牳/鍙嶅鏍�
-        /// <summary>
-        /// 
-        /// </summary>
-        /// <param name="HInterID">鍗曟嵁ID</param>
-        /// <param name="IsAudit">瀹℃牳(0),鍙嶅鏍�(1)</param>
-        /// <param name="CurUserName">瀹℃牳浜�</param>
-        /// <returns></returns>
-        [Route("Pay_PayMentBill/AuditPay_PayMentBill")]
-        [HttpGet]
-        public object AuditPay_PayMentBill(string HInterID, int Type, string user)
-        {
-            try
-            {
-                //鍒ゆ柇鏄惁鏈夊鏍告潈闄�
-                if (!DBUtility.ClsPub.Security_Log("Pay_PayMentBill_Check", 1, false, user))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "鏃犳潈闄愬鏍�!";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-                if (string.IsNullOrWhiteSpace(HInterID))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "HInterID涓虹┖锛�";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-
-                ClsPub.CurUserName = user;
-                BillOld.MvarItemKey = "Pay_PayMentBillMain";
-                oCN.BeginTran();//寮�濮嬩簨鍔�
-
-                //Type 1 瀹℃牳  2  鍙嶅鏍�
-                if (Type == 1)
-                {
-                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡瀹℃牳
-                    DataSet ds;
-                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
-                    if (ds.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 (!BillOld.CheckBill(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
-                    {
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
-                        objJsonResult.data = null;
-                        return objJsonResult;
-                    }
-                }
-                else
-                {
-                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍙嶅鏍�
-                    DataSet ds;
-                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
-                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
-                    {
-                        if (ds.Tables[0].Rows[0]["HChecker"] == null || ds.Tables[0].Rows[0]["HChecker"].ToString() == "")
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = "鍗曟嵁宸插弽瀹℃牳!涓嶉渶瑕佸啀鍙嶅鏍�!";
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
-                    }
-                    //鍙嶅鏍稿崟鎹�
-                    if (!BillOld.AbandonCheck(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
-                    {
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "鍙嶅鏍稿け璐�!鍘熷洜:" + ClsPub.sExeReturnInfo;
-                        objJsonResult.data = null;
-                        return objJsonResult;
-                    }
-                }
-
-                oCN.Commit();//鎻愪氦浜嬪姟
-
-                objJsonResult.code = "0";
-                objJsonResult.count = 1;
-                objJsonResult.Message = "鎵ц鎴愬姛锛�";
-                objJsonResult.data = null;
-                return objJsonResult; ;
-
-            }
-            catch (Exception e)
-            {
-                objJsonResult.code = "0";
-                objJsonResult.count = 0;
-                objJsonResult.Message = "鎵ц澶辫触锛�" + e.ToString();
-                objJsonResult.data = null;
-                return objJsonResult;
-            }
-        }
-        #endregion
-        #region 宸ヨ祫鍗� 鍏抽棴/鍙嶅叧闂姛鑳�
-        [Route("Pay_PayMentBill/ClosePay_PayMentBill")]
-        [HttpGet]
-        public object ClosePay_PayMentBill(string HInterID, int Type, string user)
-        {
-            try
-            {
-                //鍒ゆ柇鏄惁鏈夊垹闄ゆ潈闄�
-                if (!DBUtility.ClsPub.Security_Log("Pay_PayMentBill_Close", 1, false, user))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "鏃犳潈闄愬叧闂�!";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-                if (string.IsNullOrWhiteSpace(HInterID))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "HInterID涓虹┖锛�";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-                ClsPub.CurUserName = user;
-                BillOld.MvarItemKey = "Pay_PayMentBillMain";
-                oCN.BeginTran();//寮�濮嬩簨鍔�
-
-                //Type 1 鍏抽棴  2  鍙嶅叧闂�
-                if (Type == 1)
-                {
-                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍏抽棴
-                    DataSet ds;
-                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
-                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
-                    {
-                        if (ds.Tables[0].Rows[0]["HCloseMan"] != null && ds.Tables[0].Rows[0]["HCloseMan"].ToString() != "")
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = "鍗曟嵁宸插叧闂�!涓嶉渶瑕佸啀鍏抽棴!";
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
-                    }
-                    //鍏抽棴鍗曟嵁
-                    if (!BillOld.CloseBill(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
-                    {
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "鍏抽棴澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
-                        objJsonResult.data = null;
-                        return objJsonResult;
-                    }
-                }
-                else
-                {
-                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍙嶅叧闂�
-                    DataSet ds;
-                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
-                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
-                    {
-                        if (ds.Tables[0].Rows[0]["HCloseMan"] == null || ds.Tables[0].Rows[0]["HCloseMan"].ToString() == "")
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = "鍗曟嵁宸插弽鍏抽棴!涓嶉渶瑕佸啀鍙嶅叧闂�!";
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
-                    }
-                    //鍙嶅叧闂崟鎹�
-                    if (!BillOld.CancelClose(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
-                    {
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "鍙嶅叧闂け璐�!鍘熷洜:" + ClsPub.sExeReturnInfo;
-                        objJsonResult.data = null;
-                        return objJsonResult;
-                    }
-                }
-
-                oCN.Commit();//鎻愪氦浜嬪姟
-
-                objJsonResult.code = "0";
-                objJsonResult.count = 1;
-                objJsonResult.Message = "鎵ц鎴愬姛锛�";
-                objJsonResult.data = null;
-                return objJsonResult; ;
-
-            }
-            catch (Exception e)
-            {
-                objJsonResult.code = "0";
-                objJsonResult.count = 0;
-                objJsonResult.Message = "鎵ц澶辫触锛�" + e.ToString();
-                objJsonResult.data = null;
-                return objJsonResult;
-            }
-        }
-        #endregion
-        #region 宸ヨ祫鍗� 浣滃簾/鍙嶄綔搴熷姛鑳�
-        [Route("Pay_PayMentBill/DropPay_PayMentBill")]
-        [HttpGet]
-        public object DropPay_PayMentBill(string HInterID, int Type, string user)
-        {
-            try
-            {
-                //鍒ゆ柇鏄惁鏈変綔搴熸潈闄�
-                if (!DBUtility.ClsPub.Security_Log("Pay_PayMentBill_Drop", 1, false, user))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "鏃犳潈闄愪綔搴�!";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-                if (string.IsNullOrWhiteSpace(HInterID))
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "HInterID涓虹┖锛�";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-
-                ClsPub.CurUserName = user;
-                BillOld.MvarItemKey = "Pay_PayMentBillMain";
-                oCN.BeginTran();//寮�濮嬩簨鍔�
-
-                //Type 1 浣滃簾  2  鍙嶄綔搴�
-                if (Type == 1)
-                {
-                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡浣滃簾
-                    DataSet ds;
-                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
-                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
-                    {
-                        if (ds.Tables[0].Rows[0]["HDeleteMan"] != null && ds.Tables[0].Rows[0]["HDeleteMan"].ToString() != "")
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = "鍗曟嵁宸蹭綔搴�!涓嶉渶瑕佸啀浣滃簾!";
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
-                    }
-                    //浣滃簾鍗曟嵁
-                    if (!BillOld.Cancelltion(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
-                    {
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "浣滃簾澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
-                        objJsonResult.data = null;
-                        return objJsonResult;
-                    }
-                }
-                else
-                {
-                    //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍙嶄綔搴�
-                    DataSet ds;
-                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
-                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
-                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
-                    {
-                        if (ds.Tables[0].Rows[0]["HDeleteMan"] == null || ds.Tables[0].Rows[0]["HDeleteMan"].ToString() == "")
-                        {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = "鍗曟嵁宸插弽浣滃簾!涓嶉渶瑕佸啀鍙嶄綔搴�!";
-                            objJsonResult.data = null;
-                            return objJsonResult;
-                        }
-                    }
-                    //鍙嶄綔搴熷崟鎹�
-                    if (!BillOld.AbandonCancelltion(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
-                    {
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "鍙嶄綔搴熷け璐�!鍘熷洜:" + ClsPub.sExeReturnInfo;
-                        objJsonResult.data = null;
-                        return objJsonResult;
-                    }
-                }
-
-                oCN.Commit();//鎻愪氦浜嬪姟
-
-                objJsonResult.code = "0";
-                objJsonResult.count = 1;
-                objJsonResult.Message = "鎵ц鎴愬姛锛�";
-                objJsonResult.data = null;
-                return objJsonResult; ;
-
-            }
-            catch (Exception e)
-            {
-                objJsonResult.code = "0";
-                objJsonResult.count = 0;
-                objJsonResult.Message = "鎵ц澶辫触锛�" + e.ToString();
-                objJsonResult.data = null;
-                return objJsonResult;
-            }
-        }
-        #endregion
 
         #region 鏍规嵁鐝粍鑾峰彇宸ヨ祫鍗曞瓙琛ㄦ暟鎹�
         [Route("Pay_PayMentBill/getPayMentBillSub")]
@@ -846,7 +991,7 @@
             {
                 List<object> columnNameList = new List<object>();
                 string sql = "exec h_v_Pay_PayMentBill_getSubDataBasedGroupID " + HGroupID + "," + HYear + "," + HMonth;
-                ds = oCN.RunProcReturn(sql, "h_v_Pay_PayMentBill_getSubDataBasedGroupID");
+                ds = oCn.RunProcReturn(sql, "h_v_Pay_PayMentBill_getSubDataBasedGroupID");
 
                 //娣诲姞鍒楀悕
                 foreach (DataColumn col in ds.Tables[0].Columns)
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 64eaf38..279d1bd 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"
@@ -857,6 +857,90 @@
 
         #region 鎵爜妯″潡璋冪敤鏂规硶
 
+        #region 鐩存帴璋冩嫧    鑾峰彇璋冩嫧鍑鸿揣绫诲瀷
+
+        /// <summary>
+        /// 鑾峰彇璋冩嫧鍑鸿揣绫诲瀷
+        /// </summary>
+        /// <returns></returns>
+        [Route("WEBSController/GetStockMoveStyle_Json")]
+        [HttpGet]
+        public Object GetStockMoveStyle_Json()
+        {
+            try
+            {
+                ds = oWebs.get_StockMoveStyle();
+                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>
+        /// <returns></returns>
+        [Route("WEBSController/GetMoveDirect_Json")]
+        [HttpGet]
+        public Object GetMoveDirect_Json()
+        {
+            try
+            {
+                ds = oWebs.get_MoveDirect();
+                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>
@@ -2233,7 +2317,6 @@
 
         #endregion
 
-
         #region 鐢熶骇琛ユ枡    涓婁紶鐢熷崟
 
         #region 鐢熶骇琛ユ枡    鏍¢獙妯″紡
@@ -2292,7 +2375,6 @@
         #endregion
 
         #endregion
-
 
         #region 濮斿琛ユ枡    涓婁紶鐢熷崟
 
@@ -2353,8 +2435,114 @@
 
         #endregion
 
-
         #region 鐩存帴璋冩嫧    涓婁紶鐢熷崟
+
+        #region 鐩存帴璋冩嫧    鏂板妯″紡
+
+        /// <summary>
+        /// 鐩存帴璋冩嫧鏂板涓婁紶
+        /// </summary>
+        /// <returns></returns>
+        [Route("WEBSController/set_SaveMoveStockBill_Json")]
+        [HttpPost]
+        public object set_SaveMoveStockBill_Json([FromBody] JObject oMain)
+        {
+            var _value = oMain["oMain"].ToString();
+            string msg1 = _value.ToString();
+            try
+            {
+                List<Model.ClsKf_MoveStockBillMain> lsmain = new List<Model.ClsKf_MoveStockBillMain>();
+                ListModels oListModels = new ListModels();
+                lsmain = oListModels.getMoveStockBillMainByJson(msg1);
+                WebS.ClsKf_MoveStockBillMain websLsmain = new WebS.ClsKf_MoveStockBillMain();
+                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;
+                websLsmain.HStockStyle = lsmain[0].HStockStyle;
+                websLsmain.HTransferDirect = lsmain[0].HTransferDirect;
+                websLsmain.HShipType = lsmain[0].HShipType;
+                if (lsmain[0].HMainSourceBillType == "1402")
+                {
+                    websLsmain.HMainSourceBillType = "鍙戣揣閫氱煡鍗�";
+                }
+                else if (lsmain[0].HMainSourceBillType == "1243")
+                {
+                    websLsmain.HMainSourceBillType = "璋冩嫧鐢宠鍗�";
+                }
+                else if (lsmain[0].HMainSourceBillType == "3720")
+                {
+                    websLsmain.HMainSourceBillType = "鐢熶骇鐢ㄦ枡娓呭崟";
+                }
+                else if (lsmain[0].HMainSourceBillType == "1604")
+                {
+                    websLsmain.HMainSourceBillType = "濮斿鐢ㄦ枡娓呭崟";
+                }
+                else if (lsmain[0].HMainSourceBillType == "1214")
+                {
+                    websLsmain.HMainSourceBillType = "鐢熶骇鍙戞枡閫氱煡鍗�";
+                }
+                else if (lsmain[0].HMainSourceBillType == "3721")
+                {
+                    websLsmain.HMainSourceBillType = "鐢熶骇澶囨枡鍗�";
+                }
+                else if (lsmain[0].HMainSourceBillType == "1242")
+                {
+                    websLsmain.HMainSourceBillType = "鍑哄簱鐢宠鍗�";
+                }
+                else
+                {
+                    websLsmain.HMainSourceBillType = "鎵嬪伐褰曞叆";
+                }
+                websLsmain.HMaker = lsmain[0].HMaker;
+                websLsmain.HBillerID = lsmain[0].HBillerID;
+                websLsmain.HStockInOrgID = lsmain[0].HStockInOrgID;
+                websLsmain.HStockOutOrgID = lsmain[0].HStockOutOrgID;
+                websLsmain.HSTOCKORGID = lsmain[0].HStockOutOrgID;
+                websLsmain.HOWNERID = lsmain[0].HStockOutOrgID;
+
+                if (oWebs.set_SaveMoveStockBill(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 鎹㈡墭璋冩嫧鍗�
 
@@ -2399,7 +2587,179 @@
 
         #endregion
 
+        #region 鍒嗘寮忚皟鍑�    涓婁紶鐢熷崟
 
+        #region 鍒嗘寮忚皟鍑�    鏂板妯″紡
+
+        /// <summary>
+        /// 鍒嗘寮忚皟鍑烘柊澧炰笂浼�
+        /// </summary>
+        /// <returns></returns>
+        [Route("WEBSController/set_SaveMoveStockStepOutBill_Json")]
+        [HttpPost]
+        public object set_SaveMoveStockStepOutBill_Json([FromBody] JObject oMain)
+        {
+            var _value = oMain["oMain"].ToString();
+            string msg1 = _value.ToString();
+            try
+            {
+                List<Model.ClsKf_MoveStockStepOutBillMain> lsmain = new List<Model.ClsKf_MoveStockStepOutBillMain>();
+                ListModels oListModels = new ListModels();
+                lsmain = oListModels.getMoveStockStepOutBillMainByJson(msg1);
+                WebS.ClsKf_MoveStockStepOutBillMain websLsmain = new WebS.ClsKf_MoveStockStepOutBillMain();
+                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;
+                websLsmain.HStockStyle = lsmain[0].HStockStyle;
+                if (lsmain[0].HMainSourceBillType == "1402")
+                {
+                    websLsmain.HMainSourceBillType = "鍙戣揣閫氱煡鍗�";
+                }
+                else if (lsmain[0].HMainSourceBillType == "1243")
+                {
+                    websLsmain.HMainSourceBillType = "璋冩嫧鐢宠鍗�";
+                }
+                else
+                {
+                    websLsmain.HMainSourceBillType = "鎵嬪伐褰曞叆";
+                }
+                websLsmain.HMaker = lsmain[0].HMaker;
+                websLsmain.HBillerID = lsmain[0].HBillerID;
+                websLsmain.HStockInOrgID = lsmain[0].HStockInOrgID;
+                websLsmain.HStockOutOrgID = lsmain[0].HStockOutOrgID;
+                websLsmain.HSTOCKORGID = lsmain[0].HStockOutOrgID;
+                websLsmain.HOWNERID = lsmain[0].HStockOutOrgID;
+
+                if (oWebs.set_SaveMoveStockStepOutBill_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
+
+        #endregion
+
+        #region 鍒嗘寮忚皟鍏�    涓婁紶鐢熷崟
+
+        #region 鍒嗘寮忚皟鍏�    鏂板妯″紡
+
+        /// <summary>
+        /// 鍒嗘寮忚皟鍏ユ柊澧炰笂浼�
+        /// </summary>
+        /// <returns></returns>
+        [Route("WEBSController/set_SaveMoveStockStepInBill_Json")]
+        [HttpPost]
+        public object set_SaveMoveStockStepInBill_Json([FromBody] JObject oMain)
+        {
+            var _value = oMain["oMain"].ToString();
+            string msg1 = _value.ToString();
+            try
+            {
+                List<Model.ClsKf_MoveStockStepInBillMain> lsmain = new List<Model.ClsKf_MoveStockStepInBillMain>();
+                ListModels oListModels = new ListModels();
+                lsmain = oListModels.getMoveStockStepInBillMainByJson(msg1);
+                WebS.ClsKf_MoveStockStepInBillMain websLsmain = new WebS.ClsKf_MoveStockStepInBillMain();
+                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;
+                websLsmain.HStockStyle = lsmain[0].HStockStyle;
+                if (lsmain[0].HMainSourceBillType == "1250")
+                {
+                    websLsmain.HMainSourceBillType = "鍒嗘寮忚皟鍑哄崟";
+                }
+                else
+                {
+                    websLsmain.HMainSourceBillType = "鎵嬪伐褰曞叆";
+                }
+                websLsmain.HMaker = lsmain[0].HMaker;
+                websLsmain.HBillerID = lsmain[0].HBillerID;
+                websLsmain.HStockInOrgID = lsmain[0].HStockInOrgID;
+                websLsmain.HStockOutOrgID = lsmain[0].HStockOutOrgID;
+                websLsmain.HSTOCKORGID = lsmain[0].HStockOutOrgID;
+                websLsmain.HOWNERID = lsmain[0].HStockOutOrgID;
+
+                if (oWebs.set_SaveMoveStockStepInBill_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
+
+        #endregion
 
         #region 鐢熶骇缁勬墭鍗�    涓婁紶鐢熷崟
 
@@ -3022,6 +3382,66 @@
         #region 鐗╂枡鏉$爜澶勭悊鏂规硶    璋冩嫧妯″潡
 
         /// <summary>
+        /// 鐗╂枡鏉$爜鏂囨湰妗� 璋冩嫧鎵爜璋冪敤  20240222
+        /// </summary>
+        /// <returns></returns>
+        [Route("WEBSController/get_BarCode_MoveStock_Json")]
+        [HttpGet]
+        public Object get_BarCode_MoveStock_Json(string sBarCode, Int64 HInterID, string HBillType, string HBillNo, string HMaker, Int64 HWhID, Int64 HSPID, Int64 HSCWHID, Int64 HSCSPID, Double HQty, bool SourceFlag, string HSourceBillNo, string HSourceBillType, Int64 HStockInOrgID, Int64 HStockOutOrgID, string HScanStyle, string HCustom1, string HCustom2)
+        {
+            string sErrMsg = "";
+            string sJXCode = "";
+            if (oSystemParameter.ShowBill(ref sErrMsg) == true)
+            {
+                if (oSystemParameter.omodel.WMS_CampanyName == "瀹夌憺") //绯荤粺鍙傛暟  瀹㈡埛瀹氬埗鍖栧悕绉�     绌虹櫧涓洪�氱敤
+                {
+                    sJXCode = POStockInBillController.JX_Json(sBarCode, HInterID, HBillType, HStockOutOrgID, HBillNo, HMaker);
+                    SourceFlag = true;
+                }
+                else
+                {
+                    sJXCode = sBarCode;
+                }
+                try
+                {
+                    WebSoBar = oWebs.get_BarCode_MoveStock(sJXCode, HInterID, HBillType, HBillNo, HMaker, HWhID, HSPID, HSCWHID, HSCSPID, HQty, SourceFlag, HSourceBillNo, HSourceBillType, HStockInOrgID, HStockOutOrgID, HScanStyle, ref DBUtility.ClsPub.sErrInfo, HCustom1, HCustom2);
+                    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;
+                }
+            }
+            else
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鑾峰彇绯荤粺鍙傛暟澶辫触锛� " + sErrMsg;
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+
+        /// <summary>
         /// 鐗╂枡鏉$爜鏂囨湰妗� 鎵爜璋冪敤
         /// </summary>
         /// <returns></returns>
diff --git "a/WebAPI/Controllers/\347\224\237\344\272\247\347\256\241\347\220\206/\347\224\237\344\272\247\344\273\273\345\212\241\345\215\225/Sc_ICMOBillController.cs" "b/WebAPI/Controllers/\347\224\237\344\272\247\347\256\241\347\220\206/\347\224\237\344\272\247\344\273\273\345\212\241\345\215\225/Sc_ICMOBillController.cs"
index 353e44c..8f85031 100644
--- "a/WebAPI/Controllers/\347\224\237\344\272\247\347\256\241\347\220\206/\347\224\237\344\272\247\344\273\273\345\212\241\345\215\225/Sc_ICMOBillController.cs"
+++ "b/WebAPI/Controllers/\347\224\237\344\272\247\347\256\241\347\220\206/\347\224\237\344\272\247\344\273\273\345\212\241\345\215\225/Sc_ICMOBillController.cs"
@@ -487,32 +487,32 @@
                 string HMaker = user;//鍒跺崟浜�
                 string HIsStockQty = mainList[0].HIsStockQty;
                 string HRemark3 = mainList[0].HRemark3;
-              
+
+                //淇濆瓨鍓嶆帶鍒�=========================================              
+                ds = oCN.RunProcReturn("exec h_p_Sc_ICMOBill_BeforeSaveCtrl_New " + HInterID, "h_p_Sc_ICMOBill_BeforeSaveCtrl_New");
+
+                if (ds == null || ds.Tables[0].Rows.Count == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "淇濆瓨鍓嶅垽鏂け璐ワ紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) != "0")
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "淇濆瓨澶辫触锛�" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                //=========================================================
 
                 ds = oCN.RunProcReturn("select * from h_v_IF_ICMOBillList where hmainid=" + HInterID + " and 鍗曟嵁鍙�='" + HBillNo + "'", "h_v_IF_ICMOBillList");
 
                 if ((OperationType == 1 || OperationType == 2 || OperationType == 4) && ds.Tables[0].Rows.Count == 0)//鏂板
                 {
-                    //淇濆瓨鍓嶆帶鍒�=========================================              
-                    ds = oCN.RunProcReturn("exec h_p_Sc_ICMOBill_BeforeSaveCtrl_New " + HInterID, "h_p_Sc_ICMOBill_BeforeSaveCtrl_New");
-
-                    if (ds == null || ds.Tables[0].Rows.Count == 0)
-                    {
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 0;
-                        objJsonResult.Message = "淇濆瓨鍓嶅垽鏂け璐ワ紒";
-                        objJsonResult.data = null;
-                        return objJsonResult;
-                    }
-                    if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) != "0")
-                    {
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 0;
-                        objJsonResult.Message = "淇濆瓨澶辫触锛�" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
-                        objJsonResult.data = null;
-                        return objJsonResult;
-                    }
-                    //=========================================================
                     //涓昏〃
                     oCN.RunProc(@"Insert Into Sc_ICMOBillMain   
                         (HBillType,HBillStatus,HInterID,HBillNo,HDate,HPRDORGID
@@ -549,6 +549,9 @@
                                 ", HSeOrderBillNo='" + HSeOrderBillNo + "', HSeOrderInterID=" + HSeOrderInterID + ", HSeOrderEntryID=" + HSeOrderEntryID + ", HEmpID=" + HEmpID + ", HCusID=" + HCusID +
                                 ", HCenterID=" + HCenterID + ",HBomID=" + HBomID + ",HIsStockQty='"+ HIsStockQty + "',HRemark3='" + HRemark3 + "' where HInterID=" + HInterID);
 
+                    //鐢熶骇璁㈠崟鍒犻櫎鍥炲~閿�鍞鍗曞叧鑱旀暟閲�
+                    oCN.RunProc("exec h_p_Xs_UpDateRelation_SeOrderToICMO_Delete " + HInterID);
+
                     //鍒犻櫎瀛愯〃
                     oCN.RunProc("delete from Sc_ICMOBillSub where HInterID='" + HInterID + "' and HEntryID='" + HEntryID + "'");
 
@@ -567,13 +570,30 @@
                 }
                 else if (OperationType == 3)
                 {
-                    //鐢熶骇璁㈠崟鍒犻櫎鍥炲~閿�鍞鍗曞叧鑱旀暟閲�
-                    oCN.RunProc("exec h_p_Xs_UpDateRelation_SeOrderToICMO_Delete " + HInterID);
                     //鐢熶骇璁㈠崟鏂板鍥炲~閿�鍞鍗曞叧鑱旀暟閲�
                     oCN.RunProc("exec h_p_Xs_UpDateRelation_SeOrderToICMO_Add " + HInterID);
                 }
 
+                //淇濆瓨鍚庢帶鍒�=========================================              
+                ds = oCN.RunProcReturn("exec h_p_Sc_ICMOBill_AfterSaveCtrl_New " + HInterID, "h_p_Sc_ICMOBill_AfterSaveCtrl_New");
 
+                if (ds == null || ds.Tables[0].Rows.Count == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "淇濆瓨鍚庡垽鏂け璐ワ紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) != "0")
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "淇濆瓨澶辫触锛�" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                //=========================================================
 
                 if (objJsonResult.code == "0")
                 {
@@ -659,26 +679,6 @@
 	                    ,{oSub.HSourceInterID},{oSub.HSourceEntryID},'{oSub.HSourceBillNo}','{oSub.HSourceBillType}',0,0
                 ,{oSub.HAuxQty},{oSub.HAuxUnit},{oSub.HWidth},{oSub.HWeight},'{oSub.HColorRemark}','{oSub.HCusMaterName}','{oSub.HCusModel}','{oSub.HOrderPickRemark}','{oSub.HCusMaterNumber}')");
 
-            //淇濆瓨鍚庢帶鍒�=========================================              
-            ds = oCN.RunProcReturn("exec h_p_Sc_ICMOBill_AfterSaveCtrl_New " + HInterID, "h_p_Sc_ICMOBill_AfterSaveCtrl_New");
-
-            if (ds == null || ds.Tables[0].Rows.Count == 0)
-            {
-                objJsonResult.code = "0";
-                objJsonResult.count = 0;
-                objJsonResult.Message = "淇濆瓨鍚庡垽鏂け璐ワ紒";
-                objJsonResult.data = null;
-                return objJsonResult;
-            }
-            if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) != "0")
-            {
-                objJsonResult.code = "0";
-                objJsonResult.count = 0;
-                objJsonResult.Message = "淇濆瓨澶辫触锛�" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
-                objJsonResult.data = null;
-                return objJsonResult;
-            }
-            //=========================================================
 
             objJsonResult.code = "1";
             objJsonResult.count = 1;
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 a626d3e..8bc0e61 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"
@@ -2337,5 +2337,1806 @@
             }
         }
         #endregion
+
+        #region 椤圭洰璐圭敤 淇濆瓨/缂栬緫
+        /// <summary>
+        /// 椤圭洰璐圭敤
+        /// </summary>
+        /// <param name="msg"></param>
+        /// <returns></returns>
+        [Route("PM_ProjectBill/SavePM_ProjectMoneyBillMain")]
+        [HttpPost]
+        public object SavePM_ProjectMoneyBillMain([FromBody] JObject sMainSub)
+        {
+            var _value = sMainSub["sMainSub"].ToString();
+            string msg1 = _value.ToString();
+            string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+            string msg2 = sArray[0].ToString();
+            string msg3 = sArray[1].ToString(); //瀛愯〃
+            string refSav = sArray[2].ToString();//鎿嶄綔鏂瑰紡鏁版嵁绫诲瀷 1娣诲姞 3淇敼 2 澶嶅埗
+            string user = sArray[3].ToString();//鐢ㄦ埛鍚�
+
+            string UserName = "";
+            string s = "";
+            ListModels oListModels = new ListModels();
+            try
+            {
+                //淇濆瓨鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log_second("PM_ProjectMoneyBillMain_Edit", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犱繚瀛樻潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                
+                DAL.ClsPM_ProjectMoneyBillMain oBill = new DAL.ClsPM_ProjectMoneyBillMain();
+                List<Model.ClsPM_ProjectMoneyBillMain> lsmain = new List<Model.ClsPM_ProjectMoneyBillMain>();
+                msg2 = msg2.Replace("\\", "");
+                msg2 = msg2.Replace("\n", "");  //\n
+                lsmain = oListModels.getObjectByJson_PM_ProjectMoneyBillMain(msg2);
+                foreach (Model.ClsPM_ProjectMoneyBillMain oItem in lsmain)
+                {
+                    if (refSav == "Add")
+                    {
+                        //鍗曟嵁鍙锋槸鍚﹂噸澶�
+                        if (BillNew1.IsExistBillNo(ref ClsPub.sExeReturnInfo, oItem.HBillNo, BillStatus, BillOld.omodel.HInterID))
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鍙烽噸澶嶏紒涓嶅厑璁镐繚瀛橈紒";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                    }
+                    if (refSav == "Update")
+                    {
+                        if (BillOld1.ShowBill(oItem.HInterID, ref s) == false)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "姝ゅ崟鎹湁璇紒";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                        //鍒ゆ柇鏄惁鍙紪杈�
+                        if (BillOld1.omodel.HChecker != "" && BillOld1.omodel.HChecker != null)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "姝ゅ崟鎹凡缁忚瀹℃牳锛屼笉鍏佽淇敼锛�";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                        if (BillOld1.omodel.HBillStatus > 1)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "姝ゅ崟鎹浜庝笉鍙紪杈戠姸鎬侊紝涓嶅厑璁镐慨鏀癸紒";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                        if (!DBUtility.Xt_BaseBillFun.Fun_AllowEditBill(BillOld, ref s))
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = s + "锛屼笉鍏佽淇敼";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                    }
+                    UserName = oItem.HMaker;  //鍒跺崟浜�
+                    oItem.HBillType = "4762";
+                    oItem.HBillSubType = "4762";
+
+
+
+                    //oItem.HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year);
+                    oItem.HPeriod = DBUtility.ClsPub.isLong(DateTime.Now.Month);
+                    oItem.HMakeDate = DBUtility.ClsPub.isStrNull(DateTime.Now.ToString("yyyy-MM-dd"));
+
+                    if (DBUtility.ClsPub.isStrNull(oItem.HDate) == "")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "淇濆瓨澶辫触锛佹病鏈夊崟鎹棩鏈燂紝鏃犳硶淇濆瓨锛�";
+                        objJsonResult.data = 1;
+                        return objJsonResult;
+                    }
+                    oBill.omodel = oItem;
+                }
+                // 琛ㄤ綋鏁版嵁
+                //鎸� },{鏉ユ媶鍒嗘暟缁� //鍘绘帀銆愬拰銆�
+                msg3 = msg3.Substring(1, msg3.Length - 2);
+                msg3 = msg3.Replace("\\", "");
+                msg3 = msg3.Replace("\n", "");  //\n
+                List<Model.ClsPM_ProjectMoneyBillSub> ls = new List<Model.ClsPM_ProjectMoneyBillSub>();
+                ls = oListModels.getObjectByJson_PM_ProjectMoneyBillSub(msg3);
+                int i = 0;
+                foreach (Model.ClsPM_ProjectMoneyBillSub oItemSub in ls)
+                {
+                    i++;
+                    oItemSub.HEntryID = i;
+
+                   
+                    oItemSub.HEntryCloseDate = DBUtility.ClsPub.isDate(DateTime.Now);
+                    oItemSub.HCloseType = false;   //鍏抽棴绫诲瀷
+                   
+                    oBill.DetailColl.Add(oItemSub);
+
+                }
+                //淇濆瓨
+                //淇濆瓨瀹屾瘯鍚庡鐞�
+                //淇濆瓨
+                //淇濆瓨瀹屾瘯鍚庡鐞�
+                bool bResult;
+                if (refSav == "Add")
+                {
+
+                    bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
+                }
+                else if (refSav == "Update")
+                {
+                    bResult = oBill.ModifyBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
+                }
+                else
+                {
+                    bResult = false;
+                }
+                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)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "淇濆瓨澶辫触锛�" + e.ToString();
+                objJsonResult.data = 1;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 椤圭洰璐圭敤鍒楄〃 鏌ヨ
+        /// <summary>
+        /// 杩斿洖椤圭洰璐圭敤鍒楄〃
+        ///鍙傛暟锛歴tring sql銆�
+        ///杩斿洖鍊硷細object銆�
+        /// </summary>
+        [Route("PM_ProjectBill/getPM_ProjectMoneyBillMainList")]
+        [HttpGet]
+        public object getPM_ProjectMoneyBillMainList(string sWhere, string user)
+        {
+            try
+            {
+                List<object> columnNameList = new List<object>();
+
+                //鏌ョ湅鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("PM_ProjectMoneyBillMain_Query", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
+                if (sWhere == null || sWhere.Equals(""))
+                {
+                    ds = oCN.RunProcReturn("select * from h_v_PM_ProjectMoneyBillMainList order by 鍗曟嵁鍙� desc", "h_v_PM_ProjectMoneyBillMainList");
+                }
+                else
+                {
+                    string sql1 = "select * from h_v_PM_ProjectMoneyBillMainList where 1 = 1 ";
+                    string sql = sql1 + sWhere + " order by 鍗曟嵁鍙� desc";
+                    ds = oCN.RunProcReturn(sql, "h_v_PM_ProjectMoneyBillMainList");
+                }
+
+                //娣诲姞鍒楀悕
+                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("PM_ProjectBill/PM_ProjectMoneyBillMainEditList")]
+        [HttpGet]
+        public object PM_ProjectMoneyBillMainEditList(string HInterID, string User)
+        {
+            try
+            {
+                List<DataTable> tableList = new List<DataTable>();
+
+                //鏌ョ湅鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("PM_ProjectMoneyBillMain_Edit", 1, false, User))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                if (HInterID == null || HInterID.Equals(""))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "HInterID涓嶈兘涓虹┖锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                ds = oCN.RunProcReturn("exec h_p_PM_ProjectMoneyBill_EditInit   " + HInterID, "h_p_PM_ProjectMoneyBill_EditInit");
+                tableList.Add(ds.Tables[0]);
+                tableList.Add(ds.Tables[1]);
+                
+
+
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鏌ヨ鎴愬姛锛�";
+                objJsonResult.data = tableList;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 椤圭洰璐圭敤鍒楄〃 瀹℃牳/鍙嶅鏍稿姛鑳�
+        [Route("PM_ProjectBill/CheckPM_ProjectMoneyBillMain")]
+        [HttpGet]
+        public object CheckPM_ProjectMoneyBillMain(string HInterID, int IsAudit, string user)
+        {
+            try
+            {
+                //瀹℃牳鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log_second("PM_ProjectMoneyBillMain_Check", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "瀹℃牳澶辫触锛佹棤鏉冮檺锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                var ds = oCN.RunProcReturn("select * from PM_ProjectMoneyBillMain  where HInterID=" + HInterID, "PM_ProjectMoneyBillMain ");
+                if (ds.Tables[0].Rows.Count > 0)
+                {
+                    if (IsAudit == 0)  //瀹℃牳鍒ゆ柇
+                    {
+                        if (ds.Tables[0].Rows[0]["HChecker"].ToString() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸插鏍�!涓嶈兘鍐嶆瀹℃牳锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                    if (IsAudit == 1) //鍙嶅鏍稿垽鏂�
+                    {
+                        if (ds.Tables[0].Rows[0]["HChecker"].ToString() == "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鏈鏍�!涓嶉渶瑕佸弽瀹℃牳!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦�!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                oCN.BeginTran();
+
+                if (IsAudit == 0)  //瀹℃牳鍒ゆ柇
+                {
+                    oCN.RunProc("update PM_ProjectMoneyBillMain  set HChecker='" + user + "',HCheckDate=getdate() where HInterID=" + HInterID);
+
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "瀹℃牳鎴愬姛";
+                    objJsonResult.data = null;
+                }
+                if (IsAudit == 1) //鍙嶅鏍稿垽鏂�
+                {
+                    oCN.RunProc("update PM_ProjectMoneyBillMain  set HChecker='',HCheckDate=null where HInterID=" + HInterID);
+
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "鍙嶅鏍告垚鍔�";
+                    objJsonResult.data = null;
+                }
+                oCN.Commit();
+
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                oCN.RollBack();
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "瀹℃牳澶辫触鎴栬�呭弽瀹℃牳澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+
+        }
+        #endregion
+
+        #region 椤圭洰璐圭敤鍒楄〃 鍏抽棴/鍙嶅叧闂姛鑳�
+        [Route("PM_ProjectBill/ClosePM_ProjectMoneyBillMain")]
+        [HttpGet]
+        public object ClosePM_ProjectMoneyBillMain(string HInterID, int IsAudit, string user)
+        {
+            try
+            {
+                //鍒ゆ柇鏄惁鏈夊叧闂潈闄�
+                if (!DBUtility.ClsPub.Security_Log("PM_ProjectMoneyBillMain_Close", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳潈闄愬叧闂�!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
+                var ds = oCN.RunProcReturn("select * from PM_ProjectMoneyBillMain  where HInterID=" + HInterID, "PM_ProjectMoneyBillMain");
+                if (ds.Tables[0].Rows.Count > 0)
+                {
+                    if (IsAudit == 0)  //鍏抽棴鍒ゆ柇
+                    {
+                        if (ds.Tables[0].Rows[0]["HCloseMan"].ToString() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸插叧闂�!涓嶈兘鍐嶆鍏抽棴锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                    if (IsAudit == 1) //鍙嶅叧闂垽鏂�
+                    {
+                        if (ds.Tables[0].Rows[0]["HCloseMan"].ToString() == "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鏈叧闂�!涓嶉渶瑕佸弽鍏抽棴!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦�!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                oCN.BeginTran();
+
+                if (IsAudit == 0)  //鍏抽棴鍒ゆ柇
+                {
+                    oCN.RunProc("update PM_ProjectMoneyBillMain  set HCloseMan='" + user + "',HCloseDate=getdate() where HInterID=" + HInterID);
+
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "鍏抽棴鎴愬姛";
+                    objJsonResult.data = null;
+                }
+                if (IsAudit == 1) //鍙嶅鏍稿垽鏂�
+                {
+                    oCN.RunProc("update PM_ProjectMoneyBillMain  set HCloseMan='',HCloseDate=null where HInterID=" + HInterID);
+
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "鍙嶅叧闂垚鍔�";
+                    objJsonResult.data = null;
+                }
+                oCN.Commit();
+
+                return objJsonResult;
+
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鎵ц澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 椤圭洰璐圭敤鍒楄〃 鍒犻櫎
+        /// <summary>
+        ///鍙傛暟锛歴tring HInterID銆�
+        ///杩斿洖鍊硷細object銆�
+        /// </summary>
+        [Route("PM_ProjectBill/PM_ProjectMoneyBillMainDelete")]
+        [HttpGet]
+        public object PM_ProjectMoneyBillMainDelete(string HInterID, string user)
+        {
+            try
+            {
+                //鏌ョ湅鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("PM_ProjectMoneyBillMain_Drop", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犲垹闄ゆ潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                if (HInterID == null || HInterID.Equals(""))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "HInterID涓嶈兘涓虹┖锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                oCN.BeginTran();
+
+                oCN.RunProc("delete from PM_ProjectMoneyBillMain   where HInterID = " + HInterID);
+                oCN.RunProc("delete from PM_ProjectMoneyBillMain  where HInterID='" + HInterID + "'");
+
+                oCN.Commit();
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鍒犻櫎鎴愬姛锛�";
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+
+        #region 椤圭洰鍚姩鍗� 淇濆瓨/缂栬緫
+        /// <summary>
+        /// 椤圭洰璐圭敤
+        /// </summary>
+        /// <param name="msg"></param>
+        /// <returns></returns>
+        [Route("PM_ProjectBill/SavePM_ProjectBeginBillMain")]
+        [HttpPost]
+        public object SavePM_ProjectBeginBillMain([FromBody] JObject sMainSub)
+        {
+            var _value = sMainSub["sMainSub"].ToString();
+            string msg1 = _value.ToString();
+            string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+            string msg2 = sArray[0].ToString();
+            string refSav = sArray[1].ToString();//鎿嶄綔鏂瑰紡鏁版嵁绫诲瀷 1娣诲姞 3淇敼 2 澶嶅埗
+            string user = sArray[2].ToString();//鐢ㄦ埛鍚�
+
+            string UserName = "";
+            string s = "";
+            ListModels oListModels = new ListModels();
+            try
+            {
+                //淇濆瓨鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log_second("PM_ProjectBeginBillMain_Edit", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犱繚瀛樻潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                
+                DAL.ClsPM_ProjectBeginBillMain oBill = new DAL.ClsPM_ProjectBeginBillMain();
+                List<Model.ClsPM_ProjectBeginBillMain> lsmain = new List<Model.ClsPM_ProjectBeginBillMain>();
+                msg2 = msg2.Replace("\\", "");
+                msg2 = msg2.Replace("\n", "");  //\n
+                lsmain = oListModels.getObjectByJson_PM_ProjectBeginBillMain(msg2);
+                foreach (Model.ClsPM_ProjectBeginBillMain oItem in lsmain)
+                {
+                    if (refSav == "Add")
+                    {
+                        //鍗曟嵁鍙锋槸鍚﹂噸澶�
+                        if (BillNew1.IsExistBillNo(ref ClsPub.sExeReturnInfo, oItem.HBillNo, BillStatus, BillOld.omodel.HInterID))
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鍙烽噸澶嶏紒涓嶅厑璁镐繚瀛橈紒";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                    }
+                    if (refSav == "Update")
+                    {
+                        if (BillOld1.ShowBill(oItem.HInterID, ref s) == false)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "姝ゅ崟鎹湁璇紒";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                        //鍒ゆ柇鏄惁鍙紪杈�
+                        if (BillOld1.omodel.HChecker != "" && BillOld1.omodel.HChecker != null)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "姝ゅ崟鎹凡缁忚瀹℃牳锛屼笉鍏佽淇敼锛�";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                        if (BillOld1.omodel.HBillStatus > 1)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "姝ゅ崟鎹浜庝笉鍙紪杈戠姸鎬侊紝涓嶅厑璁镐慨鏀癸紒";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                        if (!DBUtility.Xt_BaseBillFun.Fun_AllowEditBill(BillOld, ref s))
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = s + "锛屼笉鍏佽淇敼";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                    }
+                    UserName = oItem.HMaker;  //鍒跺崟浜�
+                    oItem.HBillType = "4760";
+                    oItem.HBillSubType = "4760";
+
+
+
+                    //oItem.HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year);
+                    oItem.HPeriod = DBUtility.ClsPub.isLong(DateTime.Now.Month);
+                    oItem.HMakeDate = DBUtility.ClsPub.isStrNull(DateTime.Now.ToString("yyyy-MM-dd"));
+
+                    if (DBUtility.ClsPub.isStrNull(oItem.HDate) == "")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "淇濆瓨澶辫触锛佹病鏈夊崟鎹棩鏈燂紝鏃犳硶淇濆瓨锛�";
+                        objJsonResult.data = 1;
+                        return objJsonResult;
+                    }
+                    oBill.omodel = oItem;
+                }
+                //淇濆瓨
+                //淇濆瓨瀹屾瘯鍚庡鐞�
+                bool bResult;
+                if (refSav == "Add")
+                {
+
+                    bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
+                }
+                else if (refSav == "Update")
+                {
+                    bResult = oBill.ModifyBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
+                }
+                else
+                {
+                    bResult = false;
+                }
+                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)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "淇濆瓨澶辫触锛�" + e.ToString();
+                objJsonResult.data = 1;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 椤圭洰鍚姩鍗曞垪琛� 鏌ヨ
+        /// <summary>
+        /// 杩斿洖椤圭洰鍚姩鍗曞垪琛�
+        ///鍙傛暟锛歴tring sql銆�
+        ///杩斿洖鍊硷細object銆�
+        /// </summary>
+        [Route("PM_ProjectBill/getPM_ProjectBeginBillMainList")]
+        [HttpGet]
+        public object getPM_ProjectBeginBillMainList(string sWhere, string user)
+        {
+            try
+            {
+                List<object> columnNameList = new List<object>();
+
+                //鏌ョ湅鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("PM_ProjectBeginBillMain_Query", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
+                if (sWhere == null || sWhere.Equals(""))
+                {
+                    ds = oCN.RunProcReturn("select * from h_v_PM_ProjectBeginBillMainList order by 鍗曟嵁鍙� desc", "h_v_PM_ProjectBeginBillMainList");
+                }
+                else
+                {
+                    string sql1 = "select * from h_v_PM_ProjectBeginBillMainList where 1 = 1 ";
+                    string sql = sql1 + sWhere + " order by 鍗曟嵁鍙� desc";
+                    ds = oCN.RunProcReturn(sql, "h_v_PM_ProjectBeginBillMainList");
+                }
+
+                //娣诲姞鍒楀悕
+                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("PM_ProjectBill/PM_ProjectBeginBillMainEditList")]
+        [HttpGet]
+        public object PM_ProjectBeginBillMainEditList(string HInterID, string User)
+        {
+            try
+            {
+                List<object> columnNameList = new List<object>();
+
+                //鏌ョ湅鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("PM_ProjectBeginBillMain_Edit", 1, false, User))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                if (HInterID == null || HInterID.Equals(""))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "HInterID涓嶈兘涓虹┖锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                ds = oCN.RunProcReturn("select * from h_v_PM_ProjectBeginBillMainList where  HInterID='" + HInterID + "'", "h_v_PM_ProjectBeginBillMainList");
+
+                //娣诲姞鍒楀悕
+                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("PM_ProjectBill/CheckPM_ProjectBeginBillMain")]
+        [HttpGet]
+        public object CheckPM_ProjectBeginBillMain(int HInterID, int IsAudit, string CurUserName)
+        {
+            DBUtility.ClsPub.CurUserName = CurUserName;
+            try
+            {
+                //瀹℃牳鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log_second("PM_ProjectEndBillMain_Check", 1, false, CurUserName))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "瀹℃牳澶辫触锛佹棤鏉冮檺锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                //HInterID鏁版嵁鍒ゆ柇
+                if (HInterID <= 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "HInterID灏忎簬0锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
+                Int64 lngBillKey = 0;
+                lngBillKey = DBUtility.ClsPub.isLong(HInterID);                                         //瀵笻InterID杩涜绫诲瀷鐨勮浆鎹�
+                DAL.ClsPM_ProjectBeginBillMain oBill = new DAL.ClsPM_ProjectBeginBillMain();                              //瀹炰緥鍖栧崟鎹搷浣滅被锛岀敤浜庤繘琛岀浉鍏虫搷浣�
+
+                //閽堝闇�瑕佽繘琛岀殑鎿嶄綔锛屾楠屽綋鍓嶅崟鎹殑鐘舵�佹槸鍚︽敮鎸侀渶瑕佽繘琛岀殑鎿嶄綔
+                if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo))                    //鏍规嵁HInterID鑾峰彇璇ュ崟鎹殑鏁版嵁
+                {
+                    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;
+                    }
+                    if (IsAudit == 0)  //瀹℃牳鍒ゆ柇
+                    {
+                        if (oBill.omodel.HChecker.Trim() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸插鏍�!涓嶈兘鍐嶆瀹℃牳锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                    if (IsAudit == 1) //鍙嶅鏍稿垽鏂�
+                    {
+                        if (oBill.omodel.HChecker.Trim() == "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鏈鏍�!涓嶉渶瑕佸弽瀹℃牳!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦�!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
+                //杩涜闇�瑕佽繘琛岀殑瀹℃牳/鍙嶅鏍告搷浣�
+                if (IsAudit == 0) //瀹℃牳鎻愪氦
+                {
+                    oCN.BeginTran();
+
+                    //璁板綍杩斿洖淇℃伅
+                    string msg = "";
+
+                    if (oBill.omodel.HMainSourceInterID != 0)
+                    {
+                        //妫�楠屾簮鍗曟槸鍚﹀瓨鍦ㄥ強鍗曟嵁鐘舵��
+                        string sql = "select * from PM_ProjectBeginBillMain where HInterID = " + oBill.omodel.HMainSourceInterID;
+                        ds = oCN.RunProcReturn(sql, "PM_ProjectBeginBillMain");
+                        if (ds == null || ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:婧愬崟-鐗规壒鐢宠鍗曚笉瀛樺湪!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else if (ds.Tables[0].Rows[0]["HBillStatus"].ToString() != "2")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:婧愬崟-鐗规壒鐢宠鍗曟湭澶勪簬宸插鏍哥姸鎬�!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+
+
+                    }
+
+                    //瀹℃牳鍓嶆帶鍒�=========================================      
+                    string sql1 = "exec h_p_PM_ProjectBeginBill_BeforeCheckCtrl " + oBill.omodel.HInterID + ",'" + oBill.omodel.HBillNo + "','" + CurUserName + "'";
+                    ds = oCN.RunProcReturn(sql1, "h_p_PM_ProjectBeginBill_BeforeCheckCtrl");
+                    if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:瀹℃牳鍓嶅垽鏂け璐ワ紝璇蜂笌缃戠粶绠$悊浜哄憳鑱旂郴";
+                        objJsonResult.data = null;
+                        oCN.RollBack();
+                        return objJsonResult;
+                    }
+
+                    if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ;
+                        objJsonResult.data = null;
+                        oCN.RollBack();
+                        return objJsonResult;
+                    }
+                    //==================================================================================      
+
+                    //瀹℃牳鎻愪氦
+                    if (oBill.CheckBill(oBill.omodel.HInterID, oBill.omodel.HBillNo, "h_p_PM_ProjectBeginBill_AfterCheckCtrl", CurUserName, ref DBUtility.ClsPub.sExeReturnInfo) == true)
+                    {
+                        oCN.Commit();
+
+                        objJsonResult.code = "1";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "瀹℃牳鎴愬姛锛�" + msg;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    else
+                    {
+                        oCN.RollBack();
+
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+                if (IsAudit == 1) //鍙嶅鏍告彁浜�
+                {
+
+                    //鍙嶅鏍稿墠鎺у埗=========================================        
+                    string sql1 = "exec h_p_PM_ProjectBeginBill_BeforeUnCheckCtrl " + oBill.omodel.HInterID + ",'" + oBill.omodel.HBillNo + "','" + CurUserName + "'";
+                    ds = oCN.RunProcReturn(sql1, "h_p_PM_ProjectBeginBill_BeforeUnCheckCtrl");
+                    if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "鍙嶅鏍稿け璐�!鍘熷洜:鍙嶅鏍稿墠鍒ゆ柇澶辫触锛岃涓庣綉缁滅鐞嗕汉鍛樿仈绯�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+
+                    }
+                    if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "鍙嶅鏍稿け璐�!鍘熷洜:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    //===========================================================          
+
+                    //鍙嶅鏍告彁浜bandonCheck
+                    if (oBill.AbandonCheck(oBill.omodel.HInterID, oBill.omodel.HBillNo, "h_p_PM_ProjectBeginBill_AfterUnCheckCtrl", CurUserName, ref DBUtility.ClsPub.sExeReturnInfo) == true)
+                    {
+                        objJsonResult.code = "1";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "鍙嶅鏍告垚鍔�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    else
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍙嶅鏍稿け璐�!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                oCN.RollBack();
+
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "瀹℃牳澶辫触鎴栬�呭弽瀹℃牳澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+
+        }
+        #endregion
+
+        #region 椤圭洰鍚姩鍗曞垪琛� 鍏抽棴/鍙嶅叧闂姛鑳�
+        [Route("PM_ProjectBill/ClosePM_ProjectBeginBillMain")]
+        [HttpGet]
+        public object ClosePM_ProjectBeginBillMain(string HInterID, int IsAudit, string user)
+        {
+            try
+            {
+                //鍒ゆ柇鏄惁鏈夊叧闂潈闄�
+                if (!DBUtility.ClsPub.Security_Log("PM_ProjectBeginBillMain_Close", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳潈闄愬叧闂�!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
+                var ds = oCN.RunProcReturn("select * from PM_ProjectBeginBillMain  where HInterID=" + HInterID, "PM_ProjectBeginBillMain");
+                if (ds.Tables[0].Rows.Count > 0)
+                {
+                    if (IsAudit == 0)  //鍏抽棴鍒ゆ柇
+                    {
+                        if (ds.Tables[0].Rows[0]["HCloseMan"].ToString() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸插叧闂�!涓嶈兘鍐嶆鍏抽棴锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                    if (IsAudit == 1) //鍙嶅叧闂垽鏂�
+                    {
+                        if (ds.Tables[0].Rows[0]["HCloseMan"].ToString() == "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鏈叧闂�!涓嶉渶瑕佸弽鍏抽棴!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦�!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                oCN.BeginTran();
+
+                if (IsAudit == 0)  //鍏抽棴鍒ゆ柇
+                {
+                    oCN.RunProc("update PM_ProjectBeginBillMain  set HCloseMan='" + user + "',HCloseDate=getdate() where HInterID=" + HInterID);
+
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "鍏抽棴鎴愬姛";
+                    objJsonResult.data = null;
+                }
+                if (IsAudit == 1) //鍙嶅鏍稿垽鏂�
+                {
+                    oCN.RunProc("update PM_ProjectBeginBillMain  set HCloseMan='',HCloseDate=null where HInterID=" + HInterID);
+
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "鍙嶅叧闂垚鍔�";
+                    objJsonResult.data = null;
+                }
+                oCN.Commit();
+
+                return objJsonResult;
+
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鎵ц澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 椤圭洰鍚姩鍗曞垪琛� 鍒犻櫎
+        /// <summary>
+        ///鍙傛暟锛歴tring HInterID銆�
+        ///杩斿洖鍊硷細object銆�
+        /// </summary>
+        [Route("PM_ProjectBill/PM_ProjectBeginBillMainDelete")]
+        [HttpGet]
+        public object PM_ProjectBeginBillMainDelete(string HInterID, string user)
+        {
+            try
+            {
+                //鏌ョ湅鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("PM_ProjectBeginBillMain_Drop", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犲垹闄ゆ潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                if (HInterID == null || HInterID.Equals(""))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "HInterID涓嶈兘涓虹┖锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                oCN.BeginTran();
+
+                oCN.RunProc("delete from PM_ProjectBeginBillMain   where HInterID = " + HInterID);
+
+                oCN.Commit();
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鍒犻櫎鎴愬姛锛�";
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+
+
+        #region 椤圭洰楠屾敹鍗� 淇濆瓨/缂栬緫
+        /// <summary>
+        /// 椤圭洰楠屾敹鍗�
+        /// </summary>
+        /// <param name="msg"></param>
+        /// <returns></returns>
+        [Route("PM_ProjectBill/SavePM_ProjectEndBillMain")]
+        [HttpPost]
+        public object SavePM_ProjectEndBillMain([FromBody] JObject sMainSub)
+        {
+            var _value = sMainSub["sMainSub"].ToString();
+            string msg1 = _value.ToString();
+            string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+            string msg2 = sArray[0].ToString();
+            string refSav = sArray[1].ToString();//鎿嶄綔鏂瑰紡鏁版嵁绫诲瀷 1娣诲姞 3淇敼 2 澶嶅埗
+            string user = sArray[2].ToString();//鐢ㄦ埛鍚�
+
+            string UserName = "";
+            string s = "";
+            ListModels oListModels = new ListModels();
+            try
+            {
+                //淇濆瓨鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log_second("PM_ProjectEndBillMain_Edit", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犱繚瀛樻潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                DAL.ClsPM_ProjectEndBillMain oBill = new DAL.ClsPM_ProjectEndBillMain();
+                List<Model.ClsPM_ProjectEndBillMain> lsmain = new List<Model.ClsPM_ProjectEndBillMain>();
+                msg2 = msg2.Replace("\\", "");
+                msg2 = msg2.Replace("\n", "");  //\n
+                lsmain = oListModels.getObjectByJson_PM_ProjectEndBillMain(msg2);
+                foreach (Model.ClsPM_ProjectEndBillMain oItem in lsmain)
+                {
+                    if (refSav == "Add")
+                    {
+                        //鍗曟嵁鍙锋槸鍚﹂噸澶�
+                        if (BillNew1.IsExistBillNo(ref ClsPub.sExeReturnInfo, oItem.HBillNo, BillStatus, BillOld.omodel.HInterID))
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鍙烽噸澶嶏紒涓嶅厑璁镐繚瀛橈紒";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                    }
+                    if (refSav == "Update")
+                    {
+                        if (BillOld1.ShowBill(oItem.HInterID, ref s) == false)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "姝ゅ崟鎹湁璇紒";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                        //鍒ゆ柇鏄惁鍙紪杈�
+                        if (BillOld1.omodel.HChecker != "" && BillOld1.omodel.HChecker != null)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "姝ゅ崟鎹凡缁忚瀹℃牳锛屼笉鍏佽淇敼锛�";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                        if (BillOld1.omodel.HBillStatus > 1)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "姝ゅ崟鎹浜庝笉鍙紪杈戠姸鎬侊紝涓嶅厑璁镐慨鏀癸紒";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                        if (!DBUtility.Xt_BaseBillFun.Fun_AllowEditBill(BillOld, ref s))
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = s + "锛屼笉鍏佽淇敼";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                    }
+                    UserName = oItem.HMaker;  //鍒跺崟浜�
+                    oItem.HBillType = "4761";
+                    oItem.HBillSubType = "4761";
+
+
+
+                    //oItem.HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year);
+                    oItem.HPeriod = DBUtility.ClsPub.isLong(DateTime.Now.Month);
+                    oItem.HMakeDate = DBUtility.ClsPub.isStrNull(DateTime.Now.ToString("yyyy-MM-dd"));
+
+                    if (DBUtility.ClsPub.isStrNull(oItem.HDate) == "")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "淇濆瓨澶辫触锛佹病鏈夊崟鎹棩鏈燂紝鏃犳硶淇濆瓨锛�";
+                        objJsonResult.data = 1;
+                        return objJsonResult;
+                    }
+                    oBill.omodel = oItem;
+                }
+                //淇濆瓨
+                //淇濆瓨瀹屾瘯鍚庡鐞�
+                bool bResult;
+                if (refSav == "Add")
+                {
+
+                    bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
+                }
+                else if (refSav == "Update")
+                {
+                    bResult = oBill.ModifyBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
+                }
+                else
+                {
+                    bResult = false;
+                }
+                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)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "淇濆瓨澶辫触锛�" + e.ToString();
+                objJsonResult.data = 1;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 椤圭洰楠屾敹鍗曞垪琛� 鏌ヨ
+        /// <summary>
+        /// 杩斿洖椤圭洰楠屾敹鍗曞垪琛�
+        ///鍙傛暟锛歴tring sql銆�
+        ///杩斿洖鍊硷細object銆�
+        /// </summary>
+        [Route("PM_ProjectBill/getPM_ProjectEndBillMainList")]
+        [HttpGet]
+        public object getPM_ProjectEndBillMainList(string sWhere, string user)
+        {
+            try
+            {
+                List<object> columnNameList = new List<object>();
+
+                //鏌ョ湅鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("PM_ProjectEndBillMain_Query", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
+                if (sWhere == null || sWhere.Equals(""))
+                {
+                    ds = oCN.RunProcReturn("select * from h_v_PM_ProjectEndBillMainList order by 鍗曟嵁鍙� desc", "h_v_PM_ProjectEndBillMainList");
+                }
+                else
+                {
+                    string sql1 = "select * from h_v_PM_ProjectEndBillMainList where 1 = 1 ";
+                    string sql = sql1 + sWhere + " order by 鍗曟嵁鍙� desc";
+                    ds = oCN.RunProcReturn(sql, "h_v_PM_ProjectEndBillMainList");
+                }
+
+                //娣诲姞鍒楀悕
+                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("PM_ProjectBill/PM_ProjectEndBillMainEditList")]
+        [HttpGet]
+        public object PM_ProjectEndBillMainEditList(string HInterID, string User)
+        {
+            try
+            {
+                List<object> columnNameList = new List<object>();
+
+                //鏌ョ湅鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("PM_ProjectEndBillMain_Edit", 1, false, User))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                if (HInterID == null || HInterID.Equals(""))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "HInterID涓嶈兘涓虹┖锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                ds = oCN.RunProcReturn("select * from h_v_PM_ProjectEndBillMainList where  HInterID='" + HInterID + "'", "h_v_PM_ProjectEndBillMainList");
+
+                //娣诲姞鍒楀悕
+                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("PM_ProjectBill/CheckPM_ProjectEndBillMain")]
+        [HttpGet]
+
+        public object CheckPM_ProjectEndBillMain(int HInterID, int IsAudit, string CurUserName)
+        {
+           
+            DBUtility.ClsPub.CurUserName = CurUserName;
+            try
+            {
+                //瀹℃牳鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log_second("PM_ProjectEndBillMain_Check", 1, false, CurUserName))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "瀹℃牳澶辫触锛佹棤鏉冮檺锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                //HInterID鏁版嵁鍒ゆ柇
+                if (HInterID <= 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "HInterID灏忎簬0锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
+                Int64 lngBillKey = 0;
+                lngBillKey = DBUtility.ClsPub.isLong(HInterID);                                         //瀵笻InterID杩涜绫诲瀷鐨勮浆鎹�
+                DAL.ClsPM_ProjectEndBillMain oBill = new DAL.ClsPM_ProjectEndBillMain();                              //瀹炰緥鍖栧崟鎹搷浣滅被锛岀敤浜庤繘琛岀浉鍏虫搷浣�
+
+                //閽堝闇�瑕佽繘琛岀殑鎿嶄綔锛屾楠屽綋鍓嶅崟鎹殑鐘舵�佹槸鍚︽敮鎸侀渶瑕佽繘琛岀殑鎿嶄綔
+                if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo))                    //鏍规嵁HInterID鑾峰彇璇ュ崟鎹殑鏁版嵁
+                {
+                    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;
+                    }
+                    if (IsAudit == 0)  //瀹℃牳鍒ゆ柇
+                    {
+                        if (oBill.omodel.HChecker.Trim() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸插鏍�!涓嶈兘鍐嶆瀹℃牳锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                    if (IsAudit == 1) //鍙嶅鏍稿垽鏂�
+                    {
+                        if (oBill.omodel.HChecker.Trim() == "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鏈鏍�!涓嶉渶瑕佸弽瀹℃牳!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦�!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
+                //杩涜闇�瑕佽繘琛岀殑瀹℃牳/鍙嶅鏍告搷浣�
+                if (IsAudit == 0) //瀹℃牳鎻愪氦
+                {
+                    oCN.BeginTran();
+
+                    //璁板綍杩斿洖淇℃伅
+                    string msg = "";
+
+                    if (oBill.omodel.HMainSourceInterID != 0)
+                    {
+                        //妫�楠屾簮鍗曟槸鍚﹀瓨鍦ㄥ強鍗曟嵁鐘舵��
+                        string sql = "select * from PM_ProjectEndBillMain where HInterID = " + oBill.omodel.HMainSourceInterID;
+                        ds = oCN.RunProcReturn(sql, "PM_ProjectEndBillMain");
+                        if (ds == null || ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:婧愬崟-鐗规壒鐢宠鍗曚笉瀛樺湪!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else if (ds.Tables[0].Rows[0]["HBillStatus"].ToString() != "2")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:婧愬崟-鐗规壒鐢宠鍗曟湭澶勪簬宸插鏍哥姸鎬�!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+
+
+                    }
+
+                    //瀹℃牳鍓嶆帶鍒�=========================================      
+                    string sql1 = "exec h_p_PM_ProjectEndBill_BeforeCheckCtrl " + oBill.omodel.HInterID + ",'" + oBill.omodel.HBillNo + "','" + CurUserName + "'";
+                    ds = oCN.RunProcReturn(sql1, "h_p_PM_ProjectEndBill_BeforeCheckCtrl");
+                    if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:瀹℃牳鍓嶅垽鏂け璐ワ紝璇蜂笌缃戠粶绠$悊浜哄憳鑱旂郴";
+                        objJsonResult.data = null;
+                        oCN.RollBack();
+                        return objJsonResult;
+                    }
+
+                    if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ;
+                        objJsonResult.data = null;
+                        oCN.RollBack();
+                        return objJsonResult;
+                    }
+                    //==================================================================================      
+
+                    //瀹℃牳鎻愪氦
+                    if (oBill.CheckBill(oBill.omodel.HInterID, oBill.omodel.HBillNo, "h_p_PM_ProjectEndBill_AfterCheckCtrl", CurUserName, ref DBUtility.ClsPub.sExeReturnInfo) == true)
+                    {
+                        oCN.Commit();
+
+                        objJsonResult.code = "1";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "瀹℃牳鎴愬姛锛�" + msg;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    else
+                    {
+                        oCN.RollBack();
+
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+                if (IsAudit == 1) //鍙嶅鏍告彁浜�
+                {
+
+                    //鍙嶅鏍稿墠鎺у埗=========================================        
+                    string sql1 = "exec h_p_PM_ProjectEndBill_BeforeUnCheckCtrl " + oBill.omodel.HInterID + ",'" + oBill.omodel.HBillNo + "','" + CurUserName + "'";
+                    ds = oCN.RunProcReturn(sql1, "h_p_PM_ProjectEndBill_BeforeUnCheckCtrl");
+                    if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "鍙嶅鏍稿け璐�!鍘熷洜:鍙嶅鏍稿墠鍒ゆ柇澶辫触锛岃涓庣綉缁滅鐞嗕汉鍛樿仈绯�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+
+                    }
+                    if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "鍙嶅鏍稿け璐�!鍘熷洜:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    //===========================================================          
+
+                    //鍙嶅鏍告彁浜bandonCheck
+                    if (oBill.AbandonCheck(oBill.omodel.HInterID, oBill.omodel.HBillNo, "h_p_PM_ProjectEndBill_AfterUnCheckCtrl", CurUserName, ref DBUtility.ClsPub.sExeReturnInfo) == true)
+                    {
+                        objJsonResult.code = "1";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "鍙嶅鏍告垚鍔�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    else
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍙嶅鏍稿け璐�!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                oCN.RollBack();
+
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "瀹℃牳澶辫触鎴栬�呭弽瀹℃牳澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+       
+        #endregion
+
+        #region 椤圭洰楠屾敹鍗曞垪琛� 鍏抽棴/鍙嶅叧闂姛鑳�
+        [Route("PM_ProjectBill/ClosePM_ProjectEndBillMain")]
+        [HttpGet]
+        public object ClosePM_ProjectEndBillMain(string HInterID, int IsAudit, string user)
+        {
+            try
+            {
+                //鍒ゆ柇鏄惁鏈夊叧闂潈闄�
+                if (!DBUtility.ClsPub.Security_Log("PM_ProjectEndBillMain_Close", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳潈闄愬叧闂�!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
+                var ds = oCN.RunProcReturn("select * from PM_ProjectEndBillMain  where HInterID=" + HInterID, "PM_ProjectEndBillMain");
+                if (ds.Tables[0].Rows.Count > 0)
+                {
+                    if (IsAudit == 0)  //鍏抽棴鍒ゆ柇
+                    {
+                        if (ds.Tables[0].Rows[0]["HCloseMan"].ToString() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸插叧闂�!涓嶈兘鍐嶆鍏抽棴锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                    if (IsAudit == 1) //鍙嶅叧闂垽鏂�
+                    {
+                        if (ds.Tables[0].Rows[0]["HCloseMan"].ToString() == "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鏈叧闂�!涓嶉渶瑕佸弽鍏抽棴!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦�!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                oCN.BeginTran();
+
+                if (IsAudit == 0)  //鍏抽棴鍒ゆ柇
+                {
+                    oCN.RunProc("update PM_ProjectEndBillMain  set HCloseMan='" + user + "',HCloseDate=getdate() where HInterID=" + HInterID);
+
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "鍏抽棴鎴愬姛";
+                    objJsonResult.data = null;
+                }
+                if (IsAudit == 1) //鍙嶅鏍稿垽鏂�
+                {
+                    oCN.RunProc("update PM_ProjectEndBillMain  set HCloseMan='',HCloseDate=null where HInterID=" + HInterID);
+
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "鍙嶅叧闂垚鍔�";
+                    objJsonResult.data = null;
+                }
+                oCN.Commit();
+
+                return objJsonResult;
+
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鎵ц澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 椤圭洰楠屾敹鍗曞垪琛� 鍒犻櫎
+        /// <summary>
+        ///鍙傛暟锛歴tring HInterID銆�
+        ///杩斿洖鍊硷細object銆�
+        /// </summary>
+        [Route("PM_ProjectBill/PM_ProjectEndBillMainDelete")]
+        [HttpGet]
+        public object PM_ProjectEndBillMainDelete(string HInterID, string user)
+        {
+            try
+            {
+                //鏌ョ湅鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("PM_ProjectEndBillMain_Drop", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犲垹闄ゆ潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                if (HInterID == null || HInterID.Equals(""))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "HInterID涓嶈兘涓虹┖锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                oCN.BeginTran();
+
+                oCN.RunProc("delete from PM_ProjectEndBillMain   where HInterID = " + HInterID);
+
+                oCN.Commit();
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鍒犻櫎鎴愬姛锛�";
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+
     }
 }
\ No newline at end of file
diff --git a/WebAPI/DLL/ClsGy_ProjectMoney_Ctl.cs b/WebAPI/DLL/ClsGy_ProjectMoney_Ctl.cs
new file mode 100644
index 0000000..5783fe6
--- /dev/null
+++ b/WebAPI/DLL/ClsGy_ProjectMoney_Ctl.cs
@@ -0,0 +1,102 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Text;
+using System.Data;
+
+namespace WebAPI.DLL
+{
+    public class ClsGy_ProjectMoney_Ctl : DBUtility.ClsGy_Base_Ctl   
+    {
+        
+           SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
+        //鍘熶唬鐮� 鐢ㄤ簬 鏇挎崲瀛愰」鐩�
+        public string HOldNumber;
+        public Model.ClsGy_ProjectMoney_Model oModel = new Model.ClsGy_ProjectMoney_Model();
+        //鏂板
+        public override bool AddNew()
+        {
+            //
+            try
+            {
+                oCn.BeginTran();
+                oCn.RunProc("Insert into " + MvarItemKey + " " +
+                    " (HNumber,HName,HHelpCode,HShortNumber,HParentID" +
+                    ",HLevel,HEndFlag,HStopflag,HRemark,HMakeTime,HUSEORGID,HUseFlag,HMakeEmp,HCREATEORGID) " +
+                    " Values('" + oModel.HNumber + "','" + oModel.HName + "','" + oModel.HHelpCode + "','" + oModel.HShortNumber + "'," + oModel.HParentID.ToString() +
+                    "," + oModel.HLevel.ToString() + "," + Convert.ToString(oModel.HEndFlag ? 1 : 0) + "," + Convert.ToString(oModel.HStopflag ? 1 : 0) + ",'" + oModel.HRemark + "','" +DateTime.Now+ "','" + oModel.HUSEORGID + "','" + oModel.HUseFlag + "','" + oModel.HMakeEmp+ "','" + oModel.HUSEORGID + "')", ref DBUtility.ClsPub.sExeReturnInfo);
+                //淇敼涓婄骇涓洪潪鏈骇浠g爜
+                oCn.RunProc("Update " + MvarItemKey + " set HEndflag=0 where HItemID=" + oModel.HParentID, ref DBUtility.ClsPub.sExeReturnInfo);
+                oCn.Commit();
+                return true;
+            }
+            catch (Exception e)
+            {
+                oCn.RollBack();
+                throw (e);
+            }
+        }
+
+        //淇敼
+        public override bool ModifyByID(Int64 sItemID)
+        {
+            try
+            {
+                
+                oCn.BeginTran();
+                oCn.RunProc("Update " + MvarItemKey + " set " +
+                    " HNumber='" + oModel.HNumber + "'" +
+                    ",HName='" + oModel.HName + "'" +
+                    ",HShortNumber='" + oModel.HShortNumber + "'" +
+                    ",HHelpCode='" + oModel.HHelpCode + "'" +
+                    ",HModifyTime='" + DateTime.Now + "'" +   
+                    ",HUSEORGID='" + oModel.HUSEORGID + "'" +
+                    ",HModifyEmp ='" + oModel.HMakeEmp + "'" +
+                    ",HUseFlag='" + oModel.HUseFlag + "'" +
+                    ",HStopflag=" + Convert.ToString(oModel.HStopflag ? 1 : 0) +
+                    ",HRemark= '" + oModel.HRemark + "' Where HItemID=" + sItemID, ref DBUtility.ClsPub.sExeReturnInfo);
+                //淇敼瀛愰」鐩唬鐮�
+                oCn.RunProc("exec h_p_Gy_UpdateNumber '" + MvarItemKey + "','" + oModel.HNumber + ".','" + this.HOldNumber + ".'", ref DBUtility.ClsPub.sExeReturnInfo);
+                //灏嗕笂绾� 涓洪潪鏈骇
+                oCn.RunProc("Update " + MvarItemKey + " set HEndflag=0 where HItemID=" + oModel.HParentID, ref DBUtility.ClsPub.sExeReturnInfo);
+                //
+                oCn.Commit();
+                return true;
+            }
+            catch (Exception e)
+            {
+                oCn.RollBack();
+                throw (e);
+            }
+        }
+        //鏍规嵁浠g爜鍒ゆ柇淇℃伅
+        public override bool HavParentCode(string sCode, Int64 sItemID)
+        {
+            DataSet DS;
+            try
+            {
+                DS = oCn.RunProcReturn("Select * from " + MvarItemKey + " Where HStopflag=0 and HNumber='" + sCode + "' and HItemID<>" + sItemID, MvarItemKey, ref Pub_Class.ClsPub.sExeReturnInfo);
+                if (DS.Tables[0].Rows.Count == 0)
+                    return false;
+                else
+                {
+                    oModel.HItemID = Convert.ToInt64(DS.Tables[0].Rows[0]["HItemID"]);
+                    return true;
+                }
+            }
+            catch (Exception e)
+            {
+                throw (e);
+            }
+        }
+        //鏋勯�犲嚱鏁�
+        public ClsGy_ProjectMoney_Ctl()
+        {
+            MvarItemKey = "Gy_ProjectMoney";
+            MvarReportTitle = "椤圭洰璐圭敤璁剧疆";
+            oModel = new Model.ClsGy_ProjectMoney_Model();
+        }
+
+    
+
+    }
+}
diff --git a/WebAPI/ListModels.cs b/WebAPI/ListModels.cs
index 03ef777..04b5e19 100644
--- a/WebAPI/ListModels.cs
+++ b/WebAPI/ListModels.cs
@@ -101,6 +101,19 @@
             List<Model.ClsKf_MoveStockStepOutBillMain> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsKf_MoveStockStepOutBillMain>>(jsonString);
             return list;
         }
+
+        /// <summary>
+        /// 鍒嗘寮忚皟鍏ュ崟鍙嶅簭鍒楀寲
+        /// </summary>
+        /// <param name="jsonString"></param>
+        /// <returns></returns>
+        public List<Model.ClsKf_MoveStockStepInBillMain> getMoveStockStepInBillMainByJson(string jsonString)
+        {
+            jsonString = "[" + jsonString.ToString() + "]";
+            List<Model.ClsKf_MoveStockStepInBillMain> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsKf_MoveStockStepInBillMain>>(jsonString);
+            return list;
+        }
+
         /// <summary>
         /// 浜у搧鍏ュ簱鍙嶅簭鍒楀寲
         /// </summary>
@@ -951,7 +964,7 @@
             List<Model.ClsGy_CusType_Model> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsGy_CusType_Model>>(jsonString);
             return list;
         }
-
+        
         /// <summary>  
         /// 澶勭悊鏂板渚涘簲鍟嗗垎绫昏〃鐨刯son
         /// </summary>
@@ -963,7 +976,17 @@
             List<Model.ClsGy_SupType_Model> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsGy_SupType_Model>>(jsonString);
             return list;
         }
-
+        /// <summary>  
+        /// 澶勭悊鏂板椤圭洰璐圭敤琛ㄧ殑json
+        /// </summary>
+        /// <param name="jsonString"></param>
+        /// <returns></returns>
+        public List<Model.ClsGy_ProjectMoney_Model> getObjectByJson_Gy_ProjectMoney(string jsonString)
+        {
+            jsonString = "[" + jsonString.ToString() + "]";
+            List<Model.ClsGy_ProjectMoney_Model> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsGy_ProjectMoney_Model>>(jsonString);
+            return list;
+        }
         /// <summary>
         /// 澶勭悊鏂板寮傚父绫诲瀷琛ㄧ殑json
         /// </summary>
@@ -1042,6 +1065,124 @@
         {
             jsonString = "[" + jsonString.ToString() + "]";
             List<Model.ClsPM_CustomerTaskBillMain> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsPM_CustomerTaskBillMain>>(jsonString);
+            return list;
+        }
+        /// <summary>
+        /// 澶勭悊鏂板椤圭洰璐圭敤琛ㄧ殑json
+        /// </summary>
+        /// <param name="jsonString"></param>
+        /// <returns></returns>
+        public List<Model.ClsPM_ProjectMoneyBillMain> getObjectByJson_PM_ProjectMoneyBillMain(string jsonString)
+        {
+            jsonString = "[" + jsonString.ToString() + "]";
+            List<Model.ClsPM_ProjectMoneyBillMain> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsPM_ProjectMoneyBillMain>>(jsonString);
+            return list;
+        }
+        /// <summary>
+        /// 澶勭悊鏂板椤圭洰璐圭敤瀛愯〃鐨刯son
+        /// </summary>
+        /// <param name="jsonString"></param>
+        /// <returns></returns>
+        public List<Model.ClsPM_ProjectMoneyBillSub> getObjectByJson_PM_ProjectMoneyBillSub(string jsonString)
+        {
+            jsonString = "[" + jsonString.ToString() + "]";
+            List<Model.ClsPM_ProjectMoneyBillSub> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsPM_ProjectMoneyBillSub>>(jsonString);
+            return list;
+        }
+        
+        /// <summary>
+        /// 澶勭悊鏂板椤圭洰鍚姩琛ㄧ殑json
+        /// </summary>
+        /// <param name="jsonString"></param>
+        /// <returns></returns>
+        public List<Model.ClsPM_ProjectBeginBillMain> getObjectByJson_PM_ProjectBeginBillMain(string jsonString)
+        {
+            jsonString = "[" + jsonString.ToString() + "]";
+            List<Model.ClsPM_ProjectBeginBillMain> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsPM_ProjectBeginBillMain>>(jsonString);
+            return list;
+        }
+
+        /// <summary>
+        /// 澶勭悊鏂板椤圭洰楠屾敹鍗曡〃鐨刯son
+        /// </summary>
+        /// <param name="jsonString"></param>
+        /// <returns></returns>
+        public List<Model.ClsPM_ProjectEndBillMain> getObjectByJson_PM_ProjectEndBillMain(string jsonString)
+        {
+            jsonString = "[" + jsonString.ToString() + "]";
+            List<Model.ClsPM_ProjectEndBillMain> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsPM_ProjectEndBillMain>>(jsonString);
+            return list;
+        }
+
+        /// <summary>
+        /// 澶勭悊鏂板浜у搧鍣ㄥ叿娓呭崟琛ㄧ殑json
+        /// </summary>
+        /// <param name="jsonString"></param>
+        /// <returns></returns>
+        public List<Model.ClsGy_MaterialMouldBillMain> getObjectByJson_Gy_MaterialMouldBillMain(string jsonString)
+        {
+            jsonString = "[" + jsonString.ToString() + "]";
+            List<Model.ClsGy_MaterialMouldBillMain> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsGy_MaterialMouldBillMain>>(jsonString);
+            return list;
+        }
+
+        /// <summary>
+        /// 澶勭悊鏂板浜у搧鍣ㄥ叿娓呭崟瀛愯〃鐨刯son
+        /// </summary>
+        /// <param name="jsonString"></param>
+        /// <returns></returns>
+        public List<Model.ClsGy_MaterialMouldBillSub> getObjectByJson_Gy_MaterialMouldBillSub(string jsonString)
+        {
+            jsonString = "[" + jsonString.ToString() + "]";
+            List<Model.ClsGy_MaterialMouldBillSub> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsGy_MaterialMouldBillSub>>(jsonString);
+            return list;
+        }
+
+        /// <summary>
+        /// 澶勭悊鏂板浜у搧宸ヨ壓鍙傛暟娓呭崟琛ㄧ殑json
+        /// </summary>
+        /// <param name="jsonString"></param>
+        /// <returns></returns>
+        public List<Model.ClsGy_MaterialTechParamBillMain> getObjectByJson_Gy_MaterialTechParamBillMain(string jsonString)
+        {
+            jsonString = "[" + jsonString.ToString() + "]";
+            List<Model.ClsGy_MaterialTechParamBillMain> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsGy_MaterialTechParamBillMain>>(jsonString);
+            return list;
+        }
+
+        /// <summary>
+        /// 澶勭悊鏂板浜у搧宸ヨ壓鍙傛暟娓呭崟瀛愯〃鐨刯son
+        /// </summary>
+        /// <param name="jsonString"></param>
+        /// <returns></returns>
+        public List<Model.ClsGy_MaterialTechParamBillSub> getObjectByJson_Gy_MaterialTechParamBillSub(string jsonString)
+        {
+            jsonString = "[" + jsonString.ToString() + "]";
+            List<Model.ClsGy_MaterialTechParamBillSub> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsGy_MaterialTechParamBillSub>>(jsonString);
+            return list;
+        }
+
+        /// <summary>
+        /// 澶勭悊鏂板鍏朵粬搴旀敹鍗曡〃鐨刯son
+        /// </summary>
+        /// <param name="jsonString"></param>
+        /// <returns></returns>
+        public List<Model.ClsYS_ReceiveOtherBillMain> getObjectByJson_YS_ReceiveOtherBillMain(string jsonString)
+        {
+            jsonString = "[" + jsonString.ToString() + "]";
+            List<Model.ClsYS_ReceiveOtherBillMain> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsYS_ReceiveOtherBillMain>>(jsonString);
+            return list;
+        }
+
+        /// <summary>
+        /// 澶勭悊鏂板鍏朵粬搴斾粯鍗曡〃鐨刯son
+        /// </summary>
+        /// <param name="jsonString"></param>
+        /// <returns></returns>
+        public List<Model.ClsYF_PayMentOtherBillMain> getObjectByJson_YF_PayMentOtherBillMain(string jsonString)
+        {
+            jsonString = "[" + jsonString.ToString() + "]";
+            List<Model.ClsYF_PayMentOtherBillMain> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsYF_PayMentOtherBillMain>>(jsonString);
             return list;
         }
 
@@ -3055,10 +3196,10 @@
         /// </summary>
         /// <param name="jsonString"></param>
         /// <returns></returns>
-        public List<Model.ClsCg_PayableBillSub> getObjectByJson_Cg_PayableBillSub(string jsonString)
+        public List<Model.ClsCg_PayableSub> getObjectByJson_Cg_PayableSub(string jsonString)
         {
             jsonString = "[" + jsonString.ToString() + "]";
-            List<Model.ClsCg_PayableBillSub> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsCg_PayableBillSub>>(jsonString);
+            List<Model.ClsCg_PayableSub> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsCg_PayableSub>>(jsonString);
             return list;
         }
         #endregion
diff --git a/WebAPI/Models/ClsCg_POInStockBill.cs b/WebAPI/Models/ClsCg_POInStockBill.cs
index c668da4..d83826a 100644
--- a/WebAPI/Models/ClsCg_POInStockBill.cs
+++ b/WebAPI/Models/ClsCg_POInStockBill.cs
@@ -13,7 +13,7 @@
         public Int64 HWHID;//      int     --仓库
         public Single HExRate;//    money      			--汇率  (选择完币别带出)
         public Int64 HEmpID;//     int       			--业务员  (Gy_Employee)
-        public Int64 HMangerID;//  int     			--主管	(Gy_Employee)
+        public Int64 HManagerID;//  int     			--主管	(Gy_Employee)
         public Int64 HDeptID;//     int     			--部门	(Gy_Employee)
         public string HExplanation;//  varchar(200)     		--摘要 
         public string HInnerBillNo;//  varchar(50)     		--内部单据号
diff --git a/WebAPI/Properties/PublishProfiles/FolderProfile.pubxml.user b/WebAPI/Properties/PublishProfiles/FolderProfile.pubxml.user
index ff7f34b..d7681da 100644
--- a/WebAPI/Properties/PublishProfiles/FolderProfile.pubxml.user
+++ b/WebAPI/Properties/PublishProfiles/FolderProfile.pubxml.user
@@ -5,11 +5,11 @@
 <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
   <PropertyGroup>
     <_PublishTargetUrl>D:\缃戠珯鍙戝竷\鏅轰簯MESWMS\API</_PublishTargetUrl>
-    <History>True|2024-02-20T02:42:11.8298929Z;True|2024-02-19T13:06:24.8957799+08:00;True|2024-02-19T11:05:28.0139278+08:00;True|2024-02-19T10:27:01.0810368+08:00;True|2024-02-19T10:22:57.4053027+08:00;True|2024-02-19T10:15:48.5706154+08:00;True|2024-02-19T10:12:02.9076965+08:00;True|2024-02-18T14:57:44.7521494+08:00;True|2024-02-18T14:50:56.3550941+08:00;True|2024-02-18T13:36:49.3942430+08:00;True|2024-02-07T14:06:25.4964506+08:00;True|2024-02-07T10:42:52.2689528+08:00;True|2024-02-06T10:58:49.3342902+08:00;True|2024-02-06T10:53:42.5435511+08:00;True|2024-02-06T10:43:40.1003756+08:00;True|2024-02-06T10:40:46.8233200+08:00;True|2024-02-06T10:17:28.2865591+08:00;True|2024-02-06T10:14:31.6896095+08:00;True|2024-02-06T09:24:29.8745590+08:00;True|2024-02-06T09:20:58.3166183+08:00;True|2024-02-06T09:12:14.4841167+08:00;True|2024-02-06T09:05:10.5375167+08:00;True|2024-02-05T14:51:09.8954604+08:00;True|2024-02-05T14:30:01.0098544+08:00;True|2024-02-05T14:26:49.2548141+08:00;True|2024-02-05T14:05:18.6839229+08:00;True|2024-02-05T13:23:42.1639710+08:00;True|2024-02-05T08:39:07.5523831+08:00;True|2024-02-04T15:09:19.2455417+08:00;True|2024-02-04T13:27:46.2086590+08:00;True|2024-02-04T13:25:20.9639903+08:00;True|2024-02-04T13:20:32.2870983+08:00;True|2024-02-04T13:15:58.3909970+08:00;True|2024-02-04T11:18:59.5180822+08:00;True|2024-02-04T11:07:31.1414636+08:00;True|2024-02-04T11:03:38.8431285+08:00;True|2024-02-04T11:00:42.8307675+08:00;True|2024-02-04T10:59:07.3767796+08:00;True|2024-02-04T10:55:27.9454328+08:00;True|2024-02-04T10:52:29.5988914+08:00;True|2024-02-04T10:50:30.6883153+08:00;True|2024-02-04T10:38:13.0058874+08:00;True|2024-02-04T10:25:53.1906810+08:00;True|2024-02-04T10:14:51.7442720+08:00;True|2024-02-04T10:12:34.4696662+08:00;True|2024-02-04T10:08:56.5805097+08:00;True|2024-02-04T10:07:16.4922026+08:00;True|2024-02-04T09:59:27.2102397+08:00;True|2024-02-04T09:56:42.2238395+08:00;True|2024-02-04T09:52:47.5348300+08:00;True|2024-02-04T09:42:50.9349205+08:00;True|2024-02-04T09:30:32.3567175+08:00;True|2024-02-04T09:19:29.8036670+08:00;True|2024-02-04T09:11:56.0744927+08:00;True|2024-02-04T09:08:42.4432795+08:00;True|2024-02-04T09:05:25.4958302+08:00;True|2024-02-04T08:58:59.7993464+08:00;True|2024-02-04T08:51:20.3017735+08:00;True|2024-02-04T08:43:05.6974823+08:00;True|2024-02-02T16:12:24.3288882+08:00;True|2024-02-02T15:31:12.0724234+08:00;True|2024-02-02T15:14:24.5493301+08:00;True|2024-02-02T15:08:42.0775469+08:00;True|2024-02-02T14:50:25.2357715+08:00;True|2024-02-02T14:48:40.1311047+08:00;True|2024-02-02T14:44:57.9831751+08:00;True|2024-02-02T14:28:12.0713915+08:00;True|2024-02-02T13:55:59.7389347+08:00;True|2024-02-02T13:10:32.7073682+08:00;True|2024-02-02T10:21:41.3665075+08:00;True|2024-02-02T10:08:11.1755065+08:00;True|2024-02-01T16:28:42.6016378+08:00;True|2024-02-01T16:25:35.2865491+08:00;True|2024-02-01T15:48:00.8333105+08:00;True|2024-02-01T15:39:22.9864096+08:00;True|2024-02-01T15:30:30.4856347+08:00;True|2024-02-01T14:34:14.9484851+08:00;True|2024-02-01T13:53:48.9165284+08:00;False|2024-02-01T13:52:39.1911001+08:00;True|2024-02-01T10:40:28.0735829+08:00;True|2024-02-01T10:24:04.5914096+08:00;True|2024-02-01T10:13:00.9882363+08:00;True|2024-01-31T14:56:37.7352718+08:00;True|2024-01-31T14:46:49.9104890+08:00;True|2024-01-31T14:38:56.1841731+08:00;True|2024-01-31T14:35:45.4531352+08:00;True|2024-01-31T14:32:21.5100137+08:00;True|2024-01-31T14:15:26.3231430+08:00;True|2024-01-31T14:00:11.3994150+08:00;True|2024-01-31T13:18:54.8448212+08:00;True|2024-01-31T10:52:59.8159114+08:00;True|2024-01-31T10:28:03.5856625+08:00;True|2024-01-31T10:10:35.0250398+08:00;True|2024-01-30T09:53:14.3256577+08:00;True|2024-01-30T09:43:56.5551157+08:00;True|2024-01-30T08:27:16.7078317+08:00;True|2024-01-29T15:42:55.3394104+08:00;True|2024-01-29T15:36:57.2998818+08:00;True|2024-01-29T15:09:49.3214409+08:00;True|2024-01-29T14:54:23.0025170+08:00;True|2024-01-29T14:33:53.5586728+08:00;True|2024-01-29T10:21:47.9469052+08:00;True|2024-01-29T09:38:26.0354836+08:00;True|2024-01-29T09:28:57.3836958+08:00;True|2024-01-29T09:19:49.0488968+08:00;True|2024-01-26T16:11:46.3859476+08:00;True|2024-01-26T16:11:29.8529136+08:00;True|2024-01-26T10:23:35.6167838+08:00;True|2024-01-26T10:16:04.2780085+08:00;True|2024-01-26T10:05:56.0745647+08:00;True|2024-01-26T10:03:34.8490957+08:00;True|2024-01-26T09:18:57.1502238+08:00;True|2024-01-26T09:05:18.6887593+08:00;True|2024-01-25T16:19:44.3753587+08:00;True|2024-01-25T10:54:55.2695117+08:00;True|2024-01-25T10:52:43.0130697+08:00;True|2024-01-25T10:15:35.2061116+08:00;True|2024-01-25T10:12:55.7724345+08:00;True|2024-01-25T09:59:14.7336333+08:00;True|2024-01-25T09:54:00.8951944+08:00;True|2024-01-23T11:57:00.6176481+08:00;True|2024-01-23T11:48:46.0536266+08:00;True|2024-01-23T11:20:56.9686760+08:00;True|2024-01-23T10:07:03.1874795+08:00;True|2024-01-23T09:28:09.7921197+08:00;True|2024-01-22T17:23:56.8011615+08:00;True|2024-01-22T15:39:51.8307512+08:00;True|2024-01-21T16:56:29.0470984+08:00;True|2024-01-21T16:31:58.1736344+08:00;True|2024-01-21T16:24:19.3683647+08:00;True|2024-01-21T16:02:26.5427715+08:00;True|2024-01-21T15:45:21.0549809+08:00;True|2024-01-21T15:24:46.6563331+08:00;True|2024-01-21T12:57:07.2655536+08:00;True|2024-01-21T11:43:22.1675745+08:00;True|2024-01-21T11:04:07.4676661+08:00;True|2024-01-21T11:03:11.6972981+08:00;True|2024-01-19T12:12:51.7315607+08:00;True|2024-01-19T12:03:23.7846341+08:00;True|2024-01-19T09:21:40.1191844+08:00;True|2024-01-18T15:28:59.1079108+08:00;True|2024-01-18T15:25:00.9561275+08:00;True|2024-01-18T15:19:13.0404548+08:00;True|2024-01-18T13:06:18.2756609+08:00;True|2024-01-18T12:00:29.1983965+08:00;True|2024-01-18T09:51:08.2157377+08:00;True|2024-01-18T09:49:33.8817410+08:00;True|2024-01-17T17:14:07.4523354+08:00;True|2024-01-17T13:46:19.2002783+08:00;True|2024-01-17T13:17:28.0156428+08:00;True|2024-01-17T11:23:28.7024207+08:00;True|2024-01-17T11:07:35.4966809+08:00;True|2024-01-17T10:25:34.7098037+08:00;True|2024-01-17T09:13:26.1252511+08:00;True|2024-01-16T15:33:15.8976694+08:00;True|2024-01-16T13:06:21.8159184+08:00;True|2024-01-16T12:55:14.9963186+08:00;True|2024-01-16T10:26:35.3866122+08:00;True|2024-01-16T10:25:44.1826112+08:00;True|2024-01-12T16:34:51.6106928+08:00;True|2024-01-12T13:14:24.0546049+08:00;True|2024-01-12T13:06:52.9089433+08:00;True|2024-01-12T12:39:48.1623736+08:00;True|2024-01-12T12:36:04.4644966+08:00;True|2024-01-12T10:22:40.9168937+08:00;True|2024-01-12T10:10:47.1460616+08:00;True|2024-01-12T10:05:40.4318518+08:00;True|2024-01-12T10:02:01.3964907+08:00;True|2024-01-12T09:57:23.5579846+08:00;True|2024-01-12T09:52:39.7735343+08:00;True|2024-01-12T09:49:01.7855687+08:00;True|2024-01-12T09:44:26.1839115+08:00;True|2024-01-12T09:40:23.9216298+08:00;True|2024-01-12T09:36:41.0590000+08:00;True|2024-01-12T09:32:36.5860825+08:00;True|2024-01-12T09:18:47.5635433+08:00;True|2024-01-11T16:44:34.1615374+08:00;True|2024-01-11T16:40:15.6664078+08:00;True|2024-01-11T16:35:55.1073771+08:00;True|2024-01-11T16:30:59.0648321+08:00;True|2024-01-11T16:11:06.5473983+08:00;True|2024-01-11T16:00:13.6441008+08:00;True|2024-01-11T15:46:51.9760680+08:00;True|2024-01-11T15:36:57.4756880+08:00;True|2024-01-11T15:31:04.1093476+08:00;True|2024-01-11T15:29:01.9270892+08:00;True|2024-01-11T15:21:23.5612459+08:00;True|2024-01-11T15:20:16.1944310+08:00;True|2024-01-11T15:13:32.1080230+08:00;True|2024-01-11T15:06:57.4237688+08:00;True|2024-01-11T15:05:37.5128999+08:00;True|2024-01-11T14:57:22.7751079+08:00;True|2024-01-11T14:11:04.8587579+08:00;True|2024-01-11T11:21:14.0243941+08:00;True|2024-01-11T11:15:09.4678297+08:00;True|2024-01-09T17:06:36.4675498+08:00;True|2024-01-09T17:02:20.7904461+08:00;False|2024-01-09T11:59:36.2734315+08:00;False|2024-01-09T11:59:30.0330023+08:00;True|2024-01-09T11:59:17.2965616+08:00;True|2024-01-08T13:52:05.1989624+08:00;True|2024-01-08T11:12:57.8687468+08:00;True|2024-01-05T14:51:14.7636988+08:00;True|2024-01-05T14:05:34.1084252+08:00;True|2024-01-05T13:23:32.7473731+08:00;True|2024-01-05T11:23:22.0038600+08:00;True|2024-01-05T08:30:07.8997370+08:00;True|2024-01-04T17:03:59.0070371+08:00;True|2024-01-04T16:35:53.2667600+08:00;True|2024-01-04T13:54:55.5474585+08:00;True|2024-01-04T10:22:53.2575575+08:00;True|2024-01-04T10:19:29.6305295+08:00;True|2024-01-04T10:13:33.8544729+08:00;True|2024-01-04T10:09:45.5777175+08:00;True|2024-01-03T15:38:30.3306310+08:00;True|2024-01-03T15:33:57.3631133+08:00;True|2024-01-03T15:10:07.3593774+08:00;True|2024-01-03T13:01:19.4751344+08:00;True|2024-01-03T11:25:06.5732437+08:00;True|2024-01-03T10:55:20.7518873+08:00;True|2024-01-03T10:40:15.0650254+08:00;True|2024-01-03T10:29:15.9327684+08:00;True|2024-01-03T09:34:04.8587473+08:00;True|2024-01-03T08:19:57.3625106+08:00;True|2023-12-29T16:46:23.7770752+08:00;True|2023-12-29T16:45:18.9092534+08:00;True|2023-12-29T16:40:16.7253697+08:00;True|2023-12-29T16:35:46.0906100+08:00;True|2023-12-29T16:19:46.4369159+08:00;True|2023-12-29T15:13:11.2466536+08:00;True|2023-12-29T15:08:16.1413948+08:00;True|2023-12-29T11:54:24.8686181+08:00;True|2023-12-29T10:54:38.1200087+08:00;True|2023-12-29T10:43:44.2132588+08:00;True|2023-12-29T10:23:35.9589067+08:00;True|2023-12-29T10:21:38.3438976+08:00;True|2023-12-29T10:16:16.7097491+08:00;True|2023-12-29T09:53:37.8863387+08:00;True|2023-12-27T14:41:20.6098455+08:00;True|2023-12-27T14:15:27.0538444+08:00;True|2023-12-27T13:07:04.0423436+08:00;True|2023-12-27T11:13:53.7170363+08:00;True|2023-12-27T10:59:32.5371257+08:00;True|2023-12-27T10:48:01.7326864+08:00;True|2023-12-26T09:13:22.3086191+08:00;True|2023-12-26T09:12:47.2137946+08:00;True|2023-12-25T12:22:46.8608633+08:00;True|2023-12-25T12:18:59.4402254+08:00;True|2023-12-25T12:11:03.2410147+08:00;True|2023-12-25T09:37:48.6741194+08:00;True|2023-12-25T09:37:03.2635243+08:00;True|2023-12-22T09:44:26.5356492+08:00;True|2023-12-21T16:58:23.0505653+08:00;True|2023-12-21T16:51:26.4945132+08:00;True|2023-12-21T16:48:53.6772071+08:00;True|2023-12-21T16:23:16.4577315+08:00;True|2023-12-21T16:22:38.6599138+08:00;True|2023-12-21T16:11:43.8422015+08:00;True|2023-12-21T15:45:42.5751240+08:00;True|2023-12-15T16:26:52.3591879+08:00;True|2023-12-15T16:22:25.0756865+08:00;True|2023-12-15T14:19:10.1362534+08:00;True|2023-12-15T14:15:47.5585902+08:00;True|2023-12-15T13:41:56.8875380+08:00;True|2023-12-13T00:13:19.2052917+08:00;True|2023-12-12T23:45:04.0751980+08:00;True|2023-12-12T23:33:28.8199619+08:00;True|2023-12-11T16:31:01.1694979+08:00;True|2023-12-11T15:47:51.2813632+08:00;True|2023-12-11T14:31:49.0572919+08:00;True|2023-12-11T11:45:11.2736360+08:00;True|2023-12-11T11:42:47.5744097+08:00;True|2023-12-11T11:41:16.3262612+08:00;True|2023-12-11T11:32:42.2722966+08:00;True|2023-12-11T11:25:22.8877561+08:00;True|2023-12-11T11:18:20.8210764+08:00;True|2023-12-11T11:16:52.0927831+08:00;True|2023-12-11T11:12:29.9473078+08:00;True|2023-12-10T16:43:56.1726039+08:00;True|2023-12-08T16:50:00.8823437+08:00;True|2023-12-08T14:59:10.2356691+08:00;True|2023-12-08T14:53:13.6038106+08:00;True|2023-12-08T14:51:33.9002713+08:00;True|2023-12-08T14:49:22.0867686+08:00;True|2023-12-08T14:45:05.4216954+08:00;True|2023-12-08T14:30:25.7790911+08:00;True|2023-12-08T14:26:26.1041925+08:00;True|2023-12-08T10:55:36.7338237+08:00;True|2023-12-08T10:24:01.5463359+08:00;True|2023-12-08T10:04:35.7996746+08:00;True|2023-12-08T09:59:17.1279949+08:00;True|2023-12-08T09:52:45.7941909+08:00;True|2023-12-08T09:51:26.7251883+08:00;True|2023-12-08T09:27:43.4049328+08:00;True|2023-12-08T09:12:16.7029758+08:00;True|2023-12-07T11:13:10.4285460+08:00;True|2023-12-01T14:35:34.0005130+08:00;True|2023-12-01T13:21:46.3327168+08:00;True|2023-12-01T13:04:28.4801319+08:00;True|2023-11-30T16:46:41.8793520+08:00;True|2023-11-30T16:04:49.7131798+08:00;True|2023-11-30T15:51:12.9846550+08:00;True|2023-11-30T12:52:06.3440387+08:00;True|2023-11-28T11:20:26.3599705+08:00;True|2023-11-28T09:43:48.5733385+08:00;True|2023-11-27T12:13:11.3038226+08:00;True|2023-11-27T11:54:35.3665327+08:00;True|2023-11-24T13:10:19.3181494+08:00;True|2023-11-24T09:52:10.7335160+08:00;True|2023-11-24T09:31:32.3926443+08:00;True|2023-11-22T13:30:50.3888837+08:00;True|2023-11-22T13:22:29.5388053+08:00;True|2023-11-22T12:14:49.7935345+08:00;True|2023-11-22T11:28:30.8047701+08:00;True|2023-11-20T12:04:07.1512783+08:00;True|2023-11-20T11:58:16.7337435+08:00;True|2023-11-20T11:03:24.3231922+08:00;True|2023-11-20T10:59:12.6367033+08:00;True|2023-11-20T10:33:56.2434367+08:00;True|2023-11-17T15:05:08.6847106+08:00;True|2023-11-17T10:29:33.0225444+08:00;True|2023-11-16T14:21:42.1686146+08:00;True|2023-11-16T13:16:34.1913128+08:00;True|2023-11-16T12:57:16.2850606+08:00;True|2023-11-16T11:11:31.8430891+08:00;True|2023-11-16T10:20:42.1252046+08:00;True|2023-11-16T10:18:14.1408709+08:00;True|2023-11-16T09:23:36.6628173+08:00;True|2023-11-15T14:28:33.3369087+08:00;True|2023-11-15T12:26:26.2137336+08:00;True|2023-11-15T12:25:16.0092237+08:00;True|2023-11-15T11:14:45.4326153+08:00;True|2023-11-15T09:02:00.2711268+08:00;True|2023-11-15T08:53:27.1187290+08:00;True|2023-11-14T18:54:52.3812819+08:00;True|2023-11-14T18:52:20.2229451+08:00;True|2023-11-14T17:55:59.0996386+08:00;True|2023-11-14T17:04:46.5334994+08:00;True|2023-11-14T15:02:42.0419908+08:00;True|2023-11-14T14:56:49.6970449+08:00;True|2023-11-14T13:18:29.4329574+08:00;True|2023-11-14T12:23:09.7978978+08:00;True|2023-11-13T16:16:20.9105084+08:00;True|2023-11-13T16:11:45.1099698+08:00;True|2023-11-13T13:16:02.1477662+08:00;True|2023-11-13T13:15:15.6182523+08:00;True|2023-11-13T11:11:21.7620762+08:00;True|2023-11-13T10:01:31.2619079+08:00;True|2023-11-13T09:18:34.3054349+08:00;True|2023-11-13T00:48:47.6800494+08:00;True|2023-11-13T00:42:22.9854286+08:00;True|2023-11-10T16:59:57.9013482+08:00;True|2023-11-10T13:56:10.1520148+08:00;True|2023-11-10T12:25:28.8978413+08:00;True|2023-11-10T12:04:30.4991249+08:00;True|2023-11-10T11:55:52.1921552+08:00;True|2023-11-10T11:39:33.1910863+08:00;True|2023-11-10T11:17:17.2050570+08:00;True|2023-11-10T10:31:48.8350379+08:00;True|2023-11-09T13:11:02.1210376+08:00;True|2023-11-09T11:04:23.6279742+08:00;True|2023-11-09T09:52:39.0767165+08:00;True|2023-11-09T09:45:47.5629254+08:00;True|2023-11-09T09:41:09.1121998+08:00;True|2023-11-09T09:34:16.8133121+08:00;True|2023-11-08T16:33:38.3080500+08:00;True|2023-11-08T16:14:37.9282566+08:00;True|2023-11-08T15:31:46.8084522+08:00;True|2023-11-08T14:27:48.2352711+08:00;True|2023-11-08T12:23:56.5235127+08:00;True|2023-11-08T11:41:12.7035010+08:00;True|2023-11-08T11:38:42.5318310+08:00;True|2023-11-08T10:18:43.5798164+08:00;True|2023-11-08T09:06:35.6712939+08:00;True|2023-11-08T08:57:36.1174660+08:00;True|2023-11-08T00:07:44.2585670+08:00;True|2023-11-06T23:28:53.2559097+08:00;True|2023-11-06T23:00:40.3059201+08:00;True|2023-11-06T21:14:59.0505998+08:00;True|2023-11-03T22:08:06.7984691+08:00;True|2023-11-03T20:33:47.8005656+08:00;True|2023-11-03T19:18:45.1406730+08:00;True|2023-11-03T14:56:44.7332321+08:00;True|2023-11-02T20:13:15.5530300+08:00;True|2023-11-02T19:22:24.9140752+08:00;True|2023-11-02T18:58:18.1198017+08:00;True|2023-11-01T18:31:39.9490440+08:00;True|2023-11-01T14:49:43.8703361+08:00;True|2023-11-01T14:38:44.8729900+08:00;True|2023-11-01T14:14:57.6507597+08:00;True|2023-11-01T13:04:09.9744075+08:00;True|2023-10-31T13:03:41.1902847+08:00;True|2023-10-31T11:29:03.3252294+08:00;True|2023-10-30T18:35:01.5128678+08:00;True|2023-10-30T18:25:01.6612244+08:00;True|2023-10-26T17:07:56.7081658+08:00;True|2023-10-18T16:20:51.8420951+08:00;True|2023-10-16T16:44:43.7908528+08:00;True|2023-10-16T11:17:09.2728375+08:00;True|2023-10-16T10:28:07.3397339+08:00;True|2023-10-16T10:26:35.6073358+08:00;True|2023-10-16T10:21:48.9925797+08:00;True|2023-10-13T11:26:05.2730047+08:00;True|2023-10-12T08:19:04.3028512+08:00;True|2023-10-11T20:40:21.6934217+08:00;True|2023-10-11T20:28:04.3302789+08:00;True|2023-10-11T20:16:51.2741909+08:00;True|2023-10-11T20:10:01.4624158+08:00;True|2023-10-11T15:32:40.9782838+08:00;True|2023-10-11T15:21:09.0531801+08:00;True|2023-10-11T15:05:59.9622196+08:00;True|2023-10-11T10:51:46.8571661+08:00;True|2023-10-11T10:41:25.5037704+08:00;True|2023-10-11T10:13:32.2604453+08:00;True|2023-10-11T10:05:52.2170423+08:00;True|2023-10-11T09:47:35.6578975+08:00;True|2023-10-11T09:44:31.2001499+08:00;True|2023-10-11T09:37:09.6904898+08:00;True|2023-10-10T10:18:33.1073992+08:00;True|2023-10-10T09:32:05.6384867+08:00;True|2023-10-10T09:15:26.4844254+08:00;True|2023-10-10T09:03:39.1497247+08:00;True|2023-10-10T08:56:14.9475607+08:00;True|2023-10-09T15:38:52.6561232+08:00;True|2023-10-09T14:22:16.0301342+08:00;True|2023-10-09T13:24:40.4941388+08:00;True|2023-10-09T10:30:48.0015664+08:00;True|2023-10-09T09:52:47.4626658+08:00;True|2023-10-08T14:21:13.7960780+08:00;True|2023-10-08T10:31:55.0337899+08:00;True|2023-10-08T08:24:13.2663041+08:00;True|2023-10-07T10:40:04.1716715+08:00;True|2023-10-07T09:51:11.1928375+08:00;True|2023-10-07T09:43:13.8042516+08:00;True|2023-09-28T15:45:01.2865878+08:00;True|2023-09-28T15:32:23.8179822+08:00;True|2023-09-28T14:37:03.1119806+08:00;True|2023-09-28T14:30:07.0877531+08:00;True|2023-09-28T14:01:36.5862373+08:00;True|2023-09-28T08:29:16.5989163+08:00;True|2023-09-28T08:12:23.3924898+08:00;True|2023-09-27T17:04:09.2538198+08:00;True|2023-09-27T16:38:03.8237948+08:00;True|2023-09-27T16:12:28.7977056+08:00;True|2023-09-27T15:56:03.7725704+08:00;True|2023-09-27T15:12:31.1298921+08:00;True|2023-09-27T15:05:14.4058045+08:00;True|2023-09-27T14:55:43.4423114+08:00;True|2023-09-27T14:33:26.2272014+08:00;True|2023-09-22T13:26:44.6246077+08:00;True|2023-09-22T11:14:50.9067626+08:00;True|2023-09-22T09:36:50.6912928+08:00;True|2023-09-22T09:26:38.2305802+08:00;True|2023-09-22T09:02:22.5400635+08:00;True|2023-09-20T17:20:27.9780370+08:00;True|2023-09-19T09:20:00.1269897+08:00;True|2023-09-19T09:10:18.4900723+08:00;True|2023-09-19T08:30:20.1709390+08:00;True|2023-09-18T15:43:28.1580264+08:00;True|2023-09-15T10:08:50.6367258+08:00;True|2023-09-14T17:17:10.7002185+08:00;True|2023-09-14T16:55:47.7782477+08:00;True|2023-09-14T14:05:25.9485449+08:00;False|2023-09-14T14:04:51.9423918+08:00;True|2023-09-12T09:37:17.5430590+08:00;True|2023-09-11T16:38:00.9834961+08:00;True|2023-09-11T13:04:08.1338596+08:00;True|2023-09-11T09:33:03.5400174+08:00;True|2023-09-08T15:34:46.6427039+08:00;True|2023-09-08T15:32:26.7896155+08:00;True|2023-09-08T14:07:16.6283055+08:00;True|2023-09-08T08:21:08.8368055+08:00;True|2023-09-08T08:07:29.5992984+08:00;True|2023-09-07T13:03:24.6924914+08:00;True|2023-09-07T11:02:02.9462467+08:00;True|2023-09-07T08:57:36.4913496+08:00;True|2023-09-07T08:55:57.3245545+08:00;True|2023-09-06T13:47:04.0563026+08:00;True|2023-09-06T13:42:27.3031938+08:00;True|2023-09-05T08:28:44.6193871+08:00;True|2023-09-04T20:42:09.4672710+08:00;True|2023-09-03T14:06:37.5079909+08:00;True|2023-09-02T18:58:24.1492192+08:00;True|2023-09-01T13:19:28.2779978+08:00;True|2023-09-01T08:40:54.0577358+08:00;True|2023-08-31T16:47:34.8462721+08:00;True|2023-08-31T14:49:39.9056564+08:00;True|2023-08-31T14:20:01.4071384+08:00;True|2023-08-31T11:25:29.0233052+08:00;True|2023-08-31T10:28:13.4933678+08:00;True|2023-08-31T10:21:52.6638820+08:00;True|2023-08-31T08:46:57.8782261+08:00;True|2023-08-31T08:46:08.4791004+08:00;True|2023-08-30T09:06:17.4001684+08:00;True|2023-08-30T08:52:06.9481657+08:00;True|2023-08-29T17:11:33.7851914+08:00;True|2023-08-29T16:58:52.7298807+08:00;True|2023-08-29T15:58:23.4205277+08:00;True|2023-08-29T15:56:40.3534593+08:00;True|2023-08-29T15:54:29.1188567+08:00;True|2023-08-29T15:53:27.9719983+08:00;True|2023-08-29T15:52:38.7670005+08:00;True|2023-08-29T15:51:32.3703092+08:00;True|2023-08-29T15:47:38.5198946+08:00;True|2023-08-29T15:46:17.4698017+08:00;True|2023-08-29T15:42:04.1853400+08:00;True|2023-08-29T15:29:28.1098681+08:00;True|2023-08-29T15:18:40.8587286+08:00;True|2023-08-29T14:47:50.3088948+08:00;True|2023-08-29T14:47:27.6552611+08:00;False|2023-08-28T13:59:37.8725670+08:00;True|2023-08-18T13:23:38.9937084+08:00;True|2023-08-18T10:09:51.5247737+08:00;True|2023-08-18T08:26:21.8473123+08:00;True|2023-08-17T08:31:37.8696349+08:00;True|2023-08-17T08:23:59.5658185+08:00;True|2023-08-17T08:07:38.2174684+08:00;True|2023-08-16T16:49:44.2549852+08:00;True|2023-08-16T16:33:59.9298792+08:00;True|2023-08-16T15:35:29.6092783+08:00;True|2023-08-16T11:17:28.1086751+08:00;True|2023-08-16T11:17:22.3814672+08:00;True|2023-08-16T08:44:16.0941179+08:00;True|2023-08-15T15:29:15.8118269+08:00;True|2023-08-15T14:47:06.4963591+08:00;True|2023-08-11T16:49:35.8718314+08:00;True|2023-08-11T14:22:59.9440967+08:00;True|2023-08-11T14:16:25.0940743+08:00;True|2023-08-11T13:27:25.4148450+08:00;True|2023-08-11T09:08:31.5437265+08:00;True|2023-08-11T09:04:38.4540336+08:00;True|2023-08-10T14:11:07.0042283+08:00;True|2023-08-08T13:48:19.2402267+08:00;True|2023-08-08T13:44:15.6796969+08:00;True|2023-07-27T09:46:14.1491814+08:00;True|2023-07-21T11:13:10.0843656+08:00;True|2023-07-21T10:56:47.5835580+08:00;True|2023-07-21T10:30:33.0113443+08:00;True|2023-07-20T19:16:37.4936135+08:00;True|2023-07-20T19:00:41.0636578+08:00;True|2023-07-19T13:28:27.8671371+08:00;True|2023-07-19T13:23:42.1880500+08:00;True|2023-07-19T13:19:18.7201227+08:00;True|2023-07-19T13:06:38.9897249+08:00;True|2023-07-19T12:13:11.2061059+08:00;True|2023-07-19T11:45:20.0391356+08:00;True|2023-07-19T11:24:02.5425841+08:00;True|2023-07-19T10:32:06.7915754+08:00;True|2023-07-19T09:51:08.4553434+08:00;True|2023-07-19T09:48:11.2977426+08:00;True|2023-07-18T08:47:44.1724897+08:00;True|2023-07-17T16:25:10.8982872+08:00;True|2023-07-17T14:50:44.3708198+08:00;True|2023-07-17T14:20:26.4686898+08:00;True|2023-07-17T14:18:16.6127136+08:00;True|2023-07-17T14:16:34.9116950+08:00;True|2023-07-17T14:14:44.7988846+08:00;True|2023-07-17T14:06:18.1123806+08:00;True|2023-07-17T14:03:38.5290433+08:00;True|2023-07-17T13:48:54.3096778+08:00;True|2023-07-17T13:23:13.6097762+08:00;True|2023-07-17T09:54:25.9375716+08:00;True|2023-07-17T09:40:22.2531559+08:00;True|2023-07-17T09:21:15.0786649+08:00;True|2023-07-17T09:03:37.2081513+08:00;True|2023-07-16T21:20:45.3036514+08:00;True|2023-07-16T21:09:16.1559694+08:00;True|2023-07-16T21:05:22.2504644+08:00;True|2023-07-16T20:41:26.5956030+08:00;True|2023-07-16T20:19:33.5726613+08:00;True|2023-07-16T19:46:38.6493518+08:00;True|2023-07-14T10:33:17.6270692+08:00;True|2023-07-11T14:34:22.8852169+08:00;True|2023-07-11T14:27:22.7851108+08:00;True|2023-07-11T14:13:21.6512172+08:00;True|2023-07-11T14:06:33.9865646+08:00;True|2023-07-11T13:52:46.2830836+08:00;True|2023-07-11T13:38:56.3165889+08:00;True|2023-07-11T13:29:40.9636697+08:00;True|2023-07-11T13:25:23.0633788+08:00;True|2023-07-11T10:17:40.8002359+08:00;True|2023-07-11T10:15:47.5472709+08:00;True|2023-07-11T10:12:25.6440547+08:00;True|2023-07-11T10:07:39.3716167+08:00;True|2023-07-11T09:22:07.4191357+08:00;True|2023-07-04T13:07:10.1209516+08:00;True|2023-06-30T16:11:25.7541580+08:00;True|2023-06-30T15:39:26.6678989+08:00;True|2023-06-30T15:26:40.6581344+08:00;True|2023-06-30T15:12:57.9906312+08:00;True|2023-06-29T16:39:15.6477820+08:00;True|2023-06-28T17:01:51.9542466+08:00;True|2023-06-27T15:03:28.1320450+08:00;True|2023-06-27T13:36:39.6707848+08:00;True|2023-06-26T09:40:01.1754706+08:00;True|2023-06-25T12:16:28.9080024+08:00;True|2023-06-25T11:51:59.9238461+08:00;True|2023-06-25T11:50:29.3100358+08:00;True|2023-06-25T11:29:28.5338563+08:00;True|2023-06-25T09:10:26.2420288+08:00;True|2023-06-25T09:08:15.0702872+08:00;True|2023-06-25T08:43:15.0806611+08:00;True|2023-06-25T08:41:41.8156616+08:00;True|2023-06-25T08:39:30.6818013+08:00;True|2023-06-25T08:38:18.5996529+08:00;True|2023-06-25T08:36:34.1479706+08:00;True|2023-06-25T08:34:53.9856289+08:00;True|2023-06-25T08:31:24.0298080+08:00;True|2023-06-25T08:15:45.7453280+08:00;True|2023-06-25T08:01:52.7609075+08:00;True|2023-06-24T21:25:23.8938665+08:00;True|2023-06-22T03:02:26.7305758+08:00;True|2023-06-22T02:10:48.8222890+08:00;True|2023-06-22T01:57:41.7875184+08:00;True|2023-06-22T01:52:19.4217362+08:00;True|2023-06-21T16:27:15.1464129+08:00;True|2023-06-21T16:11:46.6111817+08:00;True|2023-06-21T13:14:00.6869253+08:00;True|2023-06-21T13:09:28.2689225+08:00;True|2023-06-21T12:24:02.6762426+08:00;True|2023-06-21T12:18:06.2748924+08:00;True|2023-06-21T11:18:02.6754143+08:00;True|2023-06-21T11:08:34.2149469+08:00;True|2023-06-21T08:20:50.0079906+08:00;True|2023-06-20T15:56:03.2638713+08:00;True|2023-06-20T15:48:38.2419545+08:00;True|2023-06-20T15:35:26.6615171+08:00;True|2023-06-20T15:20:31.9284860+08:00;True|2023-06-20T15:18:39.8265469+08:00;True|2023-06-20T15:09:16.7617272+08:00;True|2023-06-20T09:53:23.2658672+08:00;True|2023-06-16T10:00:58.0337616+08:00;True|2023-06-16T09:47:58.8912904+08:00;True|2023-06-16T09:26:36.4914832+08:00;True|2023-06-15T16:22:21.4509393+08:00;True|2023-06-12T13:21:12.0491357+08:00;True|2023-06-12T10:18:32.9287587+08:00;True|2023-06-09T16:22:24.1132267+08:00;True|2023-06-08T18:12:42.4814009+08:00;True|2023-06-08T11:08:48.0533571+08:00;True|2023-06-08T10:41:43.0121701+08:00;False|2023-06-08T10:40:19.2093235+08:00;True|2023-06-06T13:03:50.8124200+08:00;True|2023-06-05T10:12:24.1858209+08:00;True|2023-06-02T17:02:57.5817094+08:00;True|2023-05-26T13:54:40.2272218+08:00;True|2023-05-24T12:43:50.2427994+08:00;True|2023-05-24T12:34:24.3922836+08:00;True|2023-05-24T10:07:19.4995219+08:00;True|2023-05-24T09:21:29.1960080+08:00;True|2023-05-23T22:34:23.3220912+08:00;True|2023-05-23T22:01:14.4175449+08:00;True|2023-05-23T17:02:53.0308400+08:00;True|2023-05-23T16:30:11.7138623+08:00;True|2023-05-23T15:51:50.0152484+08:00;True|2023-05-23T15:50:52.0657433+08:00;True|2023-05-23T15:28:25.5802377+08:00;True|2023-05-23T15:25:56.4633020+08:00;True|2023-05-23T14:52:29.8759921+08:00;True|2023-05-23T14:48:44.6519763+08:00;True|2023-05-20T04:28:10.3108871+08:00;True|2023-05-20T03:56:22.7233820+08:00;True|2023-05-20T03:47:38.4405026+08:00;True|2023-05-20T03:46:40.6056451+08:00;True|2023-05-20T03:44:25.0883888+08:00;True|2023-05-20T03:41:10.1148691+08:00;True|2023-05-20T02:34:14.3757035+08:00;True|2023-05-20T02:27:50.5595075+08:00;True|2023-05-20T02:23:04.2256041+08:00;True|2023-05-20T01:46:59.9534021+08:00;True|2023-05-20T01:42:33.5106065+08:00;True|2023-05-20T01:40:39.6918060+08:00;True|2023-05-20T01:11:47.7436847+08:00;True|2023-05-20T01:03:58.9476094+08:00;True|2023-05-19T22:59:47.4591129+08:00;True|2023-05-19T22:34:44.7988447+08:00;True|2023-05-19T22:24:55.2320279+08:00;True|2023-05-19T21:40:19.5285575+08:00;True|2023-05-19T21:38:21.2073338+08:00;True|2023-05-19T20:54:59.2058809+08:00;True|2023-05-19T16:08:15.0151080+08:00;True|2023-05-19T15:26:16.2836301+08:00;True|2023-05-19T13:09:06.1592914+08:00;True|2023-05-19T12:24:23.6252771+08:00;True|2023-05-19T11:50:53.8948740+08:00;True|2023-05-19T11:43:57.9296933+08:00;True|2023-05-19T10:44:34.9904463+08:00;True|2023-05-19T09:32:02.1216663+08:00;False|2023-05-19T09:31:06.4251757+08:00;True|2023-05-18T22:34:36.5292968+08:00;True|2023-05-18T20:37:59.7940567+08:00;True|2023-05-18T20:36:35.2790349+08:00;True|2023-05-18T20:34:10.7400457+08:00;True|2023-05-18T20:32:43.8790879+08:00;True|2023-05-18T20:31:13.5389643+08:00;True|2023-05-18T20:29:19.6206139+08:00;True|2023-05-18T20:07:25.5074263+08:00;True|2023-05-18T18:19:43.5324315+08:00;True|2023-05-18T18:15:36.4290026+08:00;True|2023-05-18T18:12:31.8703551+08:00;True|2023-05-18T18:10:52.9289531+08:00;True|2023-05-18T18:09:23.9118797+08:00;True|2023-05-18T17:58:30.8068228+08:00;True|2023-05-18T17:56:55.8055382+08:00;False|2023-05-18T17:54:54.7950789+08:00;False|2023-05-18T17:11:18.2325105+08:00;True|2023-05-18T17:09:24.4186482+08:00;True|2023-05-18T17:06:32.0699130+08:00;False|2023-05-18T17:01:41.8164925+08:00;False|2023-05-18T16:59:32.1112741+08:00;True|2023-05-18T16:58:34.1784100+08:00;True|2023-05-18T16:56:36.9460541+08:00;True|2023-05-18T16:55:00.9843495+08:00;True|2023-05-18T16:49:04.0161640+08:00;True|2023-05-18T16:48:28.9011382+08:00;True|2023-05-18T16:44:52.0675900+08:00;False|2023-05-18T16:44:37.3514214+08:00;False|2023-05-18T16:43:23.3343369+08:00;True|2023-05-18T16:41:35.8818611+08:00;True|2023-05-18T16:25:43.5167900+08:00;False|2023-05-18T16:24:46.6646890+08:00;False|2023-05-18T16:19:55.4153618+08:00;False|2023-05-18T16:16:18.0052881+08:00;False|2023-05-18T16:14:32.3377278+08:00;True|2023-05-17T15:43:45.1868569+08:00;True|2023-05-17T15:35:42.2476880+08:00;True|2023-05-17T14:23:28.2390957+08:00;True|2023-05-17T13:54:00.6756387+08:00;True|2023-05-17T13:45:46.1115068+08:00;True|2023-05-17T07:57:34.7129429+08:00;True|2023-05-16T16:04:20.3198005+08:00;False|2023-05-16T16:03:52.0737233+08:00;True|2023-05-16T15:28:45.4945726+08:00;True|2023-05-16T15:14:10.4952128+08:00;True|2023-05-16T15:04:46.5706346+08:00;True|2023-05-16T14:46:48.7034492+08:00;True|2023-05-16T14:45:29.4047499+08:00;True|2023-05-16T14:42:47.3507679+08:00;True|2023-05-16T14:30:47.9199224+08:00;True|2023-05-16T14:29:10.9147184+08:00;True|2023-05-16T14:27:48.3632687+08:00;True|2023-05-16T14:24:44.6240034+08:00;True|2023-05-16T14:19:41.2962188+08:00;True|2023-05-16T13:41:13.3366211+08:00;True|2023-05-16T13:26:44.1532655+08:00;True|2023-05-16T13:23:40.2882422+08:00;True|2023-05-16T13:11:41.5416792+08:00;True|2023-05-16T13:08:41.6341863+08:00;True|2023-05-16T13:04:35.6916867+08:00;True|2023-05-16T13:00:34.6889598+08:00;True|2023-05-16T12:57:48.4561274+08:00;True|2023-05-16T12:50:57.7405833+08:00;True|2023-05-16T12:49:33.8394829+08:00;True|2023-05-16T12:44:28.6906226+08:00;True|2023-05-16T12:41:08.3554032+08:00;True|2023-05-16T12:32:32.3448036+08:00;True|2023-05-16T11:32:04.4504376+08:00;True|2023-05-15T18:39:28.9172042+08:00;True|2023-05-15T18:35:41.5268755+08:00;True|2023-05-15T18:16:16.2900985+08:00;True|2023-04-28T16:24:40.7430596+08:00;False|2023-04-28T16:21:34.8499384+08:00;True|2023-04-28T15:43:40.3023318+08:00;True|2023-04-28T15:41:18.8228620+08:00;True|2023-04-28T14:16:21.1595325+08:00;True|2023-04-28T10:27:55.2150739+08:00;True|2023-04-12T16:25:26.5218825+08:00;True|2023-04-12T15:45:29.3993255+08:00;True|2023-04-12T14:00:18.1960878+08:00;True|2023-04-12T13:16:39.0804178+08:00;True|2023-04-11T11:02:27.5200402+08:00;True|2023-04-11T09:57:11.5903829+08:00;True|2023-04-10T09:58:01.1775220+08:00;True|2023-03-13T11:19:32.0927720+08:00;True|2023-03-13T10:39:50.9250037+08:00;True|2023-03-13T08:54:57.5891390+08:00;True|2023-03-10T09:00:31.2441735+08:00;True|2023-03-08T08:25:11.1877416+08:00;True|2023-03-06T09:18:03.5502956+08:00;True|2023-03-06T09:14:57.8192971+08:00;True|2023-01-11T13:30:27.8190489+08:00;True|2023-01-06T14:29:14.6067256+08:00;True|2022-12-23T17:06:52.0688439+08:00;True|2022-12-23T16:12:04.4155951+08:00;True|2022-12-23T13:35:44.6439326+08:00;True|2022-11-30T08:24:02.9999976+08:00;True|2022-11-30T08:01:51.4579972+08:00;True|2022-11-29T21:32:14.4359673+08:00;True|2022-11-29T19:30:22.9466023+08:00;True|2022-11-29T19:24:30.1630119+08:00;True|2022-11-29T17:31:43.1926801+08:00;True|2022-11-29T17:14:32.5869985+08:00;True|2022-11-29T10:42:57.1877576+08:00;True|2022-11-27T14:40:28.4784748+08:00;True|2022-11-26T20:49:34.2789400+08:00;True|2022-11-26T19:24:58.9988205+08:00;True|2022-11-26T15:33:08.6274944+08:00;True|2022-11-26T14:37:46.3953592+08:00;True|2022-11-26T09:16:41.7487240+08:00;True|2022-11-24T09:49:50.7302637+08:00;True|2022-11-23T16:24:56.5946914+08:00;True|2022-11-23T16:19:57.5570583+08:00;True|2022-11-23T15:05:13.8032246+08:00;True|2022-11-22T20:24:39.7324815+08:00;True|2022-11-22T13:18:16.2143925+08:00;False|2022-11-22T13:12:53.0448580+08:00;True|2022-11-22T11:03:01.7571733+08:00;True|2022-11-21T13:20:11.1961237+08:00;True|2022-11-21T13:13:52.0360749+08:00;True|2022-11-18T15:48:13.0747365+08:00;True|2022-11-18T14:15:54.5626901+08:00;True|2022-11-17T18:41:26.5464503+08:00;True|2022-11-15T13:55:35.3496366+08:00;True|2022-11-15T11:03:23.6773297+08:00;True|2022-11-15T10:58:47.9703720+08:00;True|2022-11-15T10:12:27.8305782+08:00;True|2022-11-15T09:47:26.7480777+08:00;True|2022-11-15T08:55:44.0275263+08:00;True|2022-11-15T08:54:06.6396851+08:00;True|2022-11-15T08:44:18.2013404+08:00;True|2022-11-15T01:16:19.8154538+08:00;True|2022-11-15T01:15:03.7846810+08:00;True|2022-11-15T01:01:11.0318599+08:00;True|2022-11-15T00:30:33.7148460+08:00;True|2022-11-15T00:15:26.5178283+08:00;True|2022-11-14T23:54:32.6128172+08:00;True|2022-11-14T23:26:52.0335380+08:00;True|2022-11-14T22:21:28.0622050+08:00;True|2022-11-14T21:47:43.6964619+08:00;True|2022-11-14T21:41:42.3128804+08:00;True|2022-11-14T21:31:17.2784203+08:00;True|2022-11-14T20:48:20.0380343+08:00;True|2022-11-11T17:24:44.7029993+08:00;True|2022-11-11T16:47:29.3444029+08:00;True|2022-11-11T16:07:26.4718473+08:00;True|2022-11-11T15:52:41.7235701+08:00;True|2022-11-10T15:58:10.8883176+08:00;True|2022-11-10T15:29:59.3113740+08:00;True|2022-11-10T13:34:14.7380132+08:00;True|2022-11-10T10:28:02.1166569+08:00;True|2022-11-09T23:28:25.6401971+08:00;True|2022-11-09T16:20:53.2757536+08:00;True|2022-11-09T16:16:41.3169214+08:00;True|2022-11-09T14:02:55.1802832+08:00;True|2022-11-09T13:57:55.2726154+08:00;True|2022-11-09T13:28:53.2022669+08:00;True|2022-11-09T13:10:58.0740163+08:00;True|2022-11-09T12:59:42.2328933+08:00;True|2022-11-09T11:54:08.0187924+08:00;True|2022-11-09T11:49:32.4296758+08:00;True|2022-11-09T11:34:32.6613370+08:00;True|2022-11-09T11:06:56.9443306+08:00;True|2022-11-06T23:43:44.0833657+08:00;True|2022-11-06T23:29:52.0088244+08:00;True|2022-11-06T22:06:14.7091464+08:00;True|2022-11-06T22:03:25.2696951+08:00;True|2022-11-06T21:58:50.1055520+08:00;True|2022-11-06T21:54:14.0075395+08:00;True|2022-11-06T21:39:30.2652105+08:00;True|2022-11-04T15:54:37.9813194+08:00;True|2022-11-04T15:43:59.7702621+08:00;True|2022-11-04T13:59:29.3941234+08:00;True|2022-11-04T13:44:18.1212719+08:00;True|2022-11-04T13:42:06.1010393+08:00;True|2022-11-04T13:37:01.7814703+08:00;True|2022-11-04T13:35:43.1121709+08:00;True|2022-11-04T13:33:05.1362535+08:00;True|2022-11-04T13:30:11.1113703+08:00;True|2022-11-04T13:28:53.7185382+08:00;True|2022-11-04T13:27:08.0691684+08:00;True|2022-11-04T13:20:46.2297633+08:00;True|2022-11-04T13:17:57.1564250+08:00;True|2022-11-04T13:15:36.3651019+08:00;True|2022-11-04T13:13:44.6635701+08:00;True|2022-11-04T13:12:02.3968306+08:00;True|2022-11-04T13:08:07.7653927+08:00;True|2022-11-04T11:37:44.1975649+08:00;True|2022-11-04T11:36:20.3813848+08:00;True|2022-11-04T11:26:40.9713465+08:00;True|2022-11-04T10:17:36.4269558+08:00;True|2022-11-04T09:47:05.4607111+08:00;True|2022-11-04T09:28:27.9347785+08:00;True|2022-11-04T08:38:38.5253737+08:00;True|2022-11-03T13:31:32.7883545+08:00;False|2022-11-03T13:27:07.8579021+08:00;True|2022-11-03T11:07:07.3903101+08:00;True|2022-11-03T10:54:26.7818816+08:00;True|2022-11-03T10:35:59.1956262+08:00;True|2022-11-03T10:30:07.0651285+08:00;True|2022-11-03T10:01:20.8467911+08:00;True|2022-08-22T11:13:33.9211829+08:00;True|2022-06-17T11:19:24.4893458+08:00;True|2022-06-07T14:44:51.5702202+08:00;True|2022-06-07T14:42:44.8351600+08:00;True|2022-05-17T14:19:55.1158182+08:00;True|2022-05-17T13:25:44.2886247+08:00;True|2022-05-17T10:29:26.6813564+08:00;True|2022-05-17T09:02:49.1742018+08:00;True|2022-05-06T15:13:12.2438900+08:00;True|2022-05-06T14:49:39.8536594+08:00;True|2022-04-22T17:07:44.8823529+08:00;True|2022-04-19T19:13:40.8312746+08:00;True|2022-04-19T15:40:16.0022040+08:00;True|2022-04-19T15:13:32.9767736+08:00;False|2022-04-19T15:08:33.6507639+08:00;True|2022-04-19T15:02:51.9580210+08:00;True|2022-04-19T13:54:18.7579131+08:00;True|2022-04-12T10:36:02.1779173+08:00;True|2022-04-12T10:05:31.0222037+08:00;True|2022-04-12T09:47:49.3724819+08:00;True|2022-04-09T15:08:54.5697468+08:00;True|2022-04-08T17:31:31.0046258+08:00;True|2022-04-08T16:50:41.3018422+08:00;True|2022-04-08T10:35:36.5029980+08:00;True|2022-03-31T09:38:37.3646053+08:00;True|2022-03-29T13:57:45.4410942+08:00;True|2022-03-10T18:59:23.7994337+08:00;True|2022-03-10T18:52:39.5019082+08:00;True|2022-03-10T18:51:12.7949284+08:00;True|2022-03-10T18:50:47.2024177+08:00;True|2022-03-10T18:45:08.8409380+08:00;True|2022-03-10T18:41:17.0102564+08:00;True|2022-03-10T18:35:49.0742353+08:00;True|2022-03-10T17:57:47.4196965+08:00;True|2022-03-10T17:34:27.5723245+08:00;True|2022-03-10T16:13:59.3829164+08:00;True|2022-03-09T14:50:49.1222033+08:00;True|2022-03-09T11:21:03.0073651+08:00;False|2022-03-09T11:16:56.1792896+08:00;False|2022-03-09T11:16:49.7923320+08:00;True|2022-03-08T15:47:47.4722336+08:00;True|2022-03-08T15:47:28.5397115+08:00;True|2022-03-08T15:37:08.7379870+08:00;True|2022-03-02T17:37:54.4659976+08:00;True|2022-03-02T17:34:12.2949726+08:00;True|2022-03-02T17:26:38.7070673+08:00;True|2022-03-02T17:07:49.7024316+08:00;True|2022-03-02T17:05:22.4177336+08:00;True|2022-03-02T16:14:57.9880587+08:00;True|2022-03-01T17:52:52.6766959+08:00;True|2022-02-28T14:36:22.6449303+08:00;True|2022-02-24T15:43:36.8244163+08:00;True|2022-02-23T17:57:14.3693224+08:00;True|2022-02-23T17:46:42.1078183+08:00;False|2022-02-23T17:41:06.5886724+08:00;True|2022-02-23T16:59:45.5533581+08:00;True|2022-02-23T16:57:43.3328895+08:00;True|2022-02-21T09:09:37.2601134+08:00;True|2022-02-21T09:03:32.4071009+08:00;True|2022-02-21T08:59:59.0172082+08:00;True|2022-02-18T14:05:39.1358825+08:00;True|2022-02-18T10:23:02.4391239+08:00;True|2022-02-18T10:21:31.0559267+08:00;True|2022-02-17T16:50:11.7192509+08:00;True|2022-02-17T13:19:13.7697894+08:00;True|2022-02-11T10:36:12.7757100+08:00;True|2022-02-10T10:54:25.2685040+08:00;True|2022-02-10T10:37:02.1034768+08:00;True|2022-02-09T17:32:45.6511283+08:00;True|2022-02-09T17:24:32.5115193+08:00;True|2022-02-09T17:00:24.0662114+08:00;True|2022-02-09T16:56:42.3364622+08:00;True|2022-02-09T14:17:25.8688855+08:00;True|2022-02-09T14:11:51.6149822+08:00;True|2022-02-07T23:29:26.2842648+08:00;True|2022-02-07T23:28:58.8242274+08:00;False|2022-02-07T23:25:29.0647793+08:00;True|2022-02-07T13:06:37.5515985+08:00;True|2022-02-07T12:42:19.5220491+08:00;True|2022-02-07T09:52:59.6728595+08:00;True|2022-02-01T11:32:10.5831557+08:00;True|2022-01-29T14:09:02.9178986+08:00;True|2022-01-28T12:01:45.1416438+08:00;True|2022-01-28T11:03:41.6361866+08:00;True|2022-01-28T10:44:53.5367862+08:00;True|2022-01-28T10:40:41.6697563+08:00;True|2022-01-28T10:25:56.7093616+08:00;True|2022-01-28T09:58:13.0733060+08:00;True|2022-01-27T09:26:29.6568807+08:00;True|2022-01-27T00:47:57.9102528+08:00;True|2022-01-27T00:46:52.8845001+08:00;True|2022-01-27T00:36:34.5330938+08:00;True|2022-01-27T00:35:19.5439329+08:00;True|2022-01-27T00:33:38.5701950+08:00;True|2022-01-27T00:32:00.9028982+08:00;True|2022-01-27T00:30:13.2390921+08:00;True|2022-01-27T00:28:23.2989144+08:00;True|2022-01-27T00:16:01.3789455+08:00;True|2022-01-27T00:09:58.8112352+08:00;True|2022-01-27T00:00:40.8353538+08:00;True|2022-01-26T23:37:50.9494735+08:00;True|2022-01-26T23:29:39.8647473+08:00;True|2022-01-26T23:20:49.3274392+08:00;True|2022-01-26T23:15:53.7037293+08:00;True|2022-01-26T23:06:28.8595953+08:00;True|2022-01-26T23:02:12.9882299+08:00;True|2022-01-26T22:55:33.2535730+08:00;True|2022-01-26T22:51:01.8427947+08:00;True|2022-01-26T22:47:44.0715387+08:00;True|2022-01-26T22:20:21.7217039+08:00;True|2022-01-26T22:13:39.5372069+08:00;True|2022-01-26T22:01:31.2113177+08:00;True|2022-01-26T21:55:26.5478921+08:00;True|2022-01-26T21:50:18.2700369+08:00;True|2022-01-26T21:48:52.0020233+08:00;True|2022-01-26T19:19:29.4530523+08:00;True|2022-01-26T19:07:21.6474231+08:00;True|2022-01-26T18:25:42.2933291+08:00;True|2022-01-26T12:39:02.0149050+08:00;True|2022-01-26T12:13:43.9149452+08:00;True|2022-01-26T11:24:33.5742248+08:00;True|2022-01-26T08:51:10.8105076+08:00;True|2022-01-25T21:07:32.9069261+08:00;True|2022-01-24T01:35:12.3309466+08:00;True|2022-01-23T23:19:15.9702821+08:00;True|2022-01-23T21:50:41.6903353+08:00;True|2022-01-23T21:25:57.6084267+08:00;True|2022-01-23T21:16:10.1516535+08:00;True|2022-01-23T20:52:08.3745284+08:00;True|2022-01-23T18:19:32.2386502+08:00;True|2022-01-23T18:11:42.0830325+08:00;True|2022-01-23T18:00:01.3239547+08:00;True|2022-01-23T12:18:48.2466943+08:00;True|2022-01-22T00:48:50.4531647+08:00;True|2022-01-21T13:10:32.8173598+08:00;True|2022-01-21T13:04:01.6388059+08:00;True|2022-01-21T12:51:40.5304103+08:00;True|2022-01-21T12:44:06.3059885+08:00;True|2022-01-21T12:34:33.9314010+08:00;True|2022-01-21T11:39:20.1088577+08:00;True|2022-01-20T11:33:49.0516846+08:00;True|2022-01-20T10:02:12.0295471+08:00;True|2022-01-20T10:02:03.3535503+08:00;True|2022-01-19T23:56:18.7293193+08:00;True|2022-01-19T22:30:14.6986228+08:00;True|2022-01-19T22:15:08.8608795+08:00;True|2022-01-19T21:57:55.2295030+08:00;True|2022-01-19T13:50:37.8588759+08:00;True|2022-01-19T13:42:52.9761531+08:00;True|2022-01-19T00:26:36.9722917+08:00;True|2022-01-19T00:15:30.8583143+08:00;True|2022-01-18T21:19:30.6193048+08:00;True|2022-01-18T21:12:07.1453825+08:00;True|2022-01-18T20:35:27.3779956+08:00;True|2022-01-18T17:44:45.2318570+08:00;True|2022-01-18T14:45:29.0299640+08:00;True|2022-01-17T22:23:20.8214203+08:00;True|2022-01-17T21:49:15.7740045+08:00;True|2022-01-17T21:47:24.6997598+08:00;True|2022-01-17T21:44:00.1942787+08:00;True|2022-01-17T21:43:15.5992687+08:00;True|2022-01-17T21:33:16.8034756+08:00;True|2022-01-17T21:25:39.9909343+08:00;True|2022-01-17T21:13:03.9659338+08:00;True|2022-01-17T20:32:14.8869091+08:00;True|2022-01-17T19:01:46.5753686+08:00;True|2022-01-17T18:31:24.1032169+08:00;True|2022-01-17T18:21:39.2918684+08:00;True|2022-01-17T18:12:07.4859038+08:00;True|2022-01-17T18:09:26.6989718+08:00;True|2022-01-17T18:04:36.7564997+08:00;True|2022-01-17T17:57:44.7814863+08:00;True|2022-01-17T17:51:50.1516107+08:00;True|2022-01-17T17:39:29.2918799+08:00;True|2022-01-17T14:55:21.5859341+08:00;True|2022-01-17T14:38:06.5091500+08:00;True|2022-01-17T14:30:25.5378436+08:00;True|2022-01-16T19:15:24.5874858+08:00;True|2022-01-16T19:07:49.0613424+08:00;True|2022-01-16T16:10:47.3112741+08:00;False|2022-01-14T19:09:41.9296709+08:00;False|2022-01-14T18:56:11.0569808+08:00;False|2022-01-14T18:28:20.1376762+08:00;False|2022-01-14T18:27:30.8678130+08:00;False|2022-01-14T18:22:45.4436504+08:00;False|2022-01-14T18:19:37.0374753+08:00;False|2022-01-14T18:18:48.5868254+08:00;False|2022-01-14T18:14:02.5810257+08:00;False|2022-01-14T18:09:51.1730754+08:00;False|2022-01-14T18:09:17.8940754+08:00;True|2022-01-13T20:08:16.2937608+08:00;True|2022-01-13T20:07:30.1505466+08:00;True|2022-01-13T13:39:42.0146294+08:00;True|2022-01-13T13:38:07.5062471+08:00;True|2022-01-13T11:29:49.3751232+08:00;True|2022-01-13T11:05:43.9574142+08:00;True|2022-01-13T10:33:23.1921058+08:00;True|2022-01-12T20:38:16.9165651+08:00;True|2022-01-12T20:24:46.3779264+08:00;True|2022-01-12T20:03:06.5030626+08:00;True|2022-01-12T19:44:55.4294326+08:00;True|2022-01-12T12:58:45.9548600+08:00;True|2022-01-12T11:28:44.7797749+08:00;True|2022-01-11T18:07:30.9151356+08:00;True|2022-01-11T15:06:32.7301609+08:00;True|2022-01-11T09:27:00.1766442+08:00;True|2021-12-30T14:41:56.8541015+08:00;True|2021-12-30T13:45:00.6130694+08:00;True|2021-12-30T13:44:18.7370780+08:00;True|2021-12-30T13:36:52.8171136+08:00;True|2021-12-28T19:14:22.5979649+08:00;True|2021-12-28T13:13:39.3543252+08:00;True|2021-12-27T15:31:26.6037782+08:00;True|2021-12-27T15:28:54.4824480+08:00;True|2021-12-27T15:22:47.8436108+08:00;True|2021-12-27T15:04:37.0711590+08:00;True|2021-12-27T15:03:52.0932499+08:00;True|2021-12-27T15:03:33.0172733+08:00;True|2021-12-27T13:28:27.4252747+08:00;True|2021-12-25T19:38:33.6784042+08:00;True|2021-12-24T20:47:43.3471563+08:00;True|2021-12-24T20:14:57.6946814+08:00;True|2021-12-24T19:55:21.1843105+08:00;True|2021-12-24T19:49:54.6719726+08:00;True|2021-12-24T19:38:14.1180741+08:00;True|2021-12-22T13:51:37.1082523+08:00;True|2021-12-21T15:38:59.8015096+08:00;True|2021-12-21T15:29:54.8095063+08:00;False|2021-12-21T15:29:21.7006531+08:00;False|2021-12-21T15:16:18.2218025+08:00;False|2021-12-21T15:11:38.1215841+08:00;False|2021-12-21T15:08:27.0590078+08:00;True|2021-12-10T14:12:36.4065298+08:00;True|2021-12-10T13:54:03.4921778+08:00;True|2021-12-10T13:25:49.0439086+08:00;True|2021-12-10T13:19:58.9494477+08:00;True|2021-12-10T13:10:45.3929017+08:00;True|2021-12-10T11:06:53.2416794+08:00;True|2021-12-07T17:23:28.9380484+08:00;True|2021-12-07T17:13:52.4384814+08:00;True|2021-12-07T16:39:49.2020208+08:00;True|2021-12-07T15:18:20.9024533+08:00;True|2021-12-07T15:07:35.4428035+08:00;True|2021-12-07T15:01:02.0445043+08:00;True|2021-12-07T14:50:08.9019705+08:00;True|2021-12-07T14:34:50.4993666+08:00;False|2021-12-07T14:32:56.0408332+08:00;True|2021-12-06T17:11:41.4004606+08:00;True|2021-12-06T16:48:07.6029757+08:00;True|2021-12-06T13:46:35.9437718+08:00;True|2021-12-06T13:45:07.6622615+08:00;True|2021-12-06T11:25:04.3483155+08:00;True|2021-12-06T11:18:24.5804187+08:00;True|2021-11-22T16:27:05.4241947+08:00;True|2021-11-22T13:40:17.6768280+08:00;True|2021-11-19T16:15:19.9085104+08:00;True|2021-11-09T10:34:21.1623512+08:00;True|2021-11-07T16:57:59.7380254+08:00;True|2021-11-07T16:53:47.4198852+08:00;True|2021-11-07T16:42:05.5096826+08:00;True|2021-11-07T16:37:21.0729013+08:00;True|2021-11-05T20:51:17.6170717+08:00;True|2021-11-05T20:35:14.6250333+08:00;True|2021-11-05T19:30:19.8374158+08:00;True|2021-11-05T19:22:46.2276569+08:00;True|2021-11-05T19:20:30.8253213+08:00;True|2021-11-05T19:16:45.7553310+08:00;True|2021-11-05T19:16:00.4532689+08:00;True|2021-11-05T19:12:25.9022478+08:00;False|2021-11-05T19:11:26.5753529+08:00;True|2021-11-05T19:09:30.0085433+08:00;True|2021-11-05T18:48:19.9395153+08:00;True|2021-11-05T18:45:34.3437897+08:00;True|2021-11-05T18:43:43.4558159+08:00;True|2021-11-05T18:40:40.9948500+08:00;True|2021-11-05T18:34:18.4440455+08:00;True|2021-11-05T15:54:51.6037132+08:00;True|2021-10-28T16:27:53.9728270+08:00;True|2021-10-28T16:03:59.5629998+08:00;True|2021-10-28T08:51:04.2549186+08:00;True|2021-10-27T15:14:53.5506098+08:00;True|2021-10-27T15:00:44.9100320+08:00;True|2021-10-27T13:14:46.7921647+08:00;True|2021-10-27T11:24:49.4550753+08:00;True|2021-10-27T10:10:10.3545125+08:00;True|2021-10-27T10:02:24.9248610+08:00;True|2021-10-27T09:59:40.3795897+08:00;True|2021-10-27T09:56:30.6629207+08:00;True|2021-10-27T09:10:48.3883432+08:00;True|2021-10-27T09:03:31.9191991+08:00;True|2021-10-27T08:59:59.7651159+08:00;True|2021-10-27T08:36:11.8620997+08:00;True|2021-10-27T08:26:40.2533014+08:00;True|2021-10-26T09:19:35.5674748+08:00;True|2021-10-26T09:17:17.6900747+08:00;True|2021-10-26T09:14:32.3999220+08:00;True|2021-10-25T15:08:21.2581763+08:00;True|2021-10-25T10:01:57.8524903+08:00;True|2021-10-25T09:28:51.6294879+08:00;True|2021-10-25T09:25:50.3373336+08:00;True|2021-10-25T09:23:37.0203978+08:00;True|2021-10-25T09:18:23.3380608+08:00;True|2021-10-25T09:15:10.5292071+08:00;True|2021-10-25T08:56:30.4632027+08:00;True|2021-10-25T08:50:11.4697392+08:00;True|2021-10-22T13:46:49.7207066+08:00;True|2021-10-22T10:06:33.3130089+08:00;True|2021-10-20T14:32:10.1235516+08:00;True|2021-10-20T14:16:18.6496291+08:00;True|2021-10-20T14:08:49.2443715+08:00;True|2021-10-20T14:05:14.6847950+08:00;True|2021-10-20T13:30:21.6057636+08:00;True|2021-10-20T10:55:22.2151716+08:00;True|2021-10-19T10:42:13.4198267+08:00;True|2021-10-19T10:01:41.0018108+08:00;True|2021-10-19T09:59:11.2127619+08:00;True|2021-10-19T09:54:04.8472874+08:00;True|2021-10-15T11:19:15.5327495+08:00;True|2021-10-15T11:17:41.0686485+08:00;True|2021-10-15T11:12:11.8295042+08:00;True|2021-10-15T10:33:31.5670079+08:00;True|2021-10-15T10:27:45.0815146+08:00;True|2021-10-14T14:51:28.5331025+08:00;True|2021-10-14T14:37:28.3276051+08:00;True|2021-10-14T14:23:39.0606792+08:00;True|2021-10-14T14:21:03.8140347+08:00;True|2021-10-13T10:31:10.6628977+08:00;True|2021-10-13T10:12:24.4238027+08:00;True|2021-10-13T08:47:43.9314486+08:00;True|2021-10-12T14:07:18.6065183+08:00;True|2021-10-12T10:34:10.1682362+08:00;True|2021-10-12T10:27:14.3073332+08:00;True|2021-10-12T10:22:08.0004619+08:00;True|2021-10-12T10:21:03.0275378+08:00;True|2021-10-12T10:11:54.9812692+08:00;True|2021-10-11T16:59:07.3568342+08:00;True|2021-10-11T16:53:14.2016138+08:00;True|2021-10-11T16:21:35.0133775+08:00;True|2021-10-11T15:34:19.5731935+08:00;True|2021-10-11T15:31:07.5780983+08:00;True|2021-10-11T15:06:47.1145237+08:00;True|2021-10-11T15:03:25.5000280+08:00;True|2021-10-11T10:12:57.6416898+08:00;True|2021-10-09T10:15:17.9235165+08:00;True|2021-10-09T10:13:51.3318441+08:00;True|2021-10-09T10:01:21.6661542+08:00;True|2021-10-09T09:58:41.9225837+08:00;True|2021-10-08T14:56:49.7935800+08:00;True|2021-10-08T14:35:41.4490063+08:00;True|2021-10-08T14:02:42.6990656+08:00;True|2021-09-29T15:48:55.1547397+08:00;True|2021-09-29T15:48:23.5567191+08:00;True|2021-09-27T16:17:35.7180978+08:00;True|2021-09-27T15:51:50.4240134+08:00;True|2021-09-23T20:55:27.3554447+08:00;True|2021-09-23T14:14:44.0572017+08:00;True|2021-09-23T13:51:56.2344673+08:00;True|2021-09-23T10:46:16.7417007+08:00;True|2021-09-23T10:42:23.2117537+08:00;True|2021-09-22T15:21:22.9615672+08:00;True|2021-09-22T14:23:32.7907754+08:00;True|2021-09-22T13:48:03.4780947+08:00;True|2021-09-22T11:05:24.5249356+08:00;True|2021-09-22T10:00:19.0962943+08:00;True|2021-09-22T09:30:26.2686514+08:00;True|2021-09-17T11:22:34.5692792+08:00;True|2021-09-16T16:11:27.5372277+08:00;True|2021-09-16T14:53:40.8396557+08:00;True|2021-09-16T14:32:29.7905500+08:00;True|2021-09-16T14:26:46.2224219+08:00;True|2021-09-16T10:32:24.4244440+08:00;True|2021-09-15T11:10:35.3529360+08:00;True|2021-09-15T11:08:30.0857376+08:00;True|2021-09-15T11:05:56.7191571+08:00;True|2021-09-14T01:24:39.8041136+08:00;True|2021-09-14T01:05:01.1593327+08:00;True|2021-09-14T00:44:14.7233198+08:00;True|2021-09-13T23:48:19.4506233+08:00;True|2021-09-13T20:30:31.3243872+08:00;True|2021-09-13T19:45:35.9108911+08:00;False|2021-09-13T19:44:59.2779092+08:00;True|2021-09-13T18:09:22.4994381+08:00;True|2021-09-10T14:18:27.5788854+08:00;True|2021-09-09T15:57:01.7407207+08:00;True|2021-09-09T15:49:34.2598998+08:00;True|2021-09-09T11:32:10.7853024+08:00;True|2021-09-09T11:10:48.6840025+08:00;True|2021-09-09T10:35:37.3883078+08:00;True|2021-09-07T14:11:49.8497588+08:00;True|2021-09-07T13:34:48.4693349+08:00;True|2021-09-06T14:33:48.7549675+08:00;True|2021-09-03T16:27:51.1888520+08:00;True|2021-09-03T16:19:35.9003465+08:00;True|2021-09-03T15:46:28.1828032+08:00;True|2021-09-03T15:34:21.9362871+08:00;True|2021-09-03T11:24:49.8749819+08:00;True|2021-09-03T11:21:17.8373159+08:00;True|2021-09-03T11:16:53.2208136+08:00;True|2021-09-03T11:12:23.9063804+08:00;True|2021-09-03T09:11:09.2435721+08:00;True|2021-09-02T11:16:15.1370453+08:00;True|2021-09-02T10:35:39.1171879+08:00;True|2021-09-01T10:17:09.4536285+08:00;True|2021-09-01T09:46:28.4581776+08:00;True|2021-08-31T08:54:26.8588887+08:00;True|2021-08-31T08:39:08.3685693+08:00;True|2021-08-30T17:11:56.8438985+08:00;True|2021-08-30T15:59:42.0820292+08:00;True|2021-08-30T15:45:18.1868510+08:00;True|2021-08-30T14:56:08.3958863+08:00;True|2021-08-30T14:37:11.5379830+08:00;True|2021-08-30T14:35:34.8775934+08:00;True|2021-08-30T14:24:36.5111821+08:00;True|2021-08-30T10:05:49.6945200+08:00;True|2021-08-30T10:03:28.4064538+08:00;True|2021-08-30T10:00:16.8360929+08:00;True|2021-08-30T09:56:09.4434379+08:00;True|2021-08-30T09:55:36.1725334+08:00;True|2021-08-30T09:52:04.8600054+08:00;True|2021-08-30T09:47:46.4225655+08:00;True|2021-08-30T09:45:20.4894962+08:00;False|2021-08-27T17:17:34.2646751+08:00;False|2021-08-27T16:01:21.2791979+08:00;False|2021-08-27T15:58:06.9667160+08:00;False|2021-08-27T15:38:37.4818036+08:00;False|2021-08-27T15:21:02.8863114+08:00;False|2021-08-27T15:20:28.6828668+08:00;True|2021-08-26T16:00:44.3162145+08:00;True|2021-08-26T08:57:31.3842587+08:00;True|2021-08-23T08:43:41.1549775+08:00;True|2021-08-22T09:24:12.7210871+08:00;True|2021-08-22T09:19:53.8300229+08:00;True|2021-08-20T20:00:52.0140407+08:00;True|2021-08-20T19:40:14.7712765+08:00;True|2021-08-19T17:37:54.9748049+08:00;True|2021-08-19T17:20:11.0515687+08:00;True|2021-08-19T16:12:35.4392809+08:00;True|2021-08-19T16:06:50.6204587+08:00;True|2021-08-19T16:03:53.0824286+08:00;True|2021-08-19T15:56:01.3498791+08:00;True|2021-08-19T10:18:50.8113630+08:00;True|2021-08-19T09:58:06.2784035+08:00;True|2021-08-19T09:56:54.0619777+08:00;True|2021-08-19T00:32:08.3503093+08:00;True|2021-08-19T00:11:18.3150227+08:00;True|2021-08-19T00:02:49.4827718+08:00;True|2021-08-18T23:54:45.4845900+08:00;True|2021-08-18T23:39:51.6147977+08:00;True|2021-08-18T23:16:42.7214379+08:00;True|2021-08-18T22:38:57.4681929+08:00;True|2021-08-18T21:41:58.7560707+08:00;True|2021-08-18T21:11:52.2369249+08:00;True|2021-08-18T21:01:49.5669106+08:00;True|2021-08-18T20:47:46.5352688+08:00;False|2021-08-18T20:46:36.7956141+08:00;False|2021-08-18T20:46:01.0502138+08:00;True|2021-08-18T19:39:12.8186242+08:00;False|2021-08-18T19:38:12.6839708+08:00;True|2021-08-18T19:15:51.4626694+08:00;True|2021-08-18T16:07:20.4350886+08:00;True|2021-08-18T14:29:41.7171934+08:00;True|2021-08-18T14:20:36.3647361+08:00;True|2021-08-16T09:08:58.3617662+08:00;True|2021-08-15T20:44:29.9214083+08:00;True|2021-08-15T20:36:17.0958549+08:00;True|2021-08-15T20:29:34.3879773+08:00;True|2021-08-15T20:23:47.4052038+08:00;True|2021-08-15T15:01:19.7830862+08:00;True|2021-08-15T12:15:18.3433782+08:00;True|2021-08-13T20:59:11.3947130+08:00;True|2021-08-06T22:49:09.9538339+08:00;True|2021-08-06T22:35:19.0418168+08:00;True|2021-08-06T20:29:47.4241975+08:00;True|2021-08-06T14:08:16.4791827+08:00;True|2021-08-06T13:59:28.9874611+08:00;True|2021-08-06T13:57:34.3723977+08:00;True|2021-08-06T13:36:03.4816652+08:00;True|2021-08-06T12:22:52.5055221+08:00;True|2021-08-06T09:31:58.1272499+08:00;True|2021-08-06T09:26:51.6310039+08:00;True|2021-08-06T09:24:22.2899244+08:00;True|2021-08-06T09:06:30.6477912+08:00;True|2021-08-06T09:00:55.5101612+08:00;True|2021-08-06T08:49:59.9616490+08:00;True|2021-08-06T08:45:18.8586902+08:00;True|2021-08-05T20:09:25.8861998+08:00;True|2021-08-04T19:14:27.2396953+08:00;True|2021-08-04T19:11:47.5849093+08:00;True|2021-08-04T16:42:54.0149043+08:00;True|2021-08-04T15:02:11.5056561+08:00;True|2021-08-04T14:58:37.1435509+08:00;True|2021-08-04T14:55:34.7380132+08:00;True|2021-08-04T14:47:42.5933921+08:00;True|2021-08-04T14:45:17.9911874+08:00;True|2021-08-04T13:52:20.9601351+08:00;True|2021-08-04T09:48:28.8796992+08:00;True|2021-08-03T18:14:13.1894998+08:00;True|2021-08-03T17:45:35.1349721+08:00;True|2021-08-03T17:21:52.6028977+08:00;True|2021-08-03T17:20:35.4423020+08:00;True|2021-08-03T17:03:33.1667669+08:00;True|2021-08-03T17:01:54.2656787+08:00;True|2021-08-03T17:00:22.2778374+08:00;True|2021-08-03T16:56:58.8902582+08:00;True|2021-08-03T15:02:21.8601533+08:00;True|2021-08-03T14:57:34.0186758+08:00;True|2021-08-03T14:28:47.2242515+08:00;True|2021-08-03T14:22:22.4554236+08:00;True|2021-08-03T14:21:51.1339715+08:00;True|2021-08-03T13:37:33.9697131+08:00;True|2021-08-03T13:28:29.7591095+08:00;True|2021-08-03T11:35:09.5118324+08:00;True|2021-08-03T11:11:23.3051573+08:00;True|2021-08-02T13:14:42.3663755+08:00;True|2021-07-30T22:50:19.9749878+08:00;True|2021-07-30T22:49:31.2150970+08:00;True|2021-07-28T19:12:05.8381075+08:00;True|2021-07-28T18:59:45.4808797+08:00;True|2021-07-28T18:15:58.8301509+08:00;True|2021-07-28T18:04:54.8613546+08:00;True|2021-07-28T17:53:48.6225611+08:00;True|2021-07-28T17:42:50.9171563+08:00;True|2021-07-28T17:17:16.3137677+08:00;True|2021-07-28T17:11:46.8925200+08:00;True|2021-07-28T16:28:27.6823943+08:00;True|2021-07-28T16:23:00.3385836+08:00;True|2021-07-28T09:57:55.4237411+08:00;True|2021-07-28T08:38:29.6691541+08:00;True|2021-07-27T23:16:32.0331671+08:00;True|2021-07-27T23:06:08.1947249+08:00;True|2021-07-27T23:05:58.4619176+08:00;True|2021-07-27T18:42:09.5358261+08:00;True|2021-07-27T18:30:04.8532823+08:00;True|2021-07-27T18:29:43.5775092+08:00;True|2021-07-27T15:16:49.8356224+08:00;True|2021-07-27T15:05:27.8453220+08:00;True|2021-07-27T14:59:15.9519440+08:00;True|2021-07-27T09:23:32.6111337+08:00;True|2021-07-27T08:27:41.6395353+08:00;True|2021-07-27T08:25:56.7378296+08:00;True|2021-07-26T11:18:46.0856966+08:00;True|2021-07-26T11:18:02.0751924+08:00;True|2021-07-26T11:13:49.6285395+08:00;True|2021-07-21T21:08:25.9898902+08:00;True|2021-07-21T20:09:26.2258104+08:00;True|2021-07-13T16:17:25.8407435+08:00;True|2021-07-13T13:46:13.4309531+08:00;True|2021-07-13T12:29:04.5082461+08:00;True|2021-06-29T13:55:01.6864637+08:00;True|2021-06-29T10:38:52.2206472+08:00;True|2021-06-29T10:10:13.1540749+08:00;True|2021-06-28T14:37:56.3853273+08:00;False|2021-06-28T14:36:57.5726124+08:00;True|2021-06-25T14:17:57.5196108+08:00;True|2021-06-25T13:56:38.9522535+08:00;True|2021-06-24T19:38:32.8766933+08:00;True|2021-06-24T18:26:35.6118833+08:00;True|2021-06-24T18:02:52.8136877+08:00;True|2021-06-24T17:48:49.5851948+08:00;True|2021-06-24T17:45:46.7527572+08:00;True|2021-06-24T15:05:20.1592723+08:00;True|2021-06-23T16:18:15.6814625+08:00;True|2021-06-23T16:05:24.6112343+08:00;True|2021-06-23T15:14:08.2489658+08:00;True|2021-06-23T13:52:58.6029788+08:00;True|2021-06-22T16:11:20.4726923+08:00;True|2021-06-22T16:04:53.7231389+08:00;True|2021-06-22T15:50:59.2583262+08:00;True|2021-06-22T15:38:15.3016140+08:00;True|2021-06-22T15:34:42.9185543+08:00;True|2021-06-22T15:21:55.1419108+08:00;True|2021-06-22T15:07:21.5357494+08:00;True|2021-06-22T15:03:35.0535733+08:00;True|2021-06-22T14:54:47.8802969+08:00;True|2021-06-22T11:19:38.7303011+08:00;True|2021-06-22T08:53:49.2882695+08:00;True|2021-06-22T08:47:54.8286530+08:00;True|2021-06-21T16:27:19.3017700+08:00;True|2021-06-21T15:32:28.7237952+08:00;True|2021-06-21T12:34:02.6329555+08:00;True|2021-06-21T12:24:17.5427495+08:00;True|2021-06-21T10:47:30.6423502+08:00;True|2021-06-21T08:43:20.3026558+08:00;True|2021-06-19T15:10:06.8335499+08:00;True|2021-06-18T15:37:29.5009930+08:00;True|2021-06-18T13:46:35.6283432+08:00;True|2021-06-18T10:00:37.1474954+08:00;True|2021-06-18T09:55:21.8551780+08:00;True|2021-06-18T09:22:27.8432927+08:00;True|2021-06-17T11:17:43.2166430+08:00;True|2021-06-17T09:24:09.8350403+08:00;True|2021-06-16T16:10:47.8564888+08:00;True|2021-06-16T16:04:09.8286582+08:00;True|2021-06-16T15:12:29.9427169+08:00;True|2021-06-16T14:58:45.6801892+08:00;True|2021-06-16T14:46:01.6873221+08:00;True|2021-06-16T11:02:06.1272477+08:00;True|2021-06-16T09:33:56.0223915+08:00;True|2021-06-16T08:50:07.6995413+08:00;True|2021-06-16T08:28:38.7692635+08:00;True|2021-06-16T01:04:19.6282474+08:00;True|2021-06-16T01:03:50.5058323+08:00;False|2021-06-16T01:02:15.3819672+08:00;False|2021-06-16T01:01:38.6171098+08:00;True|2021-06-16T00:34:54.9902044+08:00;True|2021-06-15T23:55:36.2003828+08:00;True|2021-06-15T22:47:17.2192750+08:00;True|2021-06-15T22:42:41.1512585+08:00;True|2021-06-15T22:38:01.7390462+08:00;True|2021-06-15T22:14:11.2060782+08:00;True|2021-06-15T22:12:27.0615357+08:00;True|2021-06-15T22:07:59.9280871+08:00;True|2021-06-15T22:04:21.5051427+08:00;True|2021-06-15T21:25:55.0099814+08:00;True|2021-06-15T19:13:51.3494172+08:00;True|2021-06-15T19:02:17.6844742+08:00;True|2021-06-15T18:47:37.1629411+08:00;False|2021-06-15T18:47:11.0828111+08:00;True|2021-06-15T18:38:26.6620668+08:00;True|2021-06-15T18:33:45.2069831+08:00;True|2021-06-15T18:24:52.0550838+08:00;True|2021-06-15T18:19:43.6999796+08:00;True|2021-06-15T18:08:17.2464506+08:00;True|2021-06-15T18:03:51.3952624+08:00;True|2021-06-15T18:01:20.6141766+08:00;True|2021-06-15T17:59:04.4479416+08:00;True|2021-06-15T17:41:44.6389379+08:00;True|2021-06-15T17:39:03.1565124+08:00;True|2021-06-15T17:34:41.0634638+08:00;True|2021-06-15T17:33:50.4853178+08:00;True|2021-06-15T17:25:38.5914037+08:00;True|2021-06-15T17:22:21.3611360+08:00;True|2021-06-15T17:16:49.4970813+08:00;True|2021-06-15T17:05:28.9389484+08:00;True|2021-06-15T16:52:54.6372199+08:00;True|2021-06-15T16:51:23.9081030+08:00;True|2021-06-15T16:45:40.6017997+08:00;True|2021-06-15T16:41:05.0218887+08:00;True|2021-06-15T16:38:02.8541862+08:00;True|2021-06-15T16:22:10.3118721+08:00;True|2021-06-15T16:12:11.1552506+08:00;True|2021-06-15T15:33:42.0100494+08:00;True|2021-06-15T15:28:39.7145659+08:00;True|2021-06-15T15:15:02.7939125+08:00;True|2021-06-15T14:49:14.2300396+08:00;True|2021-06-15T14:42:28.1198064+08:00;True|2021-06-15T13:30:12.7997686+08:00;True|2021-06-15T13:25:37.7284670+08:00;True|2021-06-15T13:23:43.6207813+08:00;False|2021-06-15T13:23:19.4190232+08:00;True|2021-06-15T13:16:38.5062674+08:00;True|2021-06-15T13:03:31.2055635+08:00;True|2021-06-15T12:58:43.1653215+08:00;True|2021-06-15T12:39:22.8442109+08:00;True|2021-06-15T12:35:09.1288556+08:00;False|2021-06-15T12:33:50.0723143+08:00;True|2021-06-15T11:28:01.9733727+08:00;True|2021-06-15T11:26:26.6569392+08:00;True|2021-06-15T11:22:43.0366435+08:00;True|2021-06-15T11:07:50.1610580+08:00;True|2021-06-15T10:32:59.1925931+08:00;True|2021-06-10T17:16:57.9552310+08:00;True|2021-06-10T16:44:42.2731836+08:00;True|2021-06-10T14:39:27.6745737+08:00;True|2021-06-10T12:15:05.1524413+08:00;True|2021-06-09T18:19:24.1005606+08:00;True|2021-06-09T17:56:09.5646288+08:00;True|2021-06-09T13:34:06.1882292+08:00;True|2021-06-09T13:29:54.5924933+08:00;True|2021-06-09T13:25:55.7520662+08:00;True|2021-06-09T13:07:47.6686811+08:00;True|2021-06-09T12:59:41.2595048+08:00;True|2021-06-09T12:45:27.1305548+08:00;True|2021-06-09T12:29:52.1418191+08:00;True|2021-06-09T12:24:12.7610588+08:00;True|2021-06-09T11:31:25.3409568+08:00;True|2021-06-09T09:57:44.4387175+08:00;True|2021-06-09T09:54:26.5161307+08:00;True|2021-06-09T09:14:14.7288045+08:00;True|2021-06-09T09:10:25.1812139+08:00;True|2021-06-09T08:46:21.6585123+08:00;True|2021-06-08T19:56:55.7192062+08:00;True|2021-06-08T19:52:59.0326821+08:00;True|2021-06-08T19:49:13.6274217+08:00;True|2021-06-08T19:09:22.1038939+08:00;True|2021-06-08T15:28:41.3716247+08:00;True|2021-06-08T15:26:47.2621178+08:00;True|2021-06-08T13:49:45.8936617+08:00;True|2021-06-08T13:43:18.8115502+08:00;True|2021-06-08T10:04:06.2200731+08:00;True|2021-06-08T09:17:10.0470792+08:00;True|2021-06-08T08:44:37.4395849+08:00;True|2021-06-08T00:01:09.3745613+08:00;True|2021-06-07T23:49:31.5196888+08:00;True|2021-06-07T23:41:00.8017855+08:00;True|2021-06-07T23:21:53.1371134+08:00;True|2021-06-07T23:01:27.5712153+08:00;True|2021-06-07T22:36:12.9274014+08:00;True|2021-06-07T22:23:00.6545134+08:00;True|2021-06-07T17:44:47.5686346+08:00;True|2021-06-07T17:17:01.3431233+08:00;True|2021-06-07T16:53:28.9989587+08:00;True|2021-06-07T16:41:10.4975607+08:00;True|2021-06-07T14:21:06.8176477+08:00;True|2021-06-07T14:10:39.0355659+08:00;True|2021-06-07T12:34:31.4562732+08:00;True|2021-06-07T12:28:44.9629488+08:00;True|2021-06-07T10:30:26.9387988+08:00;True|2021-06-07T09:12:14.7658099+08:00;True|2021-06-07T08:37:19.6353792+08:00;True|2021-06-07T08:35:25.2031954+08:00;True|2021-06-05T07:07:32.0541266+08:00;True|2021-06-05T06:44:35.9475270+08:00;True|2021-06-05T06:37:27.4595197+08:00;True|2021-06-05T06:26:59.7663998+08:00;True|2021-06-05T05:43:12.8699318+08:00;True|2021-06-04T17:00:41.2426007+08:00;True|2021-06-04T16:08:03.8078072+08:00;True|2021-06-04T15:47:21.6412616+08:00;True|2021-06-04T15:21:02.4239800+08:00;True|2021-06-04T15:20:37.8641854+08:00;True|2021-06-04T13:38:51.5088395+08:00;True|2021-06-04T10:20:01.7784282+08:00;True|2021-06-04T10:13:50.3548857+08:00;True|2021-06-04T10:11:25.5017821+08:00;True|2021-06-04T10:09:51.6792228+08:00;True|2021-06-04T10:02:39.5851057+08:00;True|2021-06-04T09:30:40.4495494+08:00;True|2021-06-03T13:16:36.0317546+08:00;True|2021-06-03T13:12:47.0402047+08:00;True|2021-06-02T14:37:08.9683351+08:00;True|2021-06-02T14:10:15.7439829+08:00;True|2021-06-02T13:59:46.5841931+08:00;True|2021-06-02T13:25:18.7962660+08:00;True|2021-06-02T13:23:16.2261980+08:00;True|2021-06-01T15:37:32.2495085+08:00;True|2021-06-01T15:21:01.2856122+08:00;True|2021-06-01T15:13:36.7262365+08:00;True|2021-06-01T15:10:26.8905629+08:00;True|2021-06-01T14:56:17.5231551+08:00;True|2021-06-01T14:38:39.7895927+08:00;True|2021-06-01T14:23:12.3265287+08:00;True|2021-03-01T09:11:31.3226422+08:00;True|2021-05-26T14:54:56.9426462+08:00;True|2021-05-26T13:57:33.7780451+08:00;True|2021-05-26T13:39:02.8043358+08:00;True|2021-02-25T16:01:40.2917200+08:00;True|2021-02-25T15:49:46.6681205+08:00;True|2021-02-25T15:16:30.9372640+08:00;True|2021-05-25T13:10:21.7831921+08:00;True|2021-05-25T11:21:38.5224475+08:00;True|2021-05-25T11:12:52.0637175+08:00;True|2021-05-25T11:02:18.4164663+08:00;True|2021-05-25T10:52:06.8998521+08:00;True|2021-05-25T10:50:45.0929606+08:00;True|2021-05-25T10:45:54.1498313+08:00;True|2021-05-25T10:39:27.8602249+08:00;True|2021-05-25T10:34:49.5771162+08:00;True|2021-05-25T10:17:30.3009163+08:00;True|2021-05-25T10:14:03.8512581+08:00;True|2021-05-25T10:05:33.4343836+08:00;True|2021-05-24T17:01:23.3221168+08:00;True|2021-05-24T10:11:24.0197347+08:00;False|2021-05-24T10:11:07.6338995+08:00;</History>
+    <History>True|2024-03-05T03:21:19.0499458Z;True|2024-03-05T11:07:43.2642432+08:00;True|2024-03-05T09:59:18.0467522+08:00;True|2024-03-05T09:57:25.8947310+08:00;True|2024-03-04T16:41:44.4465908+08:00;True|2024-03-04T16:27:02.5887336+08:00;True|2024-03-04T16:20:05.0027599+08:00;True|2024-03-04T16:19:26.5595399+08:00;True|2024-03-04T15:32:55.6131853+08:00;True|2024-03-04T15:28:44.2800619+08:00;True|2024-03-04T14:54:47.0567440+08:00;True|2024-03-04T10:23:15.8222065+08:00;True|2024-03-03T17:36:33.1017612+08:00;True|2024-03-03T16:51:26.3227366+08:00;True|2024-02-26T09:58:28.3684127+08:00;True|2024-02-26T09:40:27.2127438+08:00;True|2024-02-26T09:30:29.4139007+08:00;True|2024-02-26T08:58:31.6305017+08:00;True|2024-02-26T08:50:25.3686785+08:00;True|2024-02-25T22:42:22.6699571+08:00;True|2024-02-25T21:40:08.7124742+08:00;True|2024-02-23T16:33:06.9165845+08:00;True|2024-02-23T15:20:24.6631954+08:00;True|2024-02-22T13:35:39.8097749+08:00;True|2024-02-22T10:50:51.2245040+08:00;True|2024-02-22T10:37:36.2007251+08:00;True|2024-02-22T10:28:43.0780061+08:00;True|2024-02-22T10:25:14.6494230+08:00;True|2024-02-22T10:22:55.9164843+08:00;True|2024-02-22T10:20:22.7986646+08:00;True|2024-02-22T10:09:31.7828474+08:00;True|2024-02-22T09:52:49.6576546+08:00;True|2024-02-22T09:49:40.2304782+08:00;True|2024-02-22T09:11:37.5212025+08:00;False|2024-02-22T09:11:00.5740908+08:00;True|2024-02-22T09:08:58.7725741+08:00;True|2024-02-21T16:50:09.9380590+08:00;True|2024-02-21T16:25:03.2145943+08:00;True|2024-02-21T16:23:13.6740659+08:00;True|2024-02-21T16:17:53.0411127+08:00;True|2024-02-21T15:57:47.2254175+08:00;True|2024-02-21T15:10:17.2222102+08:00;True|2024-02-21T15:05:10.2464943+08:00;True|2024-02-21T14:27:06.5305080+08:00;True|2024-02-21T14:23:20.9423346+08:00;True|2024-02-21T14:10:37.5156508+08:00;True|2024-02-21T13:54:04.4018306+08:00;True|2024-02-21T08:47:17.0019565+08:00;True|2024-02-20T16:26:31.2412659+08:00;True|2024-02-20T16:23:36.2983740+08:00;True|2024-02-20T16:20:39.9515902+08:00;True|2024-02-20T15:46:12.8212665+08:00;True|2024-02-20T14:58:17.4600086+08:00;True|2024-02-20T10:45:52.2417786+08:00;True|2024-02-20T10:42:11.8298929+08:00;True|2024-02-19T13:06:24.8957799+08:00;True|2024-02-19T11:05:28.0139278+08:00;True|2024-02-19T10:27:01.0810368+08:00;True|2024-02-19T10:22:57.4053027+08:00;True|2024-02-19T10:15:48.5706154+08:00;True|2024-02-19T10:12:02.9076965+08:00;True|2024-02-18T14:57:44.7521494+08:00;True|2024-02-18T14:50:56.3550941+08:00;True|2024-02-18T13:36:49.3942430+08:00;True|2024-02-07T14:06:25.4964506+08:00;True|2024-02-07T10:42:52.2689528+08:00;True|2024-02-06T10:58:49.3342902+08:00;True|2024-02-06T10:53:42.5435511+08:00;True|2024-02-06T10:43:40.1003756+08:00;True|2024-02-06T10:40:46.8233200+08:00;True|2024-02-06T10:17:28.2865591+08:00;True|2024-02-06T10:14:31.6896095+08:00;True|2024-02-06T09:24:29.8745590+08:00;True|2024-02-06T09:20:58.3166183+08:00;True|2024-02-06T09:12:14.4841167+08:00;True|2024-02-06T09:05:10.5375167+08:00;True|2024-02-05T14:51:09.8954604+08:00;True|2024-02-05T14:30:01.0098544+08:00;True|2024-02-05T14:26:49.2548141+08:00;True|2024-02-05T14:05:18.6839229+08:00;True|2024-02-05T13:23:42.1639710+08:00;True|2024-02-05T08:39:07.5523831+08:00;True|2024-02-04T15:09:19.2455417+08:00;True|2024-02-04T13:27:46.2086590+08:00;True|2024-02-04T13:25:20.9639903+08:00;True|2024-02-04T13:20:32.2870983+08:00;True|2024-02-04T13:15:58.3909970+08:00;True|2024-02-04T11:18:59.5180822+08:00;True|2024-02-04T11:07:31.1414636+08:00;True|2024-02-04T11:03:38.8431285+08:00;True|2024-02-04T11:00:42.8307675+08:00;True|2024-02-04T10:59:07.3767796+08:00;True|2024-02-04T10:55:27.9454328+08:00;True|2024-02-04T10:52:29.5988914+08:00;True|2024-02-04T10:50:30.6883153+08:00;True|2024-02-04T10:38:13.0058874+08:00;True|2024-02-04T10:25:53.1906810+08:00;True|2024-02-04T10:14:51.7442720+08:00;True|2024-02-04T10:12:34.4696662+08:00;True|2024-02-04T10:08:56.5805097+08:00;True|2024-02-04T10:07:16.4922026+08:00;True|2024-02-04T09:59:27.2102397+08:00;True|2024-02-04T09:56:42.2238395+08:00;True|2024-02-04T09:52:47.5348300+08:00;True|2024-02-04T09:42:50.9349205+08:00;True|2024-02-04T09:30:32.3567175+08:00;True|2024-02-04T09:19:29.8036670+08:00;True|2024-02-04T09:11:56.0744927+08:00;True|2024-02-04T09:08:42.4432795+08:00;True|2024-02-04T09:05:25.4958302+08:00;True|2024-02-04T08:58:59.7993464+08:00;True|2024-02-04T08:51:20.3017735+08:00;True|2024-02-04T08:43:05.6974823+08:00;True|2024-02-02T16:12:24.3288882+08:00;True|2024-02-02T15:31:12.0724234+08:00;True|2024-02-02T15:14:24.5493301+08:00;True|2024-02-02T15:08:42.0775469+08:00;True|2024-02-02T14:50:25.2357715+08:00;True|2024-02-02T14:48:40.1311047+08:00;True|2024-02-02T14:44:57.9831751+08:00;True|2024-02-02T14:28:12.0713915+08:00;True|2024-02-02T13:55:59.7389347+08:00;True|2024-02-02T13:10:32.7073682+08:00;True|2024-02-02T10:21:41.3665075+08:00;True|2024-02-02T10:08:11.1755065+08:00;True|2024-02-01T16:28:42.6016378+08:00;True|2024-02-01T16:25:35.2865491+08:00;True|2024-02-01T15:48:00.8333105+08:00;True|2024-02-01T15:39:22.9864096+08:00;True|2024-02-01T15:30:30.4856347+08:00;True|2024-02-01T14:34:14.9484851+08:00;True|2024-02-01T13:53:48.9165284+08:00;False|2024-02-01T13:52:39.1911001+08:00;True|2024-02-01T10:40:28.0735829+08:00;True|2024-02-01T10:24:04.5914096+08:00;True|2024-02-01T10:13:00.9882363+08:00;True|2024-01-31T14:56:37.7352718+08:00;True|2024-01-31T14:46:49.9104890+08:00;True|2024-01-31T14:38:56.1841731+08:00;True|2024-01-31T14:35:45.4531352+08:00;True|2024-01-31T14:32:21.5100137+08:00;True|2024-01-31T14:15:26.3231430+08:00;True|2024-01-31T14:00:11.3994150+08:00;True|2024-01-31T13:18:54.8448212+08:00;True|2024-01-31T10:52:59.8159114+08:00;True|2024-01-31T10:28:03.5856625+08:00;True|2024-01-31T10:10:35.0250398+08:00;True|2024-01-30T09:53:14.3256577+08:00;True|2024-01-30T09:43:56.5551157+08:00;True|2024-01-30T08:27:16.7078317+08:00;True|2024-01-29T15:42:55.3394104+08:00;True|2024-01-29T15:36:57.2998818+08:00;True|2024-01-29T15:09:49.3214409+08:00;True|2024-01-29T14:54:23.0025170+08:00;True|2024-01-29T14:33:53.5586728+08:00;True|2024-01-29T10:21:47.9469052+08:00;True|2024-01-29T09:38:26.0354836+08:00;True|2024-01-29T09:28:57.3836958+08:00;True|2024-01-29T09:19:49.0488968+08:00;True|2024-01-26T16:11:46.3859476+08:00;True|2024-01-26T16:11:29.8529136+08:00;True|2024-01-26T10:23:35.6167838+08:00;True|2024-01-26T10:16:04.2780085+08:00;True|2024-01-26T10:05:56.0745647+08:00;True|2024-01-26T10:03:34.8490957+08:00;True|2024-01-26T09:18:57.1502238+08:00;True|2024-01-26T09:05:18.6887593+08:00;True|2024-01-25T16:19:44.3753587+08:00;True|2024-01-25T10:54:55.2695117+08:00;True|2024-01-25T10:52:43.0130697+08:00;True|2024-01-25T10:15:35.2061116+08:00;True|2024-01-25T10:12:55.7724345+08:00;True|2024-01-25T09:59:14.7336333+08:00;True|2024-01-25T09:54:00.8951944+08:00;True|2024-01-23T11:57:00.6176481+08:00;True|2024-01-23T11:48:46.0536266+08:00;True|2024-01-23T11:20:56.9686760+08:00;True|2024-01-23T10:07:03.1874795+08:00;True|2024-01-23T09:28:09.7921197+08:00;True|2024-01-22T17:23:56.8011615+08:00;True|2024-01-22T15:39:51.8307512+08:00;True|2024-01-21T16:56:29.0470984+08:00;True|2024-01-21T16:31:58.1736344+08:00;True|2024-01-21T16:24:19.3683647+08:00;True|2024-01-21T16:02:26.5427715+08:00;True|2024-01-21T15:45:21.0549809+08:00;True|2024-01-21T15:24:46.6563331+08:00;True|2024-01-21T12:57:07.2655536+08:00;True|2024-01-21T11:43:22.1675745+08:00;True|2024-01-21T11:04:07.4676661+08:00;True|2024-01-21T11:03:11.6972981+08:00;True|2024-01-19T12:12:51.7315607+08:00;True|2024-01-19T12:03:23.7846341+08:00;True|2024-01-19T09:21:40.1191844+08:00;True|2024-01-18T15:28:59.1079108+08:00;True|2024-01-18T15:25:00.9561275+08:00;True|2024-01-18T15:19:13.0404548+08:00;True|2024-01-18T13:06:18.2756609+08:00;True|2024-01-18T12:00:29.1983965+08:00;True|2024-01-18T09:51:08.2157377+08:00;True|2024-01-18T09:49:33.8817410+08:00;True|2024-01-17T17:14:07.4523354+08:00;True|2024-01-17T13:46:19.2002783+08:00;True|2024-01-17T13:17:28.0156428+08:00;True|2024-01-17T11:23:28.7024207+08:00;True|2024-01-17T11:07:35.4966809+08:00;True|2024-01-17T10:25:34.7098037+08:00;True|2024-01-17T09:13:26.1252511+08:00;True|2024-01-16T15:33:15.8976694+08:00;True|2024-01-16T13:06:21.8159184+08:00;True|2024-01-16T12:55:14.9963186+08:00;True|2024-01-16T10:26:35.3866122+08:00;True|2024-01-16T10:25:44.1826112+08:00;True|2024-01-12T16:34:51.6106928+08:00;True|2024-01-12T13:14:24.0546049+08:00;True|2024-01-12T13:06:52.9089433+08:00;True|2024-01-12T12:39:48.1623736+08:00;True|2024-01-12T12:36:04.4644966+08:00;True|2024-01-12T10:22:40.9168937+08:00;True|2024-01-12T10:10:47.1460616+08:00;True|2024-01-12T10:05:40.4318518+08:00;True|2024-01-12T10:02:01.3964907+08:00;True|2024-01-12T09:57:23.5579846+08:00;True|2024-01-12T09:52:39.7735343+08:00;True|2024-01-12T09:49:01.7855687+08:00;True|2024-01-12T09:44:26.1839115+08:00;True|2024-01-12T09:40:23.9216298+08:00;True|2024-01-12T09:36:41.0590000+08:00;True|2024-01-12T09:32:36.5860825+08:00;True|2024-01-12T09:18:47.5635433+08:00;True|2024-01-11T16:44:34.1615374+08:00;True|2024-01-11T16:40:15.6664078+08:00;True|2024-01-11T16:35:55.1073771+08:00;True|2024-01-11T16:30:59.0648321+08:00;True|2024-01-11T16:11:06.5473983+08:00;True|2024-01-11T16:00:13.6441008+08:00;True|2024-01-11T15:46:51.9760680+08:00;True|2024-01-11T15:36:57.4756880+08:00;True|2024-01-11T15:31:04.1093476+08:00;True|2024-01-11T15:29:01.9270892+08:00;True|2024-01-11T15:21:23.5612459+08:00;True|2024-01-11T15:20:16.1944310+08:00;True|2024-01-11T15:13:32.1080230+08:00;True|2024-01-11T15:06:57.4237688+08:00;True|2024-01-11T15:05:37.5128999+08:00;True|2024-01-11T14:57:22.7751079+08:00;True|2024-01-11T14:11:04.8587579+08:00;True|2024-01-11T11:21:14.0243941+08:00;True|2024-01-11T11:15:09.4678297+08:00;True|2024-01-09T17:06:36.4675498+08:00;True|2024-01-09T17:02:20.7904461+08:00;False|2024-01-09T11:59:36.2734315+08:00;False|2024-01-09T11:59:30.0330023+08:00;True|2024-01-09T11:59:17.2965616+08:00;True|2024-01-08T13:52:05.1989624+08:00;True|2024-01-08T11:12:57.8687468+08:00;True|2024-01-05T14:51:14.7636988+08:00;True|2024-01-05T14:05:34.1084252+08:00;True|2024-01-05T13:23:32.7473731+08:00;True|2024-01-05T11:23:22.0038600+08:00;True|2024-01-05T08:30:07.8997370+08:00;True|2024-01-04T17:03:59.0070371+08:00;True|2024-01-04T16:35:53.2667600+08:00;True|2024-01-04T13:54:55.5474585+08:00;True|2024-01-04T10:22:53.2575575+08:00;True|2024-01-04T10:19:29.6305295+08:00;True|2024-01-04T10:13:33.8544729+08:00;True|2024-01-04T10:09:45.5777175+08:00;True|2024-01-03T15:38:30.3306310+08:00;True|2024-01-03T15:33:57.3631133+08:00;True|2024-01-03T15:10:07.3593774+08:00;True|2024-01-03T13:01:19.4751344+08:00;True|2024-01-03T11:25:06.5732437+08:00;True|2024-01-03T10:55:20.7518873+08:00;True|2024-01-03T10:40:15.0650254+08:00;True|2024-01-03T10:29:15.9327684+08:00;True|2024-01-03T09:34:04.8587473+08:00;True|2024-01-03T08:19:57.3625106+08:00;True|2023-12-29T16:46:23.7770752+08:00;True|2023-12-29T16:45:18.9092534+08:00;True|2023-12-29T16:40:16.7253697+08:00;True|2023-12-29T16:35:46.0906100+08:00;True|2023-12-29T16:19:46.4369159+08:00;True|2023-12-29T15:13:11.2466536+08:00;True|2023-12-29T15:08:16.1413948+08:00;True|2023-12-29T11:54:24.8686181+08:00;True|2023-12-29T10:54:38.1200087+08:00;True|2023-12-29T10:43:44.2132588+08:00;True|2023-12-29T10:23:35.9589067+08:00;True|2023-12-29T10:21:38.3438976+08:00;True|2023-12-29T10:16:16.7097491+08:00;True|2023-12-29T09:53:37.8863387+08:00;True|2023-12-27T14:41:20.6098455+08:00;True|2023-12-27T14:15:27.0538444+08:00;True|2023-12-27T13:07:04.0423436+08:00;True|2023-12-27T11:13:53.7170363+08:00;True|2023-12-27T10:59:32.5371257+08:00;True|2023-12-27T10:48:01.7326864+08:00;True|2023-12-26T09:13:22.3086191+08:00;True|2023-12-26T09:12:47.2137946+08:00;True|2023-12-25T12:22:46.8608633+08:00;True|2023-12-25T12:18:59.4402254+08:00;True|2023-12-25T12:11:03.2410147+08:00;True|2023-12-25T09:37:48.6741194+08:00;True|2023-12-25T09:37:03.2635243+08:00;True|2023-12-22T09:44:26.5356492+08:00;True|2023-12-21T16:58:23.0505653+08:00;True|2023-12-21T16:51:26.4945132+08:00;True|2023-12-21T16:48:53.6772071+08:00;True|2023-12-21T16:23:16.4577315+08:00;True|2023-12-21T16:22:38.6599138+08:00;True|2023-12-21T16:11:43.8422015+08:00;True|2023-12-21T15:45:42.5751240+08:00;True|2023-12-15T16:26:52.3591879+08:00;True|2023-12-15T16:22:25.0756865+08:00;True|2023-12-15T14:19:10.1362534+08:00;True|2023-12-15T14:15:47.5585902+08:00;True|2023-12-15T13:41:56.8875380+08:00;True|2023-12-13T00:13:19.2052917+08:00;True|2023-12-12T23:45:04.0751980+08:00;True|2023-12-12T23:33:28.8199619+08:00;True|2023-12-11T16:31:01.1694979+08:00;True|2023-12-11T15:47:51.2813632+08:00;True|2023-12-11T14:31:49.0572919+08:00;True|2023-12-11T11:45:11.2736360+08:00;True|2023-12-11T11:42:47.5744097+08:00;True|2023-12-11T11:41:16.3262612+08:00;True|2023-12-11T11:32:42.2722966+08:00;True|2023-12-11T11:25:22.8877561+08:00;True|2023-12-11T11:18:20.8210764+08:00;True|2023-12-11T11:16:52.0927831+08:00;True|2023-12-11T11:12:29.9473078+08:00;True|2023-12-10T16:43:56.1726039+08:00;True|2023-12-08T16:50:00.8823437+08:00;True|2023-12-08T14:59:10.2356691+08:00;True|2023-12-08T14:53:13.6038106+08:00;True|2023-12-08T14:51:33.9002713+08:00;True|2023-12-08T14:49:22.0867686+08:00;True|2023-12-08T14:45:05.4216954+08:00;True|2023-12-08T14:30:25.7790911+08:00;True|2023-12-08T14:26:26.1041925+08:00;True|2023-12-08T10:55:36.7338237+08:00;True|2023-12-08T10:24:01.5463359+08:00;True|2023-12-08T10:04:35.7996746+08:00;True|2023-12-08T09:59:17.1279949+08:00;True|2023-12-08T09:52:45.7941909+08:00;True|2023-12-08T09:51:26.7251883+08:00;True|2023-12-08T09:27:43.4049328+08:00;True|2023-12-08T09:12:16.7029758+08:00;True|2023-12-07T11:13:10.4285460+08:00;True|2023-12-01T14:35:34.0005130+08:00;True|2023-12-01T13:21:46.3327168+08:00;True|2023-12-01T13:04:28.4801319+08:00;True|2023-11-30T16:46:41.8793520+08:00;True|2023-11-30T16:04:49.7131798+08:00;True|2023-11-30T15:51:12.9846550+08:00;True|2023-11-30T12:52:06.3440387+08:00;True|2023-11-28T11:20:26.3599705+08:00;True|2023-11-28T09:43:48.5733385+08:00;True|2023-11-27T12:13:11.3038226+08:00;True|2023-11-27T11:54:35.3665327+08:00;True|2023-11-24T13:10:19.3181494+08:00;True|2023-11-24T09:52:10.7335160+08:00;True|2023-11-24T09:31:32.3926443+08:00;True|2023-11-22T13:30:50.3888837+08:00;True|2023-11-22T13:22:29.5388053+08:00;True|2023-11-22T12:14:49.7935345+08:00;True|2023-11-22T11:28:30.8047701+08:00;True|2023-11-20T12:04:07.1512783+08:00;True|2023-11-20T11:58:16.7337435+08:00;True|2023-11-20T11:03:24.3231922+08:00;True|2023-11-20T10:59:12.6367033+08:00;True|2023-11-20T10:33:56.2434367+08:00;True|2023-11-17T15:05:08.6847106+08:00;True|2023-11-17T10:29:33.0225444+08:00;True|2023-11-16T14:21:42.1686146+08:00;True|2023-11-16T13:16:34.1913128+08:00;True|2023-11-16T12:57:16.2850606+08:00;True|2023-11-16T11:11:31.8430891+08:00;True|2023-11-16T10:20:42.1252046+08:00;True|2023-11-16T10:18:14.1408709+08:00;True|2023-11-16T09:23:36.6628173+08:00;True|2023-11-15T14:28:33.3369087+08:00;True|2023-11-15T12:26:26.2137336+08:00;True|2023-11-15T12:25:16.0092237+08:00;True|2023-11-15T11:14:45.4326153+08:00;True|2023-11-15T09:02:00.2711268+08:00;True|2023-11-15T08:53:27.1187290+08:00;True|2023-11-14T18:54:52.3812819+08:00;True|2023-11-14T18:52:20.2229451+08:00;True|2023-11-14T17:55:59.0996386+08:00;True|2023-11-14T17:04:46.5334994+08:00;True|2023-11-14T15:02:42.0419908+08:00;True|2023-11-14T14:56:49.6970449+08:00;True|2023-11-14T13:18:29.4329574+08:00;True|2023-11-14T12:23:09.7978978+08:00;True|2023-11-13T16:16:20.9105084+08:00;True|2023-11-13T16:11:45.1099698+08:00;True|2023-11-13T13:16:02.1477662+08:00;True|2023-11-13T13:15:15.6182523+08:00;True|2023-11-13T11:11:21.7620762+08:00;True|2023-11-13T10:01:31.2619079+08:00;True|2023-11-13T09:18:34.3054349+08:00;True|2023-11-13T00:48:47.6800494+08:00;True|2023-11-13T00:42:22.9854286+08:00;True|2023-11-10T16:59:57.9013482+08:00;True|2023-11-10T13:56:10.1520148+08:00;True|2023-11-10T12:25:28.8978413+08:00;True|2023-11-10T12:04:30.4991249+08:00;True|2023-11-10T11:55:52.1921552+08:00;True|2023-11-10T11:39:33.1910863+08:00;True|2023-11-10T11:17:17.2050570+08:00;True|2023-11-10T10:31:48.8350379+08:00;True|2023-11-09T13:11:02.1210376+08:00;True|2023-11-09T11:04:23.6279742+08:00;True|2023-11-09T09:52:39.0767165+08:00;True|2023-11-09T09:45:47.5629254+08:00;True|2023-11-09T09:41:09.1121998+08:00;True|2023-11-09T09:34:16.8133121+08:00;True|2023-11-08T16:33:38.3080500+08:00;True|2023-11-08T16:14:37.9282566+08:00;True|2023-11-08T15:31:46.8084522+08:00;True|2023-11-08T14:27:48.2352711+08:00;True|2023-11-08T12:23:56.5235127+08:00;True|2023-11-08T11:41:12.7035010+08:00;True|2023-11-08T11:38:42.5318310+08:00;True|2023-11-08T10:18:43.5798164+08:00;True|2023-11-08T09:06:35.6712939+08:00;True|2023-11-08T08:57:36.1174660+08:00;True|2023-11-08T00:07:44.2585670+08:00;True|2023-11-06T23:28:53.2559097+08:00;True|2023-11-06T23:00:40.3059201+08:00;True|2023-11-06T21:14:59.0505998+08:00;True|2023-11-03T22:08:06.7984691+08:00;True|2023-11-03T20:33:47.8005656+08:00;True|2023-11-03T19:18:45.1406730+08:00;True|2023-11-03T14:56:44.7332321+08:00;True|2023-11-02T20:13:15.5530300+08:00;True|2023-11-02T19:22:24.9140752+08:00;True|2023-11-02T18:58:18.1198017+08:00;True|2023-11-01T18:31:39.9490440+08:00;True|2023-11-01T14:49:43.8703361+08:00;True|2023-11-01T14:38:44.8729900+08:00;True|2023-11-01T14:14:57.6507597+08:00;True|2023-11-01T13:04:09.9744075+08:00;True|2023-10-31T13:03:41.1902847+08:00;True|2023-10-31T11:29:03.3252294+08:00;True|2023-10-30T18:35:01.5128678+08:00;True|2023-10-30T18:25:01.6612244+08:00;True|2023-10-26T17:07:56.7081658+08:00;True|2023-10-18T16:20:51.8420951+08:00;True|2023-10-16T16:44:43.7908528+08:00;True|2023-10-16T11:17:09.2728375+08:00;True|2023-10-16T10:28:07.3397339+08:00;True|2023-10-16T10:26:35.6073358+08:00;True|2023-10-16T10:21:48.9925797+08:00;True|2023-10-13T11:26:05.2730047+08:00;True|2023-10-12T08:19:04.3028512+08:00;True|2023-10-11T20:40:21.6934217+08:00;True|2023-10-11T20:28:04.3302789+08:00;True|2023-10-11T20:16:51.2741909+08:00;True|2023-10-11T20:10:01.4624158+08:00;True|2023-10-11T15:32:40.9782838+08:00;True|2023-10-11T15:21:09.0531801+08:00;True|2023-10-11T15:05:59.9622196+08:00;True|2023-10-11T10:51:46.8571661+08:00;True|2023-10-11T10:41:25.5037704+08:00;True|2023-10-11T10:13:32.2604453+08:00;True|2023-10-11T10:05:52.2170423+08:00;True|2023-10-11T09:47:35.6578975+08:00;True|2023-10-11T09:44:31.2001499+08:00;True|2023-10-11T09:37:09.6904898+08:00;True|2023-10-10T10:18:33.1073992+08:00;True|2023-10-10T09:32:05.6384867+08:00;True|2023-10-10T09:15:26.4844254+08:00;True|2023-10-10T09:03:39.1497247+08:00;True|2023-10-10T08:56:14.9475607+08:00;True|2023-10-09T15:38:52.6561232+08:00;True|2023-10-09T14:22:16.0301342+08:00;True|2023-10-09T13:24:40.4941388+08:00;True|2023-10-09T10:30:48.0015664+08:00;True|2023-10-09T09:52:47.4626658+08:00;True|2023-10-08T14:21:13.7960780+08:00;True|2023-10-08T10:31:55.0337899+08:00;True|2023-10-08T08:24:13.2663041+08:00;True|2023-10-07T10:40:04.1716715+08:00;True|2023-10-07T09:51:11.1928375+08:00;True|2023-10-07T09:43:13.8042516+08:00;True|2023-09-28T15:45:01.2865878+08:00;True|2023-09-28T15:32:23.8179822+08:00;True|2023-09-28T14:37:03.1119806+08:00;True|2023-09-28T14:30:07.0877531+08:00;True|2023-09-28T14:01:36.5862373+08:00;True|2023-09-28T08:29:16.5989163+08:00;True|2023-09-28T08:12:23.3924898+08:00;True|2023-09-27T17:04:09.2538198+08:00;True|2023-09-27T16:38:03.8237948+08:00;True|2023-09-27T16:12:28.7977056+08:00;True|2023-09-27T15:56:03.7725704+08:00;True|2023-09-27T15:12:31.1298921+08:00;True|2023-09-27T15:05:14.4058045+08:00;True|2023-09-27T14:55:43.4423114+08:00;True|2023-09-27T14:33:26.2272014+08:00;True|2023-09-22T13:26:44.6246077+08:00;True|2023-09-22T11:14:50.9067626+08:00;True|2023-09-22T09:36:50.6912928+08:00;True|2023-09-22T09:26:38.2305802+08:00;True|2023-09-22T09:02:22.5400635+08:00;True|2023-09-20T17:20:27.9780370+08:00;True|2023-09-19T09:20:00.1269897+08:00;True|2023-09-19T09:10:18.4900723+08:00;True|2023-09-19T08:30:20.1709390+08:00;True|2023-09-18T15:43:28.1580264+08:00;True|2023-09-15T10:08:50.6367258+08:00;True|2023-09-14T17:17:10.7002185+08:00;True|2023-09-14T16:55:47.7782477+08:00;True|2023-09-14T14:05:25.9485449+08:00;False|2023-09-14T14:04:51.9423918+08:00;True|2023-09-12T09:37:17.5430590+08:00;True|2023-09-11T16:38:00.9834961+08:00;True|2023-09-11T13:04:08.1338596+08:00;True|2023-09-11T09:33:03.5400174+08:00;True|2023-09-08T15:34:46.6427039+08:00;True|2023-09-08T15:32:26.7896155+08:00;True|2023-09-08T14:07:16.6283055+08:00;True|2023-09-08T08:21:08.8368055+08:00;True|2023-09-08T08:07:29.5992984+08:00;True|2023-09-07T13:03:24.6924914+08:00;True|2023-09-07T11:02:02.9462467+08:00;True|2023-09-07T08:57:36.4913496+08:00;True|2023-09-07T08:55:57.3245545+08:00;True|2023-09-06T13:47:04.0563026+08:00;True|2023-09-06T13:42:27.3031938+08:00;True|2023-09-05T08:28:44.6193871+08:00;True|2023-09-04T20:42:09.4672710+08:00;True|2023-09-03T14:06:37.5079909+08:00;True|2023-09-02T18:58:24.1492192+08:00;True|2023-09-01T13:19:28.2779978+08:00;True|2023-09-01T08:40:54.0577358+08:00;True|2023-08-31T16:47:34.8462721+08:00;True|2023-08-31T14:49:39.9056564+08:00;True|2023-08-31T14:20:01.4071384+08:00;True|2023-08-31T11:25:29.0233052+08:00;True|2023-08-31T10:28:13.4933678+08:00;True|2023-08-31T10:21:52.6638820+08:00;True|2023-08-31T08:46:57.8782261+08:00;True|2023-08-31T08:46:08.4791004+08:00;True|2023-08-30T09:06:17.4001684+08:00;True|2023-08-30T08:52:06.9481657+08:00;True|2023-08-29T17:11:33.7851914+08:00;True|2023-08-29T16:58:52.7298807+08:00;True|2023-08-29T15:58:23.4205277+08:00;True|2023-08-29T15:56:40.3534593+08:00;True|2023-08-29T15:54:29.1188567+08:00;True|2023-08-29T15:53:27.9719983+08:00;True|2023-08-29T15:52:38.7670005+08:00;True|2023-08-29T15:51:32.3703092+08:00;True|2023-08-29T15:47:38.5198946+08:00;True|2023-08-29T15:46:17.4698017+08:00;True|2023-08-29T15:42:04.1853400+08:00;True|2023-08-29T15:29:28.1098681+08:00;True|2023-08-29T15:18:40.8587286+08:00;True|2023-08-29T14:47:50.3088948+08:00;True|2023-08-29T14:47:27.6552611+08:00;False|2023-08-28T13:59:37.8725670+08:00;True|2023-08-18T13:23:38.9937084+08:00;True|2023-08-18T10:09:51.5247737+08:00;True|2023-08-18T08:26:21.8473123+08:00;True|2023-08-17T08:31:37.8696349+08:00;True|2023-08-17T08:23:59.5658185+08:00;True|2023-08-17T08:07:38.2174684+08:00;True|2023-08-16T16:49:44.2549852+08:00;True|2023-08-16T16:33:59.9298792+08:00;True|2023-08-16T15:35:29.6092783+08:00;True|2023-08-16T11:17:28.1086751+08:00;True|2023-08-16T11:17:22.3814672+08:00;True|2023-08-16T08:44:16.0941179+08:00;True|2023-08-15T15:29:15.8118269+08:00;True|2023-08-15T14:47:06.4963591+08:00;True|2023-08-11T16:49:35.8718314+08:00;True|2023-08-11T14:22:59.9440967+08:00;True|2023-08-11T14:16:25.0940743+08:00;True|2023-08-11T13:27:25.4148450+08:00;True|2023-08-11T09:08:31.5437265+08:00;True|2023-08-11T09:04:38.4540336+08:00;True|2023-08-10T14:11:07.0042283+08:00;True|2023-08-08T13:48:19.2402267+08:00;True|2023-08-08T13:44:15.6796969+08:00;True|2023-07-27T09:46:14.1491814+08:00;True|2023-07-21T11:13:10.0843656+08:00;True|2023-07-21T10:56:47.5835580+08:00;True|2023-07-21T10:30:33.0113443+08:00;True|2023-07-20T19:16:37.4936135+08:00;True|2023-07-20T19:00:41.0636578+08:00;True|2023-07-19T13:28:27.8671371+08:00;True|2023-07-19T13:23:42.1880500+08:00;True|2023-07-19T13:19:18.7201227+08:00;True|2023-07-19T13:06:38.9897249+08:00;True|2023-07-19T12:13:11.2061059+08:00;True|2023-07-19T11:45:20.0391356+08:00;True|2023-07-19T11:24:02.5425841+08:00;True|2023-07-19T10:32:06.7915754+08:00;True|2023-07-19T09:51:08.4553434+08:00;True|2023-07-19T09:48:11.2977426+08:00;True|2023-07-18T08:47:44.1724897+08:00;True|2023-07-17T16:25:10.8982872+08:00;True|2023-07-17T14:50:44.3708198+08:00;True|2023-07-17T14:20:26.4686898+08:00;True|2023-07-17T14:18:16.6127136+08:00;True|2023-07-17T14:16:34.9116950+08:00;True|2023-07-17T14:14:44.7988846+08:00;True|2023-07-17T14:06:18.1123806+08:00;True|2023-07-17T14:03:38.5290433+08:00;True|2023-07-17T13:48:54.3096778+08:00;True|2023-07-17T13:23:13.6097762+08:00;True|2023-07-17T09:54:25.9375716+08:00;True|2023-07-17T09:40:22.2531559+08:00;True|2023-07-17T09:21:15.0786649+08:00;True|2023-07-17T09:03:37.2081513+08:00;True|2023-07-16T21:20:45.3036514+08:00;True|2023-07-16T21:09:16.1559694+08:00;True|2023-07-16T21:05:22.2504644+08:00;True|2023-07-16T20:41:26.5956030+08:00;True|2023-07-16T20:19:33.5726613+08:00;True|2023-07-16T19:46:38.6493518+08:00;True|2023-07-14T10:33:17.6270692+08:00;True|2023-07-11T14:34:22.8852169+08:00;True|2023-07-11T14:27:22.7851108+08:00;True|2023-07-11T14:13:21.6512172+08:00;True|2023-07-11T14:06:33.9865646+08:00;True|2023-07-11T13:52:46.2830836+08:00;True|2023-07-11T13:38:56.3165889+08:00;True|2023-07-11T13:29:40.9636697+08:00;True|2023-07-11T13:25:23.0633788+08:00;True|2023-07-11T10:17:40.8002359+08:00;True|2023-07-11T10:15:47.5472709+08:00;True|2023-07-11T10:12:25.6440547+08:00;True|2023-07-11T10:07:39.3716167+08:00;True|2023-07-11T09:22:07.4191357+08:00;True|2023-07-04T13:07:10.1209516+08:00;True|2023-06-30T16:11:25.7541580+08:00;True|2023-06-30T15:39:26.6678989+08:00;True|2023-06-30T15:26:40.6581344+08:00;True|2023-06-30T15:12:57.9906312+08:00;True|2023-06-29T16:39:15.6477820+08:00;True|2023-06-28T17:01:51.9542466+08:00;True|2023-06-27T15:03:28.1320450+08:00;True|2023-06-27T13:36:39.6707848+08:00;True|2023-06-26T09:40:01.1754706+08:00;True|2023-06-25T12:16:28.9080024+08:00;True|2023-06-25T11:51:59.9238461+08:00;True|2023-06-25T11:50:29.3100358+08:00;True|2023-06-25T11:29:28.5338563+08:00;True|2023-06-25T09:10:26.2420288+08:00;True|2023-06-25T09:08:15.0702872+08:00;True|2023-06-25T08:43:15.0806611+08:00;True|2023-06-25T08:41:41.8156616+08:00;True|2023-06-25T08:39:30.6818013+08:00;True|2023-06-25T08:38:18.5996529+08:00;True|2023-06-25T08:36:34.1479706+08:00;True|2023-06-25T08:34:53.9856289+08:00;True|2023-06-25T08:31:24.0298080+08:00;True|2023-06-25T08:15:45.7453280+08:00;True|2023-06-25T08:01:52.7609075+08:00;True|2023-06-24T21:25:23.8938665+08:00;True|2023-06-22T03:02:26.7305758+08:00;True|2023-06-22T02:10:48.8222890+08:00;True|2023-06-22T01:57:41.7875184+08:00;True|2023-06-22T01:52:19.4217362+08:00;True|2023-06-21T16:27:15.1464129+08:00;True|2023-06-21T16:11:46.6111817+08:00;True|2023-06-21T13:14:00.6869253+08:00;True|2023-06-21T13:09:28.2689225+08:00;True|2023-06-21T12:24:02.6762426+08:00;True|2023-06-21T12:18:06.2748924+08:00;True|2023-06-21T11:18:02.6754143+08:00;True|2023-06-21T11:08:34.2149469+08:00;True|2023-06-21T08:20:50.0079906+08:00;True|2023-06-20T15:56:03.2638713+08:00;True|2023-06-20T15:48:38.2419545+08:00;True|2023-06-20T15:35:26.6615171+08:00;True|2023-06-20T15:20:31.9284860+08:00;True|2023-06-20T15:18:39.8265469+08:00;True|2023-06-20T15:09:16.7617272+08:00;True|2023-06-20T09:53:23.2658672+08:00;True|2023-06-16T10:00:58.0337616+08:00;True|2023-06-16T09:47:58.8912904+08:00;True|2023-06-16T09:26:36.4914832+08:00;True|2023-06-15T16:22:21.4509393+08:00;True|2023-06-12T13:21:12.0491357+08:00;True|2023-06-12T10:18:32.9287587+08:00;True|2023-06-09T16:22:24.1132267+08:00;True|2023-06-08T18:12:42.4814009+08:00;True|2023-06-08T11:08:48.0533571+08:00;True|2023-06-08T10:41:43.0121701+08:00;False|2023-06-08T10:40:19.2093235+08:00;True|2023-06-06T13:03:50.8124200+08:00;True|2023-06-05T10:12:24.1858209+08:00;True|2023-06-02T17:02:57.5817094+08:00;True|2023-05-26T13:54:40.2272218+08:00;True|2023-05-24T12:43:50.2427994+08:00;True|2023-05-24T12:34:24.3922836+08:00;True|2023-05-24T10:07:19.4995219+08:00;True|2023-05-24T09:21:29.1960080+08:00;True|2023-05-23T22:34:23.3220912+08:00;True|2023-05-23T22:01:14.4175449+08:00;True|2023-05-23T17:02:53.0308400+08:00;True|2023-05-23T16:30:11.7138623+08:00;True|2023-05-23T15:51:50.0152484+08:00;True|2023-05-23T15:50:52.0657433+08:00;True|2023-05-23T15:28:25.5802377+08:00;True|2023-05-23T15:25:56.4633020+08:00;True|2023-05-23T14:52:29.8759921+08:00;True|2023-05-23T14:48:44.6519763+08:00;True|2023-05-20T04:28:10.3108871+08:00;True|2023-05-20T03:56:22.7233820+08:00;True|2023-05-20T03:47:38.4405026+08:00;True|2023-05-20T03:46:40.6056451+08:00;True|2023-05-20T03:44:25.0883888+08:00;True|2023-05-20T03:41:10.1148691+08:00;True|2023-05-20T02:34:14.3757035+08:00;True|2023-05-20T02:27:50.5595075+08:00;True|2023-05-20T02:23:04.2256041+08:00;True|2023-05-20T01:46:59.9534021+08:00;True|2023-05-20T01:42:33.5106065+08:00;True|2023-05-20T01:40:39.6918060+08:00;True|2023-05-20T01:11:47.7436847+08:00;True|2023-05-20T01:03:58.9476094+08:00;True|2023-05-19T22:59:47.4591129+08:00;True|2023-05-19T22:34:44.7988447+08:00;True|2023-05-19T22:24:55.2320279+08:00;True|2023-05-19T21:40:19.5285575+08:00;True|2023-05-19T21:38:21.2073338+08:00;True|2023-05-19T20:54:59.2058809+08:00;True|2023-05-19T16:08:15.0151080+08:00;True|2023-05-19T15:26:16.2836301+08:00;True|2023-05-19T13:09:06.1592914+08:00;True|2023-05-19T12:24:23.6252771+08:00;True|2023-05-19T11:50:53.8948740+08:00;True|2023-05-19T11:43:57.9296933+08:00;True|2023-05-19T10:44:34.9904463+08:00;True|2023-05-19T09:32:02.1216663+08:00;False|2023-05-19T09:31:06.4251757+08:00;True|2023-05-18T22:34:36.5292968+08:00;True|2023-05-18T20:37:59.7940567+08:00;True|2023-05-18T20:36:35.2790349+08:00;True|2023-05-18T20:34:10.7400457+08:00;True|2023-05-18T20:32:43.8790879+08:00;True|2023-05-18T20:31:13.5389643+08:00;True|2023-05-18T20:29:19.6206139+08:00;True|2023-05-18T20:07:25.5074263+08:00;True|2023-05-18T18:19:43.5324315+08:00;True|2023-05-18T18:15:36.4290026+08:00;True|2023-05-18T18:12:31.8703551+08:00;True|2023-05-18T18:10:52.9289531+08:00;True|2023-05-18T18:09:23.9118797+08:00;True|2023-05-18T17:58:30.8068228+08:00;True|2023-05-18T17:56:55.8055382+08:00;False|2023-05-18T17:54:54.7950789+08:00;False|2023-05-18T17:11:18.2325105+08:00;True|2023-05-18T17:09:24.4186482+08:00;True|2023-05-18T17:06:32.0699130+08:00;False|2023-05-18T17:01:41.8164925+08:00;False|2023-05-18T16:59:32.1112741+08:00;True|2023-05-18T16:58:34.1784100+08:00;True|2023-05-18T16:56:36.9460541+08:00;True|2023-05-18T16:55:00.9843495+08:00;True|2023-05-18T16:49:04.0161640+08:00;True|2023-05-18T16:48:28.9011382+08:00;True|2023-05-18T16:44:52.0675900+08:00;False|2023-05-18T16:44:37.3514214+08:00;False|2023-05-18T16:43:23.3343369+08:00;True|2023-05-18T16:41:35.8818611+08:00;True|2023-05-18T16:25:43.5167900+08:00;False|2023-05-18T16:24:46.6646890+08:00;False|2023-05-18T16:19:55.4153618+08:00;False|2023-05-18T16:16:18.0052881+08:00;False|2023-05-18T16:14:32.3377278+08:00;True|2023-05-17T15:43:45.1868569+08:00;True|2023-05-17T15:35:42.2476880+08:00;True|2023-05-17T14:23:28.2390957+08:00;True|2023-05-17T13:54:00.6756387+08:00;True|2023-05-17T13:45:46.1115068+08:00;True|2023-05-17T07:57:34.7129429+08:00;True|2023-05-16T16:04:20.3198005+08:00;False|2023-05-16T16:03:52.0737233+08:00;True|2023-05-16T15:28:45.4945726+08:00;True|2023-05-16T15:14:10.4952128+08:00;True|2023-05-16T15:04:46.5706346+08:00;True|2023-05-16T14:46:48.7034492+08:00;True|2023-05-16T14:45:29.4047499+08:00;True|2023-05-16T14:42:47.3507679+08:00;True|2023-05-16T14:30:47.9199224+08:00;True|2023-05-16T14:29:10.9147184+08:00;True|2023-05-16T14:27:48.3632687+08:00;True|2023-05-16T14:24:44.6240034+08:00;True|2023-05-16T14:19:41.2962188+08:00;True|2023-05-16T13:41:13.3366211+08:00;True|2023-05-16T13:26:44.1532655+08:00;True|2023-05-16T13:23:40.2882422+08:00;True|2023-05-16T13:11:41.5416792+08:00;True|2023-05-16T13:08:41.6341863+08:00;True|2023-05-16T13:04:35.6916867+08:00;True|2023-05-16T13:00:34.6889598+08:00;True|2023-05-16T12:57:48.4561274+08:00;True|2023-05-16T12:50:57.7405833+08:00;True|2023-05-16T12:49:33.8394829+08:00;True|2023-05-16T12:44:28.6906226+08:00;True|2023-05-16T12:41:08.3554032+08:00;True|2023-05-16T12:32:32.3448036+08:00;True|2023-05-16T11:32:04.4504376+08:00;True|2023-05-15T18:39:28.9172042+08:00;True|2023-05-15T18:35:41.5268755+08:00;True|2023-05-15T18:16:16.2900985+08:00;True|2023-04-28T16:24:40.7430596+08:00;False|2023-04-28T16:21:34.8499384+08:00;True|2023-04-28T15:43:40.3023318+08:00;True|2023-04-28T15:41:18.8228620+08:00;True|2023-04-28T14:16:21.1595325+08:00;True|2023-04-28T10:27:55.2150739+08:00;True|2023-04-12T16:25:26.5218825+08:00;True|2023-04-12T15:45:29.3993255+08:00;True|2023-04-12T14:00:18.1960878+08:00;True|2023-04-12T13:16:39.0804178+08:00;True|2023-04-11T11:02:27.5200402+08:00;True|2023-04-11T09:57:11.5903829+08:00;True|2023-04-10T09:58:01.1775220+08:00;True|2023-03-13T11:19:32.0927720+08:00;True|2023-03-13T10:39:50.9250037+08:00;True|2023-03-13T08:54:57.5891390+08:00;True|2023-03-10T09:00:31.2441735+08:00;True|2023-03-08T08:25:11.1877416+08:00;True|2023-03-06T09:18:03.5502956+08:00;True|2023-03-06T09:14:57.8192971+08:00;True|2023-01-11T13:30:27.8190489+08:00;True|2023-01-06T14:29:14.6067256+08:00;True|2022-12-23T17:06:52.0688439+08:00;True|2022-12-23T16:12:04.4155951+08:00;True|2022-12-23T13:35:44.6439326+08:00;True|2022-11-30T08:24:02.9999976+08:00;True|2022-11-30T08:01:51.4579972+08:00;True|2022-11-29T21:32:14.4359673+08:00;True|2022-11-29T19:30:22.9466023+08:00;True|2022-11-29T19:24:30.1630119+08:00;True|2022-11-29T17:31:43.1926801+08:00;True|2022-11-29T17:14:32.5869985+08:00;True|2022-11-29T10:42:57.1877576+08:00;True|2022-11-27T14:40:28.4784748+08:00;True|2022-11-26T20:49:34.2789400+08:00;True|2022-11-26T19:24:58.9988205+08:00;True|2022-11-26T15:33:08.6274944+08:00;True|2022-11-26T14:37:46.3953592+08:00;True|2022-11-26T09:16:41.7487240+08:00;True|2022-11-24T09:49:50.7302637+08:00;True|2022-11-23T16:24:56.5946914+08:00;True|2022-11-23T16:19:57.5570583+08:00;True|2022-11-23T15:05:13.8032246+08:00;True|2022-11-22T20:24:39.7324815+08:00;True|2022-11-22T13:18:16.2143925+08:00;False|2022-11-22T13:12:53.0448580+08:00;True|2022-11-22T11:03:01.7571733+08:00;True|2022-11-21T13:20:11.1961237+08:00;True|2022-11-21T13:13:52.0360749+08:00;True|2022-11-18T15:48:13.0747365+08:00;True|2022-11-18T14:15:54.5626901+08:00;True|2022-11-17T18:41:26.5464503+08:00;True|2022-11-15T13:55:35.3496366+08:00;True|2022-11-15T11:03:23.6773297+08:00;True|2022-11-15T10:58:47.9703720+08:00;True|2022-11-15T10:12:27.8305782+08:00;True|2022-11-15T09:47:26.7480777+08:00;True|2022-11-15T08:55:44.0275263+08:00;True|2022-11-15T08:54:06.6396851+08:00;True|2022-11-15T08:44:18.2013404+08:00;True|2022-11-15T01:16:19.8154538+08:00;True|2022-11-15T01:15:03.7846810+08:00;True|2022-11-15T01:01:11.0318599+08:00;True|2022-11-15T00:30:33.7148460+08:00;True|2022-11-15T00:15:26.5178283+08:00;True|2022-11-14T23:54:32.6128172+08:00;True|2022-11-14T23:26:52.0335380+08:00;True|2022-11-14T22:21:28.0622050+08:00;True|2022-11-14T21:47:43.6964619+08:00;True|2022-11-14T21:41:42.3128804+08:00;True|2022-11-14T21:31:17.2784203+08:00;True|2022-11-14T20:48:20.0380343+08:00;True|2022-11-11T17:24:44.7029993+08:00;True|2022-11-11T16:47:29.3444029+08:00;True|2022-11-11T16:07:26.4718473+08:00;True|2022-11-11T15:52:41.7235701+08:00;True|2022-11-10T15:58:10.8883176+08:00;True|2022-11-10T15:29:59.3113740+08:00;True|2022-11-10T13:34:14.7380132+08:00;True|2022-11-10T10:28:02.1166569+08:00;True|2022-11-09T23:28:25.6401971+08:00;True|2022-11-09T16:20:53.2757536+08:00;True|2022-11-09T16:16:41.3169214+08:00;True|2022-11-09T14:02:55.1802832+08:00;True|2022-11-09T13:57:55.2726154+08:00;True|2022-11-09T13:28:53.2022669+08:00;True|2022-11-09T13:10:58.0740163+08:00;True|2022-11-09T12:59:42.2328933+08:00;True|2022-11-09T11:54:08.0187924+08:00;True|2022-11-09T11:49:32.4296758+08:00;True|2022-11-09T11:34:32.6613370+08:00;True|2022-11-09T11:06:56.9443306+08:00;True|2022-11-06T23:43:44.0833657+08:00;True|2022-11-06T23:29:52.0088244+08:00;True|2022-11-06T22:06:14.7091464+08:00;True|2022-11-06T22:03:25.2696951+08:00;True|2022-11-06T21:58:50.1055520+08:00;True|2022-11-06T21:54:14.0075395+08:00;True|2022-11-06T21:39:30.2652105+08:00;True|2022-11-04T15:54:37.9813194+08:00;True|2022-11-04T15:43:59.7702621+08:00;True|2022-11-04T13:59:29.3941234+08:00;True|2022-11-04T13:44:18.1212719+08:00;True|2022-11-04T13:42:06.1010393+08:00;True|2022-11-04T13:37:01.7814703+08:00;True|2022-11-04T13:35:43.1121709+08:00;True|2022-11-04T13:33:05.1362535+08:00;True|2022-11-04T13:30:11.1113703+08:00;True|2022-11-04T13:28:53.7185382+08:00;True|2022-11-04T13:27:08.0691684+08:00;True|2022-11-04T13:20:46.2297633+08:00;True|2022-11-04T13:17:57.1564250+08:00;True|2022-11-04T13:15:36.3651019+08:00;True|2022-11-04T13:13:44.6635701+08:00;True|2022-11-04T13:12:02.3968306+08:00;True|2022-11-04T13:08:07.7653927+08:00;True|2022-11-04T11:37:44.1975649+08:00;True|2022-11-04T11:36:20.3813848+08:00;True|2022-11-04T11:26:40.9713465+08:00;True|2022-11-04T10:17:36.4269558+08:00;True|2022-11-04T09:47:05.4607111+08:00;True|2022-11-04T09:28:27.9347785+08:00;True|2022-11-04T08:38:38.5253737+08:00;True|2022-11-03T13:31:32.7883545+08:00;False|2022-11-03T13:27:07.8579021+08:00;True|2022-11-03T11:07:07.3903101+08:00;True|2022-11-03T10:54:26.7818816+08:00;True|2022-11-03T10:35:59.1956262+08:00;True|2022-11-03T10:30:07.0651285+08:00;True|2022-11-03T10:01:20.8467911+08:00;True|2022-08-22T11:13:33.9211829+08:00;True|2022-06-17T11:19:24.4893458+08:00;True|2022-06-07T14:44:51.5702202+08:00;True|2022-06-07T14:42:44.8351600+08:00;True|2022-05-17T14:19:55.1158182+08:00;True|2022-05-17T13:25:44.2886247+08:00;True|2022-05-17T10:29:26.6813564+08:00;True|2022-05-17T09:02:49.1742018+08:00;True|2022-05-06T15:13:12.2438900+08:00;True|2022-05-06T14:49:39.8536594+08:00;True|2022-04-22T17:07:44.8823529+08:00;True|2022-04-19T19:13:40.8312746+08:00;True|2022-04-19T15:40:16.0022040+08:00;True|2022-04-19T15:13:32.9767736+08:00;False|2022-04-19T15:08:33.6507639+08:00;True|2022-04-19T15:02:51.9580210+08:00;True|2022-04-19T13:54:18.7579131+08:00;True|2022-04-12T10:36:02.1779173+08:00;True|2022-04-12T10:05:31.0222037+08:00;True|2022-04-12T09:47:49.3724819+08:00;True|2022-04-09T15:08:54.5697468+08:00;True|2022-04-08T17:31:31.0046258+08:00;True|2022-04-08T16:50:41.3018422+08:00;True|2022-04-08T10:35:36.5029980+08:00;True|2022-03-31T09:38:37.3646053+08:00;True|2022-03-29T13:57:45.4410942+08:00;True|2022-03-10T18:59:23.7994337+08:00;True|2022-03-10T18:52:39.5019082+08:00;True|2022-03-10T18:51:12.7949284+08:00;True|2022-03-10T18:50:47.2024177+08:00;True|2022-03-10T18:45:08.8409380+08:00;True|2022-03-10T18:41:17.0102564+08:00;True|2022-03-10T18:35:49.0742353+08:00;True|2022-03-10T17:57:47.4196965+08:00;True|2022-03-10T17:34:27.5723245+08:00;True|2022-03-10T16:13:59.3829164+08:00;True|2022-03-09T14:50:49.1222033+08:00;True|2022-03-09T11:21:03.0073651+08:00;False|2022-03-09T11:16:56.1792896+08:00;False|2022-03-09T11:16:49.7923320+08:00;True|2022-03-08T15:47:47.4722336+08:00;True|2022-03-08T15:47:28.5397115+08:00;True|2022-03-08T15:37:08.7379870+08:00;True|2022-03-02T17:37:54.4659976+08:00;True|2022-03-02T17:34:12.2949726+08:00;True|2022-03-02T17:26:38.7070673+08:00;True|2022-03-02T17:07:49.7024316+08:00;True|2022-03-02T17:05:22.4177336+08:00;True|2022-03-02T16:14:57.9880587+08:00;True|2022-03-01T17:52:52.6766959+08:00;True|2022-02-28T14:36:22.6449303+08:00;True|2022-02-24T15:43:36.8244163+08:00;True|2022-02-23T17:57:14.3693224+08:00;True|2022-02-23T17:46:42.1078183+08:00;False|2022-02-23T17:41:06.5886724+08:00;True|2022-02-23T16:59:45.5533581+08:00;True|2022-02-23T16:57:43.3328895+08:00;True|2022-02-21T09:09:37.2601134+08:00;True|2022-02-21T09:03:32.4071009+08:00;True|2022-02-21T08:59:59.0172082+08:00;True|2022-02-18T14:05:39.1358825+08:00;True|2022-02-18T10:23:02.4391239+08:00;True|2022-02-18T10:21:31.0559267+08:00;True|2022-02-17T16:50:11.7192509+08:00;True|2022-02-17T13:19:13.7697894+08:00;True|2022-02-11T10:36:12.7757100+08:00;True|2022-02-10T10:54:25.2685040+08:00;True|2022-02-10T10:37:02.1034768+08:00;True|2022-02-09T17:32:45.6511283+08:00;True|2022-02-09T17:24:32.5115193+08:00;True|2022-02-09T17:00:24.0662114+08:00;True|2022-02-09T16:56:42.3364622+08:00;True|2022-02-09T14:17:25.8688855+08:00;True|2022-02-09T14:11:51.6149822+08:00;True|2022-02-07T23:29:26.2842648+08:00;True|2022-02-07T23:28:58.8242274+08:00;False|2022-02-07T23:25:29.0647793+08:00;True|2022-02-07T13:06:37.5515985+08:00;True|2022-02-07T12:42:19.5220491+08:00;True|2022-02-07T09:52:59.6728595+08:00;True|2022-02-01T11:32:10.5831557+08:00;True|2022-01-29T14:09:02.9178986+08:00;True|2022-01-28T12:01:45.1416438+08:00;True|2022-01-28T11:03:41.6361866+08:00;True|2022-01-28T10:44:53.5367862+08:00;True|2022-01-28T10:40:41.6697563+08:00;True|2022-01-28T10:25:56.7093616+08:00;True|2022-01-28T09:58:13.0733060+08:00;True|2022-01-27T09:26:29.6568807+08:00;True|2022-01-27T00:47:57.9102528+08:00;True|2022-01-27T00:46:52.8845001+08:00;True|2022-01-27T00:36:34.5330938+08:00;True|2022-01-27T00:35:19.5439329+08:00;True|2022-01-27T00:33:38.5701950+08:00;True|2022-01-27T00:32:00.9028982+08:00;True|2022-01-27T00:30:13.2390921+08:00;True|2022-01-27T00:28:23.2989144+08:00;True|2022-01-27T00:16:01.3789455+08:00;True|2022-01-27T00:09:58.8112352+08:00;True|2022-01-27T00:00:40.8353538+08:00;True|2022-01-26T23:37:50.9494735+08:00;True|2022-01-26T23:29:39.8647473+08:00;True|2022-01-26T23:20:49.3274392+08:00;True|2022-01-26T23:15:53.7037293+08:00;True|2022-01-26T23:06:28.8595953+08:00;True|2022-01-26T23:02:12.9882299+08:00;True|2022-01-26T22:55:33.2535730+08:00;True|2022-01-26T22:51:01.8427947+08:00;True|2022-01-26T22:47:44.0715387+08:00;True|2022-01-26T22:20:21.7217039+08:00;True|2022-01-26T22:13:39.5372069+08:00;True|2022-01-26T22:01:31.2113177+08:00;True|2022-01-26T21:55:26.5478921+08:00;True|2022-01-26T21:50:18.2700369+08:00;True|2022-01-26T21:48:52.0020233+08:00;True|2022-01-26T19:19:29.4530523+08:00;True|2022-01-26T19:07:21.6474231+08:00;True|2022-01-26T18:25:42.2933291+08:00;True|2022-01-26T12:39:02.0149050+08:00;True|2022-01-26T12:13:43.9149452+08:00;True|2022-01-26T11:24:33.5742248+08:00;True|2022-01-26T08:51:10.8105076+08:00;True|2022-01-25T21:07:32.9069261+08:00;True|2022-01-24T01:35:12.3309466+08:00;True|2022-01-23T23:19:15.9702821+08:00;True|2022-01-23T21:50:41.6903353+08:00;True|2022-01-23T21:25:57.6084267+08:00;True|2022-01-23T21:16:10.1516535+08:00;True|2022-01-23T20:52:08.3745284+08:00;True|2022-01-23T18:19:32.2386502+08:00;True|2022-01-23T18:11:42.0830325+08:00;True|2022-01-23T18:00:01.3239547+08:00;True|2022-01-23T12:18:48.2466943+08:00;True|2022-01-22T00:48:50.4531647+08:00;True|2022-01-21T13:10:32.8173598+08:00;True|2022-01-21T13:04:01.6388059+08:00;True|2022-01-21T12:51:40.5304103+08:00;True|2022-01-21T12:44:06.3059885+08:00;True|2022-01-21T12:34:33.9314010+08:00;True|2022-01-21T11:39:20.1088577+08:00;True|2022-01-20T11:33:49.0516846+08:00;True|2022-01-20T10:02:12.0295471+08:00;True|2022-01-20T10:02:03.3535503+08:00;True|2022-01-19T23:56:18.7293193+08:00;True|2022-01-19T22:30:14.6986228+08:00;True|2022-01-19T22:15:08.8608795+08:00;True|2022-01-19T21:57:55.2295030+08:00;True|2022-01-19T13:50:37.8588759+08:00;True|2022-01-19T13:42:52.9761531+08:00;True|2022-01-19T00:26:36.9722917+08:00;True|2022-01-19T00:15:30.8583143+08:00;True|2022-01-18T21:19:30.6193048+08:00;True|2022-01-18T21:12:07.1453825+08:00;True|2022-01-18T20:35:27.3779956+08:00;True|2022-01-18T17:44:45.2318570+08:00;True|2022-01-18T14:45:29.0299640+08:00;True|2022-01-17T22:23:20.8214203+08:00;True|2022-01-17T21:49:15.7740045+08:00;True|2022-01-17T21:47:24.6997598+08:00;True|2022-01-17T21:44:00.1942787+08:00;True|2022-01-17T21:43:15.5992687+08:00;True|2022-01-17T21:33:16.8034756+08:00;True|2022-01-17T21:25:39.9909343+08:00;True|2022-01-17T21:13:03.9659338+08:00;True|2022-01-17T20:32:14.8869091+08:00;True|2022-01-17T19:01:46.5753686+08:00;True|2022-01-17T18:31:24.1032169+08:00;True|2022-01-17T18:21:39.2918684+08:00;True|2022-01-17T18:12:07.4859038+08:00;True|2022-01-17T18:09:26.6989718+08:00;True|2022-01-17T18:04:36.7564997+08:00;True|2022-01-17T17:57:44.7814863+08:00;True|2022-01-17T17:51:50.1516107+08:00;True|2022-01-17T17:39:29.2918799+08:00;True|2022-01-17T14:55:21.5859341+08:00;True|2022-01-17T14:38:06.5091500+08:00;True|2022-01-17T14:30:25.5378436+08:00;True|2022-01-16T19:15:24.5874858+08:00;True|2022-01-16T19:07:49.0613424+08:00;True|2022-01-16T16:10:47.3112741+08:00;False|2022-01-14T19:09:41.9296709+08:00;False|2022-01-14T18:56:11.0569808+08:00;False|2022-01-14T18:28:20.1376762+08:00;False|2022-01-14T18:27:30.8678130+08:00;False|2022-01-14T18:22:45.4436504+08:00;False|2022-01-14T18:19:37.0374753+08:00;False|2022-01-14T18:18:48.5868254+08:00;False|2022-01-14T18:14:02.5810257+08:00;False|2022-01-14T18:09:51.1730754+08:00;False|2022-01-14T18:09:17.8940754+08:00;True|2022-01-13T20:08:16.2937608+08:00;True|2022-01-13T20:07:30.1505466+08:00;True|2022-01-13T13:39:42.0146294+08:00;True|2022-01-13T13:38:07.5062471+08:00;True|2022-01-13T11:29:49.3751232+08:00;True|2022-01-13T11:05:43.9574142+08:00;True|2022-01-13T10:33:23.1921058+08:00;True|2022-01-12T20:38:16.9165651+08:00;True|2022-01-12T20:24:46.3779264+08:00;True|2022-01-12T20:03:06.5030626+08:00;True|2022-01-12T19:44:55.4294326+08:00;True|2022-01-12T12:58:45.9548600+08:00;True|2022-01-12T11:28:44.7797749+08:00;True|2022-01-11T18:07:30.9151356+08:00;True|2022-01-11T15:06:32.7301609+08:00;True|2022-01-11T09:27:00.1766442+08:00;True|2021-12-30T14:41:56.8541015+08:00;True|2021-12-30T13:45:00.6130694+08:00;True|2021-12-30T13:44:18.7370780+08:00;True|2021-12-30T13:36:52.8171136+08:00;True|2021-12-28T19:14:22.5979649+08:00;True|2021-12-28T13:13:39.3543252+08:00;True|2021-12-27T15:31:26.6037782+08:00;True|2021-12-27T15:28:54.4824480+08:00;True|2021-12-27T15:22:47.8436108+08:00;True|2021-12-27T15:04:37.0711590+08:00;True|2021-12-27T15:03:52.0932499+08:00;True|2021-12-27T15:03:33.0172733+08:00;True|2021-12-27T13:28:27.4252747+08:00;True|2021-12-25T19:38:33.6784042+08:00;True|2021-12-24T20:47:43.3471563+08:00;True|2021-12-24T20:14:57.6946814+08:00;True|2021-12-24T19:55:21.1843105+08:00;True|2021-12-24T19:49:54.6719726+08:00;True|2021-12-24T19:38:14.1180741+08:00;True|2021-12-22T13:51:37.1082523+08:00;True|2021-12-21T15:38:59.8015096+08:00;True|2021-12-21T15:29:54.8095063+08:00;False|2021-12-21T15:29:21.7006531+08:00;False|2021-12-21T15:16:18.2218025+08:00;False|2021-12-21T15:11:38.1215841+08:00;False|2021-12-21T15:08:27.0590078+08:00;True|2021-12-10T14:12:36.4065298+08:00;True|2021-12-10T13:54:03.4921778+08:00;True|2021-12-10T13:25:49.0439086+08:00;True|2021-12-10T13:19:58.9494477+08:00;True|2021-12-10T13:10:45.3929017+08:00;True|2021-12-10T11:06:53.2416794+08:00;True|2021-12-07T17:23:28.9380484+08:00;True|2021-12-07T17:13:52.4384814+08:00;True|2021-12-07T16:39:49.2020208+08:00;True|2021-12-07T15:18:20.9024533+08:00;True|2021-12-07T15:07:35.4428035+08:00;True|2021-12-07T15:01:02.0445043+08:00;True|2021-12-07T14:50:08.9019705+08:00;True|2021-12-07T14:34:50.4993666+08:00;False|2021-12-07T14:32:56.0408332+08:00;True|2021-12-06T17:11:41.4004606+08:00;True|2021-12-06T16:48:07.6029757+08:00;True|2021-12-06T13:46:35.9437718+08:00;True|2021-12-06T13:45:07.6622615+08:00;True|2021-12-06T11:25:04.3483155+08:00;True|2021-12-06T11:18:24.5804187+08:00;True|2021-11-22T16:27:05.4241947+08:00;True|2021-11-22T13:40:17.6768280+08:00;True|2021-11-19T16:15:19.9085104+08:00;True|2021-11-09T10:34:21.1623512+08:00;True|2021-11-07T16:57:59.7380254+08:00;True|2021-11-07T16:53:47.4198852+08:00;True|2021-11-07T16:42:05.5096826+08:00;True|2021-11-07T16:37:21.0729013+08:00;True|2021-11-05T20:51:17.6170717+08:00;True|2021-11-05T20:35:14.6250333+08:00;True|2021-11-05T19:30:19.8374158+08:00;True|2021-11-05T19:22:46.2276569+08:00;True|2021-11-05T19:20:30.8253213+08:00;True|2021-11-05T19:16:45.7553310+08:00;True|2021-11-05T19:16:00.4532689+08:00;True|2021-11-05T19:12:25.9022478+08:00;False|2021-11-05T19:11:26.5753529+08:00;True|2021-11-05T19:09:30.0085433+08:00;True|2021-11-05T18:48:19.9395153+08:00;True|2021-11-05T18:45:34.3437897+08:00;True|2021-11-05T18:43:43.4558159+08:00;True|2021-11-05T18:40:40.9948500+08:00;True|2021-11-05T18:34:18.4440455+08:00;True|2021-11-05T15:54:51.6037132+08:00;True|2021-10-28T16:27:53.9728270+08:00;True|2021-10-28T16:03:59.5629998+08:00;True|2021-10-28T08:51:04.2549186+08:00;True|2021-10-27T15:14:53.5506098+08:00;True|2021-10-27T15:00:44.9100320+08:00;True|2021-10-27T13:14:46.7921647+08:00;True|2021-10-27T11:24:49.4550753+08:00;True|2021-10-27T10:10:10.3545125+08:00;True|2021-10-27T10:02:24.9248610+08:00;True|2021-10-27T09:59:40.3795897+08:00;True|2021-10-27T09:56:30.6629207+08:00;True|2021-10-27T09:10:48.3883432+08:00;True|2021-10-27T09:03:31.9191991+08:00;True|2021-10-27T08:59:59.7651159+08:00;True|2021-10-27T08:36:11.8620997+08:00;True|2021-10-27T08:26:40.2533014+08:00;True|2021-10-26T09:19:35.5674748+08:00;True|2021-10-26T09:17:17.6900747+08:00;True|2021-10-26T09:14:32.3999220+08:00;True|2021-10-25T15:08:21.2581763+08:00;True|2021-10-25T10:01:57.8524903+08:00;True|2021-10-25T09:28:51.6294879+08:00;True|2021-10-25T09:25:50.3373336+08:00;True|2021-10-25T09:23:37.0203978+08:00;True|2021-10-25T09:18:23.3380608+08:00;True|2021-10-25T09:15:10.5292071+08:00;True|2021-10-25T08:56:30.4632027+08:00;True|2021-10-25T08:50:11.4697392+08:00;True|2021-10-22T13:46:49.7207066+08:00;True|2021-10-22T10:06:33.3130089+08:00;True|2021-10-20T14:32:10.1235516+08:00;True|2021-10-20T14:16:18.6496291+08:00;True|2021-10-20T14:08:49.2443715+08:00;True|2021-10-20T14:05:14.6847950+08:00;True|2021-10-20T13:30:21.6057636+08:00;True|2021-10-20T10:55:22.2151716+08:00;True|2021-10-19T10:42:13.4198267+08:00;True|2021-10-19T10:01:41.0018108+08:00;True|2021-10-19T09:59:11.2127619+08:00;True|2021-10-19T09:54:04.8472874+08:00;True|2021-10-15T11:19:15.5327495+08:00;True|2021-10-15T11:17:41.0686485+08:00;True|2021-10-15T11:12:11.8295042+08:00;True|2021-10-15T10:33:31.5670079+08:00;True|2021-10-15T10:27:45.0815146+08:00;True|2021-10-14T14:51:28.5331025+08:00;True|2021-10-14T14:37:28.3276051+08:00;True|2021-10-14T14:23:39.0606792+08:00;True|2021-10-14T14:21:03.8140347+08:00;True|2021-10-13T10:31:10.6628977+08:00;True|2021-10-13T10:12:24.4238027+08:00;True|2021-10-13T08:47:43.9314486+08:00;True|2021-10-12T14:07:18.6065183+08:00;True|2021-10-12T10:34:10.1682362+08:00;True|2021-10-12T10:27:14.3073332+08:00;True|2021-10-12T10:22:08.0004619+08:00;True|2021-10-12T10:21:03.0275378+08:00;True|2021-10-12T10:11:54.9812692+08:00;True|2021-10-11T16:59:07.3568342+08:00;True|2021-10-11T16:53:14.2016138+08:00;True|2021-10-11T16:21:35.0133775+08:00;True|2021-10-11T15:34:19.5731935+08:00;True|2021-10-11T15:31:07.5780983+08:00;True|2021-10-11T15:06:47.1145237+08:00;True|2021-10-11T15:03:25.5000280+08:00;True|2021-10-11T10:12:57.6416898+08:00;True|2021-10-09T10:15:17.9235165+08:00;True|2021-10-09T10:13:51.3318441+08:00;True|2021-10-09T10:01:21.6661542+08:00;True|2021-10-09T09:58:41.9225837+08:00;True|2021-10-08T14:56:49.7935800+08:00;True|2021-10-08T14:35:41.4490063+08:00;True|2021-10-08T14:02:42.6990656+08:00;True|2021-09-29T15:48:55.1547397+08:00;True|2021-09-29T15:48:23.5567191+08:00;True|2021-09-27T16:17:35.7180978+08:00;True|2021-09-27T15:51:50.4240134+08:00;True|2021-09-23T20:55:27.3554447+08:00;True|2021-09-23T14:14:44.0572017+08:00;True|2021-09-23T13:51:56.2344673+08:00;True|2021-09-23T10:46:16.7417007+08:00;True|2021-09-23T10:42:23.2117537+08:00;True|2021-09-22T15:21:22.9615672+08:00;True|2021-09-22T14:23:32.7907754+08:00;True|2021-09-22T13:48:03.4780947+08:00;True|2021-09-22T11:05:24.5249356+08:00;True|2021-09-22T10:00:19.0962943+08:00;True|2021-09-22T09:30:26.2686514+08:00;True|2021-09-17T11:22:34.5692792+08:00;True|2021-09-16T16:11:27.5372277+08:00;True|2021-09-16T14:53:40.8396557+08:00;True|2021-09-16T14:32:29.7905500+08:00;True|2021-09-16T14:26:46.2224219+08:00;True|2021-09-16T10:32:24.4244440+08:00;True|2021-09-15T11:10:35.3529360+08:00;True|2021-09-15T11:08:30.0857376+08:00;True|2021-09-15T11:05:56.7191571+08:00;True|2021-09-14T01:24:39.8041136+08:00;True|2021-09-14T01:05:01.1593327+08:00;True|2021-09-14T00:44:14.7233198+08:00;True|2021-09-13T23:48:19.4506233+08:00;True|2021-09-13T20:30:31.3243872+08:00;True|2021-09-13T19:45:35.9108911+08:00;False|2021-09-13T19:44:59.2779092+08:00;True|2021-09-13T18:09:22.4994381+08:00;True|2021-09-10T14:18:27.5788854+08:00;True|2021-09-09T15:57:01.7407207+08:00;True|2021-09-09T15:49:34.2598998+08:00;True|2021-09-09T11:32:10.7853024+08:00;True|2021-09-09T11:10:48.6840025+08:00;True|2021-09-09T10:35:37.3883078+08:00;True|2021-09-07T14:11:49.8497588+08:00;True|2021-09-07T13:34:48.4693349+08:00;True|2021-09-06T14:33:48.7549675+08:00;True|2021-09-03T16:27:51.1888520+08:00;True|2021-09-03T16:19:35.9003465+08:00;True|2021-09-03T15:46:28.1828032+08:00;True|2021-09-03T15:34:21.9362871+08:00;True|2021-09-03T11:24:49.8749819+08:00;True|2021-09-03T11:21:17.8373159+08:00;True|2021-09-03T11:16:53.2208136+08:00;True|2021-09-03T11:12:23.9063804+08:00;True|2021-09-03T09:11:09.2435721+08:00;True|2021-09-02T11:16:15.1370453+08:00;True|2021-09-02T10:35:39.1171879+08:00;True|2021-09-01T10:17:09.4536285+08:00;True|2021-09-01T09:46:28.4581776+08:00;True|2021-08-31T08:54:26.8588887+08:00;True|2021-08-31T08:39:08.3685693+08:00;True|2021-08-30T17:11:56.8438985+08:00;True|2021-08-30T15:59:42.0820292+08:00;True|2021-08-30T15:45:18.1868510+08:00;True|2021-08-30T14:56:08.3958863+08:00;True|2021-08-30T14:37:11.5379830+08:00;True|2021-08-30T14:35:34.8775934+08:00;True|2021-08-30T14:24:36.5111821+08:00;True|2021-08-30T10:05:49.6945200+08:00;True|2021-08-30T10:03:28.4064538+08:00;True|2021-08-30T10:00:16.8360929+08:00;True|2021-08-30T09:56:09.4434379+08:00;True|2021-08-30T09:55:36.1725334+08:00;True|2021-08-30T09:52:04.8600054+08:00;True|2021-08-30T09:47:46.4225655+08:00;True|2021-08-30T09:45:20.4894962+08:00;False|2021-08-27T17:17:34.2646751+08:00;False|2021-08-27T16:01:21.2791979+08:00;False|2021-08-27T15:58:06.9667160+08:00;False|2021-08-27T15:38:37.4818036+08:00;False|2021-08-27T15:21:02.8863114+08:00;False|2021-08-27T15:20:28.6828668+08:00;True|2021-08-26T16:00:44.3162145+08:00;True|2021-08-26T08:57:31.3842587+08:00;True|2021-08-23T08:43:41.1549775+08:00;True|2021-08-22T09:24:12.7210871+08:00;True|2021-08-22T09:19:53.8300229+08:00;True|2021-08-20T20:00:52.0140407+08:00;True|2021-08-20T19:40:14.7712765+08:00;True|2021-08-19T17:37:54.9748049+08:00;True|2021-08-19T17:20:11.0515687+08:00;True|2021-08-19T16:12:35.4392809+08:00;True|2021-08-19T16:06:50.6204587+08:00;True|2021-08-19T16:03:53.0824286+08:00;True|2021-08-19T15:56:01.3498791+08:00;True|2021-08-19T10:18:50.8113630+08:00;True|2021-08-19T09:58:06.2784035+08:00;True|2021-08-19T09:56:54.0619777+08:00;True|2021-08-19T00:32:08.3503093+08:00;True|2021-08-19T00:11:18.3150227+08:00;True|2021-08-19T00:02:49.4827718+08:00;True|2021-08-18T23:54:45.4845900+08:00;True|2021-08-18T23:39:51.6147977+08:00;True|2021-08-18T23:16:42.7214379+08:00;True|2021-08-18T22:38:57.4681929+08:00;True|2021-08-18T21:41:58.7560707+08:00;True|2021-08-18T21:11:52.2369249+08:00;True|2021-08-18T21:01:49.5669106+08:00;True|2021-08-18T20:47:46.5352688+08:00;False|2021-08-18T20:46:36.7956141+08:00;False|2021-08-18T20:46:01.0502138+08:00;True|2021-08-18T19:39:12.8186242+08:00;False|2021-08-18T19:38:12.6839708+08:00;True|2021-08-18T19:15:51.4626694+08:00;True|2021-08-18T16:07:20.4350886+08:00;True|2021-08-18T14:29:41.7171934+08:00;True|2021-08-18T14:20:36.3647361+08:00;True|2021-08-16T09:08:58.3617662+08:00;True|2021-08-15T20:44:29.9214083+08:00;True|2021-08-15T20:36:17.0958549+08:00;True|2021-08-15T20:29:34.3879773+08:00;True|2021-08-15T20:23:47.4052038+08:00;True|2021-08-15T15:01:19.7830862+08:00;True|2021-08-15T12:15:18.3433782+08:00;True|2021-08-13T20:59:11.3947130+08:00;True|2021-08-06T22:49:09.9538339+08:00;True|2021-08-06T22:35:19.0418168+08:00;True|2021-08-06T20:29:47.4241975+08:00;True|2021-08-06T14:08:16.4791827+08:00;True|2021-08-06T13:59:28.9874611+08:00;True|2021-08-06T13:57:34.3723977+08:00;True|2021-08-06T13:36:03.4816652+08:00;True|2021-08-06T12:22:52.5055221+08:00;True|2021-08-06T09:31:58.1272499+08:00;True|2021-08-06T09:26:51.6310039+08:00;True|2021-08-06T09:24:22.2899244+08:00;True|2021-08-06T09:06:30.6477912+08:00;True|2021-08-06T09:00:55.5101612+08:00;True|2021-08-06T08:49:59.9616490+08:00;True|2021-08-06T08:45:18.8586902+08:00;True|2021-08-05T20:09:25.8861998+08:00;True|2021-08-04T19:14:27.2396953+08:00;True|2021-08-04T19:11:47.5849093+08:00;True|2021-08-04T16:42:54.0149043+08:00;True|2021-08-04T15:02:11.5056561+08:00;True|2021-08-04T14:58:37.1435509+08:00;True|2021-08-04T14:55:34.7380132+08:00;True|2021-08-04T14:47:42.5933921+08:00;True|2021-08-04T14:45:17.9911874+08:00;True|2021-08-04T13:52:20.9601351+08:00;True|2021-08-04T09:48:28.8796992+08:00;True|2021-08-03T18:14:13.1894998+08:00;True|2021-08-03T17:45:35.1349721+08:00;True|2021-08-03T17:21:52.6028977+08:00;True|2021-08-03T17:20:35.4423020+08:00;True|2021-08-03T17:03:33.1667669+08:00;True|2021-08-03T17:01:54.2656787+08:00;True|2021-08-03T17:00:22.2778374+08:00;True|2021-08-03T16:56:58.8902582+08:00;True|2021-08-03T15:02:21.8601533+08:00;True|2021-08-03T14:57:34.0186758+08:00;True|2021-08-03T14:28:47.2242515+08:00;True|2021-08-03T14:22:22.4554236+08:00;True|2021-08-03T14:21:51.1339715+08:00;True|2021-08-03T13:37:33.9697131+08:00;True|2021-08-03T13:28:29.7591095+08:00;True|2021-08-03T11:35:09.5118324+08:00;True|2021-08-03T11:11:23.3051573+08:00;True|2021-08-02T13:14:42.3663755+08:00;True|2021-07-30T22:50:19.9749878+08:00;True|2021-07-30T22:49:31.2150970+08:00;True|2021-07-28T19:12:05.8381075+08:00;True|2021-07-28T18:59:45.4808797+08:00;True|2021-07-28T18:15:58.8301509+08:00;True|2021-07-28T18:04:54.8613546+08:00;True|2021-07-28T17:53:48.6225611+08:00;True|2021-07-28T17:42:50.9171563+08:00;True|2021-07-28T17:17:16.3137677+08:00;True|2021-07-28T17:11:46.8925200+08:00;True|2021-07-28T16:28:27.6823943+08:00;True|2021-07-28T16:23:00.3385836+08:00;True|2021-07-28T09:57:55.4237411+08:00;True|2021-07-28T08:38:29.6691541+08:00;True|2021-07-27T23:16:32.0331671+08:00;True|2021-07-27T23:06:08.1947249+08:00;True|2021-07-27T23:05:58.4619176+08:00;True|2021-07-27T18:42:09.5358261+08:00;True|2021-07-27T18:30:04.8532823+08:00;True|2021-07-27T18:29:43.5775092+08:00;True|2021-07-27T15:16:49.8356224+08:00;True|2021-07-27T15:05:27.8453220+08:00;True|2021-07-27T14:59:15.9519440+08:00;True|2021-07-27T09:23:32.6111337+08:00;True|2021-07-27T08:27:41.6395353+08:00;True|2021-07-27T08:25:56.7378296+08:00;True|2021-07-26T11:18:46.0856966+08:00;True|2021-07-26T11:18:02.0751924+08:00;True|2021-07-26T11:13:49.6285395+08:00;True|2021-07-21T21:08:25.9898902+08:00;True|2021-07-21T20:09:26.2258104+08:00;True|2021-07-13T16:17:25.8407435+08:00;True|2021-07-13T13:46:13.4309531+08:00;True|2021-07-13T12:29:04.5082461+08:00;True|2021-06-29T13:55:01.6864637+08:00;True|2021-06-29T10:38:52.2206472+08:00;True|2021-06-29T10:10:13.1540749+08:00;True|2021-06-28T14:37:56.3853273+08:00;False|2021-06-28T14:36:57.5726124+08:00;True|2021-06-25T14:17:57.5196108+08:00;True|2021-06-25T13:56:38.9522535+08:00;True|2021-06-24T19:38:32.8766933+08:00;True|2021-06-24T18:26:35.6118833+08:00;True|2021-06-24T18:02:52.8136877+08:00;True|2021-06-24T17:48:49.5851948+08:00;True|2021-06-24T17:45:46.7527572+08:00;True|2021-06-24T15:05:20.1592723+08:00;True|2021-06-23T16:18:15.6814625+08:00;True|2021-06-23T16:05:24.6112343+08:00;True|2021-06-23T15:14:08.2489658+08:00;True|2021-06-23T13:52:58.6029788+08:00;True|2021-06-22T16:11:20.4726923+08:00;True|2021-06-22T16:04:53.7231389+08:00;True|2021-06-22T15:50:59.2583262+08:00;True|2021-06-22T15:38:15.3016140+08:00;True|2021-06-22T15:34:42.9185543+08:00;True|2021-06-22T15:21:55.1419108+08:00;True|2021-06-22T15:07:21.5357494+08:00;True|2021-06-22T15:03:35.0535733+08:00;True|2021-06-22T14:54:47.8802969+08:00;True|2021-06-22T11:19:38.7303011+08:00;True|2021-06-22T08:53:49.2882695+08:00;True|2021-06-22T08:47:54.8286530+08:00;True|2021-06-21T16:27:19.3017700+08:00;True|2021-06-21T15:32:28.7237952+08:00;True|2021-06-21T12:34:02.6329555+08:00;True|2021-06-21T12:24:17.5427495+08:00;True|2021-06-21T10:47:30.6423502+08:00;True|2021-06-21T08:43:20.3026558+08:00;True|2021-06-19T15:10:06.8335499+08:00;True|2021-06-18T15:37:29.5009930+08:00;True|2021-06-18T13:46:35.6283432+08:00;True|2021-06-18T10:00:37.1474954+08:00;True|2021-06-18T09:55:21.8551780+08:00;True|2021-06-18T09:22:27.8432927+08:00;True|2021-06-17T11:17:43.2166430+08:00;True|2021-06-17T09:24:09.8350403+08:00;True|2021-06-16T16:10:47.8564888+08:00;True|2021-06-16T16:04:09.8286582+08:00;True|2021-06-16T15:12:29.9427169+08:00;True|2021-06-16T14:58:45.6801892+08:00;True|2021-06-16T14:46:01.6873221+08:00;True|2021-06-16T11:02:06.1272477+08:00;True|2021-06-16T09:33:56.0223915+08:00;True|2021-06-16T08:50:07.6995413+08:00;True|2021-06-16T08:28:38.7692635+08:00;True|2021-06-16T01:04:19.6282474+08:00;True|2021-06-16T01:03:50.5058323+08:00;False|2021-06-16T01:02:15.3819672+08:00;False|2021-06-16T01:01:38.6171098+08:00;True|2021-06-16T00:34:54.9902044+08:00;True|2021-06-15T23:55:36.2003828+08:00;True|2021-06-15T22:47:17.2192750+08:00;True|2021-06-15T22:42:41.1512585+08:00;True|2021-06-15T22:38:01.7390462+08:00;True|2021-06-15T22:14:11.2060782+08:00;True|2021-06-15T22:12:27.0615357+08:00;True|2021-06-15T22:07:59.9280871+08:00;True|2021-06-15T22:04:21.5051427+08:00;True|2021-06-15T21:25:55.0099814+08:00;True|2021-06-15T19:13:51.3494172+08:00;True|2021-06-15T19:02:17.6844742+08:00;True|2021-06-15T18:47:37.1629411+08:00;False|2021-06-15T18:47:11.0828111+08:00;True|2021-06-15T18:38:26.6620668+08:00;True|2021-06-15T18:33:45.2069831+08:00;True|2021-06-15T18:24:52.0550838+08:00;True|2021-06-15T18:19:43.6999796+08:00;True|2021-06-15T18:08:17.2464506+08:00;True|2021-06-15T18:03:51.3952624+08:00;True|2021-06-15T18:01:20.6141766+08:00;True|2021-06-15T17:59:04.4479416+08:00;True|2021-06-15T17:41:44.6389379+08:00;True|2021-06-15T17:39:03.1565124+08:00;True|2021-06-15T17:34:41.0634638+08:00;True|2021-06-15T17:33:50.4853178+08:00;True|2021-06-15T17:25:38.5914037+08:00;True|2021-06-15T17:22:21.3611360+08:00;True|2021-06-15T17:16:49.4970813+08:00;True|2021-06-15T17:05:28.9389484+08:00;True|2021-06-15T16:52:54.6372199+08:00;True|2021-06-15T16:51:23.9081030+08:00;True|2021-06-15T16:45:40.6017997+08:00;True|2021-06-15T16:41:05.0218887+08:00;True|2021-06-15T16:38:02.8541862+08:00;True|2021-06-15T16:22:10.3118721+08:00;True|2021-06-15T16:12:11.1552506+08:00;True|2021-06-15T15:33:42.0100494+08:00;True|2021-06-15T15:28:39.7145659+08:00;True|2021-06-15T15:15:02.7939125+08:00;True|2021-06-15T14:49:14.2300396+08:00;True|2021-06-15T14:42:28.1198064+08:00;True|2021-06-15T13:30:12.7997686+08:00;True|2021-06-15T13:25:37.7284670+08:00;True|2021-06-15T13:23:43.6207813+08:00;False|2021-06-15T13:23:19.4190232+08:00;True|2021-06-15T13:16:38.5062674+08:00;True|2021-06-15T13:03:31.2055635+08:00;True|2021-06-15T12:58:43.1653215+08:00;True|2021-06-15T12:39:22.8442109+08:00;True|2021-06-15T12:35:09.1288556+08:00;False|2021-06-15T12:33:50.0723143+08:00;True|2021-06-15T11:28:01.9733727+08:00;True|2021-06-15T11:26:26.6569392+08:00;True|2021-06-15T11:22:43.0366435+08:00;True|2021-06-15T11:07:50.1610580+08:00;True|2021-06-15T10:32:59.1925931+08:00;True|2021-06-10T17:16:57.9552310+08:00;True|2021-06-10T16:44:42.2731836+08:00;True|2021-06-10T14:39:27.6745737+08:00;True|2021-06-10T12:15:05.1524413+08:00;True|2021-06-09T18:19:24.1005606+08:00;True|2021-06-09T17:56:09.5646288+08:00;True|2021-06-09T13:34:06.1882292+08:00;True|2021-06-09T13:29:54.5924933+08:00;True|2021-06-09T13:25:55.7520662+08:00;True|2021-06-09T13:07:47.6686811+08:00;True|2021-06-09T12:59:41.2595048+08:00;True|2021-06-09T12:45:27.1305548+08:00;True|2021-06-09T12:29:52.1418191+08:00;True|2021-06-09T12:24:12.7610588+08:00;True|2021-06-09T11:31:25.3409568+08:00;True|2021-06-09T09:57:44.4387175+08:00;True|2021-06-09T09:54:26.5161307+08:00;True|2021-06-09T09:14:14.7288045+08:00;True|2021-06-09T09:10:25.1812139+08:00;True|2021-06-09T08:46:21.6585123+08:00;True|2021-06-08T19:56:55.7192062+08:00;True|2021-06-08T19:52:59.0326821+08:00;True|2021-06-08T19:49:13.6274217+08:00;True|2021-06-08T19:09:22.1038939+08:00;True|2021-06-08T15:28:41.3716247+08:00;True|2021-06-08T15:26:47.2621178+08:00;True|2021-06-08T13:49:45.8936617+08:00;True|2021-06-08T13:43:18.8115502+08:00;True|2021-06-08T10:04:06.2200731+08:00;True|2021-06-08T09:17:10.0470792+08:00;True|2021-06-08T08:44:37.4395849+08:00;True|2021-06-08T00:01:09.3745613+08:00;True|2021-06-07T23:49:31.5196888+08:00;True|2021-06-07T23:41:00.8017855+08:00;True|2021-06-07T23:21:53.1371134+08:00;True|2021-06-07T23:01:27.5712153+08:00;True|2021-06-07T22:36:12.9274014+08:00;True|2021-06-07T22:23:00.6545134+08:00;True|2021-06-07T17:44:47.5686346+08:00;True|2021-06-07T17:17:01.3431233+08:00;True|2021-06-07T16:53:28.9989587+08:00;True|2021-06-07T16:41:10.4975607+08:00;True|2021-06-07T14:21:06.8176477+08:00;True|2021-06-07T14:10:39.0355659+08:00;True|2021-06-07T12:34:31.4562732+08:00;True|2021-06-07T12:28:44.9629488+08:00;True|2021-06-07T10:30:26.9387988+08:00;True|2021-06-07T09:12:14.7658099+08:00;True|2021-06-07T08:37:19.6353792+08:00;True|2021-06-07T08:35:25.2031954+08:00;True|2021-06-05T07:07:32.0541266+08:00;True|2021-06-05T06:44:35.9475270+08:00;True|2021-06-05T06:37:27.4595197+08:00;True|2021-06-05T06:26:59.7663998+08:00;True|2021-06-05T05:43:12.8699318+08:00;True|2021-06-04T17:00:41.2426007+08:00;True|2021-06-04T16:08:03.8078072+08:00;True|2021-06-04T15:47:21.6412616+08:00;True|2021-06-04T15:21:02.4239800+08:00;True|2021-06-04T15:20:37.8641854+08:00;True|2021-06-04T13:38:51.5088395+08:00;True|2021-06-04T10:20:01.7784282+08:00;True|2021-06-04T10:13:50.3548857+08:00;True|2021-06-04T10:11:25.5017821+08:00;True|2021-06-04T10:09:51.6792228+08:00;True|2021-06-04T10:02:39.5851057+08:00;True|2021-06-04T09:30:40.4495494+08:00;True|2021-06-03T13:16:36.0317546+08:00;True|2021-06-03T13:12:47.0402047+08:00;True|2021-06-02T14:37:08.9683351+08:00;True|2021-06-02T14:10:15.7439829+08:00;True|2021-06-02T13:59:46.5841931+08:00;True|2021-06-02T13:25:18.7962660+08:00;True|2021-06-02T13:23:16.2261980+08:00;True|2021-06-01T15:37:32.2495085+08:00;True|2021-06-01T15:21:01.2856122+08:00;True|2021-06-01T15:13:36.7262365+08:00;True|2021-06-01T15:10:26.8905629+08:00;True|2021-06-01T14:56:17.5231551+08:00;True|2021-06-01T14:38:39.7895927+08:00;True|2021-06-01T14:23:12.3265287+08:00;True|2021-03-01T09:11:31.3226422+08:00;True|2021-05-26T14:54:56.9426462+08:00;True|2021-05-26T13:57:33.7780451+08:00;True|2021-05-26T13:39:02.8043358+08:00;True|2021-02-25T16:01:40.2917200+08:00;True|2021-02-25T15:49:46.6681205+08:00;True|2021-02-25T15:16:30.9372640+08:00;True|2021-05-25T13:10:21.7831921+08:00;True|2021-05-25T11:21:38.5224475+08:00;True|2021-05-25T11:12:52.0637175+08:00;True|2021-05-25T11:02:18.4164663+08:00;True|2021-05-25T10:52:06.8998521+08:00;True|2021-05-25T10:50:45.0929606+08:00;True|2021-05-25T10:45:54.1498313+08:00;True|2021-05-25T10:39:27.8602249+08:00;True|2021-05-25T10:34:49.5771162+08:00;True|2021-05-25T10:17:30.3009163+08:00;True|2021-05-25T10:14:03.8512581+08:00;True|2021-05-25T10:05:33.4343836+08:00;True|2021-05-24T17:01:23.3221168+08:00;True|2021-05-24T10:11:24.0197347+08:00;False|2021-05-24T10:11:07.6338995+08:00;</History>
   </PropertyGroup>
   <ItemGroup>
     <File Include="apiapp.json">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="bin/Antlr3.Runtime.dll">
       <publishTime>02/22/2013 16:43:40</publishTime>
@@ -20,12 +20,12 @@
     <File Include="bin/BLL.dll">
       <publishTime>11/09/2022 16:02:08</publishTime>
       <publishTime>11/02/2022 22:03:01</publishTime>
-      <publishTime>02/20/2024 10:40:19</publishTime>
+      <publishTime>03/05/2024 11:20:46</publishTime>
     </File>
     <File Include="bin/BLL.pdb">
       <publishTime>11/09/2022 16:02:08</publishTime>
       <publishTime>11/02/2022 22:03:01</publishTime>
-      <publishTime>02/20/2024 10:40:19</publishTime>
+      <publishTime>03/05/2024 11:20:46</publishTime>
     </File>
     <File Include="bin/BouncyCastle.Crypto.dll">
       <publishTime>12/18/2020 05:32:28</publishTime>
@@ -33,12 +33,12 @@
     <File Include="bin/DAL.dll">
       <publishTime>11/09/2022 16:02:06</publishTime>
       <publishTime>11/02/2022 22:02:58</publishTime>
-      <publishTime>02/20/2024 10:40:13</publishTime>
+      <publishTime>03/05/2024 11:20:45</publishTime>
     </File>
     <File Include="bin/DAL.pdb">
       <publishTime>11/09/2022 16:02:06</publishTime>
       <publishTime>11/02/2022 22:02:58</publishTime>
-      <publishTime>02/20/2024 10:40:13</publishTime>
+      <publishTime>03/05/2024 11:20:45</publishTime>
     </File>
     <File Include="bin/Dapper.dll">
       <publishTime>07/22/2016 22:52:40</publishTime>
@@ -46,12 +46,12 @@
     <File Include="bin/DBUtility.dll">
       <publishTime>11/02/2022 22:02:56</publishTime>
       <publishTime>11/15/2022 13:55:23</publishTime>
-      <publishTime>02/20/2024 10:40:03</publishTime>
+      <publishTime>03/05/2024 11:20:42</publishTime>
     </File>
     <File Include="bin/DBUtility.pdb">
       <publishTime>11/09/2022 16:01:58</publishTime>
       <publishTime>11/02/2022 22:02:56</publishTime>
-      <publishTime>02/20/2024 10:40:03</publishTime>
+      <publishTime>03/05/2024 11:20:42</publishTime>
     </File>
     <File Include="bin/Grpc.Core.Api.dll">
       <publishTime>03/22/2022 13:17:26</publishTime>
@@ -81,7 +81,7 @@
       <publishTime>08/25/2021 10:28:25</publishTime>
     </File>
     <File Include="bin/Kingdee.BOS.WebApi.Client.dll">
-      <publishTime>09/25/2023 09:42:56</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="bin/Kingdee.BOS.WebApi.FormService.dll">
       <publishTime>09/20/2018 19:23:20</publishTime>
@@ -107,15 +107,15 @@
     <File Include="bin/Model.dll">
       <publishTime>11/09/2022 16:02:01</publishTime>
       <publishTime>11/02/2022 22:02:56</publishTime>
-      <publishTime>02/20/2024 10:40:07</publishTime>
+      <publishTime>03/05/2024 11:20:42</publishTime>
     </File>
     <File Include="bin/Model.pdb">
       <publishTime>11/09/2022 16:02:01</publishTime>
       <publishTime>11/02/2022 22:02:56</publishTime>
-      <publishTime>02/20/2024 10:40:07</publishTime>
+      <publishTime>03/05/2024 11:20:42</publishTime>
     </File>
     <File Include="bin/Models/ClsSc_MouldScrapOutBillMain.cs">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="bin/Newtonsoft.Json.dll">
       <publishTime>08/04/2014 04:33:56</publishTime>
@@ -147,33 +147,33 @@
     <File Include="bin/Pub_Class.dll">
       <publishTime>11/09/2022 16:01:56</publishTime>
       <publishTime>11/02/2022 22:02:54</publishTime>
-      <publishTime>02/20/2024 10:39:59</publishTime>
+      <publishTime>03/05/2024 11:20:41</publishTime>
     </File>
     <File Include="bin/Pub_Class.pdb">
       <publishTime>11/09/2022 16:01:56</publishTime>
       <publishTime>11/02/2022 22:02:54</publishTime>
-      <publishTime>02/20/2024 10:39:59</publishTime>
+      <publishTime>03/05/2024 11:20:41</publishTime>
     </File>
     <File Include="bin/Pub_Control.dll">
       <publishTime>11/09/2022 16:01:57</publishTime>
       <publishTime>11/02/2022 22:02:55</publishTime>
-      <publishTime>02/20/2024 10:40:01</publishTime>
+      <publishTime>03/05/2024 11:20:41</publishTime>
     </File>
     <File Include="bin/Pub_Control.pdb">
       <publishTime>11/09/2022 16:01:57</publishTime>
       <publishTime>11/02/2022 22:02:55</publishTime>
-      <publishTime>02/20/2024 10:40:01</publishTime>
+      <publishTime>03/05/2024 11:20:41</publishTime>
     </File>
     <File Include="bin/RestSharp.dll">
       <publishTime>08/31/2012 06:22:50</publishTime>
     </File>
     <File Include="bin/SQLHelper.dll">
-      <publishTime>02/20/2024 10:40:01</publishTime>
+      <publishTime>03/05/2024 11:20:41</publishTime>
     </File>
     <File Include="bin/SQLHelper.pdb">
       <publishTime>11/09/2022 16:01:57</publishTime>
       <publishTime>11/02/2022 22:02:55</publishTime>
-      <publishTime>02/20/2024 10:40:01</publishTime>
+      <publishTime>03/05/2024 11:20:41</publishTime>
     </File>
     <File Include="bin/stdole.dll">
       <publishTime>05/09/2021 13:35:37</publishTime>
@@ -251,7 +251,7 @@
       <publishTime>11/28/2018 21:01:00</publishTime>
     </File>
     <File Include="bin/System.Web.Http.WebHost.dll">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="bin/System.Web.Mvc.dll">
       <publishTime>01/28/2015 12:02:18</publishTime>
@@ -286,7 +286,7 @@
     <File Include="bin/WebAPI.dll">
       <publishTime>11/14/2022 11:23:59</publishTime>
       <publishTime>11/02/2022 22:03:04</publishTime>
-      <publishTime>02/20/2024 10:40:34</publishTime>
+      <publishTime>03/05/2024 11:20:53</publishTime>
     </File>
     <File Include="bin/WebAPI.dll.config">
       <publishTime>12/15/2021 17:59:43</publishTime>
@@ -294,7 +294,7 @@
     <File Include="bin/WebAPI.pdb">
       <publishTime>11/14/2022 11:23:59</publishTime>
       <publishTime>11/02/2022 22:03:04</publishTime>
-      <publishTime>02/20/2024 10:40:34</publishTime>
+      <publishTime>03/05/2024 11:20:53</publishTime>
     </File>
     <File Include="bin/WebGrease.dll">
       <publishTime>07/18/2013 01:03:52</publishTime>
@@ -306,58 +306,58 @@
       <publishTime>11/29/2018 21:26:30</publishTime>
     </File>
     <File Include="Config/kdapi.config">
-      <publishTime>09/25/2023 09:42:56</publishTime>
+      <publishTime>04/06/2023 15:57:01</publishTime>
     </File>
     <File Include="Content/bootstrap.css">
-      <publishTime>09/25/2023 09:42:56</publishTime>
+      <publishTime>04/06/2023 15:57:01</publishTime>
     </File>
     <File Include="Content/bootstrap.min.css">
-      <publishTime>09/25/2023 09:42:56</publishTime>
+      <publishTime>04/06/2023 15:57:01</publishTime>
     </File>
     <File Include="Content/Site.css">
-      <publishTime>09/25/2023 09:42:56</publishTime>
+      <publishTime>04/06/2023 15:57:01</publishTime>
     </File>
     <File Include="DLL/BLL.dll">
-      <publishTime>09/25/2023 09:42:56</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="DLL/DAL.dll">
-      <publishTime>09/25/2023 09:42:56</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="DLL/DBUtility.dll">
-      <publishTime>09/25/2023 09:42:56</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="DLL/Kingdee.BOS.WebApi.Client.dll">
-      <publishTime>09/25/2023 09:42:56</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="DLL/Model.dll">
-      <publishTime>09/25/2023 09:42:56</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="DLL/Newtonsoft.Json.Net35.dll">
-      <publishTime>09/25/2023 09:42:56</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="DLL/Pub_Class.dll">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="DLL/Pub_Control.dll">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="DLL/SQLHelper.dll">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="fonts/glyphicons-halflings-regular.eot">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="fonts/glyphicons-halflings-regular.svg">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="fonts/glyphicons-halflings-regular.ttf">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="fonts/glyphicons-halflings-regular.woff">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Global.asax">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="grpc_csharp_ext.x64.dll">
       <publishTime>03/22/2022 13:17:22</publishTime>
@@ -366,7 +366,7 @@
       <publishTime>03/22/2022 13:17:22</publishTime>
     </File>
     <File Include="Index.html">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="libgrpc_csharp_ext.x64.dylib">
       <publishTime>03/19/2022 07:38:44</publishTime>
@@ -375,121 +375,121 @@
       <publishTime>03/19/2022 07:38:42</publishTime>
     </File>
     <File Include="libman.json">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>07/12/2023 08:14:21</publishTime>
     </File>
     <File Include="Metadata/deploymentTemplates/apiappconfig.azureresource.json">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="packages.config">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Views/Scripts/bootstrap.js">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Views/Scripts/bootstrap.min.js">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Views/Scripts/jquery-1.10.2.js">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Views/Scripts/jquery-1.10.2.min.js">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Views/Scripts/jquery-1.10.2.min.map">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Views/Scripts/jquery.validate.js">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Views/Scripts/jquery.validate.min.js">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Views/Scripts/jquery.validate.unobtrusive.js">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Views/Scripts/jquery.validate.unobtrusive.min.js">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Views/Scripts/modernizr-2.6.2.js">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Views/Shared/Error.cshtml">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Views/Shared/_Layout.cshtml">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Views/web.config">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Views/_ViewStart.cshtml">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Web References/WebS/ClsCLD_Customer_Model.datasource">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Web References/WebS/ClsCLD_Department_Model.datasource">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Web References/WebS/ClsCLD_Employee_Model.datasource">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Web References/WebS/ClsCLD_StockPlace_Model.datasource">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Web References/WebS/ClsCLD_Supplier_Model.datasource">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Web References/WebS/ClsCLD_Warehouse_Model.datasource">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Web References/WebS/ClsGy_BadReason_Model.datasource">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Web References/WebS/ClsGy_BarCodeBill_WMS_Model.datasource">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Web References/WebS/ClsGy_BarCodeBill_WMS_Model_View.datasource">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Web References/WebS/ClsGy_Customer_Model.datasource">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Web References/WebS/ClsGy_Department_Model.datasource">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Web References/WebS/ClsGy_Employee_Model.datasource">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Web References/WebS/ClsGy_Group_Model.datasource">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Web References/WebS/ClsGy_Item30JiTai_Model.datasource">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Web References/WebS/ClsGy_Source_Model.datasource">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Web References/WebS/ClsGy_StockPlace_Model.datasource">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Web References/WebS/ClsGy_Supplier_Model.datasource">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Web References/WebS/ClsGy_Warehouse_Model.datasource">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Web References/WebS/ClsKf_ICStockBill_Mould.datasource">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Web References/WebS/ClsKf_ICStockBill_WMS.datasource">
-      <publishTime>09/25/2023 09:42:57</publishTime>
+      <publishTime>04/06/2023 15:57:02</publishTime>
     </File>
     <File Include="Web References/WebS/Reference.cs">
       <publishTime>12/20/2021 13:19:56</publishTime>
     </File>
     <File Include="Web References/WebS/Reference.map">
-      <publishTime>11/01/2023 11:13:09</publishTime>
+      <publishTime>02/25/2024 21:39:05</publishTime>
     </File>
     <File Include="Web References/WebS/WebService1.disco">
       <publishTime>12/20/2021 13:19:56</publishTime>
@@ -503,7 +503,7 @@
     <File Include="Web.config">
       <publishTime>11/14/2022 11:24:08</publishTime>
       <publishTime>11/02/2022 22:03:20</publishTime>
-      <publishTime>02/20/2024 10:42:10</publishTime>
+      <publishTime>03/05/2024 11:21:16</publishTime>
     </File>
   </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/WebAPI/Service/LuBaoSevice.cs b/WebAPI/Service/LuBaoSevice.cs
index 953b68a..a46463f 100644
--- a/WebAPI/Service/LuBaoSevice.cs
+++ b/WebAPI/Service/LuBaoSevice.cs
@@ -584,7 +584,7 @@
             var dataSet = oCN.RunProcReturn("select top 1 * from h_v_Gy_PoStockStyle  where HItemID= " + HID + " ", "h_v_Gy_PoStockStyle");
             return dataSet;
         }
-
+        
         /// <summary>
         /// 渚涘簲鍟嗗垎绫绘牴鎹甶d鑾峰彇淇℃伅
         /// </summary>
@@ -605,6 +605,25 @@
         }
 
         /// <summary>
+        /// 椤圭洰璐圭敤鏍规嵁id鑾峰彇淇℃伅
+        /// </summary>
+        public static ApiResult<DataSet> GetGy_ProjectMoneyDetail(string HID)
+        {
+            if (string.IsNullOrEmpty(HID))
+                return new ApiResult<DataSet> { code = -1, msg = "ID涓嶈兘涓虹┖" };
+            var dataSet = GetGy_ProjectMoneyDb(HID);
+            if (dataSet == null || dataSet.Tables[0].Rows.Count == 0)
+                return new ApiResult<DataSet> { code = -1, msg = "涓嶅瓨鍦ㄩ」鐩垂鐢ㄦ暟鎹�" };
+            return new ApiResult<DataSet> { code = 1, msg = "鏌ヨ鎴愬姛", data = dataSet };
+        }
+        public static DataSet GetGy_ProjectMoneyDb(string HID)
+        {
+            SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); 
+             var dataSet = oCN.RunProcReturn("select top 1 * from h_v_Gy_ProjectMoney  where HItemID= " + HID + " ", "h_v_Gy_ProjectMoney");
+            return dataSet;
+        }
+
+        /// <summary>
         ///瀹㈡埛鍒嗙被鏍规嵁id鑾峰彇淇℃伅
         /// </summary>
         public static ApiResult<DataSet> GetGy_CusTypeDetail(string HID)
diff --git a/WebAPI/Web References/WebS/Reference.cs b/WebAPI/Web References/WebS/Reference.cs
index 14942a0..6a789db 100644
--- a/WebAPI/Web References/WebS/Reference.cs
+++ b/WebAPI/Web References/WebS/Reference.cs
@@ -42881,6 +42881,10 @@
         
         private long hOWNERIDField;
         
+        private long hStockInOrgIDField;
+        
+        private long hStockOutOrgIDField;
+        
         /// <remarks/>
         public long HSupID {
             get {
@@ -43100,6 +43104,26 @@
                 this.hOWNERIDField = value;
             }
         }
+        
+        /// <remarks/>
+        public long HStockInOrgID {
+            get {
+                return this.hStockInOrgIDField;
+            }
+            set {
+                this.hStockInOrgIDField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public long HStockOutOrgID {
+            get {
+                return this.hStockOutOrgIDField;
+            }
+            set {
+                this.hStockOutOrgIDField = value;
+            }
+        }
     }
     
     /// <remarks/>
diff --git a/WebAPI/Web References/WebS/WebService1.wsdl b/WebAPI/Web References/WebS/WebService1.wsdl
index aae9795..6de8fc9 100644
--- a/WebAPI/Web References/WebS/WebService1.wsdl
+++ b/WebAPI/Web References/WebS/WebService1.wsdl
@@ -9262,6 +9262,8 @@
               <s:element minOccurs="0" maxOccurs="1" name="HShipType" type="s:string" />
               <s:element minOccurs="1" maxOccurs="1" name="HSTOCKORGID" type="s:long" />
               <s:element minOccurs="1" maxOccurs="1" name="HOWNERID" type="s:long" />
+              <s:element minOccurs="1" maxOccurs="1" name="HStockInOrgID" type="s:long" />
+              <s:element minOccurs="1" maxOccurs="1" name="HStockOutOrgID" type="s:long" />
             </s:sequence>
           </s:extension>
         </s:complexContent>
diff --git a/WebAPI/Web.config b/WebAPI/Web.config
index bf1a871..d07132f 100644
--- a/WebAPI/Web.config
+++ b/WebAPI/Web.config
@@ -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.56.1:81/web/WebService1.asmx"/> -->	<!--闄堥洴闈欐湰鍦伴厤缃�-->
+		<!--<add key="sUrl" value="http://192.168.56.1:81/web/WebService1.asmx"/>--> 	<!--闄堥洴闈欐湰鍦伴厤缃�-->
 		<!--<add key="sUrl" value="http://192.168.1.57:8082/WEBS-WMS/WebService1.asmx"/>--> <!--涔濊彵-->
 		<!--<add key="sUrl" value="http://192.168.60.12/WEBS-WMS/WebService1.asmx"/>--> <!--涓帶-->
 		<add key="webpages:Version" value="3.0.0.0" />
diff --git a/WebAPI/WebAPI.csproj b/WebAPI/WebAPI.csproj
index 2915276..a433cfb 100644
--- a/WebAPI/WebAPI.csproj
+++ b/WebAPI/WebAPI.csproj
@@ -409,6 +409,8 @@
     <Compile Include="Controllers\CJGL\Cj_SingleStationController.cs" />
     <Compile Include="Controllers\Gy_MateMouldController.cs" />
     <Compile Include="Controllers\Gy_StdMinPickQtyController.cs" />
+    <Compile Include="Controllers\JHGL\Gy_MaterialTechParamBillController.cs" />
+    <Compile Include="Controllers\MJGL\Sc_MouldinventoryBillController.cs" />
     <Compile Include="Controllers\MJGL\Sc_MouldDotCheckRuleBillController.cs" />
     <Compile Include="Controllers\MJGL\Sc_MouldLifeUseBillController.cs" />
     <Compile Include="Controllers\MJGL\Sc_MouldScrapRequestBillController.cs" />
@@ -467,6 +469,7 @@
     <Compile Include="Controllers\Sc_ProcessMangementController.cs" />
     <Compile Include="Controllers\Sc_ProcessReportController.cs" />
     <Compile Include="Controllers\XSGL\Kf_ICStockBackBillController.cs" />
+    <Compile Include="Controllers\XSGL\Xs_CusBalanceReportController.cs" />
     <Compile Include="Controllers\XSGL\Xs_ReceivableBillController.cs" />
     <Compile Include="Controllers\XSGL\YS_ContactBalController.cs" />
     <Compile Include="Controllers\XSGL\Xs_SeOrderChangeBillController.cs" />
@@ -475,6 +478,8 @@
     <Compile Include="Controllers\CGGL\YF_PayMentBackBillController.cs" />
     <Compile Include="Controllers\CGGL\YF_PayMentBillController.cs" />
     <Compile Include="Controllers\XSGL\YS_ReceiveBackBillController.cs" />
+    <Compile Include="Controllers\XSGL\YF_PayMentOtherBillController.cs" />
+    <Compile Include="Controllers\XSGL\YS_ReceiveOtherBillController.cs" />
     <Compile Include="Controllers\XSGL\YS_ReceiveBillController.cs" />
     <Compile Include="Controllers\XSGL\Kf_SellOutBillController.cs" />
     <Compile Include="Controllers\浜轰簨绠$悊\鍏ヨ亴鐢宠\HR_EmpEngageRequestBillController.cs" />
@@ -631,6 +636,7 @@
     <Compile Include="DLL\ClsGy_AreaSet_Ctl.cs" />
     <Compile Include="DLL\ClsGy_CusType_Ctl.cs" />
     <Compile Include="DLL\ClsGy_StockCheckItem_Ctl.cs" />
+    <Compile Include="DLL\ClsGy_ProjectMoney_Ctl.cs" />
     <Compile Include="DLL\ClsGy_SupType_Ctl.cs" />
     <Compile Include="DLL\ClsGy_SellStyle_Ctl.cs" />
     <Compile Include="DLL\ClsGy_PostSkill_Ctl.cs" />
diff --git a/WebAPI/WebAPI.csproj.user b/WebAPI/WebAPI.csproj.user
index 315ec51..250cea5 100644
--- a/WebAPI/WebAPI.csproj.user
+++ b/WebAPI/WebAPI.csproj.user
@@ -9,7 +9,7 @@
     <WebStackScaffolding_IsAsyncSelected>False</WebStackScaffolding_IsAsyncSelected>
     <NameOfLastUsedPublishProfile>FolderProfile</NameOfLastUsedPublishProfile>
     <NameOfLastUsedPublishProfile>D:\Git\houduan\WebAPI\Properties\PublishProfiles\FolderProfile.pubxml</NameOfLastUsedPublishProfile>
-    <NameOfLastUsedPublishProfile>D:\涔斾竴璁¢噺鍗曚綅鍒楄〃\MES-WEB-API\WebAPI\Properties\PublishProfiles\FolderProfile.pubxml</NameOfLastUsedPublishProfile>
+    <NameOfLastUsedPublishProfile>D:\缃戠珯鍙戝竷\鍚庣浠g爜\MES-WEB-API\MES-WEB-API\WebAPI\Properties\PublishProfiles\FolderProfile.pubxml</NameOfLastUsedPublishProfile>
     <LastActiveSolutionConfig>Debug|Any CPU</LastActiveSolutionConfig>
     <UseIISExpress>false</UseIISExpress>
     <Use64BitIISExpress />

--
Gitblit v1.9.1