示例#1
0
 public static void BindPictureRequest(Guid roasterReqId, byte[] picture, IPictureRequestRepository pictureReqRepository)
 {
     if (picture != null)
     {
         var bytePicture = PictureRequest.New(picture);
         bytePicture.RoasterRequestId = roasterReqId;
         pictureReqRepository.Add(bytePicture);
     }
 }
示例#2
0
        public static void BindPictureRequest(Guid roasterId, IFormFile picture, IPictureRequestRepository pictureRequestRepository)
        {
            var bytes = GetBytePicture(picture);

            if (bytes != null)
            {
                var bytePicture = PictureRequest.New(bytes);
                bytePicture.RoasterRequestId = roasterId;
                pictureRequestRepository.Add(bytePicture);
            }
        }
示例#3
0
 public RoasterRequestService(IRoasterRepository roasterRepository,
                              IRoasterRequestRepository roasterRequestRepository,
                              IPictureRequestRepository pictureRequestRepository,
                              IPictureRepository pictureRepository,
                              IAddressRepository addressRepository,
                              ITagRepository tagRepository,
                              IRoasterTagRepository roasterTagRepository,
                              ILogger logger)
 {
     _roasterRepository        = roasterRepository ?? throw new ArgumentNullException(nameof(roasterRepository));
     _roasterRequestRepository = roasterRequestRepository ?? throw new ArgumentNullException(nameof(roasterRequestRepository));
     _pictureRepository        = pictureRepository;
     _pictureRequestRepository = pictureRequestRepository;
     _addressRepository        = addressRepository ?? throw new ArgumentNullException(nameof(addressRepository));
     _tagRepository            = tagRepository ?? throw new ArgumentNullException(nameof(tagRepository));
     _roasterTagRepository     = roasterTagRepository ?? throw new ArgumentNullException(nameof(roasterTagRepository));
     _logger = logger ?? throw new ArgumentNullException(nameof(logger));
 }
示例#4
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);
        }
示例#5
0
        public static async Task ReplacePictureRequest(Guid roasterReqId, IFormFile picture, IPictureRequestRepository pictureReqRepository)
        {
            var bytes = GetBytePicture(picture);

            if (bytes != null)
            {
                var currentPic = await pictureReqRepository.GetPictureReqByRoasterReqIdAsyncAsNoTracking(roasterReqId);

                if (currentPic != null)
                {
                    pictureReqRepository.Delete(currentPic);
                }
                var bytePicture = PictureRequest.New(bytes);
                bytePicture.RoasterRequestId = roasterReqId;
                pictureReqRepository.Add(bytePicture);
            }
        }