南骏 池
2025-06-02 1be2fc056943ba8b9e62328430e15beee03e8a9f
service/base/LoginService.cs
@@ -1,4 +1,5 @@
using NewPdaSqlServer.DB;
using System.Dynamic;
using NewPdaSqlServer.DB;
using NewPdaSqlServer.entity;
using NewPdaSqlServer.util;
@@ -6,7 +7,6 @@
public class LoginService : RepositoryNoEntity
{
    public SysUser login(string name, string pwd)
    {
        var strPass = UtilityHelper.MD5Encrypt32(pwd);
@@ -22,25 +22,105 @@
        return sysUser;
    }
    public List<MesSysPageview> getUserMenu(string name)
    public List<dynamic> getUserMenu(string name)
    {
        var sql = "";
        var pageViewList = new List<MesSysPageview>();
        if ("admin".Equals(name))
            return Db.Queryable<MesSysPageview>()
        {
            pageViewList = Db.Queryable<MesSysPageview>()
           .Where(s => s.PageStatus == true)
           .OrderBy(s => s.PageIdx)
           .ToList();
        }
        else
        {
            string sql = string.Format(@"SELECT A.* FROM MES_SYS_PAGEVIEW A
         LEFT JOIN SYS_USER_BIND B ON A.guid = B.aboutGuid
         LEFT JOIN SYS_USER C ON C.GUID = B.userGuid
        WHERE C.ACCOUNT = '{0}'", name);
            pageViewList = Db.Ado.SqlQuery<MesSysPageview>(sql);
        }
        //if(pageViewList.Count < 0)
        //{
        //    throw new Exception("该用户没有权限访问");
        //}
        try
        {
            var result = new List<dynamic>();
            var groupedPageViews = pageViewList
                .GroupBy(p =>
                    string.IsNullOrEmpty(p.PageGroup) ? "未分组" : p.PageGroup)
                .ToList();
        return null;
            foreach (var group in groupedPageViews)
            {
                dynamic groupObj = new ExpandoObject();
                groupObj.groupName = group.Key; // 分组名
                groupObj.child = new List<MesSysPageview>();
                foreach (var pageView in group)
                {
                    var mesFile = Db.Queryable<MesFile>()
                        .Where(s => s.ParentGuid == pageView.Guid)
                        .OrderByDescending(s => s.CreateDate)
                        .First();
                    var icoimg = "";
                    if (mesFile != null)
                        icoimg = "http://192.168.1.145:81/upload/" +
                                 mesFile.UrlPath;
                    groupObj.child.Add(new MesSysPageview
                    {
                        Guid = pageView.Guid,
                        PageView = pageView.PageView,
                        Path = pageView.Path,
                        Icoimg = icoimg,
                        PageGroup = pageView.PageGroup,
                        PageIdx = pageView.PageIdx,
                        PageStatus = pageView.PageStatus
                    });
                }
                result.Add(groupObj);
            }
            return result;
        }
        catch(Exception e)
        {
            throw new Exception(e.Message);
        }
    }
    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();
    }
    public List<dynamic> getUserInfo(string userGuid)
    {
        //string sql = string.Format(@"SELECT A.* FROM MES_SYS_PAGEVIEW A
        // LEFT JOIN SYS_USER_BIND B ON A.guid = B.aboutGuid
        // LEFT JOIN SYS_USER C ON C.GUID = B.userGuid
        //WHERE C.ACCOUNT = '{0}'", userGuid);
        //var sysUser = Db.Ado.SqlQuery<dynamic>(sql);
        //return sysUser;
        return null;
    }
}