From b166c0f80252ab4e1af4136789cb976364b779b2 Mon Sep 17 00:00:00 2001
From: yl <ykxkd@outlook.com>
Date: 星期一, 21 十一月 2022 15:12:04 +0800
Subject: [PATCH] 大岛的登陆接口存redis加企业区分
---
VueWebApi/DLL/DAL/LoginDAL.cs | 286 ++++++++++++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 250 insertions(+), 36 deletions(-)
diff --git a/VueWebApi/DLL/DAL/LoginDAL.cs b/VueWebApi/DLL/DAL/LoginDAL.cs
index d03f424..234f067 100644
--- a/VueWebApi/DLL/DAL/LoginDAL.cs
+++ b/VueWebApi/DLL/DAL/LoginDAL.cs
@@ -1,6 +1,7 @@
锘縰sing Dapper;
using System;
using System.Collections.Generic;
+using System.Configuration;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
@@ -18,13 +19,16 @@
public static string strProcName = ""; //瀹氫箟鍏ㄥ眬sql鍙橀噺
public static List<SqlParameter> listStr = new List<SqlParameter>(); //瀹氫箟鍏ㄥ眬鍙傛暟闆嗗悎
public static SqlParameter[] parameters; //瀹氫箟鍏ㄥ眬SqlParameter鍙傛暟鏁扮粍
+ public static string fileip = System.Configuration.ConfigurationManager.AppSettings["FileIP"];
+ //鑾峰彇浼佷笟閰嶇疆Enterprise
+ private static readonly string Enterprise = ConfigurationManager.AppSettings["Enterprise"];
#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";
+ strProcName = "select * from [dbo].[TUser] where usercode=@username and password=@password and is_delete='0'";
//鍒涘缓鍙傛暟
listStr.Add(new SqlParameter("@username", username));
listStr.Add(new SqlParameter("@password", password));
@@ -35,9 +39,77 @@
}
#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)
+ public static ToMessage LoginMenu(string usercode, string usertype)
{
string sql = "";
var dynamicParams = new DynamicParameters();
@@ -45,28 +117,39 @@
try
{
//鑾峰彇鑿滃崟闆嗗悎(鏍规嵁鐧诲綍鐢ㄦ埛缂栫爜鏌ヨ鏉冮檺鍙嶆帹鑿滃崟)
- sql = @"select distinct rt.right_code as code,rt.right_name as name,rt.right_seq from TRight rt where rt.right_code in(
+ sql = @"select distinct rt.right_code as code,rt.right_name as name,rt.right_seq,rt.is_delete as flag,imgurl from TRight rt where rt.right_code in(
select A.parent_id from TRight A
left join TRoleRightRelation B on B.right_code=A.right_code
left join TRole C on C.role_code=B.role_code
left join TUserRoleRelation D on D.role_code=C.role_code
left join TUser E on E.usercode=D.user_code
- where E.usercode=@usercode) and rt.Type='PC' order by rt.right_seq";
+ where E.usercode=@usercode) and rt.Type=@usertype order by rt.right_seq";
dynamicParams.Add("@usercode", usercode);
+ dynamicParams.Add("@usertype", usertype);
var data = DapperHelper.select<TreeObejct>(sql, dynamicParams);
+ data = data.Select(c =>
+ {
+ c.imgurl = fileip + c.imgurl;
+ return c;
+ }).ToList();
for (int i = 0; i < data.Count; i++)
{
- sql = @"select distinct mu.right_code as code,mu.right_name as name,mu.right_seq
+ sql = @"select distinct mu.right_code as code,mu.right_name as name,mu.right_seq,mu.is_delete as flag,imgurl
from TRight mu
inner join TRoleRightRelation rl on mu.right_code=rl.right_code
inner join TUserRoleRelation ro on rl.role_code=ro.role_code
- where mu.type='PC' and ro.user_code=@usercode and mu.parent_id=@paent_id
+ where mu.type=@usertype and ro.user_code=@usercode and mu.parent_id=@paent_id
order by mu.right_seq, mu.right_code";
dynamicParams.Add("@usercode", usercode);
+ dynamicParams.Add("@usertype", usertype);
dynamicParams.Add("@paent_id", data[i].code);
- var data0 = DapperHelper.select<TreeObejctCont>(sql, dynamicParams);
+ var data0 = DapperHelper.select<TreeObejctCn>(sql, dynamicParams);
+ data0 = data0.Select(c =>
+ {
+ c.imgurl = fileip + c.imgurl;
+ return c;
+ }).ToList();
data[i].children = data0;
-
}
mes.code = "200";
mes.Message = "鏌ヨ鎴愬姛!";
@@ -75,57 +158,188 @@
catch (Exception e)
{
mes.code = "300";
+ mes.count = 0;
mes.Message = e.Message;
+ mes.data = null;
}
return mes;
}
#endregion
+
#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 = "杈撳叆鐨勫瘑鐮佷笉姝g‘,璇烽噸鏂拌緭鍏ワ紒";
+ 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) values(@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[PC鐧诲嚭]
+ 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(Enterprise+"LoginUserID" + usertype + 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
+ #region[App鐧诲嚭]
+ public static ToMessage LoginAppOut(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)
+ {
+ 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[App鐧诲綍鏌ヨ瀹夌伅鍛煎彨淇℃伅]
+ public static ToMessage LoginAppAnDonMessage(int userid, string usercode, string username, string usertype)
+ {
+ var sql = "";
+ var dynamicParams = new DynamicParameters();
+ RedisHelper redis = new RedisHelper();
+ try
+ {
+ sql = @"select B.eqp_code,E.name as eqp_name,B.wkshp_code,T.org_name as wkshp_name,
+ A.type as typecode,D.name as typename,B.start_user,B.start_date
+ from TAnDnMessagePush A
+ inner join TAnDon_Task_Info B on A.m_id=B.id
+ left join TEqpInfo E on B.eqp_code=E.code
+ left join TOrganization T on B.wkshp_code=T.org_code
+ left join TAnDonType D on A.type=d.code
+ where A.resp_user=@username and B.status='START' and T.description='W'";
+ dynamicParams.Add("@username", username);
+ var data = DapperHelper.selectdata(sql, dynamicParams);
+
+ mes.code = "200";
+ mes.count = 0;
+ mes.Message = "鏌ヨ鎴愬姛!";
+ mes.data = data;
+ }
+ catch (Exception e)
+ {
+ mes.code = "300";
+ mes.count = 0;
+ mes.Message = e.Message;
+ mes.data = null;
+ }
+ return mes;
+ }
+ #endregion
}
}
\ No newline at end of file
--
Gitblit v1.9.3