1,UI設置界面

2,啟動界面加載的時候,設置數據庫類型和連接字符串
#region Initial(),讀取Config配置文件,給Global的變量賦值
/// <summary>
/// 讀取Config配置文件,給Global的變量賦值【放在啟動界面加載的事件中】
/// </summary>
void Initial()
{
CommonMethods.SetPropertiesFromXml(ConfigFilePath + "ParameterList.xml", GlobalVariable.myParameter);//讀取配置文件賦值給儲存類的屬性
//設置數據庫類型和連接字符串
SqlSugarService.SetDBType(GlobalVariable.myParameter.DBType);
SqlSugarService.SetConnectionString(GlobalVariable.myParameter.DBConStr);
}
#endregion
3,SqlSugarHelper
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
/*
* 手動添加SqlSugar.dll引用
*/
namespace _009_TPS.DAL.Helper
{
public static class SqlSugarHelper
{
//連接字符串
public static string ConnectionString = string.Empty;
//數據庫類型
public static DbType DBType = DbType.SqlServer;
public static SqlSugarClient SqlSugarClient
{
get
{
return new SqlSugarClient(new ConnectionConfig()
{
ConnectionString = ConnectionString,//必填, 數據庫連接字符串
//DbType = DbType.Sqlite,//必填,選擇數據庫類型
//DbType = DbType.SqlServer ,//必填,選擇數據庫類型
DbType = DBType,
IsAutoCloseConnection = true,//設置為true無需使用using或者Close操作,自動關閉連接,不需要手動關閉數據鏈接
InitKeyType = InitKeyType.SystemTable//默認SystemTable, 字段信息讀取, 如:該屬性是不是主鍵,是不是標識列等等信息
});
}
}
}
}
4,SqlSugarService
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using SqlSugar;
namespace _009_TPS.DAL.Helper
{
/// <summary>
/// 設置數據庫的連接字符串
/// </summary>
public static class SqlSugarService
{
/// <summary>
/// 設置數據庫的類型
/// </summary>
/// <param name="dbType"></param>
public static void SetDBType(string dbType)
{
switch (dbType.ToLower())
{
case "sqlserver":
SqlSugarHelper.DBType = DbType.SqlServer;
break;
case "sqlite":
SqlSugarHelper.DBType = DbType.Sqlite;
break;
case "mysql":
SqlSugarHelper.DBType = DbType.MySql;
break;
default:
SqlSugarHelper.DBType = DbType.SqlServer;
break;
}
}
/// <summary>
/// 設置數據庫的連接字符串
/// </summary>
/// <param name="ConnectionString"></param>
public static void SetConnectionString(string ConnectionString)
{
SqlSugarHelper.ConnectionString = ConnectionString;
}
}
}
比如:用戶的增刪改查
1,SysAdmin
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace _009_TPS.Models
{
/// <summary>
/// 登錄用戶類
/// </summary>
public class SysAdmin
{
//登錄ID
public int LoginId { get; set; }
//登錄名稱
public string LoginName { get; set; }
//登錄密碼
public string LoginPwd { get; set; }
/// <summary>
/// 角色 0:操作工 1:工程師 2:主管
/// </summary>
public int UserRole { get; set; }
/// <summary>
/// 用戶卡號
/// </summary>
public string UserCardNo { get; set; }
}
}
2,SysAdminService
using _009_TPS.DAL.Helper;
using _009_TPS.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace _009_TPS.DAL
{
/// <summary>
/// 用戶管理Service
/// </summary>
public class SysAdminService
{
/// <summary>
/// 返回所有的用戶集合(admin除外)
/// </summary>
/// <returns>用戶對象集合</returns>
public static List<SysAdmin> GetAllAdminDB()
{
return SqlSugarHelper.SqlSugarClient.Queryable<SysAdmin>().Where(c => c.LoginName.ToLower() != "admin")
.ToList();
}
/// <summary>
/// 驗證登錄用戶結果(驗證用戶名和密碼和數據庫的是否一致)
/// </summary>
/// <param name="sysAdmin">用戶對象</param>
/// <returns>用戶對象</returns>
public static SysAdmin AdminLogin(SysAdmin sysAdmin)
{
var list = SqlSugarHelper.SqlSugarClient.Queryable<SysAdmin>().Where(c =>
c.LoginName.ToLower() == sysAdmin.LoginName && c.LoginPwd == sysAdmin.LoginPwd).ToList();
return list.Count == 0 ? null : list[0];
}
/// <summary>
/// 驗證登錄用戶結果(根據用戶卡號返回用戶對象)
/// </summary>
/// <param name="sysAdmin">用戶對象</param>
/// <returns>用戶對象</returns>
public static SysAdmin AdminLoginWithUserCardNo(SysAdmin sysAdmin)
{
var list = SqlSugarHelper.SqlSugarClient.Queryable<SysAdmin>()
.Where(c => c.UserCardNo == sysAdmin.UserCardNo).ToList();
return list.Count == 0 ? null : list[0];
}
/// <summary>
/// 增:添加用戶
/// </summary>
/// <param name="admin">用戶對象</param>
/// <returns></returns>
public static bool AddAdminDB(SysAdmin admin)
{
return SqlSugarHelper.SqlSugarClient.Insertable(admin).ExecuteCommand() == 1;
}
/// <summary>
/// 根據用戶名判斷用戶是否存在
/// </summary>
/// <param name="loginName">用戶名</param>
/// <returns></returns>
public static bool CheckLoginNameExit(string loginName)
{
return SqlSugarHelper.SqlSugarClient.Queryable<SysAdmin>().Where(c => c.LoginName == loginName).Count() > 0;
}
/// <summary>
/// 根據卡號判斷用戶是否存在
/// </summary>
/// <param name="loginName">卡號</param>
/// <returns></returns>
public static bool CheckUserCardNoExit(string userCardNo)
{
return SqlSugarHelper.SqlSugarClient.Queryable<SysAdmin>().Where(c => c.UserCardNo == userCardNo).Count() >
0;
}
/// <summary>
/// 改:根據用戶名更新用戶
/// </summary>
/// <param name="admin">用戶對象</param>
/// <returns></returns>
public static bool UpdateAdminDB(SysAdmin admin)
{
return SqlSugarHelper.SqlSugarClient.Updateable(admin).WhereColumns(c => c.LoginName)
.ExecuteCommand() == 1;
}
/// <summary>
/// 刪:更加用戶名刪除用戶
/// </summary>
/// <param name="loginName">用戶名</param>
/// <returns></returns>
public static bool DeleteAdminDB(string loginName)
{
return SqlSugarHelper.SqlSugarClient.Deleteable<SysAdmin>().Where(c => c.LoginName == loginName)
.ExecuteCommand() == 1;
}
/// <summary>
/// 根據用戶名稱返回用戶對象
/// </summary>
/// <param name="loginName">用戶名</param>
/// <returns>用戶對象</returns>
public static SysAdmin GetSysAdminByLoginName(string loginName)
{
var query = SqlSugarHelper.SqlSugarClient.Queryable<SysAdmin>().Where(c => c.LoginName == loginName)
.ToList();
if (query.Count > 0)
{
return query[0];
}
else
{
return null;
}
}
}
}
3,
//添加用戶
private void btn_add_Click(object sender, EventArgs e)
{
if (this.txt_loginPwd.Text.Trim().Length > 0 && this.txt_loginName.Text.Trim().Length > 0)
{
SysAdmin admin = new SysAdmin()
{
LoginName = this.txt_loginName.Text.Trim(),
LoginPwd = this.txt_loginPwd.Text.Trim(),
UserRole = this.rdb_operation.Checked ? 0 : this.rdb_engineer.Checked ? 1 : 2,
UserCardNo = this.txt_userCardNo.Text.Trim()
};
if (SysAdminService.AddAdminDB(admin))
{
MessageBox.Show("新用戶:" + $"“{admin.LoginName}”" + "添加成功", "添加用戶");
UpdateAdmin();
}
else
{
MessageBox.Show("新用戶:" + $"“{admin.LoginName}”" + "添加失敗", "添加用戶");
}
}
else
{
MessageBox.Show("用戶名稱或用戶密碼不能為空","添加用戶");
}
}
//修改用戶
private void btn_Modify_Click(object sender, EventArgs e)
{
if (this.txt_userCardNo.Text.Trim().Length > 0 && this.txt_loginName.Text.Trim().Length > 0)
{
//檢測用戶是否存在
if (!SysAdminService.CheckLoginNameExit(this.txt_loginName.Text))
{
MessageBox.Show("該用戶名稱不存在,請添加后再修改", "修改用戶");
return;
}
SysAdmin admin = new SysAdmin()
{
LoginName = this.txt_loginName.Text.Trim(),
LoginPwd = this.txt_loginPwd.Text.Trim(),
UserRole = this.rdb_operation.Checked ? 0 : this.rdb_engineer.Checked ? 1 : 2,
UserCardNo = this.txt_userCardNo.Text.Trim()
};
if (SysAdminService.UpdateAdminDB(admin))
{
MessageBox.Show("用戶:" + $"“{admin.LoginName}”" + "信息修改成功", "修改用戶");
UpdateAdmin();
}
else
{
MessageBox.Show("用戶:" + $"“{admin.LoginName}”" + "信息修改失敗", "修改用戶");
}
}
else
{
MessageBox.Show("用戶名稱或用戶密碼不能為空", "添加用戶");
}
}
//刪除用戶
private void btn_delete_Click(object sender, EventArgs e)
{
if (this.dgv_data.SelectedRows.Count > 0)
{
string loginName = this.dgv_data.SelectedRows[0].Cells["LoginName"].Value.ToString();
//刪除確認
DialogResult result = MessageBox.Show("確認要刪除用戶 [" + loginName + "] 嗎?", "刪除詢問", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);
if (result == DialogResult.Cancel) return;
if (SysAdminService.DeleteAdminDB(loginName))
{
MessageBox.Show("用戶:" + $"“{loginName}”" + "刪除成功", "刪除用戶");
UpdateAdmin();
}
else
{
MessageBox.Show("用戶:" + $"“{loginName}”" + "刪除失敗", "刪除用戶");
}
}
else
{
MessageBox.Show("請選擇要刪除的用戶", "刪除用戶");
}
}
//關閉
private void btn_close_Click(object sender, EventArgs e)
{
this.Close();
this.Dispose();
}
//更新
private void UpdateAdmin()
{
this.dgv_data.DataSource = null;
this.dgv_data.DataSource = SysAdminService.GetAllAdminDB();
}
