Ejemplo n.º 1
0
        public IActionResult AddAdvert([FromBody] AddAdvertModel model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            if (model.Name == null || model.TireSize == null || model.Condition == null ||
                model.Color == null || model.Description == null)
            {
                return(BadRequest());
            }

            var user = _userService.GetUserByID(Int32.Parse(HttpContext.User.Claims.Where(c => c.Type == ClaimTypes.NameIdentifier).FirstOrDefault().Value));

            try
            {
                _advertService.AddAdvert(model, user);

                return(Json(new { success = "true" }));
            }
            catch (Exception)
            {
                return(Json(new { success = "false" }));
            }
        }
Ejemplo n.º 2
0
        public void AddAdvert(AddAdvertModel model, User user)
        {
            // this is temporary email, only for demo
            var email = _configuration["Mail:Target"];

            var bike = new Bike()
            {
                Name            = model.Name,
                TireSize        = model.TireSize,
                Speeds          = model.Speeds,
                Weight          = model.Weight,
                Color           = model.Color,
                PublishDate     = DateTime.Now,
                Description     = model.Description,
                Image           = new byte[0],
                Price           = model.Price,
                IdBikeCondition = _unitOfWork.BikeConditionRepository.Table.Where(c => c.Name.Trim().ToLower().Equals(model.Condition.Trim().ToLower())).FirstOrDefault().Id,
                IdBikeType      = _unitOfWork.BikeTypeRepository.Table.Where(t => t.Name.Trim().ToLower().Equals(model.Type.Trim().ToLower())).FirstOrDefault().Id,
                IdCounty        = _unitOfWork.CountyRepository.Table.Where(c => c.Name.Trim().ToLower().Equals(model.County.Trim().ToLower())).FirstOrDefault().Id,
                IdUser          = user.Id
            };

            foreach (var a in model.AdditionalEquipment)
            {
                var add = new AdditionalEquipment()
                {
                    Name        = a.Name,
                    Description = a.Description,
                    Amount      = a.Amount
                };
                bike.AdditionalEquipment.Add(add);
            }
            _unitOfWork.BikeRepository.Insert(bike);
            foreach (var t in model.AdvertTypes)
            {
                var advertType = new BikeAdvertType()
                {
                    IdBikeNavigation       = bike,
                    IdAdvertTypeNavigation = _unitOfWork.AdvertTypeRepository.Table.Where(ty => ty.Name.Trim().ToLower().Equals(t.Name.Trim().ToLower())).FirstOrDefault()
                };
                _unitOfWork.BikeAdvertTypeRepository.Insert(advertType);
            }

            try
            {
                _emailService.SendAdvertAddEmail(email, bike);
            }
            catch (Exception)
            {
                //
            }
            _unitOfWork.Save();
        }
Ejemplo n.º 3
0
        public void EditAdvert(AddAdvertModel model)
        {
            var b = _unitOfWork.BikeRepository.Table.
                    Include(bike => bike.BikeAdvertType).
                    Where(bike => bike.Id == model.Id).FirstOrDefault();

            b.Name            = model.Name;
            b.TireSize        = model.TireSize;
            b.Speeds          = model.Speeds;
            b.Weight          = model.Weight;
            b.Color           = model.Color;
            b.Description     = model.Description;
            b.Price           = model.Price;
            b.IdBikeCondition = _unitOfWork.BikeConditionRepository.Table.Where(c => c.Name.Trim().ToLower().Equals(model.Condition.Trim().ToLower())).FirstOrDefault().Id;
            b.IdBikeType      = _unitOfWork.BikeTypeRepository.Table.Where(t => t.Name.Trim().ToLower().Equals(model.Type.Trim().ToLower())).FirstOrDefault().Id;
            b.IdCounty        = _unitOfWork.CountyRepository.Table.Where(c => c.Name.Trim().ToLower().Equals(model.County.Trim().ToLower())).FirstOrDefault().Id;

            foreach (var a in model.AdditionalEquipment)
            {
                var add = new AdditionalEquipment()
                {
                    Name        = a.Name,
                    Description = a.Description,
                    Amount      = a.Amount
                };
                b.AdditionalEquipment.Add(add);
            }

            foreach (var bat in b.BikeAdvertType.ToList())
            {
                _unitOfWork.BikeAdvertTypeRepository.Delete(bat);
            }

            foreach (var t in model.AdvertTypes)
            {
                var advertType = new BikeAdvertType()
                {
                    IdBikeNavigation       = b,
                    IdAdvertTypeNavigation = _unitOfWork.AdvertTypeRepository.Table.Where(ty => ty.Name.Trim().ToLower().Equals(t.Name.Trim().ToLower())).FirstOrDefault()
                };
                _unitOfWork.BikeAdvertTypeRepository.Insert(advertType);
            }

            _unitOfWork.Save();
        }
Ejemplo n.º 4
0
        public IActionResult EditAdvert([FromBody] AddAdvertModel model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            if (model.Name == null || model.TireSize == null || model.Condition == null ||
                model.Color == null || model.Description == null)
            {
                return(BadRequest());
            }

            try
            {
                _advertService.EditAdvert(model);

                return(Json(new { success = "true" }));
            }
            catch (Exception)
            {
                return(Json(new { success = "false" }));
            }
        }