public async Task <IActionResult> Edit(int id) { var model = await _departmentRepository.GetAll().Include(a => a.Administrator).AsNoTracking() .FirstOrDefaultAsync(a => a.DepartmentID == id); if (model == null) { ViewBag.ErrorMessage = $"教师{id}的信息不存在,请重试。"; return(View("NotFound")); } var teacherList = TeachersDropDownList(); var dto = new DepartmentCreateViewModel { DepartmentID = model.DepartmentID, Name = model.Name, Budget = model.Budget, StartDate = model.StartDate, TeacherID = model.TeacherID, Administrator = model.Administrator, RowVersion = model.RowVersion, TeacherList = teacherList }; return(View(dto)); }
public ActionResult Create(DepartmentCreateViewModel viewModel) { try { var newDept = viewModel.Department; using (SqlConnection conn = Connection) { conn.Open(); using (SqlCommand cmd = conn.CreateCommand()) { cmd.CommandText = @"INSERT INTO Department (Name, Budget) VALUES (@Name, @Budget);"; cmd.Parameters.Add(new SqlParameter("@Name", newDept.Name)); cmd.Parameters.Add(new SqlParameter("@Budget", newDept.Budget)); cmd.ExecuteNonQuery(); } } return(RedirectToAction(nameof(Index))); } catch { return(View()); } }
public IActionResult Create(DepartmentCreateViewModel model) { var response = ResponseModelFactory.CreateInstance; if (model.Name.Trim().Length <= 0) { response.SetFailed("请输入科室名称"); return(Ok(response)); } using (_dbContext) { if (_dbContext.Department.Count(x => x.Name == model.Name) > 0) { response.SetFailed("科室名已存在"); return(Ok(response)); } var entity = new Department(); entity.DepartmentUuid = Guid.NewGuid(); entity.Name = model.Name; //部门名称 entity.EstablishTime = DateTime.Now.ToString("yyyy-MM-dd"); //添加时间 entity.EstablishName = AuthContextService.CurrentUser.DisplayName; //添加人 entity.IsDeleted = 0; _dbContext.Department.Add(entity); int res = _dbContext.SaveChanges(); if (res > 0) { ToLog.AddLog("添加", "成功:添加:部门信息一条数据", _dbContext); } response.SetSuccess(); return(Ok(response)); } }
public ActionResult CreateDepartmentPost(DepartmentCreateViewModel model) { if (ModelState.IsValid) { var department = new DepartmentRecord { Name = model.Name }; //create parent department. if (model.ParentDepartmentId.HasValue) { department.ParentDepartmentRecord = _departmentService.GetDepartment(model.ParentDepartmentId.Value); } //create postions. foreach (var item in model.AvailablePositions.Where(c => c.IsSelected).ToList()) { department.PositionDepartmentRecords.Add(new PositionsDepartmentRecord { DepartmentRecord = department, PositionRecord = new PositionRecord { Id = item.Id } }); } _departmentService.CreateDepartment(department); _orchardServices.Notifier.Add(NotifyType.Information, T("The department information has been created.")); return(RedirectToAction("EditDepartment", new { id = department.Id })); } model.UpdateViewModel(_departmentService.ListDepartments(), _departmentService.ListPositions()); return(View(model)); }
public IActionResult Create(DepartmentCreateViewModel model) { var response = ResponseModelFactory.CreateInstance; if (model.DepartmentName.Trim().Length <= 0) { response.SetFailed("请输入科室名称"); return(Ok(response)); } using (_dbContext) { if (_dbContext.Department.Count(x => x.DepartmentName == model.DepartmentName) > 0) { response.SetFailed("科室名已存在"); return(Ok(response)); } var entity = new Department(); entity.DepartmentUuid = Guid.NewGuid(); entity.DepartmentName = model.DepartmentName; entity.AddTime = DateTime.Now.ToString("yyyy-MM-dd"); entity.AddPeople = AuthContextService.CurrentUser.DisplayName; entity.IsDeleted = 0; _dbContext.Department.Add(entity); _dbContext.SaveChanges(); response.SetSuccess(); return(Ok(response)); } }
public IActionResult Edit(DepartmentCreateViewModel model) { var response = ResponseModelFactory.CreateInstance; if (ConfigurationManager.AppSettings.IsTrialVersion) { response.SetIsTrial(); return(Ok(response)); } using (_dbContext) { if (_dbContext.Department.Count(x => x.Name == model.Name && x.DepartmentUuid != model.DepartmentUuid) > 0) { response.SetFailed("科室已存在"); return(Ok(response)); } var entity = _dbContext.Department.FirstOrDefault(x => x.DepartmentUuid == model.DepartmentUuid); entity.Name = model.Name; int res = _dbContext.SaveChanges(); if (res > 0) { ToLog.AddLog("编辑", "成功:编辑:部门信息一条数据", _dbContext); } return(Ok(response)); } }
public static DepartmentAggregate ToModel(this DepartmentCreateViewModel model) { DepartmentAggregate entity = null; if (model != null) { var ids = Regex.Split(model.FacilityId, @"#\$#").ToList(); string fId = ids[0]; string fName = ""; if (ids.Count() > 1) { fName = ids[1]; } entity = new DepartmentAggregate() { Id = Guid.NewGuid(), Name = model.Name, FacilityId = new Guid(fId), FacilityName = fName, Description = model.Description, }; } return(entity); }
public async Task <ActionResult> Create(DepartmentCreateViewModel model) { if (ModelState.IsValid) { if (!string.IsNullOrEmpty(model.Name)) { var depart = await DepartmentManager.FindDepartmentByNameAsync(model.Name); if (depart == null) { depart = new Department() { Name = model.Name }; await DepartmentManager.AddEntityAsync(depart); return(RedirectToAction("Index")); } else { ModelState.AddModelError("", "已有相同名称"); } } else { ModelState.AddModelError("", "不能为空"); } } return(View(model)); }
public ActionResult CreateDepartment() { var viewModel = new DepartmentCreateViewModel(); viewModel.UpdateViewModel(_departmentService.ListDepartments(), _departmentService.ListPositions()); return(View(viewModel)); }
public ActionResult Create(DepartmentCreateViewModel viewModel) { try { using (SqlConnection conn = Connection) { conn.Open(); using (SqlCommand cmd = conn.CreateCommand()) { cmd.CommandText = @"INSERT INTO Department ([name], budget) VALUES (@name, @budget)"; cmd.Parameters.Add(new SqlParameter("@name", viewModel.Department.Name)); cmd.Parameters.Add(new SqlParameter("@budget", viewModel.Department.Budget)); cmd.ExecuteReader(); return(RedirectToAction(nameof(Index))); } } } catch { return(View()); } }
public IActionResult Create() { var dto = new DepartmentCreateViewModel { TeacherList = TeacherDropDownList() }; return(View(dto)); }
public ActionResult Create(DepartmentCreateViewModel model) { if (ModelState.IsValid) { this.departments.Create(model.Name, model.Description, model.DivisionId); TempData["Success"] = SuccessMessagesConstants.DepartmentCreated; return(Redirect("~/admin/departments")); } return(Create()); }
public ActionResult Create(DepartmentCreateViewModel model) { if (ModelState.IsValid) { this.departments.Create(model.Name, model.Description, model.DivisionId); TempData["Success"] = SuccessMessagesConstants.DepartmentCreated; return Redirect("~/admin/departments"); } return Create(); }
public HttpResponseMessage PostDept(DepartmentCreateViewModel model) { if (!ModelState.IsValid) { return(new HttpResponseMessage(HttpStatusCode.BadRequest)); } Department item = Mapper.Map <DepartmentCreateViewModel, Department>(model); _departmentService.Add(item); _db.SaveChanges(); return(new HttpResponseMessage(HttpStatusCode.OK)); }
public static void UpdateViewModel(this DepartmentCreateViewModel model, IList <DepartmentRecord> departments, IList <PositionRecord> positions) { var availablePositions = positions.Select(c => c.CreateAvailablePosition()).ToList(); if (model.AvailablePositions != null) { foreach (var item in availablePositions) { item.IsSelected = (model.AvailablePositions.Any(c => c.Id == item.Id && c.IsSelected)); } } model.AvailableDepartments = departments; model.AvailablePositions = availablePositions; }
public IActionResult Post(DepartmentCreateViewModel model) { if (this.ModelState.IsValid) { Department department = model.ToEntity(); var repo = this.Storage.GetRepository <IDepartmentRepository>(); repo.Create(department, GetCurrentUserName()); this.Storage.Save(); return(Ok(new { success = true })); } return(BadRequest(new { success = false })); }
public async Task CreatePost_ReturnsRedirectToActionResult_Index() { var vm = new DepartmentCreateViewModel { Name = "Biology", Budget = 100, StartDate = DateTime.Parse("2007-09-01"), InstructorID = 1 }; var result = await sut.Create(vm); Assert.IsType <RedirectToActionResult>(result); Assert.Equal("Index", ((RedirectToActionResult)result).ActionName); }
public async Task <IActionResult> Create(DepartmentCreateViewModel vm) { if (ModelState.IsValid) { var department = _mapper.Map <Department>(vm); await _departmentRepo.AddAsync(department); await _departmentRepo.SaveChangesAsync(); return(RedirectToAction("Index", new { newid = department.ID })); } ViewData["InstructorID"] = new SelectList(_instructorRepo.GetAll(), "ID", "FullName", vm.InstructorID); return(View(vm)); }
public IActionResult Create(DepartmentCreateViewModel model) { if (ModelState.IsValid) { var department = _mapper.Map <Department>(model); bool isSaved = _departmentRepository.Add(department); if (isSaved) { ViewBag.Message = "Saved Successfully!"; } } ModelState.Clear(); return(View()); }
public async Task <IActionResult> Create([FromBody] DepartmentCreateViewModel input) { var user = User.GetDetails(); var department = new Department(input.Name, input.Code, input.Status, user.Id); if (await _unitOfWork.Departments.AnyAsync(department)) { return(BadRequest("Department Already Exists")); } _unitOfWork.Departments.Add(department); await _unitOfWork.CompleteAsync(user.Id); return(Ok(department)); }
//[Authorize(Policy = "CreateRolePolicy")] public async Task <IActionResult> Create(DepartmentCreateViewModel model) { if (ModelState.IsValid) { Department department = new Department { Name = model.Department.Name, Description = model.Department.Description }; await departmentService.AddDepartment(department); ViewBag.message = $"Employee {model.Department.Name} is successfullly saved to DataBase"; return(RedirectToAction("details", new { id = department.Id })); } return(View()); }
public async Task <IActionResult> Create(DepartmentCreateViewModel input) { if (ModelState.IsValid) { Department model = new Department { StartDate = input.StartDate, DepartmentID = input.DepartmentID, TeacherID = input.TeacherID, Budget = input.Budget, Name = input.Name }; await _departmentRepository.InsertAsync(model); return(RedirectToAction(nameof(Index))); } return(View()); }
public async Task <IActionResult> Create(DepartmentCreateViewModel model) { if (ModelState.IsValid) { var department = new Department { Id = model.Id, DepartmentCode = model.DepartmentCode, DepartmentName = model.DepartmentName, Address = model.Address, Status = true }; await _departmentService.CreateAsync(department); return(RedirectToAction(nameof(Index))); } return(View()); }
public async Task <ActionResult> Create(DepartmentCreateViewModel model) { try { if (ModelState.IsValid) { var dep = model.ToModel(); await this._departmentAggregateManagementService.AddDepartmentAsync(dep); return(RedirectToAction("Index")); } return(View(model)); // TODO: Add insert logic here } catch { return(View(model)); } }
public async Task <IHttpActionResult> PostDepartment(DepartmentCreateViewModel model) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var department = await _departments.Add(new Department { Name = model.Name }); try { var result = (DepartmentResultViewModel)department; return(CreatedAtRoute("DefaultApi", new { id = department.Id }, result)); } catch (Exception e) { return(BadRequest(e.Message)); } }
public async Task <IActionResult> Edit(int id) { // var department = _dbcontext.Departments // .Single(b => b.DepartmentID == id); ////Collection()方法表示,实体与另外一个Collection集合之间的关联关系 //_dbcontext.Entry(department) // .Collection(b => b.Courses) // .Load(); //// Reference()方法表示,可用于两个实体时间的关联 //_dbcontext.Entry(department) // .Reference(b => b.Administrator) // .Load(); var department = await _departmentRepository.FirstOrDefaultAsync(a => a.DepartmentID == id); var model = await _departmentRepository.GetAll().Include(a => a.Administrator).AsNoTracking() .FirstOrDefaultAsync(a => a.DepartmentID == id); if (model == null) { ViewBag.ErrorMessage = $"教师{id}的信息不存在,请重试。"; return(View("NotFound")); } var teacherList = TeachersDropDownList(); var dto = new DepartmentCreateViewModel { DepartmentID = model.DepartmentID, Name = model.Name, Budget = model.Budget, StartDate = model.StartDate, TeacherID = model.TeacherID, Administrator = model.Administrator, RowVersion = model.RowVersion, TeacherList = teacherList }; return(View(dto)); }
public async Task <ActionResult> Create() { try { DepartmentCreateViewModel model = new DepartmentCreateViewModel(); var fmodel = await _organizationManagementService.GetAllFacilitiesAsync(); if (fmodel != null) { model.FacilitiesModel = fmodel.Select(x => new SelectListItem() { Value = x.Id.ToString() + "#$#" + x.Name.Replace(" ", "#+#"), Text = x.Name }); } return(View(model)); } catch { return(View()); } }
public ActionResult Create(DepartmentCreateViewModel model) { if (ModelState.IsValid) { //Debug Purpose to see if we are getting the data Debug.WriteLine("I'm pulling data of " + model.name); if (model.name != "") { //The query to add a new Department string query = "INSERT INTO Departments (departmentName) VALUES (@departmentName)"; SqlParameter sqlparam = new SqlParameter("@departmentName", model.name); //Run the sql command db.Database.ExecuteSqlCommand(query, sqlparam); //Go back to the list of Department to see the added Department return(RedirectToAction("Index")); } } //Something failed, redisplay form return(View(model)); }
public async Task <IActionResult> Edit(DepartmentCreateViewModel input) { if (ModelState.IsValid) { var model = await _departmentRepository.GetAll().Include(i => i.Administrator).FirstOrDefaultAsync(i => i.DepartmentID == input.DepartmentID); if (model == null) { ViewBag.Title = $"学院ID为{input.DepartmentID}的信息不存在,请稍后重试"; return(View("NotFound")); } model.DepartmentID = input.DepartmentID; model.Name = input.Name; model.Budget = input.Budget; model.StartDate = input.StartDate; model.TeacherID = input.TeacherID; // 从数据库中获取Department实体中RowVersion属性,然后将input.RowVersion赋值到OriginalValue中 _dbContext.Entry(model).Property("RowVersion").OriginalValue = input.RowVersion; try { await _departmentRepository.UpdateAsync(model); return(RedirectToAction(nameof(Index))); } catch (DbUpdateConcurrencyException ex) { //触发异常后,获取异常实体 var exceptionEntry = ex.Entries.Single(); var clientValues = (Department)exceptionEntry.Entity; // 从数据库获取异常实体信息 var databaseEntity = exceptionEntry.GetDatabaseValues(); if (databaseEntity == null) { ModelState.AddModelError(string.Empty, "无法进行数据的修改。该学院信息已被其他人所删除!"); } else { // 将异常实体中的错误信息精确到具体字段传递到视图中 var databaseValues = (Department)databaseEntity.ToObject(); if (databaseValues.Name != clientValues.Name) { ModelState.AddModelError("Name", $"当前值:{databaseValues.Name}"); } if (databaseValues.Budget != clientValues.Budget) { ModelState.AddModelError("Budget", $"当前值:{databaseValues.Budget}"); } if (databaseValues.StartDate != clientValues.StartDate) { ModelState.AddModelError("StartDate", $"当前值:{databaseValues.StartDate}"); } if (databaseValues.TeacherID != clientValues.TeacherID) { var teacherEntity = await _teacherRepository.FirstOrDefaultAsync(i => i.Id == databaseValues.TeacherID); ModelState.AddModelError("TeacherID", $"当前值:{teacherEntity?.Name}"); } ModelState.AddModelError(string.Empty, "您正在编辑的记录已经被其他用户所修改,编辑操作已经被取消,数据库当前值已显示到页面上,请再次保存,或返回列表"); input.RowVersion = databaseValues.RowVersion; input.TeacherList = TeacherDropDownList(); ModelState.Remove("RowVersion"); } } } return(View(input)); }
public async Task <IActionResult> Edit(DepartmentCreateViewModel input) { if (ModelState.IsValid) { var model = await _departmentRepository.GetAll().Include(a => a.Administrator).FirstOrDefaultAsync(a => a.DepartmentId == input.DepartmentId); if (model == null) { ViewBag.ErrorMessage = $"学院信息Id为{input.DepartmentId}的信息不存在!"; return(View("NotFound")); } model.DepartmentId = input.DepartmentId; model.Name = input.Name; model.Budget = input.Budget; model.Administrator = input.Administrator; model.StartDate = input.StartDate; model.TeacherId = input.TeacherId; //从数据中获取实体中的RowVersion属性,然后将当前用户提交的RowVersion赋值到OriginalValue中,EF Core会对这两个值进行比较 _dbContext.Entry(model).Property("RowVersion").OriginalValue = input.RowVersion; try { //UpdateAsync方法执行SaveChangesAsync()方法时,如果检测到并发冲突则会触发DbUpdateConcurrencyException异常 await _departmentRepository.UpdateAsync(model); return(RedirectToAction(nameof(Index))); } catch (DbUpdateConcurrencyException ex) { //获取异常的实体 var exceptionEntry = ex.Entries.Single(); var clientValues = (Department)exceptionEntry.Entity; //从数据库中获取实体异常信息 var databaseEntry = exceptionEntry.GetDatabaseValues(); if (databaseEntry == null) { ModelState.AddModelError(string.Empty, "无法进行数据修改,该信息已经被其他人所删除!"); } else { var databaseValues = (Department)databaseEntry.ToObject(); if (databaseValues.Name != clientValues.Name) { ModelState.AddModelError("Name", $"当前值:{databaseValues.Name}"); } if (databaseValues.Budget != clientValues.Budget) { ModelState.AddModelError("Budget", $"当前值:{databaseValues.Budget}"); } if (databaseValues.StartDate != clientValues.StartDate) { ModelState.AddModelError("StartDate", $"当前值:{databaseValues.StartDate}"); } if (databaseValues.TeacherId != clientValues.TeacherId) { var teacherEntity = await _teacherRepository.FirstOrDefaultAsync(a => a.Id == databaseValues.TeacherId); ModelState.AddModelError("TeacherId", $"当前值:{teacherEntity?.Name}"); } ModelState.AddModelError(string.Empty, $"你正在编辑的记录已经被其他用户修改,编辑操作已经被取消,数据库当前的值已经显示在页面上,请再次单击保存,否则请返回列表。"); input.RowVersion = databaseValues.RowVersion; //初始化教师列表 input.TeacherList = TeachersDropDownList(); ModelState.Remove("RowVersion"); } } } return(View(input)); }
public async Task <ActionResult <ResponseModel> > Create(DepartmentCreateViewModel model) { var response = ResponseModelFactory.CreateInstance; if (model.Name.Trim().Length <= 0) { response.SetFailed("请输入部门名称"); return(Ok(response)); } await using (_dbContext) { if (_dbContext.DncRole.Count(x => x.Name == model.Name) > 0) { response.SetFailed("角色已存在"); return(Ok(response)); } var entity = _mapper.Map <DepartmentCreateViewModel, UserDepartment>(model); entity.CreatedOn = DateTime.Now; entity.Code = RandomHelper.GetRandomizer(8, true, false, true, true); entity.CreatedByUserGuid = AuthContextService.CurrentUser.Guid; entity.CreatedByUserName = AuthContextService.CurrentUser.DisplayName; foreach (var day in model.RestDays) { switch (int.Parse(day)) { case 1: entity.Monday = null; break; case 2: entity.Tuesday = null; break; case 3: entity.Wednesday = null; break; case 4: entity.Thursday = null; break; case 5: entity.Friday = null; break; case 6: entity.Saturday = null; break; case 7: entity.Sunday = null; break; default: break; } } await _dbContext.UserDepartment.AddAsync(entity); await _dbContext.SaveChangesAsync(); response.SetSuccess(); return(Ok(response)); } }