コード例 #1
0
        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}"));
            }
        }
コード例 #2
0
        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);
            }
        }
コード例 #3
0
        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);
        }