Example #1
0
        public HttpResponse Add(CreateTripInputModel input)
        {
            if (!this.IsUserLoggedIn())
            {
                return(this.Redirect("/Users/Login"));
            }
            if (string.IsNullOrWhiteSpace(input.StartPoint))
            {
                return(this.Redirect("/Trips/Add"));
            }
            if (string.IsNullOrWhiteSpace(input.EndPoint))
            {
                return(this.Redirect("/Trips/Add"));
            }
            if (input.DepartureTime == null)
            {
                return(this.Redirect("/Trips/Add"));
            }
            if (input.Seats < 2 || input.Seats > 6)
            {
                return(this.Redirect("/Trips/Add"));
            }
            if (input.Description.Length > 80)
            {
                return(this.Redirect("/Trips/Add"));
            }

            this.tripsService.Add(input);
            return(this.Redirect("/"));
        }
Example #2
0
        public async Task <AddFishRouteData> CreateAsync(CreateTripInputModel input, string userId)
        {
            var trip = new Trip
            {
                WaterPoolName      = input.WaterPoolName,
                Description        = input.Description,
                FishCaughtCount    = input.FishCaughtCout,
                LocationLatitude   = input.LocationLatitude,
                LocationLongtitude = input.LocationLongtitude,
                Date          = input.Date,
                FishingMethod = (FishingMethodEnum)input.FishingMethod,
                UserId        = userId,
                NearestTownId = this.townsService.GetNearestTownId(input.LocationLatitude, input.LocationLongtitude),
            };

            await this.tripsRepository.AddAsync(trip);

            await this.tripsRepository.SaveChangesAsync();

            return(new AddFishRouteData
            {
                TripId = trip.Id,
                FishCount = trip.FishCaughtCount,
            });
        }
Example #3
0
        public async Task <IActionResult> Post([FromBody] CreateTripInputModel model)
        {
            var result = await this.tripService.CreateTrip(model);


            if (result == true)
            {
                return(this.Ok(result));
            }

            return(this.BadRequest());
        }
Example #4
0
        public async Task <IActionResult> Create(CreateTripInputModel input)
        {
            if (!this.ModelState.IsValid)
            {
                return(this.View());
            }

            var user = await this.userManager.GetUserAsync(this.User);

            var tripToFishData = await this.tripService.CreateAsync(input, user.Id);

            return(this.RedirectToAction(nameof(FishController.Create), nameof(FishController).Replace("Controller", string.Empty), tripToFishData));
        }
Example #5
0
        public void Add(CreateTripInputModel create)
        {
            var trip = new Trip
            {
                StartPoint    = create.StartPoint,
                EndPoint      = create.EndPoint,
                DepartureTime = create.DepartureTime,
                ImagePath     = create.ImagePath,
                Description   = create.Description,
                Seats         = create.Seats,
            };

            this.db.Trips.Add(trip);
            this.db.SaveChanges();
        }
Example #6
0
        public HttpResponse Add(CreateTripInputModel model)
        {
            if (!this.IsUserLoggedIn())
            {
                return(this.Redirect("/Users/Login"));
            }

            if (string.IsNullOrWhiteSpace(model.StartPoint))
            {
                return(this.View());
            }

            if (string.IsNullOrWhiteSpace(model.EndPoint))
            {
                return(this.View());
            }

            //TODO: regex match input?
            if (string.IsNullOrWhiteSpace(model.DepartureTime))
            {
                return(this.View());
            }

            if (string.IsNullOrWhiteSpace(model.EndPoint))
            {
                return(this.View());
            }

            if (string.IsNullOrWhiteSpace(model.Seats.ToString()) || (model.Seats < 2 || model.Seats > 6))
            {
                return(this.View());
            }

            if (string.IsNullOrWhiteSpace(model.Description) || model.Description.Length > 80)
            {
                return(this.View());
            }

            this.tripService.Create(model.StartPoint, model.EndPoint, model.DepartureTime, model.ImagePath, model.Seats, model.Description);
            return(this.Redirect("/"));
        }
Example #7
0
        public async Task <bool> CreateTrip(CreateTripInputModel model)
        {
            if (model.OrderId != null && model.ApplicationUserId != null)
            {
                var trip = new Trip()
                {
                    ApplicationUserId = model.ApplicationUserId,
                    OrderId           = model.OrderId,
                    CreatedOn         = DateTime.UtcNow,
                    Status            = "Processing"
                };

                this.tripRepository.Add(trip);

                await this.tripRepository.SaveChangesAsync();

                return(true);
            }

            return(false);
        }