From 5b4fb9c56426b5096555560a44dd365b02853ad4 Mon Sep 17 00:00:00 2001
From: yl <ykxkd@outlook.com>
Date: 星期六, 17 六月 2023 13:14:54 +0800
Subject: [PATCH] 代码加组织过滤

---
 VueWebApi/DLL/DAL/DeviceManagerDAL.cs |  202 +++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 181 insertions(+), 21 deletions(-)

diff --git a/VueWebApi/DLL/DAL/DeviceManagerDAL.cs b/VueWebApi/DLL/DAL/DeviceManagerDAL.cs
index 930c240..961d910 100644
--- a/VueWebApi/DLL/DAL/DeviceManagerDAL.cs
+++ b/VueWebApi/DLL/DAL/DeviceManagerDAL.cs
@@ -359,14 +359,36 @@
         #endregion
 
         #region[鎵�灞炶溅闂翠笅鎷夋帴鍙
-        public static ToMessage WorkShopSelect()
+        public static ToMessage WorkShopSelect(string stu_torgcode,string description)
         {
             string sql = "";
+            string search = "";
+            var dynamicParams = new DynamicParameters();
             try
             {
                 //鑾峰彇璁惧绫诲瀷鏁版嵁
-                sql = @"select org_code as code,org_name as name from TOrganization where description='W' and is_delete<>'1'";
-                var data = DapperHelper.selecttable(sql);
+                switch (description)
+                {
+                    case "":
+                        search += "and parent.description=@description ";
+                        dynamicParams.Add("@description", "W");
+                        break;
+                    case "D":
+                        search += "and child.org_code=@stu_torgcode ";
+                        dynamicParams.Add("@stu_torgcode", stu_torgcode);
+                        break;
+                    case "W":
+                        search += "and parent.org_code=@stu_torgcode ";
+                        dynamicParams.Add("@stu_torgcode", stu_torgcode);
+                        break;
+                    default:
+                        break;
+                }
+                 sql = @"select parent.org_code as code,parent.org_name as name
+                         from  TOrganization parent
+                         left join TOrganization as child on parent.parent_id=child.id 
+                         where  parent.is_delete<>'1'  " + search;
+                var data = DapperHelper.selectdata(sql, dynamicParams);
                 mes.code = "200";
                 mes.Message = "鏌ヨ鎴愬姛!";
                 mes.data = data;
@@ -410,12 +432,31 @@
         #endregion
 
         #region [璁惧娓呭崟鏌ヨ]
-        public static ToMessage DeviceMangerSearch(string deviceCode, string deviceName, string status, string workShop, string deviceType, string deviceGroup, int startNum, int endNum, string prop, string order)
+        public static ToMessage DeviceMangerSearch(string stu_torgcode,string description,string deviceCode, string deviceName, string status, string workShop, string deviceType, string deviceGroup, int startNum, int endNum, string prop, string order)
         {
             var dynamicParams = new DynamicParameters();
             string search = "";
             try
             {
+                if (workShop != "" && workShop != null)
+                {
+                    search += "and A.wksp_code=@workShop ";
+                    dynamicParams.Add("@workShop", workShop);
+                }
+                else 
+                {
+                    switch (description)
+                    {
+                        case "":
+                            search += "and T.description=@description ";
+                            dynamicParams.Add("@description", "W");
+                            break;
+                        case "D":
+                            search += "and  L.org_code=@stu_torgcode ";
+                            dynamicParams.Add("@stu_torgcode", stu_torgcode);
+                            break;
+                    }
+                }
                 if (deviceCode != "" && deviceCode != null)
                 {
                     search += "and A.code like '%'+@deviceCode+'%' ";
@@ -430,11 +471,6 @@
                 {
                     search += "and A.enable=@status ";
                     dynamicParams.Add("@status", status);
-                }
-                if (workShop != "" && workShop != null)
-                {
-                    search += "and A.wksp_code=@workShop ";
-                    dynamicParams.Add("@workShop", workShop);
                 }
                 if (deviceType != "" && deviceType != null)
                 {
@@ -458,8 +494,8 @@
                             from TEqpInfo A
                             left join TEqpType B on A.eqptype_code=B.code
                             left join TEqpGroup G on A.eqpgroup_code=G.code
-                            left join TOrganization T on A.wksp_code=T.org_code
-                            left join TOrganization L on A.Line_code=L.org_code
+                            left join TOrganization T on A.wksp_code=T.org_code 
+                            left join TOrganization as L on T.parent_id=L.id 
                             left join TUser U on A.lm_user=U.usercode
                             where A.is_delete<>'1' " + search;
                 var data = DapperHelper.GetPageList<object>(sql, dynamicParams, prop, order, startNum, endNum, out total);
@@ -1317,21 +1353,38 @@
         #endregion
 
         #region[璁惧鐐规鏍囧噯鍏宠仈宸ヤ綔绔欐煡璇
-        public static ToMessage DeviceCheckStanedAssociationEqp(string checkstand_code)
+        public static ToMessage DeviceCheckStanedAssociationEqp(string stu_torgcode,string description,string checkstand_code)
         {
             string sql = "";
+            string search = "";
             var dynamicParams = new DynamicParameters();
             List<StandEqp> list = new List<StandEqp>();
             try
             {
+                switch (description)
+                {
+                    case "":
+                        break;
+                    case "D":
+                        search += "and T.org_code=@stu_torgcode or child.org_code=@stu_torgcode ";
+                        dynamicParams.Add("@stu_torgcode", stu_torgcode);
+                        break;
+                    case "W":
+                        search += "and T.org_code=@stu_torgcode ";
+                        dynamicParams.Add("@stu_torgcode", stu_torgcode);
+                        break;
+                    default:
+                        break;
+                }
                 //鑾峰彇宸ヤ綔绔欓泦鍚�(杞﹂棿,鍖呭惈宸茬粦瀹氬伐浣滅珯鏍囪瘑)
                 sql = @"select distinct T.org_code as wksp_code,T.org_name as wksp_name,'E' as type,(case when B.eqp_code is null then 'N' else 'Y' end) flag 
                         from TOrganization T
+                        left join TOrganization as child on T.parent_id=child.id 
                         left join(
                         select distinct A.eqp_code,B.wksp_code  from TEqpchk_Eqp A 
                         inner join TEqpInfo B on A.eqp_code=B.code 
                         where A.eqpchkmain_code=@checkstand_code and A.is_delete<>'1' and B.is_delete<>'1'
-                        ) B on T.org_code=B.wksp_code where T.description='W' and is_delete<>'1'";
+                        ) B on T.org_code=B.wksp_code where T.description='W' and T.is_delete<>'1' "+search;
                 dynamicParams.Add("@checkstand_code", checkstand_code);
                 var data = DapperHelper.selectdata(sql, dynamicParams);
                 for (int i = 0; i < data.Rows.Count; i++)
@@ -1756,21 +1809,38 @@
         #endregion
 
         #region[璁惧淇濆吇鏍囧噯鍏宠仈宸ヤ綔绔欐煡璇
-        public static ToMessage DeviceRepairStanedAssociationEqp(string repairstand_code)
+        public static ToMessage DeviceRepairStanedAssociationEqp(string stu_torgcode,string description,string repairstand_code)
         {
             string sql = "";
+            string search = "";
             var dynamicParams = new DynamicParameters();
             List<StandEqp> list = new List<StandEqp>();
             try
             {
+                switch (description)
+                {
+                    case "":
+                        break;
+                    case "D":
+                        search += "and T.org_code=@stu_torgcode or child.org_code=@stu_torgcode ";
+                        dynamicParams.Add("@stu_torgcode", stu_torgcode);
+                        break;
+                    case "W":
+                        search += "and T.org_code=@stu_torgcode ";
+                        dynamicParams.Add("@stu_torgcode", stu_torgcode);
+                        break;
+                    default:
+                        break;
+                }
                 //鑾峰彇宸ヤ綔绔欓泦鍚�(杞﹂棿,鍖呭惈宸茬粦瀹氬伐浣滅珯鏍囪瘑)
                 sql = @"select distinct T.org_code as wksp_code,T.org_name as wksp_name,'E' as type,(case when B.eqp_code is null then 'N' else 'Y' end) flag 
                         from TOrganization T
+                        left join TOrganization as child on T.parent_id=child.id 
                         left join(
                         select distinct A.eqp_code,B.wksp_code  from TEqpmai_Eqp A 
                         inner join TEqpInfo B on A.eqp_code=B.code 
                         where A.eapmai_code=@repairstand_code and A.is_delete<>'1' and B.is_delete<>'1'
-                        ) B on T.org_code=B.wksp_code where T.description='W' and is_delete<>'1'";
+                        ) B on T.org_code=B.wksp_code where T.description='W' and T.is_delete<>'1' "+search;
 
                 dynamicParams.Add("@repairstand_code", repairstand_code);
                 var data = DapperHelper.selectdata(sql, dynamicParams);
@@ -1905,7 +1975,7 @@
 
 
         #region[璁惧鐐规璁板綍鏌ヨ]
-        public static ToMessage DeviceCheckTakeSearch(string wkshopcode, string eqpcode, string eqpname, string stanedname, string checkuser, string checkopendate, string checkclosedate, int startNum, int endNum, string prop, string order)
+        public static ToMessage DeviceCheckTakeSearch(string stu_torgcode,string description, string wkshopcode, string eqpcode, string eqpname, string stanedname, string checkuser, string checkopendate, string checkclosedate, int startNum, int endNum, string prop, string order)
         {
             var dynamicParams = new DynamicParameters();
             string search = "";
@@ -1915,6 +1985,20 @@
                 {
                     search += "and T.org_code=@wkshopcode ";
                     dynamicParams.Add("@wkshopcode", wkshopcode);
+                }
+                else
+                {
+                    switch (description)
+                    {
+                        case "":
+                            search += "and T.description=@description ";
+                            dynamicParams.Add("@description", "W");
+                            break;
+                        case "D":
+                            search += "and  L.org_code=@stu_torgcode ";
+                            dynamicParams.Add("@stu_torgcode", stu_torgcode);
+                            break;
+                    }
                 }
                 if (eqpcode != "" && eqpcode != null)
                 {
@@ -1955,6 +2039,7 @@
                             left join TEqpInfo E on A.eqp_code=E.code
                             left join TEqpchk_Main M on A.eqpchkmain_code=M.code
                             left join TOrganization T on E.wksp_code=T.org_code
+                            left join TOrganization as L on T.parent_id=L.id 
                             where T.description='W' " + search;
                 var data = DapperHelper.GetPageList<object>(sql, dynamicParams, prop, order, startNum, endNum, out total);
                 mes.code = "200";
@@ -2003,7 +2088,7 @@
         #endregion
 
         #region[璁惧鐐规璁板綍瀵煎嚭]
-        public static ToMessage DeviceCheckTakeOutExcel(string wkshopcode, string eqpcode, string eqpname, string stanedname, string checkuser, string checkopendate, string checkclosedate)
+        public static ToMessage DeviceCheckTakeOutExcel(string stu_torgcode, string description, string wkshopcode, string eqpcode, string eqpname, string stanedname, string checkuser, string checkopendate, string checkclosedate)
         {
             var dynamicParams = new DynamicParameters();
             string search = "";
@@ -2013,6 +2098,20 @@
                 {
                     search += "and T.org_code=@wkshopcode ";
                     dynamicParams.Add("@wkshopcode", wkshopcode);
+                }
+                else
+                {
+                    switch (description)
+                    {
+                        case "":
+                            search += "and T.description=@description ";
+                            dynamicParams.Add("@description", "W");
+                            break;
+                        case "D":
+                            search += "and  L.org_code=@stu_torgcode ";
+                            dynamicParams.Add("@stu_torgcode", stu_torgcode);
+                            break;
+                    }
                 }
                 if (eqpcode != "" && eqpcode != null)
                 {
@@ -2081,6 +2180,7 @@
                             left join TEqpInfo E on A.eqp_code=E.code
                             left join TEqpchk_Main M on A.eqpchkmain_code=M.code
                             left join TOrganization T on E.wksp_code=T.org_code
+                            left join TOrganization as L on T.parent_id=L.id 
                             left join TEqpchk_Item H on B.eqpchkdeta_code=H.code
                             where T.description='W' " + search;
                 DataTable data = DapperHelper.selectdata(sql, dynamicParams);
@@ -2105,7 +2205,7 @@
 
 
         #region[璁惧淇濆吇璁板綍鏌ヨ]
-        public static ToMessage DeviceCheckTakeSearch(string wkshopcode, string eqpcode, string eqpname, string stanedname, string repairuser, string repairopendate, string repairclosedate, string repairresult, int startNum, int endNum, string prop, string order)
+        public static ToMessage DeviceCheckTakeSearch(string stu_torgcode, string description, string wkshopcode, string eqpcode, string eqpname, string stanedname, string repairuser, string repairopendate, string repairclosedate, string repairresult, int startNum, int endNum, string prop, string order)
         {
             var dynamicParams = new DynamicParameters();
             string search = "";
@@ -2115,6 +2215,20 @@
                 {
                     search += "and T.org_code=@wkshopcode ";
                     dynamicParams.Add("@wkshopcode", wkshopcode);
+                }
+                else
+                {
+                    switch (description)
+                    {
+                        case "":
+                            search += "and T.description=@description ";
+                            dynamicParams.Add("@description", "W");
+                            break;
+                        case "D":
+                            search += "and  L.org_code=@stu_torgcode ";
+                            dynamicParams.Add("@stu_torgcode", stu_torgcode);
+                            break;
+                    }
                 }
                 if (eqpcode != "" && eqpcode != null)
                 {
@@ -2160,6 +2274,7 @@
                             left join TEqpInfo E on A.eqp_code=E.code
                             left join TEqpmai_Main M on A.eqpmaint_code=M.code
                             left join TOrganization T on E.wksp_code=T.org_code
+                            left join TOrganization as L on T.parent_id=L.id 
                             where T.description='W' " + search;
                 var data = DapperHelper.GetPageList<object>(sql, dynamicParams, prop, order, startNum, endNum, out total);
                 mes.code = "200";
@@ -2208,7 +2323,7 @@
         #endregion
 
         #region[璁惧淇濆吇璁板綍瀵煎嚭]
-        public static ToMessage DeviceRepairTakeOutExcel(string wkshopcode, string eqpcode, string eqpname, string stanedname, string repairuser, string repairopendate, string repairclosedate, string repairresult)
+        public static ToMessage DeviceRepairTakeOutExcel(string stu_torgcode, string description, string wkshopcode, string eqpcode, string eqpname, string stanedname, string repairuser, string repairopendate, string repairclosedate, string repairresult)
         {
             var dynamicParams = new DynamicParameters();
             string search = "";
@@ -2218,6 +2333,20 @@
                 {
                     search += "and T.org_code=@wkshopcode ";
                     dynamicParams.Add("@wkshopcode", wkshopcode);
+                }
+                else
+                {
+                    switch (description)
+                    {
+                        case "":
+                            search += "and T.description=@description ";
+                            dynamicParams.Add("@description", "W");
+                            break;
+                        case "D":
+                            search += "and  L.org_code=@stu_torgcode ";
+                            dynamicParams.Add("@stu_torgcode", stu_torgcode);
+                            break;
+                    }
                 }
                 if (eqpcode != "" && eqpcode != null)
                 {
@@ -2294,6 +2423,7 @@
                             left join TEqpInfo E on A.eqp_code=E.code
                             left join TEqpmai_Main M on A.eqpmaint_code=M.code
                             left join TOrganization T on E.wksp_code=T.org_code
+                            left join TOrganization as L on T.parent_id=L.id 
                             left join TEqpmai_Item H on B.eqpmaideta_code=H.code
                             where T.description='W' " + search;
                 DataTable data = DapperHelper.selectdata(sql, dynamicParams);
@@ -2318,7 +2448,7 @@
 
 
         #region[璁惧缁翠慨璁板綍鏌ヨ]
-        public static ToMessage DeviceUpdateSearch(string wkshopcode, string eqpcode, string eqpname, string reportuser, string repairuser, string vrifcatuser, string reportopendate, string reportclosedate, string repairopendate, string repairclosedate, string vrifcatopendate, string vrifcatclosedate, int startNum, int endNum, string prop, string order)
+        public static ToMessage DeviceUpdateSearch(string stu_torgcode, string description, string wkshopcode, string eqpcode, string eqpname, string reportuser, string repairuser, string vrifcatuser, string reportopendate, string reportclosedate, string repairopendate, string repairclosedate, string vrifcatopendate, string vrifcatclosedate, int startNum, int endNum, string prop, string order)
         {
             var dynamicParams = new DynamicParameters();
             string search = "";
@@ -2328,6 +2458,20 @@
                 {
                     search += "and A.wksp_code=@wkshopcode ";
                     dynamicParams.Add("@wkshopcode", wkshopcode);
+                }
+                else
+                {
+                    switch (description)
+                    {
+                        case "":
+                            search += "and T.description=@description ";
+                            dynamicParams.Add("@description", "W");
+                            break;
+                        case "D":
+                            search += "and  L.org_code=@stu_torgcode ";
+                            dynamicParams.Add("@stu_torgcode", stu_torgcode);
+                            break;
+                    }
                 }
                 if (eqpcode != "" && eqpcode != null)
                 {
@@ -2387,6 +2531,7 @@
                             left join TEqp_RepairRequest B on A.source_wo=B.docu_code 
                             left join TEqpInfo E on A.eqp_code=E.code
                             left join TOrganization T on A.wksp_code=T.org_code
+                            left join TOrganization as L on T.parent_id=L.id 
                             where T.description='W' " + search;
                 var data = DapperHelper.GetPageList<object>(sql, dynamicParams, prop, order, startNum, endNum, out total);
                 mes.code = "200";
@@ -2473,7 +2618,7 @@
         #endregion
 
         #region[璁惧缁翠慨璁板綍瀵煎嚭]
-        public static ToMessage DeviceUpdateOutExcel(string wkshopcode, string eqpcode, string eqpname, string reportuser, string repairuser, string vrifcatuser, string reportopendate, string reportclosedate, string repairopendate, string repairclosedate, string vrifcatopendate, string vrifcatclosedate)
+        public static ToMessage DeviceUpdateOutExcel(string stu_torgcode, string description, string wkshopcode, string eqpcode, string eqpname, string reportuser, string repairuser, string vrifcatuser, string reportopendate, string reportclosedate, string repairopendate, string repairclosedate, string vrifcatopendate, string vrifcatclosedate)
         {
             var dynamicParams = new DynamicParameters();
             string search = "";
@@ -2483,6 +2628,20 @@
                 {
                     search += "and A.wksp_code=@wkshopcode ";
                     dynamicParams.Add("@wkshopcode", wkshopcode);
+                }
+                else
+                {
+                    switch (description)
+                    {
+                        case "":
+                            search += "and T.description=@description ";
+                            dynamicParams.Add("@description", "W");
+                            break;
+                        case "D":
+                            search += "and  L.org_code=@stu_torgcode ";
+                            dynamicParams.Add("@stu_torgcode", stu_torgcode);
+                            break;
+                    }
                 }
                 if (eqpcode != "" && eqpcode != null)
                 {
@@ -2552,6 +2711,7 @@
                             left join TEqp_RepairRequest B on A.source_wo=B.docu_code 
                             left join TEqpInfo E on A.eqp_code=E.code
                             left join TOrganization T on A.wksp_code=T.org_code
+                            left join TOrganization as L on T.parent_id=L.id 
                             where T.description='W'" + search;
                 DataTable data = DapperHelper.selectdata(sql, dynamicParams);
                 data.TableName = "Table"; //璁剧疆DataTable鐨勫悕绉�

--
Gitblit v1.9.3