public async Task <ActionResult> Post([FromBody] CreationBranchDTO creationBranchDTO) { var entity = mapper.Map <Branch>(creationBranchDTO); context.Add(entity); await context.SaveChangesAsync(); var branchDTO = mapper.Map <BranchDTO>(entity); return(new CreatedAtRouteResult("GetBranch", new { id = branchDTO.Id }, branchDTO)); }
public async Task <ActionResult <Product> > CreateProduct([FromBody] Product product) { context.Products.Add(product); await context.SaveChangesAsync(); return(CreatedAtAction(nameof(GetProductById), new { id = product.Id }, product)); }
public async Task <ActionResult> Post([FromForm] CreationProductDTO creationProductDTO) { var entity = mapper.Map <Product>(creationProductDTO); context.Add(entity); using (var stream = new MemoryStream()) { await creationProductDTO.Image.CopyToAsync(stream); entity.Image = Convert.ToBase64String(stream.ToArray()); } await context.SaveChangesAsync(); var dto = mapper.Map <ProductDTO>(entity); return(new CreatedAtRouteResult("GetProduct", new { id = entity.Id }, dto)); }
public async Task <ActionResult <AccountDto> > CreateAccount(AccountForCreationDto createAccountDto) { // duplicate field validation var usernameExists = await UsernameExists(createAccountDto.Username); if (usernameExists) { return(Conflict("Username already exists")); } var emailExists = await EmailExists(createAccountDto.Email); if (emailExists) { return(Conflict("Email already exists")); } // since contact number is not required we should check if its null first if (createAccountDto.ContactNumber != null) { var contactExists = await ContactExists(createAccountDto.ContactNumber); if (contactExists) { return(Conflict("Contact Number already exists")); } } // map dto to entity var account = mapper.Map <Account> (createAccountDto); // add the registration date account.RegistrationDate = DateTime.Now; // save the account Accounts.Add(account); await context.SaveChangesAsync(); // return account dto at location var accountDto = mapper.Map <AccountDto> (account); return(CreatedAtAction(nameof(GetAccountById), new { id = accountDto.Id }, accountDto)); }