public async Task <IActionResult> AddRoasterRequest([FromBody] RoasterRequest roasterRequest) { try { var roasterrequest = RoasterRequest.New(roasterRequest.Roaster, roasterRequest.Address, roasterRequest.TagString); roasterrequest.Picture = PictureRequest.New(roasterrequest.Picture.Bytes); _roasterRequestRepository.Add(roasterRequest); await _roasterRequestRepository.SaveChangesAsync(); return(Ok()); } catch (Exception e) { return(BadRequest($"{e.Message}")); } }
public async Task <int> UpdateRoasterRequestAsync(RoasterRequest entity, IFormFile picture) { try { _logger.Information("Roaster request service layer access in progress..."); await BytePictureBuilder.ReplacePictureRequest(entity.Id, picture, _pictureRequestRepository); _roasterRequestRepository.Update(entity); await _roasterRequestRepository.SaveChangesAsync(); _logger.Information($"Roaster requests table has been modified. Updated Roaster request:\n Id:{entity.Id}"); return(0); } catch (Exception e) { _logger.Error($"Roaster request service layer error occured! Error text message: {e.Message}"); return(-1); } }
public static RoasterRequest GenerateRoasterRequest(RoasterRequestDT roasterRequestDT, IPictureRequestRepository pictureRequestRepository) { var tags = BuildTagsString(roasterRequestDT.Tags); var roasterRequest = RoasterRequest.New(OwnedRoaster.New(roasterRequestDT.OwnerDT.Name + roasterRequestDT.OwnerDT.Surname, roasterRequestDT.OwnerDT.PhoneNumber, roasterRequestDT.RoasterDT.Name, 0, roasterRequestDT.RoasterDT.ContactNumber, roasterRequestDT.RoasterDT.ContactEmail, roasterRequestDT.RoasterDT.WebSiteLink, roasterRequestDT.RoasterDT.VkProfileLink, roasterRequestDT.RoasterDT.InstagramProfileLink, roasterRequestDT.RoasterDT.TelegramProfileLink, roasterRequestDT.RoasterDT.Description, DateTime.Now), OwnedAddress.New(roasterRequestDT.AddressDT.AddressStr, roasterRequestDT.AddressDT.OpeningHours, roasterRequestDT.AddressDT.Latitude, roasterRequestDT.AddressDT.Longitude), tags); byte[] picture; try { picture = roasterRequestDT.CharPicture.Length > 0 ? Convert.FromBase64String(roasterRequestDT.CharPicture.Substring(roasterRequestDT.CharPicture.LastIndexOf(',') + 1)) : new byte[0]; } catch { picture = new byte[0]; } BytePictureBuilder.BindPictureRequest(roasterRequest.Id, picture, pictureRequestRepository); return(roasterRequest); }