예제 #1
0
        public async Task <List <EventAmendment> > GetEventAmendmentsForOrganisationAsync(long organisationId, string from, string to)
        {
            if (!from.TryParseUtcDateString(out var dateFrom))
            {
                throw new ArgumentException("The date range start value must be a valid date in the form YYYYMMDD", nameof(from));
            }
            if (!to.TryParseUtcDateString(out var dateTo))
            {
                throw new ArgumentException("The date range end value must be a valid date in the form YYYYMMDD", nameof(to));
            }
            if (dateTo.CompareTo(dateFrom) < 0)
            {
                throw new ArgumentException("The date range end may not precede the start", nameof(to));
            }
            if (dateTo.CompareTo(dateFrom.AddDays(6)) > 0)
            {
                throw new ArgumentException("The date range may not exceed 7 days", nameof(to));
            }

            IHttpRestRequest request = GetRequest(APIControllerRoutes.EventsController.GETDEMTEVENTAMENDMENTS, HttpMethod.Get);

            request.AddUrlSegment("organisationId", organisationId.ToString());
            request.AddUrlSegment("from", from);
            request.AddUrlSegment("to", to);
            IHttpRestResponse <List <EventAmendment> > response = await ExecuteAsync <List <EventAmendment> >(request).ConfigureAwait(false);

            return(response.Data);
        }
        public async Task <CreatedSinceResult <HosEvent> > GetHosEventDataAsync(ParameterEntityType entityTypeId, List <long> entityIds, List <byte> eventTypeIds, DateTime fromDateTime, DateTime toDateTime)
        {
            var dataRequest = new HosEventDataRequest {
                EntityTypeId = entityTypeId, EntityIds = entityIds, EventTypeIds = eventTypeIds
            };

            IHttpRestRequest request = GetRequest(APIControllerRoutes.HosDataController.GETHOSEVENTDATA, HttpMethod.Post);

            request.AddUrlSegment("from", fromDateTime.ToString(DataFormats.DateTime_Format));
            request.AddUrlSegment("to", toDateTime.ToString(DataFormats.DateTime_Format));
            request.AddJsonBody(dataRequest);

            IHttpRestResponse <List <HosEvent> > response = await ExecuteAsync <List <HosEvent> >(request).ConfigureAwait(false);

            var sHasMoreItems = GetResponseHeader(response.Headers, "HasMoreItems");
            var getSinceToken = GetResponseHeader(response.Headers, "GetSinceToken");

            if (!bool.TryParse(sHasMoreItems, out var hasMoreItems))
            {
                throw new Exception("Could not read the HasMoreItems header");
            }

            return(new CreatedSinceResult <HosEvent> {
                HasMoreItems = hasMoreItems, GetSinceToken = getSinceToken, Items = response.Data
            });
        }
예제 #3
0
        public void Delete(long groupId, long locationId)
        {
            IHttpRestRequest request = GetRequest(APIControllerRoutes.LocationsController.DELETE, HttpMethod.Delete);

            request.AddUrlSegment("groupId", groupId.ToString());
            request.AddUrlSegment("locationId", locationId.ToString());
            Execute(request);
        }
예제 #4
0
        public async Task DeleteAsync(long groupId, long locationId)
        {
            IHttpRestRequest request = GetRequest(APIControllerRoutes.LocationsController.DELETE, HttpMethod.Delete);

            request.AddUrlSegment("groupId", groupId.ToString());
            request.AddUrlSegment("locationId", locationId.ToString());
            await ExecuteAsync(request).ConfigureAwait(false);;
        }
예제 #5
0
        public async Task DeleteDriverCertificationAsync(long organisationGroupId, long driverId, int certificationTypeId)
        {
            IHttpRestRequest request = GetRequest(APIControllerRoutes.DriverCertificationController.DELETEDRIVERCERTIFICATION, HttpMethod.Delete);

            request.AddUrlSegment("organisationId", organisationGroupId.ToString());
            request.AddUrlSegment("driverId", driverId.ToString());
            request.AddUrlSegment("certificationTypeId", certificationTypeId.ToString());
            await ExecuteAsync(request).ConfigureAwait(false);
        }
        public async Task UpdateAssetRoadworthyCertificateReminderAsync(long organisationId, AssetRoadworthyCertificateReminder assetRoadworthyCertificateReminder)
        {
            IHttpRestRequest request = GetRequest(APIControllerRoutes.RemindersController.ASSETROADWORTHYREMINDERS, HttpMethod.Put);

            request.AddUrlSegment("organisationId", organisationId.ToString());
            request.AddUrlSegment("assetId", assetRoadworthyCertificateReminder.AssetId.ToString());
            request.AddJsonBody(assetRoadworthyCertificateReminder);
            await ExecuteAsync(request).ConfigureAwait(false);
        }
        public void DeleteDriverLicence(long organisationGroupId, long driverId, int licenceCategoryId)
        {
            IHttpRestRequest request = GetRequest(APIControllerRoutes.DriverLicenceController.DELETEDRIVERLICENCE, HttpMethod.Delete);

            request.AddUrlSegment("organisationId", organisationGroupId.ToString());
            request.AddUrlSegment("driverId", driverId.ToString());
            request.AddUrlSegment("licenceCategoryId", licenceCategoryId.ToString());
            Execute(request);
        }
        public void UpdateAssetRoadworthyCertificateReminder(long organisationId, AssetRoadworthyCertificateReminder assetRoadworthyCertificateReminder)
        {
            IHttpRestRequest request = GetRequest(APIControllerRoutes.RemindersController.ASSETROADWORTHYREMINDERS, HttpMethod.Put);

            request.AddUrlSegment("organisationId", organisationId.ToString());
            request.AddUrlSegment("assetId", assetRoadworthyCertificateReminder.AssetId.ToString());
            request.AddJsonBody(assetRoadworthyCertificateReminder);
            Execute(request);
        }
        public async Task DeleteDriverLicenceAsync(long organisationGroupId, long driverId, int licenceCategoryId)
        {
            IHttpRestRequest request = GetRequest(APIControllerRoutes.DriverLicenceController.DELETEDRIVERLICENCE, HttpMethod.Delete);

            request.AddUrlSegment("organisationId", organisationGroupId.ToString());
            request.AddUrlSegment("driverId", driverId.ToString());
            request.AddUrlSegment("licenceCategoryId", licenceCategoryId.ToString());
            await ExecuteAsync(request).ConfigureAwait(false);
        }
예제 #10
0
        public void DeleteDriverCertification(long organisationGroupId, long driverId, int certificationTypeId)
        {
            IHttpRestRequest request = GetRequest(APIControllerRoutes.DriverCertificationController.DELETEDRIVERCERTIFICATION, HttpMethod.Delete);

            request.AddUrlSegment("organisationId", organisationGroupId.ToString());
            request.AddUrlSegment("driverId", driverId.ToString());
            request.AddUrlSegment("certificationTypeId", certificationTypeId.ToString());
            Execute(request);
        }
        public AssetReminders GetAssetReminders(long organisationId, long assetId)
        {
            IHttpRestRequest request = GetRequest(APIControllerRoutes.RemindersController.GETASSETREMINDERS, HttpMethod.Get);

            request.AddUrlSegment("organisationId", organisationId.ToString());
            request.AddUrlSegment("assetId", assetId.ToString());
            IHttpRestResponse <AssetReminders> response = Execute <AssetReminders>(request);

            return(response.Data);
        }
예제 #12
0
        /// <inheritdoc />
        public async Task <List <Location> > GetChangedSinceAsync(long organisationId, DateTime since)
        {
            IHttpRestRequest request = GetRequest(APIControllerRoutes.LocationsController.CHANGEDSINCE, HttpMethod.Get);

            request.AddUrlSegment("organisationId", organisationId.ToString());
            request.AddUrlSegment("since", $"{since:yyyyMMddHHmmss}");
            IHttpRestResponse <List <Location> > response = await ExecuteAsync <List <Location> >(request).ConfigureAwait(false);

            return(response.Data);
        }
        public async Task <AssetReminders> GetAssetRemindersAsync(long organisationId, long assetId)
        {
            IHttpRestRequest request = GetRequest(APIControllerRoutes.RemindersController.GETASSETREMINDERS, HttpMethod.Get);

            request.AddUrlSegment("organisationId", organisationId.ToString());
            request.AddUrlSegment("assetId", assetId.ToString());
            IHttpRestResponse <AssetReminders> response = await ExecuteAsync <AssetReminders>(request).ConfigureAwait(false);

            return(response.Data);
        }
        public Asset GetByGroup(long groupId, long assetId)
        {
            IHttpRestRequest request = GetRequest(APIControllerRoutes.AssetsController.GETBYGROUP, HttpMethod.Get);

            request.AddUrlSegment("groupId", groupId.ToString());
            request.AddUrlSegment("assetId", assetId.ToString());
            IHttpRestResponse <Asset> response = Execute <Asset>(request);

            return(response.Data);
        }
예제 #15
0
        public async Task <IList <CertificationType> > GetDriverCertificationTypesAsync(long organisationGroupId, long driverId)
        {
            IHttpRestRequest request = GetRequest(APIControllerRoutes.DriverCertificationController.GETDRIVERCERTIFICATIONTYPES, HttpMethod.Get);

            request.AddUrlSegment("organisationId", organisationGroupId.ToString());
            request.AddUrlSegment("driverId", driverId.ToString());
            IHttpRestResponse <List <CertificationType> > response = await ExecuteAsync <List <CertificationType> >(request).ConfigureAwait(false);

            return(response.Data);
        }
예제 #16
0
        public IList <DriverCertification> GetDriverCertificationsForDriver(long organisationGroupId, long driverId)
        {
            IHttpRestRequest request = GetRequest(APIControllerRoutes.DriverCertificationController.GETDRIVERCERTIFICATIONS, HttpMethod.Get);

            request.AddUrlSegment("organisationId", organisationGroupId.ToString());
            request.AddUrlSegment("driverId", driverId.ToString());
            IHttpRestResponse <List <DriverCertification> > response = Execute <List <DriverCertification> >(request);

            return(response.Data);
        }
        public async Task <Asset> GetByGroupAsync(long groupId, long assetId)
        {
            IHttpRestRequest request = GetRequest(APIControllerRoutes.AssetsController.GETBYGROUP, HttpMethod.Get);

            request.AddUrlSegment("groupId", groupId.ToString());
            request.AddUrlSegment("assetId", assetId.ToString());
            IHttpRestResponse <Asset> response = await ExecuteAsync <Asset>(request).ConfigureAwait(false);

            return(response.Data);
        }
예제 #18
0
        public BulkAddResult GetBulkAddResult(long GroupId, long CorrelationId)
        {
            IHttpRestRequest request = GetRequest(APIControllerRoutes.JourneysController.BULKJOURNEYADDRESULT, HttpMethod.Get);

            request.AddUrlSegment("groupId", GroupId.ToString());
            request.AddUrlSegment("correlationId", CorrelationId.ToString());
            IHttpRestResponse <BulkAddResult> response = Execute <BulkAddResult>(request, 1);

            return(response.Data);
        }
예제 #19
0
        public IList <MessageStateHistoryItem> GetMessageStateHistory(long organisationId, int messageId)
        {
            IHttpRestRequest request = GetRequest(APIControllerRoutes.MessagesController.GETMESSAGESTATEHISTORY, HttpMethod.Get);

            request.AddUrlSegment("organisationId", organisationId.ToString());
            request.AddUrlSegment("messageId", messageId.ToString());
            IHttpRestResponse <List <MessageStateHistoryItem> > response = Execute <List <MessageStateHistoryItem> >(request);

            return(response.Data);
        }
예제 #20
0
        public Message GetMessage(long organisationId, int messageId)
        {
            IHttpRestRequest request = GetRequest(APIControllerRoutes.MessagesController.GET, HttpMethod.Get);

            request.AddUrlSegment("organisationId", organisationId.ToString());
            request.AddUrlSegment("messageId", messageId.ToString());
            IHttpRestResponse <Message> response = Execute <Message>(request);

            return(response.Data);
        }
예제 #21
0
        public async Task <IList <MessageStateHistoryItem> > GetMessageStateHistoryAsync(long organisationId, int messageId)
        {
            IHttpRestRequest request = GetRequest(APIControllerRoutes.MessagesController.GETMESSAGESTATEHISTORY, HttpMethod.Get);

            request.AddUrlSegment("organisationId", organisationId.ToString());
            request.AddUrlSegment("messageId", messageId.ToString());
            IHttpRestResponse <List <MessageStateHistoryItem> > response = await ExecuteAsync <List <MessageStateHistoryItem> >(request).ConfigureAwait(false);

            return(response.Data);
        }
예제 #22
0
        public async Task <Driver> GetDriverAsync(long groupId, long driverId)
        {
            IHttpRestRequest request = GetRequest(APIControllerRoutes.DriversController.GETDRIVER, HttpMethod.Get);

            request.AddUrlSegment("groupId", groupId.ToString());
            request.AddUrlSegment("driverId", driverId.ToString());
            IHttpRestResponse <Driver> response = await ExecuteAsync <Driver>(request).ConfigureAwait(false);

            return(response.Data);
        }
예제 #23
0
        public async Task <Message> GetMessageAsync(long organisationId, int messageId)
        {
            IHttpRestRequest request = GetRequest(APIControllerRoutes.MessagesController.GET, HttpMethod.Get);

            request.AddUrlSegment("organisationId", organisationId.ToString());
            request.AddUrlSegment("messageId", messageId.ToString());
            IHttpRestResponse <Message> response = await ExecuteAsync <Message>(request).ConfigureAwait(false);

            return(response.Data);
        }
예제 #24
0
        //public List<DriverSummary> GetAllDriverSummaries(long groupId)
        //{
        //	IHttpRestRequest request = GetRequest(APIControllerRoutes.DRIVERSCONTROLLER.GETALLDRIVERSUMMARIES, HttpMethod.Get);
        //	request.AddUrlSegment("groupId", groupId.ToString());
        //	IHttpRestResponse<List<DriverSummary>> response = Execute<List<DriverSummary>>(request);
        //	return response.Data;
        //}

        //public async Task<List<DriverSummary>> GetAllDriverSummariesAsync(long groupId)
        //{
        //	IHttpRestRequest request = GetRequest(APIControllerRoutes.DRIVERSCONTROLLER.GETALLDRIVERSUMMARIES, HttpMethod.Get);
        //	request.AddUrlSegment("groupId", groupId.ToString());
        //	IHttpRestResponse<List<DriverSummary>> response = await ExecuteAsync<List<DriverSummary>>(request).ConfigureAwait(false);
        //	return response.Data;
        //}

        public Driver GetDriver(long groupId, long driverId)
        {
            IHttpRestRequest request = GetRequest(APIControllerRoutes.DriversController.GETDRIVER, HttpMethod.Get);

            request.AddUrlSegment("groupId", groupId.ToString());
            request.AddUrlSegment("driverId", driverId.ToString());
            IHttpRestResponse <Driver> response = Execute <Driver>(request);

            return(response.Data);
        }
        public async Task <IList <LicenceCategory> > GetDriverLicenceCategoriesAsync(long organisationGroupId, long driverId)
        {
            IHttpRestRequest request = GetRequest(APIControllerRoutes.DriverLicenceController.GETDRIVERLICENCECATEGORIES, HttpMethod.Get);

            request.AddUrlSegment("organisationId", organisationGroupId.ToString());
            request.AddUrlSegment("driverId", driverId.ToString());
            IHttpRestResponse <List <LicenceCategory> > response = await ExecuteAsync <List <LicenceCategory> >(request).ConfigureAwait(false);

            return(response.Data);
        }
        public IList <DriverLicence> GetDriverLicencesByDriverId(long organisationGroupId, long driverId)
        {
            IHttpRestRequest request = GetRequest(APIControllerRoutes.DriverLicenceController.GETDRIVERLICENCES, HttpMethod.Get);

            request.AddUrlSegment("organisationId", organisationGroupId.ToString());
            request.AddUrlSegment("driverId", driverId.ToString());
            IHttpRestResponse <List <DriverLicence> > response = Execute <List <DriverLicence> >(request);

            return(response.Data);
        }
예제 #27
0
        public IList <Message> GetMessagesBySinceId(long organisationId, int messageId, int maxRecords)
        {
            IHttpRestRequest request = GetRequest(APIControllerRoutes.MessagesController.GETSINCEID, HttpMethod.Get);

            request.AddUrlSegment("organisationId", organisationId.ToString());
            request.AddUrlSegment("messageId", messageId.ToString());
            request.AddUrlSegment("maxRecords", maxRecords.ToString());
            IHttpRestResponse <List <Message> > response = Execute <List <Message> >(request);

            return(response.Data);
        }
예제 #28
0
        public async Task <IList <Message> > GetMessagesBySinceIdAsync(long organisationId, int messageId, int maxRecords)
        {
            IHttpRestRequest request = GetRequest(APIControllerRoutes.MessagesController.GETSINCEID, HttpMethod.Get);

            request.AddUrlSegment("organisationId", organisationId.ToString());
            request.AddUrlSegment("messageId", messageId.ToString());
            request.AddUrlSegment("maxRecords", maxRecords.ToString());
            IHttpRestResponse <List <Message> > response = await ExecuteAsync <List <Message> >(request).ConfigureAwait(false);

            return(response.Data);
        }
예제 #29
0
        public List <Position> GetByDateRangeByGroupIds(List <long> groupIds, DateTime fromDate, DateTime toDate)
        {
            IHttpRestRequest request = GetRequest(APIControllerRoutes.PositionsController.GETRANGEFORGROUPS, HttpMethod.Post);

            request.AddUrlSegment("from", fromDate.ToString(DataFormats.DateTime_Format));
            request.AddUrlSegment("to", toDate.ToString(DataFormats.DateTime_Format));
            request.AddJsonBody(groupIds);
            IHttpRestResponse <List <Position> > response = Execute <List <Position> >(request);

            return(response.Data);
        }
예제 #30
0
        public async Task <List <Position> > GetByDateRangeByDriverIdsAsync(List <long> driverIds, DateTime fromDate, DateTime toDate)
        {
            IHttpRestRequest request = GetRequest(APIControllerRoutes.PositionsController.GETRANGEFORDRIVERS, HttpMethod.Post);

            request.AddUrlSegment("from", fromDate.ToString(DataFormats.DateTime_Format));
            request.AddUrlSegment("to", toDate.ToString(DataFormats.DateTime_Format));
            request.AddJsonBody(driverIds);
            IHttpRestResponse <List <Position> > response = await ExecuteAsync <List <Position> >(request).ConfigureAwait(false);

            return(response.Data);
        }