/// <summary> /// 更新专业班级信息 /// </summary> /// <param name="webModel">专业班级编辑页视图模型</param> /// <param name="context">数据库上下文对象</param> public static async void UpdateAsync(MajorClassEditViewModel webModel, ApplicationDbContext context) { var model = await context.MajorClass.FirstOrDefaultAsync(i => i.Id == Convert.ToInt64(webModel.Id)); if (model == null) { return; } model = UpdateModel(webModel, model); //Get Foreign Key Association Table Information // var staff = await context.IdentityUser.Where(i => i.Id == Convert.ToInt64(webModel.InstructorId) && i.AccountType == 1).FirstOrDefaultAsync(); var department = await context.Department.Where(i => i.Id == Convert.ToInt64(webModel.DepartmentId)).FirstOrDefaultAsync(); model.InstructorId = Convert.ToInt64(webModel.InstructorId); model.InstructorFK = staff.IdentityUserOID; model.InstructorName = staff.Name; model.DepartmentId = Convert.ToInt64(webModel.DepartmentId); model.DepartmentFK = department.DepartmentOID; model.DepartmentName = department.Name; }
/// <summary> /// 获取专业班级信息 /// </summary> /// <param name="id">专业班级编号</param> /// <param name="context">数据库连接上下文对象</param> /// <returns></returns> public async Task <MajorClassEditViewModel> GetMajorClassAsync(long id, ApplicationDbContext context) { var webModel = new MajorClassEditViewModel(); try { var model = await SchoolRepository.GetMajorClassAsync(id, context); webModel.Id = model.Id.ToString(); webModel.IsEnabled = (Enable)(model.IsEnabled ? 1 : 0); webModel.Name = model.Name; webModel.QQ = model.QQ; webModel.Wechat = model.Wechat; webModel.DepartmentId = model.DepartmentId.ToString(); webModel.DepartmentName = model.DepartmentName; webModel.InstructorId = model.InstructorId.ToString(); webModel.InstructorName = model.InstructorName; webModel.MajorCode = model.MajorCode.ToString(); webModel.MajorName = model.MajorName; webModel.SessionNum = model.SessionNum; } catch (Exception ex) { _logger.LogError("获取专业班级数据失败:{0},\r\n内部错误信息:{1}", ex.Message, ex.InnerException.Message); } return(webModel); }
/// <summary> /// 新增专业班级信息 /// </summary> /// <param name="webModel">专业班级编辑页视图模型</param> /// <param name="context">数据库上下文对象</param> /// <returns></returns> public static async Task <MajorClass> InsertAsync(MajorClassEditViewModel webModel, ApplicationDbContext context) { //Get Foreign Key Association Table Information // var staff = await context.IdentityUser.AsNoTracking().Where(i => i.Id == Convert.ToInt64(webModel.InstructorId) && i.AccountType == 1).FirstOrDefaultAsync(); var department = await context.Department.AsNoTracking().Where(i => i.Id == Convert.ToInt64(webModel.DepartmentId)).FirstOrDefaultAsync(); //return error if (staff == null || department == null) { return(new MajorClass { Id = -1 }); } var model = InsertModel(webModel); model.InstructorId = Convert.ToInt64(webModel.InstructorId); model.InstructorFK = staff.IdentityUserOID; model.InstructorName = staff.Name; model.DepartmentId = Convert.ToInt64(webModel.DepartmentId); model.DepartmentFK = department.DepartmentOID; model.DepartmentName = department.Name; await context.MajorClass.AddAsync(model); return(model); }
/// <summary> /// 获取编辑页面下拉列表 /// </summary> /// <param name="context">数据库连接上下文对象</param> /// <returns></returns> public async Task <MajorClassEditViewModel> GetDropDownListAsync(MajorClassEditViewModel webModel, ApplicationDbContext context) { //Get Source Data var departmentList = await SchoolRepository.GetDepartmentList(context); var staffList = await SchoolRepository.GetStaffList(context); if (departmentList != null && departmentList.Any()) { webModel.DepartmentList = departmentList.Select(item => new DepartmentDropDown { Id = item.Id.ToString(), Name = item.Name }).ToList(); } if (staffList != null && staffList.Any()) { webModel.StaffList = staffList.Select(item => new StaffDropDown { Id = item.Id.ToString(), Name = item.Name }).ToList(); } return(webModel); }
public async Task <IActionResult> EditMajorClass(MajorClassEditViewModel webModel) { if (ModelState.IsValid) { bool flag; if (string.IsNullOrEmpty(webModel.Id)) { //Add Major Class flag = await _service.InsertMajorClassAsync(webModel, _context); } else { //Update Major Class flag = await _service.UpdateMajorClassAsync(webModel, _context); } return(Json(new { success = flag, msg = flag ? "专业班级信息编辑成功" : "专业班级信息编辑失败" })); } return(Json(new { success = false, msg = this.ModelState.Keys.SelectMany(key => this.ModelState[key].Errors).FirstOrDefault().ErrorMessage })); }
public async Task <IActionResult> EditMajorClass(string id) { MajorClassEditViewModel webModel = new MajorClassEditViewModel(); if (!string.IsNullOrEmpty(id)) { //编辑信息,加载部门/院系相关信息 webModel = await _service.GetMajorClassAsync(Convert.ToInt64(id), _context); } //加载下拉列表信息 webModel = await _service.GetDropDownListAsync(webModel, _context); return(View(webModel)); }
/// <summary> /// Insert Major Class Entity /// </summary> /// <param name="webModel"></param> /// <returns></returns> private static MajorClass InsertModel(MajorClassEditViewModel webModel) { return(new MajorClass { Name = webModel.Name, MajorCode = Convert.ToInt32(webModel.MajorCode), IsEnabled = (int)webModel.IsEnabled == 1, MajorName = webModel.MajorName, SessionNum = webModel.SessionNum, Wechat = webModel.Wechat, QQ = webModel.QQ, CreatedId = CurrentUser.UserId, CreatedBy = CurrentUser.UserOID, CreatedName = CurrentUser.UserName }); }
/// <summary> /// Update Major Class Entity /// </summary> /// <param name="webModel"></param> /// <param name="model"></param> private static MajorClass UpdateModel(MajorClassEditViewModel webModel, MajorClass model) { model.Name = webModel.Name; model.MajorCode = Convert.ToInt32((webModel.MajorCode)); model.IsEnabled = (int)webModel.IsEnabled == 1; model.MajorName = webModel.MajorName; model.SessionNum = webModel.SessionNum; model.Wechat = webModel.Wechat; model.QQ = webModel.QQ; model.InstructorId = Convert.ToInt64(webModel.InstructorId); model.DepartmentId = Convert.ToInt64(webModel.DepartmentId); model.ModifiedOn = DateTime.Now; model.ModifiedId = CurrentUser.UserId; model.ModifiedBy = CurrentUser.UserOID; model.ModifiedName = CurrentUser.UserName; return(model); }
/// <summary> /// 更新专业班级数据 /// </summary> /// <param name="webModel">编辑页视图Model</param> /// <param name="context">数据库连接上下文对象</param> /// <returns></returns> public async Task <bool> UpdateMajorClassAsync(MajorClassEditViewModel webModel, ApplicationDbContext context) { try { //Update Major Class Data SchoolRepository.UpdateAsync(webModel, context); //Add Operate Information var operate = string.Format("修改专业班级信息,专业班级编号:{0}", webModel.Id); PSURepository.InsertRecordAsync("MajorClass", "SchoolDomain", "UpdateMajorClassAsync", operate, (short)PSURepository.OperateCode.Update, Convert.ToInt64(webModel.Id), context); var index = await context.SaveChangesAsync(); return(index == 2); } catch (Exception ex) { _logger.LogError("更新专业班级失败:{0},\r\n内部错误信息:{1}", ex.Message, ex.InnerException.Message); return(false); } }
/// <summary> /// 新增专业班级信息 /// </summary> /// <param name="webModel">编辑页视图Model</param> /// <param name="context">数据库连接上下文对象</param> /// <returns></returns> public async Task <bool> InsertMajorClassAsync(MajorClassEditViewModel webModel, ApplicationDbContext context) { try { //Add the MajorClass Data var model = await SchoolRepository.InsertAsync(webModel, context); if (model.Id == -1) { return(false); } //Make the transaction commit var index = await context.SaveChangesAsync(); return(index == 1); } catch (Exception ex) { _logger.LogError("创建新专业班级失败:{0},\r\n内部错误详细信息:{1}", ex.Message, ex.InnerException.Message); return(false); } }