Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Action that get's called
- [HttpGet, Route("api/setupGroups", Name = "GetSetupGroupsPaged")]
- public HttpResponseMessage GetSetupGroupsPaged(int page = 1, int pageSize = 50)
- {
- page = page.ToMinimum(MinimumPageIndex);
- pageSize = pageSize.ToBounds(MinimumPageSize, MaximumPageSize);
- HttpResponseMessage result = null;
- _setupGroupRepository.TryDo(repository =>
- {
- var data = (repository.GetSetupGroups() as IQueryable<SetupGroup>)
- .With(query => query.OrderBy(m => m.Id))
- .Project()
- .To<SetupGroupDto>()
- .ToPagedList(page, pageSize);
- result = Request.CreatePagedResponse("GetSetupGroupsPaged", HttpStatusCode.OK, data);
- }).Catch(exception =>
- {
- // TODO: log exception
- result = Request.CreateResponse(HttpStatusCode.InternalServerError,
- AppMessages.ERROR_UNKNOWN);
- });
- return result;
- }
- // annotated method in the same controller
- [UnitOfWork]
- [HttpPost, Route("api/setupGroups/{setupGroupId:int}/mappings")]
- public virtual HttpResponseMessage CreateSetupGroupMapping(int setupGroupId, CameraDisplayMapDto data)
- {
- if (!ModelState.IsValid)
- return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
- HttpResponseMessage result = null;
- _setupGroupRepository.TryDo(repository =>
- {
- var setupGroup = repository.GetSetupGroupById(setupGroupId);
- if (setupGroup == null)
- {
- result = Request.CreateResponse(HttpStatusCode.NotFound);
- return;
- }
- var cameraDisplayMap = Mapper.Map<CameraDisplayMap>(data);
- setupGroup.TryDo(x =>
- {
- x.AddMapping(cameraDisplayMap);
- repository.UpdateSetupGroup(x);
- result = Request.CreateResponse(HttpStatusCode.Created);
- }, typeof(InvalidOperationException))
- .Catch(exception =>
- {
- // TODO: log exception
- result = Request.CreateResponse(HttpStatusCode.BadRequest);
- });
- });
- return result;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement