public async Task <IActionResult> Reply(QuestionReplyViewModel webModel) { if (ModelState.IsValid) { bool flag; if (string.IsNullOrEmpty(webModel.Id)) { return(Json(new { success = false, msg = "回复学生疑问信息失败,问题编号为空" })); } else { //Update Question flag = await _service.ReplyQuestionAsync(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 })); }
/// <summary> /// 获取学生疑问信息 /// </summary> /// <param name="id">问题编号</param> /// <param name="context">数据库上下文对象</param> /// <returns></returns> public async Task <QuestionReplyViewModel> GetQuestionAsync(long id, ApplicationDbContext context) { var webModel = new QuestionReplyViewModel(); try { var model = await QuestionRepository.GetQuestionAsync(id, context); webModel.Id = model.Id.ToString(); webModel.AskForName = model.AskForName; webModel.AskTime = model.AskTime.ToString("yyyy-MM-dd HH:mm:ss"); webModel.Content = model.Content; webModel.IsReply = model.IsReply; webModel.ReplyContent = model.ReplyContent; webModel.ReplyId = model.ReplyId; webModel.ReplyName = model.ReplyName; webModel.ReplyTime = model.ReplyTime.ToString("yyyy-MM-dd HH:mm:ss"); webModel.StuName = model.StuName; } catch (Exception ex) { _logger.LogError("获取疑问信息数据失败:{0},\r\n内部错误信息:{1}", ex.Message, ex.InnerException.Message); } return(webModel); }
/// <summary> /// 回复疑问信息 /// </summary> /// <param name="webModel">疑问信息回复页视图Model</param> /// <param name="context">数据库上下文对象</param> public static async void ReplyQuestionAsync(QuestionReplyViewModel webModel, ApplicationDbContext context) { var model = await context.Question.FirstOrDefaultAsync(i => i.Id == Convert.ToInt64(webModel.Id)); if (model == null) { return; } //Update model.IsReply = true; model.ReplyContent = webModel.ReplyContent; model.ReplyFK = CurrentUser.UserOID; model.ReplyId = CurrentUser.UserId; model.ReplyName = CurrentUser.UserName; model.ReplyTime = DateTime.Now; }
/// <summary> /// 回复学生疑问信息 /// </summary> /// <param name="webModel">回复信息页视图Model</param> /// <param name="context">数据库上下文对象</param> /// <returns></returns> public async Task <bool> ReplyQuestionAsync(QuestionReplyViewModel webModel, ApplicationDbContext context) { try { //Update Question Data QuestionRepository.ReplyQuestionAsync(webModel, context); //Add Operate Information var operate = string.Format("回复学生疑问信息,学生疑问编号:{0}", webModel.Id); PSURepository.InsertRecordAsync("Question", "QuestionDomain", "ReplyQuestionAsync", 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); } }