yl
2022-06-21 f7fdf63c13241dfa7d66a3315fd54429670e24bf
VueWebApi/DLL/DAL/LoginDAL.cs
@@ -18,11 +18,12 @@
        public static string strProcName = ""; //定义全局sql变量
        public static List<SqlParameter> listStr = new List<SqlParameter>(); //定义全局参数集合
        public static SqlParameter[] parameters; //定义全局SqlParameter参数数组
        #region [登录查询]
        public static DataTable LoginSearch(string username,string password)
        public static DataTable LoginSearch(string username, string password)
        {
            //执行sql
            strProcName = "select *  from [dbo].[TUser] where username=@username and password=@password";
            //创建参数
@@ -35,6 +36,74 @@
        }
        #endregion
        #region [写入登录记录表]
        public static ToMessage LoginBas(string usercode, string usertype)
        {
            var sql = "";
            var cont = 0;
            var dynamicParams = new DynamicParameters();
            try
            {
                sql = @"select * from  T_Bas_Login  where usercode=@usercode and  origin=@usertype";
                dynamicParams.Add("@usercode", usercode);
                dynamicParams.Add("@usertype", usertype);
                cont = DapperHelper.selectcount(sql, dynamicParams);
                if (cont > 0)
                {
                    sql = @"update T_Bas_Login set indate=@indate,status='Y'  where usercode=@usercode and origin=@usertype";
                    dynamicParams.Add("@usercode", usercode);
                    dynamicParams.Add("@usertype", usertype);
                    dynamicParams.Add("@indate", DateTime.Now.ToString());
                    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;
                    }
                }
                else
                {
                    sql = @"insert into T_Bas_Login(usercode,status,indate,origin)
                            values(@usercode,'Y',@indate,@usertype)";
                    dynamicParams.Add("@usercode", usercode);
                    dynamicParams.Add("@usertype", usertype);
                    dynamicParams.Add("@indate", DateTime.Now.ToString());
                    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 LoginMenu(string usercode)
@@ -64,7 +133,7 @@
                     order by mu.right_seq, mu.right_code";
                    dynamicParams.Add("@usercode", usercode);
                    dynamicParams.Add("@paent_id", data[i].code);
                    var data0 = DapperHelper.select<TreeObejctCont>(sql, dynamicParams);
                    var data0 = DapperHelper.select<TreeObejctCn>(sql, dynamicParams);
                    data[i].children = data0;
                }
@@ -75,7 +144,9 @@
            catch (Exception e)
            {
                mes.code = "300";
                mes.count = 0;
                mes.Message = e.Message;
                mes.data = null;
            }
            return mes;
        }
@@ -83,49 +154,102 @@
        #region[修改密码]
        public static ToMessage UpdateUserPassword(string username, string password, string newpassword)
        public static ToMessage UpdateUserPassword(string usercode, string username, string password, string newpassword)
        {
            //执行sql,判断当前用户登录账号是否正确
            strProcName = "select *  from [dbo].[TUser] where username=@username and password=@password";
            //创建参数
            listStr.Add(new SqlParameter("@username", username));
            listStr.Add(new SqlParameter("@password", password));
            parameters = listStr.ToArray();
            listStr.Clear();
            dt = DBHelper.GetTable(strProcName, parameters);
            if (dt.Rows.Count <= 0)
            var sql = "";
            List<object> list = new List<object>();
            var dynamicParams = new DynamicParameters();
            sql = @"select *  from [dbo].[TUser] where usercode=@usercode and username=@username and password=@password";
            dynamicParams.Add("@usercode", usercode);
            dynamicParams.Add("@username", username);
            dynamicParams.Add("@password", password);
            var data = DapperHelper.selectdata(sql, dynamicParams);
            if (data.Rows.Count <= 0)
            {
                mes.code = "300";
                mes.count = 0;
                mes.Message = "输入的密码不正确,请重新输入!";
                mes.data = null;
            }
            else
            else
            {
                //执行sql,判断当前用户登录账号是否正确
                strProcName = "update [dbo].[TUser] set password=@newpassword where username=@username and password=@password";
                //创建参数
                listStr.Add(new SqlParameter("@username", username));
                listStr.Add(new SqlParameter("@password", password));
                listStr.Add(new SqlParameter("@newpassword", newpassword));
                parameters = listStr.ToArray();
                listStr.Clear();
                res = DBHelper.ExecuteSql(strProcName, parameters);
                if (res)
                //修改密码
                sql = @"update [dbo].[TUser] set password=@newpassword where usercode=@usercode and username=@username and password=@password";
                list.Add(new { str = sql, parm = new { usercode = usercode, username = username, password = password, newpassword = newpassword } });
                //写入操作记录表
                sql = @"insert into T_Bas_User_Operlog(usercode,oper_date,oper_type,description,origin)";
                list.Add(new
                {
                    str = sql,
                    parm = new
                    {
                        usercode = usercode,
                        oper_date = DateTime.Now.ToString(),
                        oper_type = "PC",
                        description = username + "修改了密码",
                        origin = "PC"
                    }
                });
                bool aa = DapperHelper.DoTransaction(list);
                if (aa)
                {
                    mes.code = "200";
                    mes.Message = "修改密码成功!";
                    mes.count = 0;
                    mes.Message = "修改密码成功!";
                    mes.data = null;
                }
                else
                else
                {
                    mes.code = "300";
                    mes.Message = "修改密码失败!";
                }
                    mes.count = 0;
                    mes.Message = "修改密码失败!";
                    mes.data = null;
                }
            }
            return mes;
        }
        #endregion
        #region[登出]
        public static ToMessage LoginOut(int userid, string usercode, string username, string usertype)
        {
            var sql = "";
            var cont = 0;
            var dynamicParams = new DynamicParameters();
            RedisHelper redis = new RedisHelper();
            try
            {
                sql = @"update T_Bas_Login set outdate=@outdate,status='N'  where usercode=@usercode and origin=@usertype";
                dynamicParams.Add("@usercode", usercode);
                dynamicParams.Add("@outdate", DateTime.Now.ToString());
                dynamicParams.Add("@usertype", usertype);
                cont = DapperHelper.SQL(sql, dynamicParams);
                if (cont > 0)
                {
                    redis.Remove("LoginUserID" + userid, 0); //删除redis
                    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
    }
}