📄 dataaccess.cs
字号:
using System;
using System.Collections.Generic;
using System.Text;
namespace LanMsg
{
public sealed class dataAccess
{
private dataAccess()
{
}
#region 检查数据库中用户的密码是否与输入的有效
/// <summary>
/// 检查数据库中用户的密码是否与输入的有效
/// </summary>
/// <param name="userId">用户ID</param>
/// <param name="password">用户密码</param>
/// <returns>成功返回真,否则返回假</returns>
public static bool IsCorrectPassword(string userId, string MD5)//检查用户输入的密码是否有效密码
{
bool t = false;
MD5 = IMLibrary.myMD5.get32Md5(MD5);
object _password = IMLibrary.OleDb.DataAccess.ExSQLReField("MD5",string.Format( "select * from LoginUser where userId='{0}'", userId) );
if (_password != null && _password.ToString() == MD5)//如果密码正确
{
t = true;
}
return t;
}
#endregion
#region 在数据库中写入用户或更改用户密码
/// <summary>
/// 在数据库中写入用户或更改用户密码
/// </summary>
/// <param name="userId">用户ID</param>
/// <param name="password">用户密码</param>
/// <param name="autoLogion">用户是否自动登录</param>
/// <returns>成功返回真,否则返回假</returns>
public static bool wirteUserOrPassword(string userId, string MD5 ,string DES ,bool autoLogin)
{
MD5 = IMLibrary.myMD5.get32Md5(MD5 );//将密码MD5
DES = IMLibrary.Security.EncryptDES(DES);
int i = IMLibrary.OleDb.DataAccess.ExSQLR(string.Format("select * from LoginUser where userId='{0}'", userId ));
if (i > 0)//说明数据库中用户已经存在,只更新其用户密码与是否自动登录
i = IMLibrary.OleDb.DataAccess.ExSQL(string.Format("update LoginUser set MD5='{0}',DES='{1}',autoLogin={2},LastLoginDate='{4}' where userId='{3}'", MD5, DES, autoLogin, userId,DateTime.Now.ToString()));
else
{
i = IMLibrary.OleDb.DataAccess.ExSQL(string.Format("insert into LoginUser(userId,MD5,DES,autoLogin) values('{0}','{1}','{2}', {3} )",userId,MD5 ,DES,autoLogin ));
}
return true ;
}
/// <summary>
/// 在数据库中写入用户或更改用户密码
/// </summary>
/// <param name="userId">用户ID</param>
/// <param name="password">用户密码</param>
/// <returns>成功返回真,否则返回假</returns>
public static bool wirteUserOrPassword(string userId, string password)
{
password = IMLibrary.myMD5.get32Md5(password);//将密码MD5
int i = IMLibrary.OleDb.DataAccess.ExSQLR("select * from users where userId='" + userId + "'");
if (i > 0)//说明数据库中用户已经存在,只更新其用户密码与是否自动登录
i = IMLibrary.OleDb.DataAccess.ExSQL("update LoginUser set password='" + password + "' where userId='" + userId + "'");
else
{
i = IMLibrary.OleDb.DataAccess.ExSQL("insert into LoginUser(userId,password) values('" + userId + "','" + password + "')");
}
return true ;
}
#endregion
#region 获得服务器系统组织机构版本号
/// <summary>
/// 获得服务器系统组织机构版本号
/// </summary>
/// <param name="userId">用户ID</param>
/// <returns>返回版本号</returns>
public static int getDepVersion()
{
object obj = null;
int i=0;
obj = IMLibrary.OleDb.DataAccess.ExSQLReField("departmentVersion", "select * from [systemVersion]");
if(obj!=null )
i=Convert.ToInt32(obj) ;
return i;
}
#endregion
#region 更新本地数据库中组织机构版本号
/// <summary>
/// 更新本地数据库中组织机构版本号
/// </summary>
/// <param name="userId">用户ID</param>
/// <param name="serverVersion">服务器版本号</param>
/// <returns>成功返回真,否则返回假</returns>
//public static bool updateDepVersion(int serverVersion,string userId)
//{
// bool t=false ;
// try
// {
// IMLibrary.OleDb.DataAccess.ExSQL("update systemVersion set departmentVersion=" + serverVersion);
// t = true;
// }
// catch { }
// return t;
//}
/// <summary>
/// 更新本地数据库中组织机构版本号
/// </summary>
/// <returns></returns>
public static bool updateDepVersion( )
{
bool t = false;
try
{
IMLibrary.OleDb.DataAccess.ExSQL("update systemVersion set departmentVersion=" + FormAccess.ServerDepAndUserVersion.departmentVersion);
t = true;
}
catch { }
return t;
}
#endregion
#region 获得服务器系统用户版本号
/// <summary>
/// 获得服务器系统用户版本号
/// </summary>
/// <param name="userId">用户ID</param>
/// <returns>返回系统用户版本号</returns>
public static int getUserVersion()
{
object obj = null;
int i = 0;
obj = IMLibrary.OleDb.DataAccess.ExSQLReField("userVersion", "select * from [systemVersion]");
if (obj != null)
i = Convert.ToInt32(obj);
return i;
}
#endregion
#region 更新本地数据库中用户信息版本号
/// <summary>
/// 更新本地数据库中组织机构版本号
/// </summary>
/// <param name="userId">用户ID</param>
/// <param name="serverVersion">服务器版本号</param>
/// <returns>成功返回真,否则返回假</returns>
//public static bool updateUserVersion(int serverVersion, string userId)
//{
// bool t = false;
// try
// {
// IMLibrary.OleDb.DataAccess.ExSQL("update systemVersion set userVersion=" + serverVersion);
// t = true;
// }
// catch { }
// return t;
//}
/// <summary>
/// 更新本地数据库中组织机构版本号
/// </summary>
/// <returns></returns>
public static bool updateUserVersion()
{
bool t = false;
try
{
IMLibrary.OleDb.DataAccess.ExSQL("update systemVersion set userVersion=" + FormAccess.ServerDepAndUserVersion.usersVersion );
t = true;
}
catch { }
return t;
}
#endregion
#region 向本地数据库中添加一个新用户
/// <summary>
/// 向本地数据库中添加一个新用户
/// </summary>
/// <param name="dep">部门信息类</param>
/// <param name="userId">用户ID</param>
/// <returns>成功返回真,否则返回假</returns>
public static bool insertUserToDB(IMLibrary.UserInfo user,string userId)
{
bool t=false ;
try
{
object obj = IMLibrary.OleDb.DataAccess.ExSQLReField("userId", "select userId from systemUsers where userID='" + user.UserID + "'");
if (obj == null)//如果无此用户,则插入
{
IMLibrary.OleDb.DataAccess.ExSQL("insert into systemUsers(userID,userName,DepID) values('" + user.UserID + "','" + user.userName + "'," + user.depId.ToString() + ")");
Console.Write("插入用户");
}
//else
//{
// IMLibrary.OleDb.DataAccess.ExSQL("update systemUsers set userName='" + user.userName + "',DepId=" + user.depId.ToString() + " where userId='" + user.UserID + "'");
// Console.Write("更新用户");
//}
t = true;
}
catch { }
return t;
}
#endregion
#region 向本地数据库中添加一个新部门
/// <summary>
/// 向本地数据库中添加一个新部门
/// </summary>
/// <param name="dep">部门信息类</param>
/// <param name="userId">用户ID</param>
/// <returns>成功返回真,否则返回假</returns>
public static bool insertDepToDB(IMLibrary.Department dep, string userId)
{
bool t = false;
try
{
IMLibrary.OleDb.DataAccess.ExSQL("insert into Department(depId,superiorId,depName) values(" + dep.depId.ToString() + "," + dep.superiorId.ToString() + ",'" + dep.depName + "')");
t = true;
}
catch { }
return t;
}
#endregion
#region 清空数据库中组织机构数据
/// <summary>
/// 清空数据库中组织机构数据
/// </summary>
/// <param name="userId">用户ID</param>
/// <returns>成功返回真,否则返回假</returns>
public static bool delDepsFromDB(string userId)
{
bool t = false;
try
{
IMLibrary.OleDb.DataAccess.ExSQL("delete * from Department");
t = true;
}
catch { }
return t;
}
#endregion
#region 清空数据库中用户信息数据
/// <summary>
/// 清空数据库中用户信息数据
/// </summary>
/// <param name="userId">用户ID</param>
/// <returns>成功返回真,否则返回假</returns>
public static bool delUsersFromDB(string userId)
{
bool t = false;
try
{
IMLibrary.OleDb.DataAccess.ExSQL("delete * from systemUsers");
t = true;
}
catch { }
return t;
}
#endregion
#region 添加记录到数据库
public static void addMsgToDB(string msgContent, string sendID, string ReceiveID, string AssemblyVersion, string msgDateTime, string ImageInfo, bool IsNotNotice)//添加用户对话消息到数据库
{
try
{
string DBtable = "Notice";
if (IsNotNotice)
{
DBtable = "MsgRecord";
}
System.Data.OleDb.OleDbConnection connection = new System.Data.OleDb.OleDbConnection( IMLibrary.OleDb.DataAccess.ConStr );
System.Data.OleDb.OleDbCommand command = new System.Data.OleDb.OleDbCommand("INSERT INTO [" + DBtable + "](msgContent,sendID,ReceiveID,AssemblyVersion,msgDateTime,ImageInfo) VALUES( @msgContent,@sendID,@ReceiveID ,@AssemblyVersion,@msgDateTime,@ImageInfo)", connection);
System.Data.OleDb.OleDbParameter paramMsgContent = new System.Data.OleDb.OleDbParameter("@msgContent", System.Data.OleDb.OleDbType.LongVarChar);
paramMsgContent.Value = msgContent;
command.Parameters.Add(paramMsgContent);
System.Data.OleDb.OleDbParameter paramSendID = new System.Data.OleDb.OleDbParameter("@sendID", System.Data.OleDb.OleDbType.Char);
paramSendID.Value = sendID;
command.Parameters.Add(paramSendID);
System.Data.OleDb.OleDbParameter paramReceiveID = new System.Data.OleDb.OleDbParameter("@ReceiveID", System.Data.OleDb.OleDbType.Char);
paramReceiveID.Value = ReceiveID;
command.Parameters.Add(paramReceiveID);
System.Data.OleDb.OleDbParameter paramAssemblyVersion = new System.Data.OleDb.OleDbParameter("@AssemblyVersion", System.Data.OleDb.OleDbType.Char);
paramAssemblyVersion.Value = AssemblyVersion;
command.Parameters.Add(paramAssemblyVersion);
System.Data.OleDb.OleDbParameter paramMsgDateTime = new System.Data.OleDb.OleDbParameter("@msgDateTime", System.Data.OleDb.OleDbType.DBTimeStamp);
paramMsgDateTime.Value = msgDateTime;
command.Parameters.Add(paramMsgDateTime);
System.Data.OleDb.OleDbParameter paramImageInfo = new System.Data.OleDb.OleDbParameter("@ImageInfo", System.Data.OleDb.OleDbType.LongVarChar);
paramImageInfo.Value = ImageInfo;
command.Parameters.Add(paramImageInfo);
connection.Open();
int numRowsAffected = command.ExecuteNonQuery();
connection.Close();
}
catch//如果有错误发生
{
}
}
#endregion
#region 删除不在服务器系统表内的本地数据库用户
private void deleteUserNotInSystem(exUserCollention users)
{
foreach (exUser user in users)
{
//if()
}
}
#endregion
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -