public ActionResult Edit(int id)
        {
            var pevm = CreateViewModel<PermissionEditViewModel>();
            StringBuilder result = new StringBuilder();

            var check_date = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day);

            var rolelist = _roleRepository.FindAll().Where(x => !x.IsDeleted && x.Active == true && (x.RoleTypeId == 1 || x.RoleTypeId == 3)).ToList().Select(x => x.Id);
            var useridrolewise = _userRoleRepository.FindAll().Where(x => !x.IsDeleted && rolelist.Contains(x.RoleId) && x.ValidTo >= check_date && x.ValidFrom <= check_date).ToList().Select(x => x.UserId);

            List<User> UserList = _userRepository.FindAll(x => x.Active == true && x.IsDeleted == false && useridrolewise.Contains(x.Id)).OrderBy(x => x.FirstName).ToList();

            foreach (var obj in UserList)
            {
                var usrrole = "";
                if (obj.UserRoles.Count > 0)
                {
                    var rolel = obj.UserRoles.Where(x => !x.IsDeleted && x.UserId == obj.Id && DateTime.Now >= x.ValidFrom && DateTime.Now <= x.ValidTo).FirstOrDefault();
                    if (usrrole != null)
                    {
                        usrrole = rolel.Role.Name;
                    }
                }
                //var roleid = _userRoleRepository.FindAll().Where(x => !x.IsDeleted && x.UserId == obj.Id && x.ValidFrom <= DateTime.Now && x.ValidTo >= DateTime.Now).Select(x => x.RoleId).FirstOrDefault();
                //var rolename = _roleRepository.FindAll().Where(x => !x.IsDeleted && x.Id == Convert.ToInt32(roleid)).Select(x => x.Name).FirstOrDefault();
                obj.FirstName = "Full Name: " + obj.FirstName.Trim() + " " + obj.LastName.Trim() + ", Role Name: " + usrrole.Trim();
            }

            pevm.UserList = new SelectList(UserList, "Id", "FirstName", pevm.User.Id);

            Mapper.Map(_userPermissionGroupRepository.FindById(id), pevm.Permission);
            return PartialView(pevm);
        }
Esempio n. 2
0
        public bool UpdateUser(UserInfoManagementInDTO user, Guid userInfoId)
        {
            try
            {
                var currentUser = _userInfoRepository.FindByID(user.UserInfoId ?? Guid.Empty);

                if (currentUser == null)
                {
                    return(false);
                }

                var emailExists = _userInfoRepository.FindAll().Any(x => x.Email.ToLower() == user.Email.ToLower() && user.UserInfoId != currentUser.UserInfoId);

                if (emailExists)
                {
                    return(false);
                }

                currentUser.Address    = user.Address;
                currentUser.EntityId   = user.CompanyId;
                currentUser.ContactNo  = user.ContactNo;
                currentUser.Country    = user.Country;
                currentUser.Email      = user.Email;
                currentUser.FirstName  = user.FirstName;
                currentUser.LastName   = user.LastName;
                currentUser.Position   = user.Position;
                currentUser.Status     = user.Status;
                currentUser.Timezone   = user.Timezone;
                currentUser.ModifiedOn = Localization.GetUTCDateNow();
                currentUser.ModifiedBy = userInfoId;
                _userInfoRepository.Update(currentUser);


                var exisitingMappedRoles = _userRoleRepository.FindAll().Where(x => x.UserId == currentUser.UserInfoId);

                foreach (var existingMappedRole in exisitingMappedRoles)
                {
                    _userRoleRepository.Remove(existingMappedRole.UserRoleId);
                }

                foreach (var mappedRole in user.RoleMappingItems)
                {
                    var userRole = new UserRole();
                    userRole.UserId     = currentUser.UserInfoId;
                    userRole.RoleId     = mappedRole.RoleId;
                    userRole.CreatedBy  = userInfoId;
                    userRole.CreatedOn  = Localization.GetUTCDateNow();
                    userRole.ModifiedBy = userInfoId;
                    userRole.ModifiedOn = Localization.GetUTCDateNow();
                    _userRoleRepository.Add(userRole, true);
                }
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
            return(true);
        }
Esempio n. 3
0
        public async Task <UserRole> GetUserRoleAsync()
        {
            var result = _userRoleRepo.FindAll(x => x.DeleteFlag != DeleteFlg.Delete).ToList();


            if (result.Count > 0)
            {
                return(result[0]);
            }
            return(null);
        }
Esempio n. 4
0
        public async Task <object> GetAllUserInfo()
        {
            var appsettings   = _configuration.GetSection("AppSettings").Get <Appsettings>();
            var DMRSystemCode = appsettings.SystemCode;

            using var client = new HttpClient();
            var response = await client.GetAsync($"{appsettings.API_AUTH_URL}Users/GetUserBySystemID/{DMRSystemCode}");

            var data = await response.Content.ReadAsStringAsync();

            var users    = JsonConvert.DeserializeObject <List <UserDto> >(data);
            var userRole = await _repoUserRole.FindAll().Include(x => x.Role).ToListAsync();

            var buildingUser = await _repoBuildingUser.FindAll().Include(x => x.Building).ToListAsync();

            var result = new List <UserDto>();

            foreach (var x in users)
            {
                var userRoleItem     = userRole.FirstOrDefault(a => a.UserID == x.ID);
                var buildingUserItem = buildingUser.FirstOrDefault(a => a.UserID == x.ID);
                result.Add(new UserDto
                {
                    ID             = x.ID,
                    Username       = x.Username,
                    Password       = x.Password,
                    EmployeeID     = x.EmployeeID,
                    Email          = x.Email,
                    PasswordSalt   = x.PasswordSalt,
                    PasswordHash   = x.PasswordHash,
                    IsLock         = userRoleItem != null ? userRoleItem.IsLock : false,
                    SystemID       = DMRSystemCode,
                    UserRoleID     = userRoleItem != null ? userRoleItem.RoleID : 0,
                    BuildingUserID = buildingUserItem != null ? buildingUserItem.BuildingID : 0,
                    Role           = userRoleItem != null ? userRoleItem.Role.Name : "#N/A",
                    Building       = buildingUserItem != null ? buildingUserItem.Building.Name : "#N/A",
                });
            }

            return(result);
        }
Esempio n. 5
0
 public async Task <List <UserRoleDto> > GetAllAsync()
 {
     return(await _userRoleRepository.FindAll().ProjectTo <UserRoleDto>(_configMapper).ToListAsync());
 }