public async Task <IHttpActionResult> Post(FailureReportCreationDto dto) { var user = await User.GetEntityAsync(_identityRepo); if (IsDuplicateSubmit(dto, user)) { return(StatusCode(HttpStatusCode.Created)); } var report = new FailureReport { Title = dto.Title, Time = DateTime.UtcNow, State = ReportStates.Waiting, Items = new List <FailureItem>() }; if (!CheckTypesAndAdd(report, dto.Items)) { return(BadRequest("故障项不正确")); } report.Reporter = user; await _failureRepo.CreateAsync(report); return(StatusCode(HttpStatusCode.Created)); }