public async Task <ActionResult> Create(CreateWorkerViewModel model, string act) { if (ModelState.IsValid) { byte[] imageData = null; using (var binaryReader = new BinaryReader(model.Avatar.OpenReadStream())) { imageData = binaryReader.ReadBytes((int)model.Avatar.Length); } Worker worker = new Worker() { FullName = model.FullName, Education = model.Education, Status = model.Status, Email = model.Email, EmailConfirmed = model.EmailConfirmed, Position = model.Position, Avatar = imageData }; await db.AddAsync(worker); await db.SaveChangesAsync(); if (act == "Confirm") { return(RedirectToAction(act, new { id = worker.Id })); } return(RedirectToAction(act)); } return(View(model)); }
public async Task <IActionResult> CreateWorker(CreateWorkerViewModel model) { int er = 0; if (ModelState.IsValid && (er = db.Workers.Count(p => p.fioWorker == model.fioWorker)) == 0) { try { Worker worker = new Worker { fioWorker = model.fioWorker, postID = model.postID, dateOfEmployment = model.dateOfEmployment, dateOfDismissal = model.dateOfDismissal, salary = model.salary }; await db.Workers.AddAsync(worker); await db.SaveChangesAsync(); return(RedirectToAction("Workers", new { id = model.postID })); } catch (Exception ex) { } } if (er != 0) { ModelState.AddModelError("fioWorker", "Запись с таким именем уже есть"); } ViewBag.postID = model.postID; return(View(model)); }
public async Task <IActionResult> Create(CreateWorkerViewModel model) { int er = 0; if (ModelState.IsValid && (er = db.Workers.Count(p => p.WorkerFIO == model.WorkerFIO)) == 0) { Worker worker = new Worker { WorkerFIO = model.WorkerFIO, WorkerPost = model.WorkerPost }; await db.Workers.AddAsync(worker); await db.SaveChangesAsync(); return(RedirectToAction("Index")); } if (er != 0) { ModelState.AddModelError("WorkerFIO", "Record with the same FIO already exists"); } return(View(model)); }
public ActionResult CreateWorker() { if (GetMyRoles() != null || GetMyRoles().Contains("admin") || GetMyRoles().Contains("dephead")) { CreateWorkerViewModel model = new CreateWorkerViewModel(); model.DropdownData = new List <SelectListItem>(); foreach (WorkerStatus item in Enum.GetValues(typeof(WorkerStatus))) { model.DropdownData.Add(new SelectListItem { Text = ApplicationHelper.GetWorkerStatusDesc(item), Value = ((int)item).ToString() }); } return(View(model)); } else { ViewBag.Success = false; ViewBag.Message = "У вас нет доступа"; return(View("Result")); } }
public ActionResult CreateWorker(CreateWorkerViewModel model) { if (ModelState.IsValid) { ApplicationDbContext dbContext = new ApplicationDbContext(); var user = new ApplicationUser { UserName = model.Email, Email = model.Email }; string password = ApplicationHelper.GeneratePassword(5); var result = UserManager.Create(user, password); if (result.Succeeded) { if (model.isProfessor) { UserManager.AddToRole(user.Id, "professor"); } else { UserManager.AddToRole(user.Id, "Personal"); } try { Worker worker = new Worker(); worker.Firstname = model.Firstname; worker.MiddleName = model.MiddleName != null ? model.MiddleName : ""; worker.LastName = model.LastName; worker.UserId = user.Id; worker.ScienceDegree = model.ScienceDegree; worker.Status = (WorkerStatus)int.Parse(model.Status); worker.isItProfessor = model.isProfessor; worker.UserName = user.UserName; dbContext.Workers.Add(worker); dbContext.SaveChanges(); ViewBag.Success = true; ViewBag.Message = "Студент:" + worker.LastName + " " + worker.Firstname + " Логин:" + user.Email + " Пароль:" + password; return(View("Result")); } catch (Exception) { var _result = UserManager.Delete(user); ViewBag.Success = false; ViewBag.Message = "Добавление не удалось"; return(View("Result")); } } else { AddErrors(result); } model.DropdownData = new List <SelectListItem>(); foreach (WorkerStatus item in Enum.GetValues(typeof(WorkerStatus))) { model.DropdownData.Add(new SelectListItem { Text = ApplicationHelper.GetWorkerStatusDesc(item), Value = ((int)item).ToString() }); } } return(View(model)); }