示例#1
0
        public IActionResult EditList(string Id, [FromBody] GeoList item)
        {
            if (Guid.Parse(Id) != item.Id)
            {
                return(BadRequest(new OperationResult
                {
                    Data = item,
                    Messages = new[] { "Request ID isn`t equal target object`s ID" },
                    Success = false
                }));
            }

            if (!_geolistSrv.Get(x => x.Id == Guid.Parse(Id)).Any())
            {
                return(NotFound(new OperationResult
                {
                    Messages = new[] { "Object with requested ID does`t exists" },
                    Success = false
                }));
            }

            var result = _geolistSrv.Update(item);

            if (result.Success)
            {
                return(Ok(result));
            }

            return(BadRequest(result));
        }
示例#2
0
 public OperationResult <GeoList> Delete(GeoList item)
 {
     return(new OperationResult <GeoList>()
     {
         Data = _geolistRepo.Delete(item),
         Messages = new[] { "Geolist was successfully removed." },
         Success = true
     });
 }
示例#3
0
        //public WebResult<IQueryable<GeoList>> GetByFilter(GeolistFilterDTO filter, out int totalItems)
        //{
        //    var data = _geolistRepo.Data;
        //    var isPeriodFrom = DateTime.TryParse(filter.PeriodFrom, out DateTime periodFrom);
        //    var isPeriodTo = DateTime.TryParse(filter.PeriodFrom, out DateTime periodTo);


        //    // Filtering by public status. There is no filtering if isPublic field in filter is null
        //    if (filter.isPublic != null)
        //    {
        //        data = data.Where(x => x.IsPublic == filter.isPublic);
        //    }

        //    // Filtering by name
        //    data = !string.IsNullOrEmpty(filter.NameContains)
        //         ? data.Where(x => x.Name.Contains(filter.NameContains))
        //         : data;

        //    // Filtering by owner
        //    data = !string.IsNullOrEmpty(filter.OwnerId)
        //         ? data.Where(x => x.OwnerId.Equals(filter.OwnerId))
        //         : data;

        //    // Filtering by rating
        //    data = filter.RatingFrom != null
        //         ? data.Where(x => x.Rating >= filter.RatingFrom)
        //         : data;

        //    data = filter.RatingTo != null
        //         ? data.Where(x => x.Rating <= filter.RatingTo)
        //         : data;

        //    // filtering by subs number
        //    data = filter.SubsNumberFrom != null
        //         ? data.Where(x => x.SubscribersNumber >= filter.SubsNumberFrom)
        //         : data;

        //    data = filter.SubsNumberTo != null
        //         ? data.Where(x => x.SubscribersNumber <= filter.SubsNumberTo)
        //         : data;

        //    // Filtering by period
        //    data = isPeriodFrom
        //         ? data.Where(x => x.PeriodFrom >= periodFrom)
        //         : data;

        //    data = isPeriodTo
        //         ? data.Where(x => x.PeriodTo <= periodTo)
        //         : data;

        //    filter.PageNumber = filter.PageNumber ?? 0;

        //    totalItems = data.Count();

        //    if (!string.IsNullOrWhiteSpace(filter.OrderBy) && orderBys.ContainsKey(filter.OrderBy))
        //    {
        //        var orderExpression = orderBys[filter.OrderBy];

        //        if(filter.IsDesc)
        //        {
        //            data.OrderByDescending(orderExpression);
        //        }
        //        else
        //        {
        //            data.OrderBy(orderExpression);
        //        }
        //    }

        //    if(filter.PageSize != null)
        //    {
        //        data.Skip((int)filter.PageSize * (int)filter.PageNumber)
        //            .Take((int)filter.PageSize);
        //    }

        //    return new WebResult<IQueryable<GeoList>>()
        //    {
        //        Data = data,
        //        Success = true,
        //        PageNumber = filter.PageNumber,
        //        PageSize = filter.PageSize,
        //        TotalItems = totalItems,
        //    };
        //}

        public OperationResult <GeoList> Add(GeoList item)
        {
            return(new OperationResult <GeoList>()
            {
                Data = _geolistRepo.Add(item),
                Messages = new[] { "Geolist was successfully added." },
                Success = true
            });
        }
示例#4
0
        public IActionResult AddList([FromBody] GeoList item)
        {
            item.OwnerId = _helper.GetAppUserIdByClaims(User.Claims);
            var result = _geolistSrv.Add(item);

            if (result.Success)
            {
                return(Ok(result));
            }
            return(BadRequest(result));
        }