public async Task <IActionResult> UpdateOccurence([FromBody] OccurrenceDto occurrenceDto) { try { if (ModelState.IsValid) { if (occurrenceDto.Id == 0) { return(NotFound()); } var result = await _occurenceService.UpdateOccurrence(occurrenceDto); return(Ok(result)); } else { return(BadRequest(ModelState)); } } catch (Exception ex) { return(BadRequest(ex.Message)); } }
/// <summary> /// From Occurrence dto To Occurrence pivot. /// </summary> /// <param name="occurrenceDto">occurrence dto to assemble.</param> /// <returns>Occurrencepivot result.</returns> public static OccurrencePivot ToPivot(this OccurrenceDto occurrenceDto) { if (occurrenceDto == null) { return(null); } return(new OccurrencePivot { OccurrenceStartDate = occurrenceDto.OccurrenceStartDate, OccurrenceEndDate = occurrenceDto.OccurrenceEndDate, OccurrenceLink = occurrenceDto.OccurrenceLink, OccurrenceId = occurrenceDto.OccurrenceId }); }
public async Task <IActionResult> SaveOccurrence([FromForm] OccurrenceDto occurrenceDto, IFormFile formFile) { try { if (ModelState.IsValid) { var result = await _occurenceService.SaveOccurrence(occurrenceDto, formFile, UserId); return(Ok(result)); } else { return(BadRequest(ModelState)); } } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public async Task <OccurrenceDto> UpdateOccurrence(OccurrenceDto occurrenceDto) { var occurrence = await _occurrenceRepository.GetById(occurrenceDto.Id); occurrence.OccurrenceContactType = await _occurrenceContactTypeRepository.GetById(occurrenceDto.OccurrenceContactTypeId); occurrence.OccurrenceSubject = await _occurrenceSubjectRepository.GetById(occurrenceDto.OccurrenceSubjectId); occurrence.OccurrenceStatus = await _occurrenceStatusRepository.GetById(occurrenceDto.OccurrenceStatusId); occurrence.BrazilCTCall = !string.IsNullOrEmpty(occurrenceDto.BrazilCTCall) ? occurrenceDto.BrazilCTCall : ""; if (occurrenceDto.OccurrenceStatusId == (int)OccurrenceStatusEnum.Closed) { occurrence.ClosedAt = DateTime.Now; } await _unitOfWork.CommitAsync(); return(_mapper.Map(occurrence, occurrenceDto)); }
public async Task <OccurrenceDto> SaveOccurrence(OccurrenceDto occurrenceDto, IFormFile formFile, int userId) { if (formFile != null) { if (formFile.Length > 0) { var extensions = Path.GetFileName(formFile.FileName).Split('.').Last().ToUpper(); var fileName = $"{DateTime.Now.Year}" + $"{DateTime.Now.Month.ToString().PadLeft(2, '0')}" + $"{DateTime.Now.Day.ToString().PadLeft(2, '0')}" + $"{DateTime.Now.Hour.ToString().PadLeft(2, '0')}" + $"{DateTime.Now.Minute.ToString().PadLeft(2, '0')}" + $"{DateTime.Now.Second.ToString().PadLeft(2, '0')}.{extensions}"; var path = Path.Combine(_env.WebRootPath, $"Content/Occurrence/{Path.GetFileName(fileName)}"); using (var stream = new FileStream(path, FileMode.Create)) { await formFile.CopyToAsync(stream); } occurrenceDto.File = fileName; } } var occurrence = _mapper.Map(occurrenceDto, new Occurrence()); occurrence.OccurrenceContactType = await _occurrenceContactTypeRepository.GetById(occurrenceDto.OccurrenceContactTypeId); occurrence.OccurrenceSubject = await _occurrenceSubjectRepository.GetById(occurrenceDto.OccurrenceSubjectId); occurrence.OccurrenceStatus = await _occurrenceStatusRepository.GetById(occurrenceDto.OccurrenceStatusId == 0?(int)OccurrenceStatusEnum.Open : occurrenceDto.OccurrenceStatusId); occurrence.ClosedAt = DateTime.MinValue; if (string.IsNullOrEmpty(occurrenceDto.Cpf)) { occurrence.User = await _userService.GetUserById(userId); } else { occurrence.User = (await _userRepository.CustomFind(x => x.Cpf.Equals(occurrenceDto.Cpf))).First(); } occurrence.CreatedAt = DateTime.Now; occurrence.Activated = true; occurrence.Code = new string(Enumerable.Repeat("ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789", 8).Select(s => s[new Random().Next(s.Length)]).ToArray()); _occurrenceRepository.Save(occurrence); await _unitOfWork.CommitAsync(); occurrenceDto.OccurrenceMessage.Occurrence = new OccurrenceDto(); occurrenceDto.OccurrenceMessage.Occurrence.Id = occurrence.Id; await SaveMessage(occurrenceDto.OccurrenceMessage, formFile, userId); return(_mapper.Map(occurrence, occurrenceDto)); }