Ejemplo n.º 1
0
        public IHttpActionResult Post(Guid tripId, [FromBody] DTO.PictureForCreation pictureForCreation)
        {
            try
            {
                using (var uow = new CreatePicture(null, tripId))
                {
                    var uowResult = uow.Execute(pictureForCreation);

                    switch (uowResult.Status)
                    {
                    case UnitOfWork.UnitOfWorkStatus.Ok:
                        return(Created <DTO.Picture>
                                   (Request.RequestUri + "/" + uowResult.Result.Id.ToString(), uowResult.Result));

                    case UnitOfWork.UnitOfWorkStatus.Invalid:
                        return(BadRequest());

                    case UnitOfWork.UnitOfWorkStatus.NotFound:
                        return(NotFound());

                    case UnitOfWork.UnitOfWorkStatus.Forbidden:
                        return(StatusCode(HttpStatusCode.Forbidden));

                    default:
                        return(InternalServerError());
                    }
                }
            }
            catch (Exception)
            {
                return(InternalServerError());
            }
        }
Ejemplo n.º 2
0
        private List <T> SearchPictures <T>(string strDir, bool recursive, CreatePicture <T> creator)
        {
            try
            {
                List <T> output = new List <T>();
                foreach (string strFile in Directory.GetFiles(strDir))
                {
                    var file = new FileInfo(PathUtil.StripFileProtocolPrefix(strFile));
                    if (Extensions.Contains(file.Extension.ToLowerInvariant()))
                    {
                        output.Add(creator.Invoke(file.FullName));
                    }
                }

                if (recursive)
                {
                    foreach (string strDirectory in Directory.GetDirectories(strDir))
                    {
                        output.AddRange(SearchPictures(strDirectory, true, creator));
                    }
                }

                return(output);
            }
            catch (Exception ex)
            {
                Log.Warn("Failed in recursive picture search", ex);
                return(new List <T>());
            }
        }
Ejemplo n.º 3
0
        public IHttpActionResult Post(Guid tripId, [FromBody]DTO.PictureForCreation pictureForCreation)
        {
            try
            { 
                using (var uow = new CreatePicture(null, tripId))
                {
                    var uowResult = uow.Execute(pictureForCreation);

                    switch (uowResult.Status)
                    {
                        case UnitOfWork.UnitOfWorkStatus.Ok:
                            return Created<DTO.Picture>
                            (Request.RequestUri + "/" + uowResult.Result.Id.ToString(), uowResult.Result);
                            
                        case UnitOfWork.UnitOfWorkStatus.Invalid:
                            return BadRequest();

                        case UnitOfWork.UnitOfWorkStatus.NotFound:
                            return NotFound();

                        case UnitOfWork.UnitOfWorkStatus.Forbidden:
                            return StatusCode(HttpStatusCode.Forbidden);

                        default:
                            return InternalServerError();
                    }
                }
            }
            catch (Exception)
            {

                return InternalServerError();
            }
        }
Ejemplo n.º 4
0
        public async Task <ActionResult> AddReview(CreateReview input)
        {
            CreatePicture _picture = new CreatePicture {
                FileName = fileName, FileContentType = fileContentType
            };
            await _pictureAppService.Create(_picture);

            return(View());
        }
Ejemplo n.º 5
0
        public async Task <ActionResult> AddPicture(string fileName, string fileContentType)
        {
            CreatePicture _picture = new CreatePicture {
                FileName = fileName, FileContentType = fileContentType
            };
            await _pictureAppService.Create(_picture);

            return(View());
        }
Ejemplo n.º 6
0
        static void Main(string[] args)
        {
            Manager       manager = new Manager();
            CreatePicture item    = new CreatePicture {
                Path = "/BottlePictures/GuinnessOriginal.jpg", BeerBottleId = 10
            };
            CreatePicture item1 = new CreatePicture {
                Path = "/BottlePictures/GuinnessOriginal.jpg", BeerBottleId = 11
            };
            CreatePicture item2 = new CreatePicture {
                Path = "/BottlePictures/GuinnessOriginal.jpg", BeerBottleId = 12
            };

            manager.Pictures.Add(item);
            manager.Pictures.Add(item1);
            manager.Pictures.Add(item2);

            ////BeerShopDb context = new BeerShopDb();

            //var collection = context.StockPositions.ToList();
            //for(int i = 0; i < collection.Count; i++)
            //{
            //    Console.WriteLine($"{collection[i].BeerBottle.BeerEntity.TradeMark.Name} " +
            //                      $"{collection[i].BeerBottle.BeerEntity.Name}, " +
            //                      $"{collection[i].BeerBottle.BeerEntity.BeerKind.Name} - " +
            //                      $"{collection[i].BeerBottle.Capacity.Cap}l - " +
            //                      $"{collection[i].BottleCount} шт.");
            //    if(collection[i].BottleCount == 0)
            //    {
            //        collection[i].BottleCount = 7;
            //        context.SaveChanges();
            //        Console.WriteLine("Добавлено кол-во");
            //    }
            //    Console.WriteLine();
            //}

            //foreach (var item in collection)
            //{
            //    Console.WriteLine($"{item.BeerBottle.BeerEntity.TradeMark.Name} {item.BeerBottle.BeerEntity.Name}, {item.BeerBottle.BeerEntity.BeerKind.Name} - {item.BeerBottle.Capacity.Cap}l - {item.BottleCount} шт.");
            //}
            //BeerBottleManager manager = new BeerBottleManager();
            //var collection = BeerBottleManager.GetAll();
            //foreach (var item in collection)
            //{
            //    Console.WriteLine($"{item.BeerEntity.TradeMark.Name} {item.BeerEntity.Name} {item.BeerEntity.BeerKind.Name} {item.Capacity.Cap} {item.Price}");
            //}

            //Console.WriteLine("Добавление нового объекта");

            //var bb = BeerBottleManager.Add(new CreateBeerBottle { Price = 37, BeerEntityId = 5, CapacityId = 3, DateOfSpill = DateTime.Now });

            //BeerBottleManager manager = new BeerBottleManager();
            //var collection = manager.GetAll();
            //foreach (var item in collection)
            //{
            //    Console.WriteLine($"{item.ID} {item.BeerEntity.TradeMark.Name} {item.BeerEntity.Name} {item.BeerEntity.BeerKind.Name} {item.Capacity.Cap} {item.Price}");
            //}


            //Console.WriteLine(collection.Count);
            //Console.WriteLine($"Удаление {(manager.Remove(35)).BeerEntity.Name}");
            //Console.WriteLine();
            //collection = manager.GetAll();
            //foreach (var item in collection)
            //{
            //    Console.WriteLine($"{item.BeerEntity.TradeMark.Name} {item.BeerEntity.Name} {item.BeerEntity.BeerKind.Name} {item.Capacity.Cap} {item.Price}");
            //}

            //BeerEntityManager manager = new BeerEntityManager();
            //var collection = manager.GetAll();
            //foreach (var item in collection)
            //{
            //    Console.WriteLine($"{item.Name} {item.TradeMark.Name}");
            //}
            //Console.WriteLine();
            //Console.WriteLine("Добавление нового объекта");
            //Console.WriteLine();

            //Console.WriteLine((manager.Add(new CreateBeerEntity { Name = "Просто Пиво", Alcohol = 5, BeerKindId = 1, Breadness = 3, TradeMarkId = 3 })).TradeMark.Name);



            Console.ReadLine();
        }
Ejemplo n.º 7
0
 public async Task Create(CreatePicture input)
 {
     Picture output = Mapper.Map <CreatePicture, Picture>(input);
     await _pictureManager.Create(output);
 }
Ejemplo n.º 8
0
        public async Task <ActionResult> AddPicture(CreatePicture pic)
        {
            await _pictureAppService.Create(pic);

            return(View());
        }
Ejemplo n.º 9
0
 // POST: api/Picture
 public void Post([FromBody] CreatePicture create)
 {
     manager.Add(create);
 }
Ejemplo n.º 10
0
        public object Post(CreatePicture request)
        {
            try
            {
                var token = AuthService.CheckPermitions(Request.Headers["Authorization"], Db);
                if (token == null)
                    return HttpError.Unauthorized("Please, authorize");

                var pic = Mapper.Map<Picture>(request);

                var galInfo = request.Gallery.Split(new[] {", "}, StringSplitOptions.RemoveEmptyEntries);

                pic.MaterialId = Db.Select<Material>(x => x.Name == request.Material).First().Id;
                pic.GalleryId = Db.Select<Gallery>(x => x.Name == galInfo.ElementAtOrDefault(0) && x.City == galInfo.ElementAtOrDefault(1)).FirstOrDefault()?.Id;
                pic.TechniqueId = Db.Select<Technique>(x => x.Name == request.Technique).First().Id;

                Db.Insert(pic);
                var id = Db.GetScalar<Picture, int>(r => Sql.Max(r.Id));
                var picture = Db.GetById<Picture>(id);

                if (request.Artists.Any())
                {
                    var pba = Db.Select<PicturesByArtist>().Join(request.Artists, x => x.ArtistId, a => a.Id, (x, _) => x).ToList();

                    Db.DeleteAll(pba);

                    Db.SaveAll(pba.Select(x => new PicturesByArtist { ArtistId = x.ArtistId, PictureId = picture.Id }));
                    Db.SaveAll(request.Artists.Select(x => new PicturesByArtist { ArtistId = x.Id, PictureId = picture.Id }).ExceptBy(pba, o => o.ArtistId).ToList());
                }
                if (request.Genres.Any())
                {
                    var abp = Db.Select<Genre>()
                        .Join(request.Genres, x => x.Name, x => x, (x, _) => x.Id)
                        .Join(Db.Select<PicturesByGenre>(), x => x, x => x.GenreId, (_, p) => p)
                        .ToList();

                    Db.DeleteAll(abp);
                    Db.SaveAll(abp.Select(x => new PicturesByGenre { GenreId = x.GenreId, PictureId = picture.Id }));
                }

                return new HttpResult(picture, $"{MimeTypes.Json}; charset=utf-8")
                {
                    StatusCode = Created
                };
            }
            catch (InvalidOperationException e)
            {
                return new HttpError(BadRequest, "Wrong Parameters");
            }
            catch
            {
                return new HttpError(InternalServerError, "Internal Server Error");
            }
        }
Ejemplo n.º 11
0
 public Task Create(CreatePicture input)
 {
     throw new NotImplementedException();
 }