public async Task <PendenciaTempos> GetById(PendenciaTemposFilter model)
        {
            var _pendenciatempos = await this.SingleOrDefaultAsync(this.GetAll(this.DataAgregation(model))
                                                                   .Where(_ => _.PendenciaTemposId == model.PendenciaTemposId));

            return(_pendenciatempos);
        }
        public async Task <dynamic> GetDataCustom(PendenciaTemposFilter filters)
        {
            var querybase = await this.ToListAsync(this.GetBySimplefilters(filters).Select(_ => new
            {
                Id = _.PendenciaTemposId,
            }));

            return(querybase);
        }
        public IQueryable <PendenciaTempos> GetBySimplefilters(PendenciaTemposFilter filters)
        {
            var querybase = this.GetAll(this.DataAgregation(filters))
                            .WithBasicFilters(filters)
                            .WithCustomFilters(filters)
                            .WithLimitTenant(this._user)
                            .OrderByDomain(filters)
                            .OrderByProperty(filters);

            return(querybase);
        }
        public async Task <IActionResult> Get([FromQuery] PendenciaTemposFilter filters)
        {
            var result = new HttpResult <PendenciaTemposDto>(this._logger);

            try
            {
                var searchResult = await this._app.GetByFilters(filters);

                return(result.ReturnCustomResponse(this._app, searchResult, filters));
            }
            catch (Exception ex)
            {
                return(result.ReturnCustomException(ex, "Target.Pendencias - PendenciaTempos", filters));
            }
        }
        public async Task <IActionResult> Get(int id, [FromQuery] PendenciaTemposFilter filters)
        {
            var result = new HttpResult <PendenciaTemposDto>(this._logger);

            try
            {
                filters.PendenciaTemposId = id;
                var returnModel = await this._app.GetOne(filters);

                return(result.ReturnCustomResponse(this._app, returnModel));
            }
            catch (Exception ex)
            {
                return(result.ReturnCustomException(ex, "Target.Pendencias - PendenciaTempos", id));
            }
        }
        public async Task <IActionResult> Get([FromQuery] PendenciaTemposFilter filters)
        {
            var result = new HttpResult <dynamic>(this._logger);

            try
            {
                if (filters.FilterBehavior == FilterBehavior.GetDataItem)
                {
                    var searchResult = await this._rep.GetDataItem(filters);

                    return(result.ReturnCustomResponse(searchResult, filters));
                }

                if (filters.FilterBehavior == FilterBehavior.GetDataCustom)
                {
                    var searchResult = await this._rep.GetDataCustom(filters);

                    return(result.ReturnCustomResponse(searchResult, filters));
                }

                if (filters.FilterBehavior == FilterBehavior.GetDataListCustom)
                {
                    var searchResult = await this._rep.GetDataListCustom(filters);

                    return(result.ReturnCustomResponse(searchResult, filters));
                }

                if (filters.FilterBehavior == FilterBehavior.Export)
                {
                    var searchResult = await this._rep.GetDataListCustom(filters);

                    var export = new ExportExcelCustom <dynamic>(filters);
                    var file   = export.ExportFile(this.Response, searchResult, "PendenciaTempos");
                    return(File(file, export.ContentTypeExcel(), export.GetFileName()));
                }

                throw new InvalidOperationException("invalid FilterBehavior");
            }
            catch (Exception ex)
            {
                return(result.ReturnCustomException(ex, "Target.Pendencias - PendenciaTempos", filters));
            }
        }
 public static IQueryable <PendenciaTempos> OrderByDomain(this IQueryable <PendenciaTempos> queryBase, PendenciaTemposFilter filters)
 {
     return(queryBase.OrderBy(_ => _.PendenciaTemposId));
 }
        public static IQueryable <PendenciaTempos> WithBasicFilters(this IQueryable <PendenciaTempos> queryBase, PendenciaTemposFilter filters)
        {
            var queryFilter = queryBase;

            if (filters.PendenciaTemposId.IsSent())
            {
                queryFilter = queryFilter.Where(_ => _.PendenciaTemposId == filters.PendenciaTemposId);
            }
            if (filters.PendenciaId.IsSent())
            {
                queryFilter = queryFilter.Where(_ => _.PendenciaId == filters.PendenciaId);
            }
            if (filters.UsuarioId.IsSent())
            {
                queryFilter = queryFilter.Where(_ => _.UsuarioId == filters.UsuarioId);
            }
            if (filters.InicioStart.IsSent())
            {
                queryFilter = queryFilter.Where(_ => _.Inicio >= filters.InicioStart);
            }
            if (filters.InicioEnd.IsSent())
            {
                filters.InicioEnd = filters.InicioEnd.AddDays(1).AddMilliseconds(-1);
                queryFilter       = queryFilter.Where(_ => _.Inicio <= filters.InicioEnd);
            }

            if (filters.FimStart.IsSent())
            {
                queryFilter = queryFilter.Where(_ => _.Fim != null && _.Fim.Value >= filters.FimStart.Value);
            }
            if (filters.FimEnd.IsSent())
            {
                filters.FimEnd = filters.FimEnd.Value.AddDays(1).AddMilliseconds(-1);
                queryFilter    = queryFilter.Where(_ => _.Fim != null && _.Fim.Value <= filters.FimEnd);
            }

            if (filters.Nota.IsSent())
            {
                queryFilter = queryFilter.Where(_ => _.Nota.Contains(filters.Nota));
            }
            if (filters.UserCreateId.IsSent())
            {
                queryFilter = queryFilter.Where(_ => _.UserCreateId == filters.UserCreateId);
            }
            if (filters.UserCreateDateStart.IsSent())
            {
                queryFilter = queryFilter.Where(_ => _.UserCreateDate >= filters.UserCreateDateStart);
            }
            if (filters.UserCreateDateEnd.IsSent())
            {
                filters.UserCreateDateEnd = filters.UserCreateDateEnd.AddDays(1).AddMilliseconds(-1);
                queryFilter = queryFilter.Where(_ => _.UserCreateDate <= filters.UserCreateDateEnd);
            }

            if (filters.UserAlterId.IsSent())
            {
                queryFilter = queryFilter.Where(_ => _.UserAlterId != null && _.UserAlterId.Value == filters.UserAlterId);
            }
            if (filters.UserAlterDateStart.IsSent())
            {
                queryFilter = queryFilter.Where(_ => _.UserAlterDate != null && _.UserAlterDate.Value >= filters.UserAlterDateStart.Value);
            }
            if (filters.UserAlterDateEnd.IsSent())
            {
                filters.UserAlterDateEnd = filters.UserAlterDateEnd.Value.AddDays(1).AddMilliseconds(-1);
                queryFilter = queryFilter.Where(_ => _.UserAlterDate != null && _.UserAlterDate.Value <= filters.UserAlterDateEnd);
            }



            return(queryFilter);
        }
Example #9
0
        public virtual Task <PaginateResult <PendenciaTempos> > GetByFiltersPaging(PendenciaTemposFilter filters)
        {
            var queryBase = this._rep.GetBySimplefilters(filters);

            return(this._rep.PagingAndDefineFields(filters, queryBase));
        }
Example #10
0
        public virtual async Task <IEnumerable <PendenciaTempos> > GetByFilters(PendenciaTemposFilter filters)
        {
            var queryBase = this._rep.GetBySimplefilters(filters);

            return(await this._rep.ToListAsync(queryBase));
        }
Example #11
0
 public virtual async Task <PendenciaTempos> GetOne(PendenciaTemposFilter filters)
 {
     return(await this._rep.GetById(filters));
 }
Example #12
0
        public static IQueryable <PendenciaTempos> WithCustomFilters(this IQueryable <PendenciaTempos> queryBase, PendenciaTemposFilter filters)
        {
            var queryFilter = queryBase;

            if (filters.AttributeBehavior == "TimeSheet")
            {
                queryFilter = queryFilter.Where(_ => _.Inicio >= DateTime.Now.TodayZeroHours());
                queryFilter = queryFilter.Where(_ => _.Inicio <= DateTime.Now.TomorrowZeroHours());
            }

            return(queryFilter);
        }