Пример #1
0
        public async Task <IActionResult> AddManager(int departmentId)
        {
            var user = await this.userManager.GetUserAsync(this.User);

            var companyId = this.departmentService.GetCompanyIdByDepartmentId(user.DepartmentId);
            var employees = this.employeService.GetAllEmployees <EmployeeSelectList>(companyId);

            var model = new ManagerToDepartmentViewModel {
                DepartmentId = departmentId, Employees = employees
            };

            return(this.View(model));
        }
Пример #2
0
        public async Task <IActionResult> AddManager(ManagerToDepartmentViewModel model)
        {
            if (!this.ModelState.IsValid)
            {
                return(this.View(model));
            }

            var user = await this.userManager.FindByIdAsync(model.UserId);

            var role = await this.userManager.GetRolesAsync(user);

            if (role[0] != GlobalConstant.SystemManagerRole)
            {
                await this.userManager.RemoveFromRoleAsync(user, role[0]);

                await this.userManager.AddToRoleAsync(user, GlobalConstant.SystemManagerRole);
            }

            await this.departmentService.AddManagerAsync(model.UserId, model.DepartmentId);

            await this.employeService.ChangeDepartmentAsync(model.UserId, model.DepartmentId);

            return(this.RedirectToAction("Index"));
        }