1
啊鑫
2024-11-27 ca835dc991b53a63971d1f811c3b7de2793b7b8f
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
using System.Dynamic;
using NewPdaSqlServer.DB;
using NewPdaSqlServer.entity;
using NewPdaSqlServer.util;
 
namespace NewPdaSqlServer.service.@base;
 
public class LoginService : RepositoryNoEntity
{
    public SysUser login(string name, string pwd)
    {
        var strPass = UtilityHelper.MD5Encrypt32(pwd);
        var sysUser = Db.Queryable<SysUser>()
            .Where(s => s.Account == name
                        && s.Password == strPass).First();
 
        if (sysUser == null) throw new Exception("用户不存在");
 
        var db_password = sysUser.Password;
        if (!strPass.Equals(db_password)) throw new Exception("用户名或者密码错误");
 
        return sysUser;
    }
 
    public List<dynamic> getUserMenu(string name)
    {
        var sql = "";
 
        var pageViewList = Db.Queryable<MesSysPageview>()
            .Where(s=>s.PageStatus == true).ToList();
        
        var result = new List<dynamic>();  
        
        if ("admin".Equals(name))
        {
            var groupedPageViews = pageViewList  
                .GroupBy(p => string.IsNullOrEmpty(p.PageGroup) ? "未分组" : p.PageGroup)  
                .ToList();
            
            foreach (var group in groupedPageViews)  
            {  
                dynamic groupObj = new ExpandoObject();  
                groupObj.groupName = group.Key; // 分组名  
                groupObj.child = new List<MesSysPageview>();  
 
                foreach (var pageView in group)  
                {  
                    groupObj.child.Add(new MesSysPageview()  
                    {  
                        Guid = pageView.Guid,  
                        PageView = pageView.PageView,  
                        Path = pageView.Path,  
                        Icoimg = pageView.Icoimg,  
                        PageGroup = pageView.PageGroup,  
                        PageIdx = pageView.PageIdx,  
                        PageStatus = pageView.PageStatus  
                    });  
                }  
 
                result.Add(groupObj);  
            }  
            
            return result;
        }
             
 
        return null;
    }
 
    public int resetPassword(string newPwd, string name, string pwd)
    {
        login(name, pwd);
        var passwordHash = UtilityHelper.MD5Encrypt32(newPwd);
 
        return Db.Updateable<SysUser>()
            .SetColumns(s => s.Password == passwordHash)
            .Where(s => s.Account == name)
            .ExecuteCommand();
    }
}