From 9c634fd767aec36ef97c3a814bf7a29c67d20ee1 Mon Sep 17 00:00:00 2001
From: yl <ykxkd@outlook.com>
Date: 星期五, 29 三月 2024 10:57:35 +0800
Subject: [PATCH] 修改单据重复显示问题,增加工单源单id关联

---
 VueWebApi/DLL/DAL/BasicSettingDAL.cs |  800 +++++++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 639 insertions(+), 161 deletions(-)

diff --git a/VueWebApi/DLL/DAL/BasicSettingDAL.cs b/VueWebApi/DLL/DAL/BasicSettingDAL.cs
index a07009c..2a2127d 100644
--- a/VueWebApi/DLL/DAL/BasicSettingDAL.cs
+++ b/VueWebApi/DLL/DAL/BasicSettingDAL.cs
@@ -21,12 +21,27 @@
         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 stu_torgcode, string description, string orgCode, string orgName, string orgType, string userName, int startNum, int endNum, string prop, string order)
         {
             var dynamicParams = new DynamicParameters();
             string search = "";
             try
             {
+                switch (description)
+                {
+                    case "":
+                        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;
+                }
                 if (orgCode != "" && orgCode != null)
                 {
                     search += "and parent.org_code like '%'+@orgCode+'%' ";
@@ -67,7 +82,7 @@
                             from TOrganization as parent 
                             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;
+                            where parent.is_delete<>1  " + search;
                 var data = DapperHelper.GetPageList<object>(sql, dynamicParams, prop, order, startNum, endNum, out total);
                 mes.code = "200";
                 mes.Message = "鏌ヨ鎴愬姛!";
@@ -227,7 +242,7 @@
         #endregion
 
         #region [缁勭粐鏋舵瀯鍒犻櫎]
-        public static ToMessage DeleteOrganization(int orgid)
+        public static ToMessage DeleteOrganization(int orgid, string orgcode)
         {
             var sql = "";
             var cont = 0;
@@ -236,32 +251,42 @@
             {
                 sql = @"select * from  TOrganization  where parent_id=@orgid and is_delete<>'1'";
                 dynamicParams.Add(@"orgid", orgid);
-                cont = DapperHelper.selectcount(sql, dynamicParams);
-                if (cont > 0)
+                var data0 = DapperHelper.selectdata(sql, dynamicParams);
+                if (data0.Rows.Count > 0)
                 {
                     mes.code = "300";
                     mes.Message = "褰撳墠缁勭粐鏈変笅绾у叧鑱�,璇峰厛鍒犻櫎涓嬬骇缁勭粐!";
+                    return mes;
+                }
+                sql = @"select *  from TUser where is_delete<>'1' and stu_torgcode=@stu_torgcode";
+                dynamicParams.Add("@stu_torgcode", orgcode);
+                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 TOrganization   where id=@orgid";
+                dynamicParams.Add(@"orgid", orgid);
+                cont = DapperHelper.SQL(sql, dynamicParams);
+                if (cont > 0)
+                {
+                    mes.code = "200";
+                    mes.count = 0;
+                    mes.Message = "鍒犻櫎鎿嶄綔鎴愬姛!";
+                    mes.data = null;
                 }
                 else
                 {
-                    sql = @"delete TOrganization   where id=@orgid";
-                    dynamicParams.Add(@"orgid", orgid);
-                    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;
-                    }
+                    mes.code = "300";
+                    mes.count = 0;
+                    mes.Message = "鍒犻櫎鎿嶄綔澶辫触!";
+                    mes.data = null;
                 }
+
             }
             catch (Exception e)
             {
@@ -277,49 +302,64 @@
 
 
         #region[鐢ㄦ埛娓呭崟鏁版嵁鏌ヨ]
-        public static ToMessage UserSearch(string UserCode, string UserName, string StuOrg, string wagetype, string Enable, int startNum, int endNum, string prop, string order)
+        public static ToMessage UserSearch(string UserCode, string UserName, string StuOrg, string description, string wagetype, string Enable, int startNum, int endNum, string prop, string order)
         {
             var dynamicParams = new DynamicParameters();
             string search = "";
             try
             {
+                switch (description)
+                {
+                    case "":
+                        break;
+                    case "D":
+                        search += "and t.org_code=@stu_torgcode or child.org_code=@stu_torgcode ";
+                        dynamicParams.Add("@stu_torgcode", StuOrg);
+                        break;
+                    case "W":
+                        search += "and t.org_code=@stu_torgcode ";
+                        dynamicParams.Add("@stu_torgcode", StuOrg);
+                        break;
+                    default:
+                        break;
+                }
                 if (UserCode != "" && UserCode != null)
                 {
-                    search += "and u.usercode like '%'+@UserCode+'%' ";
+                    search += " and u.usercode like '%'+@UserCode+'%' ";
                     dynamicParams.Add("@UserCode", UserCode);
                 }
                 if (UserName != "" && UserName != null)
                 {
-                    search += "and S.username like '%'+@UserName+'%' ";
+                    search += " and u.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 ";
+                    search += " and u.wagetype=@wagetype ";
                     dynamicParams.Add("@wagetype", wagetype);
                 }
                 if (Enable != "" && Enable != null)
                 {
-                    search += "and u.enable=@Enable ";
+                    search += " and u.enable=@Enable ";
                     dynamicParams.Add("@Enable", Enable);
                 }
                 if (search == "")
                 {
-                    search = "and 1=1 ";
+                    search = " and 1=1 ";
                 }
                 //search = search.Substring(3);//鎴彇绱㈠紩2鍚庨潰鐨勫瓧绗�
                 // --------------鏌ヨ鎸囧畾鏁版嵁--------------
                 var total = 0; //鎬绘潯鏁�
-                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  
+                var sql = @"select u.id,u.usercode,u.username,g.group_code,g.group_name,u.stu_torgcode,t.org_name,t.description,u.password,u.mobile,u.email,u.wagetype,u.enable,
+                            S.username as lm_user,u.lm_date,(case when isnull(M.user_code,'')='' then 'N' else 'Y' end) as is_role  
                             from TUser u
                             left join TOrganization t on u.stu_torgcode=t.org_code 
+                            left join TOrganization as child on t.parent_id=child.id 
                             left join TGroup g on u.usergroup_code=g.group_code
                             left join TUser S on u.lm_user=S.usercode
+                            left join (
+                              select distinct user_code from TUserRoleRelation 
+                            )  M on u.usercode=M.user_code
                             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";
@@ -339,28 +379,77 @@
         #endregion
 
         #region [鐢ㄦ埛鎵�灞炵粍缁嘳
-        public static ToMessage UserOrganization()
+        public static ToMessage UserOrganization(string stu_torgcode, string description)
         {
             var dynamicParams = new DynamicParameters();
             string sql = "";
+            string search = "";
             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++)   //杩欓噷鏄惊鐜墍鏈�
+                switch (description)
                 {
-                    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);
-                    }
+                    case "":
+                        sql = @"select parent.id,parent.parent_id,parent.org_code,parent.org_name,parent.description 
+                        from TOrganization as parent 
+                        left join TOrganization as child on parent.parent_id=child.id 
+                        where parent.is_delete<>'1'  " + search;
+                        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();
+                                tbj.flag = dt.Rows[i]["description"].ToString();
+                                list.Add(tbj);
+                            }
+                        }
+                        digui(dt, list);
+                        break;
+                    case "D":
+                        search += "and parent.org_code=@stu_torgcode or child.org_code=@stu_torgcode ";
+                        dynamicParams.Add("@stu_torgcode", stu_torgcode);
+                        sql = @"select parent.id,parent.parent_id,parent.org_code,parent.org_name,parent.description 
+                        from TOrganization as parent 
+                        left join TOrganization as child on parent.parent_id=child.id 
+                        where parent.is_delete<>'1'  " + search;
+                        var dt0 = DapperHelper.selectdata(sql, dynamicParams);
+                        for (int i = 0; i < dt0.Rows.Count; i++)   //杩欓噷鏄惊鐜墍鏈�
+                        {
+                            if (string.IsNullOrEmpty(dt0.Rows[i]["PARENT_ID"].ToString()) || dt0.Rows[i]["PARENT_ID"].ToString() == "0")  //鍒ゆ柇鏄惁鏈�澶栧眰鏍硅妭鐐�
+                            {
+                                TreeDG tbj = new TreeDG();
+                                tbj.id = dt0.Rows[i]["ID"].ToString();
+                                tbj.code = dt0.Rows[i]["ORG_CODE"].ToString();
+                                tbj.name = dt0.Rows[i]["ORG_NAME"].ToString();
+                                tbj.flag = dt0.Rows[i]["description"].ToString();
+                                list.Add(tbj);
+                            }
+                        }
+                        digui(dt0, list);
+                        break;
+                    case "W":
+                        search += "and parent.org_code=@stu_torgcode ";
+                        dynamicParams.Add("@stu_torgcode", stu_torgcode);
+                        sql = @"select parent.id,parent.parent_id,parent.org_code,parent.org_name,parent.description 
+                        from TOrganization as parent 
+                        left join TOrganization as child on parent.parent_id=child.id 
+                        where parent.is_delete<>'1'  " + search;
+                        var dt1 = DapperHelper.selectdata(sql, dynamicParams);
+                        TreeDG tbj0 = new TreeDG();
+                        tbj0.id = dt1.Rows[0]["ID"].ToString();
+                        tbj0.code = dt1.Rows[0]["ORG_CODE"].ToString();
+                        tbj0.name = dt1.Rows[0]["ORG_NAME"].ToString();
+                        tbj0.flag = dt1.Rows[0]["description"].ToString();
+                        list.Add(tbj0);
+                        break;
+                    default:
+                        break;
                 }
-                digui(dt, list);
+
                 mes.code = "200";
                 mes.Message = "鍔犺浇瀹屾垚";
                 mes.data = list;
@@ -377,20 +466,36 @@
         #endregion
 
         #region[鐢ㄦ埛鎵�灞炵彮缁刔
-        public static ToMessage UserGroup()
+        public static ToMessage UserGroup(string stu_torgcode, string description)
         {
             var dynamicParams = new DynamicParameters();
+            string search = "";
             try
             {
                 // --------------鏌ヨ鎸囧畾鏁版嵁--------------
-                var total = 0; //鎬绘潯鏁�
-                var sql = @"select group_code,group_name 
-                            from TGroup 
-                            where  is_delete<>'1' ";
-                var data = DapperHelper.selecttable(sql);
+                switch (description)
+                {
+                    case "":
+                        break;
+                    case "D":
+                        search += "and parent.org_code=@stu_torgcode or 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;
+                }
+                var sql = @"select group_code,group_name,torg_code,parent.org_name
+                            from TGroup G
+                            left join TOrganization parent on G.torg_code=parent.org_code 
+                            left join TOrganization as child on parent.parent_id=child.id 
+                            where  G.is_delete<>'1' " + search;
+                var data = DapperHelper.selectdata(sql, dynamicParams);
                 mes.code = "200";
                 mes.Message = "鏌ヨ鎴愬姛!";
-                mes.count = total;
                 mes.data = data;
             }
             catch (Exception e)
@@ -418,6 +523,7 @@
                         tbjson.id = dt.Rows[i]["ID"].ToString();
                         tbjson.code = dt.Rows[i]["ORG_CODE"].ToString();
                         tbjson.name = dt.Rows[i]["ORG_NAME"].ToString();
+                        tbjson.flag = dt.Rows[i]["description"].ToString();
                         tree[m].children.Add(tbjson);
                     }
                 }
@@ -434,6 +540,8 @@
         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();
+            List<object> list = new List<object>();
+            var sql = "";
             try
             {
                 if (OperType == "Add")
@@ -449,22 +557,41 @@
                         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) 
+                    //鍐欏叆鐢ㄦ埛琛�
+                    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)
+                    list.Add(new
+                    {
+                        str = sql,
+                        parm = new
+                        {
+                            UserCode = UserCode,
+                            UserName = UserName,
+                            password = Password,
+                            Enable = Enable,
+                            Mobile = Mobile,
+                            CreateDate = DateTime.Now.ToString(),
+                            Email = Email,
+                            Operator = Operator,
+                            StuOrg = StuOrg,
+                            wagetype = wagetype,
+                            groupcode = groupcode
+                        }
+                    });
+                    //鍐欏叆鐢ㄦ埛鐝粍鍏宠仈琛�
+                    sql = @"insert into TGroupUser(group_code,user_code) 
+                            values(@groupcode,@usercode)";
+                    list.Add(new
+                    {
+                        str = sql,
+                        parm = new
+                        {
+                            usercode = UserCode,
+                            groupcode = groupcode
+                        }
+                    });
+                    bool aa = DapperHelper.DoTransaction(list);
+                    if (aa)
                     {
                         mes.code = "200";
                         mes.count = 0;
@@ -481,20 +608,39 @@
                 }
                 if (OperType == "Update")
                 {
-                    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)
+                    //淇敼鐢ㄦ埛琛�
+                    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";
+                    list.Add(new
+                    {
+                        str = sql,
+                        parm = new
+                        {
+                            UserId = UserId,
+                            UserName = UserName,
+                            password = Password,
+                            Enable = Enable,
+                            Mobile = Mobile,
+                            CreateDate = DateTime.Now.ToString(),
+                            Email = Email,
+                            Operator = Operator,
+                            StuOrg = StuOrg,
+                            wagetype = wagetype,
+                            groupcode = groupcode
+                        }
+                    });
+                    //鏇存柊鐢ㄦ埛鐝粍鍏宠仈琛�
+                    sql = @"update TGroupUser set group_code=@groupcode  where user_code=@usercode";
+                    list.Add(new
+                    {
+                        str = sql,
+                        parm = new
+                        {
+                            usercode = UserCode,
+                            groupcode = groupcode
+                        }
+                    });
+                    bool aa = DapperHelper.DoTransaction(list);
+                    if (aa)
                     {
                         mes.code = "200";
                         mes.count = 0;
@@ -534,10 +680,14 @@
                 dynamicParams.Add("@userid", userid);
                 var data = DapperHelper.selectdata(sql, dynamicParams);
 
+                //鍒犻櫎鐢ㄦ埛鐝粍鍏宠仈琛�
+                sql = @"delete TGroupUser  where user_code=@usercode";
+                list.Add(new { str = sql, parm = new { usercode = data.Rows[0]["USERCODE"].ToString() } });
+                //鍒犻櫎鐢ㄦ埛瑙掕壊鍏宠仈琛�
                 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";
+                sql = @"delete TUser  where id=@userid";
                 list.Add(new { str = sql, parm = new { userid = userid } });
                 bool aa = DapperHelper.DoTransaction(list);
                 if (aa)
@@ -567,29 +717,48 @@
         #endregion
 
         #region[鐢ㄦ埛娓呭崟鍏宠仈瑙掕壊鏌ヨ]
-        public static ToMessage UserAssociationRole(string usercode)
+        public static ToMessage UserAssociationRole(string usercode, string stu_torgcode, string description)
         {
             string sql = "";
+            string search = "";
             var dynamicParams = new DynamicParameters();
             List<TreeObejct> list = new List<TreeObejct>();
             try
             {
+                switch (description)
+                {
+                    case "":
+                        break;
+                    case "D":
+                        search += "and parent.org_code=@stu_torgcode or 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 A.roletype_code as code,A.roletype_name as name,(case when B.roletype_code is null then 'N' else 'Y' end) flag  from TRoleType A 
+                sql = @"select A.roletype_code as code,A.roletype_name as name,(case when B.roletype_code is null then 'N' else 'Y' end) flag
+                        from TRoleType A 
+                        left join TOrganization parent on A.torg_code=parent.org_code 
+                        left join TOrganization as child on parent.parent_id=child.id 
                         left join (
                         select distinct B.roletype_code from TRole B 
                         inner join TUserRoleRelation C on B.role_code=C.role_code
-                        where C.user_code=@usercode 
+                        where C.user_code=@usercode
                         ) B
                         on A.roletype_code=B.roletype_code 
-                        where  A.is_delete='0'";
+                        where  A.is_delete='0' " + search;
                 dynamicParams.Add("@usercode", usercode);
                 var data = DapperHelper.select<TreeObejct>(sql, dynamicParams);
                 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(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'";
+                             where B.roletype_code=@roletype_code  and B.is_delete='0' and B.is_system='0' and B.torg_code<>'F'";
                     dynamicParams.Add("@roletype_code", data[i].code);
                     dynamicParams.Add("@usercode", usercode);
                     var data0 = DapperHelper.select<TreeObejctCn>(sql, dynamicParams);
@@ -612,7 +781,7 @@
         #endregion
 
         #region[鐢ㄦ埛娓呭崟鍏宠仈瑙掕壊淇濆瓨]
-        public static ToMessage SaveUserAssoctRole(string usercode, List<RoleUserSubmit> json)
+        public static ToMessage SaveUserAssoctRole(string usercode, string stu_torgcode, string description, List<RoleUserSubmit> json)
         {
             var sql = "";
             List<object> list = new List<object>();
@@ -621,32 +790,68 @@
                 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 } });
+                    switch (description)
+                    {
+                        case "":
+                            //娓呴櫎鐢ㄦ埛鍏宠仈瑙掕壊琛ㄦ暟鎹�
+                            sql = @"delete TUserRoleRelation where user_code=@usercode";
+                            list.Add(new { str = sql, parm = new { usercode = usercode } });
+                            break;
+                        case "D":
+                            //娓呴櫎鐢ㄦ埛鍏宠仈瑙掕壊琛ㄦ暟鎹�
+                            sql = @"delete from TUserRoleRelation where id in (select A.id   from TUserRoleRelation A
+                                    left join TOrganization T on A.torg_code=T.org_code 
+                                    left join TOrganization as L on T.parent_id=L.id 
+                                    where 1=1 and  A.user_code=@usercode and  T.org_code=@stu_torgcode)";
+                            list.Add(new { str = sql, parm = new { usercode = usercode, stu_torgcode = stu_torgcode } });
+                            break;
+                        case "W":
+                            //娓呴櫎鐢ㄦ埛鍏宠仈瑙掕壊琛ㄦ暟鎹�
+                            sql = @"delete from TUserRoleRelation where id in (select A.id   from TUserRoleRelation A
+                                    left join TOrganization T on A.torg_code=T.org_code 
+                                    left join TOrganization as L on T.parent_id=L.id 
+                                    where 1=1 and  A.user_code=@usercode and  T.org_code=@stu_torgcode)";
+                            list.Add(new { str = sql, parm = new { usercode = usercode, stu_torgcode = stu_torgcode } });
+                            break;
+                    }
                 }
                 else
                 {
-                    //娓呴櫎鐢ㄦ埛鍏宠仈瑙掕壊琛ㄦ暟鎹�
-                    sql = @"delete TUserRoleRelation where user_code=@usercode";
-                    list.Add(new { str = sql, parm = new { usercode = usercode } });
+                    switch (description)
+                    {
+                        case "":
+                            //娓呴櫎鐢ㄦ埛鍏宠仈瑙掕壊琛ㄦ暟鎹�
+                            sql = @"delete TUserRoleRelation where user_code=@usercode";
+                            list.Add(new { str = sql, parm = new { usercode = usercode } });
+                            break;
+                        case "D":
+                            //娓呴櫎鐢ㄦ埛鍏宠仈瑙掕壊琛ㄦ暟鎹�
+                            sql = @"delete from TUserRoleRelation where id in (select A.id   from TUserRoleRelation A
+                                    left join TOrganization T on A.torg_code=T.org_code 
+                                    left join TOrganization as L on T.parent_id=L.id 
+                                    where 1=1 and  A.user_code=@usercode and  T.org_code=@stu_torgcode)";
+                            list.Add(new { str = sql, parm = new { usercode = usercode, stu_torgcode = stu_torgcode } });
+                            break;
+                        case "W":
+                            //娓呴櫎鐢ㄦ埛鍏宠仈瑙掕壊琛ㄦ暟鎹�
+                            sql = @"delete from TUserRoleRelation where id in (select A.id   from TUserRoleRelation A
+                                    left join TOrganization T on A.torg_code=T.org_code 
+                                    left join TOrganization as L on T.parent_id=L.id 
+                                    where 1=1 and  A.user_code=@usercode and  T.org_code=@stu_torgcode)";
+                            list.Add(new { str = sql, parm = new { usercode = usercode, stu_torgcode = stu_torgcode } });
+                            break;
+                    }
 
                     //寰幆鍐欏叆鐢ㄦ埛鍏宠仈瑙掕壊琛�
                     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 = @"insert into TUserRoleRelation(user_code,role_code,torg_code) values(@usercode,@role_code,@stu_torgcode)";
+                            list.Add(new { str = sql, parm = new { usercode = usercode, stu_torgcode = stu_torgcode, 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)
@@ -753,16 +958,44 @@
 
 
         #region[鐢ㄦ埛缁勫垪琛ㄦ煡璇
-        public static ToMessage UserGroupSearch(int startNum, int endNum, string prop, string order)
+        public static ToMessage UserGroupSearch(string groupcode, string groupname, string stu_torgcode, string description, int startNum, int endNum, string prop, string order)
         {
             var dynamicParams = new DynamicParameters();
+            string search = "";
             try
             {
                 // --------------鏌ヨ鎸囧畾鏁版嵁--------------
                 var total = 0; //鎬绘潯鏁�
-                var sql = @"select group_code,group_name,description
-                            from TGroup 
-                            where  is_delete<>'1' ";
+                switch (description)
+                {
+                    case "":
+                        break;
+                    case "D":
+                        search += "and parent.org_code=@stu_torgcode or 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;
+                }
+                if (groupcode != "" && groupcode != null)
+                {
+                    search += " and G.group_code like '%'+@groupcode+'%' ";
+                    dynamicParams.Add("@groupcode", groupcode);
+                }
+                if (groupname != "" && groupname != null)
+                {
+                    search += " and G.group_name like '%'+@groupname+'%' ";
+                    dynamicParams.Add("@groupname", groupname);
+                }
+                var sql = @"select torg_code,parent.org_name,group_code,group_name,G.description
+                            from TGroup G
+                            left join TOrganization parent on G.torg_code=parent.org_code 
+                            left join TOrganization as child on parent.parent_id=child.id 
+                            where  G.is_delete<>'1' " + search;
                 var data = DapperHelper.GetPageList<object>(sql, dynamicParams, prop, order, startNum, endNum, out total);
                 mes.code = "200";
                 mes.Message = "鏌ヨ鎴愬姛!";
@@ -781,7 +1014,7 @@
         #endregion
 
         #region[鐢ㄦ埛缁勬柊澧瀅
-        public static ToMessage UserGroupAdd(List<StepDefect> json, string username)
+        public static ToMessage UserGroupAdd(string type, List<GroupUser> json, string username)
         {
             var sql = "";
             List<object> list = new List<object>();
@@ -789,48 +1022,125 @@
             try
             {
                 list.Clear();
-                //寰幆鍐欏叆鐢ㄦ埛缁勮〃
-                for (int i = 0; i < json.Count; i++)
+                if (type == "Add")
                 {
-                    var sql0 = @"select *  from TGroup where group_code=@group_code";
-                    dynamicParams.Add("@group_code", json[i].code);
-                    var data = DapperHelper.selectdata(sql0, dynamicParams);
+                    //鍒ゆ柇鐢ㄦ埛缁勭紪鐮佹槸鍚﹀敮涓�
+                    sql = @"select *  from TGroup where group_code=@group_code and torg_code=@torg_code";
+                    dynamicParams.Add("@group_code", json[0].code);
+                    dynamicParams.Add("@torg_code", json[0].storg_code);
+                    var data = DapperHelper.selectdata(sql, dynamicParams);
                     if (data.Rows.Count > 0)
                     {
                         mes.code = "300";
                         mes.count = 0;
-                        mes.Message = "鎿嶄綔澶辫触,缂栫爜閲嶅!";
+                        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)";
+                    else
+                    {
+                        //鍐欏叆鐢ㄦ埛缁勮〃
+                        sql = @"insert into TGroup(group_code,group_name,description,lm_user,lm_date,torg_code) values(@groupcode,@groupename,@description,@lm_user,@lm_date,@torg_code)";
+                        list.Add(new
+                        {
+                            str = sql,
+                            parm = new
+                            {
+                                groupcode = json[0].code,
+                                groupename = json[0].name,
+                                description = json[0].flag,
+                                lm_user = username,
+                                lm_date = DateTime.Now.ToString(),
+                                torg_code = json[0].storg_code
+                            }
+                        });
+                        //鍐欏叆鐢ㄦ埛缁勫叧绯昏〃
+                        for (int i = 0; i < json[0].children.Count; i++)
+                        {
+                            sql = @"insert into TGroupUser(group_code,user_code) values(@groupcode,@usercode)";
+                            list.Add(new
+                            {
+                                str = sql,
+                                parm = new
+                                {
+                                    groupcode = json[0].code,
+                                    usercode = json[0].children[i].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;
+                    }
+                }
+                else
+                {
+                    //淇敼鐢ㄦ埛缁勮〃
+                    sql = @"update TGroup set group_name=@groupename,lm_user=@lm_user,lm_date=@lm_date,description=@description,torg_code=@torg_code where group_code=@groupcode";
                     list.Add(new
                     {
                         str = sql,
                         parm = new
                         {
-                            groupcode = json[i].code,
-                            groupename = json[i].name,
-                            description = json[i].flag,
+                            groupcode = json[0].code,
+                            groupename = json[0].name,
+                            description = json[0].flag,
                             lm_user = username,
-                            lm_date = DateTime.Now.ToString()
+                            lm_date = DateTime.Now.ToString(),
+                            torg_code = json[0].storg_code
                         }
                     });
-                }
-                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;
+                    //鍒犻櫎鐢ㄦ埛缁勫叧绯昏〃
+                    sql = @"delete TGroupUser where group_code=@groupcode";
+                    list.Add(new
+                    {
+                        str = sql,
+                        parm = new
+                        {
+                            groupcode = json[0].code
+                        }
+                    });
+                    //淇敼鐢ㄦ埛缁勫叧绯昏〃
+                    for (int i = 0; i < json[0].children.Count; i++)
+                    {
+                        sql = @"insert into TGroupUser(group_code,user_code) values(@groupcode,@usercode)";
+                        list.Add(new
+                        {
+                            str = sql,
+                            parm = new
+                            {
+                                groupcode = json[0].code,
+                                usercode = json[0].children[i].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)
@@ -853,18 +1163,21 @@
             try
             {
                 list.Clear();
-                sql = @"select *  from TUser where is_delete<>'1' and usergroup_code=@UserGrupCode";
+                //鍒ゆ柇褰撳墠鐢ㄦ埛缁勬槸鍚﹀瓨鍦ㄥ紑鎶ュ伐璁板綍
+                sql = @"select *  from TK_Wrk_RecordSub where  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.Message = "璇ョ敤鎴风粍宸茬粡鏈夋姤宸�,涓嶅厑璁稿垹闄�!";
                     mes.data = null;
                     return mes;
                 }
                 sql = @"delete TGroup where group_code=@UserGrupCode";
+                list.Add(new { str = sql, parm = new { UserGrupCode = UserGrupCode } });
+                sql = @"delete TGroupUser where group_code=@UserGrupCode";
                 list.Add(new { str = sql, parm = new { UserGrupCode = UserGrupCode } });
 
                 bool aa = DapperHelper.DoTransaction(list);
@@ -894,21 +1207,78 @@
         }
         #endregion
 
+        #region[鐢ㄦ埛缁勬煡鐪嬪叧鑱斾汉鍛榏
+        public static ToMessage GroupUserProject(string groupcode)
+        {
+            var sql = "";
+            var dynamicParams = new DynamicParameters();
+            try
+            {
+                sql = @"select U.usercode,U.username  from TGroupUser GU
+                        left join TUser U on GU.user_code=U.usercode
+                        where  GU.group_code=@groupcode";
+                dynamicParams.Add("@groupcode", groupcode);
+                var data = DapperHelper.selectdata(sql, dynamicParams);
+                if (data.Rows.Count > 0)
+                {
+                    mes.code = "200";
+                    mes.count = 0;
+                    mes.Message = "鏌ヨ鎴愬姛!";
+                    mes.data = data;
+                    return mes;
+                }
+                else
+                {
+                    mes.code = "300";
+                    mes.count = 0;
+                    mes.Message = "璇ョ彮缁勪笅鏃犳寚瀹氱敤鎴�!";
+                    mes.data = null;
+                    return mes;
+                }
+            }
+            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)
+        public static ToMessage RoleTypeSearch(string stu_torgcode, string description, int startNum, int endNum, string prop, string order)
         {
             var dynamicParams = new DynamicParameters();
+            string search = "";
             try
             {
                 // --------------鏌ヨ鎸囧畾鏁版嵁--------------
                 var total = 0; //鎬绘潯鏁�
-                var sql = @"select roletype_code,roletype_name 
-                            from TRoleType 
-                            where  is_delete<>'1' ";
+                switch (description)
+                {
+                    case "":
+                        break;
+                    case "D":
+                        search += "and parent.org_code=@stu_torgcode or 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;
+                }
+                var sql = @"select torg_code,parent.org_name,roletype_code,roletype_name 
+                            from TRoleType R
+                            left join TOrganization parent on R.torg_code=parent.org_code 
+                            left join TOrganization as child on parent.parent_id=child.id 
+                            where  R.is_delete<>'1' and roletype_code<>'001' " + search;
                 var data = DapperHelper.GetPageList<object>(sql, dynamicParams, prop, order, startNum, endNum, out total);
                 mes.code = "200";
                 mes.Message = "鏌ヨ鎴愬姛!";
@@ -938,8 +1308,9 @@
                 //寰幆鍐欏叆瑙掕壊绫诲瀷琛�
                 for (int i = 0; i < json.Count; i++)
                 {
-                    var sql0 = @"select *  from TRoleType where roletype_code=@roletype_code";
+                    var sql0 = @"select *  from TRoleType where roletype_code=@roletype_code and torg_code=@torg_code";
                     dynamicParams.Add("@roletype_code", json[i].code);
+                    dynamicParams.Add("@torg_code", json[i].flag);
                     var data = DapperHelper.selectdata(sql0, dynamicParams);
                     if (data.Rows.Count > 0)
                     {
@@ -949,14 +1320,15 @@
                         mes.data = null;
                         return mes;
                     }
-                    sql = @"insert into TRoleType(roletype_code,roletype_name) values(@roletypecode,@roletypename)";
+                    sql = @"insert into TRoleType(roletype_code,roletype_name,torg_code) values(@roletypecode,@roletypename,@torg_code)";
                     list.Add(new
                     {
                         str = sql,
                         parm = new
                         {
                             roletypecode = json[i].code,
-                            roletypename = json[i].name
+                            roletypename = json[i].name,
+                            torg_code = json[i].flag
                         }
                     });
                 }
@@ -992,12 +1364,22 @@
         {
             var sql = "";
             List<object> list = new List<object>();
+            var dynamicParams = new DynamicParameters();
             try
             {
                 list.Clear();
+                sql = @"select *  from TRole where is_delete<>'1' and roletype_code=@roleTypeCode";
+                dynamicParams.Add("@roleTypeCode", roleTypeCode);
+                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 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)
@@ -1027,14 +1409,34 @@
         #endregion
 
         #region[瑙掕壊绫诲瀷涓嬫媺鎺ュ彛]
-        public static ToMessage RoleTypeSelect()
+        public static ToMessage RoleTypeSelect(string stu_torgcode, string description)
         {
-            string sql = "";
+            var dynamicParams = new DynamicParameters();
+            string search = "";
             try
             {
                 //鑾峰彇璁惧绫诲瀷鏁版嵁
-                sql = @"select roletype_code,roletype_name from TRoleType where is_delete<>'1' ";
-                var data = DapperHelper.selecttable(sql);
+                switch (description)
+                {
+                    case "":
+                        break;
+                    case "D":
+                        search += "and parent.org_code=@stu_torgcode or 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;
+                }
+                var sql = @"select roletype_code,roletype_name,torg_code,parent.org_name
+                            from TRoleType R
+                            left join TOrganization parent on R.torg_code=parent.org_code 
+                            left join TOrganization as child on parent.parent_id=child.id 
+                            where  R.is_delete<>'1' " + search;
+                var data = DapperHelper.selectdata(sql, dynamicParams);
                 mes.code = "200";
                 mes.Message = "鏌ヨ鎴愬姛!";
                 mes.data = data;
@@ -1051,12 +1453,27 @@
         #endregion
 
         #region[瑙掕壊娓呭崟鏌ヨ]
-        public static ToMessage RoleSearch(string RoleCode, string RoleName, string RoleTypeCode, string CreateUser, int startNum, int endNum, string prop, string order)
+        public static ToMessage RoleSearch(string stu_torgcode, string description, string RoleCode, string RoleName, string RoleTypeCode, string CreateUser, int startNum, int endNum, string prop, string order)
         {
             var dynamicParams = new DynamicParameters();
             string search = "";
             try
             {
+                switch (description)
+                {
+                    case "":
+                        break;
+                    case "D":
+                        search += "and part.org_code=@stu_torgcode or child.org_code=@stu_torgcode ";
+                        dynamicParams.Add("@stu_torgcode", stu_torgcode);
+                        break;
+                    case "W":
+                        search += "and part.org_code=@stu_torgcode ";
+                        dynamicParams.Add("@stu_torgcode", stu_torgcode);
+                        break;
+                    default:
+                        break;
+                }
                 if (RoleCode != "" && RoleCode != null)
                 {
                     search += "and A.role_code like '%'+@RoleCode+'%' ";
@@ -1084,8 +1501,10 @@
                 //search = search.Substring(3);//鎴彇绱㈠紩2鍚庨潰鐨勫瓧绗�
                 // --------------鏌ヨ鎸囧畾鏁版嵁--------------
                 var total = 0; //鎬绘潯鏁�
-                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  
+                var sql = @"select A.id,A.role_code,A.role_name,b.roletype_code,B.roletype_name,A.torg_code,part.org_name,A.description,T.username as lm_user,A.lm_date,A.is_user,A.is_right  
                             from TRole A
+                            left join TOrganization part on A.torg_code=part.org_code 
+                            left join TOrganization as child on part.parent_id=child.id 
                             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;
@@ -1107,7 +1526,7 @@
         #endregion
 
         #region[瑙掕壊娓呭崟鏂板缂栬緫]
-        public static ToMessage AddUpdateRole(string RoleId, string RoleCode, string RoleName, string RoleTypeCode, string description, string Usercode, string OperType)
+        public static ToMessage AddUpdateRole(string RoleId, string RoleCode, string RoleName, string stu_torgcode, string RoleTypeCode, string description, string Usercode, string OperType)
         {
             var dynamicParams = new DynamicParameters();
             try
@@ -1125,14 +1544,15 @@
                         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)";
+                    var sql = @"insert into TRole(role_code,role_name,lm_user,lm_date,roletype_code,description,torg_code) 
+                            values(@RoleCode,@RoleName,@Usercode,@CreateDate,@RoleTypeCode,@description,@torg_code)";
                     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);
+                    dynamicParams.Add("@torg_code", stu_torgcode);
                     int cont = DapperHelper.SQL(sql, dynamicParams);
                     if (cont > 0)
                     {
@@ -1151,11 +1571,12 @@
                 }
                 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";
+                    var sql = @"update TRole set role_name=@RoleName,lm_user=@Usercode,lm_date=@CreateDate,torg_code=@torg_code,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("@torg_code", stu_torgcode);
                     dynamicParams.Add("@RoleTypeCode", RoleTypeCode);
                     dynamicParams.Add("@description", description);
                     int cont = DapperHelper.SQL(sql, dynamicParams);
@@ -1191,16 +1612,29 @@
         {
             var sql = "";
             List<object> list = new List<object>();
+            var dynamicParams = new DynamicParameters();
             try
             {
-                //鏇存柊瑙掕壊琛ㄣ�佽鑹插叧鑱旂敤鎴锋爣璇嗗強鍒犻櫎鐘舵��
-                sql = @"update TRole set is_user='N',is_right='N',is_delete='1'  where role_code=@RoleCode";
+                //鏌ユ壘鐢ㄦ埛瑙掕壊鍏宠仈鍏崇郴琛�
+                sql = @"select *  from TUserRoleRelation where is_delete<>'1' and role_code=@RoleCode";
+                dynamicParams.Add("@RoleCode", RoleCode);
+                var data = DapperHelper.selectdata(sql, dynamicParams);
+                if (data.Rows.Count > 0)
+                {
+                    mes.code = "300";
+                    mes.count = 0;
+                    mes.Message = "璇ヨ鑹蹭笅鏈夊叧鑱旂殑鐢ㄦ埛淇℃伅,涓嶅厑璁稿垹闄�!";
+                    mes.data = null;
+                    return mes;
+                }
+                //鏇存柊瑙掕壊琛ㄣ�佽鑹插叧鑱旂敤鎴锋爣璇嗗強鍒犻櫎鐘舵�乻et is_user='N',is_right='N',is_delete='1'
+                sql = @"delete TRole  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";
+                sql = @"delete TRoleRightRelation   where role_code=@RoleCode";
                 list.Add(new { str = sql, parm = new { RoleCode = RoleCode } });
                 bool aa = DapperHelper.DoTransaction(list);
                 if (aa)
@@ -1681,6 +2115,50 @@
         #endregion
 
 
+        #region[瀹夌伅绯荤粺/杞﹂棿鏌ヨ]
+        public static ToMessage AnDengShopSearch(string stu_torgcode, string description)
+        {
+            string sql = "";
+            string search = "";
+            var dynamicParams = new DynamicParameters();
+            try
+            {
+                //鑾峰彇杞﹂棿淇℃伅
+                switch (description)
+                {
+                    case "":
+                        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,parent.org_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;
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.Message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
+
         #region[瀹夌伅绯荤粺/鑷畾涔夊畨鐏懠鍙被鍨嬫煡璇
         public static ToMessage AnDengTypeSearch()
         {
@@ -1910,7 +2388,7 @@
                     sql = @"delete TAnDon_Roul_ConFigUser  where ando_cogfigid=@mid";
                     list.Add(new { str = sql, parm = new { mid = mid } });
                 }
-                else 
+                else
                 {
                     //鑾峰彇涓昏〃鏈�澶D
                     sql = @"select ISNULL(IDENT_CURRENT('TAnDon_Roul_ConFig')+1,1) as id";

--
Gitblit v1.9.3