Пример #1
0
        //protected IActionResult GetResources<TGetDto>(BaseResourceParameters baseResourceParameters,
        //    FilterByIdsParameter<TIdentifier> filterByIdsParameters) where TGetDto : IGetDto<TEntity, TIdentifier>
        //{
        //    return Ok(Map<IEnumerable<TGetDto>>(ResourceDataService.GetManyFilter(baseResourceParameters, filterByIdsParameters)));
        //}

        protected IActionResult UpdateResource <TUpdateDto, TGetDto>(Guid id, TUpdateDto updateDto)
            where TUpdateDto : IUpdateDto <TEntity>
            where TGetDto : IGetDto <TEntity>
        {
            var resource = ResourceDataService.Get(id);

            if (resource == null)
            {
                return(NotFound(ResourceNotFound(id.ToString())));
            }
            if (!ModelState.IsValid)
            {
                return(BadRequest(InvalidData()));
            }
            Map(updateDto, resource);
            var result = ResourceDataService.AreRelationshipsValid(resource);

            if (!result.IsValid)
            {
                return(NotFound(ParentNotFound(result.NotFoundParentId)));
            }
            ResourceDataService.Update(resource);
            ResourceDataService.SaveChanges();
            return(Ok(Map <TGetDto>(resource)));
        }
Пример #2
0
        protected IActionResult CreateResource <TCreateDto, TGetDto>(TCreateDto createDto)
            where TCreateDto : ICreateDto <TEntity>
            where TGetDto : IGetDto <TEntity>
        {
            if (createDto == null)
            {
                return(BadRequest(InvalidData()));
            }
            if (!ModelState.IsValid)
            {
                return(BadRequest(InvalidData())); // TODO: -- 400 missing required fields, consider mentioning which
            }
            var resource = Map <TEntity>(createDto);
            var result   = ResourceDataService.AreRelationshipsValid(resource);

            if (!result.IsValid)
            {
                return(NotFound(ParentNotFound(result.NotFoundParentId)));
            }
            ResourceDataService.Create(resource);
            ResourceDataService.SaveChanges();
            CreatedResource = resource;
            var resourceToReturn = Map <TGetDto>(resource);

            return(CreatedAtRoute(_getResourceRouteName, new { id = resourceToReturn.Id }, resourceToReturn));
        }
Пример #3
0
        public IActionResult CancelExecution(Guid id)
        {
            var resource = ResourceDataService.Get(id);

            if (resource == null || resource.SubscriberId != User.Claims.First(claim => claim.Type == JwtClaimTypes.Subject).Value)
            {
                return(NotFound(ResourceNotFound(id.ToString())));
            }
            if (resource.Status == Status.Enqueued || resource.Status == Status.InProgress)
            {
                //if(resource.InnerJobId != null)
                //    BackgroundJob.Delete(resource.InnerJobId);

                //BackgroundJob.Delete(resource.JobId);

                ExecutionLogger.SetExecutionId(id);
                ExecutionLogger.Error("Execution canceled by the user.");

                resource.Status     = Status.Canceled;
                resource.FinishTime = DateTime.Now;
                resource.CancelJob  = true;
                ResourceDataService.Update(resource);
                ResourceDataService.SaveChanges();
            }
            return(NoContent());
        }
Пример #4
0
        public IActionResult GetResource(Guid id)
        {
            var resource = ResourceDataService.Get(id);

            if (resource == null || resource.SubscriberId != null && resource.SubscriberId != User?.Claims?.FirstOrDefault(claim => claim.Type == JwtClaimTypes.Subject)?.Value)
            {
                return(NotFound(ResourceNotFound(id.ToString())));
            }
            return(Ok(Map <DiscreteLogarithmGetDto>(resource)));
        }
Пример #5
0
        protected IActionResult GetResource <TGetDto>(Guid id)
            where TGetDto : IGetDto <TEntity>
        {
            var resource = ResourceDataService.Get(id);

            if (resource == null)
            {
                return(NotFound(ResourceNotFound(id.ToString())));
            }
            return(Ok(Map <TGetDto>(resource)));
        }
 public MainPageViewModel(INavigationService navigationService, ResourceDataService resourceDataService,
                          FavoriteCityService favoriteCityService, RestService restService, PageDialogService pageDialogService)
     : base(navigationService)
 {
     GetFavoriteCitiesAndWeatherCommand = new DelegateCommand(async() => await GetFavoriteCitiesAndWeather());
     CitiesPageCommand    = new DelegateCommand(() => NavigationService.NavigateAsync(PageName.CitiesPage));
     ItemTappedCommand    = new DelegateCommand <City>(ShowCityDetails);
     _resourceDataService = resourceDataService;
     _favoriteCityService = favoriteCityService;
     _restService         = restService;
     _pageDialogService   = pageDialogService;
 }
Пример #7
0
        protected IActionResult DeleteResource(Guid id)
        {
            var resource = ResourceDataService.Get(id);

            if (resource == null)
            {
                return(NotFound(ResourceNotFound(id.ToString())));
            }
            ResourceDataService.Delete(resource);
            ResourceDataService.SaveChanges();
            return(NoContent());
        }
Пример #8
0
        public new IActionResult DeleteResource(Guid id)
        {
            var resource = ResourceDataService.Get(id);

            if (resource == null || resource.SubscriberId != User.Claims.First(claim => claim.Type == JwtClaimTypes.Subject).Value)
            {
                return(NotFound(ResourceNotFound(id.ToString())));
            }

            CancelExecution(id);
            ResourceDataService.Delete(resource);
            ResourceDataService.SaveChanges();
            return(NoContent());
        }
Пример #9
0
        public ResponseResult <List <UserPermissionEntity> > GetUserPermissionList(int id)
        {
            var result = ResponseResult <List <UserPermissionEntity> > .Default();

            try
            {
                var resourceService = new ResourceDataService();
                var permissionList  = resourceService.GetUserPermissionList(id);
                result = ResponseResult <List <UserPermissionEntity> > .Success(permissionList);
            }
            catch (System.Exception ex)
            {
                result = ResponseResult <List <UserPermissionEntity> > .Error(ex.Message);
            }
            return(result);
        }
Пример #10
0
        public ResponseResult SaveResource(ResourceEntity entity)
        {
            var result = ResponseResult.Default();

            try
            {
                var resourceService = new ResourceDataService();
                resourceService.SaveResource(entity);

                result = ResponseResult.Success();
            }
            catch (System.Exception ex)
            {
                result = ResponseResult.Error(string.Format("保存资源数据失败!{0}", ex.Message));
            }
            return(result);
        }
Пример #11
0
        public ResponseResult SaveUserResourceList(List <UserResourceEntity> entityList)
        {
            var result = ResponseResult.Default();

            try
            {
                var resourceService = new ResourceDataService();
                resourceService.SaveUserResourceList(entityList);

                result = ResponseResult.Success();
            }
            catch (System.Exception ex)
            {
                result = ResponseResult.Error(string.Format("保存用戶资源授权数据失败!{0}", ex.Message));
            }
            return(result);
        }
Пример #12
0
        public ResponseResult ClearUserResourceList(UserResourceEntity entity)
        {
            var result = ResponseResult.Default();

            try
            {
                var resourceService = new ResourceDataService();
                resourceService.ClearUserResourceList(entity.UserID);

                result = ResponseResult.Success();
            }
            catch (System.Exception ex)
            {
                result = ResponseResult.Error(string.Format("清除用户自有资源授权数据失败!{0}", ex.Message));
            }
            return(result);
        }
Пример #13
0
        public ResponseResult <List <RoleResourcePermissionView> > GetRoleResourceList(ResourceQuery query)
        {
            var result = ResponseResult <List <RoleResourcePermissionView> > .Default();

            try
            {
                var resourceService = new ResourceDataService();
                var permissionList  = resourceService.GetRoleResourceList(query.RoleID);

                result = ResponseResult <List <RoleResourcePermissionView> > .Success(permissionList);
            }
            catch (System.Exception ex)
            {
                result = ResponseResult <List <RoleResourcePermissionView> > .Error(
                    string.Format("获取角色资源权限数据失败!{0}", ex.Message)
                    );
            }
            return(result);
        }
Пример #14
0
        public ResponseResult <List <ResourceEntity> > GetResourceAll()
        {
            var result = ResponseResult <List <ResourceEntity> > .Default();

            try
            {
                var resourceService = new ResourceDataService();
                var resourceList    = resourceService.GetResourceAll().ToList();

                result = ResponseResult <List <ResourceEntity> > .Success(resourceList);
            }
            catch (System.Exception ex)
            {
                result = ResponseResult <List <ResourceEntity> > .Error(
                    string.Format("获取资源数据失败!{0}", ex.Message)
                    );
            }
            return(result);
        }
Пример #15
0
        public ResponseResult <List <ResourceEntity> > GetLeftMenuList()
        {
            var result = ResponseResult <List <ResourceEntity> > .Default();

            try
            {
                var           resourceService = new ResourceDataService();
                ResourceQuery query           = new ResourceQuery {
                    UserID = -1000
                };
                var resourceList = resourceService.GetLeftMenuList(query.UserID);

                result = ResponseResult <List <ResourceEntity> > .Success(resourceList);
            }
            catch (System.Exception ex)
            {
                result = ResponseResult <List <ResourceEntity> > .Error(
                    string.Format("获取左侧导航资源数据失败!{0}", ex.Message)
                    );
            }
            return(result);
        }
Пример #16
0
        public IActionResult CreateResource([FromBody] DiscreteLogarithmCreateDto createDto)
        {
            var result = base.CreateResource <DiscreteLogarithmCreateDto, DiscreteLogarithmGetDto>(createDto);

            if (CreatedResource == null)
            {
                return(result);
            }

            if (User.Identity.IsAuthenticated)
            {
                CreatedResource.SubscriberId = User.Claims.First(claim => claim.Type == JwtClaimTypes.Subject).Value;
            }

            CreatedResource.JobId = CreatedResource.StartJobService();
            ResourceDataService.Update(CreatedResource);
            ResourceDataService.SaveChanges();

            ExecutionLogger.SetExecutionId(CreatedResource.Id);
            ExecutionLogger.Info("Enqueued for execution.");

            return(result);
        }
Пример #17
0
 public IActionResult GetResources(BaseResourceParameters baseResourceParameters, FilterByIdsParameter filterByIdsParameter,
                                   FilterByStatusesParameter filterByStatusesParameter) =>
 Ok(Map <IEnumerable <DiscreteLogarithmGetDto> >(ResourceDataService.GetManyFilter(baseResourceParameters, filterByIdsParameter,
                                                                                   filterByStatusesParameter, User.Claims.First(claim => claim.Type == JwtClaimTypes.Subject).Value)));
Пример #18
0
 public CitiesPageViewModel(INavigationService navigationService, ResourceDataService resourceDataService)
     : base(navigationService)
 {
     ItemTappedCommand    = new DelegateCommand <City>(ShowCityDetails);
     _resourceDataService = resourceDataService;
 }
Пример #19
0
 protected IActionResult CreateResource(Guid id) => ResourceDataService.Get(id) == null?
 NotFound() : new StatusCodeResult(StatusCodes.Status409Conflict);