HuNan_DM/DM_Weight/Services/UserService.cs

55 lines
2.7 KiB
C#
Raw Normal View History

using DM_Weight.Models;
using MySqlConnector;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DM_Weight.Services
{
public class UserService
{
//public static string connStr = ConfigurationManager.AppSettings["database"].ToString();
public static string connStr = ConfigurationManager.ConnectionStrings["database"].ToString();
public UserList CheckUserByFingerPrinter(int fingerPrinterId)
{
UserList? user = null;
using (MySqlConnection con = new MySqlConnection(connStr))
{
con.Open();
string sql = @"select ul.id as id,ul.User_name as userName,r.id,r.role_name,r.permissions,r.machine_id from user_list ul
INNER JOIN role r on ul.machine_role_id=r.id where ul.Id=@ID and ul.machine_id=@machine_id and r.machine_id=@machine_id;";
MySqlCommand cmd = new MySqlCommand(sql, con);
cmd.Parameters.Clear();
MySqlParameter[] mySqlParameter = new MySqlParameter[] {new MySqlParameter("ID", fingerPrinterId),new MySqlParameter("machine_id", (ConfigurationManager.AppSettings["machineId"] ?? "DM1")) };
cmd.Parameters.AddRange(mySqlParameter);
//执行语句
MySqlDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
user = new UserList();
user.Id = reader.GetInt32("id");
user.UserName = reader["userName"] is DBNull ? "" : reader.GetString("userName");
//user.UserName = reader["id"] is DBNull ? "" : reader.GetString("id");
user.Nickname= reader["userName"] is DBNull ? "" : reader.GetString("userName");
user.MachineId = reader["machine_id"] is DBNull ? "" : reader.GetString("machine_id");
RoleDm role= new RoleDm();
role.Id= reader.GetInt32("id");
//role.Permissions = reader["permissions"] is DBNull ? "" : reader.GetString("permissions");
role.RoleName = reader["role_name"] is DBNull ? "" : reader.GetString("role_name");
role.Permissions = JsonConvert.DeserializeObject<List<PremissionDm>>(reader["permissions"] is DBNull ? "" : reader.GetString("permissions")); // JsonConvert.SerializeObject(reader.GetString("permissions")).ToList();
user.Role = role;
}
reader.Close();
return user;
}
}
}
}