public async Task <bool> Handle(CreatePetRequest message, IOutboundPort <NewEntityResponse <int> > outputPort) { var user = await _userStore.GetUserById(message.User); if (user == null) { return(false); } // Compose a new Pet instance: var pet = _entityFactory.GetPetBuilder() .SetName(message.Name) .SetSpecies(await _store.GetSpeciesById(message.SpeciesType)) .SetMorph(message.Morph) .SetOwner(user) .Build(); var id = await _store.Create(pet); var response = new NewEntityResponse <int> { Id = id }; outputPort.Handle(response); return(true); }
public Pet AddPet(CreatePetRequest newPetObj) { using (var db = new SqlConnection(ConnectionString)) { var newPetQuery = db.QueryFirstOrDefault <Pet>(@" Insert into pets (name, userId, breed, dateOfBirth, dateOfDeath, burialStreet, burialCity, burialState, burialZipCode, burialPlot) Output inserted.* Values(@name,@userId,@breed,@dateOfBirth,@dateOfDeath,@burialStreet,@burialCity,@burialState,@burialZipCode,@burialPlot)", new { newPetObj.Name, newPetObj.UserId, newPetObj.Breed, newPetObj.DateOfBirth, newPetObj.DateOfDeath, newPetObj.BurialStreet, newPetObj.BurialCity, newPetObj.BurialState, newPetObj.BurialZipCode, newPetObj.BurialPlot }); if (newPetQuery != null) { return(newPetQuery); } throw new Exception("No Pet Found"); } }
public ActionResult AddPet(CreatePetRequest createRequest) { if (!_validator.Validate(createRequest)) { return(BadRequest(new { error = "pets must have a name, user Id, breed, date of birth, and date of death." })); } var newPet = _petRepository.AddPet(createRequest); return(Created($"api/pets/{newPet.Id}", newPet)); }
public override async Task <ActionResult <EmployeeResponse> > HandleAsync(UpdateEmployeeRequest request) { var employee = await _employeeService.AddPetAsync(CreatePetRequest.FromPetRequest(request.Pets)); if (employee is null) { return(NotFound()); } return(EmployeeResponse.FromEmployeeDTO(employee)); }
public void Create(CreatePetRequest request) { _endpoint.Send <ICreatePetCommand>(new { OwnerId = request.OwnerId, OwnerEmail = request.OwnerEmail, Name = request.Name, Breed = request.Breed, Sex = request.Sex, Species = request.Species, ColorHex = request.ColorHex, BirthDate = request.BirthDate, ProfileImageUrl = request.ProfileImageUrl, MessageType = (typeof(ICreatePetCommand)).Name, Timestamp = DateTimeOffset.UtcNow }).Wait(); }
public async Task <IActionResult> CreateNewPet([FromBody] NewPetForm petInfo) { if (!ModelState.IsValid || string.IsNullOrWhiteSpace(petInfo.Name)) { return(BadRequest(ModelState)); } // Convert into core Dto.NewPetRequest. var request = new CreatePetRequest { Name = petInfo.Name, SpeciesType = petInfo.SpeciesId, Morph = petInfo.Morph, User = _claimsCompat.ExtractFirstIdClaim(HttpContext.User) }; var port = new BasicPresenter <NewEntityResponse <int> >(); var success = await _addPetUseCase.Handle(request, port); return((success) ? new OkObjectResult(port.Response.Id) : BadRequest()); }
public IActionResult Post([FromBody] CreatePetRequest request) { _petService.Create(request); return(NoContent()); }
public bool Validate(CreatePetRequest requestToValidate) { return(!(string.IsNullOrEmpty(requestToValidate.Name) || string.IsNullOrEmpty(requestToValidate.Breed) || string.IsNullOrEmpty(requestToValidate.DateOfBirth.ToString()))); }