Пример #1
0
        public async Task <IActionResult> Edit(int id, [Bind("Id")] UserITM userITM)
        {
            if (id != userITM.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(userITM);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!UserITMExists(userITM.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(userITM));
        }
Пример #2
0
        public async Task <IActionResult> Create(AddUserViewModel model)
        {
            if (ModelState.IsValid)
            {
                var user = new User
                {
                    Document  = model.Document,
                    Address   = model.Address,
                    Email     = model.Username,
                    FirstName = model.FirstName,
                    LastName  = model.LastName,
                    CellPhone = model.CellPhone,
                    UserName  = model.Username,
                    Semester  = model.Semester,
                    Carnet    = model.Carnet,
                };

                var response = await _userHelper.AddUserAsync(user, model.Password);

                if (response.Succeeded)
                {
                    var userInDB = await _userHelper.GetUserByEmailAsync(model.Username);

                    await _userHelper.AddUserToRoleAsync(userInDB, "Customer");

                    var userITM = new UserITM
                    {
                        AcademicProgram      = new AcademicProgram(),
                        UserType             = new UserType(),
                        VancancyPostulations = new List <VancancyPostulations>(),
                        User = userInDB
                    };

                    _context.UserITMs.Add(userITM);
                    try
                    {
                        await _context.SaveChangesAsync();

                        return(RedirectToAction(nameof(Index)));
                    }
                    catch (Exception ex)
                    {
                        ModelState.AddModelError(string.Empty, ex.ToString());
                        return(View(model));
                    }
                }
                ModelState.AddModelError(string.Empty, response.Errors.FirstOrDefault().Description);
            }
            return(View(model));
        }