コード例 #1
0
        public IHttpActionResult DeleteLot([FromBody, Required] LotDeletionDTO request)
        {
            using (var dbcontext = new UserContext())
            {
                LotManagementManager lotManagementManager = new LotManagementManager(dbcontext);

                try
                {
                    ResponseDTO <Boolean> response = lotManagementManager.DeleteLot(request);
                    if (response.Data == true)
                    {
                        return(Ok(response.Data));
                    }
                    else
                    {
                        ResponseDTO <HttpStatusCode> statusResponse = ResponseManager.ConvertErrorToStatus(response.Error);
                        return(Content(statusResponse.Data, statusResponse.Error));
                    }
                }
                catch (Exception e)
                {
                    return(Content((HttpStatusCode)400, e.Message));
                }
            }
        }
コード例 #2
0
 public IHttpActionResult GetAllLotsByOwner([FromBody, Required] ParkingMasterFrontendDTO request)
 {
     using (var dbcontext = new UserContext())
     {
         LotManagementManager lotManagementManager = new LotManagementManager(dbcontext);
         //ResponseDTO<List<Lot>> response = lotManagementManager.GetAllLots(request.Token);
         try
         {
             ResponseDTO <List <Lot> > response = lotManagementManager.GetAllLotsByOwner(request);
             if (response.Data != null)
             {
                 return(Ok(response.Data));
             }
             else
             {
                 ResponseDTO <HttpStatusCode> statusResponse = ResponseManager.ConvertErrorToStatus(response.Error);
                 return(Content(statusResponse.Data, statusResponse.Error));
             }
         }
         catch (Exception e)
         {
             return(Content((HttpStatusCode)400, e.Message));
         }
     }
 }
コード例 #3
0
        public IHttpActionResult CreateLot()
        {
            using (var dbcontext = new UserContext())
            {
                //LotManagementManager lotManagementManager = new LotManagementManager();
                LotManagementManager lotManagementManager = new LotManagementManager(dbcontext);
                var httprequest = HttpContext.Current.Request;

                try
                {
                    ResponseDTO <Boolean> response = lotManagementManager.AddLot(httprequest);
                    if (response.Data == true)
                    {
                        dbcontext.SaveChanges();
                        return(Ok(response.Data));
                    }
                    else
                    {
                        ResponseDTO <HttpStatusCode> statusResponse = ResponseManager.ConvertErrorToStatus(response.Error);
                        return(Content(statusResponse.Data, statusResponse.Error));
                    }
                }
                catch (Exception e)
                {
                    return(Content((HttpStatusCode)400, e.Message));
                }
            }
        }
コード例 #4
0
        [Route("api/reservation/extend")] // api/user/lot
        public IHttpActionResult ExtendUserReservation([FromBody, Required] ReservationRequestDTO request)
        {
            ReservationManager        _reservationManager = new ReservationManager();
            ResponseDTO <UserSpotDTO> response            = _reservationManager.ExtendUserReservation(request);

            if (response.Data != null)
            {
                return(Ok(response.Data));
            }
            else
            {
                ResponseDTO <HttpStatusCode> statusResponse = ResponseManager.ConvertErrorToStatus(response.Error);
                return(Content(statusResponse.Data, statusResponse.Error));
            }
        }
コード例 #5
0
        [Route("api/reservation/add")] // api/user/lot
        public IHttpActionResult ReserveSpot([FromBody, Required] ReservationRequestDTO request)
        {
            ReservationManager _reservationManager = new ReservationManager();
            ResponseDTO <bool> response            = _reservationManager.ReserveSpot(request);

            if (response.Data)
            {
                return(Ok("Successfully reserved: " + request.SpotId));
            }
            else
            {
                ResponseDTO <HttpStatusCode> statusResponse = ResponseManager.ConvertErrorToStatus(response.Error);
                return(Content(statusResponse.Data, statusResponse.Error));
            }
        }
コード例 #6
0
        [Route("api/reservation/getall")] // api/user/lot
        public IHttpActionResult GetAllUserReservations([FromBody, Required] ParkingMasterFrontendDTO request)
        {
            ReservationManager _reservationManager     = new ReservationManager();
            ResponseDTO <List <UserSpotDTO> > response = _reservationManager.GetAllUserReservations(request);

            if (response.Data != null)
            {
                return(Ok(response.Data));
            }
            else
            {
                ResponseDTO <HttpStatusCode> statusResponse = ResponseManager.ConvertErrorToStatus(response.Error);
                return(Content(statusResponse.Data, statusResponse.Error));
            }
        }
コード例 #7
0
        public IHttpActionResult GetAllLogs([FromBody, Required] ParkingMasterFrontendDTO request)
        {
            LogManager lm = new LogManager();
            ResponseDTO <List <Log> > list = lm.GetAllLogs(request);

            if (list.Data != null)
            {
                return(Ok(list.Data));
            }
            else
            {
                ResponseDTO <HttpStatusCode> statusResponse = ResponseManager.ConvertErrorToStatus(list.Error);
                return(Content(statusResponse.Data, statusResponse.Error));
            }
        }
コード例 #8
0
        public IHttpActionResult HealthCheck()
        {
            DatabaseCheckerService _databaseChecker = new DatabaseCheckerService();
            ResponseDTO <bool>     response         = _databaseChecker.CheckConnection();

            if (!response.Data)
            {
                ResponseDTO <HttpStatusCode> statuesResponse = ResponseManager.ConvertErrorToStatus(response.Error);
                return(Content(statuesResponse.Data, statuesResponse.Error));
            }
            else
            {
                return(Ok());
            }
        }
コード例 #9
0
        public IHttpActionResult RegisterVehicle([FromBody, Required] VehicleRequestDTO request)
        {
            VehicleManager     _vehicleManager = new VehicleManager();
            ResponseDTO <bool> response        = _vehicleManager.StoreVehicle(request);

            if (response.Data)
            {
                return(Ok(response.Data));
            }
            else
            {
                ResponseDTO <HttpStatusCode> statuesResponse = ResponseManager.ConvertErrorToStatus(response.Error);
                return(Content(statuesResponse.Data, statuesResponse.Error));
            }
        }
コード例 #10
0
        public IHttpActionResult SetRole([FromBody, Required] ParkingMasterFrontendDTO request)
        {
            UserManagementManager _userManager = new UserManagementManager();

            ResponseDTO <ParkingMasterFrontendDTO> response = _userManager.SetRole(request);

            if (response.Data != null)
            {
                return(Ok(response.Data));
            }
            else
            {
                ResponseDTO <HttpStatusCode> statusResponse = ResponseManager.ConvertErrorToStatus(response.Error);
                return(Content(statusResponse.Data, statusResponse.Error));
            }
        }
コード例 #11
0
        public IHttpActionResult Session([FromBody, Required] ParkingMasterFrontendDTO request)
        {
            LoginManager loginManager = new LoginManager();

            ResponseDTO <ParkingMasterFrontendDTO> response = loginManager.SessionChecker(request.Token);

            if (response.Data != null)
            {
                return(Ok(response.Data));
            }
            else
            {
                ResponseDTO <HttpStatusCode> statusResponse = ResponseManager.ConvertErrorToStatus(response.Error);
                return(Content(statusResponse.Data, statusResponse.Error));
            }
        }
コード例 #12
0
        public IHttpActionResult UserAcceptedTOS([FromBody, Required] ParkingMasterFrontendDTO request)
        {
            TermsOfServiceManager _tosManager = new TermsOfServiceManager();

            ResponseDTO <bool> response = _tosManager.UserAcceptTOS(request);

            if (response.Data != null)
            {
                return(Ok(response.Data));
            }
            else
            {
                ResponseDTO <HttpStatusCode> statusResponse = ResponseManager.ConvertErrorToStatus(response.Error);
                return(Content(statusResponse.Data, statusResponse.Error));
            }
        }
コード例 #13
0
        public IHttpActionResult SsoLogin([FromBody, Required] SsoUserRequestDTO request)
        {
            LoginManager loginManager = new LoginManager();

            ResponseDTO <Session> response = loginManager.SsoLogin(request);

            if (response.Data != null)
            {
                return(Redirect("http://localhost:8080/#/login?token=" + response.Data.SessionId.ToString("D")));
            }
            else
            {
                ResponseDTO <HttpStatusCode> statusResponse = ResponseManager.ConvertErrorToStatus(response.Error);
                return(Content(statusResponse.Data, statusResponse.Error));
            }
        }
コード例 #14
0
        public IHttpActionResult GetSpotsByLot([FromBody, Required] ReservationRequestDTO request)
        {
            using (var dbcontext = new UserContext())
            {
                LotManagementManager lotManagementManager = new LotManagementManager(dbcontext);

                ResponseDTO <LotResponseDTO> response = lotManagementManager.GetAllSpotsByLot(request);

                if (response.Data != null)
                {
                    return(Ok(response.Data));
                }
                else
                {
                    ResponseDTO <HttpStatusCode> statusResponse = ResponseManager.ConvertErrorToStatus(response.Error);
                    return(Content(statusResponse.Data, statusResponse.Error));
                }
            }
        }
コード例 #15
0
        public IHttpActionResult Delete([FromBody, Required] ParkingMasterFrontendDTO request)
        {
            if (request == null)
            {
                return(Content((HttpStatusCode)400, "Request is null."));
            }

            UserManagementManager userManager     = new UserManagementManager();
            ResponseDTO <bool>    managerResponse = userManager.DeleteUser(request);

            if (managerResponse.Data)
            {
                return(Ok());
            }
            else
            {
                ResponseDTO <HttpStatusCode> statusResponse = ResponseManager.ConvertErrorToStatus(managerResponse.Error);
                return(Content(statusResponse.Data, statusResponse.Error));
            }
        }
コード例 #16
0
        public async Task <IHttpActionResult> DeleteFromAll([FromBody, Required] ParkingMasterFrontendDTO request)
        {
            LoginManager          loginManager = new LoginManager();
            UserManagementManager userManager  = new UserManagementManager();

            ResponseDTO <ParkingMasterFrontendDTO> response = loginManager.SessionChecker(request.Token);

            if (response.Data != null)
            {
                var deleteResponse = await userManager.DeleteUserFromApps(Guid.Parse(response.Data.Id));

                if (deleteResponse.IsSuccessStatusCode)
                {
                    return(Ok());
                }
                else
                {
                    ResponseDTO <HttpStatusCode> statusResponse = ResponseManager.ConvertErrorToStatus(response.Error);
                    return(Content(statusResponse.Data, statusResponse.Error));
                }
            }

            return(Content((HttpStatusCode)404, response.Error));
        }