1
yanjinhui
2025-06-16 a3b1d7bfe497ca5ece2a51eb15a5534a98b33dcb
ÏîÄ¿´úÂë/ºó¶Ë/ºǫ́¹ÜÀí/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/Sys_UserService.cs
@@ -29,7 +29,9 @@
        private readonly IRepository<Dt_Maintenance> _MainServer;
        private readonly IRepository<Sys_Role> _RoleServer;
        private readonly IRepository<Dt_AuthorizationRecord> _AuthorizatRecServer;
        public Sys_UserService(IRepository<Dt_AuthorizationRecord> AuthorizatRecServer ,IRepository<Sys_Role> RoleServer,IRepository<Dt_Loginhsy> LoginhsyServer,IRepository<Dt_FaceRecognition> faceServer, IRepository<Sys_User> repository, IUnitOfWorkManage unitOfWorkManage, ICacheService cacheService, ISys_MenuService menuService, IRepository<Dt_Maintenance> MainServer) : base(repository)
        private readonly IRepository<Sys_UserFace> _userFace;
        public Sys_UserService(IRepository<Sys_UserFace> _userFace,IRepository<Dt_AuthorizationRecord> AuthorizatRecServer ,IRepository<Sys_Role> RoleServer,IRepository<Dt_Loginhsy> LoginhsyServer,IRepository<Dt_FaceRecognition> faceServer, IRepository<Sys_User> repository, IUnitOfWorkManage unitOfWorkManage, ICacheService cacheService, ISys_MenuService menuService, IRepository<Dt_Maintenance> MainServer) : base(repository)
        {
            _faceServer = faceServer;
            _LoginhsyServer = LoginhsyServer;
@@ -731,10 +733,12 @@
                // ç™¾åº¦åˆ é™¤æˆåŠŸåŽï¼Œåˆ é™¤æ•°æ®åº“ä¸­çš„ç”¨æˆ·
                var user = BaseDal.QueryData(x => x.UserName == account).FirstOrDefault();
                var main = _MainServer.QueryData(x => x.UserAccount == account).FirstOrDefault();
                if (user != null && main != null)
                var face= _userFace.QueryData(x=>x.UserName== account).FirstOrDefault();
                if (user != null && main != null&&face!=null)
                {
                    BaseDal.DeleteData(user);
                    _MainServer.DeleteData(main);
                    _userFace.DeleteData(face);
                }
                return WebResponseContent.Instance.OK("用户删除成功");
                //}
@@ -926,22 +930,27 @@
            try
            {
                int totalCount = 0;
                var Role = _RoleServer.Db.Queryable<Sys_Role>();
                var query = Role.InnerJoin<Sys_User>((a, b) => a.RoleId == b.Role_Id);
                //var Role = _RoleServer.Db.Queryable<Sys_Role>();
                //var query = Role.InnerJoin<Sys_User>((a, b) => a.RoleId == b.Role_Id)
                //                .InnerJoin<Sys_UserFace>((a, b, c) => b.UserName == c.UserName);
                var User = BaseDal.Db.Queryable<Sys_User>();   //查出用户表
                var query = User.LeftJoin<Sys_UserFace>((a, b) => a.UserName == b.UserName);
                //搜索关键字
                if (!string.IsNullOrEmpty(pagination.searchKeyword))
                {
                    query = query.Where((a, b) =>
                    b.UserName.Contains(pagination.searchKeyword) ||
                    b.UserTrueName.Contains(pagination.searchKeyword) ||
                    b.PhoneNo.Contains(pagination.searchKeyword) ||
                    a.UserName.Contains(pagination.searchKeyword) ||
                    a.UserTrueName.Contains(pagination.searchKeyword) ||
                    a.PhoneNo.Contains(pagination.searchKeyword) ||
                    a.RoleName.Contains(pagination.searchKeyword));
                }
                //时间查询
                if (pagination.startDate.HasValue && pagination.endDate.HasValue)
                {
                    query = query.Where((a, b) => b.CreateDate >= pagination.startDate.Value && b.CreateDate <= pagination.endDate.Value);
                    query = query.Where((a, b) => a.CreateDate >= pagination.startDate.Value && a.CreateDate <= pagination.endDate.Value);
                }
                //排序
                if (!string.IsNullOrEmpty(pagination.sortField))
@@ -951,38 +960,38 @@
                    {
                        "CreateDate" => isAcs ? query.OrderBy((a, b) => b.CreateDate) : query.OrderByDescending((a, b) => b.CreateDate),
                        "CreateDate" => isAcs ? query.OrderBy((a, b) => a.CreateDate) : query.OrderByDescending((a, b) => a.CreateDate),
                        _ => query.OrderByDescending((a, b) => b.Creater) // é»˜è®¤æŒ‰åˆ›å»ºæ—¶é—´é™åº
                        _ => query.OrderByDescending((a, b) => a.Creater) // é»˜è®¤æŒ‰åˆ›å»ºæ—¶é—´é™åº
                    };
                }
                else
                {
                    query = query.OrderByDescending((a, b) => b.Creater);
                    query = query.OrderByDescending((a, b) => a.Creater);
                }
                var reslut = query.Select((a, b) => new
                {
                    b.User_Id,
                    b.UserName,
                    b.UserTrueName,
                    b.Unit,
                    b.Userteam,
                    b.Role_Id,
                    b.IsLeader,
                    //b.RoleName,
                    b.CardNumber,
                    b.PhoneNo,
                    b.UserPwd,
                    b.DeptName,
                    b.Dept_Id,
                    b.Email,
                    b.Enable,
                    b.Gender,
                    b.HeadImageUrl,
                    b.Address,
                    b.CreateDate,
                    b.Creater,
                    a.User_Id,
                    a.UserName,
                    a.UserTrueName,
                    a.Unit,
                    a.Userteam,
                    a.Role_Id,
                    a.IsLeader,
                    a.CardNumber,
                    a.PhoneNo,
                    a.UserPwd,
                    a.DeptName,
                    a.Dept_Id,
                    a.Email,
                    a.Enable,
                    a.Gender,
                    //b.HeadImageUrl,
                    b.UserFaceImageName,
                    a.Address,
                    a.CreateDate,
                    a.Creater,
                    a.RoleName,
                }).ToPageList(pagination.pageIndex, pagination.pageSize, ref totalCount);
@@ -1009,5 +1018,31 @@
        }
        /// <summary>
        /// æ‰¹é‡åˆ é™¤
        /// </summary>
        /// <param name="keys">用户id</param>
        /// <returns></returns>
        public WebResponseContent DelUserList(int[] keys)
        {
            WebResponseContent webResponse = new WebResponseContent();
            foreach (int key in keys)
            {
                var user = BaseDal.QueryData(x => x.User_Id == key).FirstOrDefault();
                if (user == null)
                {
                    return webResponse.Error("没有找到该用户");
                }
                var main = _MainServer.QueryData(x => x.UserAccount == user.UserName).FirstOrDefault();
                BaseDal.DeleteData(user);
                _MainServer.DeleteData(main);
            }
            return webResponse.OK();
        }
    }
}