예제 #1
0
 internal void Handle(TrafficUpdateRequest request) {
    var resp = new TrafficUpdateResponse();
    if (MockupHelpers.IsActivated(request.DriverId)) {
       resp.Events.Add(_getTmcUpdate());
    }
    Reply(resp);
 }
예제 #2
0
        public async Task <ActionResult <TrafficUpdateDto> > Create(TrafficUpdateRequest model)
        {
            var trafficUpdate = await _repository.Create(model);

            return(trafficUpdate != null
                ? Created(nameof(Create), trafficUpdate)
                : StatusCode(StatusCodes.Status500InternalServerError, null));
        }
예제 #3
0
        public async Task <ActionResult <TrafficUpdateDto> > Delete(int id, TrafficUpdateRequest model)
        {
            var trafficUpdate = await _repository.GetById(id);

            if (trafficUpdate == null)
            {
                return(NotFound(_trafficUpdateNotFound));
            }

            await _repository.Delete(trafficUpdate.Id);

            return(NoContent());
        }
예제 #4
0
        public async Task <ActionResult <TrafficUpdateDto> > Update(int id, TrafficUpdateRequest model)
        {
            var trafficUpdate = await _repository.GetById(id);

            if (trafficUpdate == null)
            {
                return(NotFound(_trafficUpdateNotFound));
            }

            var result = await _repository.Update(trafficUpdate.Id, model);

            return(result != null
                ? Accepted(nameof(Update), result)
                : StatusCode(StatusCodes.Status500InternalServerError, null));
        }
예제 #5
0
        public async Task <TrafficUpdateDto> Update(int id, TrafficUpdateRequest model)
        {
            var trafficUpdate = await _db.TrafficUpdates.FindAsync(id);

            trafficUpdate.Title = model.Title;
            trafficUpdate.Body  = model.Body;
            trafficUpdate.Slug  = UrlHelper.GetFriendlyTitle(model.Title);

            trafficUpdate.PublishedAt = (DateTime?)(!model.IsDraft ? (object)DateTime.UtcNow : null);

            _db.TrafficUpdates.Update(trafficUpdate);
            await _db.SaveChangesAsync();

            return(await GetById(trafficUpdate.Id));
        }
예제 #6
0
        public async Task <TrafficUpdateDto> Create(TrafficUpdateRequest model)
        {
            var trafficUpdate = new Data.Models.TrafficUpdate
            {
                Title = model.Title,
                Body  = model.Body,
                Slug  = UrlHelper.GetFriendlyTitle(model.Title)
            };

            if (!model.IsDraft)
            {
                trafficUpdate.PublishedAt = DateTime.UtcNow;
            }

            _db.TrafficUpdates.Add(trafficUpdate);
            await _db.SaveChangesAsync();

            return(await GetById(trafficUpdate.Id));
        }