Exemple #1
0
        public async Task <IActionResult> CreateRoute([FromBody] CreateRouteDto routeDto)
        {
            var route = _mapper.Map <Route>(routeDto);
            await _routeService.CreateRouteAsync(route, CurrentUserId);

            return(Ok());
        }
        private Route BuildRoute(string route)
        {
            var routes = route.Split(new[] { '-' }, StringSplitOptions.RemoveEmptyEntries);
            var dto    = new CreateRouteDto
            {
                Start = routes[0].ToUpper(),
                End   = routes[1].ToUpper()
            };

            return(_routeFactory.Create(dto));
        }
Exemple #3
0
            public Route Create(CreateRouteDto dto)
            {
                if (dto is null)
                {
                    throw new DomainModelException(ResponseMessages.Route.CreateRouteDtoRequired);
                }

                var entity = new Route();

                ObjectMapper.Map(dto, entity);

                return(new ValidatedEntity <Route>(entity).Entity);
            }
        public void CreateRoute()
        {
            var target = new RoutesController(this._EFRouteRepository, this._EFRouteBusStopRepository, this._EFBusStopRepository, this._EFRouteBusRepository, this._MockMapper);

            var newRoute = new CreateRouteDto
            {
                Label       = "Test-Route",
                Description = "Against Test Route"
            };

            var result   = target.Post(newRoute);
            var okResult = result as OkObjectResult;

            Assert.Equal(200, okResult.StatusCode);
            Assert.Equal(7, this._EFRouteRepository.Routes.Count());
            Assert.Equal("Test-Route", this._EFRouteRepository.Routes
                         .Where(o => o.ID == 7).FirstOrDefault().Label);
        }
        private Route[] BuildRoutes(string route)
        {
            var result = new List <Route>();

            var routes = route.Split(new[] { '-' }, StringSplitOptions.RemoveEmptyEntries);

            for (int i = 0; i < routes.Length - 1; i++)
            {
                var dto = new CreateRouteDto
                {
                    Start = routes[i].ToUpper(),
                    End   = routes[i + 1].ToUpper()
                };

                result.Add(_routeFactory.Create(dto));
            }

            return(result.ToArray());
        }
Exemple #6
0
        public IActionResult Post([FromBody] CreateRouteDto createRouteDto)
        {
            try
            {
                //Is already exist
                if (this._RouteRepository.Routes
                    .Where(
                        o => o.Label.Trim().ToLower() == createRouteDto.Label.Trim().ToLower() &&
                        o.Description.Trim().ToLower() == createRouteDto.Description.Trim().ToLower())
                    .Any())
                {
                    return(BadRequest(new BadRequestMessage
                    {
                        Message = new string[] {
                            "Route is already exists.",
                            "Tip: Label and Description is exactly the same as the existing route"
                        }
                    }));
                }

                var newRoute = this._Mapper.Map <CreateRouteDto, Route>(createRouteDto);
                if (this._RouteRepository.SaveRoute(newRoute) > 0)
                {
                    return(Ok(
                               this._Mapper.Map <Route, ReturnRouteDto>(newRoute)
                               ));
                }
                else
                {
                    return(BadRequest(new BadRequestMessage
                    {
                        Message = new string[] {
                            "Route fails to create."
                        }
                    }));
                }
            }
            catch (Exception)
            {
                return(StatusCode(500, "Internal server error"));
            }
        }
Exemple #7
0
        public async Task <RouteDto> CreateAsync(CreateRouteDto createRouteDto)
        {
            await ValidateTripExistsAsync(createRouteDto.TripId);

            await EntityValidationHelper.ValidateCurrentUserTripRoleAsync(
                _currentUserService,
                _tripFlipDbContext,
                createRouteDto.TripId,
                TripRoles.Admin,
                ErrorConstants.NotTripAdmin);

            var routeEntity = _mapper.Map <RouteEntity>(createRouteDto);

            var entityEntry = _tripFlipDbContext.Routes.Add(routeEntity);
            await _tripFlipDbContext.SaveChangesAsync();

            var routeDto = _mapper.Map <RouteDto>(entityEntry.Entity);

            return(routeDto);
        }