/// <summary> /// 添加或者修改QuestionRecord的公共方法 /// </summary> /// <param name="input"></param> /// <returns></returns> public async Task <APIResultDto> CreateOrUpdate(QuestionRecordEditDto input) { if (input.Id.HasValue) { if (input.IsPublish == true) { input.PublishTime = DateTime.Now; } var entity = await Update(input); return(new APIResultDto() { Code = 0, Data = entity }); } else { var entity = await Create(input); return(new APIResultDto() { Code = 0, Data = entity }); } }
/// <summary> /// 新增QuestionRecord /// </summary> protected virtual async Task <QuestionRecordEditDto> Create(QuestionRecordEditDto input) { //TODO:新增前的逻辑判断,是否允许新增 var entity = input.MapTo <QuestionRecord>(); entity = await _entityRepository.InsertAsync(entity); await CurrentUnitOfWork.SaveChangesAsync(); return(entity.MapTo <QuestionRecordEditDto>()); }
/// <summary> /// 编辑QuestionRecord /// </summary> protected virtual async Task <QuestionRecord> Update(QuestionRecordEditDto input) { //TODO:更新前的逻辑判断,是否允许更新 var entity = await _entityRepository.GetAsync(input.Id.Value); input.MapTo(entity); // ObjectMapper.Map(input, entity); await _entityRepository.UpdateAsync(entity); await CurrentUnitOfWork.SaveChangesAsync(); return(entity); }
/// <summary> /// 获取编辑 QuestionRecord /// </summary> /// <param name="input"></param> /// <returns></returns> public async Task <GetQuestionRecordForEditOutput> GetForEdit(NullableIdDto <Guid> input) { var output = new GetQuestionRecordForEditOutput(); QuestionRecordEditDto editDto; if (input.Id.HasValue) { var entity = await _entityRepository.GetAsync(input.Id.Value); editDto = entity.MapTo <QuestionRecordEditDto>(); //questionRecordEditDto = ObjectMapper.Map<List<questionRecordEditDto>>(entity); } else { editDto = new QuestionRecordEditDto(); } output.QuestionRecord = editDto; return(output); }