11
啊鑫
2024-12-12 f9190154ed17006dca9c44bb28c38cbc0fe9ee27
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
81
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)
            .OrderBy(s => s.PageIdx)
            .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();
    }
}