From 99bcfefdb20187000fc89a8f2654745ad2f0e371 Mon Sep 17 00:00:00 2001
From: llj <132905093+newwwwwwtree@users.noreply.github.com>
Date: 星期二, 12 五月 2026 15:39:09 +0800
Subject: [PATCH] 1

---
 WebAPI/Controllers/基础资料/工资基础资料/Gy_WorkTypeController.cs                     |    4 
 WebAPI/Controllers/JHGL/Gy_RoutingBillController.cs                         |    5 
 WebAPI/Controllers/MJGL/Sc_MouldUpperBillController.cs                      |   17 +
 WebAPI/Controllers/CGGL/Kf_POStockInBackBillController.cs                   |    4 
 WebAPI/Controllers/Open_PrintTemController.cs                               |    4 
 WebAPI/WebAPI.csproj.user                                                   |    8 
 SyntacticSugar/obj/Release/.NETFramework,Version=v4.5.AssemblyAttributes.cs |    4 
 WebAPI/App_Start/WebApiConfig.cs                                            |   14 
 WebAPI/Controllers/SBGL/Gy_FixCardBillController.cs                         |   11 
 WebAPI/Controllers/SCGL/Gy_SourceWorkStationSetController.cs                |    5 
 WebAPI/Properties/PublishProfiles/FolderProfile2.pubxml.user                |    6 
 WebAPI/Controllers/项目管理/工作周计划/PM_WorkTaskWeekBillController.cs              |   17 +
 WebAPI/Controllers/人事管理/入职申请/HR_EmpEngageRequestBillController.cs           |   15 +
 WebAPI/Controllers/MateOutController.cs                                     |    8 
 WebAPI/Controllers/BaseSet/Gy_BadReasonController.cs                        |   71 +++++
 WebAPI/Controllers/基础资料/基础资料/Gy_CardChangeTypeController.cs                 |    7 
 WebAPI/Controllers/SBGL/SBTC/Sb_EquipWorkBeforeCheckBillController.cs       |    2 
 WebAPI/Controllers/基础资料/工资基础资料/Gy_ClassTimePrjController.cs                 |    6 
 WebAPI/Controllers/XSGL/Xs_SeOrderChangeBillController.cs                   |    8 
 WebAPI/Controllers/XSGL/YS_ContactBalController.cs                          |    2 
 WebAPI/Controllers/XSGL/Xs_SellOutChangeBillController.cs                   |    8 
 WebAPI/Controllers/品质管理/产线返修平台/Sc_SourceLineRepairBillController.cs         |    7 
 WebAPI/Controllers/BLL/Xt_UserController.cs                                 |   18 +
 SyntacticSugar/obj/Release/SyntacticSugar.csproj.FileListAbsolute.txt       |    0 
 WebAPI/Controllers/CJGL/Sc_ProcessExchangeBillController.cs                 |    2 
 WebAPI/Controllers/WebAPIController.cs                                      |   81 ++++++
 WebAPI/Controllers/BaseSet/Gy_OrderLevController.cs                         |    5 
 WebAPI/Controllers/品质管理/客诉处理单/Crm_CustomerAppealBillController.cs           |    8 
 WebAPI/Controllers/条码管理/MouldController.cs                                  |    2 
 WebAPI/Controllers/基础资料/基础资料/Gy_CardStatusController.cs                     |   11 
 WebAPI/Controllers/基础资料/基础资料/Gy_CostCenterController.cs                     |    2 
 WebAPI/Controllers/项目管理/工作任务/PM_WorkTaskBillController.cs                   |    4 
 WebAPI/Controllers/BaseSet/Gy_PackTypeController.cs                         |    6 
 WebAPI/Controllers/基础资料/工资基础资料/Gy_ClassTimePrjGroupController.cs            |    6 
 WebAPI/Controllers/XSGL/Xs_ReceivableBillController.cs                      |   11 
 WebAPI/Controllers/XSGL/Xs_SeOrderBillController.cs                         |    2 
 WebAPI/Controllers/项目管理/业绩指标/PM_YearEmployeeMoneyBillController.cs          |    2 
 WebAPI/Controllers/XSGL/Xs_OutDoorBillController.cs                         |   11 
 WebAPI/Controllers/SBGL/Sb_EquipStatusChangeBillController.cs               |    5 
 WebAPI/Controllers/基础资料/工资基础资料/Gy_WorkPayTypeController.cs                  |    3 
 WebAPI/Controllers/项目管理/报表分析/PM_ReportController.cs                         |    2 
 WebAPI/Controllers/CJGL/Cj_SingleStationController.cs                       |    9 
 WebAPI/Controllers/XSGL/Xs_CusBalanceReportController.cs                    |    2 
 WebAPI/Controllers/基础资料/工资基础资料/Gy_ProcCommPriceController.cs                |    4 
 WebAPI/Controllers/基础资料/基础资料/Gy_WorkStationBillController.cs                |    3 
 WebAPI/Controllers/SBGL/Sb_EquipSparepartsBillController.cs                 |    4 
 WebAPI/Controllers/基础资料/基础资料/Gy_CardAddressController.cs                    |    7 
 WebAPI/Controllers/基础资料/基础资料/Gy_SOPBillController.cs                        |    5 
 WebAPI/Web.config                                                           |   13 
 WebAPI/Controllers/CJGL/Cj_StationEntrustInBillController.cs                |    6 
 WebAPI/Controllers/JHGL/Gy_MaterialTechParamBillController.cs               |   11 
 WebAPI/Controllers/SBGL/SBTC/Sb_EquipStockInCheckBillController.cs          |    3 
 WebAPI/Controllers/看板管理/KB_CSGLController.cs                                |    1 
 WebAPI/Controllers/项目管理/工程项目/PM_ProjectBillController.cs                    |   35 ++
 WebAPI/Controllers/基础资料/基础资料/Gy_TemporaryAreaController.cs                  |    7 
 WebAPI/Controllers/SCGL/Sc_ProductionReturnBillController.cs                |    4 
 WebAPI/Controllers/BaseSet/Gy_CurrencyController.cs                         |    3 
 WebAPI/Controllers/XSGL/Xs_CusRatingChangeBillController.cs                 |    9 
 WebAPI/Controllers/BaseSet/Gy_UnitController.cs                             |    3 
 WebAPI/Controllers/SBGL/Gy_EquipTypeController.cs                           |    3 
 WebAPI/Controllers/基础资料/基础资料/Gy_CardTypeController.cs                       |    7 
 WebAPI/Controllers/SBGL/Sb_EquipSparepartsChangeBillController.cs           |    4 
 WebAPI/Controllers/SCGL/Sc_ICMOChangeBillController.cs                      |    8 
 WebAPI/Controllers/CJGL/Mes_OrderProcFlowAllReportController.cs             |    2 
 /dev/null                                                                   |    0 
 WebAPI/Controllers/CJGL/Sc_ProcExchWWSendWorkBillController.cs              |    5 
 WebAPI/Controllers/MJGL/Sc_MouldinventoryBillController.cs                  |    9 
 WebAPI/Controllers/基础资料/基础资料/Gy_ScrapReasonController.cs                    |    9 
 WebAPI/Controllers/XSGL/YS_ReceiveOtherBillController.cs                    |    8 
 WebAPI/Controllers/XSGL/Xs_ExceptiveCheckRequestBillController.cs           |    8 
 WebAPI/Controllers/项目管理/项目阶段/Gy_ProjectStageController.cs                   |    4 
 WebAPI/Controllers/应收管理/YS_ReceiveReportController.cs                       |    3 
 WebAPI/Properties/PublishProfiles/CHZFolderProfile.pubxml.user              |   48 ++--
 73 files changed, 601 insertions(+), 60 deletions(-)

diff --git a/DAL/bin/Release/DAL.dll b/DAL/bin/Release/DAL.dll
deleted file mode 100644
index 0795a81..0000000
--- a/DAL/bin/Release/DAL.dll
+++ /dev/null
Binary files differ
diff --git a/DAL/bin/Release/DAL.pdb b/DAL/bin/Release/DAL.pdb
deleted file mode 100644
index 3045c20..0000000
--- a/DAL/bin/Release/DAL.pdb
+++ /dev/null
Binary files differ
diff --git a/DAL/bin/Release/DBUtility.dll b/DAL/bin/Release/DBUtility.dll
deleted file mode 100644
index b804ab0..0000000
--- a/DAL/bin/Release/DBUtility.dll
+++ /dev/null
Binary files differ
diff --git a/DAL/bin/Release/DBUtility.pdb b/DAL/bin/Release/DBUtility.pdb
deleted file mode 100644
index 50cfe86..0000000
--- a/DAL/bin/Release/DBUtility.pdb
+++ /dev/null
Binary files differ
diff --git a/DAL/bin/Release/Model.dll b/DAL/bin/Release/Model.dll
deleted file mode 100644
index c7bf10f..0000000
--- a/DAL/bin/Release/Model.dll
+++ /dev/null
Binary files differ
diff --git a/DAL/bin/Release/Model.pdb b/DAL/bin/Release/Model.pdb
deleted file mode 100644
index c59285f..0000000
--- a/DAL/bin/Release/Model.pdb
+++ /dev/null
Binary files differ
diff --git a/DAL/bin/Release/Pub_Class.dll b/DAL/bin/Release/Pub_Class.dll
deleted file mode 100644
index 70ca24c..0000000
--- a/DAL/bin/Release/Pub_Class.dll
+++ /dev/null
Binary files differ
diff --git a/DAL/bin/Release/Pub_Class.pdb b/DAL/bin/Release/Pub_Class.pdb
deleted file mode 100644
index e9ff551..0000000
--- a/DAL/bin/Release/Pub_Class.pdb
+++ /dev/null
Binary files differ
diff --git a/DAL/bin/Release/Pub_Control.dll b/DAL/bin/Release/Pub_Control.dll
deleted file mode 100644
index bece5dd..0000000
--- a/DAL/bin/Release/Pub_Control.dll
+++ /dev/null
Binary files differ
diff --git a/DAL/bin/Release/Pub_Control.pdb b/DAL/bin/Release/Pub_Control.pdb
deleted file mode 100644
index 6372a18..0000000
--- a/DAL/bin/Release/Pub_Control.pdb
+++ /dev/null
Binary files differ
diff --git a/DAL/bin/Release/SQLHelper.dll b/DAL/bin/Release/SQLHelper.dll
deleted file mode 100644
index 7566075..0000000
--- a/DAL/bin/Release/SQLHelper.dll
+++ /dev/null
Binary files differ
diff --git a/DAL/bin/Release/SQLHelper.pdb b/DAL/bin/Release/SQLHelper.pdb
deleted file mode 100644
index 7aa58b6..0000000
--- a/DAL/bin/Release/SQLHelper.pdb
+++ /dev/null
Binary files differ
diff --git a/DBUtility/bin/Release/DBUtility.dll b/DBUtility/bin/Release/DBUtility.dll
deleted file mode 100644
index b804ab0..0000000
--- a/DBUtility/bin/Release/DBUtility.dll
+++ /dev/null
Binary files differ
diff --git a/DBUtility/bin/Release/DBUtility.pdb b/DBUtility/bin/Release/DBUtility.pdb
deleted file mode 100644
index 50cfe86..0000000
--- a/DBUtility/bin/Release/DBUtility.pdb
+++ /dev/null
Binary files differ
diff --git a/DBUtility/bin/Release/Pub_Class.dll b/DBUtility/bin/Release/Pub_Class.dll
deleted file mode 100644
index 70ca24c..0000000
--- a/DBUtility/bin/Release/Pub_Class.dll
+++ /dev/null
Binary files differ
diff --git a/DBUtility/bin/Release/Pub_Class.pdb b/DBUtility/bin/Release/Pub_Class.pdb
deleted file mode 100644
index e9ff551..0000000
--- a/DBUtility/bin/Release/Pub_Class.pdb
+++ /dev/null
Binary files differ
diff --git a/DBUtility/bin/Release/Pub_Control.dll b/DBUtility/bin/Release/Pub_Control.dll
deleted file mode 100644
index bece5dd..0000000
--- a/DBUtility/bin/Release/Pub_Control.dll
+++ /dev/null
Binary files differ
diff --git a/DBUtility/bin/Release/Pub_Control.pdb b/DBUtility/bin/Release/Pub_Control.pdb
deleted file mode 100644
index 6372a18..0000000
--- a/DBUtility/bin/Release/Pub_Control.pdb
+++ /dev/null
Binary files differ
diff --git a/DBUtility/bin/Release/SQLHelper.dll b/DBUtility/bin/Release/SQLHelper.dll
deleted file mode 100644
index 7566075..0000000
--- a/DBUtility/bin/Release/SQLHelper.dll
+++ /dev/null
Binary files differ
diff --git a/DBUtility/bin/Release/SQLHelper.pdb b/DBUtility/bin/Release/SQLHelper.pdb
deleted file mode 100644
index 7aa58b6..0000000
--- a/DBUtility/bin/Release/SQLHelper.pdb
+++ /dev/null
Binary files differ
diff --git a/Model/bin/Release/DBUtility.dll b/Model/bin/Release/DBUtility.dll
deleted file mode 100644
index b804ab0..0000000
--- a/Model/bin/Release/DBUtility.dll
+++ /dev/null
Binary files differ
diff --git a/Model/bin/Release/DBUtility.pdb b/Model/bin/Release/DBUtility.pdb
deleted file mode 100644
index 50cfe86..0000000
--- a/Model/bin/Release/DBUtility.pdb
+++ /dev/null
Binary files differ
diff --git a/Model/bin/Release/Model.dll b/Model/bin/Release/Model.dll
deleted file mode 100644
index c7bf10f..0000000
--- a/Model/bin/Release/Model.dll
+++ /dev/null
Binary files differ
diff --git a/Model/bin/Release/Model.pdb b/Model/bin/Release/Model.pdb
deleted file mode 100644
index c59285f..0000000
--- a/Model/bin/Release/Model.pdb
+++ /dev/null
Binary files differ
diff --git a/Model/bin/Release/Pub_Class.dll b/Model/bin/Release/Pub_Class.dll
deleted file mode 100644
index 70ca24c..0000000
--- a/Model/bin/Release/Pub_Class.dll
+++ /dev/null
Binary files differ
diff --git a/Model/bin/Release/Pub_Class.pdb b/Model/bin/Release/Pub_Class.pdb
deleted file mode 100644
index e9ff551..0000000
--- a/Model/bin/Release/Pub_Class.pdb
+++ /dev/null
Binary files differ
diff --git a/Model/bin/Release/Pub_Control.dll b/Model/bin/Release/Pub_Control.dll
deleted file mode 100644
index bece5dd..0000000
--- a/Model/bin/Release/Pub_Control.dll
+++ /dev/null
Binary files differ
diff --git a/Model/bin/Release/Pub_Control.pdb b/Model/bin/Release/Pub_Control.pdb
deleted file mode 100644
index 6372a18..0000000
--- a/Model/bin/Release/Pub_Control.pdb
+++ /dev/null
Binary files differ
diff --git a/Model/bin/Release/SQLHelper.dll b/Model/bin/Release/SQLHelper.dll
deleted file mode 100644
index 7566075..0000000
--- a/Model/bin/Release/SQLHelper.dll
+++ /dev/null
Binary files differ
diff --git a/Model/bin/Release/SQLHelper.pdb b/Model/bin/Release/SQLHelper.pdb
deleted file mode 100644
index 7aa58b6..0000000
--- a/Model/bin/Release/SQLHelper.pdb
+++ /dev/null
Binary files differ
diff --git a/Pub_Class/bin/Release/Pub_Class.dll b/Pub_Class/bin/Release/Pub_Class.dll
deleted file mode 100644
index 70ca24c..0000000
--- a/Pub_Class/bin/Release/Pub_Class.dll
+++ /dev/null
Binary files differ
diff --git a/Pub_Class/bin/Release/Pub_Class.pdb b/Pub_Class/bin/Release/Pub_Class.pdb
deleted file mode 100644
index e9ff551..0000000
--- a/Pub_Class/bin/Release/Pub_Class.pdb
+++ /dev/null
Binary files differ
diff --git a/Pub_Class/bin/Release/SyntacticSugar.dll b/Pub_Class/bin/Release/SyntacticSugar.dll
deleted file mode 100644
index 874230f..0000000
--- a/Pub_Class/bin/Release/SyntacticSugar.dll
+++ /dev/null
Binary files differ
diff --git a/Pub_Class/bin/Release/SyntacticSugar.pdb b/Pub_Class/bin/Release/SyntacticSugar.pdb
deleted file mode 100644
index 32b7fb9..0000000
--- a/Pub_Class/bin/Release/SyntacticSugar.pdb
+++ /dev/null
Binary files differ
diff --git a/Pub_Control/bin/Release/Pub_Class.dll b/Pub_Control/bin/Release/Pub_Class.dll
deleted file mode 100644
index 70ca24c..0000000
--- a/Pub_Control/bin/Release/Pub_Class.dll
+++ /dev/null
Binary files differ
diff --git a/Pub_Control/bin/Release/Pub_Class.pdb b/Pub_Control/bin/Release/Pub_Class.pdb
deleted file mode 100644
index e9ff551..0000000
--- a/Pub_Control/bin/Release/Pub_Class.pdb
+++ /dev/null
Binary files differ
diff --git a/Pub_Control/bin/Release/Pub_Control.dll b/Pub_Control/bin/Release/Pub_Control.dll
deleted file mode 100644
index bece5dd..0000000
--- a/Pub_Control/bin/Release/Pub_Control.dll
+++ /dev/null
Binary files differ
diff --git a/Pub_Control/bin/Release/Pub_Control.pdb b/Pub_Control/bin/Release/Pub_Control.pdb
deleted file mode 100644
index 6372a18..0000000
--- a/Pub_Control/bin/Release/Pub_Control.pdb
+++ /dev/null
Binary files differ
diff --git a/SQLHelper/bin/Release/Pub_Class.dll b/SQLHelper/bin/Release/Pub_Class.dll
deleted file mode 100644
index 70ca24c..0000000
--- a/SQLHelper/bin/Release/Pub_Class.dll
+++ /dev/null
Binary files differ
diff --git a/SQLHelper/bin/Release/Pub_Class.pdb b/SQLHelper/bin/Release/Pub_Class.pdb
deleted file mode 100644
index e9ff551..0000000
--- a/SQLHelper/bin/Release/Pub_Class.pdb
+++ /dev/null
Binary files differ
diff --git a/SQLHelper/bin/Release/SQLHelper.dll b/SQLHelper/bin/Release/SQLHelper.dll
deleted file mode 100644
index 7566075..0000000
--- a/SQLHelper/bin/Release/SQLHelper.dll
+++ /dev/null
Binary files differ
diff --git a/SQLHelper/bin/Release/SQLHelper.pdb b/SQLHelper/bin/Release/SQLHelper.pdb
deleted file mode 100644
index 7aa58b6..0000000
--- a/SQLHelper/bin/Release/SQLHelper.pdb
+++ /dev/null
Binary files differ
diff --git a/SyntacticSugar/bin/Release/SyntacticSugar.dll b/SyntacticSugar/bin/Release/SyntacticSugar.dll
deleted file mode 100644
index 874230f..0000000
--- a/SyntacticSugar/bin/Release/SyntacticSugar.dll
+++ /dev/null
Binary files differ
diff --git a/SyntacticSugar/bin/Release/SyntacticSugar.pdb b/SyntacticSugar/bin/Release/SyntacticSugar.pdb
deleted file mode 100644
index 32b7fb9..0000000
--- a/SyntacticSugar/bin/Release/SyntacticSugar.pdb
+++ /dev/null
Binary files differ
diff --git a/SyntacticSugar/obj/Release/.NETFramework,Version=v4.5.AssemblyAttributes.cs b/SyntacticSugar/obj/Release/.NETFramework,Version=v4.5.AssemblyAttributes.cs
new file mode 100644
index 0000000..e5dc9b8
--- /dev/null
+++ b/SyntacticSugar/obj/Release/.NETFramework,Version=v4.5.AssemblyAttributes.cs
@@ -0,0 +1,4 @@
+// <autogenerated />
+using System;
+using System.Reflection;
+[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.5", FrameworkDisplayName = ".NET Framework 4.5")]
diff --git a/SyntacticSugar/obj/Release/SyntacticSugar.csproj.AssemblyReference.cache b/SyntacticSugar/obj/Release/SyntacticSugar.csproj.AssemblyReference.cache
deleted file mode 100644
index fea44e6..0000000
--- a/SyntacticSugar/obj/Release/SyntacticSugar.csproj.AssemblyReference.cache
+++ /dev/null
Binary files differ
diff --git a/SyntacticSugar/obj/Release/SyntacticSugar.csproj.CoreCompileInputs.cache b/SyntacticSugar/obj/Release/SyntacticSugar.csproj.CoreCompileInputs.cache
deleted file mode 100644
index bfb772c..0000000
--- a/SyntacticSugar/obj/Release/SyntacticSugar.csproj.CoreCompileInputs.cache
+++ /dev/null
@@ -1 +0,0 @@
-5dd9c82feb12f833c78ecebea7d9a46c99f29e3f
diff --git a/SyntacticSugar/obj/Release/SyntacticSugar.csproj.FileListAbsolute.txt b/SyntacticSugar/obj/Release/SyntacticSugar.csproj.FileListAbsolute.txt
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/SyntacticSugar/obj/Release/SyntacticSugar.csproj.FileListAbsolute.txt
diff --git a/SyntacticSugar/obj/Release/SyntacticSugar.dll b/SyntacticSugar/obj/Release/SyntacticSugar.dll
deleted file mode 100644
index 874230f..0000000
--- a/SyntacticSugar/obj/Release/SyntacticSugar.dll
+++ /dev/null
Binary files differ
diff --git a/SyntacticSugar/obj/Release/SyntacticSugar.pdb b/SyntacticSugar/obj/Release/SyntacticSugar.pdb
deleted file mode 100644
index 32b7fb9..0000000
--- a/SyntacticSugar/obj/Release/SyntacticSugar.pdb
+++ /dev/null
Binary files differ
diff --git a/WebAPI/App_Start/WebApiConfig.cs b/WebAPI/App_Start/WebApiConfig.cs
index 177b43a..d18c14e 100644
--- a/WebAPI/App_Start/WebApiConfig.cs
+++ b/WebAPI/App_Start/WebApiConfig.cs
@@ -31,16 +31,12 @@
                 defaults: new { id = RouteParameter.Optional }
             );
             // 娉ㄥ唽绛惧悕
-            //config.Filters.Add(new SignatureVerifyAttribute());
-            //// 鍏ㄥ眬鍚敤 JWT 璁よ瘉
-            //config.Filters.Add(new JwtAuthorizeAttribute());
+            // config.Filters.Add(new SignatureVerifyAttribute());
+            // 鍏ㄥ眬鍚敤 JWT 璁よ瘉
+            // config.Filters.Add(new JwtAuthorizeAttribute());
 
-            //// 鍚敤JWT鍝嶅簲鎷︽埅鍣紝鑷姩鍒锋柊JWT
-            //config.MessageHandlers.Add(new TokenAppendHandler());
-            
-
-
-
+            // 鍚敤JWT鍝嶅簲鎷︽埅鍣紝鑷姩鍒锋柊JWT
+            // config.MessageHandlers.Add(new TokenAppendHandler());
 
         }
     }
diff --git a/WebAPI/Controllers/BLL/Xt_UserController.cs b/WebAPI/Controllers/BLL/Xt_UserController.cs
index 797978a..84363dd 100644
--- a/WebAPI/Controllers/BLL/Xt_UserController.cs
+++ b/WebAPI/Controllers/BLL/Xt_UserController.cs
@@ -12,6 +12,8 @@
 using System.Web.Http;
 using WebAPI.Controllers.SCGL.鏃ヨ鍒掔鐞�;
 using WebAPI.Models;
+using WebAPI.Utility;
+
 namespace WebAPI.Controllers
 {
     public class Xt_UserController : ApiController
@@ -26,6 +28,7 @@
         #region[鐢ㄦ埛鍒楄〃鏌ヨ]
         [Route("Xt_User/list")]
         [HttpGet]
+        [Permission(HModName = "Xt_User_Query")]
         public object list(string sWhere,string user)
         {
             try
@@ -1131,6 +1134,7 @@
         #region  鐢ㄦ埛鍏宠仈浠撳簱鍒楄〃鏌ヨ
         [Route("Xt_User/Gy_UserStockRelationList")]
         [HttpGet]
+        [Permission(HModName = "Gy_UserStockRelation_Query")]
         public object Gy_UserStockRelationList(string sWhere, string user)
         {
             try
@@ -1184,6 +1188,7 @@
         /// </summary>
         [Route("Xt_User/Gy_UserStockRelationDrop")]
         [HttpGet]
+        [Permission(HModName = "Gy_UserStockRelation_Drop")]
         public object Gy_UserStockRelationDrop(string HItemID, string user)
         {
             try
@@ -1280,6 +1285,7 @@
         #region  鐢ㄦ埛鍏宠仈鐢ㄦ埛鍒楄〃鏌ヨ
         [Route("Xt_User/Gy_UserByUserList")]
         [HttpGet]
+        [Permission(HModName = "Gy_UserByUser_Query")]
         public object Gy_UserByUserList(string sWhere, string user)
         {
             try
@@ -1887,6 +1893,7 @@
         /// </summary>
         [Route("Xt_User/UserByWorkStationRelationList")]
         [HttpGet]
+        [Permission(HModName = "Gy_UserWorkStationList_Query")]
         public object UserByWorkStationRelationList(string sWhere, string user)
         {
             try
@@ -1946,6 +1953,7 @@
         #region 鐢ㄦ埛鍏宠仈宸ヤ綅淇濆瓨
         [Route("Xt_User/SaveUserByWorkStation")]
         [HttpPost]
+        [Permission(HModName = "Gy_UserWorkStationList_Edit")]
         public object SaveUserByWorkStation([FromBody] JObject msg)
         {
             var _value = msg["msg"].ToString();
@@ -2038,6 +2046,7 @@
         /// </summary>
         [Route("Xt_User/UserByWorkStationRelationList_Drop")]
         [HttpGet]
+        [Permission(HModName = "Gy_UserWorkStationList_Drop")]
         public object UserByWorkStationRelationList_Drop(string HInterID, string user)
         {
             try
@@ -2759,6 +2768,7 @@
         #region 鐢ㄦ埛鍏宠仈鐢ㄦ埛淇濆瓨
         [Route("Xt_User/SaveUserUser")]
         [HttpPost]
+        [Permission(HModName = "Gy_UserByUser_Edit")]
         public object SaveUserUser([FromBody] JObject msg)
         {
             var _value = msg["msg"].ToString();
@@ -2842,6 +2852,7 @@
         #region  鐢ㄦ埛鍏宠仈鐗╂枡鍒楄〃鏌ヨ
         [Route("Xt_User/Gy_UserMaterList")]
         [HttpGet]
+        [Permission(HModName = "Gy_UserMaterList_Query")]
         public object Gy_UserMaterList(string sWhere, string user)
         {
             try
@@ -2895,6 +2906,7 @@
         /// </summary>
         [Route("Xt_User/Gy_UserMaterRelationDrop")]
         [HttpGet]
+        [Permission(HModName = "Gy_UserMaterList_Drop")]
         public object Gy_UserMaterRelationDrop(string HItemID, string user)
         {
             try
@@ -2991,6 +3003,7 @@
         #region  鏍规嵁鐢ㄦ埛缂栫爜鏌ユ壘宸插垎閰嶅鎴峰垪琛�
         [Route("Xt_User/CustomerPlaylist")]
         [HttpGet]
+        [Permission(HModName = "Gy_UserRelationCustomer", Operate = "_Query")]
         public object CustomerPlaylist(string HUserID, string CurUserName)
         {
             try
@@ -3036,6 +3049,7 @@
         #region  鏌ヨ鎸囧畾鐢ㄦ埛鎵�鍏宠仈瀹㈡埛涓殑瀹㈡埛
         [Route("Xt_User/CustomerPlaylistFromUserCustomerList")]
         [HttpGet]
+        [Permission(HModName = "Gy_UserRelationCustomer", Operate = "_Query")]
         public object CustomerPlaylistFromUserCustomerList(string HUserID, string HCusNumber, string HCusName, string CurUserName)
         {
             try
@@ -3090,6 +3104,7 @@
         #region 鐢ㄦ埛鍏宠仈瀹㈡埛淇濆瓨
         [Route("Xt_User/SaveUserCustomer")]
         [HttpPost]
+        [Permission(HModName = "Gy_UserRelationCustomer", Operate = "_Edit")]
         public object SaveUserCustomer([FromBody] JObject msg)
         {
             var _value = msg["msg"].ToString();
@@ -4304,6 +4319,7 @@
         #region  鐢ㄦ埛鍏宠仈宸ュ簭鍒楄〃鏌ヨ
         [Route("Xt_User/UserProcesslist")]
         [HttpGet]
+        [Permission(HModName = "Gy_UserMaterList_Query")]
         public object UserProcesslist(string sWhere, string user)
         {
             try
@@ -4357,6 +4373,7 @@
         /// </summary>
         [Route("Xt_User/Gy_UserProcessDrop")]
         [HttpGet]
+        [Permission(HModName = "Gy_UserProcessList_Drop")]
         public object Gy_UserProcessDrop(string HItemID, string user)
         {
             try
@@ -4475,6 +4492,7 @@
         /// </summary>
         [Route("Xt_User/UserSupplierRelationList_Drop")]
         [HttpGet]
+        [Permission(HModName = "Gy_UserSupplierRelation_Delete")]
         public object UserSupplierRelationList_Drop(string HInterID, string user)
         {
             try
diff --git a/WebAPI/Controllers/BaseSet/Gy_BadReasonController.cs b/WebAPI/Controllers/BaseSet/Gy_BadReasonController.cs
index fdd6e47..44680f8 100644
--- a/WebAPI/Controllers/BaseSet/Gy_BadReasonController.cs
+++ b/WebAPI/Controllers/BaseSet/Gy_BadReasonController.cs
@@ -12,8 +12,11 @@
 using System.Web.Http;
 using WebAPI.Controllers.SCGL.鏃ヨ鍒掔鐞�;
 using WebAPI.Models;
+using WebAPI.Utility;
+
 namespace WebAPI.Controllers
 {
+    [Permission(HModName = "Gy_BadResult")]
     public class Gy_BadReasonController : ApiController
     {
         public DBUtility.ClsPub.Enum_BillStatus BillStatus;
@@ -28,6 +31,8 @@
         /// </summary>
         [Route("Gy_BadReason/list")]
         [HttpGet]
+        [Permission(HModName = "Gy_BadResult", Operate = "_Query")]
+
         public object list(string sWhere,string user)
         {
             try
@@ -95,6 +100,7 @@
         /// </summary>
         [Route("Gy_BadReason/list_1")]
         [HttpGet]
+        [Permission(HModName = "Gy_BadResult", Operate = "_Query")]
         public object list_1(string sWhere, string user,int HMaterID,string HBillType,string OrgID)
         {
             try
@@ -167,6 +173,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/AuditGy_BadReason")]
         [HttpGet]
+        [Permission(HModName = "Gy_BadResult", Operate = "_Check")]
         public object AuditGy_BadReason(int HInterID, int IsAudit, string CurUserName)
         {
             try
@@ -558,6 +565,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/StopGy_BadReason")]
         [HttpGet]
+        [Permission(HModName = "Gy_BadResult", Operate = "_Stop")]
         public object StopGy_BadReason(int HInterID, int IsStop, string CurUserName)
         {
             try
@@ -1735,6 +1743,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/Gy_InspectValueList")]
         [HttpGet]
+        [Permission(HModName = "Gy_InspectValue", Operate = "_Query")]
         public object Gy_InspectValueList(string sWhere, string user)
         {
             try
@@ -1788,6 +1797,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/AuditGy_InspectValue")]
         [HttpGet]
+        [Permission(HModName = "Gy_InspectValue", Operate = "_Check")]
         public object AuditGy_InspectValue(int HInterID, int IsAudit, string CurUserName)
         {
             try
@@ -1963,6 +1973,7 @@
 
         [Route("Gy_BadReason/AuditGy_InspectValue_BT")]
         [HttpGet]
+        [Permission(HModName = "Gy_InspectValue", Operate = "_Check")]
         public object AuditGy_InspectValue_BT(string HNumber, int IsAudit, string CurUserName, string HOrgID)
         {
             try
@@ -2147,6 +2158,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/StopGy_InspectValue")]
         [HttpGet]
+        [Permission(HModName = "Gy_InspectValue", Operate = "_Close")]
         public object StopGy_InspectValue(int HInterID, int IsStop, string CurUserName)
         {
             try
@@ -2329,6 +2341,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/Gy_InspectMethodList")]
         [HttpGet]
+        [Permission(HModName = "Gy_InspectMethod", Operate = "_Query")]
         public object Gy_InspectMethodList(string sWhere, string user)
         {
             try
@@ -2382,6 +2395,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/AuditGy_InspectMethod")]
         [HttpGet]
+        [Permission(HModName = "Gy_InspectMethod", Operate = "_Check")]
         public object AuditGy_InspectMethod(int HInterID, int IsAudit, string CurUserName)
         {
             try
@@ -2469,6 +2483,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/AuditGy_InspectMethod_BT")]
         [HttpGet]
+        [Permission(HModName = "Gy_InspectMethod", Operate = "_Check")]
         public object AuditGy_InspectMethod_BT(string HNumber, int IsAudit, string CurUserName, string HOrgID)
         {
             try
@@ -2563,6 +2578,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/StopGy_InspectMethod")]
         [HttpGet]
+        [Permission(HModName = "Gy_InspectMethod", Operate = "_Close")]
         public object StopGy_InspectMethod(int HInterID, int IsStop, string CurUserName)
         {
             try
@@ -2858,6 +2874,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/Gy_QualityStdList")]
         [HttpGet]
+        [Permission(HModName = "Gy_QualityStd", Operate = "_Query")]
         public object Gy_QualityStdList(string sWhere, string user)
         {
             try
@@ -2911,6 +2928,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/AuditGy_QualityStd")]
         [HttpGet]
+        [Permission(HModName = "Gy_QualityStd", Operate = "_Check")]
         public object AuditGy_QualityStd(int HInterID, int IsAudit, string CurUserName)
         {
             try
@@ -2997,6 +3015,7 @@
 
         [Route("Gy_BadReason/AuditGy_QualityStd_BT")]
         [HttpGet]
+        [Permission(HModName = "Gy_QualityStd", Operate = "_Check")]
         public object AuditGy_QualityStd_BT(string HNumber, int IsAudit, string CurUserName,string HOrgID)
         {
             try
@@ -3092,6 +3111,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/StopGy_QualityStd")]
         [HttpGet]
+        [Permission(HModName = "Gy_QualityStd", Operate = "_Close")]
         public object StopGy_QualityStd(int HInterID, int IsStop, string CurUserName)
         {
             try
@@ -3188,6 +3208,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/Gy_BadTypeList")]
         [HttpGet]
+        [Permission(HModName = "Gy_BadType")]
         public object Gy_BadTypeList(string sWhere, string user)
         {
             try
@@ -3241,6 +3262,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/AuditGy_BadType")]
         [HttpGet]
+        [Permission(HModName = "Gy_BadType", Operate = "_Check")]
         public object AuditGy_BadType(int HInterID, int IsAudit, string CurUserName)
         {
             try
@@ -3428,6 +3450,7 @@
 
         [Route("Gy_BadReason/AuditGy_BadType_BT")]
         [HttpGet]
+        [Permission(HModName = "Gy_BadType", Operate = "_Check")]
         public object AuditGy_BadType_BT(string HNumber, int IsAudit, string CurUserName,string HOrgID)
         {
             try
@@ -3622,6 +3645,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/StopGy_BadType")]
         [HttpGet]
+        [Permission(HModName = "Gy_BadType", Operate = "_Stop")]
         public object StopGy_BadType(int HInterID, int IsStop, string CurUserName)
         {
             try
@@ -3816,6 +3840,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/Gy_InspectInstruMentList")]
         [HttpGet]
+        [Permission(HModName = "Gy_InspectInstruMent", Operate = "_Query")]
         public object Gy_InspectInstruMentList(string sWhere, string user)
         {
             try
@@ -3869,6 +3894,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/AuditGy_InspectInstruMent")]
         [HttpGet]
+        [Permission(HModName = "Gy_InspectInstruMent", Operate = "_Check")]
         public object AuditGy_InspectInstruMent(int HInterID, int IsAudit, string CurUserName)
         {
             try
@@ -4043,6 +4069,7 @@
 
         [Route("Gy_BadReason/AuditGy_InspectInstruMent_BT")]
         [HttpGet]
+        [Permission(HModName = "Gy_InspectInstruMent", Operate = "_Check")]
         public object AuditGy_InspectInstruMent_BT(string HNumber, int IsAudit, string CurUserName, string HOrgID)
         {
             try
@@ -4227,6 +4254,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/StopGy_InspectInstruMent")]
         [HttpGet]
+        [Permission(HModName = "Gy_InspectInstruMent", Operate = "_Close")]
         public object StopGy_InspectInstruMent(int HInterID, int IsStop, string CurUserName)
         {
             try
@@ -4409,6 +4437,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/Gy_InspectBasisList")]
         [HttpGet]
+        [Permission(HModName = "Gy_InspectBasis", Operate = "_Query")]
         public object Gy_InspectBasisList(string sWhere, string user)
         {
             try
@@ -4462,6 +4491,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/AuditGy_InspectBasis")]
         [HttpGet]
+        [Permission(HModName = "Gy_InspectBasis", Operate = "_Check")]
         public object AuditGy_InspectBasis(int HInterID, int IsAudit, string CurUserName)
         {
             try
@@ -4548,6 +4578,7 @@
 
         [Route("Gy_BadReason/AuditGy_InspectBasis_BT")]
         [HttpGet]
+        [Permission(HModName = "Gy_InspectBasis", Operate = "_Check")]
         public object AuditGy_InspectBasis_BT(string HNumber, int IsAudit, string CurUserName, string HOrgID)
         {
             try
@@ -4643,6 +4674,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/StopGy_InspectBasis")]
         [HttpGet]
+        [Permission(HModName = "Gy_InspectBasis", Operate = "_Close")]
         public object StopGy_InspectBasis(int HInterID, int IsStop, string CurUserName)
         {
             try
@@ -4737,6 +4769,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/Gy_PostSkillList")]
         [HttpGet]
+        [Permission(HModName = "Gy_PostSkill_Query")]
         public object Gy_PostSkillList(string sWhere, string user)
         {
             try
@@ -4790,6 +4823,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/AuditGy_PostSkill")]
         [HttpGet]
+        [Permission(HModName = "Gy_PostSkill_Check")]
         public object AuditGy_PostSkill(int HInterID, int IsAudit, string CurUserName)
         {
             try
@@ -4986,6 +5020,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/StopGy_PostSkill")]
         [HttpGet]
+        [Permission(HModName = "Gy_PostSkill_Close")]
         public object StopGy_PostSkill(int HInterID, int IsStop, string CurUserName)
         {
             try
@@ -5180,6 +5215,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/Gy_PostList")]
         [HttpGet]
+        [Permission(HModName = "Gy_Post_Query")]
         public object Gy_PostList(string sWhere, string user)
         {
             try
@@ -5233,6 +5269,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/AuditGy_Post")]
         [HttpGet]
+        [Permission(HModName = "Gy_Post_Check")]
         public object AuditGy_Post(int HInterID, int IsAudit, string CurUserName)
         {
             try
@@ -5429,6 +5466,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/StopGy_Post")]
         [HttpGet]
+        [Permission(HModName = "Gy_Post_Close")]
         public object StopGy_Post(int HInterID, int IsStop, string CurUserName)
         {
             try
@@ -5621,6 +5659,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/Gy_StockMoveStyleList")]
         [HttpGet]
+        [Permission(HModName = "Gy_StockMoveStyle_Query")]
         public object Gy_StockMoveStyleList(string sWhere, string user)
         {
             try
@@ -5674,6 +5713,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/AuditGy_StockMoveStyle")]
         [HttpGet]
+        [Permission(HModName = "Gy_StockMoveStyle_Check")]
         public object AuditGy_StockMoveStyle(int HInterID, int IsAudit, string CurUserName)
         {
             try
@@ -5769,6 +5809,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/StopGy_StockMoveStyle")]
         [HttpGet]
+        [Permission(HModName = "Gy_StockMoveStyle_Close")]
         public object StopGy_StockMoveStyle(int HInterID, int IsStop, string CurUserName)
         {
             try
@@ -5863,6 +5904,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/Gy_StockInStyleList")]
         [HttpGet]
+        [Permission(HModName = "Gy_StockInStyle_Query")]
         public object Gy_StockInStyleList(string sWhere, string user)
         {
             try
@@ -5916,6 +5958,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/AuditGy_StockInStyle")]
         [HttpGet]
+        [Permission(HModName = "Gy_StockInStyle_Check")]
         public object AuditGy_StockInStyle(int HInterID, int IsAudit, string CurUserName)
         {
             try
@@ -6011,6 +6054,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/StopGy_StockInStyle")]
         [HttpGet]
+        [Permission(HModName = "Gy_StockInStyle_Close")]
         public object StopGy_StockInStyle(int HInterID, int IsStop, string CurUserName)
         {
             try
@@ -6105,6 +6149,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/Gy_StockOutStyleList")]
         [HttpGet]
+        [Permission(HModName = "Gy_StockOutStyle_Query")]
         public object Gy_StockOutStyleList(string sWhere, string user)
         {
             try
@@ -6158,6 +6203,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/AuditGy_StockOutStyle")]
         [HttpGet]
+        [Permission(HModName = "Gy_StockOutStyle_Check")]
         public object AuditGy_StockOutStyle(int HInterID, int IsAudit, string CurUserName)
         {
             try
@@ -6253,6 +6299,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/StopGy_StockOutStyle")]
         [HttpGet]
+        [Permission(HModName = "Gy_StockOutStyle_Close")]
         public object StopGy_StockOutStyle(int HInterID, int IsStop, string CurUserName)
         {
             try
@@ -6347,6 +6394,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/Gy_AreaSetList")]
         [HttpGet]
+        [Permission(HModName = "Gy_AreaSet_Query")]
         public object Gy_AreaSetList(string sWhere, string user)
         {
             try
@@ -6400,6 +6448,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/AuditGy_AreaSet")]
         [HttpGet]
+        [Permission(HModName = "Gy_AreaSet_Check")]
         public object AuditGy_AreaSet(int HInterID, int IsAudit, string CurUserName)
         {
             try
@@ -6495,6 +6544,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/StopGy_AreaSet")]
         [HttpGet]
+        [Permission(HModName = "Gy_AreaSet_Close")]
         public object StopGy_AreaSet(int HInterID, int IsStop, string CurUserName)
         {
             try
@@ -6589,6 +6639,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/Gy_SellStyleList")]
         [HttpGet]
+        [Permission(HModName = "Gy_SellStyle_Query")]
         public object Gy_SellStyleList(string sWhere, string user)
         {
             try
@@ -6642,6 +6693,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/AuditGy_SellStyle")]
         [HttpGet]
+        [Permission(HModName = "Gy_SellStyle_Check")]
         public object AuditGy_SellStyle(int HInterID, int IsAudit, string CurUserName)
         {
             try
@@ -6737,6 +6789,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/StopGy_SellStyle")]
         [HttpGet]
+        [Permission(HModName = "Gy_SellStyle_Close")]
         public object StopGy_SellStyle(int HInterID, int IsStop, string CurUserName)
         {
             try
@@ -6831,6 +6884,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/Gy_PoStockStyleList")]
         [HttpGet]
+        [Permission(HModName = "Gy_PoStockStyle_Query")]
         public object Gy_PoStockStyleList(string sWhere, string user)
         {
             try
@@ -6884,6 +6938,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/AuditGy_PoStockStyle")]
         [HttpGet]
+        [Permission(HModName = "Gy_PoStockStyle_Check")]
         public object AuditGy_PoStockStyle(int HInterID, int IsAudit, string CurUserName)
         {
             try
@@ -6979,6 +7034,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/StopGy_PoStockStyle")]
         [HttpGet]
+        [Permission(HModName = "Gy_PoStockStyle_Close")]
         public object StopGy_PoStockStyle(int HInterID, int IsStop, string CurUserName)
         {
             try
@@ -7073,6 +7129,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/Gy_SupTypeList")]
         [HttpGet]
+        [Permission(HModName = "Gy_SupType_Query")]
         public object Gy_SupTypeList(string sWhere, string user)
         {
             try
@@ -7126,6 +7183,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/AuditGy_SupType")]
         [HttpGet]
+        [Permission(HModName = "Gy_SupType_Check")]
         public object AuditGy_SupType(int HInterID, int IsAudit, string CurUserName)
         {
             try
@@ -7221,6 +7279,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/StopGy_SupType")]
         [HttpGet]
+        [Permission(HModName = "Gy_SupType_Close")]
         public object StopGy_SupType(int HInterID, int IsStop, string CurUserName)
         {
             try
@@ -7760,6 +7819,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/Gy_CusTypeList")]
         [HttpGet]
+        [Permission(HModName = "Gy_CusType_Query")]
         public object Gy_CusTypeList(string sWhere, string user)
         {
             try
@@ -7813,6 +7873,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/AuditGy_CusType")]
         [HttpGet]
+        [Permission(HModName = "Gy_CusType_Check")]
         public object AuditGy_CusType(int HInterID, int IsAudit, string CurUserName)
         {
             try
@@ -7908,6 +7969,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/StopGy_CusType")]
         [HttpGet]
+        [Permission(HModName = "Gy_CusType_Close")]
         public object StopGy_CusType(int HInterID, int IsStop, string CurUserName)
         {
             try
@@ -8003,6 +8065,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/Gy_StockCheckItemList")]
         [HttpGet]
+        [Permission(HModName = "Gy_StockCheckItem_Query")]
         public object Gy_StockCheckItemList(string sWhere, string user)
         {
             try
@@ -8056,6 +8119,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/AuditGy_StockCheckItem")]
         [HttpGet]
+        [Permission(HModName = "Gy_StockCheckItem_Check")]
         public object AuditGy_StockCheckItem(int HInterID, int IsAudit, string CurUserName)
         {
             try
@@ -8151,6 +8215,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/StopGy_StockCheckItem")]
         [HttpGet]
+        [Permission(HModName = "Gy_StockCheckItem_Close")]
         public object StopGy_StockCheckItem(int HInterID, int IsStop, string CurUserName)
         {
             try
@@ -8245,6 +8310,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/Gy_ProjectMoneyList")]
         [HttpGet]
+        [Permission(HModName = "Gy_ProjectMoney_Query")]
         public object Gy_ProjectMoneyList(string sWhere, string user)
         {
             try
@@ -8298,6 +8364,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/AuditGy_ProjectMoney")]
         [HttpGet]
+        [Permission(HModName = "Gy_ProjectMoney_Check")]
         public object AuditGy_ProjectMoney(int HInterID, int IsAudit, string CurUserName)
         {
             try
@@ -8490,6 +8557,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/StopGy_ProjectMoney")]
         [HttpGet]
+        [Permission(HModName = "Gy_ProjectMoney_Close")]
         public object StopGy_ProjectMoney(int HInterID, int IsStop, string CurUserName)
         {
             try
@@ -9614,6 +9682,7 @@
         #region 寮傚父绫诲瀷  鏌ヨ,瀹℃牳锛屽弽瀹℃牳锛岀鐢紝鍙嶇鐢�
         [Route("Gy_BadReason/Gy_ErrTypeList")]
         [HttpGet]
+        [Permission(HModName = "Gy_ErrType", Operate = "_Query")]
         public object Gy_ErrTypeList(string sWhere, string user)
         {
             try
@@ -9667,6 +9736,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/AuditGy_ErrType")]
         [HttpGet]
+        [Permission(HModName = "Gy_ErrType", Operate = "_Check")]
         public object AuditGy_ErrType(int HInterID, int IsAudit, string CurUserName)
         {
             try
@@ -9760,6 +9830,7 @@
         /// <returns></returns>
         [Route("Gy_BadReason/StopGy_ErrType")]
         [HttpGet]
+        [Permission(HModName = "Gy_ErrType", Operate = "_Stop")]
         public object StopGy_ErrType(int HInterID, int IsStop, string CurUserName)
         {
             try
diff --git a/WebAPI/Controllers/BaseSet/Gy_CurrencyController.cs b/WebAPI/Controllers/BaseSet/Gy_CurrencyController.cs
index 4ad4847..25e38f2 100644
--- a/WebAPI/Controllers/BaseSet/Gy_CurrencyController.cs
+++ b/WebAPI/Controllers/BaseSet/Gy_CurrencyController.cs
@@ -9,6 +9,7 @@
 using System.Web.Http;
 using WebAPI.Models;
 using WebAPI.Service;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers
 {
@@ -334,6 +335,7 @@
         /// <returns></returns>
         [Route("Gy_Currency/AuditGy_Currency")]
         [HttpGet]
+        [Permission(HModName = "Gy_Currency", Operate = "_Check")]
         public object AuditGy_Currency(int HInterID, int IsAudit, string CurUserName)
         {
             try
@@ -429,6 +431,7 @@
         /// <returns></returns>
         [Route("Gy_Currency/StopGy_Currency")]
         [HttpGet]
+        [Permission(HModName = "Gy_Currency", Operate = "_Stop")]
         public object StopGy_Currency(int HInterID, int IsStop, string CurUserName)
         {
             try
diff --git a/WebAPI/Controllers/BaseSet/Gy_OrderLevController.cs b/WebAPI/Controllers/BaseSet/Gy_OrderLevController.cs
index 0ff8ea1..be8d092 100644
--- a/WebAPI/Controllers/BaseSet/Gy_OrderLevController.cs
+++ b/WebAPI/Controllers/BaseSet/Gy_OrderLevController.cs
@@ -9,7 +9,8 @@
 using System.Net.Http;
 using System.Web.Http;
 using WebAPI.Models;
- 
+using WebAPI.Utility;
+
 namespace WebAPI.Controllers.BaseSet
 {
     public class Gy_OrderLevController : ApiController
@@ -100,6 +101,7 @@
         /// <returns></returns>
         [Route("Gy_OrderLev/AuditGy_OrderLev")]
         [HttpGet]
+        [Permission(HModName = "Gy_OrderLev", Operate = "_Check")]
         public object AuditGy_OrderLev(int HInterID, int IsAudit, string CurUserName)
         {
             try
@@ -195,6 +197,7 @@
         /// <returns></returns>
         [Route("Gy_OrderLev/StopGy_OrderLev")]
         [HttpGet]
+        [Permission(HModName = "Gy_OrderLev", Operate = "_Stop")]
         public object StopGy_OrderLev(int HInterID, int IsStop, string CurUserName)
         {
             try
diff --git a/WebAPI/Controllers/BaseSet/Gy_PackTypeController.cs b/WebAPI/Controllers/BaseSet/Gy_PackTypeController.cs
index bd21e4a..dc7ce57 100644
--- a/WebAPI/Controllers/BaseSet/Gy_PackTypeController.cs
+++ b/WebAPI/Controllers/BaseSet/Gy_PackTypeController.cs
@@ -8,9 +8,11 @@
 using System.Data.SqlClient;
 using System.Web.Http;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers
 {
+    [Permission(HModName = "Gy_PackType")]
     public class Gy_PackTypeController : ApiController
     {
         public DBUtility.ClsPub.Enum_BillStatus BillStatus;
@@ -84,6 +86,7 @@
         /// </summary>
         [Route("Gy_PackType/ModifyByID")]
         [HttpPost]
+        [Permission(HModName = "Gy_PackType", Operate = "_Edit")]
         public object ModifyByID([FromBody] JObject oMain)
         {
             try
@@ -259,6 +262,7 @@
         /// <returns></returns>
         [Route("Gy_PackType/AuditGy_PackType")]
         [HttpGet]
+        [Permission(HModName = "Gy_PackType", Operate = "_Check")]
         public object AuditGy_PackType(int HInterID, int IsAudit, string CurUserName)
         {
             try
@@ -357,6 +361,7 @@
         /// <returns></returns>
         [Route("Gy_PackType/StopGy_PackType")]
         [HttpGet]
+        [Permission(HModName = "Gy_PackType", Operate = "_Stop")]
         public object StopGy_PackType(int HInterID, int IsStop, string CurUserName)
         {
             try
@@ -448,6 +453,7 @@
         /// <returns></returns>
         [Route("DeltetGy_PackType")]
         [HttpGet]
+        [Permission(HModName = "Gy_PackType", Operate = "_Delete")]
         public object DeltetGy_PackType(string HItemID, string user)
         {
             DataSet ds;
diff --git a/WebAPI/Controllers/BaseSet/Gy_UnitController.cs b/WebAPI/Controllers/BaseSet/Gy_UnitController.cs
index 0e2062e..f87a607 100644
--- a/WebAPI/Controllers/BaseSet/Gy_UnitController.cs
+++ b/WebAPI/Controllers/BaseSet/Gy_UnitController.cs
@@ -12,6 +12,7 @@
 using WebAPI.Controllers.SCGL.鏃ヨ鍒掔鐞�;
 using WebAPI.Models;
 using WebAPI.Service;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers
 {
@@ -91,6 +92,7 @@
 
         [Route("Gy_Unit/AuditGy_Unit")]
         [HttpGet]
+        [Permission(HModName = "Gy_Unit", Operate = "_Check")]
         public object AuditGy_Unit(string HInterID, int Type, string user)
         {
             try
@@ -192,6 +194,7 @@
 
         [Route("Gy_Unit/JY_Json")]
         [HttpGet]
+        [Permission(HModName = "Gy_Unit", Operate = "_Stop")]
         public object JY_Json(long HItemID)
         {
             try
diff --git a/WebAPI/Controllers/CGGL/Kf_POStockInBackBillController.cs b/WebAPI/Controllers/CGGL/Kf_POStockInBackBillController.cs
index 6ea0851..9913948 100644
--- a/WebAPI/Controllers/CGGL/Kf_POStockInBackBillController.cs
+++ b/WebAPI/Controllers/CGGL/Kf_POStockInBackBillController.cs
@@ -9,6 +9,7 @@
 using System.Data.SqlClient;
 using System.Web.Http;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers
 {
@@ -407,6 +408,7 @@
         /// <returns></returns>
         [Route("Kf_POStockInBackBill/DeltetKf_POStockInBackBill")]
         [HttpGet]
+        [Permission(HModName = "Kf_POStockInBackBill_Delete")]
         public object DeltetKf_POStockInBackBill(string HInterID, string user)
         {
             try
@@ -770,6 +772,7 @@
         #region 閲囪喘閫�鏂欏崟 鍏抽棴/鍙嶅叧闂姛鑳�
         [Route("Kf_POStockInBackBill/CloseKf_POStockInBackBill")]
         [HttpGet]
+        [Permission(HModName = "Kf_POStockInBackBill", Operate = "_Close")]
         public object CloseKf_POStockInBackBill(string HInterID, int Type, string user)
         {
             try
@@ -917,6 +920,7 @@
         #region 閲囪喘閫�鏂欏崟 浣滃簾/鍙嶄綔搴熷姛鑳�
         [Route("Kf_POStockInBackBill/DropKf_POStockInBackBill")]
         [HttpGet]
+        [Permission(HModName = "Kf_POStockInBackBill", Operate = "_Drop")]
         public object DropKf_POStockInBackBill(string HInterID, int Type, string user)
         {
             try
diff --git a/WebAPI/Controllers/CJGL/Cj_SingleStationController.cs b/WebAPI/Controllers/CJGL/Cj_SingleStationController.cs
index c2b50e0..6768085 100644
--- a/WebAPI/Controllers/CJGL/Cj_SingleStationController.cs
+++ b/WebAPI/Controllers/CJGL/Cj_SingleStationController.cs
@@ -9,6 +9,7 @@
 using System.Web.Http;
 using WebAPI.Controllers.SCGL;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers.CJGL
 {
@@ -1613,6 +1614,7 @@
         #region  宸ュ簭鍗曞搧杩斾慨鍙� 鎵爜鏌ヨ
         [Route("Cj_SingleStation/HFBardCodeList")]
         [HttpGet]
+        [Permission(HModName = "Sc_SourceLineRepairBill", Operate = "_Query")]
         public object HFBardCodeList(string HBarCode, string user)
         {
             try
@@ -1689,6 +1691,8 @@
         #region  宸ュ簭鍗曞搧杩斾慨鍙� 鏌ヨ鍏抽敭浠舵竻鍗�
         [Route("Cj_SingleStation/AssemHBardCodeBomList")]
         [HttpGet]
+        [Permission(HModName = "Sc_SourceLineRepairBill", Operate = "_Query")]
+
         public object AssemHBardCodeBomList(int HProcExchInterID, int HProcExchEntryID, string HMaterSN, string user)
         {
             try
@@ -1737,6 +1741,7 @@
         #region 宸ュ簭鍗曞搧杩斾慨鍙� 鑾峰彇琛ㄦ牸鏁版嵁
         [Route("Cj_SingleStation/ProcessItemRepair")]
         [HttpGet]
+        [Permission(HModName = "Sc_SourceLineRepairBill", Operate = "_Query")]
         public object ProcessItemRepair( string sWhere, string user)
         {
             try
@@ -1785,6 +1790,7 @@
         #region 宸ュ簭鍗曞搧杩斾慨鍙� 淇濆瓨
         [Route("Cj_SingleStation/HFXAddRepairBill")]
         [HttpPost]
+        [Permission(HModName = "Sc_SourceLineRepairBill", Operate = "_Edit")]
         public object HFXAddRepairBill([FromBody] JObject sMainSub)
         {
             try
@@ -1937,6 +1943,7 @@
         #region 宸ュ簭鍗曞搧杩斾慨鍙� 鍒犻櫎杩斾慨鍗�
         [Route("Cj_SingleStation/ProcessItemRepairDel")]
         [HttpGet]
+        [Permission(HModName = "Sc_SourceLineRepairBill", Operate = "_Drop")]
         public object ProcessItemRepairDel(int HInterID,int HEntryID,string user,string HBill)
         {
             try
@@ -2005,6 +2012,7 @@
         #region  宸ュ簭鍗曞搧杩斾慨鍙� 鍒犻櫎鍏抽敭浠舵竻鍗�
         [Route("Cj_SingleStation/DelBomTempList")]
         [HttpGet]
+        [Permission(HModName = "Sc_SourceLineRepairBill", Operate = "_Drop")]
         public object DelBomTempList(int HInterID, int HEntryID, string user)
         {
             try
@@ -2058,6 +2066,7 @@
         #region 宸ュ簭鍗曞搧杩斾慨鍙�--閰嶄欢鏇存崲 鏌ヨ鏇存崲璁板綍
         [Route("Cj_SingleStation/Sc_SourceLineRepairBillSub_MaterList")]
         [HttpGet]
+        [Permission(HModName = "Sc_SourceLineRepairBill", Operate = "_Query")]
         public object Sc_SourceLineRepairBillSub_MaterList(string sWhere, string user)
         {
             try
diff --git a/WebAPI/Controllers/CJGL/Cj_StationEntrustInBillController.cs b/WebAPI/Controllers/CJGL/Cj_StationEntrustInBillController.cs
index 524c315..6f49c39 100644
--- a/WebAPI/Controllers/CJGL/Cj_StationEntrustInBillController.cs
+++ b/WebAPI/Controllers/CJGL/Cj_StationEntrustInBillController.cs
@@ -10,6 +10,7 @@
 using System.Web.Http;
 using WebAPI.Models;
 using Model;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers
 {
@@ -989,6 +990,7 @@
         #region  璇曟牱璁板綍 鏌ヨ鍒楄〃
         [Route("MES_SampleRecordBill_PDA/SampleRecordList")]
         [HttpGet]
+        [Permission(HModName = "QC_TestSampleCheckBill", Operate = "_Query")]
         public object SampleRecordList(string sWhere,string user)
         {
             try
@@ -1040,6 +1042,7 @@
         #region 璇曟牱璁板綍鏂板淇濆瓨
         [Route("MES_SampleRecordBill_PDA/SampleRecordAddBill")]
         [HttpPost]
+        [Permission(HModName = "QC_TestSampleCheckBill", Operate = "_Edit")]
         public object SampleRecordAddBill([FromBody] JObject oMain)
         {
             var _value = oMain["oMain"].ToString();
@@ -1150,6 +1153,7 @@
         #region 璇曟牱璁板綍 瀹℃牳/鍙嶅鏍稿姛鑳�
         [Route("MES_SampleRecordBill_PDA/CheckSampleRecordBill")]
         [HttpGet]
+        [Permission(HModName = "QC_TestSampleCheckBill", Operate = "_Check")]
         public object CheckSampleRecordBill(string HInterID, int Type, string user)
         {
             try
@@ -1242,6 +1246,7 @@
         #region 璇曟牱璁板綍 鍒犻櫎鍔熻兘
         [Route("MES_SampleRecordBill_PDA/DelSampleRecordBill")]
         [HttpGet]
+        [Permission(HModName = "QC_TestSampleCheckBill", Operate = "_Detete")]
         public object DelSampleRecordBill(Int64 lngBillKey, string user)
         {
             DataSet ds;
@@ -1887,6 +1892,7 @@
         #region 鎸囧紩鍗″彉鏇村崟 鏂板淇濆瓨
         [Route("MES_Sc_ProcessExchangeBillMain_Note_PDA/ProcessExchangeBillMain_NoteAddBill")]
         [HttpPost]
+        [Permission(HModName = "Sc_ProcessExchangeBill_Change")]
         public object ProcessExchangeBillMain_NoteAddBill([FromBody] JObject oMain)
         {
             var _value = oMain["oMain"].ToString();
diff --git a/WebAPI/Controllers/CJGL/Mes_OrderProcFlowAllReportController.cs b/WebAPI/Controllers/CJGL/Mes_OrderProcFlowAllReportController.cs
index 1bb3e17..fc14a83 100644
--- a/WebAPI/Controllers/CJGL/Mes_OrderProcFlowAllReportController.cs
+++ b/WebAPI/Controllers/CJGL/Mes_OrderProcFlowAllReportController.cs
@@ -9,6 +9,7 @@
 using System.Net.Http;
 using System.Web.Http;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers.CJGL
 {
@@ -650,6 +651,7 @@
         /// <returns></returns>
         [Route("Mes_OrderProcFlowAllReportController/GetSc_ProcessErrStationReport_Json")]
         [HttpGet]
+        [Permission(HModName = "Sc_ProcessErrStationReport")]
         public object GetSc_ProcessErrStationReport_Json(string sWhere,string user)
         {
             try
diff --git a/WebAPI/Controllers/CJGL/Sc_ProcExchWWSendWorkBillController.cs b/WebAPI/Controllers/CJGL/Sc_ProcExchWWSendWorkBillController.cs
index c4780db..700f0c8 100644
--- a/WebAPI/Controllers/CJGL/Sc_ProcExchWWSendWorkBillController.cs
+++ b/WebAPI/Controllers/CJGL/Sc_ProcExchWWSendWorkBillController.cs
@@ -8,6 +8,7 @@
 using System.Data.SqlClient;
 using System.Web.Http;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers.CJGL
 {
@@ -176,6 +177,7 @@
         //#region 宸ュ簭濮斿娲惧伐鍗� 鍒犻櫎
         [Route("WW_EntrustWorkOrderBill/DelEntrustWorkOrder")]
         [HttpGet]
+        [Permission(HModName = "WW_EntrustProcSendWorkBill_Delete")]
         public object DelEntrustWorkOrder(string HInterID, string user)
         {
             Int64 lngBillKey = 0;
@@ -266,6 +268,7 @@
         #region 宸ュ簭濮斿娲惧伐鍗曞鏍�/鍙嶅鏍稿姛鑳�
         [Route("WW_EntrustWorkOrderBill/CheckSWW_EntrustWorkOrderBill")]
         [HttpGet]
+        [Permission(HModName = "WW_EntrustProcSendWorkBill_Check")]
         public object CheckSWW_EntrustWorkOrderBill(string HInterID, int Type, string user)
         {
             try
@@ -422,6 +425,7 @@
         #region 宸ュ簭濮斿娲惧伐鍗� 鍏抽棴/鍙嶅叧闂姛鑳�
         [Route("WW_EntrustWorkOrderBill/CloseWW_EntrustWorkOrderBill")]
         [HttpGet]
+        [Permission(HModName = "WW_EntrustProcSendWorkBill_Close")]
         public object CloseWW_EntrustWorkOrderBill(string HInterID, int Type, string user)
         {
             try
@@ -534,6 +538,7 @@
         /// <returns></returns>
         [Route("WW_EntrustWorkOrderBill/DropWW_EntrustWorkOrderBill")]
         [HttpGet]
+        [Permission(HModName = "WW_EntrustProcSendWorkBill_Drop")]
         public object DropWW_EntrustWorkOrderBill(int HInterID, int IsAudit, string CurUserName)
         {
             string ModRightNameCheck = "WW_EntrustProcSendWorkBill_Drop";   //濮斿宸ュ簭娲惧伐鍗昣浣滃簾
diff --git a/WebAPI/Controllers/CJGL/Sc_ProcessExchangeBillController.cs b/WebAPI/Controllers/CJGL/Sc_ProcessExchangeBillController.cs
index bdc6b01..a15472f 100644
--- a/WebAPI/Controllers/CJGL/Sc_ProcessExchangeBillController.cs
+++ b/WebAPI/Controllers/CJGL/Sc_ProcessExchangeBillController.cs
@@ -11,6 +11,7 @@
 using System.Windows.Forms;
 using WebAPI.Models;
 using System.Linq;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers
 {
@@ -1967,6 +1968,7 @@
         #region 鍗曟嵁鍙樻洿 淇濆瓨
         [Route("Sc_ProcessExchangeBill/GetProcessExchangeBillMain_Change_save")]
         [HttpGet]
+        [Permission(HModName = "Sc_ProcessExchangeBill_ChangeBill")]
         public object GetProcessExchangeBillMain_Change_save(string HInterID,string HMaterModel2, string user)
         {
             try
diff --git a/WebAPI/Controllers/JHGL/Gy_MaterialTechParamBillController.cs b/WebAPI/Controllers/JHGL/Gy_MaterialTechParamBillController.cs
index 2a9e0d1..ca455d7 100644
--- a/WebAPI/Controllers/JHGL/Gy_MaterialTechParamBillController.cs
+++ b/WebAPI/Controllers/JHGL/Gy_MaterialTechParamBillController.cs
@@ -13,8 +13,10 @@
 using WebAPI.Controllers.SCGL.鏃ヨ鍒掔鐞�;
 using System.IO;
 using SyntacticSugar.constant;
+using WebAPI.Utility;
 namespace WebAPI.Controllers.MJGL
 {
+    [Permission(HModName = "Gy_MaterialTechParamBillMain")]
     public class Gy_MaterialTechParamBillController : ApiController
     {
 
@@ -32,6 +34,7 @@
         #region 浜у搧宸ヨ壓鍙傛暟娓呭崟鍒楄〃
         [Route("Sc_MouldDotCheckRuleBill/Gy_MaterialTechParamBillMainList")]
         [HttpGet]
+        [Permission(HModName = "Gy_MaterialTechParamBillMain_Query")]
         public object Gy_MaterialTechParamBillMainList(string sWhere, string user)
         {
             try
@@ -92,6 +95,7 @@
         /// <returns></returns>
         [Route("Gy_MaterialTechParamBill/SaveGy_MaterialTechParamBillMain")]
         [HttpPost]
+        [Permission(HModName = "Gy_MaterialTechParamBillMain_Edit")]
         public object SaveGy_MaterialTechParamBillMain([FromBody] JObject sMainSub)
         {
             var _value = sMainSub["sMainSub"].ToString();
@@ -261,6 +265,7 @@
         #region 浜у搧宸ヨ壓鍙傛暟娓呭崟缂栬緫鏃惰幏鍙栬〃浣撴暟鎹�
         [Route("Gy_MaterialTechParamBill/Gy_MaterialTechParamBillMainEditList")]
         [HttpGet]
+        [Permission(HModName = "Gy_MaterialTechParamBillMain_Query")]
         public object Gy_MaterialTechParamBillMainEditList(string HInterID, string User)
         {
             try
@@ -310,6 +315,7 @@
         #region 浜у搧宸ヨ壓鍙傛暟娓呭崟璁板綍鍒犻櫎鍔熻兘
         [Route("Gy_MaterialTechParamBill/DeleteGy_MaterialTechParamBillMain")]
         [HttpGet]
+        [Permission(HModName = "Gy_MaterialTechParamBillMain_Drop")]
         public object DeleteGy_MaterialTechParamBillMain(string HInterID, string user)
         {
             try
@@ -430,6 +436,7 @@
         #region 浜у搧宸ヨ壓鍙傛暟娓呭崟鍒楄〃 瀹℃牳/鍙嶅鏍稿姛鑳�
         [Route("Gy_MaterialTechParamBill/CheckGy_MaterialTechParamBillMain")]
         [HttpGet]
+        [Permission(HModName = "Gy_MaterialTechParamBillMain_Check")]
         public object CheckGy_MaterialTechParamBillMain(int HInterID, int IsAudit, string CurUserName)
         {
             DBUtility.ClsPub.CurUserName = CurUserName;
@@ -630,6 +637,7 @@
         #region 浜у搧宸ヨ壓鍙傛暟娓呭崟鍒楄〃 鍏抽棴/鍙嶅叧闂姛鑳�
         [Route("Gy_MaterialTechParamBill/CloseGy_MaterialTechParamBillMain")]
         [HttpGet]
+        [Permission(HModName = "Gy_MaterialTechParamBillMain_Close")]
         public object CloseGy_MaterialTechParamBillMain(string HInterID, int IsAudit, string user)
         {
             try
@@ -725,6 +733,7 @@
         /// <returns></returns>
         [Route("Gy_MaterialTechParamBill/DropGy_MaterialTechParamBill")]
         [HttpGet]
+        [Permission(HModName = "Gy_MaterialTechParamBillMain_Delete")]
         public object DropGy_MaterialTechParamBill(int HInterID, int IsAudit, string CurUserName)
         {
             string ModRightNameCheck = "Gy_MaterialTechParamBillMain_Delete";
@@ -1210,6 +1219,7 @@
         #region 浜у搧宸ヨ壓鍙傛暟椤圭洰 瀵煎叆(淇濆瓨)
         [Route("Gy_MaterialTechParamBill/Gy_MaterialTechParamBill_btnSave")]
         [HttpPost]
+        [Permission(HModName = "Gy_MaterialTechParamBillMain_Edit")]
         public object Gy_MaterialTechParamBill_btnSave([FromBody] JObject sMainSub)
         {
             var _value = sMainSub["sMainSub"].ToString();
@@ -1383,6 +1393,7 @@
         #region 浜у搧宸ヨ壓鍙傛暟娓呭崟 鏇存柊鐩稿悓鐗╂枡+妯″叿鐨勪笂涓嬫爣鍑� 鍊�  浜х敓涓�涓柊鐗堟湰锛岃�佺殑浣滃簾
         [Route("Gy_MaterialTechParamBill/SaveGy_MaterialTechParamBill_Update")]
         [HttpGet]
+        [Permission(HModName = "Gy_MaterialTechParamBillMain_Edit")]
         public object SaveGy_MaterialTechParamBill_Update(string HInterID, string User)
         {
             try
diff --git a/WebAPI/Controllers/JHGL/Gy_RoutingBillController.cs b/WebAPI/Controllers/JHGL/Gy_RoutingBillController.cs
index b248bff..bb39c27 100644
--- a/WebAPI/Controllers/JHGL/Gy_RoutingBillController.cs
+++ b/WebAPI/Controllers/JHGL/Gy_RoutingBillController.cs
@@ -11,6 +11,8 @@
 using System.Windows.Forms;
 using WebAPI.Controllers.SCGL.鏃ヨ鍒掔鐞�;
 using WebAPI.Models;
+using WebAPI.Utility;
+
 namespace WebAPI.Controllers
 {
     //宸ヨ壓璺嚎Controller
@@ -735,6 +737,7 @@
         #region 宸ヨ壓璺嚎瀛欒〃缂栬緫鑾峰彇鏁版嵁
         [Route("Gy_RoutingBill/EditWorkQty")]
         [HttpGet]
+        [Permission(HModName = "Gy_RoutingBill_Sub_Query")]
         public object EditWorkQty(long HInterID,long HEntryID)
         {
             try
@@ -1766,6 +1769,7 @@
         #region 宸ヨ壓璺嚎_瀛欒〃 瀵煎叆(淇濆瓨)
         [Route("Gy_RoutingBill/Gy_RoutingBill_WorkQty_btnSave")]
         [HttpPost]
+        [Permission(HModName = "Gy_RoutingBill_Sub_Edit")]
         public object Gy_RoutingBill_WorkQty_btnSave([FromBody] JObject sMainSub)
         {
             var _value = sMainSub["sMainSub"].ToString();
@@ -2558,6 +2562,7 @@
         /// </summary>
         [Route("Gy_RoutingBill/Gy_RoutingBillQuerySub")]
         [HttpGet]
+        [Permission(HModName = "Gy_RoutingBill_Sub_Query")]
         public object Gy_RoutingBillQuerySub(string sWhere)
         {
             DataSet ds;
diff --git a/WebAPI/Controllers/MJGL/Sc_MouldUpperBillController.cs b/WebAPI/Controllers/MJGL/Sc_MouldUpperBillController.cs
index 492ac86..fdf99ee 100644
--- a/WebAPI/Controllers/MJGL/Sc_MouldUpperBillController.cs
+++ b/WebAPI/Controllers/MJGL/Sc_MouldUpperBillController.cs
@@ -10,6 +10,7 @@
 using Model;
 using DBUtility;
 using SyntacticSugar.constant;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers.MJGL
 {
@@ -24,6 +25,7 @@
         #region 涓婃ā鍗� 鍒楄〃鏌ヨ
         [Route("Sc_MouldUpperBill/Sc_MouldUpperBillList")]
         [HttpGet]
+        [Permission(HModName = "Sc_MouldUpperBill_Query")]
         public object Sc_MouldUpperBillList(string sWhere, string user)
         {
             try
@@ -71,6 +73,7 @@
         #region 涓婃ā鍗� 鍒楄〃鍒嗛〉鏌ヨ
         [Route("Sc_MouldUpperBill/Sc_MouldUpperBillListPage")]
         [HttpGet]
+        [Permission(HModName = "Sc_MouldUpperBill_Query")]
         public object Sc_MouldUpperBillListPage(string sWhere, string user, int page, int size)
         {
             try
@@ -189,6 +192,7 @@
         /// </summary>
         [Route("Sc_MouldUpperBill/AddSc_MouldUpperBill")]
         [HttpPost]
+        [Permission(HModName = "Sc_MouldUpperBill_Edit")]
         public object AddSc_MouldUpperBill([FromBody] JObject sMainSub)
         {
             var _value = sMainSub["sMainSub"].ToString();
@@ -391,6 +395,7 @@
         #region 涓婃ā鍗曞垹闄ゅ姛鑳�
         [Route("Sc_MouldUpperBill/DeltetSc_MouldUpperBill")]
         [HttpGet]
+        [Permission(HModName = "Sc_MouldUpperBill_Delete")]
         public object DeltetSc_MouldUpperBill(string HInterID, int HPRDORGID, string user)
         {
 
@@ -534,6 +539,7 @@
         #region 涓婃ā鍗曞鏍�/鍙嶅鏍稿姛鑳�
         [Route("Sc_MouldUpperBill/CheckSc_MouldUpperBill")]
         [HttpGet]
+        [Permission(HModName = "Sc_ProcessExchangeBill_Sub_Check")]
         public object CheckSc_MouldUpperBill(string HInterID, int Type, string user)
         {
             try
@@ -706,6 +712,7 @@
         #region 涓婃ā鍗� 鍏抽棴 鍙嶅叧闂� 
         [Route("Sc_MouldUpperBill/CloseSc_MouldUpperBill")]
         [HttpGet]
+        [Permission(HModName = "Sc_MouldUpperBill_Close")]
         public object CloseSc_MouldUpperBill(string HInterID, int Type, string user)
         {
             try
@@ -902,6 +909,7 @@
         #region 涓婃ā鍗�  浣滃簾 鍙嶄綔搴�
         [Route("Sc_MouldUpperBill/DropSc_MouldUpperBill")]
         [HttpGet]
+        [Permission(HModName = "Sc_MouldUpperBill_Drop")]
         public object DropSc_MouldUpperBill(string HInterID, int Type, string user)
         {
             try
@@ -1032,6 +1040,7 @@
         #region 涓嬫ā鍗� 鍒楄〃鏌ヨ
         [Route("Sc_MouldUpperBill/Sc_MouldLowerBillList")]
         [HttpGet]
+        [Permission(HModName = "Sc_MouldLowerBill_Query")]
         public object Sc_MouldLowerBillList(string sWhere, string user)
         {
             try
@@ -1079,6 +1088,7 @@
         #region 涓嬫ā鍗� 鍒楄〃鍒嗛〉鏌ヨ
         [Route("Sc_MouldUpperBill/Sc_MouldLowerBillListPage")]
         [HttpGet]
+        [Permission(HModName = "Sc_MouldLowerBill_Query")]
         public object Sc_MouldLowerBillListPage(string sWhere, string user, int page, int size)
         {
             try
@@ -1197,6 +1207,7 @@
         /// </summary>
         [Route("Sc_MouldUpperBill/AddSc_MouldLowerBill")]
         [HttpPost]
+        [Permission(HModName = "Sc_MouldLowerBill_Edit")]
         public object AddSc_MouldLowerBill([FromBody] JObject sMainSub)
         {
             var _value = sMainSub["sMainSub"].ToString();
@@ -1397,6 +1408,7 @@
         #region 涓嬫ā鍗曞垹闄ゅ姛鑳�
         [Route("Sc_MouldUpperBill/DeltetSc_MouldLowerBill")]
         [HttpGet]
+        [Permission(HModName = "Sc_MouldLowerBill_Delete")]
         public object DeltetSc_MouldLowerBill(string HInterID, int HPRDORGID, string user)
         {
 
@@ -1541,12 +1553,13 @@
         #region 涓嬫ā鍗曞鏍�/鍙嶅鏍稿姛鑳�
         [Route("Sc_MouldUpperBill/CheckSc_MouldLowerBill")]
         [HttpGet]
+        [Permission(HModName = "Sc_MouldLowerBill_Check")]
         public object CheckSc_MouldLowerBill(string HInterID, int Type, string user)
         {
             try
             {
                 //鍒ゆ柇鏄惁鏈夊垹闄ゆ潈闄�
-                if (!DBUtility.ClsPub.Security_Log("Sc_ProcessExchangeBill_Sub_Check", 1, false, user))
+                if (!DBUtility.ClsPub.Security_Log("Sc_MouldLowerBill_Check", 1, false, user))
                 {
                     objJsonResult.code = "0";
                     objJsonResult.count = 0;
@@ -1711,6 +1724,7 @@
         #region 涓嬫ā鍗� 鍏抽棴 鍙嶅叧闂� 
         [Route("Sc_MouldUpperBill/CloseSc_MouldLowerBill")]
         [HttpGet]
+        [Permission(HModName = "Sc_MouldLowerBill_Close")]
         public object CloseSc_MouldLowerBill(string HInterID, int Type, string user)
         {
             try
@@ -1908,6 +1922,7 @@
         #region 涓嬫ā鍗�  浣滃簾 鍙嶄綔搴�
         [Route("Sc_MouldUpperBill/DropSc_MouldLowerBill")]
         [HttpGet]
+        [Permission(HModName = "Sc_MouldLowerBill_Drop")]
         public object DropSc_MouldLowerBill(string HInterID, int Type, string user)
         {
             try
diff --git a/WebAPI/Controllers/MJGL/Sc_MouldinventoryBillController.cs b/WebAPI/Controllers/MJGL/Sc_MouldinventoryBillController.cs
index 721bad5..55868ee 100644
--- a/WebAPI/Controllers/MJGL/Sc_MouldinventoryBillController.cs
+++ b/WebAPI/Controllers/MJGL/Sc_MouldinventoryBillController.cs
@@ -10,9 +10,11 @@
 using System.Web.Http;
 using System.Windows.Forms;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers.MJGL
 {
+    [Permission(HModName = "Gy_MaterialMouldBillMain")]
     public class Sc_MouldinventoryBillController : ApiController
     {
 
@@ -30,6 +32,7 @@
         #region 浜у搧鍣ㄥ叿娓呭崟鍗曞垪琛�
         [Route("Sc_MouldDotCheckRuleBill/Gy_MaterialMouldBillMainList")]
         [HttpGet]
+        [Permission(HModName = "Gy_MaterialMouldBillMain_Query")]
         public object Sc_MouldDotCheckRuleList(string sWhere, string user)
         {
             try
@@ -90,6 +93,7 @@
         /// <returns></returns>
         [Route("Sc_MouldinventoryBill/SaveGy_MaterialMouldBillMain")]
         [HttpPost]
+        [Permission(HModName = "Gy_MaterialMouldBillMain_Edit")]
         public object SaveGy_MaterialMouldBillMain([FromBody] JObject sMainSub)
         {
             var _value = sMainSub["sMainSub"].ToString();
@@ -258,6 +262,7 @@
         #region 浜у搧鍣ㄥ叿娓呭崟缂栬緫鏃惰幏鍙栬〃浣撴暟鎹�
         [Route("Sc_MouldinventoryBill/Gy_MaterialMouldBillMainEditList")]
         [HttpGet]
+        [Permission(HModName = "Gy_MaterialMouldBillMain_Edit")]
         public object Gy_MaterialMouldBillMainEditList(string HInterID, string User)
         {
             try
@@ -307,6 +312,7 @@
         #region 浜у搧鍣ㄥ叿娓呭崟璁板綍鍒犻櫎鍔熻兘
         [Route("Sc_MouldinventoryBill/DeleteGy_MaterialMouldBillMain")]
         [HttpGet]
+        [Permission(HModName = "Gy_MaterialMouldBillMain_Drop")]
         public object DeleteGy_MaterialMouldBillMain(string HInterID, string user)
         {
             try
@@ -403,6 +409,7 @@
         #region 浜у搧鍣ㄥ叿娓呭崟鍒楄〃 瀹℃牳/鍙嶅鏍稿姛鑳�
         [Route("Sc_MouldinventoryBill/CheckGy_MaterialMouldBillMain")]
         [HttpGet]
+        [Permission(HModName = "Gy_MaterialMouldBillMain_Check")]
         public object CheckGy_MaterialMouldBillMain(int HInterID, int IsAudit, string CurUserName)
         {
             DBUtility.ClsPub.CurUserName = CurUserName;
@@ -603,6 +610,7 @@
         #region 浜у搧鍣ㄥ叿娓呭崟鍒楄〃 鍏抽棴/鍙嶅叧闂姛鑳�
         [Route("Sc_MouldinventoryBill/CloseGy_MaterialMouldBillMain")]
         [HttpGet]
+        [Permission(HModName = "Gy_MaterialMouldBillMain_Close")]
         public object CloseGy_MaterialMouldBillMain(string HInterID, int IsAudit, string user)
         {
             try
@@ -692,6 +700,7 @@
         #region 浜у搧鍣ㄥ叿娓呭崟浣滃簾/鍙嶄綔搴熷姛鑳�
         [Route("Sc_MouldinventoryBill/DeleteGy_MaterialMouldBillMain")]        
         [HttpGet]
+        [Permission(HModName = "Gy_MaterialMouldBillMain_Delete")]
         public object DeleteGy_MaterialMouldBillMain(string HInterID, int Type, string user)
         {
             try
diff --git a/WebAPI/Controllers/MateOutController.cs b/WebAPI/Controllers/MateOutController.cs
index 5630740..b6e2772 100644
--- a/WebAPI/Controllers/MateOutController.cs
+++ b/WebAPI/Controllers/MateOutController.cs
@@ -17,6 +17,7 @@
 using WebAPI.Code;
 using WebAPI.Controllers.SCGL.鏃ヨ鍒掔鐞�;
 using WebAPI.Models;
+using WebAPI.Utility;
 using static WebAPI.Controllers.鍩虹璧勬枡.鍩虹璧勬枡.Gy_DutyBillController;
 
 namespace WebAPI.Controllers
@@ -2585,6 +2586,7 @@
         /// <returns></returns>
         [Route("MateOutController/GetKf_MateOutSumReport_QiaoYi_Json")]
         [HttpGet]
+        [Permission(HModName = "Kf_MateOutSumReport_QiaoYi")]
         public object GetKf_MateOutSumReport_QiaoYi_Json(string sWhere, string user)
         {
             try
@@ -2642,6 +2644,7 @@
         #region  (鐢熶骇璁㈠崟缁村害)瀹㈡埛璁㈠崟鎶ヨ〃
         [Route("MaterOutEntryReport/sc_ICOMReportList")]
         [HttpGet]
+        [Permission(HModName = "sc_ICOMReportList")]
         public object sc_ICOMReportList(string sWhere,string HBeginDate,string HEndDate, string user)
         {
             try
@@ -2734,6 +2737,7 @@
         #region  娴佽浆鍗℃湭鍏ュ簱鎶ヨ〃
         [Route("MaterOutEntryReport/Sc_ProcExchangeNoInReport")]
         [HttpGet]
+        [Permission(HModName = "Sc_ProcExchangeNoInReport")]
         public object Sc_ProcExchangeNoInReport(string sWhere, string HBeginDate, string HEndDate, string user)
         {
             try
@@ -2784,6 +2788,7 @@
         #region  鐢熶骇鍏ュ簱鎶ヨ〃
         [Route("MaterOutEntryReport/sc_ICOMRKReport")]
         [HttpGet]
+        [Permission(HModName = "sc_ICOMRKReport")]
         public object sc_ICOMRKReport(string sWhere, string user)
         {
             try
@@ -2839,6 +2844,7 @@
         /// </summary>
         [Route("Sc_BadReasonReport/list")]
         [HttpGet]
+        [Permission(HModName = "Sc_BadReasonReport")]
         public object list(string sWhere, string user,string HGroupID)
         {
             try
@@ -2946,6 +2952,7 @@
         }
         [Route("MaterOutEntryReport/SC_DayRkReport")]
         [HttpGet]
+        [Permission(HModName = "SC_DayRkReport")]
         public object SC_DayRkReport(string sWhere,int num, string user)
         {
             try
@@ -3031,6 +3038,7 @@
         }
         [Route("MaterOutEntryReport/SemiFinishedProductsReportList")]
         [HttpGet]
+        [Permission(HModName = "SemiFinishedProductsReportList")]
         public object SemiFinishedProductsReportList(string sWhere, int num, string user)
         {
             try
diff --git a/WebAPI/Controllers/Open_PrintTemController.cs b/WebAPI/Controllers/Open_PrintTemController.cs
index ef8c5a4..337d802 100644
--- a/WebAPI/Controllers/Open_PrintTemController.cs
+++ b/WebAPI/Controllers/Open_PrintTemController.cs
@@ -7,9 +7,11 @@
 using System.Net.Http;
 using System.Web.Http;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers
 {
+    [Permission(HModName = "OpenPrintTmp")]
     public class Open_PrintTemController : ApiController
     {
         private JsonResult objJsonResult = new JsonResult();
@@ -73,6 +75,7 @@
         /// <returns></returns>
         [Route("Open_PrintTem/SaveOpenTmp")]
         [HttpGet]
+        [Permission(HModName = "OpenPrintTmp", Operate = "_Edit")]
         public object SaveOpenTmp(string HNumber, string HName,string user)
         {
             //ClsCNSRM oCn = new ClsCNSRM();
@@ -120,6 +123,7 @@
         /// <returns></returns>
         [Route("Open_PrintTem/DelOpenTmp")]
         [HttpGet]
+        [Permission(HModName = "OpenPrintTmp", Operate = "_Delete")]
         public object DelOpenTmp(string HItemID, string user)
         {
             SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
diff --git a/WebAPI/Controllers/SBGL/Gy_EquipTypeController.cs b/WebAPI/Controllers/SBGL/Gy_EquipTypeController.cs
index 2272bb3..cdc48d8 100644
--- a/WebAPI/Controllers/SBGL/Gy_EquipTypeController.cs
+++ b/WebAPI/Controllers/SBGL/Gy_EquipTypeController.cs
@@ -13,6 +13,7 @@
 using System.IO;
 using SyntacticSugar.constant;
 using Newtonsoft.Json;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers.SBGL
 {
@@ -386,6 +387,7 @@
         #region 璁惧鍒嗙被瀹℃牳/鍙嶅鏍稿姛鑳�
         [Route("Gy_EquipTypeBill/CheckGy_EquipTypeBill")]
         [HttpGet]
+        [Permission(HModName = "Gy_EquipType", Operate = "_Check")]
         public object CheckGy_EquipTypeBill(string HInterID, int Type, string user)
         {
             try
@@ -483,6 +485,7 @@
         #region 璁惧鍒嗙被鍏抽棴/鍙嶅叧闂姛鑳�
         [Route("Gy_EquipTypeBill/CloseGy_EquipTypeBill")]
         [HttpGet]
+        [Permission(HModName = "Gy_EquipType", Operate = "_Close")]
         public object CloseGy_EquipTypeBill(string HInterID, int Type, string user)
         {
             try
diff --git a/WebAPI/Controllers/SBGL/Gy_FixCardBillController.cs b/WebAPI/Controllers/SBGL/Gy_FixCardBillController.cs
index b5f6656..457e730 100644
--- a/WebAPI/Controllers/SBGL/Gy_FixCardBillController.cs
+++ b/WebAPI/Controllers/SBGL/Gy_FixCardBillController.cs
@@ -9,9 +9,11 @@
 using System.Net.Http;
 using System.Web.Http;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers.SBGL
 {
+    [Permission(HModName = "Gy_FixCardBill")]
     public class Gy_FixCardBillController : ApiController
     {
         //鑾峰彇绯荤粺鍙傛暟
@@ -25,6 +27,7 @@
         #region 鍥哄畾璧勪骇鍗$墖鍒楄〃鏌ヨ
         [Route("Gy_FixCardBill/list")]
         [HttpGet]
+        [Permission(HModName = "Gy_FixCardBill_Query")]
         public object list(string sWhere, string user)
         {
             try
@@ -81,6 +84,7 @@
 
         [Route("Gy_FixCardBill/SaveFixCardBillList")]
         [HttpPost]
+        [Permission(HModName = "Gy_FixCardBill_Edit")]
         public object SaveFixCardBillList([FromBody] JObject msg)
         {
             var _value = msg["msg"].ToString();
@@ -186,9 +190,10 @@
         }
         #endregion
 
-        //#region 鍥哄畾璧勪骇鍗$墖 鍒犻櫎
+        #region 鍥哄畾璧勪骇鍗$墖 鍒犻櫎
         [Route("Gy_FixCardBill/DelFixCardBill")]
         [HttpGet]
+        [Permission(HModName = "Gy_FixCardBill_Delete")]
         public object DelFixCardBill(string HInterID, string user)
         {
             Int64 lngBillKey = 0;
@@ -274,11 +279,12 @@
                 return objJsonResult;
             }
         }
-        //#endregion
+        #endregion
 
         #region 鍥哄畾璧勪骇鍗$墖 瀹℃牳/鍙嶅鏍稿姛鑳�
         [Route("Gy_FixCardBill/CheckGy_FixCardBill")]
         [HttpGet]
+        [Permission(HModName = "Gy_FixCardBill_Check")]
         public object CheckGy_FixCardBill(string HInterID, int Type, string user)
         {
             try
@@ -435,6 +441,7 @@
         #region 鍥哄畾璧勪骇 鍏抽棴/鍙嶅叧闂姛鑳�
         [Route("Gy_FixCardBill/CloseGy_FixCardBill")]
         [HttpGet]
+        [Permission(HModName = "Gy_FixCardBill_Close")]
         public object CloseGy_FixCardBill(string HInterID, int Type, string user)
         {
             try
diff --git a/WebAPI/Controllers/SBGL/SBTC/Sb_EquipStockInCheckBillController.cs b/WebAPI/Controllers/SBGL/SBTC/Sb_EquipStockInCheckBillController.cs
index c803133..9ea92d2 100644
--- a/WebAPI/Controllers/SBGL/SBTC/Sb_EquipStockInCheckBillController.cs
+++ b/WebAPI/Controllers/SBGL/SBTC/Sb_EquipStockInCheckBillController.cs
@@ -11,7 +11,7 @@
 using System.Net.Http;
 using System.Web.Http;
 using WebAPI.Models;
-
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers.SBGL.SBTC
 {
@@ -441,6 +441,7 @@
         #region 鍏抽棴/鍙嶅叧闂姛鑳�
         [Route("Sb_EquipStockInCheckBill/CloseSb_EquipStockInCheckBill")]
         [HttpGet]
+        [Permission(HModName = "Sb_EquipStockInCheckBill", Operate = "_Close")]
         public object CloseSb_EquipStockInCheckBill(string HInterID, int Type, string user)
         {
             try
diff --git a/WebAPI/Controllers/SBGL/SBTC/Sb_EquipWorkBeforeCheckBillController.cs b/WebAPI/Controllers/SBGL/SBTC/Sb_EquipWorkBeforeCheckBillController.cs
index ff28bd8..dc2dbeb 100644
--- a/WebAPI/Controllers/SBGL/SBTC/Sb_EquipWorkBeforeCheckBillController.cs
+++ b/WebAPI/Controllers/SBGL/SBTC/Sb_EquipWorkBeforeCheckBillController.cs
@@ -11,6 +11,7 @@
 using System.Net.Http;
 using System.Web.Http;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers.SBGL.SBTC
 {
@@ -441,6 +442,7 @@
         #region 鍏抽棴/鍙嶅叧闂姛鑳�
         [Route("Sb_EquipWorkBeforeCheckBill/CloseSb_EquipWorkBeforeCheckBill")]
         [HttpGet]
+        [Permission(HModName = "Sb_EquipWorkBeforeCheckBill", Operate = "_Close")]
         public object CloseSb_EquipWorkBeforeCheckBill(string HInterID, int Type, string user)
         {
             try
diff --git a/WebAPI/Controllers/SBGL/Sb_EquipSparepartsBillController.cs b/WebAPI/Controllers/SBGL/Sb_EquipSparepartsBillController.cs
index c944324..ea29c2b 100644
--- a/WebAPI/Controllers/SBGL/Sb_EquipSparepartsBillController.cs
+++ b/WebAPI/Controllers/SBGL/Sb_EquipSparepartsBillController.cs
@@ -11,9 +11,11 @@
 using System.Net.Http;
 using System.Web.Http;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers.SBGL
 {
+    [Permission(HModName = "Sb_EquipSparepartsBill")]
     public class Sb_EquipSparepartsBillController : ApiController
     {
         private json objJsonResult = new json();
@@ -298,6 +300,7 @@
         /// <returns></returns>
         [Route("Sb_EquipSparepartsBill/AuditSb_EquipSparepartsBill")]
         [HttpGet]
+        [Permission(HModName = "Sb_EquipSparepartsBill", Operate = "_Check")]
         public object AuditSb_EquipSparepartsBill(string HInterID, int Type, string user)
         {
             try
@@ -444,6 +447,7 @@
         #region 鍏抽棴/鍙嶅叧闂姛鑳�
         [Route("Sb_EquipSparepartsBill/CloseSb_EquipSparepartsBill")]
         [HttpGet]
+        [Permission(HModName = "Sb_EquipSparepartsBill", Operate = "_Close")]
         public object CloseSb_EquipSparepartsBill(string HInterID, int Type, string user)
         {
             try
diff --git a/WebAPI/Controllers/SBGL/Sb_EquipSparepartsChangeBillController.cs b/WebAPI/Controllers/SBGL/Sb_EquipSparepartsChangeBillController.cs
index 0313c4d..7afe342 100644
--- a/WebAPI/Controllers/SBGL/Sb_EquipSparepartsChangeBillController.cs
+++ b/WebAPI/Controllers/SBGL/Sb_EquipSparepartsChangeBillController.cs
@@ -11,9 +11,11 @@
 using System.Net.Http;
 using System.Web.Http;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers.SBGL
 {
+    [Permission(HModName = "Sb_EquipSparepartsChangeBill")]
     public class Sb_EquipSparepartsChangeBillController : ApiController
     {
         private json objJsonResult = new json();
@@ -298,6 +300,7 @@
         /// <returns></returns>
         [Route("Sb_EquipSparepartsChangeBill/AuditSb_EquipSparepartsChangeBill")]
         [HttpGet]
+        [Permission(HModName = "Sb_EquipSparepartsChangeBill", Operate = "_Check")]
         public object AuditSb_EquipSparepartsChangeBill(string HInterID, int Type, string user)
         {
             try
@@ -444,6 +447,7 @@
         #region 鍏抽棴/鍙嶅叧闂姛鑳�
         [Route("Sb_EquipSparepartsChangeBill/CloseSb_EquipSparepartsChangeBill")]
         [HttpGet]
+        [Permission(HModName = "Sb_EquipSparepartsChangeBill", Operate = "_Close")]
         public object CloseSb_EquipSparepartsChangeBill(string HInterID, int Type, string user)
         {
             try
diff --git a/WebAPI/Controllers/SBGL/Sb_EquipStatusChangeBillController.cs b/WebAPI/Controllers/SBGL/Sb_EquipStatusChangeBillController.cs
index f0ee2d8..252ae8a 100644
--- a/WebAPI/Controllers/SBGL/Sb_EquipStatusChangeBillController.cs
+++ b/WebAPI/Controllers/SBGL/Sb_EquipStatusChangeBillController.cs
@@ -11,10 +11,11 @@
 using System.Net.Http;
 using System.Web.Http;
 using WebAPI.Models;
-
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers.SBGL
 {
+    [Permission(HModName = "Sb_EquipStatusChangeBill")]
     public class Sb_EquipStatusChangeBillController : ApiController
     {
         private json objJsonResult = new json();
@@ -296,6 +297,7 @@
         /// <returns></returns>
         [Route("Sb_EquipStatusChangeBill/AuditSb_EquipStatusChangeBill")]
         [HttpGet]
+        [Permission(HModName = "Sb_EquipStatusChangeBill", Operate = "_Check")]
         public object AuditSb_EquipStatusChangeBill(string HInterID, int Type, string user)
         {
             try
@@ -442,6 +444,7 @@
         #region 鍏抽棴/鍙嶅叧闂姛鑳�
         [Route("Sb_EquipStatusChangeBill/CloseSb_EquipStatusChangeBill")]
         [HttpGet]
+        [Permission(HModName = "Sb_EquipStatusChangeBill", Operate = "_Close")]
         public object CloseSb_EquipStatusChangeBill(string HInterID, int Type, string user)
         {
             try
diff --git a/WebAPI/Controllers/SCGL/Gy_SourceWorkStationSetController.cs b/WebAPI/Controllers/SCGL/Gy_SourceWorkStationSetController.cs
index 2c68baf..0185f52 100644
--- a/WebAPI/Controllers/SCGL/Gy_SourceWorkStationSetController.cs
+++ b/WebAPI/Controllers/SCGL/Gy_SourceWorkStationSetController.cs
@@ -8,9 +8,11 @@
 using System.Data.SqlClient;
 using System.Web.Http;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers
 {
+    [Permission(HModName = "Gy_SourceWorkStationSet")]
     public class Gy_SourceWorkStationSetController : ApiController
     {
         public DBUtility.ClsPub.Enum_BillStatus BillStatus;
@@ -26,6 +28,7 @@
         /// </summary>
         [Route("Gy_SourceWorkStationSet/list")]
         [HttpGet]
+        [Permission(HModName = "Gy_SourceWorkStationSet", Operate = "_Query")]
         public object list(string sWhere, string user)
         {
             try
@@ -79,6 +82,7 @@
         #region 浜х嚎宸ヤ綅淇濆瓨
         [Route("Gy_SourceWorkStationSet/Save")]
         [HttpPost]
+        [Permission(HModName = "Gy_SourceWorkStationSet", Operate = "_Edit")]
         public object set_SaveBill([FromBody] JObject oMain)
         {
             var _value = oMain["oMain"].ToString();
@@ -177,6 +181,7 @@
         /// <returns></returns>
         [Route("DeltetGy_SourceWorkStation")]
         [HttpGet]
+        [Permission(HModName = "Gy_SourceWorkStationSet", Operate = "_Del")]
         public object DeltetGy_SourceWorkStation(string HItemID, string user)
         {
             DataSet ds;
diff --git a/WebAPI/Controllers/SCGL/Sc_ICMOChangeBillController.cs b/WebAPI/Controllers/SCGL/Sc_ICMOChangeBillController.cs
index f1450e1..fbe68d7 100644
--- a/WebAPI/Controllers/SCGL/Sc_ICMOChangeBillController.cs
+++ b/WebAPI/Controllers/SCGL/Sc_ICMOChangeBillController.cs
@@ -8,10 +8,12 @@
 using System.Data.SqlClient;
 using System.Web.Http;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers
 {
     //鐢熶骇璁㈠崟鍙樻洿鍗旵ontroller
+    [Permission(HModName = "Sc_ICMOChangeBill")]
     public class Sc_ICMOChangeBillController : ApiController
     {
         //鑾峰彇绯荤粺鍙傛暟
@@ -31,6 +33,7 @@
         /// </summary>
         [Route("Sc_ICMOChangeBill/list")]
         [HttpGet]
+        [Permission(HModName = "Sc_ICMOChangeBill", Operate = "_Query")]
         public object getSc_ICMOChangeBill(string sWhere, string user)
         {
             try
@@ -86,6 +89,7 @@
         #region 鐢熶骇璁㈠崟鍙樻洿鍗曚繚瀛� 鏂板/缂栬緫
         [Route("Sc_ICMOChangeBill/SaveSc_ICMOChangeBill")]
         [HttpPost]
+        [Permission(HModName = "Sc_ICMOChangeBill", Operate = "_Edit")]
         public object SaveSc_ICMOChangeBill([FromBody] JObject msg)
         {
             var _value = msg["msg"].ToString();
@@ -307,6 +311,7 @@
         /// </summary>
         [Route("Sc_ICMOChangeBill/delete")]
         [HttpGet]
+        [Permission(HModName = "Sc_ICMOChangeBill", Operate = "_Drop")]
         public object deleteSc_ICMOChangeBill(string HInterID, string user)
         {
             try
@@ -430,6 +435,7 @@
         /// <returns></returns>
         [Route("Sc_ICMOChangeBill/AuditSc_ICMOChangeBill")]
         [HttpGet]
+        [Permission(HModName = "Sc_ICMOChangeBill", Operate = "_Check")]
         public object AuditSc_ICMOChangeBill(int HInterID, int IsAudit, string CurUserName)
         {
             string ModRightNameCheck = "Sc_ICMOChangeBill_Check";
@@ -672,6 +678,7 @@
         /// <returns></returns>
         [Route("Sc_ICMOChangeBill/CloseSc_ICMOChangeBill")]
         [HttpGet]
+        [Permission(HModName = "Sc_ICMOChangeBill", Operate = "_Close")]
         public object CloseSc_ICMOChangeBill(int HInterID, int IsAudit, string CurUserName)
         {
             string ModRightNameCheck = "Sc_ICMOChangeBill_Close";
@@ -817,6 +824,7 @@
         /// <returns></returns>
         [Route("Sc_ICMOChangeBill/DeleteSc_ICMOChangeBill")]
         [HttpGet]
+        [Permission(HModName = "Sc_ICMOChangeBill", Operate = "_Delete")]
         public object DeleteSc_ICMOChangeBill(int HInterID, int IsAudit, string CurUserName)
         {
             string ModRightNameCheck = "Sc_ICMOChangeBill_Delete";
diff --git a/WebAPI/Controllers/SCGL/Sc_ProductionReturnBillController.cs b/WebAPI/Controllers/SCGL/Sc_ProductionReturnBillController.cs
index ae1c5fc..fc2ab80 100644
--- a/WebAPI/Controllers/SCGL/Sc_ProductionReturnBillController.cs
+++ b/WebAPI/Controllers/SCGL/Sc_ProductionReturnBillController.cs
@@ -9,6 +9,7 @@
 using Model;
 using Newtonsoft.Json.Linq;
 using Newtonsoft.Json;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers.SCGL
 {
@@ -536,6 +537,7 @@
         /// <returns></returns>
         [Route("Sc_ProductionReturn/AuditSc_ProductionReturn")]
         [HttpGet]
+        [Permission(HModName = "Kf_ProductionReturnBill", Operate = "_Check")]
         public object AuditSc_ProductionReturn(int HInterID, int IsAudit, string CurUserName)
         {
             string ModRightNameCheck = "Kf_ProductionReturnBill_Check";
@@ -728,6 +730,7 @@
         #region 鐢熶骇閫�搴撳崟 鍏抽棴/鍙嶅叧闂姛鑳�
         [Route("Sc_ProductionReturn/CloseSc_ProductionReturn")]
         [HttpGet]
+        [Permission(HModName = "Kf_ProductionReturnBill", Operate = "_Close")]
         public object CloseSc_ProductionReturn(string HInterID, int Type, string user)
         {
             try
@@ -875,6 +878,7 @@
         #region 鐢熶骇閫�搴撳崟 浣滃簾/鍙嶄綔搴熷姛鑳�
         [Route("Sc_ProductionReturn/DropSc_ProductionReturn")]
         [HttpGet]
+        [Permission(HModName = "Kf_ProductionReturnBill", Operate = "_Delete")]
         public object DropSc_ProductionReturn(string HInterID, int Type, string user)
         {
             try
diff --git a/WebAPI/Controllers/WebAPIController.cs b/WebAPI/Controllers/WebAPIController.cs
index c857b02..eb924dc 100644
--- a/WebAPI/Controllers/WebAPIController.cs
+++ b/WebAPI/Controllers/WebAPIController.cs
@@ -21,6 +21,7 @@
 using WebAPI.Service;
 using SyntacticSugar.constant;
 using System.Text.RegularExpressions;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers
 {
@@ -3479,6 +3480,7 @@
         /// <returns></returns>
         [Route("SaveGy_BadType")]
         [HttpPost]
+        [Permission(HModName = "Gy_BadType", Operate = "_Edit")]
         public object SaveGy_BadType([FromBody] JObject msg)
         {
             DataSet ds;
@@ -3698,6 +3700,7 @@
         /// <returns></returns>
         [Route("GetGy_BadTypeDetail")]
         [HttpGet]
+        [Permission(HModName = "Gy_BadType", Operate = "_Query")]
         public ApiResult<DataSet> GetGy_BadTypeDetail(string HID)
         {
             var dataSet = oCN.RunProcReturn("select top 1 * from h_v_gy_BadTypeList  where HItemID= " + HID + " ", "h_v_gy_BadTypeList");
@@ -3712,6 +3715,8 @@
         /// <returns></returns>
         [Route("DeltetGy_BadType")]
         [HttpGet]
+        [Permission(HModName = "Gy_BadType", Operate = "_Drop")]
+
         public object DeltetGy_BadType(string HItemID, string user)
         {
             DataSet ds;
@@ -4150,6 +4155,7 @@
         /// <returns></returns>
         [Route("SaveGy_ErrType")]
         [HttpPost]
+        [Permission(HModName = "Gy_ErrType", Operate = "_Edit")]
         public object SaveGy_ErrType([FromBody] JObject msg)
         {
             DataSet ds;
@@ -4363,6 +4369,7 @@
         /// <returns></returns>
         [Route("GetGy_ErrTypeDetail")]
         [HttpGet]
+        [Permission(HModName = "Gy_ErrType", Operate = "_Query")]
         public ApiResult<DataSet> GetGy_ErrTypeDetail(string HID)
         {
             var dataSet = oCN.RunProcReturn("select top 1 * from h_v_Gy_ErrTypeList  where HItemID= " + HID + " ", "h_v_Gy_ErrTypeList");
@@ -4378,6 +4385,7 @@
         /// <returns></returns>
         [Route("DeltetGy_ErrType")]
         [HttpGet]
+        [Permission(HModName = "Gy_ErrType", Operate = "_Drop")]
         public object DeltetGy_ErrType(string HItemID, string user)
         {
             DataSet ds;
@@ -4436,6 +4444,7 @@
         #region 寮傚父绫诲瀷瀹℃牳/鍙嶅鏍�
         [Route("Gy_ErrType/AuditGy_ErrType")]
         [HttpGet]
+        [Permission(HModName = "Gy_ErrType", Operate = "_Check")]
         public object AuditGy_ErrType(string HInterID, int Type, string user)
         {
             try
@@ -4802,6 +4811,7 @@
         /// <returns></returns>
         [Route("SaveGy_BadResultList")]
         [HttpPost]
+        [Permission(HModName = "Gy_BadResult", Operate = "_Edit")]
         public object SaveGy_BadResultList([FromBody] JObject msg)
         {
             DataSet ds;
@@ -5023,6 +5033,8 @@
         /// <returns></returns>
         [Route("GetGy_BadResultDetail")]
         [HttpGet]
+        [Permission(HModName = "Gy_BadResult", Operate = "_Query")]
+
         public ApiResult<DataSet> GetGy_BadResultDetail(string HID)
         {
             var model = LuBaoSevice.GetGy_BadResultBillDetail(HID);
@@ -5035,6 +5047,8 @@
         /// <returns></returns>
         [Route("DeltetGy_BadResult")]
         [HttpGet]
+        [Permission(HModName = "Gy_BadResult", Operate = "_Drop")]
+
         public object DeltetGy_BadResult(string HItemID, string user)
         {
             DataSet ds;
@@ -5437,6 +5451,7 @@
         /// <returns></returns>
         [Route("SaveGy_InspectValueList")]
         [HttpPost]
+        [Permission(HModName = "Gy_InspectValue", Operate = "_Edit")]
         public object SaveGy_InspectValueList([FromBody] JObject msg)
         {
             DataSet ds;
@@ -5647,6 +5662,7 @@
         /// <returns></returns>
         [Route("GetGy_InspectValueDetail")]
         [HttpGet]
+        [Permission(HModName = "Gy_InspectValue", Operate = "_Query")]
         public ApiResult<DataSet> GetGy_InspectValueDetail(string HID)
         {
             var model = LuBaoSevice.GetGy_InspectValueBillDetail(HID);
@@ -5659,6 +5675,7 @@
         /// <returns></returns>
         [Route("DeltetGy_InspectValue")]
         [HttpGet]
+        [Permission(HModName = "Gy_InspectValue", Operate = "_Drop")]
         public object DeltetGy_InspectValue(string HItemID, string user)
         {
             DataSet ds;
@@ -5988,6 +6005,7 @@
         /// <returns></returns>
         [Route("SaveGy_InspectMethodList")]
         [HttpPost]
+        [Permission(HModName = "Gy_InspectMethod", Operate = "_Edit")]
         public object SaveGy_InspectMethodList([FromBody] JObject msg)
         {
             DataSet ds;
@@ -6197,6 +6215,7 @@
         /// <returns></returns>
         [Route("GetGy_InspectMethodDetail")]
         [HttpGet]
+        [Permission(HModName = "Gy_InspectMethod", Operate = "_Query")]
         public ApiResult<DataSet> GetGy_InspectMethodDetail(string HID)
         {
             var model = LuBaoSevice.GetGy_InspectMethodBillDetail(HID);
@@ -6209,6 +6228,7 @@
         /// <returns></returns>
         [Route("DeltetGy_InspectMethod")]
         [HttpGet]
+        [Permission(HModName = "Gy_InspectMethod", Operate = "_Drop")]
         public object DeltetGy_InspectMethod(string HItemID, string user)
         {
             DataSet ds;
@@ -6289,6 +6309,7 @@
         /// <returns></returns>
         [Route("SaveGy_QualityStdList")]
         [HttpPost]
+        [Permission(HModName = "Gy_QualityStd", Operate = "_Edit")]
         public object SaveGy_QualityStdList([FromBody] JObject msg)
         {
             DataSet ds;
@@ -6502,6 +6523,7 @@
         /// <returns></returns>
         [Route("GetGy_QualityStdDetail")]
         [HttpGet]
+        [Permission(HModName = "Gy_QualityStd", Operate = "_Query")]
         public ApiResult<DataSet> GetGy_QualityStdDetail(string HID)
         {
             var model = LuBaoSevice.GetGy_QualityStdBillDetail(HID);
@@ -6514,6 +6536,7 @@
         /// <returns></returns>
         [Route("DeltetGy_QualityStd")]
         [HttpGet]
+        [Permission(HModName = "Gy_QualityStd", Operate = "_Drop")]
         public object DeltetGy_QualityStd(string HItemID, string user)
         {
             DataSet ds;
@@ -6594,6 +6617,7 @@
         /// <returns></returns>
         [Route("SaveGy_InspectInstruMentList")]
         [HttpPost]
+        [Permission(HModName = "Gy_InspectInstruMent", Operate = "_Edit")]
         public object SaveGy_InspectInstruMentList([FromBody] JObject msg)
         {
             DataSet ds;
@@ -6806,6 +6830,7 @@
         /// <returns></returns>
         [Route("GetGy_InspectInstruMentDetail")]
         [HttpGet]
+        [Permission(HModName = "Gy_InspectInstruMent", Operate = "_Query")]
         public ApiResult<DataSet> GetGy_InspectInstruMentDetail(string HID)
         {
             var model = LuBaoSevice.GetGy_InspectInstruMentBillDetail(HID);
@@ -6818,6 +6843,7 @@
         /// <returns></returns>
         [Route("DeltetGy_InspectInstruMent")]
         [HttpGet]
+        [Permission(HModName = "Gy_InspectInstruMent", Operate = "_Drop")]
         public object DeltetGy_InspectInstruMent(string HItemID, string user)
         {
             DataSet ds;
@@ -7128,6 +7154,7 @@
         /// <returns></returns>
         [Route("SaveGy_InspectBasisList")]
         [HttpPost]
+        [Permission(HModName = "Gy_InspectBasis", Operate = "_Edit")]
         public object SaveGy_InspectBasisList([FromBody] JObject msg)
         {
             DataSet ds;
@@ -7338,6 +7365,7 @@
         /// <returns></returns>
         [Route("GetGy_InspectBasisDetail")]
         [HttpGet]
+        [Permission(HModName = "Gy_InspectBasis", Operate = "_Query")]
         public ApiResult<DataSet> GetGy_InspectBasisDetail(string HID)
         {
             var model = LuBaoSevice.GetGy_InspectBasisBillDetail(HID);
@@ -7350,6 +7378,7 @@
         /// <returns></returns>
         [Route("DeltetGy_InspectBasis")]
         [HttpGet]
+        [Permission(HModName = "Gy_InspectBasis", Operate = "_Drop")]
         public object DeltetGy_InspectBasis(string HItemID, string user)
         {
             DataSet ds;
@@ -7430,6 +7459,7 @@
         /// <returns></returns>
         [Route("SaveGy_PostSkillList")]
         [HttpPost]
+        [Permission(HModName = "Gy_PostSkill_Edit")]
         public object SaveGy_PostSkillList([FromBody] JObject msg)
         {
             DataSet ds;
@@ -7643,6 +7673,7 @@
         /// <returns></returns>
         [Route("GetGy_PostSkillDetail")]
         [HttpGet]
+        [Permission(HModName = "Gy_PostSkill_Query")]
         public ApiResult<DataSet> GetGy_PostSkillDetail(string HID)
         {
             var model = LuBaoSevice.GetGy_PostSkillDetail(HID);
@@ -7655,6 +7686,7 @@
         /// <returns></returns>
         [Route("DeltetGy_PostSkill")]
         [HttpGet]
+        [Permission(HModName = "Gy_PostSkill_Drop")]
         public object DeltetGy_PostSkill(string HItemID, string user)
         {
             DataSet ds;
@@ -8072,6 +8104,7 @@
         /// <returns></returns>
         [Route("SaveGy_PostList")]
         [HttpPost]
+        [Permission(HModName = "Gy_Post_Edit")]
         public object SaveGy_PostList([FromBody] JObject msg)
         {
             DataSet ds;
@@ -8285,6 +8318,7 @@
         /// <returns></returns>
         [Route("GetGy_PostDetail")]
         [HttpGet]
+        [Permission(HModName = "Gy_Post_Query")]
         public ApiResult<DataSet> GetGy_PostDetail(string HID)
         {
             var model = LuBaoSevice.GetGy_PostDetail(HID);
@@ -8297,6 +8331,7 @@
         /// <returns></returns>
         [Route("DeltetGy_Post")]
         [HttpGet]
+        [Permission(HModName = "Gy_Post_Drop")]
         public object DeltetGy_Post(string HItemID, string user)
         {
             DataSet ds;
@@ -8565,6 +8600,7 @@
         #region 宀椾綅椤圭洰 瀵煎叆(淇濆瓨)
         [Route("Gy_Post/Gy_Post_btnSave")]
         [HttpPost]
+        [Permission(HModName = "Gy_Post_Edit")]
         public object Gy_Post_btnSave([FromBody] JObject sMainSub)
         {
             var _value = sMainSub["sMainSub"].ToString();
@@ -8685,6 +8721,7 @@
         /// <returns></returns>
         [Route("SaveGy_StockMoveStyleList")]
         [HttpPost]
+        [Permission(HModName = "Gy_StockMoveStyle_Edit")]
         public object SaveGy_StockMoveStyleList([FromBody] JObject msg)
         {
             DataSet ds;
@@ -8888,6 +8925,7 @@
         /// <returns></returns>
         [Route("GetGy_StockMoveStyleDetail")]
         [HttpGet]
+        [Permission(HModName = "Gy_StockMoveStyle_Query")]
         public ApiResult<DataSet> GetGy_StockMoveStyleDetail(string HID)
         {
             var model = LuBaoSevice.GetGy_StockMoveStyleDetail(HID);
@@ -8900,6 +8938,7 @@
         /// <returns></returns>
         [Route("DeltetGy_StockMoveStyle")]
         [HttpGet]
+        [Permission(HModName = "Gy_StockMoveStyle_Drop")]
         public object DeltetGy_StockMoveStyle(string HItemID, string user)
         {
             DataSet ds;
@@ -8965,6 +9004,7 @@
         /// <returns></returns>
         [Route("SaveGy_StockInStyleList")]
         [HttpPost]
+        [Permission(HModName = "Gy_StockInStyle_Edit")]
         public object SaveGy_StockInStyleList([FromBody] JObject msg)
         {
             DataSet ds;
@@ -9168,6 +9208,7 @@
         /// <returns></returns>
         [Route("GetGy_StockInStyleDetail")]
         [HttpGet]
+        [Permission(HModName = "Gy_StockInStyle_Query")]
         public ApiResult<DataSet> GetGy_StockInStyleDetail(string HID)
         {
             var model = LuBaoSevice.GetGy_StockInStyleDetail(HID);
@@ -9180,6 +9221,7 @@
         /// <returns></returns>
         [Route("DeltetGy_StockInStyle")]
         [HttpGet]
+        [Permission(HModName = "Gy_StockInStyle_Drop")]
         public object DeltetGy_StockInStyle(string HItemID, string user)
         {
             DataSet ds;
@@ -9245,6 +9287,7 @@
         /// <returns></returns>
         [Route("SaveGy_StockOutStyleList")]
         [HttpPost]
+        [Permission(HModName = "Gy_StockOutStyle_Edit")]
         public object SaveGy_StockOutStyleList([FromBody] JObject msg)
         {
             DataSet ds;
@@ -9448,6 +9491,7 @@
         /// <returns></returns>
         [Route("GetGy_StockOutStyleDetail")]
         [HttpGet]
+        [Permission(HModName = "Gy_StockOutStyle_Query")]
         public ApiResult<DataSet> GetGy_StockOutStyleDetail(string HID)
         {
             var model = LuBaoSevice.GetGy_StockOutStyleDetail(HID);
@@ -9460,6 +9504,7 @@
         /// <returns></returns>
         [Route("DeltetGy_StockOutStyle")]
         [HttpGet]
+        [Permission(HModName = "Gy_StockOutStyle_Drop")]
         public object DeltetGy_StockOutStyle(string HItemID, string user)
         {
             DataSet ds;
@@ -9525,6 +9570,7 @@
         /// <returns></returns>
         [Route("SaveGy_AreaSetList")]
         [HttpPost]
+        [Permission(HModName = "Gy_AreaSet_Edit")]
         public object SaveGy_AreaSetList([FromBody] JObject msg)
         {
             DataSet ds;
@@ -9728,6 +9774,7 @@
         /// <returns></returns>
         [Route("GetGy_AreaSetDetail")]
         [HttpGet]
+        [Permission(HModName = "Gy_AreaSet_Query")]
         public ApiResult<DataSet> GetGy_AreaSetDetail(string HID)
         {
             var model = LuBaoSevice.GetGy_AreaSetDetail(HID);
@@ -9740,6 +9787,7 @@
         /// <returns></returns>
         [Route("DeltetGy_AreaSet")]
         [HttpGet]
+        [Permission(HModName = "Gy_AreaSet_Drop")]
         public object DeltetGy_AreaSet(string HItemID, string user)
         {
             DataSet ds;
@@ -9805,6 +9853,7 @@
         /// <returns></returns>
         [Route("SaveGy_SellStyleList")]
         [HttpPost]
+        [Permission(HModName = "Gy_SellStyle_Edit")]
         public object SaveGy_SellStyleList([FromBody] JObject msg)
         {
             DataSet ds;
@@ -10008,6 +10057,7 @@
         /// <returns></returns>
         [Route("GetGy_SellStyleDetail")]
         [HttpGet]
+        [Permission(HModName = "Gy_SellStyle_Query")]
         public ApiResult<DataSet> GetGy_SellStyleDetail(string HID)
         {
             var model = LuBaoSevice.GetGy_SellStyleDetail(HID);
@@ -10020,6 +10070,7 @@
         /// <returns></returns>
         [Route("DeltetGy_SellStyle")]
         [HttpGet]
+        [Permission(HModName = "Gy_SellStyle_Drop")]
         public object DeltetGy_SellStyle(string HItemID, string user)
         {
             DataSet ds;
@@ -10085,6 +10136,7 @@
         /// <returns></returns>
         [Route("SaveGy_PoStockStyleList")]
         [HttpPost]
+        [Permission(HModName = "Gy_PoStockStyle_Edit")]
         public object SaveGy_PoStockStyleList([FromBody] JObject msg)
         {
             DataSet ds;
@@ -10288,6 +10340,7 @@
         /// <returns></returns>
         [Route("GetGy_PoStockStyleDetail")]
         [HttpGet]
+        [Permission(HModName = "Gy_PoStockStyle_Query")]
         public ApiResult<DataSet> GetGy_PoStockStyleDetail(string HID)
         {
             var model = LuBaoSevice.GetGy_PoStockStyleDetail(HID);
@@ -10300,6 +10353,7 @@
         /// <returns></returns>
         [Route("DeltetGy_PoStockStyle")]
         [HttpGet]
+        [Permission(HModName = "Gy_PoStockStyle_Drop")]
         public object DeltetGy_PoStockStyle(string HItemID, string user)
         {
             DataSet ds;
@@ -10365,6 +10419,7 @@
         /// <returns></returns>
         [Route("SaveGy_SupTypeList")]
         [HttpPost]
+        [Permission(HModName = "Gy_SupType_Edit")]
         public object SaveGy_SupTypeList([FromBody] JObject msg)
         {
             DataSet ds;
@@ -10568,6 +10623,7 @@
         /// <returns></returns>
         [Route("GetGy_SupTypeDetail")]
         [HttpGet]
+        [Permission(HModName = "Gy_SupType_Query")]
         public ApiResult<DataSet> GetGy_SupTypeDetail(string HID)
         {
             var model = LuBaoSevice.GetGy_SupTypeDetail(HID);
@@ -10580,6 +10636,7 @@
         /// <returns></returns>
         [Route("DeltetGy_SupType")]
         [HttpGet]
+        [Permission(HModName = "Gy_SupType_Drop")]
         public object DeltetGy_SupType(string HItemID, string user)
         {
             DataSet ds;
@@ -10796,6 +10853,7 @@
         #region 渚涘簲鍟嗗垎绫婚」鐩� 瀵煎叆(淇濆瓨)
         [Route("Gy_SupType/Gy_SupType_btnSave")]
         [HttpPost]
+        [Permission(HModName = "Gy_SupType_Edit")]
         public object Gy_SupType_btnSave([FromBody] JObject sMainSub)
         {
             var _value = sMainSub["sMainSub"].ToString();
@@ -11247,6 +11305,7 @@
         /// <returns></returns>
         [Route("SaveGy_CusTypeList")]
         [HttpPost]
+        [Permission(HModName = "Gy_CusType_Edit")]
         public object SaveGy_CusTypeList([FromBody] JObject msg)
         {
             DataSet ds;
@@ -11450,6 +11509,7 @@
         /// <returns></returns>
         [Route("GetGy_CusTypeDetail")]
         [HttpGet]
+        [Permission(HModName = "Gy_CusType_Query")]
         public ApiResult<DataSet> GetGy_CusTypeDetail(string HID)
         {
             var model = LuBaoSevice.GetGy_CusTypeDetail(HID);
@@ -11462,6 +11522,7 @@
         /// <returns></returns>
         [Route("DeltetGy_CusType")]
         [HttpGet]
+        [Permission(HModName = "Gy_CusType_Drop")]
         public object DeltetGy_CusType(string HItemID, string user)
         {
             DataSet ds;
@@ -11679,6 +11740,7 @@
         #region 瀹㈡埛鍒嗙被椤圭洰 瀵煎叆(淇濆瓨)
         [Route("Gy_CusType/Gy_CusType_btnSave")]
         [HttpPost]
+        [Permission(HModName = "Gy_CusType_Edit")]
         public object Gy_CusType_btnSave([FromBody] JObject sMainSub)
         {
             var _value = sMainSub["sMainSub"].ToString();
@@ -11799,6 +11861,7 @@
         /// <returns></returns>
         [Route("SaveGy_StockCheckItemList")]
         [HttpPost]
+        [Permission(HModName = "Gy_StockCheckItem_Edit")]
         public object SaveGy_StockCheckItemList([FromBody] JObject msg)
         {
             DataSet ds;
@@ -12002,6 +12065,7 @@
         /// <returns></returns>
         [Route("GetGy_StockCheckItemDetail")]
         [HttpGet]
+        [Permission(HModName = "Gy_StockCheckItem_Query")]
         public ApiResult<DataSet> GetGy_StockCheckItemDetail(string HID)
         {
             var model = LuBaoSevice.GetGy_StockCheckItemDetail(HID);
@@ -12014,6 +12078,7 @@
         /// <returns></returns>
         [Route("DeltetGy_StockCheckItem")]
         [HttpGet]
+        [Permission(HModName = "Gy_StockCheckItem_Drop")]
         public object DeltetGy_StockCheckItem(string HItemID, string user)
         {
             DataSet ds;
@@ -12079,6 +12144,7 @@
         /// <returns></returns>
         [Route("SaveGy_ProjectMoneyList")]
         [HttpPost]
+        [Permission(HModName = "Gy_ProjectMoney_Edit")]
         public object SaveGy_ProjectMoneyList([FromBody] JObject msg)
         {
             DataSet ds;
@@ -12281,6 +12347,8 @@
         /// <returns></returns>
         [Route("GetGy_ProjectMoneyDetail")]
         [HttpGet]
+        [Permission(HModName = "Gy_ProjectMoney_Query")]
+
         public ApiResult<DataSet> GetGy_ProjectMoneyDetail(string HID)
         {
             var model = LuBaoSevice.GetGy_ProjectMoneyDetail(HID);
@@ -12293,6 +12361,7 @@
         /// <returns></returns>
         [Route("DeltetGy_ProjectMoney")]
         [HttpGet]
+        [Permission(HModName = "Gy_ProjectMoney_Drop")]
         public object DeltetGy_ProjectMoney(string HItemID, string user)
         {
             DataSet ds;
@@ -18734,6 +18803,7 @@
         /// <returns></returns>
         [Route("Xt_User/Gy_UserByUserListDrop")]
         [HttpGet]
+        [Permission(HModName = "Gy_UserByUser_Drop")]
         public object DeltetGy_Material(string HItemID, string user)
         {
             DataSet ds;
@@ -18823,6 +18893,8 @@
         /// <returns></returns>
         [Route("Gy_UserByUserEdit")]
         [HttpGet]
+        [Permission(HModName = "Gy_UserByUser_Query")]
+
         public ApiResult<DataSet> Gy_UserByUserEdit(string HID)
         {
             var model = LuBaoSevice.Gy_UserByUserEdit(HID);
@@ -19351,6 +19423,7 @@
         /// <returns></returns>
         [Route("Web/GetClassTimePrjGroupBillEdit_Json")]
         [HttpGet]
+
         public object GetClassTimePrjGroupBillEdit_Json(string sWhere)
         {
             //if (!DBUtility.ClsPub.Security_Log("Gy_ClassTimePrj", 1, false, user))
@@ -19444,6 +19517,7 @@
         /// <returns></returns>
         [Route("Web/SaveGetClassTimePrjGroupList")]
         [HttpGet]
+        [Permission(HModName = "Gy_ClassTimePrj")]
         public object SaveGetClassTimePrjGroupList(string HNumber, string HName, string HDeptID, string refSav, string user, string HItem)
         {
 
@@ -24298,7 +24372,6 @@
             int rectWidth = int.Parse(rectRegexResult.Groups[3].Value);
             int rectHeight = int.Parse(rectRegexResult.Groups[4].Value);
 
-            var fiEnum = fieldRegexResult.Groups;
 
             // 妯℃澘瀛楃涓� 浣嶇疆 瀛楃瀹介珮
             int fieldLocationX = int.Parse(fieldRegexResult.Groups[1].Value);
@@ -24331,7 +24404,7 @@
                     fieldWidth = fieldHeight;
                 }
 
-                // 璁$畻姣忚搴旇鏀惧灏戝瓧绗︼紙姝g‘绠楁硶锛�
+                // 璁$畻姣忚搴旇鏀惧灏戝瓧绗�
                 int maxCharsPerLine = (int)Math.Ceiling((double)fieldValue.Length / lineCount);
 
                 for (int i = 0; i < lineCount; i++)
@@ -24339,13 +24412,13 @@
                     // 璧峰浣嶇疆
                     int start = i * maxCharsPerLine;
 
-                    // 鍓╀綑澶氬皯瀛楃锛堟牳蹇冿細淇濊瘉涓嶈秺鐣岋級
+                    // 鍓╀綑澶氬皯瀛楃
                     int remaining = fieldValue.Length - start;
 
                     if (remaining <= 0)
                         break;
 
-                    // 鏈鍙栧嚑涓瓧绗︼紙缁濆瀹夊叏锛�
+                    // 鏈鍙栧嚑涓瓧绗�
                     int take = Math.Min(maxCharsPerLine, remaining);
 
                     // 鎴彇褰撳墠琛屾枃鏈�
diff --git a/WebAPI/Controllers/XSGL/Xs_CusBalanceReportController.cs b/WebAPI/Controllers/XSGL/Xs_CusBalanceReportController.cs
index 1631778..d0f3394 100644
--- a/WebAPI/Controllers/XSGL/Xs_CusBalanceReportController.cs
+++ b/WebAPI/Controllers/XSGL/Xs_CusBalanceReportController.cs
@@ -11,6 +11,7 @@
 using System.IO;
 using System.Web;
 using WebAPI.Controllers.SCGL.鏃ヨ鍒掔鐞�;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers
 {
@@ -32,6 +33,7 @@
         /// </summary>
         [Route("Xs_CusBalanceReport/list")]
         [HttpGet]
+        [Permission(HModName = "Xs_CusBalanceReport_Query")]
         public object getXs_CusBalanceReport(string sWhere, string user, string userid)
         {
             try
diff --git a/WebAPI/Controllers/XSGL/Xs_CusRatingChangeBillController.cs b/WebAPI/Controllers/XSGL/Xs_CusRatingChangeBillController.cs
index 55c89b0..5114c3e 100644
--- a/WebAPI/Controllers/XSGL/Xs_CusRatingChangeBillController.cs
+++ b/WebAPI/Controllers/XSGL/Xs_CusRatingChangeBillController.cs
@@ -8,10 +8,12 @@
 using System.Data.SqlClient;
 using System.Web.Http;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers
 {
     //鏀舵鍗旵ontroller
+    [Permission(HModName = "Xs_CusRatingChangeBill")]
     public class Xs_CusRatingChangeBillController : ApiController
     {
         //鑾峰彇绯荤粺鍙傛暟
@@ -31,6 +33,7 @@
         /// </summary>
         [Route("Xs_CusRatingChangeBill/list")]
         [HttpGet]
+        [Permission(HModName = "Xs_CusRatingChangeBill", Operate = "_Query")]
         public object getXs_CusRatingChangeBill(string sWhere, string user)
         {
             try
@@ -86,6 +89,7 @@
         #region 淇$敤棰濆害鐢宠鍗曚繚瀛� 鏂板/缂栬緫
         [Route("Xs_CusRatingChangeBill/SaveXs_CusRatingChangeBill")]
         [HttpPost]
+        [Permission(HModName = "Xs_CusRatingChangeBill", Operate = "_Edit")]
         public object SaveXs_CusRatingChangeBill([FromBody] JObject msg)
         {
             var _value = msg["msg"].ToString();
@@ -315,6 +319,7 @@
         /// </summary>
         [Route("Xs_CusRatingChangeBill/delete")]
         [HttpGet]
+        [Permission(HModName = "Xs_CusRatingChangeBill", Operate = "_Drop")]
         public object deleteXs_CusRatingChangeBill(string HInterID, string user)
         {
             try
@@ -400,6 +405,7 @@
         /// <returns></returns>
         [Route("Xs_CusRatingChangeBill/AuditXs_CusRatingChangeBill")]
         [HttpGet]
+        [Permission(HModName = "Xs_CusRatingChangeBill", Operate = "_Check")]
         public object AuditXs_CusRatingChangeBill(int HInterID, int IsAudit, string CurUserName)
         {
             string ModRightNameCheck = "Xs_CusRatingChangeBill_Check";
@@ -574,6 +580,7 @@
         /// <returns></returns>
         [Route("Xs_CusRatingChangeBill/CloseXs_CusRatingChangeBill")]
         [HttpGet]
+        [Permission(HModName = "Xs_CusRatingChangeBill", Operate = "_Close")]
         public object CloseXs_CusRatingChangeBill(int HInterID, int IsAudit, string CurUserName)
         {
             string ModRightNameCheck = "Xs_CusRatingChangeBill_Close";
@@ -719,6 +726,7 @@
         /// <returns></returns>
         [Route("Xs_CusRatingChangeBill/DeleteXs_CusRatingChangeBill")]
         [HttpGet]
+        [Permission(HModName = "Xs_CusRatingChangeBill", Operate = "_Delete")]
         public object DeleteXs_CusRatingChangeBill(int HInterID, int IsAudit, string CurUserName)
         {
             string ModRightNameCheck = "Xs_CusRatingChangeBill_Delete";
@@ -854,6 +862,7 @@
         /// </summary>
         [Route("Xs_CusRatingChangeBill/getCustomerBalance")]
         [HttpGet]
+        [Permission(HModName = "Gy_Customer", Operate = "_Balance")]
         public object getCustomerBalance(Int64 HCusID, string CurUserName)
         {
             try
diff --git a/WebAPI/Controllers/XSGL/Xs_ExceptiveCheckRequestBillController.cs b/WebAPI/Controllers/XSGL/Xs_ExceptiveCheckRequestBillController.cs
index 96cff0d..23fbc3c 100644
--- a/WebAPI/Controllers/XSGL/Xs_ExceptiveCheckRequestBillController.cs
+++ b/WebAPI/Controllers/XSGL/Xs_ExceptiveCheckRequestBillController.cs
@@ -8,10 +8,12 @@
 using System.Data.SqlClient;
 using System.Web.Http;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers
 {
     //鐗规壒鐢宠鍗旵ontroller
+    [Permission(HModName = "Xs_ExceptiveCheckRequestBill")]
     public class Xs_ExceptiveCheckRequestBillController : ApiController
     {
         //鑾峰彇绯荤粺鍙傛暟
@@ -31,6 +33,7 @@
         /// </summary>
         [Route("Xs_ExceptiveCheckRequestBill/list")]
         [HttpGet]
+        [Permission(HModName = "Xs_ExceptiveCheckRequestBill", Operate = "_Query")]
         public object getXs_ExceptiveCheckRequestBill(string sWhere, string user)
         {
             try
@@ -86,6 +89,7 @@
         #region 鐗规壒鐢宠鍗曚繚瀛� 鏂板/缂栬緫
         [Route("Xs_ExceptiveCheckRequestBill/SaveXs_ExceptiveCheckRequestBill")]
         [HttpPost]
+        [Permission(HModName = "Xs_ExceptiveCheckRequestBill", Operate = "_Edit")]
         public object SaveXs_ExceptiveCheckRequestBill([FromBody] JObject msg)
         {
             var _value = msg["msg"].ToString();
@@ -315,6 +319,7 @@
         /// </summary>
         [Route("Xs_ExceptiveCheckRequestBill/delete")]
         [HttpGet]
+        [Permission(HModName = "Xs_ExceptiveCheckRequestBill", Operate = "_Drop")]
         public object deleteXs_ExceptiveCheckRequestBill(string HInterID, string user)
         {
             try
@@ -401,6 +406,7 @@
         /// <returns></returns>
         [Route("Xs_ExceptiveCheckRequestBill/AuditXs_ExceptiveCheckRequestBill")]
         [HttpGet]
+        [Permission(HModName = "Xs_ExceptiveCheckRequestBill", Operate = "_Check")]
         public object AuditXs_ExceptiveCheckRequestBill(int HInterID, int IsAudit, string CurUserName)
         {
             string ModRightNameCheck = "Xs_ExceptiveCheckRequestBill_Check";
@@ -758,6 +764,7 @@
         /// <returns></returns>
         [Route("Xs_ExceptiveCheckRequestBill/CloseXs_ExceptiveCheckRequestBill")]
         [HttpGet]
+        [Permission(HModName = "Xs_ExceptiveCheckRequestBill", Operate = "_Close")]
         public object CloseXs_ExceptiveCheckRequestBill(int HInterID, int IsAudit, string CurUserName)
         {
             string ModRightNameCheck = "Xs_ExceptiveCheckRequestBill_Close";
@@ -903,6 +910,7 @@
         /// <returns></returns>
         [Route("Xs_ExceptiveCheckRequestBill/DeleteXs_ExceptiveCheckRequestBill")]
         [HttpGet]
+        [Permission(HModName = "Xs_ExceptiveCheckRequestBill", Operate = "_Delete")]
         public object DeleteXs_ExceptiveCheckRequestBill(int HInterID, int IsAudit, string CurUserName)
         {
             string ModRightNameCheck = "Xs_ExceptiveCheckRequestBill_Delete";
diff --git a/WebAPI/Controllers/XSGL/Xs_OutDoorBillController.cs b/WebAPI/Controllers/XSGL/Xs_OutDoorBillController.cs
index f9e8484..d900904 100644
--- a/WebAPI/Controllers/XSGL/Xs_OutDoorBillController.cs
+++ b/WebAPI/Controllers/XSGL/Xs_OutDoorBillController.cs
@@ -10,9 +10,11 @@
 using System.Web.Http;
 using System.Windows.Forms;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers
 {
+    [Permission(HModName = "Xs_OutDoorCheckBill")]
     //鍑洪棬纭鍗旵ontroller
     public class Xs_OutDoorBillController : ApiController
     {
@@ -33,6 +35,7 @@
         /// </summary>
         [Route("Xs_OutDoorBill/list")]
         [HttpGet]
+        [Permission(HModName = "Xs_OutDoorCheckBillList")]
         public object getXs_OutDoorBill(string sWhere, string user)
         {
             try
@@ -92,6 +95,7 @@
         /// </summary>
         [Route("Xs_OutDoorBill/list_checked")]
         [HttpGet]
+        [Permission(HModName = "Xs_OutDoorCheckBillList")]
         public object getXs_OutDoorBill_Checked(string sWhere, string user)
         {
             try
@@ -147,6 +151,7 @@
         #region 鍑洪棬纭鍗曚繚瀛� 鏂板/缂栬緫
         [Route("Xs_OutDoorBill/SaveXs_OutDoorBill")]
         [HttpPost]
+        [Permission(HModName = "Xs_OutDoorCheckBill_Edit")]
         public object SaveXs_OutDoorBill([FromBody] JObject msg)
         {
             var _value = msg["msg"].ToString();
@@ -372,6 +377,7 @@
         /// </summary>
         [Route("Xs_OutDoorBill/delete")]
         [HttpGet]
+        [Permission(HModName = "Xs_OutDoorCheckBill_Drop")]
         public object deleteXs_OutDoorBill(string HInterID, string user)
         {
             try
@@ -508,6 +514,7 @@
         /// <returns></returns>
         [Route("Xs_OutDoorBill/AuditXs_OutDoorBill")]
         [HttpGet]
+        [Permission(HModName = "Xs_OutDoorCheckBill_Check")]
         public object AuditXs_OutDoorBill(int HInterID, int IsAudit, string CurUserName)
         {
             string ModRightNameCheck = "Xs_OutDoorCheckBill_Check";
@@ -754,6 +761,7 @@
         /// <returns></returns>
         [Route("Xs_OutDoorBill/CloseXs_OutDoorBill")]
         [HttpGet]
+        [Permission(HModName = "Xs_OutDoorCheckBill_Close")]
         public object CloseXs_OutDoorBill(int HInterID, int IsAudit, string CurUserName)
         {
             string ModRightNameCheck = "Xs_OutDoorCheckBill_Close";
@@ -899,6 +907,7 @@
         /// <returns></returns>
         [Route("Xs_OutDoorBill/DeleteXs_OutDoorBill")]
         [HttpGet]
+        [Permission(HModName = "Xs_OutDoorCheckBill_Delete")]
         public object DeleteXs_OutDoorBill(int HInterID, int IsAudit, string CurUserName)
         {
             string ModRightNameCheck = "Xs_OutDoorCheckBill_Delete";
@@ -1220,6 +1229,8 @@
         #region  鍑洪棬纭鍗曟姤琛�
         [Route("Xs_OutDoorBill/Xs_OutDoorBillReport")]
         [HttpGet]
+        [Permission(HModName = "Xs_OutDoorBillReport")]
+
         public object Xs_OutDoorBillReport(string HBeginDate, string HEndDate, string sWhere, string user,int HOperationType)
         {
             try
diff --git a/WebAPI/Controllers/XSGL/Xs_ReceivableBillController.cs b/WebAPI/Controllers/XSGL/Xs_ReceivableBillController.cs
index d20866a..cc5c84a 100644
--- a/WebAPI/Controllers/XSGL/Xs_ReceivableBillController.cs
+++ b/WebAPI/Controllers/XSGL/Xs_ReceivableBillController.cs
@@ -9,9 +9,11 @@
 using System.Web.Http;
 using WebAPI.Models;
 using SyntacticSugar.constant;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers
 {
+    [Permission(HModName = "Xs_ReceivableBill")]
     //鏀舵鍗旵ontroller
     public class Xs_ReceivableBillController : ApiController
     {
@@ -65,6 +67,7 @@
         /// </summary>
         [Route("Xs_ReceivableBill/list")]
         [HttpGet]
+        [Permission(HModName = "Xs_ReceivableBill_Query")]
         public object getXs_ReceivableBill(string sWhere, string user)
         {
             try
@@ -125,6 +128,7 @@
         /// </summary>
         [Route("Xs_ReceivableBill/list_byPage")]
         [HttpGet]
+        [Permission(HModName = "Xs_ReceivableBill_Query")]
         public object getXs_ReceivableBill_byPage(string sWhere, string user, string Organization, int page, int size)
         {
             try
@@ -180,6 +184,7 @@
         #region 搴旀敹鍗曚繚瀛� 鏂板/缂栬緫
         [Route("Xs_ReceivableBill/SaveXs_ReceivableBill")]
         [HttpPost]
+        [Permission(HModName = "Xs_ReceivableBill_Edit")]
         public object SaveXs_ReceivableBill([FromBody] JObject msg)
         {
             var _value = msg["msg"].ToString();
@@ -452,6 +457,7 @@
         /// </summary>
         [Route("Xs_ReceivableBill/delete")]
         [HttpGet]
+        [Permission(HModName = "Xs_ReceivableBill_Drop")]
         public object deleteXs_ReceivableBill(string HInterID, string user)
         {
             try
@@ -601,6 +607,7 @@
         /// <returns></returns>
         [Route("Xs_ReceivableBill/AuditXs_ReceivableBill")]
         [HttpGet]
+        [Permission(HModName = "Xs_ReceivableBill_Check")]
         public object AuditXs_ReceivableBill(int HInterID, int IsAudit, string CurUserName)
         {
             string ModRightNameCheck = "Xs_ReceivableBill_Check";
@@ -827,6 +834,7 @@
         /// <returns></returns>
         [Route("Xs_ReceivableBill/CloseXs_ReceivableBill")]
         [HttpGet]
+        [Permission(HModName = "Xs_ReceivableBill_Close")]
         public object CloseXs_ReceivableBill(int HInterID, int IsAudit, string CurUserName)
         {
             string ModRightNameCheck = "Xs_ReceivableBill_Close";
@@ -972,6 +980,7 @@
         /// <returns></returns>
         [Route("Xs_ReceivableBill/DeleteXs_ReceivableBill")]
         [HttpGet]
+        [Permission(HModName = "Xs_ReceivableBill_Delete")]
         public object DeleteXs_ReceivableBill(int HInterID, int IsAudit, string CurUserName)
         {
             string ModRightNameCheck = "Xs_ReceivableBill_Delete";
@@ -1627,6 +1636,7 @@
         #region 搴旀敹鍗曟煡璇㈠垪琛�
         [Route("Xs_ReceivableBill/QueryList")]
         [HttpGet]
+        [Permission(HModName = "Xs_ReceivableBill_Query")]
         public object QueryList(string sWhere, string user)
         {
             try
@@ -1683,6 +1693,7 @@
         #region 搴旀敹鍗曟煡璇㈠瓙鍒楄〃
         [Route("Xs_ReceivableBill/QuerySubList")]
         [HttpGet]
+        [Permission(HModName = "Xs_ReceivableBill_Query")]
         public object QuerySubList(string hmainid, string user)
         {
             try
diff --git a/WebAPI/Controllers/XSGL/Xs_SeOrderBillController.cs b/WebAPI/Controllers/XSGL/Xs_SeOrderBillController.cs
index 088a0ce..37c5fba 100644
--- a/WebAPI/Controllers/XSGL/Xs_SeOrderBillController.cs
+++ b/WebAPI/Controllers/XSGL/Xs_SeOrderBillController.cs
@@ -10,6 +10,7 @@
 using System.Web.Http;
 using WebAPI.Models;
 using SyntacticSugar.constant;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers
 {
@@ -3044,6 +3045,7 @@
         #region 閿�鍞鍗� 鏍规嵁鐢ㄦ埛鑾峰彇鐢ㄦ埛鍏宠仈瀹㈡埛杩囨护鏉′欢
         [Route("Xs_SeOrderBill/getCusIDListByUser")]
         [HttpGet]
+        [Permission(HModName = "Gy_UserLookAllCus")]
         public object getCusIDListByUser(string CurUserID, string CurUserName)
         {
             string sWhere = "";
diff --git a/WebAPI/Controllers/XSGL/Xs_SeOrderChangeBillController.cs b/WebAPI/Controllers/XSGL/Xs_SeOrderChangeBillController.cs
index 67f8f3b..1a660df 100644
--- a/WebAPI/Controllers/XSGL/Xs_SeOrderChangeBillController.cs
+++ b/WebAPI/Controllers/XSGL/Xs_SeOrderChangeBillController.cs
@@ -8,10 +8,12 @@
 using System.Data.SqlClient;
 using System.Web.Http;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers
 {
     //閿�鍞鍗曞彉鏇村崟Controller
+    [Permission(HModName = "Xs_SeOrderChangeBill")]
     public class Xs_SeOrderChangeBillController : ApiController
     {
         //鑾峰彇绯荤粺鍙傛暟
@@ -31,6 +33,7 @@
         /// </summary>
         [Route("Xs_SeOrderChangeBill/list")]
         [HttpGet]
+        [Permission(HModName = "Xs_SeOrderChangeBill", Operate = "_Query")]
         public object getXs_SeOrderChangeBill(string sWhere, string user)
         {
             try
@@ -86,6 +89,7 @@
         #region 閿�鍞鍗曞彉鏇村崟淇濆瓨 鏂板/缂栬緫
         [Route("Xs_SeOrderChangeBill/SaveXs_SeOrderChangeBill")]
         [HttpPost]
+        [Permission(HModName = "Xs_SeOrderChangeBill", Operate = "_Edit")]
         public object SaveXs_SeOrderChangeBill([FromBody] JObject msg)
         {
             var _value = msg["msg"].ToString();
@@ -315,6 +319,7 @@
         /// </summary>
         [Route("Xs_SeOrderChangeBill/delete")]
         [HttpGet]
+        [Permission(HModName = "Xs_SeOrderChangeBill", Operate = "_Drop")]
         public object deleteXs_SeOrderChangeBill(string HInterID, string user)
         {
             try
@@ -448,6 +453,7 @@
         /// <returns></returns>
         [Route("Xs_SeOrderChangeBill/AuditXs_SeOrderChangeBill")]
         [HttpGet]
+        [Permission(HModName = "Xs_SeOrderChangeBill", Operate = "_Check")]
         public object AuditXs_SeOrderChangeBill(int HInterID, int IsAudit, string CurUserName)
         {
             string ModRightNameCheck = "Xs_SeOrderChangeBill_Check";
@@ -749,6 +755,7 @@
         /// <returns></returns>
         [Route("Xs_SeOrderChangeBill/CloseXs_SeOrderChangeBill")]
         [HttpGet]
+        [Permission(HModName = "Xs_SeOrderChangeBill", Operate = "_Close")]
         public object CloseXs_SeOrderChangeBill(int HInterID, int IsAudit, string CurUserName)
         {
             string ModRightNameCheck = "Xs_SeOrderChangeBill_Close";
@@ -894,6 +901,7 @@
         /// <returns></returns>
         [Route("Xs_SeOrderChangeBill/DeleteXs_SeOrderChangeBill")]
         [HttpGet]
+        [Permission(HModName = "Xs_SeOrderChangeBill", Operate = "_Delete")]
         public object DeleteXs_SeOrderChangeBill(int HInterID, int IsAudit, string CurUserName)
         {
             string ModRightNameCheck = "Xs_SeOrderChangeBill_Delete";
diff --git a/WebAPI/Controllers/XSGL/Xs_SellOutChangeBillController.cs b/WebAPI/Controllers/XSGL/Xs_SellOutChangeBillController.cs
index bca5439..b07596e 100644
--- a/WebAPI/Controllers/XSGL/Xs_SellOutChangeBillController.cs
+++ b/WebAPI/Controllers/XSGL/Xs_SellOutChangeBillController.cs
@@ -8,9 +8,11 @@
 using System.Data.SqlClient;
 using System.Web.Http;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers
 {
+    [Permission(HModName = "Xs_SellOutChangeBill")]
     //閿�鍞皟浠峰崟Controller
     public class Xs_SellOutChangeBillController : ApiController
     {
@@ -31,6 +33,7 @@
         /// </summary>
         [Route("Xs_SellOutChangeBill/list")]
         [HttpGet]
+        [Permission(HModName = "Xs_SellOutChangeBill_Query")]
         public object getXs_SellOutChangeBill(string sWhere, string user)
         {
             try
@@ -86,6 +89,7 @@
         #region 閿�鍞皟浠峰崟淇濆瓨 鏂板/缂栬緫
         [Route("Xs_SellOutChangeBill/SaveXs_SellOutChangeBill")]
         [HttpPost]
+        [Permission(HModName = "Xs_SellOutChangeBill_Edit")]
         public object SaveXs_SellOutChangeBill([FromBody] JObject msg)
         {
             var _value = msg["msg"].ToString();
@@ -309,6 +313,7 @@
         /// </summary>
         [Route("Xs_SellOutChangeBill/delete")]
         [HttpGet]
+        [Permission(HModName = "Xs_SellOutChangeBill_Drop")]
         public object deleteXs_SellOutChangeBill(string HInterID, string user)
         {
             try
@@ -442,6 +447,7 @@
         /// <returns></returns>
         [Route("Xs_SellOutChangeBill/AuditXs_SellOutChangeBill")]
         [HttpGet]
+        [Permission(HModName = "Xs_SellOutChangeBill_Check")]
         public object AuditXs_SellOutChangeBill(int HInterID, int IsAudit, string CurUserName)
         {
             string ModRightNameCheck = "Xs_SellOutChangeBill_Check";
@@ -716,6 +722,7 @@
         /// <returns></returns>
         [Route("Xs_SellOutChangeBill/CloseXs_SellOutChangeBill")]
         [HttpGet]
+        [Permission(HModName = "Xs_SellOutChangeBill_Close")]
         public object CloseSc_ICMOChangeBill(int HInterID, int IsAudit, string CurUserName)
         {
             string ModRightNameCheck = "Xs_SellOutChangeBill_Close";
@@ -861,6 +868,7 @@
         /// <returns></returns>
         [Route("Xs_SellOutChangeBill/DeleteXs_SellOutChangeBill")]
         [HttpGet]
+        [Permission(HModName = "Xs_SellOutChangeBill_Delete")]
         public object DeleteSc_ICMOChangeBill(int HInterID, int IsAudit, string CurUserName)
         {
             string ModRightNameCheck = "Xs_SellOutChangeBill_Delete";
diff --git a/WebAPI/Controllers/XSGL/YS_ContactBalController.cs b/WebAPI/Controllers/XSGL/YS_ContactBalController.cs
index 6e96437..61f836c 100644
--- a/WebAPI/Controllers/XSGL/YS_ContactBalController.cs
+++ b/WebAPI/Controllers/XSGL/YS_ContactBalController.cs
@@ -11,6 +11,7 @@
 using System.IO;
 using System.Web;
 using WebAPI.Controllers.SCGL.鏃ヨ鍒掔鐞�;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers
 {
@@ -32,6 +33,7 @@
         /// </summary>
         [Route("YS_ContactBal/list")]
         [HttpGet]
+        [Permission(HModName = "YS_ContactBalReport_Query")]
         public object getYS_ContactBal(string sWhere, string user)
         {
             try
diff --git a/WebAPI/Controllers/XSGL/YS_ReceiveOtherBillController.cs b/WebAPI/Controllers/XSGL/YS_ReceiveOtherBillController.cs
index c7e73f0..b71f58a 100644
--- a/WebAPI/Controllers/XSGL/YS_ReceiveOtherBillController.cs
+++ b/WebAPI/Controllers/XSGL/YS_ReceiveOtherBillController.cs
@@ -8,9 +8,11 @@
 using System.Data.SqlClient;
 using System.Web.Http;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers
 {
+    [Permission(HModName = "YS_ReceiveOtherBillMain")]
     //鍏朵粬搴旀敹鍗旵ontroller
     public class YS_ReceiveOtherBillController : ApiController
     {
@@ -33,6 +35,7 @@
         /// </summary>
         [Route("YS_ReceiveOtherBill/YS_ReceiveOtherBillMainList")]
         [HttpGet]
+        [Permission(HModName = "YS_ReceiveOtherBillMain_Query")]
         public object YS_ReceiveOtherBillMainList(string sWhere, string user)
         {
             try
@@ -88,6 +91,7 @@
         #region 鍏朵粬搴旀敹鍗曚繚瀛� 鏂板/缂栬緫
         [Route("YS_ReceiveOtherBill/SaveYS_ReceiveOtherBillMain")]
         [HttpPost]
+        [Permission(HModName = "YS_ReceiveOtherBillMain_Edit")]
         public object SaveYS_ReceiveOtherBillMain([FromBody] JObject msg)
         {
             var _value = msg["msg"].ToString();
@@ -310,6 +314,7 @@
         /// </summary>
         [Route("YS_ReceiveOtherBill/DeleteYS_ReceiveOtherBillMain")]
         [HttpGet]
+        [Permission(HModName = "YS_ReceiveOtherBillMain_Drop")]
         public object DeleteYS_ReceiveOtherBillMain(string HInterID, string user)
         {
             try
@@ -457,6 +462,7 @@
         /// <returns></returns>
         [Route("YS_ReceiveOtherBill/AuditYS_ReceiveOtherBillMain")]
         [HttpGet]
+        [Permission(HModName = "YS_ReceiveOtherBillMain_Check")]
         public object AuditYS_ReceiveOtherBillMain(int HInterID, int IsAudit, string CurUserName)
         {
             string ModRightNameCheck = "YS_ReceiveOtherBillMain_Check";
@@ -692,6 +698,7 @@
         /// <returns></returns>
         [Route("YS_ReceiveOtherBill/CloseYS_ReceiveOtherBill")]
         [HttpGet]
+        [Permission(HModName = "YS_ReceiveOtherBill_Close")]
         public object CloseYS_ReceiveOtherBill(int HInterID, int IsAudit, string CurUserName)
         {
             string ModRightNameCheck = "YS_ReceiveOtherBill_Close";
@@ -837,6 +844,7 @@
         /// <returns></returns>
         [Route("YS_ReceiveOtherBill/DeleteYS_ReceiveOtherBill")]
         [HttpGet]
+        [Permission(HModName = "YS_ReceiveOtherBill_Delete")]
         public object DeleteYS_ReceiveOtherBill(int HInterID, int IsAudit, string CurUserName)
         {
             string ModRightNameCheck = "YS_ReceiveOtherBill_Delete";
diff --git "a/WebAPI/Controllers/\344\272\272\344\272\213\347\256\241\347\220\206/\345\205\245\350\201\214\347\224\263\350\257\267/HR_EmpEngageRequestBillController.cs" "b/WebAPI/Controllers/\344\272\272\344\272\213\347\256\241\347\220\206/\345\205\245\350\201\214\347\224\263\350\257\267/HR_EmpEngageRequestBillController.cs"
index 3834d93..ed7049d 100644
--- "a/WebAPI/Controllers/\344\272\272\344\272\213\347\256\241\347\220\206/\345\205\245\350\201\214\347\224\263\350\257\267/HR_EmpEngageRequestBillController.cs"
+++ "b/WebAPI/Controllers/\344\272\272\344\272\213\347\256\241\347\220\206/\345\205\245\350\201\214\347\224\263\350\257\267/HR_EmpEngageRequestBillController.cs"
@@ -10,9 +10,11 @@
 using System.Web.Http;
 using System.Windows.Forms;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers.椤圭洰绠$悊.宸ヤ綔浠诲姟
 {
+    [Permission(HModName = "HR_EmpEngageRequestBill")]
     public class HR_EmpEngageRequestBillController : ApiController
     {
         public DBUtility.ClsPub.Enum_BillStatus BillStatus;//鍗曟嵁鐘舵�侊紙鏂板锛屼慨鏀癸紝娴忚锛屾洿鏂板崟浠凤紝鍙樻洿锛�
@@ -94,6 +96,8 @@
         /// </summary>
         [Route("HR_EmpEngageRequestBill/AddEmpEngageRequestBill")]
         [HttpPost]
+        [Permission(HModName = "HR_EmpEngageRequestBill_Edit")]
+
         public object AddEmpEngageRequestBill([FromBody] JObject sMainSub)
         {
             //鑾峰彇鍙傛暟
@@ -411,8 +415,11 @@
         ///鍙傛暟锛歴tring sql銆�
         ///杩斿洖鍊硷細object銆�
         /// </summary>
+        
         [Route("HR_EmpEngageRequestBill/list")]
         [HttpGet]
+        [Permission(HModName = "HR_EmpEngageRequestBill_List")]
+
         public object getEmpEngageRequestBill(string sWhere, string user)
         {
             try
@@ -521,6 +528,8 @@
         /// </summary>
         [Route("HR_EmpEngageRequestBill/delete")]
         [HttpGet]
+        [Permission(HModName = "HR_EmpEngageRequestBill_Drop")]
+
         public object deleteEmpEngageRequestBill(string HInterID, string user)
         {
             try
@@ -578,6 +587,8 @@
         /// <returns></returns>
         [Route("HR_EmpEngageRequestBill/AuditHR_EmpEngageRequestBill")]
         [HttpGet]
+        [Permission(HModName = "HR_EmpEngageRequestBill_Check")]
+
         public object AuditHR_EmpEngageRequestBill(string HInterID, int Type, string user)
         {
             try
@@ -684,6 +695,8 @@
         #region 鍏ヨ亴鐢宠鍗� 鍏抽棴/鍙嶅叧闂姛鑳�
         [Route("HR_EmpEngageRequestBill/CloseHR_EmpEngageRequestBill")]
         [HttpGet]
+        [Permission(HModName = "HR_EmpEngageRequestBill_Close")]
+
         public object CloseHR_EmpEngageRequestBill(string HInterID, int Type, string user)
         {
             try
@@ -790,6 +803,8 @@
         #region 鍏ヨ亴鐢宠鍗� 浣滃簾/鍙嶄綔搴熷姛鑳�
         [Route("HR_EmpEngageRequestBill/DropHR_EmpEngageRequestBill")]
         [HttpGet]
+        [Permission(HModName = "HR_EmpEngageRequestBill_Delete")]
+
         public object DropHR_EmpEngageRequestBill(string HInterID, int Type, string user)
         {
             try
diff --git "a/WebAPI/Controllers/\345\223\201\350\264\250\347\256\241\347\220\206/\344\272\247\347\272\277\350\277\224\344\277\256\345\271\263\345\217\260/Sc_SourceLineRepairBillController.cs" "b/WebAPI/Controllers/\345\223\201\350\264\250\347\256\241\347\220\206/\344\272\247\347\272\277\350\277\224\344\277\256\345\271\263\345\217\260/Sc_SourceLineRepairBillController.cs"
index 0b8a122..9b7a346 100644
--- "a/WebAPI/Controllers/\345\223\201\350\264\250\347\256\241\347\220\206/\344\272\247\347\272\277\350\277\224\344\277\256\345\271\263\345\217\260/Sc_SourceLineRepairBillController.cs"
+++ "b/WebAPI/Controllers/\345\223\201\350\264\250\347\256\241\347\220\206/\344\272\247\347\272\277\350\277\224\344\277\256\345\271\263\345\217\260/Sc_SourceLineRepairBillController.cs"
@@ -10,9 +10,11 @@
 using System.Web.Http;
 using System.Windows.Forms;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers.鍝佽川绠$悊.浜х嚎杩斾慨骞冲彴
 {
+    [Permission(HModName = "Sc_SourceLineRepairBill")]
     public class Sc_SourceLineRepairBillController : ApiController
     {
         public DBUtility.ClsPub.Enum_BillStatus BillStatus;//鍗曟嵁鐘舵�侊紙鏂板锛屼慨鏀癸紝娴忚锛屾洿鏂板崟浠凤紝鍙樻洿锛�
@@ -31,6 +33,7 @@
         /// </summary>
         [Route("Sc_SourceLineRepairBillSub/AddSourceLineRepairBill")]
         [HttpPost]
+        [Permission(HModName = "Sc_SourceLineRepairBill", Operate = "_Edit")]
         public object AddSourceLineRepairBill([FromBody] JObject sMainSub)
         {
             try
@@ -206,6 +209,8 @@
         #region 浜х嚎杩斾慨骞冲彴 瀛愯〃1鍒犻櫎
         [Route("Sc_SourceLineRepairBill/deleteSubInfo")]
         [HttpGet]
+        [Permission(HModName = "Sc_SourceLineRepairBill", Operate = "_Drop")]
+
         public object deleteSubInfo(int HInterID, int HEntryID, string user)
         {
             try
@@ -247,6 +252,7 @@
         #region 浜х嚎杩斾慨骞冲彴 鑾峰彇涓嶈壇鐜囧崰姣斿垎鏋愬浘鏁版嵁
         [Route("Sc_SourceLineRepairBill/getBadReasonRateInfo")]
         [HttpGet]
+        [Permission(HModName = "Sc_SourceLineRepairBill", Operate = "_Query")]
         public object getBadReasonRateInfo(int HSourceInterID, int HSourceEntryID)
         {
             try
@@ -299,6 +305,7 @@
         #region 浜х嚎杩斾慨骞冲彴 鏍规嵁鏉″舰鐮佽幏鍙栦俊鎭�
         [Route("Sc_SourceLineRepairBill/getBarCodeInfo")]
         [HttpGet]
+        [Permission(HModName = "Sc_SourceLineRepairBill", Operate = "_Query")]
         public object getBarCodeInfo(string HBarCode)
         {
             try
diff --git "a/WebAPI/Controllers/\345\223\201\350\264\250\347\256\241\347\220\206/\345\256\242\350\257\211\345\244\204\347\220\206\345\215\225/Crm_CustomerAppealBillController.cs" "b/WebAPI/Controllers/\345\223\201\350\264\250\347\256\241\347\220\206/\345\256\242\350\257\211\345\244\204\347\220\206\345\215\225/Crm_CustomerAppealBillController.cs"
index 40beea2..fbf8d61 100644
--- "a/WebAPI/Controllers/\345\223\201\350\264\250\347\256\241\347\220\206/\345\256\242\350\257\211\345\244\204\347\220\206\345\215\225/Crm_CustomerAppealBillController.cs"
+++ "b/WebAPI/Controllers/\345\223\201\350\264\250\347\256\241\347\220\206/\345\256\242\350\257\211\345\244\204\347\220\206\345\215\225/Crm_CustomerAppealBillController.cs"
@@ -10,10 +10,12 @@
 using System.Web.Http;
 using System.Windows.Forms;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 
 namespace WebAPI.Controllers.鍝佽川绠$悊.瀹㈣瘔澶勭悊鍗�
 {
+    [Permission(HModName = "Crm_CustomerAppealBill")]
     public class Crm_CustomerAppealBillController : ApiController
     {
         public DBUtility.ClsPub.Enum_BillStatus BillStatus;//鍗曟嵁鐘舵�侊紙鏂板锛屼慨鏀癸紝娴忚锛屾洿鏂板崟浠凤紝鍙樻洿锛�
@@ -27,6 +29,7 @@
         #region 瀹㈣瘔澶勭悊鍗� 淇濆瓨
         [Route("Crm_CustomerAppealBill/SaveCustomerAppealBill")]
         [HttpPost]
+        [Permission(HModName = "Crm_CustomerAppealBill", Operate = "_Edit")]
         public object SaveCustomerAppealBill([FromBody] JObject msg)
         {
             try
@@ -299,6 +302,7 @@
         /// </summary>
         [Route("Crm_CustomerAppealBill/list")]
         [HttpGet]
+        [Permission(HModName = "Crm_CustomerAppealBill", Operate = "_Query")]
         public object getCustomerAppealBill(string sWhere, string user)
         {
             try
@@ -358,6 +362,7 @@
         /// </summary>
         [Route("Crm_CustomerAppealBill/delete")]
         [HttpGet]
+        [Permission(HModName = "Crm_CustomerAppealBill", Operate = "_Drop")]
         public object deleteCustomerAppealBill(string HInterID, string user)
         {
             try
@@ -414,6 +419,7 @@
         /// <returns></returns>
         [Route("Crm_CustomerAppealBill/AuditCrm_CustomerAppealBill")]
         [HttpGet]
+        [Permission(HModName = "Crm_CustomerAppealBill", Operate = "_Check")]
         public object AuditCrm_CustomerAppealBill(int HInterID, int IsAudit, string CurUserName)
         {
             string ModRightNameCheck = "Crm_CustomerAppealBill_Check";
@@ -559,6 +565,7 @@
         /// <returns></returns>
         [Route("Crm_CustomerAppealBill/CloseCrm_CustomerAppealBill")]
         [HttpGet]
+        [Permission(HModName = "Crm_CustomerAppealBill", Operate = "_Close")]
         public object CloseCrm_CustomerAppealBill(int HInterID, int IsAudit, string CurUserName)
         {
             string ModRightNameCheck = "Crm_CustomerAppealBill_Close";
@@ -704,6 +711,7 @@
         /// <returns></returns>
         [Route("Crm_CustomerAppealBill/DeleteCrm_CustomerAppealBill")]
         [HttpGet]
+        [Permission(HModName = "Crm_CustomerAppealBill", Operate = "_Delete")]
         public object DeleteCrm_CustomerAppealBill(int HInterID, int IsAudit, string CurUserName)
         {
             string ModRightNameCheck = "Crm_CustomerAppealBill_Delete";
diff --git "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_CardAddressController.cs" "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_CardAddressController.cs"
index 74da605..5d34129 100644
--- "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_CardAddressController.cs"
+++ "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_CardAddressController.cs"
@@ -9,9 +9,11 @@
 using System.Net.Http;
 using System.Web.Http;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers
 {
+    [Permission(HModName = "Gy_CardAddress")]
     public class Gy_CardAddressController : ApiController
     {
         //鑾峰彇绯荤粺鍙傛暟
@@ -25,6 +27,7 @@
         #region 璧勪骇浣嶇疆鍒楄〃鏌ヨ
         [Route("Gy_CardAddress/list")]
         [HttpGet]
+        [Permission(HModName = "Gy_CardAddress_Query")]
         public object list(string sWhere, string user, string Organization)
         {
             try
@@ -80,6 +83,7 @@
         #region 璧勪骇浣嶇疆 淇濆瓨/缂栬緫
         [Route("Gy_CardAddress/SaveGy_CardAddress")]
         [HttpPost]
+        [Permission(HModName = "Gy_CardAddress_Edit")]
         public object SaveGy_CardAddress([FromBody] JObject msg)
         {
             DataSet ds;
@@ -198,6 +202,7 @@
         #region 璧勪骇浣嶇疆 鍒犻櫎
         [Route("DeltetGy_CardAddress")]
         [HttpGet]
+        [Permission(HModName = "Gy_CardAddress_Delete")]
         public object DeltetGy_CardAddress(string HItemID, string user)
         {
             DataSet ds;
@@ -276,6 +281,7 @@
         #region 璧勪骇浣嶇疆 瀹℃牳
         [Route("Gy_CardAddress/AuditGy_CardAddress")]
         [HttpGet]
+        [Permission(HModName = "Gy_CardAddress_Check")]
         public object AuditGy_CardAddress(string HInterID, int Type, string user)
         {
             try
@@ -379,6 +385,7 @@
         #region 璧勪骇浣嶇疆 绂佺敤
         [Route("Gy_CardAddress/StopGy_CardAddress")]
         [HttpGet]
+        [Permission(HModName = "Gy_CardAddress_Stop")]
         public object StopGy_CardAddress(int HInterID, int IsStop, string CurUserName)
         {
             try
diff --git "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_CardChangeTypeController.cs" "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_CardChangeTypeController.cs"
index 437962b..6dcba09 100644
--- "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_CardChangeTypeController.cs"
+++ "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_CardChangeTypeController.cs"
@@ -9,9 +9,11 @@
 using System.Net.Http;
 using System.Web.Http;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers
 {
+    [Permission(HModName = "Gy_CardChangeType")]
     public class Gy_CardChangeTypeController : ApiController
     {
         //鑾峰彇绯荤粺鍙傛暟
@@ -25,6 +27,7 @@
         #region 鍙樺姩鏂瑰紡鍒楄〃鏌ヨ
         [Route("Gy_CardChangeType/list")]
         [HttpGet]
+        [Permission(HModName = "Gy_CardChangeType_Query")]
         public object list(string sWhere, string user, string Organization)
         {
             try
@@ -80,6 +83,7 @@
         #region 鍙樺姩鏂瑰紡 淇濆瓨/缂栬緫
         [Route("Gy_CardChangeType/SaveGy_CardChangeType")]
         [HttpPost]
+        [Permission(HModName = "Gy_CardChangeType_Edit")]
         public object SaveGy_CardChangeType([FromBody] JObject msg)
         {
             DataSet ds;
@@ -198,6 +202,7 @@
         #region 鍙樺姩鏂瑰紡 鍒犻櫎
         [Route("DeltetGy_CardChangeType")]
         [HttpGet]
+        [Permission(HModName = "Gy_CardChangeType_Delete")]
         public object DeltetGy_CardChangeType(string HItemID, string user)
         {
             DataSet ds;
@@ -276,6 +281,7 @@
         #region 鍙樺姩鏂瑰紡 瀹℃牳
         [Route("Gy_CardChangeType/AuditGy_CardChangeType")]
         [HttpGet]
+        [Permission(HModName = "Gy_CardChangeType_Check")]
         public object AuditGy_CardChangeType(string HInterID, int Type, string user)
         {
             try
@@ -379,6 +385,7 @@
         #region 鍙樺姩鏂瑰紡 绂佺敤
         [Route("Gy_CardChangeType/StopGy_CardChangeType")]
         [HttpGet]
+        [Permission(HModName = "Gy_CardChangeType_Stop")]
         public object StopGy_CardChangeType(int HInterID, int IsStop, string CurUserName)
         {
             try
diff --git "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_CardStatusController.cs" "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_CardStatusController.cs"
index 6419e40..1c06453 100644
--- "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_CardStatusController.cs"
+++ "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_CardStatusController.cs"
@@ -9,9 +9,11 @@
 using System.Net.Http;
 using System.Web.Http;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers
 {
+    [Permission(HModName = "Gy_CardStatus")]
     public class Gy_CardStatusController : ApiController
     {
         //鑾峰彇绯荤粺鍙傛暟
@@ -25,6 +27,7 @@
         #region 璧勪骇鐘舵�佸垪琛ㄦ煡璇�
         [Route("Gy_CardStatus/list")]
         [HttpGet]
+        [Permission(HModName = "Gy_CardStatus_Query")]
         public object list(string sWhere, string user, string Organization)
         {
             try
@@ -80,6 +83,7 @@
         #region 璧勪骇鐘舵�� 淇濆瓨/缂栬緫
         [Route("Gy_CardStatus/SaveGy_CardStatus")]
         [HttpPost]
+        [Permission(HModName = "Gy_CardStatus_Edit")]
         public object SaveGy_CardStatus([FromBody] JObject msg)
         {
             DataSet ds;
@@ -198,6 +202,7 @@
         #region 璧勪骇鐘舵�� 鍒犻櫎
         [Route("DeltetGy_CardStatus")]
         [HttpGet]
+        [Permission(HModName = "Gy_CardStatus_Delete")]
         public object DeltetGy_CardStatus(string HItemID, string user)
         {
             DataSet ds;
@@ -273,9 +278,10 @@
         }
         #endregion
 
-        #region 鍙樺姩鏂瑰紡 瀹℃牳
+        #region 璧勪骇鐘舵�� 瀹℃牳
         [Route("Gy_CardStatus/AuditGy_CardStatus")]
         [HttpGet]
+        [Permission(HModName = "Gy_CardStatus_Check")]
         public object AuditGy_CardStatus(string HInterID, int Type, string user)
         {
             try
@@ -376,9 +382,10 @@
         }
         #endregion
 
-        #region 鍙樺姩鏂瑰紡 绂佺敤
+        #region 璧勪骇鐘舵�� 绂佺敤
         [Route("Gy_CardStatus/StopGy_CardStatus")]
         [HttpGet]
+        [Permission(HModName = "Gy_CardStatus_Stop")]
         public object StopGy_CardStatus(int HInterID, int IsStop, string CurUserName)
         {
             try
diff --git "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_CardTypeController.cs" "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_CardTypeController.cs"
index 121fd08..f433459 100644
--- "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_CardTypeController.cs"
+++ "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_CardTypeController.cs"
@@ -9,9 +9,11 @@
 using System.Net.Http;
 using System.Web.Http;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers
 {
+    [Permission(HModName = "Gy_CardType")]
     public class Gy_CardTypeController : ApiController
     {
         //鑾峰彇绯荤粺鍙傛暟
@@ -25,6 +27,7 @@
         #region 璧勪骇绫诲埆鍒楄〃鏌ヨ
         [Route("Gy_CardType/list")]
         [HttpGet]
+        [Permission(HModName = "Gy_CardType_Query")]
         public object list(string sWhere, string user, string Organization)
         {
             try
@@ -80,6 +83,7 @@
         #region 璧勪骇绫诲埆 淇濆瓨/缂栬緫
         [Route("Gy_CardType/SaveGy_CardType")]
         [HttpPost]
+        [Permission(HModName = "Gy_CardType_Edit")]
         public object SaveGy_MaterType([FromBody] JObject msg)
         {
             DataSet ds;
@@ -198,6 +202,7 @@
         #region 璧勪骇绫诲埆 鍒犻櫎
         [Route("DeltetGy_CardType")]
         [HttpGet]
+        [Permission(HModName = "Gy_CardType_Delete")]
         public object DeltetGy_CardType(string HItemID, string user)
         {
             DataSet ds;
@@ -276,6 +281,7 @@
         #region 璧勪骇绫诲埆 瀹℃牳
         [Route("Gy_CardType/AuditGy_CardType")]
         [HttpGet]
+        [Permission(HModName = "Gy_CardType_Check")]
         public object AuditGy_CardType(string HInterID, int Type, string user)
         {
             try
@@ -379,6 +385,7 @@
         #region 璧勪骇绫诲埆 绂佺敤
         [Route("Gy_CardType/StopGy_CardType")]
         [HttpGet]
+        [Permission(HModName = "Gy_CardType_Stop")]
         public object StopGy_CardType(int HInterID, int IsStop, string CurUserName)
         {
             try
diff --git "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_CostCenterController.cs" "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_CostCenterController.cs"
index 4e980f7..08dc6bd 100644
--- "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_CostCenterController.cs"
+++ "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_CostCenterController.cs"
@@ -36,7 +36,7 @@
             {
                 List<object> columnNameList = new List<object>();
                 //鏌ョ湅鏉冮檺
-                          if (!DBUtility.ClsPub.Security_Log("Gy_CostCenter_Query", 1, false, user))
+                if (!DBUtility.ClsPub.Security_Log("Gy_CostCenter_Query", 1, false, user))
                 {
                     objJsonResult.code = "0";
                     objJsonResult.count = 0;
diff --git "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_SOPBillController.cs" "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_SOPBillController.cs"
index dc2d10c..b0248dc 100644
--- "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_SOPBillController.cs"
+++ "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_SOPBillController.cs"
@@ -9,6 +9,7 @@
 using System.Web.Http;
 using WebAPI.Models;
 using WebAPI.Service;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers.鍩虹璧勬枡.鍩虹璧勬枡
 {
@@ -131,6 +132,7 @@
             }
         }
 
+        #region 杩斿洖鐢熶骇宸ヤ綅鍒楄〃淇℃伅
         /// <summary>
         /// 杩斿洖鐢熶骇宸ヤ綅鍒楄〃淇℃伅
         ///鍙傛暟锛歴tring sql銆�
@@ -138,6 +140,7 @@
         /// </summary>
         [Route("Gy_SourceWorkStationSet_ToSop/Soplist")]
         [HttpGet]
+        [Permission(HModName = "Gy_SourceWorkStationSet_Query")]
         public object Soplist(string sWhere, string user)
         {
             try
@@ -180,6 +183,8 @@
             }
         }
 
+        #endregion
+        
         /// <summary>
         /// 鏍规嵁鐗╂枡锛屽伐鍗曟煡鎵句綔涓氭寚瀵间功
         ///鍙傛暟锛歴tring sql銆�
diff --git "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_ScrapReasonController.cs" "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_ScrapReasonController.cs"
index 06cc63d..794ed0b 100644
--- "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_ScrapReasonController.cs"
+++ "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_ScrapReasonController.cs"
@@ -14,6 +14,8 @@
 using WebAPI.Controllers.SCGL.鏃ヨ鍒掔鐞�;
 using System.IO;
 using SyntacticSugar.constant;
+using WebAPI.Utility;
+
 namespace WebAPI.Controllers
 {
     public class Gy_ScrapReasonController : ApiController
@@ -29,6 +31,7 @@
         /// </summary>
         [Route("Gy_ScrapReason/list")]
         [HttpGet]
+        [Permission(HModName = "Gy_ScrapReason_Query")]
         public object list(string sWhere, string user)
         {
             try
@@ -99,6 +102,7 @@
         /// </summary>
         [Route("Gy_ScrapReason/ModifyByID")]
         [HttpPost]
+        [Permission(HModName = "Gy_ScrapReason_Edit")]
         public object ModifyByID([FromBody] JObject oMain)
         {
             try
@@ -196,6 +200,7 @@
         /// <returns></returns>
         [Route("DeltetGy_ScrapReason")]
         [HttpGet]
+        [Permission(HModName = "Gy_ScrapReason_Delete")]
         public object DeltetGy_ScrapReason(string HItemID, string user)
         {
             DataSet ds;
@@ -287,6 +292,7 @@
         /// <returns></returns>
         [Route("Gy_ScrapReason/AuditGy_ScrapReason")]
         [HttpGet]
+        [Permission(HModName = "Gy_ScrapReason_Check")]
         public object AuditGy_ScrapReason(int HInterID, int IsAudit, string CurUserName)
         {
             try
@@ -373,6 +379,7 @@
 
         [Route("Gy_ScrapReason/AuditGy_ScrapReason_BT")]
         [HttpGet]
+        [Permission(HModName = "Gy_ScrapReason_Check")]
         public object AuditGy_ScrapReason_BT(string HNumber, int IsAudit, string CurUserName,string HOrgID)
         {
             try
@@ -468,6 +475,7 @@
         /// <returns></returns>
         [Route("Gy_ScrapReason/StopGy_ScrapReason")]
         [HttpGet]
+        [Permission(HModName = "Gy_ScrapReason_Stop")]
         public object StopGy_ScrapReason(int HInterID, int IsStop, string CurUserName)
         {
             try
@@ -775,6 +783,7 @@
         #region 鎶ュ簾鍘熷洜椤圭洰 瀵煎叆(淇濆瓨)
         [Route("Gy_ScrapReason/Gy_ScrapReason_btnSave")]
         [HttpPost]
+        [Permission(HModName = "Gy_ScrapReason_Edit")]
         public object Gy_ScrapReason_btnSave([FromBody] JObject sMainSub)
         {
             var _value = sMainSub["sMainSub"].ToString();
diff --git "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_TemporaryAreaController.cs" "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_TemporaryAreaController.cs"
index 8d06a51..cba5117 100644
--- "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_TemporaryAreaController.cs"
+++ "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_TemporaryAreaController.cs"
@@ -8,8 +8,10 @@
 using System.Data.SqlClient;
 using System.Web.Http;
 using WebAPI.Models;
+using WebAPI.Utility;
 namespace WebAPI.Controllers
 {
+    [Permission(HModName = "Gy_TemporaryArea")]
     public class Gy_TemporaryAreaController : ApiController
     {
         public DBUtility.ClsPub.Enum_BillStatus BillStatus;
@@ -22,6 +24,7 @@
         #region 鏆傛斁鍖� 淇濆瓨
         [Route("Gy_TemporaryAreaBill/ModifyByID")]
         [HttpPost]
+        [Permission(HModName = "Gy_TemporaryArea_Edit")]
         public object ModifyByID([FromBody] JObject oMain)
         {
             try
@@ -193,6 +196,7 @@
         /// </summary>
         [Route("Gy_TemporaryArea/list")]
         [HttpGet]
+        [Permission(HModName = "Gy_TemporaryAreaList")]
         public object getTemporaryArea(string sWhere, string user)
         {
             try
@@ -318,6 +322,7 @@
         /// </summary>
         [Route("Gy_TemporaryArea/delete")]
         [HttpGet]
+        [Permission(HModName = "Gy_TemporaryArea_Drop")]
         public object deleteTemporaryArea(string HInterID, string user)
         {
             try
@@ -395,6 +400,7 @@
         /// <returns></returns>
         [Route("Gy_TemporaryArea/AuditGy_TemporaryArea")]
         [HttpGet]
+        [Permission(HModName = "Gy_TemporaryArea_Check")]
         public object AuditGy_TemporaryArea(int HInterID, int IsAudit, string CurUserName)
         {
             try
@@ -497,6 +503,7 @@
         /// <returns></returns>
         [Route("Gy_TemporaryArea/StopGy_TemporaryArea")]
         [HttpGet]
+        [Permission(HModName = "Gy_TemporaryArea_Stop")]
         public object StopGy_TemporaryArea(int HInterID, int IsStop, string CurUserName)
         {
             try
diff --git "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_WorkStationBillController.cs" "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_WorkStationBillController.cs"
index a9a118d..2b5cb11 100644
--- "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_WorkStationBillController.cs"
+++ "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Gy_WorkStationBillController.cs"
@@ -8,6 +8,7 @@
 using System.Net.Http;
 using System.Web.Http;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers.鍩虹璧勬枡.鍩虹璧勬枡
 {
@@ -287,6 +288,7 @@
         /// <returns></returns>
         [Route("Gy_WorkStation/AuditGy_WorkStation")]
         [HttpGet]
+        [Permission(HModName = "Gy_WorkStation", Operate = "_Check")]
         public object AuditGy_WorkStation(int HInterID, int IsAudit, string CurUserName)
         {
             try
@@ -385,6 +387,7 @@
         /// <returns></returns>
         [Route("Gy_WorkStation/StopGy_WorkStation")]
         [HttpGet]
+        [Permission(HModName = "Gy_WorkStation", Operate = "_Stop")]
         public object StopGy_WorkStation(int HInterID, int IsStop, string CurUserName)
         {
             try
diff --git "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\267\245\350\265\204\345\237\272\347\241\200\350\265\204\346\226\231/Gy_ClassTimePrjController.cs" "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\267\245\350\265\204\345\237\272\347\241\200\350\265\204\346\226\231/Gy_ClassTimePrjController.cs"
index 9800336..e1bb8e1 100644
--- "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\267\245\350\265\204\345\237\272\347\241\200\350\265\204\346\226\231/Gy_ClassTimePrjController.cs"
+++ "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\267\245\350\265\204\345\237\272\347\241\200\350\265\204\346\226\231/Gy_ClassTimePrjController.cs"
@@ -9,9 +9,11 @@
 using System.Net.Http;
 using System.Web.Http;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers
 {
+    [Permission(HModName = "Gy_ClassTimePrj")]
     public class Gy_ClassTimePrjController : ApiController
     {
         public DBUtility.ClsPub.Enum_BillStatus BillStatus;
@@ -89,6 +91,7 @@
         /// <returns></returns>
         [Route("Gy_ClassTimePrjController/GetGy_ClassTimePrj_Delete_Json")]
         [HttpGet]
+        [Permission(HModName = "Gy_ClassTimePrj_Delete")]
         public object GetGy_ClassTimePrj_Delete_Json(Int64 HItemID, string HMaker)
         {
             try
@@ -165,6 +168,7 @@
         /// <returns></returns>
         [Route("Gy_ClassTimePrjController/GetGy_ClassTimePrj_Check_Json")]
         [HttpGet]
+        [Permission(HModName = "Gy_ClassTimePrj_Check")]
         public object GetGy_ClassTimePrj_Check_Json(Int64 HItemID, int IsAudit, string HMaker)
         {
             string sErrMsg = "";
@@ -248,6 +252,7 @@
         /// <returns></returns>
         [Route("Gy_ClassTimePrjController/GetGy_ClassTimePrj_Stop_Json")]
         [HttpGet]
+        [Permission(HModName = "Gy_ClassTimePrj_Stop")]
         public object GetGy_ClassTimePrj_Stop_Json(Int64 HItemID, int IsStop, string HMaker)
         {
             string sErrMsg = "";
@@ -327,6 +332,7 @@
         /// </summary>
         [Route("Gy_ClassTimePrjController/GetGy_ClassTimePrj_Save_Json")]
         [HttpPost]
+        [Permission(HModName = "Gy_ClassTimePrj_Add")]
         public object GetGy_ClassTimePrj_Save_Json([FromBody] JObject oMain)
         {
             try
diff --git "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\267\245\350\265\204\345\237\272\347\241\200\350\265\204\346\226\231/Gy_ClassTimePrjGroupController.cs" "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\267\245\350\265\204\345\237\272\347\241\200\350\265\204\346\226\231/Gy_ClassTimePrjGroupController.cs"
index eda2cc1..ee4827a 100644
--- "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\267\245\350\265\204\345\237\272\347\241\200\350\265\204\346\226\231/Gy_ClassTimePrjGroupController.cs"
+++ "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\267\245\350\265\204\345\237\272\347\241\200\350\265\204\346\226\231/Gy_ClassTimePrjGroupController.cs"
@@ -9,9 +9,11 @@
 using System.Net.Http;
 using System.Web.Http;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers
 {
+    [Permission(HModName = "Gy_ClassTimePrjGroup")]
     public class Gy_ClassTimePrjGroupController : ApiController
     {
         public DBUtility.ClsPub.Enum_BillStatus BillStatus;
@@ -89,6 +91,7 @@
         /// <returns></returns>
         [Route("Gy_ClassTimePrjGroupController/GetGy_ClassTimePrjGroup_Delete_Json")]
         [HttpGet]
+        [Permission(HModName = "Gy_ClassTimePrjGroup_Delete")]
         public object GetGy_ClassTimePrjGroup_Delete_Json(Int64 HItemID, string HMaker)
         {
             try
@@ -165,6 +168,7 @@
         /// <returns></returns>
         [Route("Gy_ClassTimePrjGroupController/GetGy_ClassTimePrjGroup_Check_Json")]
         [HttpGet]
+        [Permission(HModName = "Gy_ClassTimePrjGroup_Check")]
         public object GetGy_ClassTimePrjGroup_Check_Json(Int64 HItemID, int IsAudit, string HMaker)
         {
             string sErrMsg = "";
@@ -248,6 +252,7 @@
         /// <returns></returns>
         [Route("Gy_ClassTimePrjGroupController/GetGy_ClassTimePrjGroup_Stop_Json")]
         [HttpGet]
+        [Permission(HModName = "Gy_ClassTimePrjGroup_Stop")]
         public object GetGy_ClassTimePrjGroup_Stop_Json(Int64 HItemID, int IsStop, string HMaker)
         {
             string sErrMsg = "";
@@ -327,6 +332,7 @@
         /// </summary>
         [Route("Gy_ClassTimePrjGroupController/GetGy_ClassTimePrjGroup_Save_Json")]
         [HttpPost]
+        [Permission(HModName = "Gy_ClassTimePrjGroup_Edit")]
         public object GetGy_ClassTimePrjGroup_Save_Json([FromBody] JObject oMain)
         {
             try
diff --git "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\267\245\350\265\204\345\237\272\347\241\200\350\265\204\346\226\231/Gy_ProcCommPriceController.cs" "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\267\245\350\265\204\345\237\272\347\241\200\350\265\204\346\226\231/Gy_ProcCommPriceController.cs"
index 1d1c13a..23a46b0 100644
--- "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\267\245\350\265\204\345\237\272\347\241\200\350\265\204\346\226\231/Gy_ProcCommPriceController.cs"
+++ "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\267\245\350\265\204\345\237\272\347\241\200\350\265\204\346\226\231/Gy_ProcCommPriceController.cs"
@@ -8,9 +8,12 @@
 using System.Data.SqlClient;
 using System.Web.Http;
 using WebAPI.Models;
+using WebAPI.Utility;
+
 namespace WebAPI.Controllers
 {
     //濮斿宸ュ簭宸ヤ环Controller
+    [Permission(HModName = "Gy_ProcCommPriceList")]
     public class Gy_ProcCommPriceController : ApiController
     {
         public DBUtility.ClsPub.Enum_BillStatus BillStatus;//鍗曟嵁鐘舵�侊紙鏂板锛屼慨鏀癸紝娴忚锛屾洿鏂板崟浠凤紝鍙樻洿锛�
@@ -364,6 +367,7 @@
         /// </summary>
         [Route("Gy_ProcCommPrice/delete")]
         [HttpGet]
+        [Permission(HModName = "Gy_ProcCommPrice_Delete")]
         public object deleteGy_ProcCommPrice(string HInterID, string user)
         {
             try
diff --git "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\267\245\350\265\204\345\237\272\347\241\200\350\265\204\346\226\231/Gy_WorkPayTypeController.cs" "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\267\245\350\265\204\345\237\272\347\241\200\350\265\204\346\226\231/Gy_WorkPayTypeController.cs"
index 81c3d0a..db55238 100644
--- "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\267\245\350\265\204\345\237\272\347\241\200\350\265\204\346\226\231/Gy_WorkPayTypeController.cs"
+++ "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\267\245\350\265\204\345\237\272\347\241\200\350\265\204\346\226\231/Gy_WorkPayTypeController.cs"
@@ -9,6 +9,7 @@
 using System.Net.Http;
 using System.Web.Http;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers
 {
@@ -165,6 +166,7 @@
         /// <returns></returns>
         [Route("Gy_WorkPayTypeController/GetGy_WorkPayType_Check_Json")]
         [HttpGet]
+        [Permission(HModName = "Gy_WorkPayType_Check")]
         public object GetGy_WorkPayType_Check_Json(Int64 HItemID, int IsAudit, string HMaker)
         {
             string sErrMsg = "";
@@ -248,6 +250,7 @@
         /// <returns></returns>
         [Route("Gy_WorkPayTypeController/GetGy_WorkPayType_Stop_Json")]
         [HttpGet]
+        [Permission(HModName = "Gy_WorkPayType_Stop")]
         public object GetGy_WorkPayType_Stop_Json(Int64 HItemID, int IsStop, string HMaker)
         {
             string sErrMsg = "";
diff --git "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\267\245\350\265\204\345\237\272\347\241\200\350\265\204\346\226\231/Gy_WorkTypeController.cs" "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\267\245\350\265\204\345\237\272\347\241\200\350\265\204\346\226\231/Gy_WorkTypeController.cs"
index 58ccd2c..1f35d40 100644
--- "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\267\245\350\265\204\345\237\272\347\241\200\350\265\204\346\226\231/Gy_WorkTypeController.cs"
+++ "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\267\245\350\265\204\345\237\272\347\241\200\350\265\204\346\226\231/Gy_WorkTypeController.cs"
@@ -13,6 +13,8 @@
 using WebAPI.Controllers.SCGL.鏃ヨ鍒掔鐞�;
 using System.IO;
 using SyntacticSugar.constant;
+using WebAPI.Utility;
+
 namespace WebAPI.Controllers
 {
     public class Gy_WorkTypeController : ApiController
@@ -168,6 +170,7 @@
         /// <returns></returns>
         [Route("Gy_WorkTypeController/GetGy_WorkType_Check_Json")]
         [HttpGet]
+        [Permission(HModName = "Gy_WorkType_Check")]
         public object GetGy_WorkType_Check_Json(Int64 HItemID, int IsAudit, string HMaker)
         {
             string sErrMsg = "";
@@ -251,6 +254,7 @@
         /// <returns></returns>
         [Route("Gy_WorkTypeController/GetGy_WorkType_Stop_Json")]
         [HttpGet]
+        [Permission(HModName = "Gy_WorkType_Stop")]
         public object GetGy_WorkType_Stop_Json(Int64 HItemID, int IsStop, string HMaker)
         {
             string sErrMsg = "";
diff --git "a/WebAPI/Controllers/\345\272\224\346\224\266\347\256\241\347\220\206/YS_ReceiveReportController.cs" "b/WebAPI/Controllers/\345\272\224\346\224\266\347\256\241\347\220\206/YS_ReceiveReportController.cs"
index 1997645..cc47e8e 100644
--- "a/WebAPI/Controllers/\345\272\224\346\224\266\347\256\241\347\220\206/YS_ReceiveReportController.cs"
+++ "b/WebAPI/Controllers/\345\272\224\346\224\266\347\256\241\347\220\206/YS_ReceiveReportController.cs"
@@ -8,6 +8,7 @@
 using System.Data.SqlClient;
 using System.Web.Http;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers
 {
@@ -27,6 +28,7 @@
         /// <returns></returns>
         [Route("YS_ReceiveReportController/GetYS_CusShouldIncomeReport_Json")]
         [HttpGet]
+        [Permission(HModName = "YS_CusShouldIncomeReport")]
         public object GetYS_CusShouldIncomeReport_Json(string sWhere, string user)
         {
             try
@@ -75,6 +77,7 @@
         /// <returns></returns>
         [Route("YS_ReceiveReportController/GetYS_CusShouldIncomeEntryReport_Json")]
         [HttpGet]
+        [Permission(HModName = "YS_CusShouldIncomeEntryReport")]
         public object GetYS_CusShouldIncomeEntryReport_Json(string sWhere, string user)
         {
             try
diff --git "a/WebAPI/Controllers/\346\235\241\347\240\201\347\256\241\347\220\206/MouldController.cs" "b/WebAPI/Controllers/\346\235\241\347\240\201\347\256\241\347\220\206/MouldController.cs"
index bb34882..c4df051 100644
--- "a/WebAPI/Controllers/\346\235\241\347\240\201\347\256\241\347\220\206/MouldController.cs"
+++ "b/WebAPI/Controllers/\346\235\241\347\240\201\347\256\241\347\220\206/MouldController.cs"
@@ -686,7 +686,7 @@
                 bool bResult;
                 bResult = BillNew.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
                 //鑷姩鐢熸垚宸ヤ綔鑱旂郴鍗�
-                oCn.RunProc("exec h_p_OA_WorkLinkBill_Create " + BillNew.omodel.HInterID + "," + 3802);
+                // oCn.RunProc("exec h_p_OA_WorkLinkBill_Create " + BillNew.omodel.HInterID + "," + 3802);
                 if (bResult)
                 {
                     objJsonResult.code = "0";
diff --git "a/WebAPI/Controllers/\347\234\213\346\235\277\347\256\241\347\220\206/KB_CSGLController.cs" "b/WebAPI/Controllers/\347\234\213\346\235\277\347\256\241\347\220\206/KB_CSGLController.cs"
index 0bbd01c..8803341 100644
--- "a/WebAPI/Controllers/\347\234\213\346\235\277\347\256\241\347\220\206/KB_CSGLController.cs"
+++ "b/WebAPI/Controllers/\347\234\213\346\235\277\347\256\241\347\220\206/KB_CSGLController.cs"
@@ -8,6 +8,7 @@
 using System.Data.SqlClient;
 using System.Web.Http;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers
 {
diff --git "a/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\344\270\232\347\273\251\346\214\207\346\240\207/PM_YearEmployeeMoneyBillController.cs" "b/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\344\270\232\347\273\251\346\214\207\346\240\207/PM_YearEmployeeMoneyBillController.cs"
index 84a75dc..c418065 100644
--- "a/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\344\270\232\347\273\251\346\214\207\346\240\207/PM_YearEmployeeMoneyBillController.cs"
+++ "b/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\344\270\232\347\273\251\346\214\207\346\240\207/PM_YearEmployeeMoneyBillController.cs"
@@ -10,6 +10,7 @@
 using System.Web.Http;
 using System.Windows.Forms;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers.椤圭洰绠$悊.涓氱哗鎸囨爣
 {
@@ -729,6 +730,7 @@
         #region 涓氱哗鎸囨爣鍗� 浣滃簾/鍙嶄綔搴熷姛鑳�
         [Route("PM_YearEmployeeMoneyBill/DropPM_YearEmployeeMoneyBill")]
         [HttpGet]
+        [Permission(HModName = "Pm_YearEmployeeMoneyBill_Drop")]
         public object DropPM_YearEmployeeMoneyBill(string HInterID, int Type, string user)
         {
             try
diff --git "a/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\345\267\245\344\275\234\344\273\273\345\212\241/PM_WorkTaskBillController.cs" "b/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\345\267\245\344\275\234\344\273\273\345\212\241/PM_WorkTaskBillController.cs"
index 870a03a..5c8e0c6 100644
--- "a/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\345\267\245\344\275\234\344\273\273\345\212\241/PM_WorkTaskBillController.cs"
+++ "b/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\345\267\245\344\275\234\344\273\273\345\212\241/PM_WorkTaskBillController.cs"
@@ -15,6 +15,7 @@
 using SyntacticSugar.constant;
 using System.IO;
 using WebAPI.Service;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers.椤圭洰绠$悊.宸ヤ綔浠诲姟
 {
@@ -1010,6 +1011,7 @@
         #region 宸ヤ綔浠诲姟 浣滃簾/鍙嶄綔搴熷姛鑳�
         [Route("PM_WorkTaskBill/DropPM_WorkTaskBill")]
         [HttpGet]
+        [Permission(HModName = "Pm_WorkTaskBill_Drop")]
         public object DropPM_WorkTaskBill(string HInterID, int Type, string user)
         {
             try
@@ -2248,6 +2250,7 @@
         #region 浠诲姟姹囨姤 浣滃簾/鍙嶄綔搴熷姛鑳�
         [Route("PM_WorkTaskReportBill/DropPM_WorkTaskReportBill")]
         [HttpGet]
+        [Permission(HModName = "Pm_WorkTaskReportBill_Drop")]
         public object DropPM_WorkTaskReportBill(string HInterID, int Type, string user)
         {
             try
@@ -2444,6 +2447,7 @@
         /// </summary>
         [Route("PM_WorkTaskBill/PM_WorkTaskBillMainList")]
         [HttpGet]
+        [Permission(HModName = "PM_WorkTaskBillMainMy_Query")]
         public object PM_WorkTaskBillMainList( string user)
         {
             try
diff --git "a/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\345\267\245\344\275\234\345\221\250\350\256\241\345\210\222/PM_WorkTaskWeekBillController.cs" "b/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\345\267\245\344\275\234\345\221\250\350\256\241\345\210\222/PM_WorkTaskWeekBillController.cs"
index da845b4..fc543ed 100644
--- "a/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\345\267\245\344\275\234\345\221\250\350\256\241\345\210\222/PM_WorkTaskWeekBillController.cs"
+++ "b/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\345\267\245\344\275\234\345\221\250\350\256\241\345\210\222/PM_WorkTaskWeekBillController.cs"
@@ -10,8 +10,11 @@
 using System.Web.Http;
 using WebAPI.Models;
 using SyntacticSugar.constant;
+using WebAPI.Utility;
 namespace WebAPI.Controllers
 {
+    
+    // [Permission(HModName = "Pm_WorkTaskWeekBill")]
     public class PM_WorkTaskWeekBillController : ApiController
     {
         public DBUtility.ClsPub.Enum_BillStatus BillStatus;//鍗曟嵁鐘舵�侊紙鏂板锛屼慨鏀癸紝娴忚锛屾洿鏂板崟浠凤紝鍙樻洿锛�
@@ -88,6 +91,7 @@
         /// <returns></returns>
         [Route("PM_WorkTaskWeekBill/SavePM_WorkTaskWeekBill")]
         [HttpPost]
+        [Permission(HModName = "Pm_WorkTaskWeekBill", Operate = "_Edit")]
         public object SavePM_WorkTaskWeekBill([FromBody] JObject msg)
         {
             var _value = msg["msg"].ToString();
@@ -351,6 +355,7 @@
         /// </summary>
         [Route("PM_WorkTaskWeekBill/list")]
         [HttpGet]
+        [Permission(HModName = "Pm_WorkTaskWeekBill", Operate = "Query")]
         public object getWorkTaskWeekBill(string sWhere, string user)
         {
             try
@@ -406,6 +411,7 @@
         #region 宸ヤ綔鍛ㄨ鍒� 鍒嗛〉鍒楄〃
         [Route("PM_WorkTaskWeekBill/page")]
         [HttpGet]
+        [Permission(HModName = "Pm_WorkTaskWeekBill", Operate = "Query")]
         public object PM_WorkTaskWeekBillPage(string sWhere, string user, int page, int size)
         {
             DataSet ds;
@@ -466,6 +472,7 @@
         /// </summary>
         [Route("PM_WorkTaskWeekBill/delete")]
         [HttpGet]
+        [Permission(HModName = "Pm_WorkTaskWeekBill", Operate = "_Drop")]
         public object deleteWorkTaskWeekBill(string HInterID, string user)
         {
             try
@@ -522,6 +529,7 @@
         /// <returns></returns>
         [Route("PM_WorkTaskWeekBill/AuditPM_WorkTaskWeekBill")]
         [HttpGet]
+        [Permission(HModName = "Pm_WorkTaskWeekBill", Operate = "_Check")]
         public object AuditPM_WorkTaskWeekBill(int HInterID, int IsAudit, string CurUserName)
         {
             string ModRightNameCheck = "Pm_WorkTaskWeekBill_Check";
@@ -716,6 +724,7 @@
         /// <returns></returns>
         [Route("PM_WorkTaskWeekBill/ClosePM_WorkTaskWeekBill")]
         [HttpGet]
+        [Permission(HModName = "Pm_WorkTaskWeekBill", Operate = "_Close")]
         public object ClosePM_WorkTaskWeekBill(int HInterID, int IsAudit, string CurUserName)
         {
             string ModRightNameCheck = "Pm_WorkTaskWeekBill_Close";
@@ -861,6 +870,7 @@
         /// <returns></returns>
         [Route("PM_WorkTaskWeekBill/DeletePM_WorkTaskWeekBill")]
         [HttpGet]
+        [Permission(HModName = "Pm_WorkTaskWeekBill", Operate = "_Delete")]
         public object DeletePM_WorkTaskWeekBill(int HInterID, int IsAudit, string CurUserName)
         {
             string ModRightNameCheck = "Pm_WorkTaskWeekBill_Delete";
@@ -992,6 +1002,7 @@
         #region 宸ヤ綔鍛ㄦ�荤粨 鑾峰彇鍒楄〃鏁版嵁
         [Route("PM_WorkTaskWeekBill/PM_WorkReportWeekBillList")]
         [HttpGet]
+        [Permission(HModName = "PM_WorkReportWeekBillMain_Query")]
         public object PM_WorkReportWeekBillList(string sWhere, string user)
         {
             try
@@ -1047,6 +1058,7 @@
         #region 宸ヤ綔鍛ㄦ�荤粨 鍒嗛〉鍒楄〃
         [Route("PM_WorkTaskWeekBill/PM_WorkReportWeekBillpage")]
         [HttpGet]
+        [Permission(HModName = "PM_WorkReportWeekBillMain_Query")]
         public object PM_WorkReportWeekBillPage(string sWhere, string user, int page, int size)
         {
             DataSet ds;
@@ -1147,6 +1159,7 @@
         #region 宸ヤ綔鍛ㄦ�荤粨 閫夋嫨鎬荤粨浜哄甫鍑哄伐鏃�
         [Route("PM_WorkTaskWeekBill/PM_WorkReportWeekBillMainList")]
         [HttpGet]
+        [Permission(HModName = "PM_WorkReportWeekBillMain_Query")]
         public object PM_WorkReportWeekBillMainList(string HOrgID,string user,string HYear,string HWeek,string HBeginDate,string HEndDate)
         {
             try
@@ -1211,6 +1224,7 @@
         /// <returns></returns>
         [Route("PM_WorkTaskWeekBill/SavePM_WorkReportWeekBillMain")]
         [HttpPost]
+        [Permission(HModName = "PM_WorkReportWeekBillMain_Add")]
         public object SavePM_WorkReportWeekBillMain([FromBody] JObject msg)
         {
             var _value = msg["msg"].ToString();
@@ -1357,6 +1371,7 @@
         #region 宸ヤ綔鍛ㄦ�荤粨 瀹℃牳/鍙嶅鏍稿姛鑳�
         [Route("PM_WorkTaskWeekBill/CheckPM_WorkReportWeekBillMain")]
         [HttpGet]
+        [Permission(HModName = "PM_WorkReportWeekBillMain_Check")]
         public object CheckPM_WorkReportWeekBillMain(int HInterID, int IsAudit, string CurUserName)
         {
             DBUtility.ClsPub.CurUserName = CurUserName;
@@ -1557,6 +1572,7 @@
         #region 宸ヤ綔鍛ㄦ�荤粨 鍏抽棴/鍙嶅叧闂姛鑳�
         [Route("PM_WorkTaskWeekBill/ClosePM_WorkReportWeekBillMain")]
         [HttpGet]
+        [Permission(HModName = "PM_WorkReportWeekBillMain_Close")]
         public object ClosePM_WorkReportWeekBillMain(string HInterID, int IsAudit, string user)
         {
             try
@@ -1650,6 +1666,7 @@
         /// </summary>
         [Route("PM_WorkTaskWeekBill/PM_WorkReportWeekBillMainDelete")]
         [HttpGet]
+        [Permission(HModName = "PM_WorkReportWeekBillMain_Drop")]
         public object PM_WorkReportWeekBillMainDelete(string HInterID, string user)
         {
             try
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 8a7181d..1539e61 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"
@@ -11,6 +11,8 @@
 using System.Windows.Forms;
 using WebAPI.Models;
 using SyntacticSugar.constant;
+using WebAPI.Utility;
+
 namespace WebAPI.Controllers.椤圭洰绠$悊.宸ョ▼椤圭洰
 {
     public class PM_ProjectBillController : ApiController
@@ -1597,6 +1599,7 @@
         /// <returns></returns>
         [Route("PM_ProjectBill/SavePM_WorkPlanMonthBillMain")]
         [HttpPost]
+        [Permission(HModName = "PM_WorkPlanMonthBillMain_Add")]
         public object SavePM_WorkPlanMonthBillMain([FromBody] JObject msg)
         {
             var _value = msg["msg"].ToString();
@@ -1763,6 +1766,7 @@
         #region 鏈堝害闃舵璁″垝 瀹℃牳/鍙嶅鏍稿姛鑳�
         [Route("PM_ProjectBill/CheckPM_WorkPlanMonthBillMain")]
         [HttpGet]
+        [Permission(HModName = "PM_WorkPlanMonthBillMain_Check")]
         public object CheckPM_WorkPlanMonthBillMain(int HInterID, int IsAudit, string CurUserName)
         {
             DBUtility.ClsPub.CurUserName = CurUserName;
@@ -1963,6 +1967,7 @@
         #region 鏈堝害闃舵璁″垝 鍏抽棴/鍙嶅叧闂姛鑳�
         [Route("PM_ProjectBill/ClosePM_WorkPlanMonthBillMain")]
         [HttpGet]
+        [Permission(HModName = "PM_WorkPlanMonthBillMain_Close")]
         public object ClosePM_WorkPlanMonthBillMain(string HInterID, int IsAudit, string user)
         {
             try
@@ -2057,6 +2062,7 @@
         /// </summary>
         [Route("PM_ProjectBill/getPM_WorkPlanMonthBillMainList")]
         [HttpGet]
+        [Permission(HModName = "PM_WorkPlanMonthBillMain_Query")]
         public object getPM_WorkPlanMonthBillMainList(string HInterID,string HEntryID, string user)
         {
             try
@@ -2110,6 +2116,7 @@
         /// </summary>
         [Route("PM_ProjectBill/getPM_WorkPlanMonthBillMainLists")]
         [HttpGet]
+        [Permission(HModName = "PM_WorkPlanMonthBillMain_Query")]
         public object getPM_WorkPlanMonthBillMainLists(string sWhere, string user)
         {
             try
@@ -2171,6 +2178,7 @@
         /// </summary>
         [Route("PM_ProjectBill/PM_WorkPlanMonthBillMainDelete")]
         [HttpGet]
+        [Permission(HModName = "PM_WorkPlanMonthBillMain_Drop")]
         public object PM_WorkReportWeekBillMainDelete(string HInterID, string user)
         {
             try
@@ -2221,6 +2229,7 @@
         #region 鏈堝害闃舵璁″垝鍒楄〃 鑾峰彇缂栬緫鍒楄〃鏁版嵁
         [Route("PM_ProjectBill/PM_WorkPlanMonthBillMainEditList")]
         [HttpGet]
+        [Permission(HModName = "PM_WorkPlanMonthBillMain_Edit")]
         public object PM_WorkPlanMonthBillMainEditList(string HInterID,string User)
         {
             try
@@ -2275,6 +2284,7 @@
         /// <returns></returns>
         [Route("PM_ProjectBill/SavePM_CustomerTaskBillMain")]
         [HttpPost]
+        [Permission(HModName = "PM_CustomerTaskBillMain_Add")]
         public object SavePM_CustomerTaskBillMain([FromBody] JObject sMainSub)
         {
             var _value = sMainSub["sMainSub"].ToString();
@@ -2421,6 +2431,7 @@
         /// </summary>
         [Route("PM_ProjectBill/getPM_CustomerTaskBillMainList")]
         [HttpGet]
+        [Permission(HModName = "PM_CustomerTaskBillMain_Query")]
         public object getPM_CustomerTaskBillMainList(string sWhere, string user)
         {
             try
@@ -2479,6 +2490,7 @@
         #region 椤圭洰闇�姹傚強闂娓呭崟鍒楄〃 鑾峰彇缂栬緫鍒楄〃鏁版嵁
         [Route("PM_ProjectBill/PM_CustomerTaskBillMainEditList")]
         [HttpGet]
+        [Permission(HModName = "PM_CustomerTaskBillMain_Edit")]
         public object PM_CustomerTaskBillMainEditList(string HInterID, string User)
         {
             try
@@ -2536,6 +2548,7 @@
         #region 椤圭洰闇�姹傚強闂娓呭崟鍒楄〃 瀹℃牳/鍙嶅鏍稿姛鑳�
         [Route("PM_ProjectBill/CheckPM_CustomerTaskBillMain")]
         [HttpGet]
+        [Permission(HModName = "PM_CustomerTaskBillMain_Check")]
         public object CheckPM_CustomerTaskBillMain(int HInterID, int IsAudit, string CurUserName)
         {
             DBUtility.ClsPub.CurUserName = CurUserName;
@@ -2736,6 +2749,7 @@
         #region 椤圭洰闇�姹傚強闂娓呭崟鍒楄〃 鍏抽棴/鍙嶅叧闂姛鑳�
         [Route("PM_ProjectBill/ClosePM_CustomerTaskBillMain")]
         [HttpGet]
+        [Permission(HModName = "PM_CustomerTaskBillMain_Close")]
         public object ClosePM_CustomerTaskBillMain(string HInterID, int IsAudit, string user)
         {
             try
@@ -2829,6 +2843,7 @@
         /// </summary>
         [Route("PM_ProjectBill/PM_CustomerTaskBillMainDelete")]
         [HttpGet]
+        [Permission(HModName = "PM_CustomerTaskBillMain_Drop")]
         public object PM_CustomerTaskBillMainDelete(string HInterID, string user)
         {
             try
@@ -2942,6 +2957,7 @@
         /// <returns></returns>
         [Route("PM_ProjectBill/SavePM_ProjectMoneyBillMain")]
         [HttpPost]
+        [Permission(HModName = "PM_ProjectMoneyBillMain_Edit")]
         public object SavePM_ProjectMoneyBillMain([FromBody] JObject sMainSub)
         {
             var _value = sMainSub["sMainSub"].ToString();
@@ -3110,6 +3126,7 @@
         /// </summary>
         [Route("PM_ProjectBill/getPM_ProjectMoneyBillMainList")]
         [HttpGet]
+        [Permission(HModName = "PM_ProjectMoneyBillMain_Query")]
         public object getPM_ProjectMoneyBillMainList(string sWhere, string user)
         {
             try
@@ -3168,6 +3185,8 @@
         #region 椤圭洰璐圭敤鍒楄〃 鑾峰彇缂栬緫鍒楄〃鏁版嵁
         [Route("PM_ProjectBill/PM_ProjectMoneyBillMainEditList")]
         [HttpGet]
+        [Permission(HModName = "PM_ProjectMoneyBillMain_Edit")]
+
         public object PM_ProjectMoneyBillMainEditList(string HInterID, string User)
         {
             try
@@ -3220,6 +3239,7 @@
         #region 椤圭洰璐圭敤鍒楄〃 瀹℃牳/鍙嶅鏍稿姛鑳�
         [Route("PM_ProjectBill/CheckPM_ProjectMoneyBillMain")]
         [HttpGet]
+        [Permission(HModName = "PM_ProjectMoneyBillMain_Check")]
         public object CheckPM_ProjectMoneyBillMain(int HInterID, int IsAudit, string CurUserName)
         {
             DBUtility.ClsPub.CurUserName = CurUserName;
@@ -3420,6 +3440,7 @@
         #region 椤圭洰璐圭敤鍒楄〃 鍏抽棴/鍙嶅叧闂姛鑳�
         [Route("PM_ProjectBill/ClosePM_ProjectMoneyBillMain")]
         [HttpGet]
+        [Permission(HModName = "PM_ProjectMoneyBillMain_Close")]
         public object ClosePM_ProjectMoneyBillMain(string HInterID, int IsAudit, string user)
         {
             try
@@ -3513,6 +3534,7 @@
         /// </summary>
         [Route("PM_ProjectBill/PM_ProjectMoneyBillMainDelete")]
         [HttpGet]
+        [Permission(HModName = "PM_ProjectMoneyBillMain_Drop")]
         public object PM_ProjectMoneyBillMainDelete(string HInterID, string user)
         {
             try
@@ -3569,6 +3591,7 @@
         /// <returns></returns>
         [Route("PM_ProjectBill/SavePM_ProjectBeginBillMain")]
         [HttpPost]
+        [Permission(HModName = "PM_ProjectBeginBillMain_Edit")]
         public object SavePM_ProjectBeginBillMain([FromBody] JObject sMainSub)
         {
             var _value = sMainSub["sMainSub"].ToString();
@@ -3721,6 +3744,7 @@
         /// </summary>
         [Route("PM_ProjectBill/getPM_ProjectBeginBillMainList")]
         [HttpGet]
+        [Permission(HModName = "PM_ProjectBeginBillMain_Query")]
         public object getPM_ProjectBeginBillMainList(string sWhere, string user)
         {
             try
@@ -3779,6 +3803,7 @@
         #region 椤圭洰鍚姩鍗曞垪琛� 鑾峰彇缂栬緫鍒楄〃鏁版嵁
         [Route("PM_ProjectBill/PM_ProjectBeginBillMainEditList")]
         [HttpGet]
+        [Permission(HModName = "PM_ProjectBeginBillMain_Edit")]
         public object PM_ProjectBeginBillMainEditList(string HInterID, string User)
         {
             try
@@ -3835,6 +3860,7 @@
         #region 椤圭洰鍚姩鍗曞垪琛� 瀹℃牳/鍙嶅鏍稿姛鑳�
         [Route("PM_ProjectBill/CheckPM_ProjectBeginBillMain")]
         [HttpGet]
+        [Permission(HModName = "PM_ProjectEndBillMain_Check")]
         public object CheckPM_ProjectBeginBillMain(int HInterID, int IsAudit, string CurUserName)
         {
             DBUtility.ClsPub.CurUserName = CurUserName;
@@ -4058,6 +4084,7 @@
         #region 椤圭洰鍚姩鍗曞垪琛� 鍏抽棴/鍙嶅叧闂姛鑳�
         [Route("PM_ProjectBill/ClosePM_ProjectBeginBillMain")]
         [HttpGet]
+        [Permission(HModName = "PM_ProjectBeginBillMain_Close")]
         public object ClosePM_ProjectBeginBillMain(string HInterID, int IsAudit, string user)
         {
             try
@@ -4151,6 +4178,7 @@
         /// </summary>
         [Route("PM_ProjectBill/PM_ProjectBeginBillMainDelete")]
         [HttpGet]
+        [Permission(HModName = "PM_ProjectBeginBillMain_Drop")]
         public object PM_ProjectBeginBillMainDelete(string HInterID, string user)
         {
             try
@@ -4207,6 +4235,7 @@
         /// <returns></returns>
         [Route("PM_ProjectBill/SavePM_ProjectEndBillMain")]
         [HttpPost]
+        [Permission(HModName = "PM_ProjectEndBillMain_Edit")]
         public object SavePM_ProjectEndBillMain([FromBody] JObject sMainSub)
         {
             var _value = sMainSub["sMainSub"].ToString();
@@ -4359,6 +4388,7 @@
         /// </summary>
         [Route("PM_ProjectBill/getPM_ProjectEndBillMainList")]
         [HttpGet]
+        [Permission(HModName = "PM_ProjectEndBillMain_Query")]
         public object getPM_ProjectEndBillMainList(string sWhere, string user)
         {
             try
@@ -4417,6 +4447,7 @@
         #region 椤圭洰楠屾敹鍗曞垪琛� 鑾峰彇缂栬緫鍒楄〃鏁版嵁
         [Route("PM_ProjectBill/PM_ProjectEndBillMainEditList")]
         [HttpGet]
+        [Permission(HModName = "PM_ProjectEndBillMain_Edit")]
         public object PM_ProjectEndBillMainEditList(string HInterID, string User)
         {
             try
@@ -4473,7 +4504,7 @@
         #region 椤圭洰楠屾敹鍗曞垪琛� 瀹℃牳/鍙嶅鏍稿姛鑳�
         [Route("PM_ProjectBill/CheckPM_ProjectEndBillMain")]
         [HttpGet]
-
+        [Permission(HModName = "PM_ProjectEndBillMain_Check")]
         public object CheckPM_ProjectEndBillMain(int HInterID, int IsAudit, string CurUserName)
         {
            
@@ -4673,6 +4704,7 @@
         #region 椤圭洰楠屾敹鍗曞垪琛� 鍏抽棴/鍙嶅叧闂姛鑳�
         [Route("PM_ProjectBill/ClosePM_ProjectEndBillMain")]
         [HttpGet]
+        [Permission(HModName = "PM_ProjectEndBillMain_Close")]
         public object ClosePM_ProjectEndBillMain(string HInterID, int IsAudit, string user)
         {
             try
@@ -4766,6 +4798,7 @@
         /// </summary>
         [Route("PM_ProjectBill/PM_ProjectEndBillMainDelete")]
         [HttpGet]
+        [Permission(HModName = "PM_ProjectEndBillMain_Drop")]
         public object PM_ProjectEndBillMainDelete(string HInterID, string user)
         {
             try
diff --git "a/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\346\212\245\350\241\250\345\210\206\346\236\220/PM_ReportController.cs" "b/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\346\212\245\350\241\250\345\210\206\346\236\220/PM_ReportController.cs"
index 8abfa00..be170b8 100644
--- "a/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\346\212\245\350\241\250\345\210\206\346\236\220/PM_ReportController.cs"
+++ "b/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\346\212\245\350\241\250\345\210\206\346\236\220/PM_ReportController.cs"
@@ -15,6 +15,7 @@
 using WebAPI;
 using WebAPI.Models;
 using WebAPI.Service;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers
 {
@@ -189,6 +190,7 @@
         /// <returns></returns>
         [Route("PM_ReportController/PM_ProjectBillMYList")]
         [HttpGet]
+        [Permission(HModName = "PM_ProjectBillMainMy_Query")]
         public object PM_ProjectBillMYList(string sWhere, string user)
         {
             try
diff --git "a/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\351\241\271\347\233\256\351\230\266\346\256\265/Gy_ProjectStageController.cs" "b/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\351\241\271\347\233\256\351\230\266\346\256\265/Gy_ProjectStageController.cs"
index 9bf78e5..00e198d 100644
--- "a/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\351\241\271\347\233\256\351\230\266\346\256\265/Gy_ProjectStageController.cs"
+++ "b/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\351\241\271\347\233\256\351\230\266\346\256\265/Gy_ProjectStageController.cs"
@@ -10,6 +10,7 @@
 using System.Web.Http;
 using System.Windows.Forms;
 using WebAPI.Models;
+using WebAPI.Utility;
 
 namespace WebAPI.Controllers.椤圭洰绠$悊.椤圭洰闃舵
 {
@@ -468,6 +469,7 @@
         /// <returns></returns>
         [Route("Gy_ProjectStage/StopGy_ProjectStage")]
         [HttpGet]
+        [Permission(HModName = "Pm_ProjectStage_Stop")]
         public object StopGy_ProjectStage(int HInterID, int IsStop, string CurUserName)
         {
             try
@@ -1291,6 +1293,7 @@
         #region 椤圭洰闃舵娓呭崟 浣滃簾/鍙嶄綔搴熷姛鑳�
         [Route("PM_ProjectStageBill/DropPM_ProjectStageBill")]
         [HttpGet]
+        [Permission(HModName = "Pm_ProjectStageBill_Drop")]
         public object DropPM_ProjectStageBill(string HInterID, int Type, string user)
         {
             try
@@ -2301,6 +2304,7 @@
         #region 椤圭洰闃舵姹囨姤 浣滃簾/鍙嶄綔搴熷姛鑳�
         [Route("PM_ProjectReportBill/DropPM_ProjectReportBill")]
         [HttpGet]
+        [Permission(HModName = "Pm_ProjectReportBill_Drop")]
         public object DropPM_ProjectReportBill(string HInterID, int Type, string user)
         {
             try
diff --git a/WebAPI/Properties/PublishProfiles/CHZFolderProfile.pubxml.user b/WebAPI/Properties/PublishProfiles/CHZFolderProfile.pubxml.user
index e9e8eb3..e564bb2 100644
--- a/WebAPI/Properties/PublishProfiles/CHZFolderProfile.pubxml.user
+++ b/WebAPI/Properties/PublishProfiles/CHZFolderProfile.pubxml.user
@@ -5,7 +5,7 @@
 <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
   <PropertyGroup>
     <_PublishTargetUrl>D:\缃戠珯鍙戝竷\鏅轰簯MESWMS\API</_PublishTargetUrl>
-    <History>True|2026-05-07T07:08:38.0367089Z;True|2026-05-07T15:04:45.6064347+08:00;True|2026-05-07T15:01:54.3752696+08:00;True|2026-05-07T14:48:57.8233763+08:00;True|2026-05-07T14:42:59.9667945+08:00;True|2026-05-07T14:39:04.9344650+08:00;True|2026-05-07T14:35:21.2358006+08:00;True|2026-05-07T14:31:03.3942679+08:00;False|2026-05-07T14:30:07.9957551+08:00;True|2026-05-07T14:28:17.9178211+08:00;True|2026-05-07T14:23:52.3968718+08:00;True|2026-05-07T14:16:18.6690603+08:00;True|2026-05-07T14:08:24.2477705+08:00;True|2026-05-07T14:07:20.1361212+08:00;True|2026-05-07T13:58:16.6134288+08:00;True|2026-05-07T13:56:45.4214674+08:00;True|2026-05-07T13:53:03.1271717+08:00;True|2026-05-07T13:47:57.8901747+08:00;True|2026-05-07T13:38:51.9817839+08:00;True|2026-05-07T13:31:10.4849161+08:00;True|2026-05-07T13:21:02.8232018+08:00;True|2026-05-07T13:20:07.6389859+08:00;True|2026-05-07T13:06:15.0699419+08:00;True|2026-05-07T11:27:40.0012763+08:00;True|2026-05-07T10:59:44.5944208+08:00;True|2026-05-07T10:39:17.2999911+08:00;True|2026-05-07T09:08:08.7432630+08:00;False|2026-05-07T09:07:51.8174857+08:00;True|2026-05-06T13:11:25.9234523+08:00;False|2026-05-06T13:11:03.9982193+08:00;True|2026-04-30T10:18:53.7822827+08:00;False|2026-04-30T10:17:13.6682179+08:00;True|2026-04-29T16:47:04.9171448+08:00;True|2026-04-29T16:25:33.4958449+08:00;True|2026-04-29T15:34:29.5741739+08:00;True|2026-04-29T14:10:33.3160064+08:00;True|2026-04-29T14:06:31.3760141+08:00;False|2026-04-29T14:05:58.0158818+08:00;True|2026-04-29T10:25:30.7181581+08:00;True|2026-04-29T10:24:32.8331581+08:00;False|2026-04-29T10:23:37.9949570+08:00;True|2026-04-28T11:12:41.1993974+08:00;True|2026-04-28T10:59:28.3932572+08:00;True|2026-04-28T10:46:16.5971815+08:00;True|2026-04-28T09:38:04.9793088+08:00;False|2026-04-28T09:37:19.4255018+08:00;True|2026-04-27T15:09:44.0897608+08:00;True|2026-04-27T14:54:06.6458560+08:00;True|2026-04-27T14:44:18.2209820+08:00;True|2026-04-27T14:13:14.4765480+08:00;True|2026-04-27T14:04:25.5419561+08:00;True|2026-04-27T13:49:53.0044534+08:00;True|2026-04-27T13:16:28.0509184+08:00;True|2026-04-27T13:06:51.0405801+08:00;True|2026-04-27T12:49:54.6907285+08:00;True|2026-04-27T10:18:33.7985393+08:00;True|2026-04-27T10:08:12.8438152+08:00;True|2026-04-27T09:59:55.6118412+08:00;False|2026-04-27T09:58:35.5433131+08:00;True|2026-04-22T13:46:35.7999639+08:00;True|2026-04-22T13:37:33.3595562+08:00;False|2026-04-22T13:36:44.6163941+08:00;True|2026-04-20T17:23:12.3696160+08:00;True|2026-04-20T17:11:49.7671685+08:00;True|2026-04-20T17:01:26.9990531+08:00;True|2026-04-20T16:54:12.4433947+08:00;True|2026-04-20T16:46:57.6462699+08:00;True|2026-04-20T16:42:57.8307232+08:00;True|2026-04-20T16:28:39.7476167+08:00;True|2026-04-20T16:21:44.4281083+08:00;True|2026-04-20T15:54:54.0650372+08:00;False|2026-04-20T15:53:16.9752154+08:00;True|2026-04-20T09:38:00.7302296+08:00;False|2026-04-20T09:35:50.0193777+08:00;True|2026-04-16T13:47:52.4189071+08:00;True|2026-04-16T12:55:27.8047391+08:00;True|2026-04-15T15:25:13.5585076+08:00;True|2026-04-15T15:18:40.0113998+08:00;True|2026-04-15T13:40:25.2393656+08:00;False|2026-04-15T13:39:38.6236889+08:00;True|2026-04-14T14:31:30.6734754+08:00;False|2026-04-14T14:30:41.4516757+08:00;True|2026-04-13T16:44:08.4642937+08:00;True|2026-04-13T16:36:02.3077110+08:00;True|2026-04-13T14:59:21.0103174+08:00;True|2026-04-13T14:39:45.1257225+08:00;True|2026-04-13T14:33:54.7926295+08:00;True|2026-04-13T14:28:29.8919092+08:00;True|2026-04-13T14:23:44.7319904+08:00;True|2026-04-13T14:19:18.5894161+08:00;True|2026-04-13T14:13:07.6590290+08:00;True|2026-04-13T14:08:38.6545470+08:00;True|2026-04-13T13:42:48.7331271+08:00;True|2026-04-13T13:28:28.6092259+08:00;True|2026-04-13T13:22:20.9710518+08:00;False|2026-04-13T13:21:10.4412531+08:00;True|2026-04-10T12:36:37.6936108+08:00;False|2026-04-10T12:35:40.0121010+08:00;True|2026-04-09T16:54:43.8820523+08:00;True|2026-04-09T16:45:33.9913393+08:00;True|2026-04-09T16:05:37.9135976+08:00;True|2026-04-09T15:59:59.0415690+08:00;True|2026-04-09T14:40:06.6317662+08:00;True|2026-04-09T14:33:57.7268880+08:00;True|2026-04-09T14:29:06.9748272+08:00;True|2026-04-09T14:15:35.2357549+08:00;True|2026-04-09T13:55:15.7398283+08:00;True|2026-04-09T10:49:39.1474349+08:00;False|2026-04-09T10:48:56.4483129+08:00;True|2026-04-08T15:52:56.0654175+08:00;True|2026-04-08T15:51:48.5362330+08:00;True|2026-04-08T15:38:55.9430240+08:00;True|2026-04-08T14:28:05.8170952+08:00;True|2026-04-08T10:04:26.1290532+08:00;True|2026-04-08T09:54:42.7091796+08:00;True|2026-04-08T09:47:39.4265409+08:00;True|2026-04-08T09:31:33.9940810+08:00;True|2026-04-08T09:25:48.8335042+08:00;True|2026-04-08T09:18:49.2340416+08:00;True|2026-04-08T09:05:38.1946058+08:00;True|2026-04-08T08:51:42.9648664+08:00;False|2026-04-08T08:50:29.4049907+08:00;True|2026-04-07T16:38:07.0366622+08:00;True|2026-04-07T16:30:02.5849908+08:00;True|2026-04-07T10:34:01.7729330+08:00;True|2026-04-07T09:48:28.6594815+08:00;True|2026-04-07T08:27:08.5467426+08:00;</History>
+    <History>True|2026-05-11T08:57:59.8474112Z;True|2026-05-11T16:09:17.8336560+08:00;True|2026-05-11T15:15:12.3740855+08:00;True|2026-05-11T13:15:29.9712293+08:00;True|2026-05-11T11:30:59.5612158+08:00;True|2026-05-11T09:50:49.6144050+08:00;True|2026-05-11T09:42:37.1981574+08:00;True|2026-05-11T09:03:12.1780255+08:00;False|2026-05-11T09:02:49.8853787+08:00;True|2026-05-07T15:08:38.0367089+08:00;True|2026-05-07T15:04:45.6064347+08:00;True|2026-05-07T15:01:54.3752696+08:00;True|2026-05-07T14:48:57.8233763+08:00;True|2026-05-07T14:42:59.9667945+08:00;True|2026-05-07T14:39:04.9344650+08:00;True|2026-05-07T14:35:21.2358006+08:00;True|2026-05-07T14:31:03.3942679+08:00;False|2026-05-07T14:30:07.9957551+08:00;True|2026-05-07T14:28:17.9178211+08:00;True|2026-05-07T14:23:52.3968718+08:00;True|2026-05-07T14:16:18.6690603+08:00;True|2026-05-07T14:08:24.2477705+08:00;True|2026-05-07T14:07:20.1361212+08:00;True|2026-05-07T13:58:16.6134288+08:00;True|2026-05-07T13:56:45.4214674+08:00;True|2026-05-07T13:53:03.1271717+08:00;True|2026-05-07T13:47:57.8901747+08:00;True|2026-05-07T13:38:51.9817839+08:00;True|2026-05-07T13:31:10.4849161+08:00;True|2026-05-07T13:21:02.8232018+08:00;True|2026-05-07T13:20:07.6389859+08:00;True|2026-05-07T13:06:15.0699419+08:00;True|2026-05-07T11:27:40.0012763+08:00;True|2026-05-07T10:59:44.5944208+08:00;True|2026-05-07T10:39:17.2999911+08:00;True|2026-05-07T09:08:08.7432630+08:00;False|2026-05-07T09:07:51.8174857+08:00;True|2026-05-06T13:11:25.9234523+08:00;False|2026-05-06T13:11:03.9982193+08:00;True|2026-04-30T10:18:53.7822827+08:00;False|2026-04-30T10:17:13.6682179+08:00;True|2026-04-29T16:47:04.9171448+08:00;True|2026-04-29T16:25:33.4958449+08:00;True|2026-04-29T15:34:29.5741739+08:00;True|2026-04-29T14:10:33.3160064+08:00;True|2026-04-29T14:06:31.3760141+08:00;False|2026-04-29T14:05:58.0158818+08:00;True|2026-04-29T10:25:30.7181581+08:00;True|2026-04-29T10:24:32.8331581+08:00;False|2026-04-29T10:23:37.9949570+08:00;True|2026-04-28T11:12:41.1993974+08:00;True|2026-04-28T10:59:28.3932572+08:00;True|2026-04-28T10:46:16.5971815+08:00;True|2026-04-28T09:38:04.9793088+08:00;False|2026-04-28T09:37:19.4255018+08:00;True|2026-04-27T15:09:44.0897608+08:00;True|2026-04-27T14:54:06.6458560+08:00;True|2026-04-27T14:44:18.2209820+08:00;True|2026-04-27T14:13:14.4765480+08:00;True|2026-04-27T14:04:25.5419561+08:00;True|2026-04-27T13:49:53.0044534+08:00;True|2026-04-27T13:16:28.0509184+08:00;True|2026-04-27T13:06:51.0405801+08:00;True|2026-04-27T12:49:54.6907285+08:00;True|2026-04-27T10:18:33.7985393+08:00;True|2026-04-27T10:08:12.8438152+08:00;True|2026-04-27T09:59:55.6118412+08:00;False|2026-04-27T09:58:35.5433131+08:00;True|2026-04-22T13:46:35.7999639+08:00;True|2026-04-22T13:37:33.3595562+08:00;False|2026-04-22T13:36:44.6163941+08:00;True|2026-04-20T17:23:12.3696160+08:00;True|2026-04-20T17:11:49.7671685+08:00;True|2026-04-20T17:01:26.9990531+08:00;True|2026-04-20T16:54:12.4433947+08:00;True|2026-04-20T16:46:57.6462699+08:00;True|2026-04-20T16:42:57.8307232+08:00;True|2026-04-20T16:28:39.7476167+08:00;True|2026-04-20T16:21:44.4281083+08:00;True|2026-04-20T15:54:54.0650372+08:00;False|2026-04-20T15:53:16.9752154+08:00;True|2026-04-20T09:38:00.7302296+08:00;False|2026-04-20T09:35:50.0193777+08:00;True|2026-04-16T13:47:52.4189071+08:00;True|2026-04-16T12:55:27.8047391+08:00;True|2026-04-15T15:25:13.5585076+08:00;True|2026-04-15T15:18:40.0113998+08:00;True|2026-04-15T13:40:25.2393656+08:00;False|2026-04-15T13:39:38.6236889+08:00;True|2026-04-14T14:31:30.6734754+08:00;False|2026-04-14T14:30:41.4516757+08:00;True|2026-04-13T16:44:08.4642937+08:00;True|2026-04-13T16:36:02.3077110+08:00;True|2026-04-13T14:59:21.0103174+08:00;True|2026-04-13T14:39:45.1257225+08:00;True|2026-04-13T14:33:54.7926295+08:00;True|2026-04-13T14:28:29.8919092+08:00;True|2026-04-13T14:23:44.7319904+08:00;True|2026-04-13T14:19:18.5894161+08:00;True|2026-04-13T14:13:07.6590290+08:00;True|2026-04-13T14:08:38.6545470+08:00;True|2026-04-13T13:42:48.7331271+08:00;True|2026-04-13T13:28:28.6092259+08:00;True|2026-04-13T13:22:20.9710518+08:00;False|2026-04-13T13:21:10.4412531+08:00;True|2026-04-10T12:36:37.6936108+08:00;False|2026-04-10T12:35:40.0121010+08:00;True|2026-04-09T16:54:43.8820523+08:00;True|2026-04-09T16:45:33.9913393+08:00;True|2026-04-09T16:05:37.9135976+08:00;True|2026-04-09T15:59:59.0415690+08:00;True|2026-04-09T14:40:06.6317662+08:00;True|2026-04-09T14:33:57.7268880+08:00;True|2026-04-09T14:29:06.9748272+08:00;True|2026-04-09T14:15:35.2357549+08:00;True|2026-04-09T13:55:15.7398283+08:00;True|2026-04-09T10:49:39.1474349+08:00;False|2026-04-09T10:48:56.4483129+08:00;True|2026-04-08T15:52:56.0654175+08:00;True|2026-04-08T15:51:48.5362330+08:00;True|2026-04-08T15:38:55.9430240+08:00;True|2026-04-08T14:28:05.8170952+08:00;True|2026-04-08T10:04:26.1290532+08:00;True|2026-04-08T09:54:42.7091796+08:00;True|2026-04-08T09:47:39.4265409+08:00;True|2026-04-08T09:31:33.9940810+08:00;True|2026-04-08T09:25:48.8335042+08:00;True|2026-04-08T09:18:49.2340416+08:00;True|2026-04-08T09:05:38.1946058+08:00;True|2026-04-08T08:51:42.9648664+08:00;False|2026-04-08T08:50:29.4049907+08:00;True|2026-04-07T16:38:07.0366622+08:00;True|2026-04-07T16:30:02.5849908+08:00;True|2026-04-07T10:34:01.7729330+08:00;True|2026-04-07T09:48:28.6594815+08:00;True|2026-04-07T08:27:08.5467426+08:00;</History>
   </PropertyGroup>
   <ItemGroup>
     <File Include="apiapp.json">
@@ -48,28 +48,28 @@
       <publishTime>02/22/2013 16:43:40</publishTime>
     </File>
     <File Include="bin/BLL.dll">
-      <publishTime>05/07/2026 15:08:08</publishTime>
+      <publishTime>05/11/2026 16:57:19</publishTime>
     </File>
     <File Include="bin/BLL.pdb">
-      <publishTime>05/07/2026 15:08:08</publishTime>
+      <publishTime>05/11/2026 16:57:19</publishTime>
     </File>
     <File Include="bin/BouncyCastle.Crypto.dll">
       <publishTime>12/18/2020 05:32:28</publishTime>
     </File>
     <File Include="bin/DAL.dll">
-      <publishTime>05/07/2026 15:08:07</publishTime>
+      <publishTime>05/11/2026 16:57:17</publishTime>
     </File>
     <File Include="bin/DAL.pdb">
-      <publishTime>05/07/2026 15:08:07</publishTime>
+      <publishTime>05/11/2026 16:57:17</publishTime>
     </File>
     <File Include="bin/Dapper.dll">
       <publishTime>07/22/2016 22:52:40</publishTime>
     </File>
     <File Include="bin/DBUtility.dll">
-      <publishTime>05/07/2026 15:08:02</publishTime>
+      <publishTime>05/11/2026 16:57:12</publishTime>
     </File>
     <File Include="bin/DBUtility.pdb">
-      <publishTime>05/07/2026 15:08:02</publishTime>
+      <publishTime>05/11/2026 16:57:12</publishTime>
     </File>
     <File Include="bin/Fleck.dll">
       <publishTime>04/22/2021 11:48:12</publishTime>
@@ -153,10 +153,10 @@
       <publishTime>07/25/2012 19:48:56</publishTime>
     </File>
     <File Include="bin/Model.dll">
-      <publishTime>05/07/2026 15:08:03</publishTime>
+      <publishTime>05/11/2026 16:57:13</publishTime>
     </File>
     <File Include="bin/Model.pdb">
-      <publishTime>05/07/2026 15:08:03</publishTime>
+      <publishTime>05/11/2026 16:57:13</publishTime>
     </File>
     <File Include="bin/Models/ClsSc_MouldScrapOutBillMain.cs">
       <publishTime>04/21/2025 11:46:16</publishTime>
@@ -192,34 +192,34 @@
       <publishTime>11/13/2012 20:19:34</publishTime>
     </File>
     <File Include="bin/Pub_Class.dll">
-      <publishTime>05/07/2026 15:08:00</publishTime>
+      <publishTime>05/11/2026 16:57:09</publishTime>
     </File>
     <File Include="bin/Pub_Class.pdb">
-      <publishTime>05/07/2026 15:08:00</publishTime>
+      <publishTime>05/11/2026 16:57:09</publishTime>
     </File>
     <File Include="bin/Pub_Control.dll">
-      <publishTime>05/07/2026 15:08:01</publishTime>
+      <publishTime>05/11/2026 16:57:10</publishTime>
     </File>
     <File Include="bin/Pub_Control.pdb">
-      <publishTime>05/07/2026 15:08:01</publishTime>
+      <publishTime>05/11/2026 16:57:10</publishTime>
     </File>
     <File Include="bin/RestSharp.dll">
       <publishTime>08/31/2012 06:22:50</publishTime>
     </File>
     <File Include="bin/SQLHelper.dll">
-      <publishTime>05/07/2026 15:08:01</publishTime>
+      <publishTime>05/11/2026 16:57:11</publishTime>
     </File>
     <File Include="bin/SQLHelper.pdb">
-      <publishTime>05/07/2026 15:08:01</publishTime>
+      <publishTime>05/11/2026 16:57:11</publishTime>
     </File>
     <File Include="bin/Swashbuckle.Core.dll">
       <publishTime>02/16/2015 01:57:08</publishTime>
     </File>
     <File Include="bin/SyntacticSugar.dll">
-      <publishTime>05/07/2026 15:07:57</publishTime>
+      <publishTime>05/11/2026 16:57:07</publishTime>
     </File>
     <File Include="bin/SyntacticSugar.pdb">
-      <publishTime>05/07/2026 15:07:57</publishTime>
+      <publishTime>05/11/2026 16:57:07</publishTime>
     </File>
     <File Include="bin/System.Buffers.dll">
       <publishTime>07/19/2017 18:01:28</publishTime>
@@ -333,22 +333,22 @@
       <publishTime>05/09/2023 10:43:40</publishTime>
     </File>
     <File Include="bin/TopSdk.dll">
-      <publishTime>05/07/2026 15:08:03</publishTime>
+      <publishTime>05/11/2026 16:57:11</publishTime>
     </File>
     <File Include="bin/TopSdk.pdb">
-      <publishTime>05/07/2026 15:08:03</publishTime>
+      <publishTime>05/11/2026 16:57:11</publishTime>
     </File>
     <File Include="bin/WebActivatorEx.dll">
       <publishTime>11/24/2014 19:18:48</publishTime>
     </File>
     <File Include="bin/WebAPI.dll">
-      <publishTime>05/07/2026 15:08:16</publishTime>
+      <publishTime>05/11/2026 16:57:29</publishTime>
     </File>
     <File Include="bin/WebAPI.pdb">
-      <publishTime>05/07/2026 15:08:16</publishTime>
+      <publishTime>05/11/2026 16:57:29</publishTime>
     </File>
     <File Include="bin/WebAPI.XmlSerializers.dll">
-      <publishTime>05/07/2026 15:08:30</publishTime>
+      <publishTime>05/11/2026 16:57:44</publishTime>
     </File>
     <File Include="bin/WebGrease.dll">
       <publishTime>07/18/2013 01:03:52</publishTime>
@@ -573,7 +573,7 @@
       <publishTime>04/21/2025 11:46:17</publishTime>
     </File>
     <File Include="Web.config">
-      <publishTime>05/07/2026 15:08:36</publishTime>
+      <publishTime>05/11/2026 16:57:57</publishTime>
     </File>
     <File Include="ZPLTemplate/娴嬭瘯.zpl">
       <publishTime>05/07/2026 10:57:35</publishTime>
@@ -582,7 +582,7 @@
       <publishTime>05/06/2026 08:26:31</publishTime>
     </File>
     <File Include="ZPLTemplate/鐗╂枡鏉$爜 80脳60.zpl">
-      <publishTime>05/07/2026 14:00:46</publishTime>
+      <publishTime>05/07/2026 15:46:25</publishTime>
     </File>
   </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/WebAPI/Properties/PublishProfiles/FolderProfile2.pubxml.user b/WebAPI/Properties/PublishProfiles/FolderProfile2.pubxml.user
index c7816d1..cd0f944 100644
--- a/WebAPI/Properties/PublishProfiles/FolderProfile2.pubxml.user
+++ b/WebAPI/Properties/PublishProfiles/FolderProfile2.pubxml.user
@@ -5,7 +5,7 @@
 <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
   <PropertyGroup>
     <_PublishTargetUrl>D:\缃戠珯鍙戝竷\鏅轰簯MESWMS\API</_PublishTargetUrl>
-    <History>True|2026-05-12T05:44:50.5750272Z;True|2026-05-12T10:47:44.1594464+08:00;False|2026-05-12T10:46:39.3027951+08:00;True|2026-05-11T10:46:18.4020029+08:00;False|2026-05-11T10:45:08.8740793+08:00;True|2026-05-09T16:00:44.4923700+08:00;True|2026-05-09T15:12:09.7412917+08:00;True|2026-05-09T15:07:21.2940902+08:00;True|2026-05-09T14:51:59.6563412+08:00;False|2026-05-09T14:51:43.7650440+08:00;True|2026-05-09T14:05:47.5384993+08:00;False|2026-05-09T14:04:34.8843560+08:00;True|2026-05-08T09:07:03.6507328+08:00;False|2026-05-08T09:05:32.3334730+08:00;True|2026-05-07T12:13:57.4615562+08:00;False|2026-05-07T12:12:20.7379585+08:00;True|2026-05-06T17:23:26.3696432+08:00;True|2026-05-06T16:43:22.7970389+08:00;False|2026-05-06T16:43:00.3805256+08:00;True|2026-05-06T15:47:46.3255643+08:00;True|2026-05-06T14:10:15.7955768+08:00;True|2026-05-06T13:28:05.4583623+08:00;True|2026-05-06T11:19:55.3226983+08:00;True|2026-05-06T11:06:19.3185379+08:00;True|2026-05-06T10:59:23.7931807+08:00;True|2026-05-06T10:04:30.6570500+08:00;True|2026-05-06T09:18:32.7000782+08:00;False|2026-05-06T09:17:43.1625773+08:00;True|2026-04-08T09:55:10.8896063+08:00;False|2026-04-08T09:54:59.9647951+08:00;True|2026-04-07T16:03:45.1834044+08:00;False|2026-04-07T16:03:34.6199255+08:00;True|2026-04-06T20:28:16.0131270+08:00;False|2026-04-06T20:27:56.2563065+08:00;True|2026-04-01T11:48:50.5292235+08:00;True|2026-04-01T11:38:01.4330956+08:00;True|2026-04-01T11:10:56.0438060+08:00;False|2026-04-01T11:10:46.7232028+08:00;True|2026-04-01T10:56:38.9083881+08:00;False|2026-04-01T10:56:07.7574345+08:00;True|2026-03-27T14:26:07.9321307+08:00;False|2026-03-27T14:25:22.5010392+08:00;True|2026-03-27T13:35:36.8292396+08:00;False|2026-03-27T13:31:46.3527084+08:00;True|2026-03-24T15:10:02.2143243+08:00;True|2026-03-24T14:44:30.5286229+08:00;True|2026-03-24T10:24:40.8361153+08:00;False|2026-03-24T10:23:42.4160796+08:00;True|2026-03-23T19:05:41.2442007+08:00;False|2026-03-23T19:05:02.6358374+08:00;True|2026-03-23T15:35:21.7391934+08:00;False|2026-03-23T15:33:14.3621736+08:00;True|2026-03-21T11:27:25.8485662+08:00;True|2026-03-21T10:51:07.0416520+08:00;False|2026-03-21T10:50:30.0808809+08:00;True|2026-03-20T15:21:25.3928861+08:00;False|2026-03-20T15:20:18.7323151+08:00;True|2026-03-19T17:53:04.0599612+08:00;False|2026-03-19T17:49:34.2586338+08:00;True|2026-03-18T16:36:39.3459012+08:00;False|2026-03-18T16:33:44.2834015+08:00;True|2026-03-18T09:14:46.8169365+08:00;False|2026-03-18T09:11:29.5956354+08:00;True|2026-03-17T21:02:32.6298438+08:00;False|2026-03-17T21:01:51.7259809+08:00;True|2026-03-17T17:42:17.6095943+08:00;True|2026-03-17T17:22:22.7829010+08:00;True|2026-03-17T17:07:30.0424197+08:00;True|2026-03-17T17:00:25.9496446+08:00;True|2026-03-17T16:57:34.7454437+08:00;False|2026-03-17T16:55:25.6389756+08:00;True|2026-03-16T17:53:15.9567970+08:00;False|2026-03-16T17:52:38.5476276+08:00;True|2026-03-14T17:08:45.9696477+08:00;False|2026-03-14T17:07:54.0759419+08:00;True|2026-03-13T15:56:58.9781226+08:00;True|2026-03-13T14:54:12.0380800+08:00;True|2026-03-13T14:45:10.9471893+08:00;True|2026-03-13T14:34:35.7792308+08:00;True|2026-03-13T13:28:54.0165676+08:00;True|2026-03-13T13:04:26.7960852+08:00;True|2026-03-13T12:32:40.4056776+08:00;True|2026-03-13T12:00:38.5403236+08:00;True|2026-03-13T11:58:15.7212751+08:00;False|2026-03-13T11:56:03.1608711+08:00;True|2026-03-12T12:56:09.1798557+08:00;True|2026-03-12T12:10:38.6579078+08:00;True|2026-03-12T12:00:41.1216693+08:00;True|2026-03-12T10:49:25.6657932+08:00;True|2026-03-12T10:34:42.0132081+08:00;False|2026-03-12T10:34:21.1374537+08:00;True|2026-03-12T09:49:04.2791476+08:00;False|2026-03-12T09:48:32.0226441+08:00;True|2026-03-11T21:37:22.2202127+08:00;False|2026-03-11T21:35:48.4959239+08:00;True|2026-03-11T20:47:52.7636338+08:00;False|2026-03-11T20:47:20.3374534+08:00;True|2026-03-10T09:03:48.7681627+08:00;False|2026-03-10T09:02:36.0583806+08:00;True|2026-03-09T22:57:55.3577018+08:00;False|2026-03-09T22:55:54.8997804+08:00;True|2026-03-09T17:08:10.5420450+08:00;True|2026-03-09T16:57:28.4177680+08:00;True|2026-03-09T16:50:59.8251070+08:00;True|2026-03-09T10:23:55.4999880+08:00;False|2026-03-09T10:23:00.0281682+08:00;True|2026-03-06T09:15:06.5024218+08:00;True|2026-03-06T08:54:38.7087070+08:00;False|2026-03-06T08:53:23.6823346+08:00;True|2026-03-05T17:26:43.5908847+08:00;False|2026-03-05T17:25:48.2804326+08:00;True|2026-03-05T16:04:43.1077406+08:00;False|2026-03-05T16:02:11.7881116+08:00;True|2026-03-03T16:16:26.8635275+08:00;True|2026-03-03T15:54:24.2283621+08:00;True|2026-03-03T12:32:30.4495356+08:00;False|2026-03-03T12:31:06.0560910+08:00;True|2026-03-02T12:18:24.6587456+08:00;True|2026-03-02T09:35:22.6172462+08:00;False|2026-03-02T09:32:04.1416982+08:00;True|2026-02-28T12:04:01.7406133+08:00;True|2026-02-28T08:47:36.7167331+08:00;False|2026-02-28T08:46:49.1748795+08:00;True|2026-02-27T17:21:35.6897064+08:00;True|2026-02-27T17:00:03.2447893+08:00;True|2026-02-27T14:26:49.0714379+08:00;True|2026-02-27T13:57:50.9161682+08:00;False|2026-02-27T13:54:58.3092086+08:00;True|2026-02-26T16:30:22.6331887+08:00;True|2026-02-26T15:56:54.4778359+08:00;False|2026-02-26T15:55:53.2808802+08:00;False|2026-02-26T15:55:27.7501008+08:00;True|2026-02-26T12:42:10.3734658+08:00;True|2026-02-26T12:01:13.4363491+08:00;True|2026-02-26T10:24:02.2555254+08:00;True|2026-02-03T11:56:14.3086755+08:00;True|2026-02-03T11:51:19.6091315+08:00;True|2026-02-03T10:42:35.4774950+08:00;False|2026-02-03T10:40:57.1735351+08:00;True|2026-02-03T09:30:22.5235073+08:00;False|2026-02-03T09:27:21.6917147+08:00;True|2026-02-02T15:31:07.3762944+08:00;True|2026-02-02T14:13:20.5690146+08:00;True|2026-02-02T10:42:22.4804584+08:00;False|2026-02-02T10:41:48.7402434+08:00;True|2026-02-01T17:40:21.0538069+08:00;True|2026-02-01T15:44:12.2393909+08:00;False|2026-02-01T15:40:37.6456544+08:00;True|2026-01-31T12:05:50.6946479+08:00;False|2026-01-31T12:04:44.5273342+08:00;True|2026-01-29T17:14:07.3795568+08:00;True|2026-01-29T17:11:48.4286289+08:00;True|2026-01-29T16:10:42.7141082+08:00;True|2026-01-29T14:41:38.0583611+08:00;True|2026-01-29T14:36:18.1975177+08:00;True|2026-01-29T14:34:43.7423264+08:00;True|2026-01-29T14:09:16.2701844+08:00;True|2026-01-29T13:17:37.0708838+08:00;True|2026-01-29T10:21:51.3074443+08:00;False|2026-01-29T10:20:12.1418198+08:00;True|2026-01-28T13:52:59.2210650+08:00;True|2026-01-28T10:34:06.8152564+08:00;False|2026-01-28T10:32:51.4478083+08:00;True|2026-01-27T12:19:58.2090999+08:00;True|2026-01-27T12:18:40.9255150+08:00;True|2026-01-27T12:10:45.0784359+08:00;True|2026-01-27T11:45:58.2218602+08:00;True|2026-01-27T08:54:11.2473398+08:00;False|2026-01-27T08:50:52.3900508+08:00;True|2026-01-25T16:51:10.8469862+08:00;True|2026-01-25T16:15:55.3063785+08:00;False|2026-01-25T16:13:47.1609576+08:00;False|2026-01-25T16:10:27.3797138+08:00;True|2026-01-22T19:26:11.1120981+08:00;False|2026-01-22T19:21:59.7591077+08:00;True|2026-01-21T20:10:38.2264542+08:00;True|2026-01-21T20:05:52.6769930+08:00;False|2026-01-21T20:04:52.2864808+08:00;True|2026-01-20T10:09:22.6558754+08:00;True|2026-01-20T09:43:16.9535139+08:00;False|2026-01-20T09:40:14.5080297+08:00;True|2026-01-19T17:23:36.9963060+08:00;True|2026-01-19T17:18:41.7602029+08:00;True|2026-01-19T17:05:35.1663057+08:00;True|2026-01-19T16:49:48.9497194+08:00;True|2026-01-19T12:35:09.4063486+08:00;False|2026-01-19T12:33:25.3260660+08:00;True|2026-01-17T20:21:42.3497625+08:00;True|2026-01-17T20:17:40.8631870+08:00;True|2026-01-17T20:13:16.6618986+08:00;False|2026-01-17T20:10:39.7099356+08:00;False|2026-01-17T20:10:01.5198461+08:00;False|2026-01-17T20:09:07.5632818+08:00;True|2026-01-17T20:06:07.7085249+08:00;True|2026-01-17T17:50:38.6295526+08:00;False|2026-01-17T17:48:59.9531552+08:00;True|2026-01-16T16:22:22.3525933+08:00;True|2026-01-16T14:14:39.4187185+08:00;False|2026-01-16T14:10:47.6350779+08:00;True|2026-01-15T17:33:04.8867687+08:00;True|2026-01-15T17:13:07.4827420+08:00;False|2026-01-15T17:11:32.8298249+08:00;True|2026-01-15T16:34:04.8984638+08:00;True|2026-01-15T14:12:39.3677563+08:00;False|2026-01-15T14:10:25.0842475+08:00;True|2026-01-14T19:47:01.2486856+08:00;False|2026-01-14T19:46:15.5380497+08:00;True|2026-01-14T15:49:22.6528911+08:00;True|2026-01-14T10:24:06.5942562+08:00;False|2026-01-14T10:22:32.4884475+08:00;False|2026-01-12T09:27:01.9297704+08:00;True|2026-01-11T14:27:58.9407325+08:00;False|2026-01-11T14:26:47.1324504+08:00;True|2026-01-11T13:54:38.7697615+08:00;True|2026-01-11T12:39:56.1396008+08:00;False|2026-01-11T12:37:59.5059421+08:00;True|2026-01-09T15:34:00.7959753+08:00;False|2026-01-09T15:32:33.3223847+08:00;True|2026-01-09T10:27:04.4418230+08:00;False|2026-01-09T10:24:55.6104648+08:00;True|2026-01-08T18:05:09.8950096+08:00;False|2026-01-08T18:03:49.6828377+08:00;True|2026-01-08T15:53:31.8458993+08:00;True|2026-01-08T15:43:35.4452984+08:00;True|2026-01-08T15:16:09.2797564+08:00;True|2026-01-08T15:09:12.1761272+08:00;False|2026-01-08T15:08:31.8053125+08:00;True|2026-01-08T12:28:32.3839432+08:00;False|2026-01-08T12:28:06.4930402+08:00;False|2026-01-06T13:05:41.4537127+08:00;True|2026-01-04T11:27:03.6003486+08:00;True|2026-01-04T11:16:09.0856233+08:00;True|2026-01-04T11:09:33.9721372+08:00;True|2026-01-04T10:59:57.5111892+08:00;False|2026-01-04T10:57:57.5312203+08:00;True|2025-12-30T14:23:14.0889784+08:00;True|2025-12-29T09:12:05.7081903+08:00;False|2025-12-29T09:11:27.9082848+08:00;True|2025-07-01T16:53:57.8492332+08:00;True|2025-07-01T16:14:28.8419744+08:00;True|2025-07-01T15:15:43.3121091+08:00;True|2025-07-01T14:48:00.3454856+08:00;True|2025-07-01T09:17:46.2541717+08:00;False|2025-07-01T09:17:07.0648196+08:00;True|2025-06-23T14:30:28.6691264+08:00;False|2025-06-23T14:27:45.6002040+08:00;True|2025-06-23T11:02:08.3020700+08:00;True|2025-06-23T10:47:44.4654541+08:00;True|2025-06-23T09:46:24.9049910+08:00;False|2025-06-23T09:45:40.5195919+08:00;True|2025-06-20T14:33:10.9210583+08:00;True|2025-06-20T13:22:54.5321865+08:00;False|2025-06-20T13:21:30.8643897+08:00;True|2025-06-20T08:36:32.6695266+08:00;False|2025-06-20T08:35:57.8274069+08:00;True|2025-06-19T08:14:35.0623669+08:00;False|2025-06-19T08:12:57.2451557+08:00;True|2025-06-18T16:56:03.4555368+08:00;True|2025-06-18T16:42:43.2441845+08:00;False|2025-06-18T16:42:02.6907205+08:00;True|2025-06-16T16:13:03.2956026+08:00;False|2025-06-16T16:12:23.8438917+08:00;True|2025-06-16T15:21:32.7370852+08:00;True|2025-06-16T15:08:57.7166003+08:00;True|2025-06-16T14:02:18.4224630+08:00;True|2025-06-16T11:00:03.6375429+08:00;False|2025-06-16T10:59:26.0956296+08:00;True|2025-06-09T16:45:52.0865612+08:00;True|2025-06-09T16:38:47.2182194+08:00;True|2025-06-09T16:17:50.9170601+08:00;False|2025-06-09T16:17:43.0333396+08:00;True|2025-06-09T15:25:17.0429161+08:00;True|2025-06-09T15:00:15.0058791+08:00;True|2025-06-09T14:50:02.1370115+08:00;True|2025-06-09T14:38:10.9037045+08:00;True|2025-06-09T14:34:53.2826267+08:00;True|2025-06-09T14:07:24.5341951+08:00;True|2025-06-09T13:39:17.5042542+08:00;True|2025-06-09T09:30:31.8197114+08:00;True|2025-01-10T13:10:47.2046185+08:00;True|2025-01-10T11:11:49.4016910+08:00;True|2025-01-10T10:59:12.3481721+08:00;False|2025-01-10T10:58:24.5033898+08:00;True|2025-01-04T14:35:42.2792864+08:00;</History>
+    <History>True|2026-05-09T07:08:01.3290719Z;False|2026-05-09T15:07:37.6867708+08:00;True|2026-05-09T09:46:21.3749873+08:00;False|2026-05-09T09:45:52.5655176+08:00;True|2026-05-07T16:04:35.8104421+08:00;True|2026-05-07T16:00:08.0167287+08:00;True|2026-05-07T15:50:36.0532936+08:00;True|2026-05-07T15:42:15.8686727+08:00;True|2026-05-07T15:27:42.8795901+08:00;True|2026-05-07T15:22:49.7782744+08:00;True|2026-05-07T15:11:45.8162905+08:00;True|2026-05-06T15:47:46.3255643+08:00;True|2026-05-06T14:10:15.7955768+08:00;True|2026-05-06T13:28:05.4583623+08:00;True|2026-05-06T11:19:55.3226983+08:00;True|2026-05-06T11:06:19.3185379+08:00;True|2026-05-06T10:59:23.7931807+08:00;True|2026-05-06T10:04:30.6570500+08:00;True|2026-05-06T09:18:32.7000782+08:00;False|2026-05-06T09:17:43.1625773+08:00;True|2026-04-08T09:55:10.8896063+08:00;False|2026-04-08T09:54:59.9647951+08:00;True|2026-04-07T16:03:45.1834044+08:00;False|2026-04-07T16:03:34.6199255+08:00;True|2026-04-06T20:28:16.0131270+08:00;False|2026-04-06T20:27:56.2563065+08:00;True|2026-04-01T11:48:50.5292235+08:00;True|2026-04-01T11:38:01.4330956+08:00;True|2026-04-01T11:10:56.0438060+08:00;False|2026-04-01T11:10:46.7232028+08:00;True|2026-04-01T10:56:38.9083881+08:00;False|2026-04-01T10:56:07.7574345+08:00;True|2026-03-27T14:26:07.9321307+08:00;False|2026-03-27T14:25:22.5010392+08:00;True|2026-03-27T13:35:36.8292396+08:00;False|2026-03-27T13:31:46.3527084+08:00;True|2026-03-24T15:10:02.2143243+08:00;True|2026-03-24T14:44:30.5286229+08:00;True|2026-03-24T10:24:40.8361153+08:00;False|2026-03-24T10:23:42.4160796+08:00;True|2026-03-23T19:05:41.2442007+08:00;False|2026-03-23T19:05:02.6358374+08:00;True|2026-03-23T15:35:21.7391934+08:00;False|2026-03-23T15:33:14.3621736+08:00;True|2026-03-21T11:27:25.8485662+08:00;True|2026-03-21T10:51:07.0416520+08:00;False|2026-03-21T10:50:30.0808809+08:00;True|2026-03-20T15:21:25.3928861+08:00;False|2026-03-20T15:20:18.7323151+08:00;True|2026-03-19T17:53:04.0599612+08:00;False|2026-03-19T17:49:34.2586338+08:00;True|2026-03-18T16:36:39.3459012+08:00;False|2026-03-18T16:33:44.2834015+08:00;True|2026-03-18T09:14:46.8169365+08:00;False|2026-03-18T09:11:29.5956354+08:00;True|2026-03-17T21:02:32.6298438+08:00;False|2026-03-17T21:01:51.7259809+08:00;True|2026-03-17T17:42:17.6095943+08:00;True|2026-03-17T17:22:22.7829010+08:00;True|2026-03-17T17:07:30.0424197+08:00;True|2026-03-17T17:00:25.9496446+08:00;True|2026-03-17T16:57:34.7454437+08:00;False|2026-03-17T16:55:25.6389756+08:00;True|2026-03-16T17:53:15.9567970+08:00;False|2026-03-16T17:52:38.5476276+08:00;True|2026-03-14T17:08:45.9696477+08:00;False|2026-03-14T17:07:54.0759419+08:00;True|2026-03-13T15:56:58.9781226+08:00;True|2026-03-13T14:54:12.0380800+08:00;True|2026-03-13T14:45:10.9471893+08:00;True|2026-03-13T14:34:35.7792308+08:00;True|2026-03-13T13:28:54.0165676+08:00;True|2026-03-13T13:04:26.7960852+08:00;True|2026-03-13T12:32:40.4056776+08:00;True|2026-03-13T12:00:38.5403236+08:00;True|2026-03-13T11:58:15.7212751+08:00;False|2026-03-13T11:56:03.1608711+08:00;True|2026-03-12T12:56:09.1798557+08:00;True|2026-03-12T12:10:38.6579078+08:00;True|2026-03-12T12:00:41.1216693+08:00;True|2026-03-12T10:49:25.6657932+08:00;True|2026-03-12T10:34:42.0132081+08:00;False|2026-03-12T10:34:21.1374537+08:00;True|2026-03-12T09:49:04.2791476+08:00;False|2026-03-12T09:48:32.0226441+08:00;True|2026-03-11T21:37:22.2202127+08:00;False|2026-03-11T21:35:48.4959239+08:00;True|2026-03-11T20:47:52.7636338+08:00;False|2026-03-11T20:47:20.3374534+08:00;True|2026-03-10T09:03:48.7681627+08:00;False|2026-03-10T09:02:36.0583806+08:00;True|2026-03-09T22:57:55.3577018+08:00;False|2026-03-09T22:55:54.8997804+08:00;True|2026-03-09T17:08:10.5420450+08:00;True|2026-03-09T16:57:28.4177680+08:00;True|2026-03-09T16:50:59.8251070+08:00;True|2026-03-09T10:23:55.4999880+08:00;False|2026-03-09T10:23:00.0281682+08:00;True|2026-03-06T09:15:06.5024218+08:00;True|2026-03-06T08:54:38.7087070+08:00;False|2026-03-06T08:53:23.6823346+08:00;True|2026-03-05T17:26:43.5908847+08:00;False|2026-03-05T17:25:48.2804326+08:00;True|2026-03-05T16:04:43.1077406+08:00;False|2026-03-05T16:02:11.7881116+08:00;True|2026-03-03T16:16:26.8635275+08:00;True|2026-03-03T15:54:24.2283621+08:00;True|2026-03-03T12:32:30.4495356+08:00;False|2026-03-03T12:31:06.0560910+08:00;True|2026-03-02T12:18:24.6587456+08:00;True|2026-03-02T09:35:22.6172462+08:00;False|2026-03-02T09:32:04.1416982+08:00;True|2026-02-28T12:04:01.7406133+08:00;True|2026-02-28T08:47:36.7167331+08:00;False|2026-02-28T08:46:49.1748795+08:00;True|2026-02-27T17:21:35.6897064+08:00;True|2026-02-27T17:00:03.2447893+08:00;True|2026-02-27T14:26:49.0714379+08:00;True|2026-02-27T13:57:50.9161682+08:00;False|2026-02-27T13:54:58.3092086+08:00;True|2026-02-26T16:30:22.6331887+08:00;True|2026-02-26T15:56:54.4778359+08:00;False|2026-02-26T15:55:53.2808802+08:00;False|2026-02-26T15:55:27.7501008+08:00;True|2026-02-26T12:42:10.3734658+08:00;True|2026-02-26T12:01:13.4363491+08:00;True|2026-02-26T10:24:02.2555254+08:00;True|2026-02-03T11:56:14.3086755+08:00;True|2026-02-03T11:51:19.6091315+08:00;True|2026-02-03T10:42:35.4774950+08:00;False|2026-02-03T10:40:57.1735351+08:00;True|2026-02-03T09:30:22.5235073+08:00;False|2026-02-03T09:27:21.6917147+08:00;True|2026-02-02T15:31:07.3762944+08:00;True|2026-02-02T14:13:20.5690146+08:00;True|2026-02-02T10:42:22.4804584+08:00;False|2026-02-02T10:41:48.7402434+08:00;True|2026-02-01T17:40:21.0538069+08:00;True|2026-02-01T15:44:12.2393909+08:00;False|2026-02-01T15:40:37.6456544+08:00;True|2026-01-31T12:05:50.6946479+08:00;False|2026-01-31T12:04:44.5273342+08:00;True|2026-01-29T17:14:07.3795568+08:00;True|2026-01-29T17:11:48.4286289+08:00;True|2026-01-29T16:10:42.7141082+08:00;True|2026-01-29T14:41:38.0583611+08:00;True|2026-01-29T14:36:18.1975177+08:00;True|2026-01-29T14:34:43.7423264+08:00;True|2026-01-29T14:09:16.2701844+08:00;True|2026-01-29T13:17:37.0708838+08:00;True|2026-01-29T10:21:51.3074443+08:00;False|2026-01-29T10:20:12.1418198+08:00;True|2026-01-28T13:52:59.2210650+08:00;True|2026-01-28T10:34:06.8152564+08:00;False|2026-01-28T10:32:51.4478083+08:00;True|2026-01-27T12:19:58.2090999+08:00;True|2026-01-27T12:18:40.9255150+08:00;True|2026-01-27T12:10:45.0784359+08:00;True|2026-01-27T11:45:58.2218602+08:00;True|2026-01-27T08:54:11.2473398+08:00;False|2026-01-27T08:50:52.3900508+08:00;True|2026-01-25T16:51:10.8469862+08:00;True|2026-01-25T16:15:55.3063785+08:00;False|2026-01-25T16:13:47.1609576+08:00;False|2026-01-25T16:10:27.3797138+08:00;True|2026-01-22T19:26:11.1120981+08:00;False|2026-01-22T19:21:59.7591077+08:00;True|2026-01-21T20:10:38.2264542+08:00;True|2026-01-21T20:05:52.6769930+08:00;False|2026-01-21T20:04:52.2864808+08:00;True|2026-01-20T10:09:22.6558754+08:00;True|2026-01-20T09:43:16.9535139+08:00;False|2026-01-20T09:40:14.5080297+08:00;True|2026-01-19T17:23:36.9963060+08:00;True|2026-01-19T17:18:41.7602029+08:00;True|2026-01-19T17:05:35.1663057+08:00;True|2026-01-19T16:49:48.9497194+08:00;True|2026-01-19T12:35:09.4063486+08:00;False|2026-01-19T12:33:25.3260660+08:00;True|2026-01-17T20:21:42.3497625+08:00;True|2026-01-17T20:17:40.8631870+08:00;True|2026-01-17T20:13:16.6618986+08:00;False|2026-01-17T20:10:39.7099356+08:00;False|2026-01-17T20:10:01.5198461+08:00;False|2026-01-17T20:09:07.5632818+08:00;True|2026-01-17T20:06:07.7085249+08:00;True|2026-01-17T17:50:38.6295526+08:00;False|2026-01-17T17:48:59.9531552+08:00;True|2026-01-16T16:22:22.3525933+08:00;True|2026-01-16T14:14:39.4187185+08:00;False|2026-01-16T14:10:47.6350779+08:00;True|2026-01-15T17:33:04.8867687+08:00;True|2026-01-15T17:13:07.4827420+08:00;False|2026-01-15T17:11:32.8298249+08:00;True|2026-01-15T16:34:04.8984638+08:00;True|2026-01-15T14:12:39.3677563+08:00;False|2026-01-15T14:10:25.0842475+08:00;True|2026-01-14T19:47:01.2486856+08:00;False|2026-01-14T19:46:15.5380497+08:00;True|2026-01-14T15:49:22.6528911+08:00;True|2026-01-14T10:24:06.5942562+08:00;False|2026-01-14T10:22:32.4884475+08:00;False|2026-01-12T09:27:01.9297704+08:00;True|2026-01-11T14:27:58.9407325+08:00;False|2026-01-11T14:26:47.1324504+08:00;True|2026-01-11T13:54:38.7697615+08:00;True|2026-01-11T12:39:56.1396008+08:00;False|2026-01-11T12:37:59.5059421+08:00;True|2026-01-09T15:34:00.7959753+08:00;False|2026-01-09T15:32:33.3223847+08:00;True|2026-01-09T10:27:04.4418230+08:00;False|2026-01-09T10:24:55.6104648+08:00;True|2026-01-08T18:05:09.8950096+08:00;False|2026-01-08T18:03:49.6828377+08:00;True|2026-01-08T15:53:31.8458993+08:00;True|2026-01-08T15:43:35.4452984+08:00;True|2026-01-08T15:16:09.2797564+08:00;True|2026-01-08T15:09:12.1761272+08:00;False|2026-01-08T15:08:31.8053125+08:00;True|2026-01-08T12:28:32.3839432+08:00;False|2026-01-08T12:28:06.4930402+08:00;False|2026-01-06T13:05:41.4537127+08:00;True|2026-01-04T11:27:03.6003486+08:00;True|2026-01-04T11:16:09.0856233+08:00;True|2026-01-04T11:09:33.9721372+08:00;True|2026-01-04T10:59:57.5111892+08:00;False|2026-01-04T10:57:57.5312203+08:00;True|2025-12-30T14:23:14.0889784+08:00;True|2025-12-29T09:12:05.7081903+08:00;False|2025-12-29T09:11:27.9082848+08:00;True|2025-07-01T16:53:57.8492332+08:00;True|2025-07-01T16:14:28.8419744+08:00;True|2025-07-01T15:15:43.3121091+08:00;True|2025-07-01T14:48:00.3454856+08:00;True|2025-07-01T09:17:46.2541717+08:00;False|2025-07-01T09:17:07.0648196+08:00;True|2025-06-23T14:30:28.6691264+08:00;False|2025-06-23T14:27:45.6002040+08:00;True|2025-06-23T11:02:08.3020700+08:00;True|2025-06-23T10:47:44.4654541+08:00;True|2025-06-23T09:46:24.9049910+08:00;False|2025-06-23T09:45:40.5195919+08:00;True|2025-06-20T14:33:10.9210583+08:00;True|2025-06-20T13:22:54.5321865+08:00;False|2025-06-20T13:21:30.8643897+08:00;True|2025-06-20T08:36:32.6695266+08:00;False|2025-06-20T08:35:57.8274069+08:00;True|2025-06-19T08:14:35.0623669+08:00;False|2025-06-19T08:12:57.2451557+08:00;True|2025-06-18T16:56:03.4555368+08:00;True|2025-06-18T16:42:43.2441845+08:00;False|2025-06-18T16:42:02.6907205+08:00;True|2025-06-16T16:13:03.2956026+08:00;False|2025-06-16T16:12:23.8438917+08:00;True|2025-06-16T15:21:32.7370852+08:00;True|2025-06-16T15:08:57.7166003+08:00;True|2025-06-16T14:02:18.4224630+08:00;True|2025-06-16T11:00:03.6375429+08:00;False|2025-06-16T10:59:26.0956296+08:00;True|2025-06-09T16:45:52.0865612+08:00;True|2025-06-09T16:38:47.2182194+08:00;True|2025-06-09T16:17:50.9170601+08:00;False|2025-06-09T16:17:43.0333396+08:00;True|2025-06-09T15:25:17.0429161+08:00;True|2025-06-09T15:00:15.0058791+08:00;True|2025-06-09T14:50:02.1370115+08:00;True|2025-06-09T14:38:10.9037045+08:00;True|2025-06-09T14:34:53.2826267+08:00;True|2025-06-09T14:07:24.5341951+08:00;True|2025-06-09T13:39:17.5042542+08:00;True|2025-06-09T09:30:31.8197114+08:00;True|2025-01-10T13:10:47.2046185+08:00;True|2025-01-10T11:11:49.4016910+08:00;True|2025-01-10T10:59:12.3481721+08:00;False|2025-01-10T10:58:24.5033898+08:00;True|2025-01-04T14:35:42.2792864+08:00;</History>
   </PropertyGroup>
   <ItemGroup>
     <File Include="apiapp.json">
@@ -342,10 +342,10 @@
       <publishTime>11/24/2014 19:18:48</publishTime>
     </File>
     <File Include="bin/WebAPI.dll">
-      <publishTime>05/12/2026 13:44:47</publishTime>
+      <publishTime>05/09/2026 15:07:58</publishTime>
     </File>
     <File Include="bin/WebAPI.pdb">
-      <publishTime>05/12/2026 13:44:47</publishTime>
+      <publishTime>05/09/2026 15:07:58</publishTime>
     </File>
     <File Include="bin/WebAPI.XmlSerializers.dll">
       <publishTime>07/01/2025 16:53:56</publishTime>
diff --git a/WebAPI/Web.config b/WebAPI/Web.config
index 8207cf6..f0d0277 100644
--- a/WebAPI/Web.config
+++ b/WebAPI/Web.config
@@ -36,12 +36,13 @@
 		<!--<add key="surl" value="http://localhost:8082/webs/webservice1.asmx"/>    --><!--鏈湴-->
 		<!--<add key="sUrl" value="http://192.168.110.57:81/WEBS/WebService1.asmx"/>-->	<!--闄堥洴闈欐湰鍦伴厤缃�-->
 		<!--<add key="surl" value="http://localhost/WEBS-WMS/webservice1.asmx" />--> <!--缈佹稕娑涙湰鍦伴厤缃�-->
+		<!--<add key="surl" value="http://localhost:81/MESWMS-WEBS/webservice1.asmx" />--> <!--闄堥晲鍝叉湰鍦伴厤缃�-->
 		<!--<add key="sUrl" value="http://192.168.1.57:8082/WEBS-WMS/WebService1.asmx"/>涔濊彵-->
 		<!--<add key="sUrl" value="http://61.130.182.102:18181/WEBSCS/WebService1.asmx"/>--><!--鏂帿灏�-->
 		<!--<add key="surl" value="http://192.168.0.113/WEBS-WMS/Webservice1.asmx" />涓夊崌鏈湴閰嶇疆-->
 		<!--<add key="surl" value="http://36.134.2.30:200/WEBS-WMS/WebService1.asmx" />-->	<!--閲戝竻-->
-		<add key="sUrl" value="http://47.96.97.237/WEBS-WMS/WebService1.asmx" />   
-		
+		<!--<add key="sUrl" value="http://47.96.97.237/WEBS-WMS/WebService1.asmx" />   -->
+
 		<add key="webpages:Version" value="3.0.0.0" />
 		<add key="webpages:Enabled" value="false" />
 		<add key="ClientValidationEnabled" value="true" />
@@ -142,15 +143,15 @@
 			</basicHttpBinding>
 		</bindings>
 		<client>
-			 <endpoint address="http://47.96.97.237/WEBS-WMS/WebService1.asmx" binding="basicHttpBinding" bindingConfiguration="WebService1Soap" contract="Webs1.WebService1Soap" name="WebService1Soap" /> 
-			<!--<endpoint address="http://localhost:81/MESWMS-WEBS/webservice1.asmx" binding="basicHttpBinding" bindingConfiguration="WebService1Soap" contract="Webs1.WebService1Soap" name="WebService1Soap" />-->
+			<!--<endpoint address="http://47.96.97.237/WEBS-WMS/WebService1.asmx" binding="basicHttpBinding" bindingConfiguration="WebService1Soap" contract="Webs1.WebService1Soap" name="WebService1Soap" /> -->
+		<endpoint address="http://localhost:81/MESWMS-WEBS/webservice1.asmx" binding="basicHttpBinding" bindingConfiguration="WebService1Soap" contract="Webs1.WebService1Soap" name="WebService1Soap" />
 		</client>
 	</system.serviceModel>
  <applicationSettings>
   <WebAPI.Properties.Settings>
    <setting name="WebAPI_WebS_WebService1" serializeAs="String">
-     <value>http://47.96.97.237/WEBS-WMS/WebService1.asmx</value> 
-    <!--<value>http://localhost:81/MESWMS-WEBS/webservice1.asmx</value>-->
+	   <!--<value>http://47.96.97.237/WEBS-WMS/WebService1.asmx</value> --> 
+    <value>http://localhost:81/MESWMS-WEBS/webservice1.asmx</value>
    </setting>
   </WebAPI.Properties.Settings>
  </applicationSettings>
diff --git a/WebAPI/WebAPI.csproj.user b/WebAPI/WebAPI.csproj.user
index 291de7c..625944c 100644
--- a/WebAPI/WebAPI.csproj.user
+++ b/WebAPI/WebAPI.csproj.user
@@ -2,6 +2,8 @@
 <Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
   <PropertyGroup>
     <LastActiveSolutionConfig>Debug|x86</LastActiveSolutionConfig>
+    <LastActiveSolutionConfig>Release|Any CPU</LastActiveSolutionConfig>
+    <LastActiveSolutionConfig>Debug|x86</LastActiveSolutionConfig>
     <LastActiveSolutionConfig>Debug|x86</LastActiveSolutionConfig>
     <UseIISExpress>true</UseIISExpress>
     <Use64BitIISExpress />
@@ -13,10 +15,10 @@
     <NameOfLastUsedPublishProfile>D:\gz\MES-WEB-API\MES-WEB-API\WebAPI\Properties\PublishProfiles\FolderProfile1.pubxml</NameOfLastUsedPublishProfile>
     <NameOfLastUsedPublishProfile>D:\gz\MES-WEB-API\MES-WEB-API\WebAPI\Properties\PublishProfiles\FolderProfile8.pubxml</NameOfLastUsedPublishProfile>
     <NameOfLastUsedPublishProfile>D:\WorkBench\MES-WEB-API\WebAPI\Properties\PublishProfiles\FolderProfile4.pubxml</NameOfLastUsedPublishProfile>
-    <ProjectView>ProjectFiles</ProjectView>
-    <NameOfLastUsedPublishProfile>D:\缃戠珯鍙戝竷\鍚庣浠g爜\MES-WEB-API\MES-WEB-API\WebAPI\Properties\PublishProfiles\FolderProfile2.pubxml</NameOfLastUsedPublishProfile>
     <NameOfLastUsedPublishProfile>C:\Users\19858\Desktop\鏅轰簯杩堟�漒MES-WEB-API\WebAPI\Properties\PublishProfiles\WTTFolder.pubxml</NameOfLastUsedPublishProfile>
-    <NameOfLastUsedPublishProfile>D:\宸ヤ綔浠g爜\鏅轰簯杩堟�漒MES\MES-WEB-API\WebAPI\Properties\PublishProfiles\FolderProfile2.pubxml</NameOfLastUsedPublishProfile>
+    <NameOfLastUsedPublishProfile>D:\WorkBench\MES-WEB-API\WebAPI\Properties\PublishProfiles\CHZFolderProfile.pubxml</NameOfLastUsedPublishProfile>
+    <NameOfLastUsedPublishProfile>D:\缃戠珯鍙戝竷\鍚庣浠g爜\MES-WEB-API\MES-WEB-API\WebAPI\Properties\PublishProfiles\FolderProfile4.pubxml</NameOfLastUsedPublishProfile>
+    <NameOfLastUsedPublishProfile>D:\GitHub\MES-WEB-API\WebAPI\Properties\PublishProfiles\CHZFolderProfile.pubxml</NameOfLastUsedPublishProfile>
   </PropertyGroup>
   <ProjectExtensions />
 </Project>
\ No newline at end of file
diff --git a/sdk_dingding/TopSdk/bin/Release/TopSdk.dll b/sdk_dingding/TopSdk/bin/Release/TopSdk.dll
deleted file mode 100644
index b97aacb..0000000
--- a/sdk_dingding/TopSdk/bin/Release/TopSdk.dll
+++ /dev/null
Binary files differ
diff --git a/sdk_dingding/TopSdk/bin/Release/TopSdk.pdb b/sdk_dingding/TopSdk/bin/Release/TopSdk.pdb
deleted file mode 100644
index a59f95f..0000000
--- a/sdk_dingding/TopSdk/bin/Release/TopSdk.pdb
+++ /dev/null
Binary files differ
diff --git a/sdk_dingding/TopSdk/obj/Release/TopSdk.csproj.AssemblyReference.cache b/sdk_dingding/TopSdk/obj/Release/TopSdk.csproj.AssemblyReference.cache
deleted file mode 100644
index afa8882..0000000
--- a/sdk_dingding/TopSdk/obj/Release/TopSdk.csproj.AssemblyReference.cache
+++ /dev/null
Binary files differ
diff --git a/sdk_dingding/TopSdk/obj/Release/TopSdk.csproj.CoreCompileInputs.cache b/sdk_dingding/TopSdk/obj/Release/TopSdk.csproj.CoreCompileInputs.cache
deleted file mode 100644
index 0312216..0000000
--- a/sdk_dingding/TopSdk/obj/Release/TopSdk.csproj.CoreCompileInputs.cache
+++ /dev/null
@@ -1 +0,0 @@
-eb64bc61f5da8fdd8ad56e04c391e3a377d8ca59
diff --git a/sdk_dingding/TopSdk/obj/Release/TopSdk.dll b/sdk_dingding/TopSdk/obj/Release/TopSdk.dll
deleted file mode 100644
index b97aacb..0000000
--- a/sdk_dingding/TopSdk/obj/Release/TopSdk.dll
+++ /dev/null
Binary files differ
diff --git a/sdk_dingding/TopSdk/obj/Release/TopSdk.pdb b/sdk_dingding/TopSdk/obj/Release/TopSdk.pdb
deleted file mode 100644
index a59f95f..0000000
--- a/sdk_dingding/TopSdk/obj/Release/TopSdk.pdb
+++ /dev/null
Binary files differ

--
Gitblit v1.9.1