From e691f2ecede6a962dfa76bb4a494ac1c80c9a389 Mon Sep 17 00:00:00 2001
From: yl <ykxkd@outlook.com>
Date: 星期六, 10 九月 2022 00:05:58 +0800
Subject: [PATCH] 设备点检记录导出接口去掉分页参数,设备保养记录查询、明细查询、导出(接口开发)

---
 VueWebApi/DLL/DAL/BasicSettingDAL.cs | 1327 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 1,288 insertions(+), 39 deletions(-)

diff --git a/VueWebApi/DLL/DAL/BasicSettingDAL.cs b/VueWebApi/DLL/DAL/BasicSettingDAL.cs
index d0214c6..60137cb 100644
--- a/VueWebApi/DLL/DAL/BasicSettingDAL.cs
+++ b/VueWebApi/DLL/DAL/BasicSettingDAL.cs
@@ -21,7 +21,7 @@
         public static SqlParameter[] parameters; //瀹氫箟鍏ㄥ眬SqlParameter鍙傛暟鏁扮粍
 
         #region [缁勭粐鏋舵瀯鏁版嵁鏌ヨ]
-        public static ToMessage OrganizationSearch(string orgCode, string orgName, string orgType, string userName,int startNum,int endNum,string prop,string order)
+        public static ToMessage OrganizationSearch(string orgCode, string orgName, string orgType, string userName, int startNum, int endNum, string prop, string order)
         {
             var dynamicParams = new DynamicParameters();
             string search = "";
@@ -44,7 +44,7 @@
                 }
                 if (userName != "" && userName != null)
                 {
-                    search += "and parent.lm_user like '%'+@userName+'%' ";
+                    search += "and U.username like '%'+@userName+'%' ";
                     dynamicParams.Add("@userName", userName);
                 }
                 if (search == "")
@@ -62,11 +62,13 @@
                             parent.parent_id,
                             child.org_code as parentorg_code, 
                             child.org_name as parentorg_name,
-                            parent.lm_user,
+                            U.username as lm_user,
                             parent.lm_date
                             from TOrganization as parent 
-                            left join TOrganization as child on parent.parent_id=child.id where parent.is_delete<>1 " + search;
-                var data = DapperHelper.GetPageList<object>(sql, dynamicParams,prop,order, startNum, endNum, out total);
+                            left join TOrganization as child on parent.parent_id=child.id 
+                            left join TUser U on parent.lm_user=U.usercode
+                            where parent.is_delete<>1 " + search;
+                var data = DapperHelper.GetPageList<object>(sql, dynamicParams, prop, order, startNum, endNum, out total);
                 mes.code = "200";
                 mes.Message = "鏌ヨ鎴愬姛!";
                 mes.count = total;
@@ -75,43 +77,121 @@
             catch (Exception e)
             {
                 mes.code = "300";
+                mes.count = 0;
                 mes.Message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
+
+        #region [缁勭粐鏋舵瀯鏌ユ壘涓婄骇鍗曚綅]
+        public static ToMessage PrentOrganization(string orgcode)
+        {
+            var sql = "";
+            var dynamicParams = new DynamicParameters();
+            string search = "";
+            try
+            {
+                switch (orgcode)
+                {
+                    case "F":  //宸ュ巶
+                        orgcode = "";
+                        search += "and description=@orgcode ";
+                        dynamicParams.Add("@orgcode", orgcode);
+                        break;
+                    case "D":  //閮ㄩ棬
+                        orgcode = "F";
+                        search += "and description=@orgcode ";
+                        dynamicParams.Add("@orgcode", orgcode);
+                        break;
+                    case "W":  //杞﹂棿
+                        orgcode = "D";
+                        search += "and description=@orgcode ";
+                        dynamicParams.Add("@orgcode", orgcode);
+                        break;
+                    case "K":  //绉戝
+                        orgcode = "W";
+                        search += "and description=@orgcode ";
+                        dynamicParams.Add("@orgcode", orgcode);
+                        break;
+                    case "L":  //浜х嚎
+                        orgcode = "K";
+                        search += "and description=@orgcode ";
+                        dynamicParams.Add("@orgcode", orgcode);
+                        break;
+                    default:
+                        orgcode = "";
+                        search += "and description=@orgcode ";
+                        dynamicParams.Add("@orgcode", orgcode);
+                        break;
+                }
+                   sql = @"select id,org_code,org_name 
+                            from TOrganization 
+                            where  is_delete<>'1' " + search;
+
+                var data = DapperHelper.selectdata(sql, dynamicParams);
+                mes.code = "200";
+                mes.Message = "鏌ヨ鎴愬姛!";
+                mes.data = data;
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.Message = e.Message;
+                mes.data = null;
             }
             return mes;
         }
         #endregion
 
         #region[鏂板缂栬緫缁勭粐鏋舵瀯]
-        public static ToMessage AddUpdateOrganization(string organType, string organCode, string organName,string Operator, int supUnit, string operType)
+        public static ToMessage AddUpdateOrganization(string organType, string organCode, string organName, string Operator, int supUnit,string RightCode,string numvalue, string operType)
         {
+            string sql = "";
+            List<object> list = new List<object>();
             var dynamicParams = new DynamicParameters();
             try
             {
                 if (operType == "Add")
                 {
-                    var sql = @"insert into TOrganization(parent_id,org_code,org_name,lm_user,lm_date,description) 
-                            values(@supUnit,@organCode,@organName,@Operator,@CreateDate,@organType)";
-                    dynamicParams.Add("@supUnit", supUnit);
+                    sql = @"select *  from TOrganization where org_code=@organCode";
                     dynamicParams.Add("@organCode", organCode);
-                    dynamicParams.Add("@organName", organName);
-                    dynamicParams.Add("@Operator", Operator);
-                    dynamicParams.Add("@CreateDate", DateTime.Now.ToString());
-                    dynamicParams.Add("@organType", organType);
-                    int cont = DapperHelper.SQL(sql, dynamicParams);
-                    if (cont > 0)
+                    var data = DapperHelper.selectdata(sql, dynamicParams);
+                    if (data.Rows.Count > 0) 
+                    {
+                        mes.code = "300";
+                        mes.count = 0;
+                        mes.Message = "鏂板鎿嶄綔澶辫触,缂栫爜閲嶅!";
+                        mes.data = null;
+                        return mes;
+                    }
+
+                    sql = @"insert into TOrganization(parent_id,org_code,org_name,lm_user,lm_date,description) 
+                            values(@supUnit,@organCode,@organName,@Operator,@CreateDate,@organType)";
+                    list.Add(new { str = sql, parm = new { supUnit = supUnit, organCode= organCode, organName= organName, Operator= Operator, CreateDate= DateTime.Now.ToString(), organType= organType } });
+                    //sql = @"update T_CodeRules set value=@cunm2  where rightcode=@RightCode";
+                    //list.Add(new { str = sql, parm = new { cunm2 = numvalue, RightCode = RightCode } });
+                    bool aa = DapperHelper.DoTransaction(list);
+                    if (aa)
                     {
                         mes.code = "200";
+                        mes.count = 0;
                         mes.Message = "鏂板鎿嶄綔鎴愬姛!";
+                        mes.data = null;
                     }
                     else
                     {
                         mes.code = "300";
+                        mes.count = 0;
                         mes.Message = "鏂板鎿嶄綔澶辫触!";
+                        mes.data = null;
                     }
                 }
-                if (operType == "Update") 
+                if (operType == "Update")
                 {
-                    var sql = @"update TOrganization set description=@organType,org_name=@organName,parent_id=@supUnit,lm_user=@Operator,lm_date=@CreateDate where org_code=@organCode";
+                    sql = @"update TOrganization set description=@organType,org_name=@organName,parent_id=@supUnit,lm_user=@Operator,lm_date=@CreateDate where org_code=@organCode";
                     dynamicParams.Add(@"organCode", organCode);
                     dynamicParams.Add("@supUnit", supUnit);
                     dynamicParams.Add("@organName", organName);
@@ -122,19 +202,25 @@
                     if (cont > 0)
                     {
                         mes.code = "200";
+                        mes.count = 0;
                         mes.Message = "淇敼鎿嶄綔鎴愬姛!";
+                        mes.data = null;
                     }
                     else
                     {
                         mes.code = "300";
+                        mes.count = 0;
                         mes.Message = "淇敼鎿嶄綔澶辫触!";
+                        mes.data = null;
                     }
-                } 
+                }
             }
             catch (Exception e)
             {
                 mes.code = "300";
+                mes.count = 0;
                 mes.Message = e.Message;
+                mes.data = null;
             }
             return mes;
         }
@@ -148,10 +234,10 @@
             var dynamicParams = new DynamicParameters();
             try
             {
-                sql = @"select * from  TOrganization  where parent_id=@orgid";
+                sql = @"select * from  TOrganization  where parent_id=@orgid and is_delete<>'1'";
                 dynamicParams.Add(@"orgid", orgid);
                 cont = DapperHelper.selectcount(sql, dynamicParams);
-                if (cont <= 0)
+                if (cont>0)
                 {
                     mes.code = "300";
                     mes.Message = "褰撳墠缁勭粐鏈変笅绾у叧鑱�,璇峰厛鍒犻櫎涓嬬骇缁勭粐!";
@@ -164,19 +250,25 @@
                     if (cont > 0)
                     {
                         mes.code = "200";
+                        mes.count = 0;
                         mes.Message = "鍒犻櫎鎿嶄綔鎴愬姛!";
+                        mes.data = null;
                     }
                     else
                     {
                         mes.code = "300";
+                        mes.count = 0;
                         mes.Message = "鍒犻櫎鎿嶄綔澶辫触!";
+                        mes.data = null;
                     }
                 }
             }
             catch (Exception e)
             {
                 mes.code = "300";
+                mes.count = 0;
                 mes.Message = e.Message;
+                mes.data = null;
             }
             return mes;
         }
@@ -185,7 +277,7 @@
 
 
         #region[鐢ㄦ埛娓呭崟鏁版嵁鏌ヨ]
-        public static ToMessage UserSearch(string UserCode, string UserName, string StuOrg, string Enable, int startNum, int endNum, string prop, string order)
+        public static ToMessage UserSearch(string UserCode, string UserName, string StuOrg,string wagetype, string Enable, int startNum, int endNum, string prop, string order)
         {
             var dynamicParams = new DynamicParameters();
             string search = "";
@@ -198,13 +290,18 @@
                 }
                 if (UserName != "" && UserName != null)
                 {
-                    search += "and u.username like '%'+@UserName+'%' ";
+                    search += "and S.username like '%'+@UserName+'%' ";
                     dynamicParams.Add("@UserName", UserName);
                 }
                 if (StuOrg != "" && StuOrg != null)
                 {
                     search += "and u.stu_torgcode=@StuOrg ";
                     dynamicParams.Add("@StuOrg", StuOrg);
+                }
+                if (wagetype != "" && wagetype != null)
+                {
+                    search += "and u.wagetype=@wagetype ";
+                    dynamicParams.Add("@wagetype", wagetype);
                 }
                 if (Enable != "" && Enable != null)
                 {
@@ -218,9 +315,12 @@
                 //search = search.Substring(3);//鎴彇绱㈠紩2鍚庨潰鐨勫瓧绗�
                 // --------------鏌ヨ鎸囧畾鏁版嵁--------------
                 var total = 0; //鎬绘潯鏁�
-                var sql = @"select u.usercode,u.username,u.stu_torgcode,t.org_name,u.enable,u.lm_user,u.lm_date,u.is_role  
+                var sql = @"select u.id,u.usercode,u.username,g.group_code,g.group_name,u.stu_torgcode,t.org_name,u.password,u.mobile,u.email,u.wagetype,u.enable,S.username as lm_user,u.lm_date,u.is_role  
                             from TUser u
-                            left join TOrganization t on u.stu_torgcode=t.org_code where u.is_delete<>1 " + search;
+                            left join TOrganization t on u.stu_torgcode=t.org_code 
+                            left join TGroup g on u.usergroup_code=g.group_code
+                            left join TUser S on u.lm_user=S.usercode
+                            where u.is_delete='0' and u.userclassid='0' " + search;
                 var data = DapperHelper.GetPageList<object>(sql, dynamicParams, prop, order, startNum, endNum, out total);
                 mes.code = "200";
                 mes.Message = "鏌ヨ鎴愬姛!";
@@ -230,70 +330,192 @@
             catch (Exception e)
             {
                 mes.code = "300";
+                mes.count = 0;
                 mes.Message = e.Message;
+                mes.data = null;
             }
             return mes;
         }
         #endregion
 
+        #region [鐢ㄦ埛鎵�灞炵粍缁嘳
+        public static ToMessage UserOrganization()
+        {
+            var dynamicParams = new DynamicParameters();
+            string sql = "";
+            try
+            {
+                List<TreeDG> list = new List<TreeDG>();
+                sql = @"select id,parent_id,org_code,org_name,description  
+                      FROM TOrganization where is_delete<>'1'";
+                var dt = DapperHelper.selectdata(sql, dynamicParams);
+                for (int i = 0; i < dt.Rows.Count; i++)   //杩欓噷鏄惊鐜墍鏈�
+                {
+                    if (string.IsNullOrEmpty(dt.Rows[i]["PARENT_ID"].ToString()) || dt.Rows[i]["PARENT_ID"].ToString() == "0")  //鍒ゆ柇鏄惁鏈�澶栧眰鏍硅妭鐐�
+                    {
+                        TreeDG tbj = new TreeDG();
+                        tbj.id = dt.Rows[i]["ID"].ToString();
+                        tbj.code = dt.Rows[i]["ORG_CODE"].ToString();
+                        tbj.name = dt.Rows[i]["ORG_NAME"].ToString();
+                        list.Add(tbj);
+                    }
+                }
+                digui(dt, list);
+                mes.code = "200";
+                mes.Message = "鍔犺浇瀹屾垚";
+                mes.data = list;
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.data = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
+
+        #region[鐢ㄦ埛鎵�灞炵彮缁刔
+        public static ToMessage UserGroup()
+        {
+            var dynamicParams = new DynamicParameters();
+            try
+            {
+                // --------------鏌ヨ鎸囧畾鏁版嵁--------------
+                var total = 0; //鎬绘潯鏁�
+                var sql = @"select group_code,group_name 
+                            from TGroup 
+                            where  is_delete<>'1' ";
+                var data = DapperHelper.selecttable(sql);
+                mes.code = "200";
+                mes.Message = "鏌ヨ鎴愬姛!";
+                mes.count = total;
+                mes.data = data;
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.Message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
+
+        #region銆愰�掑綊鏂规硶銆�
+        public static void digui(DataTable dt, List<TreeDG> tree)
+        {
+            for (int m = 0; m < tree.Count; m++)
+            {
+                tree[m].children = new List<TreeDG>();
+                for (int i = 0; i < dt.Rows.Count; i++)//绗竴娆″惊鐜紝寰楀埌鎵�鏈夋牴鑺傜偣鐨勫瓙闆�
+                {
+                    if (tree[m].id == dt.Rows[i]["PARENT_ID"].ToString() && dt.Rows[i]["ID"].ToString() != dt.Rows[i]["PARENT_ID"].ToString())
+                    {
+                        TreeDG tbjson = new TreeDG();
+                        tbjson.id = dt.Rows[i]["ID"].ToString();
+                        tbjson.code = dt.Rows[i]["ORG_CODE"].ToString();
+                        tbjson.name = dt.Rows[i]["ORG_NAME"].ToString();
+                        tree[m].children.Add(tbjson);
+                    }
+                }
+                for (int i = 0; i < tree[m].children.Count; i++)
+                {
+                    digui(dt, tree[m].children);//鍐嶆鐢ㄥ瓙闆嗗幓寰幆锛屾嬁鍑哄瓙闆嗙殑瀛愰泦
+                }
+            }
+        }
+
+        #endregion
+
         #region[鐢ㄦ埛娓呭崟鏂板缂栬緫]
-        public static ToMessage AddUpdateUser(string UserId, string UserCode, string UserName, string Enable, string StuOrg,string Mobile,string Email, string Operator, string OperType)
+        public static ToMessage AddUpdateUser(string UserId, string UserCode, string UserName,string Password, string Enable, string StuOrg,string groupcode, string wagetype, string Mobile, string Email, string Operator, string OperType)
         {
             var dynamicParams = new DynamicParameters();
             try
             {
                 if (OperType == "Add")
                 {
-                    var sql = @"insert into TUser(usercode,username,enable,mobile,lm_date,email,lm_user,stu_torgcode) 
-                            values(@UserCode,@UserName,@Enable,@CreateDate,@Email,@Operator,@StuOrg)";
+                    var sql0 = @"select *  from TUser where usercode=@UserCode";
+                    dynamicParams.Add("@UserCode", UserCode);
+                    var data = DapperHelper.selectdata(sql0, dynamicParams);
+                    if (data.Rows.Count > 0)
+                    {
+                        mes.code = "300";
+                        mes.count = 0;
+                        mes.Message = "鏂板鎿嶄綔澶辫触,缂栫爜閲嶅!";
+                        mes.data = null;
+                        return mes;
+                    }
+
+                    var sql = @"insert into TUser(usercode,username,password,enable,mobile,lm_date,email,lm_user,stu_torgcode,wagetype,usergroup_code) 
+                            values(@UserCode,@UserName,@password,@Enable,@Mobile,@CreateDate,@Email,@Operator,@StuOrg,@wagetype,@groupcode)";
                     dynamicParams.Add("@UserCode", UserCode);
                     dynamicParams.Add("@UserName", UserName);
+                    dynamicParams.Add("@password", Password);
                     dynamicParams.Add("@Enable", Enable);
                     dynamicParams.Add("@Mobile", Mobile);
                     dynamicParams.Add("@CreateDate", DateTime.Now.ToString());
                     dynamicParams.Add("@Email", Email);
                     dynamicParams.Add("@Operator", Operator);
                     dynamicParams.Add("@StuOrg", StuOrg);
+                    dynamicParams.Add("@wagetype", wagetype);
+                    dynamicParams.Add("@groupcode", groupcode);
                     int cont = DapperHelper.SQL(sql, dynamicParams);
                     if (cont > 0)
                     {
                         mes.code = "200";
+                        mes.count = 0;
                         mes.Message = "鏂板鎿嶄綔鎴愬姛!";
+                        mes.data = null;
                     }
                     else
                     {
                         mes.code = "300";
+                        mes.count = 0;
                         mes.Message = "鏂板鎿嶄綔澶辫触!";
+                        mes.data = null;
                     }
                 }
                 if (OperType == "Update")
                 {
-                    var sql = @"update TUser set username=@UserName,enable=@Enable,mobile=@Mobile,lm_user=@Operator,email=@Email,stu_torgcode=@StuOrg,lm_date=@CreateDate where id=@UserId";
+                    var sql = @"update TUser set username=@UserName,password=@password,enable=@Enable,mobile=@Mobile,lm_user=@Operator,email=@Email,stu_torgcode=@StuOrg,wagetype=@wagetype,usergroup_code=@groupcode,lm_date=@CreateDate where id=@UserId";
                     dynamicParams.Add("@UserId", UserId);
                     dynamicParams.Add("@UserName", UserName);
+                    dynamicParams.Add("@password", Password);
                     dynamicParams.Add("@Enable", Enable);
                     dynamicParams.Add("@Mobile", Mobile);
                     dynamicParams.Add("@CreateDate", DateTime.Now.ToString());
                     dynamicParams.Add("@Email", Email);
                     dynamicParams.Add("@Operator", Operator);
                     dynamicParams.Add("@StuOrg", StuOrg);
+                    dynamicParams.Add("@wagetype", wagetype);
+                    dynamicParams.Add("@groupcode", groupcode);
                     int cont = DapperHelper.SQL(sql, dynamicParams);
                     if (cont > 0)
                     {
                         mes.code = "200";
+                        mes.count = 0;
                         mes.Message = "淇敼鎿嶄綔鎴愬姛!";
+                        mes.data = null;
                     }
                     else
                     {
                         mes.code = "300";
+                        mes.count = 0;
                         mes.Message = "淇敼鎿嶄綔澶辫触!";
+                        mes.data = null;
                     }
                 }
             }
             catch (Exception e)
             {
                 mes.code = "300";
+                mes.count = 0;
                 mes.Message = e.Message;
+                mes.data = null;
             }
             return mes;
         }
@@ -312,29 +534,33 @@
                 dynamicParams.Add("@userid", userid);
                 var data = DapperHelper.selectdata(sql, dynamicParams);
 
-                sql = @"update TUserRoleRelation set is_delete='1'  where user_code=@usercode";
-                dynamicParams.Add("@usercode",data.Rows[0]["USERCODE"].ToString());
-                list.Add(new { str = sql, parm = dynamicParams });
+                sql = @"delete TUserRoleRelation  where user_code=@usercode";
+                list.Add(new { str = sql, parm = new { usercode = data.Rows[0]["USERCODE"].ToString() } });
 
                 sql = @"update TUser set is_delete='1'  where id=@userid";
-                dynamicParams.Add("@userid", userid);
-                list.Add(new { str = sql, parm = dynamicParams });
+                list.Add(new { str = sql, parm = new { userid = userid } });
                 bool aa = DapperHelper.DoTransaction(list);
                 if (aa)
                 {
                     mes.code = "200";
+                    mes.count = 0;
                     mes.Message = "鍒犻櫎鐢ㄦ埛鎴愬姛!";
+                    mes.data = null;
                 }
-                else 
+                else
                 {
                     mes.code = "300";
+                    mes.count = 0;
                     mes.Message = "鍒犻櫎鐢ㄦ埛澶辫触!";
+                    mes.data = null;
                 }
             }
             catch (Exception e)
             {
                 mes.code = "300";
+                mes.count = 0;
                 mes.Message = e.Message;
+                mes.data = null;
             }
             return mes;
         }
@@ -362,11 +588,11 @@
                 for (int i = 0; i < data.Count; i++)
                 {
                     sql = @"select B.role_code as code,B.role_name as name,(case when C.role_code is null then 'N' else 'Y' end) flag from TRole B 
-                            left join TUserRoleRelation C on B.role_code=C.role_code
-                            where B.roletype_code=@roletype_code and  C.user_code=@usercode and B.is_delete='0'";
+                             left join(select role_code  from TUserRoleRelation where user_code=@usercode) C on B.role_code=C.role_code
+                             where B.roletype_code=@roletype_code  and B.is_delete='0' and B.is_system='0'";
                     dynamicParams.Add("@roletype_code", data[i].code);
                     dynamicParams.Add("@usercode", usercode);
-                    var data0 = DapperHelper.select<TreeObejctCont>(sql, dynamicParams);
+                    var data0 = DapperHelper.select<TreeObejctCn>(sql, dynamicParams);
                     data[i].children = data0;
 
                 }
@@ -377,13 +603,448 @@
             catch (Exception e)
             {
                 mes.code = "300";
+                mes.count = 0;
                 mes.Message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
+
+        #region[鐢ㄦ埛娓呭崟鍏宠仈瑙掕壊淇濆瓨]
+        public static ToMessage SaveUserAssoctRole(string usercode, List<RoleUserSubmit> json)
+        {
+            var sql = "";
+            List<object> list = new List<object>();
+            try
+            {
+                list.Clear();
+                if (json == null || json.Count <= 0)
+                {
+                    //娓呴櫎鐢ㄦ埛鍏宠仈瑙掕壊琛ㄦ暟鎹�
+                    sql = @"delete TUserRoleRelation where user_code=@usercode";
+                    list.Add(new { str = sql, parm =new {usercode = usercode } });
+                    //娓呴櫎鐢ㄦ埛琛ㄥ叧鑱旇鑹叉爣璇�
+                    sql = @"update TUser set is_role='N' where usercode=@usercode";
+                    list.Add(new { str = sql, parm = new { usercode = usercode } });
+                }
+                else
+                {
+                    //娓呴櫎鐢ㄦ埛鍏宠仈瑙掕壊琛ㄦ暟鎹�
+                    sql = @"delete TUserRoleRelation where user_code=@usercode";
+                    list.Add(new { str = sql, parm = new { usercode = usercode } });
+                    
+                    //寰幆鍐欏叆鐢ㄦ埛鍏宠仈瑙掕壊琛�
+                    for (int i = 0; i < json.Count; i++)
+                    {
+                        for (int j = 0; j < json[i].Data.Count; j++)
+                        {
+                            sql = @"insert into TUserRoleRelation(user_code,role_code) values(@usercode,@role_code)";
+                            list.Add(new { str = sql, parm = new { usercode = usercode, role_code= json[i].Data[j] } });
+
+                        }
+                    }
+                    //鏍囪鐢ㄦ埛琛ㄥ叧鑱旇鑹叉爣璇�
+                    sql = @"update TUser set is_role='Y' where usercode=@usercode";
+                    list.Add(new { str = sql, parm = new { usercode = usercode} });
+                }
+                bool aa = DapperHelper.DoTransaction(list);
+                if (aa)
+                {
+                    mes.code = "200";
+                    mes.count = 0;
+                    mes.Message = "鎿嶄綔鎴愬姛!";
+                    mes.data = null;
+                }
+                else
+                {
+                    mes.code = "300";
+                    mes.count = 0;
+                    mes.Message = "鎿嶄綔澶辫触!";
+                    mes.data = null;
+                }
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.Message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
+
+        #region[鐢ㄦ埛娓呭崟瀵煎叆]
+        public static ToMessage ImportUserExcel(string username, string filesName)
+        {
+            var sql = "";
+            List<object> list = new List<object>();
+            DataTable ds = new DataTable();
+
+            try
+            {
+                ds = NPOIHelper.GetExcelDatatable(filesName);           //璋冪敤鑷畾涔夋柟娉�
+                int rowsnum = ds.Rows.Count;
+                if (rowsnum == 0)
+                {
+                    mes.code = "300";
+                    mes.count = 0;
+                    mes.Message = "Excel琛ㄦ牸涓虹┖,鏃犳暟鎹紒";
+                    mes.data = null;
+                }
+                else
+                {
+                    list.Clear();
+                    for (int i = 0; i < ds.Rows.Count; i++)
+                    {
+
+                        if (ds.Rows[i][1].ToString() != "" && ds.Rows[i][1].ToString() != null)
+                        {
+                            sql = @"insert into TUser(usercode,username,enable,password,mobile,email,lm_user,lm_date,wagetype,stu_torgcode)
+                                    values(@usercode,@username,@enable,@password,@mobile,@email,@lm_user,@lm_date,@wagetype,@stu_torgcode)";
+                            list.Add(new { str = sql, parm = new {
+                                usercode = ds.Rows[i][1].ToString(),
+                                username = ds.Rows[i][2].ToString(),
+                                enable = ds.Rows[i][3].ToString(),
+                                password = ds.Rows[i][4].ToString(),
+                                mobile = ds.Rows[i][5].ToString(),
+                                email = ds.Rows[i][6].ToString(),
+                                lm_user = username,
+                                lm_date = DateTime.Now.ToString(),
+                                wagetype = ds.Rows[i][7].ToString(),
+                                stu_torgcode = ds.Rows[i][8].ToString()
+                            } 
+                            });
+                        }
+                    }
+                    bool aa = DapperHelper.DoTransaction(list);
+                    if (aa)
+                    {
+                        mes.code = "200";
+                        mes.count = 0;
+                        mes.Message = "瀵煎叆鎴愬姛!";
+                        mes.data = null;
+                    }
+                    else
+                    {
+                        mes.code = "300";
+                        mes.count = 0;
+                        mes.Message = "瀵煎叆澶辫触!";
+                        mes.data = null;
+                    }
+                }
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.Message = e.Message;
+                mes.data = null;
             }
             return mes;
         }
         #endregion
 
 
+
+        #region[鐢ㄦ埛缁勫垪琛ㄦ煡璇
+        public static ToMessage UserGroupSearch(int startNum, int endNum, string prop, string order)
+        {
+            var dynamicParams = new DynamicParameters();
+            try
+            {
+                // --------------鏌ヨ鎸囧畾鏁版嵁--------------
+                var total = 0; //鎬绘潯鏁�
+                var sql = @"select group_code,group_name,description
+                            from TGroup 
+                            where  is_delete<>'1' ";
+                var data = DapperHelper.GetPageList<object>(sql, dynamicParams, prop, order, startNum, endNum, out total);
+                mes.code = "200";
+                mes.Message = "鏌ヨ鎴愬姛!";
+                mes.count = total;
+                mes.data = data.ToList();
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.Message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
+
+        #region[鐢ㄦ埛缁勬柊澧瀅
+        public static ToMessage UserGroupAdd(List<StepDefect> json,string username)
+        {
+            var sql = "";
+            List<object> list = new List<object>();
+            var dynamicParams = new DynamicParameters();
+            try
+            {
+                list.Clear();
+                //寰幆鍐欏叆鐢ㄦ埛缁勮〃
+                for (int i = 0; i < json.Count; i++)
+                {
+                    var sql0 = @"select *  from TGroup where group_code=@group_code";
+                    dynamicParams.Add("@group_code", json[i].code);
+                    var data = DapperHelper.selectdata(sql0, dynamicParams);
+                    if (data.Rows.Count > 0)
+                    {
+                        mes.code = "300";
+                        mes.count = 0;
+                        mes.Message = "鎿嶄綔澶辫触,缂栫爜閲嶅!";
+                        mes.data = null;
+                        return mes;
+                    }
+                    sql = @"insert into TGroup(group_code,group_name,description,lm_user,lm_date) values(@groupcode,@groupename,@description,@lm_user,@lm_date)";
+                    list.Add(new
+                    {
+                        str = sql,
+                        parm = new
+                        {
+                            groupcode = json[i].code,
+                            groupename = json[i].name,
+                            description = json[i].flag,
+                            lm_user = username,
+                            lm_date = DateTime.Now.ToString()
+                        }
+                    });
+                }
+                bool aa = DapperHelper.DoTransaction(list);
+                if (aa)
+                {
+                    mes.code = "200";
+                    mes.count = 0;
+                    mes.Message = "鎿嶄綔鎴愬姛!";
+                    mes.data = null;
+                }
+                else
+                {
+                    mes.code = "300";
+                    mes.count = 0;
+                    mes.Message = "鎿嶄綔澶辫触!";
+                    mes.data = null;
+                }
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.Message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
+
+        #region[鐢ㄦ埛缁勫垹闄
+        public static ToMessage UserGroupDelete(string UserGrupCode)
+        {
+            var sql = "";
+            List<object> list = new List<object>();
+            var dynamicParams = new DynamicParameters();
+            try
+            {
+                list.Clear();
+                sql = @"select *  from TUser where is_delete<>'1' and usergroup_code=@UserGrupCode";
+                dynamicParams.Add("@UserGrupCode", UserGrupCode);
+                var data = DapperHelper.selectdata(sql, dynamicParams);
+                if (data.Rows.Count > 0) 
+                {
+                    mes.code = "300";
+                    mes.count = 0;
+                    mes.Message = "璇ョ敤鎴风粍涓嬫湁鍏宠仈鐨勭敤鎴�,涓嶅厑璁稿垹闄�!";
+                    mes.data = null;
+                    return mes;
+                }
+                sql = @"delete TGroup where group_code=@UserGrupCode";
+                list.Add(new { str = sql, parm = new { UserGrupCode = UserGrupCode } });
+               
+                bool aa = DapperHelper.DoTransaction(list);
+                if (aa)
+                {
+                    mes.code = "200";
+                    mes.count = 0;
+                    mes.Message = "鎿嶄綔鎴愬姛!";
+                    mes.data = null;
+                }
+                else
+                {
+                    mes.code = "300";
+                    mes.count = 0;
+                    mes.Message = "鎿嶄綔澶辫触!";
+                    mes.data = null;
+                }
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.Message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
+
+
+
+
+
+        #region[瑙掕壊绫诲瀷鏌ヨ]
+        public static ToMessage RoleTypeSearch(int startNum, int endNum, string prop, string order)
+        {
+            var dynamicParams = new DynamicParameters();
+            try
+            {
+                // --------------鏌ヨ鎸囧畾鏁版嵁--------------
+                var total = 0; //鎬绘潯鏁�
+                var sql = @"select roletype_code,roletype_name 
+                            from TRoleType 
+                            where  is_delete<>'1' ";
+                var data = DapperHelper.GetPageList<object>(sql, dynamicParams, prop, order, startNum, endNum, out total);
+                mes.code = "200";
+                mes.Message = "鏌ヨ鎴愬姛!";
+                mes.count = total;
+                mes.data = data.ToList();
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.Message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
+
+        #region[瑙掕壊绫诲瀷鏂板]
+        public static ToMessage RoleTypeAdd(List<ObjectData> json)
+        {
+            var sql = "";
+            List<object> list = new List<object>();
+            var dynamicParams = new DynamicParameters();
+            try
+            {
+                list.Clear();
+                //寰幆鍐欏叆瑙掕壊绫诲瀷琛�
+                for (int i = 0; i < json.Count; i++)
+                {
+                    var sql0 = @"select *  from TRoleType where roletype_code=@roletype_code";
+                    dynamicParams.Add("@roletype_code", json[i].code);
+                    var data = DapperHelper.selectdata(sql0, dynamicParams);
+                    if (data.Rows.Count > 0)
+                    {
+                        mes.code = "300";
+                        mes.count = 0;
+                        mes.Message = "鎿嶄綔澶辫触,缂栫爜閲嶅!";
+                        mes.data = null;
+                        return mes;
+                    }
+                    sql = @"insert into TRoleType(roletype_code,roletype_name) values(@roletypecode,@roletypename)";
+                    list.Add(new
+                    {
+                        str = sql,
+                        parm = new
+                        {
+                            roletypecode = json[i].code,
+                            roletypename = json[i].name
+                        }
+                    });
+                }
+                bool aa = DapperHelper.DoTransaction(list);
+                if (aa)
+                {
+                    mes.code = "200";
+                    mes.count = 0;
+                    mes.Message = "鎿嶄綔鎴愬姛!";
+                    mes.data = null;
+                }
+                else
+                {
+                    mes.code = "300";
+                    mes.count = 0;
+                    mes.Message = "鎿嶄綔澶辫触!";
+                    mes.data = null;
+                }
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.Message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
+
+        #region[瑙掕壊绫诲瀷鍒犻櫎]
+        public static ToMessage RoleTypeDelete(string roleTypeCode)
+        {
+            var sql = "";
+            List<object> list = new List<object>();
+            try
+            {
+                list.Clear();
+                sql = @"delete TRoleType where roletype_code=@roletypecode";
+                list.Add(new { str = sql, parm = new { roletypecode = roleTypeCode}});
+                sql = @"delete TRole where roletype_code=@roletypecode";
+                list.Add(new { str = sql, parm = new { roletypecode = roleTypeCode }});
+                bool aa = DapperHelper.DoTransaction(list);
+                if (aa)
+                {
+                    mes.code = "200";
+                    mes.count = 0;
+                    mes.Message = "鎿嶄綔鎴愬姛!";
+                    mes.data = null;
+                }
+                else
+                {
+                    mes.code = "300";
+                    mes.count = 0;
+                    mes.Message = "鎿嶄綔澶辫触!";
+                    mes.data = null;
+                }
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.Message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
+
+        #region[瑙掕壊绫诲瀷涓嬫媺鎺ュ彛]
+        public static ToMessage RoleTypeSelect()
+        {
+            string sql = "";
+            try
+            {
+                //鑾峰彇璁惧绫诲瀷鏁版嵁
+                sql = @"select roletype_code,roletype_name from TRoleType where is_delete<>'1' ";
+                var data = DapperHelper.selecttable(sql);
+                mes.code = "200";
+                mes.Message = "鏌ヨ鎴愬姛!";
+                mes.data = data;
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.Message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
 
         #region[瑙掕壊娓呭崟鏌ヨ]
         public static ToMessage RoleSearch(string RoleCode, string RoleName, string RoleTypeCode, string CreateUser, int startNum, int endNum, string prop, string order)
@@ -409,7 +1070,7 @@
                 }
                 if (CreateUser != "" && CreateUser != null)
                 {
-                    search += "and A.lm_user like '%'+@CreateUser+'%' ";
+                    search += "and T.username like '%'+@CreateUser+'%' ";
                     dynamicParams.Add("@CreateUser", CreateUser);
                 }
                 if (search == "")
@@ -419,9 +1080,457 @@
                 //search = search.Substring(3);//鎴彇绱㈠紩2鍚庨潰鐨勫瓧绗�
                 // --------------鏌ヨ鎸囧畾鏁版嵁--------------
                 var total = 0; //鎬绘潯鏁�
-                var sql = @"select A.role_code,A.role_name,b.roletype_code,B.roletype_name,A.lm_user,A.lm_date,A.is_user,A.is_right  
+                var sql = @"select A.id,A.role_code,A.role_name,b.roletype_code,B.roletype_name,A.description,T.username as lm_user,A.lm_date,A.is_user,A.is_right  
                             from TRole A
                             left join TRoleType  B on A.roletype_code=B.roletype_code
+                            left join TUser T on A.lm_user=T.usercode
+                            where  A.is_delete='0' and A.is_system='0' " + search;
+                var data = DapperHelper.GetPageList<object>(sql, dynamicParams, prop, order, startNum, endNum, out total);
+                mes.code = "200";
+                mes.Message = "鏌ヨ鎴愬姛!";
+                mes.count = total;
+                mes.data = data.ToList();
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.Message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
+
+        #region[瑙掕壊娓呭崟鏂板缂栬緫]
+        public static ToMessage AddUpdateRole(string RoleId, string RoleCode, string RoleName, string RoleTypeCode, string description, string Usercode, string OperType)
+        {
+            var dynamicParams = new DynamicParameters();
+            try
+            {
+                if (OperType == "Add")
+                {
+                    var sql0 = @"select *  from TRole where role_code=@role_code";
+                    dynamicParams.Add("@role_code", RoleCode);
+                    var data = DapperHelper.selectdata(sql0, dynamicParams);
+                    if (data.Rows.Count > 0)
+                    {
+                        mes.code = "300";
+                        mes.count = 0;
+                        mes.Message = "鎿嶄綔澶辫触,缂栫爜閲嶅!";
+                        mes.data = null;
+                        return mes;
+                    }
+                    var sql = @"insert into TRole(role_code,role_name,lm_user,lm_date,roletype_code,description) 
+                            values(@RoleCode,@RoleName,@Usercode,@CreateDate,@RoleTypeCode,@description)";
+                    dynamicParams.Add("@RoleCode", RoleCode);
+                    dynamicParams.Add("@RoleName", RoleName);
+                    dynamicParams.Add("@Usercode", Usercode);
+                    dynamicParams.Add("@CreateDate", DateTime.Now.ToString());
+                    dynamicParams.Add("@RoleTypeCode", RoleTypeCode);
+                    dynamicParams.Add("@description", description);
+                    int cont = DapperHelper.SQL(sql, dynamicParams);
+                    if (cont > 0)
+                    {
+                        mes.code = "200";
+                        mes.count = 0;
+                        mes.Message = "鏂板鎿嶄綔鎴愬姛!";
+                        mes.data = null;
+                    }
+                    else
+                    {
+                        mes.code = "300";
+                        mes.count = 0;
+                        mes.Message = "鏂板鎿嶄綔澶辫触!";
+                        mes.data = null;
+                    }
+                }
+                if (OperType == "Update")
+                {
+                    var sql = @"update TRole set role_name=@RoleName,lm_user=@Usercode,lm_date=@CreateDate,roletype_code=@RoleTypeCode,description=@description where id=@RoleId";
+                    dynamicParams.Add("@RoleId", RoleId);
+                    dynamicParams.Add("@RoleName", RoleName);
+                    dynamicParams.Add("@Usercode", Usercode);
+                    dynamicParams.Add("@CreateDate", DateTime.Now.ToString());
+                    dynamicParams.Add("@RoleTypeCode", RoleTypeCode);
+                    dynamicParams.Add("@description", description);
+                    int cont = DapperHelper.SQL(sql, dynamicParams);
+                    if (cont > 0)
+                    {
+                        mes.code = "200";
+                        mes.count = 0;
+                        mes.Message = "淇敼鎿嶄綔鎴愬姛!";
+                        mes.data = null;
+                    }
+                    else
+                    {
+                        mes.code = "300";
+                        mes.count = 0;
+                        mes.Message = "淇敼鎿嶄綔澶辫触!";
+                        mes.data = null;
+                    }
+                }
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.Message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
+
+        #region[瑙掕壊娓呭崟鍒犻櫎]
+        public static ToMessage DeleteRole(string RoleCode)
+        {
+            var sql = "";
+            List<object> list = new List<object>();
+            try
+            {
+                //鏇存柊瑙掕壊琛ㄣ�佽鑹插叧鑱旂敤鎴锋爣璇嗗強鍒犻櫎鐘舵��
+                sql = @"update TRole set is_user='N',is_right='N',is_delete='1'  where role_code=@RoleCode";
+                list.Add(new { str = sql, parm = new { RoleCode = RoleCode } });
+                //鏇存柊瑙掕壊鍏宠仈鐢ㄦ埛琛ㄣ�佽鑹插叧鑱旂敤鎴锋爣璇嗗強鍒犻櫎鐘舵��
+                sql = @"delete TUserRoleRelation  where role_code=@RoleCode";
+                list.Add(new { str = sql, parm = new { RoleCode = RoleCode } });
+                //鍒犻櫎(鏇存柊鐘舵��)瑙掕壊鍔熻兘琛�
+                sql = @"update TRoleRightRelation set is_delete='1'  where role_code=@RoleCode";
+                list.Add(new { str = sql, parm = new { RoleCode = RoleCode } });
+                bool aa = DapperHelper.DoTransaction(list);
+                if (aa)
+                {
+                    mes.code = "200";
+                    mes.count = 0;
+                    mes.Message = "鍒犻櫎鐢ㄦ埛鎴愬姛!";
+                    mes.data = null;
+                }
+                else
+                {
+                    mes.code = "300";
+                    mes.count = 0;
+                    mes.Message = "鍒犻櫎鐢ㄦ埛澶辫触!";
+                    mes.data = null;
+                }
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.Message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
+
+        #region[瑙掕壊娓呭崟鍏宠仈鐢ㄦ埛鏌ヨ]
+        public static ToMessage RoleAssociationUser(string rolecode, string usercode, string username, string orgcode, string isrole, int startNum, int endNum, string prop, string order)
+        {
+            var dynamicParams = new DynamicParameters();
+            string search = "";
+            try
+            {
+                if (usercode != "" && usercode != null)
+                {
+                    search += "and A.usercode like '%'+@usercode+'%' ";
+                    dynamicParams.Add("@usercode", usercode);
+                }
+                if (username != "" && username != null)
+                {
+                    search += "and A.username like '%'+@username+'%' ";
+                    dynamicParams.Add("@username", username);
+                }
+                if (orgcode != "" && orgcode != null)
+                {
+                    search += "and B.org_code=@orgcode ";
+                    dynamicParams.Add("@orgcode", orgcode);
+                }
+                if (isrole != "" && isrole != null)
+                {
+                    if (isrole == "Y")
+                    {
+                        search += "and C.user_code is not null ";
+                    }
+                    else
+                    {
+                        search += "and C.user_code is null ";
+                    }
+                }
+                if (search == "")
+                {
+                    search = " and 1=1 ";
+                }
+                //search = search.Substring(3);//鎴彇绱㈠紩2鍚庨潰鐨勫瓧绗�
+                // --------------鏌ヨ鎸囧畾鏁版嵁--------------
+                var total = 0; //鎬绘潯鏁�
+                var sql = @"select A.usercode,A.username,B.org_code,B.org_name,(case when C.user_code is not null  then 'Y' else 'N' end) as flag
+                             from TUser A
+                             left join TOrganization B on A.stu_torgcode=B.org_code
+                             left join (
+                                select distinct user_code  from TUserRoleRelation where role_code=@rolecode
+                             ) C on A.usercode=C.user_code where A.is_delete='0' and A.userclassid='0' " + search;
+                dynamicParams.Add("@rolecode", rolecode);
+                var data = DapperHelper.GetPageList<object>(sql, dynamicParams, prop, order, startNum, endNum, out total);
+                mes.code = "200";
+                mes.Message = "鏌ヨ鎴愬姛!";
+                mes.count = total;
+                mes.data = data.ToList();
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.Message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
+
+        #region[鐢ㄦ埛娓呭崟鍏宠仈瑙掕壊鏌ヨ1]
+        public static ToMessage RoleAssociationUserTwo(string rolecode)
+        {
+            string sql = "";
+            var dynamicParams = new DynamicParameters();
+            List<TreeObejct> list = new List<TreeObejct>();
+            try
+            {
+                //鑾峰彇瑙掕壊绫诲瀷闆嗗悎(鍖呭惈缁戝畾鏍囪瘑)
+                dynamicParams.Add("@role_code", rolecode);
+                var data = DapperHelper.selectProcedure("h_p_T_RoleAssociationUserDisplay", dynamicParams);
+                
+                mes.code = "200";
+                mes.Message = "鏌ヨ鎴愬姛!";
+                mes.data = data;
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.Message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
+
+        #region[瑙掕壊娓呭崟鍏宠仈鐢ㄦ埛淇濆瓨]
+        public static ToMessage SaveRoleAssoctUser(string rolecode, List<ObjectData> json)
+        {
+            var sql = "";
+            var sql2 = "";
+            List<object> list = new List<object>();
+            var dynamicParams = new DynamicParameters();
+            try
+            {
+                list.Clear();
+                if (json == null || json.Count <= 0)
+                {
+                    //娓呴櫎鐢ㄦ埛鍏宠仈瑙掕壊琛ㄦ暟鎹�
+                    sql = @"delete TUserRoleRelation where role_code=@rolecode";
+                    list.Add(new { str = sql, parm = new { rolecode = rolecode } });
+                    //鏍囪瑙掕壊琛ㄥ叧鑱旂敤鎴锋爣璇�
+                    sql = @"update TRole set is_user='N' where role_code=@rolecode";
+                    list.Add(new { str = sql, parm = new { rolecode = rolecode } });
+                    
+                }
+                else
+                {
+                    //娓呴櫎鐢ㄦ埛鍏宠仈瑙掕壊琛ㄦ暟鎹�
+                    sql = @"delete TUserRoleRelation where role_code=@rolecode";
+                    list.Add(new { str = sql, parm = new { rolecode = rolecode } });
+                    //寰幆鍐欏叆鐢ㄦ埛鍏宠仈瑙掕壊琛�
+                    for (int i = 0; i < json.Count; i++)
+                    {
+                        sql = @"insert into TUserRoleRelation(user_code,role_code) values(@usercode,@role_code)";
+                        list.Add(new { str = sql, parm = new { usercode = json[i].code, role_code = rolecode } });
+                    }
+                    //鏍囪瑙掕壊琛ㄥ叧鑱旂敤鎴锋爣璇�
+                    sql = @"update TRole set is_user='Y' where role_code=@rolecode";
+                    list.Add(new { str = sql, parm = new { rolecode = rolecode } });
+                }
+                bool aa = DapperHelper.DoTransaction(list);
+                if (aa)
+                {
+                    mes.code = "200";
+                    mes.count = 0;
+                    mes.Message = "鎿嶄綔鎴愬姛!";
+                    mes.data = null;
+                }
+                else
+                {
+                    mes.code = "300";
+                    mes.count = 0;
+                    mes.Message = "鎿嶄綔澶辫触!";
+                    mes.data = null;
+                }
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.Message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
+
+        #region[瑙掕壊娓呭崟鍏宠仈鍔熻兘鏌ヨ]
+        public static ToMessage RoleAssociationRight(string rolecode,string type)
+        {
+            List<object> list=new List<object>();
+            try
+            {
+                if (type == "" || type == null)
+                {
+                    list.Add(SeachEncode.RightLocation(rolecode, "PC"));
+                    list.Add(SeachEncode.RightLocation(rolecode, "APP"));
+                }
+                else if (type == "APP")
+                {
+                    list.Add(SeachEncode.RightLocation(rolecode, type));
+                }
+                else {
+                    list.Add(SeachEncode.RightLocation(rolecode, type));
+                }
+                mes.code = "200";
+                mes.count = list.Count;
+                mes.Message = "鏌ヨ鎴愬姛!";
+                mes.data = list;
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.Message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
+
+        #region [瑙掕壊娓呭崟鍏宠仈鍔熻兘淇濆瓨]
+        public static ToMessage SaveUserAssoctRight(string rolecode,string usercode, List<TreeDM> json)
+        {
+            var sql = "";
+            List<object> list = new List<object>();
+            try
+            {
+                list.Clear();
+                if (json == null || json.Count <= 0)
+                {
+                    //娓呴櫎鐢ㄦ埛鍏宠仈鍔熻兘琛ㄦ暟鎹�
+                    sql = @"delete TRoleRightRelation where role_code=@rolecode";
+                    list.Add(new { str = sql, parm = new { rolecode = rolecode } });
+                    //鏍囪瑙掕壊琛ㄥ叧鑱斿姛鑳芥爣璇�
+                    sql = @"update TRole set is_right='N' where role_code=@rolecode";
+                    list.Add(new { str = sql, parm = new { rolecode = rolecode } });
+                }
+                else
+                {
+                    //娓呴櫎瑙掕壊鍏宠仈鍔熻兘琛ㄦ暟鎹�
+                    sql = @"delete TRoleRightRelation where role_code=@rolecode";
+                    list.Add(new { str = sql, parm = new { rolecode = rolecode } });
+                    //寰幆鍐欏叆鐢ㄦ埛鍏宠仈瑙掕壊琛�
+                    for (int i = 0; i < json.Count; i++)  //PC銆丄PP灞�
+                    {
+                        for (int j = 0; j < json[i].children.Count; j++) //涓�绾ц彍鍗�
+                        { 
+                            for (int k = 0; k < json[i].children[j].children.Count; k++) //浜岀骇鑿滃崟
+                            {
+                                sql = @"insert into TRoleRightRelation(role_code,right_code,lm_user,lm_date) values(@role_code,@right_code,@lm_user,@lm_date)";
+                                list.Add(new { str = sql, parm = new { 
+                                    role_code = rolecode, 
+                                    right_code= json[i].children[j].children[k].code, 
+                                    lm_user= usercode, lm_date= DateTime.Now.ToString() 
+                                } 
+                                });
+                            }
+                        }
+                    }
+                    //鏍囪瑙掕壊琛ㄥ叧鑱旂敤鎴锋爣璇�
+                    sql = @"update TRole set is_right='Y' where role_code=@rolecode";
+                    list.Add(new { str = sql, parm = new { rolecode = rolecode } });
+                }
+                bool aa = DapperHelper.DoTransaction(list);
+                if (aa)
+                {
+                    mes.code = "200";
+                    mes.count = 0;
+                    mes.Message = "鎿嶄綔鎴愬姛!";
+                    mes.data = null;
+                }
+                else
+                {
+                    mes.code = "300";
+                    mes.count = 0;
+                    mes.Message = "鎿嶄綔澶辫触!";
+                    mes.data = null;
+                }
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.Message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
+
+
+        #region[寰�鏉ュ崟浣嶆煡璇
+        public static ToMessage CurrentUnitSearch(string cuntUnitCode, string cuntUnitName, string unitAttr, string createUser, int startNum, int endNum, string prop, string order)
+        {
+            var dynamicParams = new DynamicParameters();
+            string search = "";
+            try
+            {
+                if (cuntUnitCode != "" && cuntUnitCode != null)
+                {
+                    search += "and A.code like '%'+@cuntUnitCode+'%' ";
+                    dynamicParams.Add("@cuntUnitCode", cuntUnitCode);
+                }
+                if (cuntUnitName != "" && cuntUnitName != null)
+                {
+                    search += "and A.name like '%'+@cuntUnitName+'%' ";
+                    dynamicParams.Add("@cuntUnitName", cuntUnitName);
+                }
+                if (unitAttr != "" && unitAttr != null)
+                {
+                    switch (unitAttr)
+                    {
+                        case "WG":  //澶栬喘
+                            search += "and A.mtype=@unitAttr ";
+                            dynamicParams.Add("@unitAttr", unitAttr);
+                            break;
+                        case "WX":  //澶栧崗
+                            search += "and A.btype=@unitAttr ";
+                            dynamicParams.Add("@unitAttr", unitAttr);
+                            break;
+                        default:    //瀹㈡埛
+                            search += "and A.htype=@unitAttr ";
+                            dynamicParams.Add("@unitAttr", unitAttr);
+                            break;
+                    }
+                }
+                if (createUser != "" && createUser != null)
+                {
+                    search += "and T.username like '%'+@createUser+'%' ";
+                    dynamicParams.Add("@createUser", createUser);
+                }
+                if (search == "")
+                {
+                    search = "and 1=1 ";
+                }
+                // --------------鏌ヨ鎸囧畾鏁版嵁--------------
+                var total = 0; //鎬绘潯鏁�
+                var sql = @"select A.id,A.code,A.name,A.mtype,A.btype,A.htype,A.conttacts,A.conttphone,A.addr,T.username as lm_user,A.lm_date from TCustomer A
+                            left join TUser T on A.lm_user=T.usercode
                             where  A.is_delete<>'1' " + search;
                 var data = DapperHelper.GetPageList<object>(sql, dynamicParams, prop, order, startNum, endNum, out total);
                 mes.code = "200";
@@ -432,7 +1541,147 @@
             catch (Exception e)
             {
                 mes.code = "300";
+                mes.count = 0;
                 mes.Message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
+
+        #region[寰�鏉ュ崟浣嶆柊澧炵紪杈慮
+        public static ToMessage AddUpdateCurrentUnit(string unitid, string unitcode, string unitname, string mtypecode, string btypecode, string htypecode, string person, string contact, string description, string usercode,string OperType)
+        {
+            var dynamicParams = new DynamicParameters();
+            try
+            {
+                if (OperType == "Add")
+                {
+                    var sql0 = @"select *  from TCustomer where code=@unitcode";
+                    dynamicParams.Add("@unitcode", unitcode);
+                    var data = DapperHelper.selectdata(sql0, dynamicParams);
+                    if (data.Rows.Count > 0)
+                    {
+                        mes.code = "300";
+                        mes.count = 0;
+                        mes.Message = "鎿嶄綔澶辫触,缂栫爜閲嶅!";
+                        mes.data = null;
+                        return mes;
+                    }
+                    var sql = @"insert into TCustomer(code,name,mtype,btype,htype,conttacts,conttphone,addr,lm_user,lm_date) 
+                            values(@unitcode,@unitname,@mtypecode,@btypecode,@htypecode,@person,@contact,@description,@usercode,@CreateDate)";
+                    dynamicParams.Add("@unitcode", unitcode);
+                    dynamicParams.Add("@unitname", unitname);
+                    dynamicParams.Add("@mtypecode", mtypecode);
+                    dynamicParams.Add("@btypecode", btypecode);
+                    dynamicParams.Add("@htypecode", htypecode);
+                    dynamicParams.Add("@person", person);
+                    dynamicParams.Add("@contact", contact);
+                    dynamicParams.Add("@description", description);
+                    dynamicParams.Add("@usercode", usercode);
+                    dynamicParams.Add("@CreateDate", DateTime.Now.ToString());
+                    int cont = DapperHelper.SQL(sql, dynamicParams);
+                    if (cont > 0)
+                    {
+                        mes.code = "200";
+                        mes.count = 0;
+                        mes.Message = "鏂板鎿嶄綔鎴愬姛!";
+                        mes.data = null;
+                    }
+                    else
+                    {
+                        mes.code = "300";
+                        mes.count = 0;
+                        mes.Message = "鏂板鎿嶄綔澶辫触!";
+                        mes.data = null;
+                    }
+                }
+                if (OperType == "Update")
+                {
+                    var sql = @"update TCustomer set name=@unitname,mtype=@mtypecode,btype=@btypecode,htype=@htypecode,conttacts=@person,conttphone=@contact,addr=@description,lm_user=@usercode,lm_date=@CreateDate where id=@unitid";
+                    dynamicParams.Add("@unitid", unitid);
+                    dynamicParams.Add("@unitname", unitname);
+                    dynamicParams.Add("@mtypecode", mtypecode);
+                    dynamicParams.Add("@btypecode", btypecode);
+                    dynamicParams.Add("@htypecode", htypecode);
+                    dynamicParams.Add("@person", person);
+                    dynamicParams.Add("@contact", contact);
+                    dynamicParams.Add("@description", description);
+                    dynamicParams.Add("@usercode", usercode);
+                    dynamicParams.Add("@CreateDate", DateTime.Now.ToString());
+                    int cont = DapperHelper.SQL(sql, dynamicParams);
+                    if (cont > 0)
+                    {
+                        mes.code = "200";
+                        mes.count = 0;
+                        mes.Message = "淇敼鎿嶄綔鎴愬姛!";
+                        mes.data = null;
+                    }
+                    else
+                    {
+                        mes.code = "300";
+                        mes.count = 0;
+                        mes.Message = "淇敼鎿嶄綔澶辫触!";
+                        mes.data = null;
+                    }
+                }
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.Message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
+
+        #region[寰�鏉ュ崟浣嶅垹闄
+        public static ToMessage DeleteCurrentUnit(string unitcode)
+        {
+            var sql = "";
+            List<object> list = new List<object>();
+            var dynamicParams = new DynamicParameters();
+            try
+            {
+                list.Clear();
+                sql = @"select *  from TFlw_Rteqp where eqp_code=@unitcode";
+                dynamicParams.Add("@unitcode", unitcode);
+                var data = DapperHelper.selectdata(sql, dynamicParams);
+                if (data.Rows.Count > 0)
+                {
+                    mes.code = "300";
+                    mes.count = 0;
+                    mes.Message = "澶栧崗渚涙柟宸插叧鑱斿鍗忓伐搴�,涓嶅厑璁稿垹闄�!";
+                    mes.data = null;
+                    return mes;
+                }
+                //鍒犻櫎寰�鏉ュ崟浣嶈〃
+                sql = @"delete TCustomer   where code=@unitcode";
+                list.Add(new { str = sql, parm = new { unitcode = unitcode } });
+                bool aa = DapperHelper.DoTransaction(list);
+                if (aa)
+                {
+                    mes.code = "200";
+                    mes.count = 0;
+                    mes.Message = "鍒犻櫎鎴愬姛!";
+                    mes.data = null;
+                }
+                else
+                {
+                    mes.code = "300";
+                    mes.count = 0;
+                    mes.Message = "鍒犻櫎澶辫触!";
+                    mes.data = null;
+                }
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.Message = e.Message;
+                mes.data = null;
             }
             return mes;
         }

--
Gitblit v1.9.3