Exemplo n.º 1
0
 public DataSourceResult ListStandardTiming(KendoDataRequest kendoDataRequest)
 {
     return(_genericUnitOfWork.GetRepository <StandardTiming, int>().GetAll().ToDataSourceResult <StandardTiming, StandardTimingListViewModel>(kendoDataRequest, new Sort()
     {
         Field = "Id", Dir = "asc"
     }));
 }
Exemplo n.º 2
0
    public async Task KendoResult_Standard()
    {
        await using var context = GetFakeContext();
        await context.Basics.AddAsync(new Basic { Id = 1, Name = "Cat" });

        await context.Basics.AddAsync(new Basic { Id = 2, Name = "Dog" });

        await context.SaveChangesAsync();

        var request = new KendoDataRequest
        {
            Page     = 0,
            PageSize = 5,
            Skip     = 0,
            Take     = 5
        };

        var result = await context.Basics.KendoResultAsync(request);

        Assert.IsType <JsonResult>(result);
        var resultValue = Assert.IsType <KendoResult <Basic> >(result.Value);

        Assert.True(resultValue.Result == "OK");
        Assert.True(resultValue.Count == 2);
        Assert.True(resultValue.Records.Count == 2);
    }
Exemplo n.º 3
0
        public DataSourceResult ListCrossAssignment(KendoDataRequest kendoDataRequest)
        {
            kendoDataRequest.DataExtensions = new List <DataExtension>()
            {
                new DataExtension()
                {
                    Field = "AssignedByName", ActualField = "PostedBy.FullName"
                },
                new DataExtension()
                {
                    Field = "BranchName", ActualField = "Branch.Name"
                },
                new DataExtension()
                {
                    Field = "AssessorName", ActualField = "User.FullName"
                },
                new DataExtension()
                {
                    Field = "AssessmentDate", ActualField = "Date", FieldType = typeof(DateTime)
                },
                new DataExtension()
                {
                    Field = "AssignedDate", ActualField = "CreatedDate", FieldType = typeof(DateTime)
                },
            };

            return(WorkScheduleRepository.GetAll().Where(p => p.WorkScheduleType == WorkScheduleType.CrossAssignmnt).ToDataSourceResult <WorkSchedule, CrossAssignmentListViewModel>(kendoDataRequest, new Sort()
            {
                Field = "Date", Dir = "asc"
            }));
        }
Exemplo n.º 4
0
 public DataSourceResult ListExternalAudit(KendoDataRequest kendoDataRequest)
 {
     return(_genericUnitOfWork.GetRepository <ExternalAudit, Guid>().GetAll().ToDataSourceResult <ExternalAudit, ExternalAuditListViewModel>(kendoDataRequest, new Sort()
     {
         Field = "Id", Dir = "asc"
     }));
 }
Exemplo n.º 5
0
 public DataSourceResult ListReliefStaff(KendoDataRequest kendoDataRequest)
 {
     return(_genericUnitOfWork.GetRepository <ReliefStaff, Guid>().GetAll().ToDataSourceResult <ReliefStaff, ReliefStaffListViewModel>(kendoDataRequest, new Sort()
     {
         Field = "Id", Dir = "asc"
     }));
 }
Exemplo n.º 6
0
 public DataSourceResult ListITCategory(KendoDataRequest kendoDataRequest)
 {
     return(_genericUnitOfWork.GetRepository <IncidentCategory, int>().GetAll().ToDataSourceResult <IncidentCategory, ITCategoryListViewModel>(kendoDataRequest, new Sort()
     {
         Field = "Id", Dir = "asc"
     }));
 }
Exemplo n.º 7
0
 public DataSourceResult ListIncidentSupport(KendoDataRequest kendoDataRequest)
 {
     kendoDataRequest.DataExtensions = new List <DataExtension>()
     {
         new DataExtension()
         {
             Field = "IncidentCategory", ActualField = "IncidentCategory.Name"
         },
         new DataExtension()
         {
             Field = "UrgencyType", FieldType = typeof(UrgencyType)
         },
         new DataExtension()
         {
             Field = "IncidentType", FieldType = typeof(IncidentType)
         },
         new DataExtension()
         {
             Field = "IncidentStatus", FieldType = typeof(IncidentStatus)
         },
         new DataExtension()
         {
             Field = "Branch", ActualField = "Branch.Name"
         }
     };
     return(_genericUnitOfWork.GetRepository <Incident, Guid>().GetAll().Where(x => x.SupportById == null).ToDataSourceResult <Incident, IncidentListViewModel>(kendoDataRequest, new Sort()
     {
         Field = "CreatedDate", Dir = "desc"
     }));
 }
Exemplo n.º 8
0
        public DataSourceResult ListBranchStock(KendoDataRequest kendoDataRequest)
        {
            kendoDataRequest.DataExtensions = new List <DataExtension>()
            {
                new DataExtension()
                {
                    Field = "BranchName", ActualField = "Branch.Name"
                },
                new DataExtension()
                {
                    Field = "Year", FieldType = typeof(int)
                },
                new DataExtension()
                {
                    Field = "MonthNumber", Ignore = true
                }
            };
            var queryable = _genericUnitOfWork.GetRepository <BranchStock, Guid>().GetAll();

            #region CC filter


            var monthFilterValue = Convert.ToInt32(kendoDataRequest.Filter.GetFilterValue("MonthNumber"));
            if (monthFilterValue > 0)
            {
                queryable = queryable.Where(c => c.CreatedDate.Month == (monthFilterValue));
            }
            #endregion
            var result = queryable.ToDataSourceResult <BranchStock, BranchStockListViewModel>(kendoDataRequest, new Sort()
            {
                Field = "CreatedDate", Dir = "asc"
            });
            return(result);
        }
Exemplo n.º 9
0
 public DataSourceResult ListBranchStorageLocation(KendoDataRequest kendoDataRequest)
 {
     kendoDataRequest.DataExtensions = new List <DataExtension>()
     {
         new DataExtension()
         {
             Field = "Branch", ActualField = "Branch.Name"
         },
         new DataExtension()
         {
             Field = "LocationType", FieldType = typeof(StorageLocationType)
         },
         new DataExtension()
         {
             Field = "RegionalBranch", ActualField = "RegionalBranch.Name"
         },
         new DataExtension()
         {
             Field = "RegionalStore", ActualField = "RegionalStore.Name"
         }
     };
     return(_genericUnitOfWork.GetRepository <DocumentStorageLocation, Guid>().GetAll().ToDataSourceResult <DocumentStorageLocation, DocumentStorageLocationListViewModel>(kendoDataRequest, new Sort()
     {
         Field = "Id", Dir = "asc"
     }));
 }
Exemplo n.º 10
0
    public void KendoResult_Standard()
    {
        var items = new List <Basic>
        {
            new() { Id = 1, Name = "Cat" },
            new() { Id = 2, Name = "Dog" }
        };

        var request = new KendoDataRequest
        {
            Page     = 0,
            PageSize = 5,
            Skip     = 0,
            Take     = 5
        };

        var result = items.KendoResult(request);

        Assert.IsType <JsonResult>(result);
        var resultValue = Assert.IsType <KendoResult <Basic> >(result.Value);

        Assert.True(resultValue.Result == "OK");
        Assert.True(resultValue.Count == 2);
        Assert.True(resultValue.Records.Count == 2);
    }
Exemplo n.º 11
0
        public DataSourceResult ListCARRRequest(KendoDataRequest kendoDataRequest, Guid roleId, Guid userId)
        {
            kendoDataRequest.DataExtensions = new List <DataExtension>()
            {
                new DataExtension()
                {
                    Field = "AssessedDate", ActualField = "BOCA.BOCAAssessment.Date"
                },
                new DataExtension()
                {
                    Field = "AssessorName", ActualField = "BOCA.BOCAAssessment.Assessor.FullName"
                },
                new DataExtension()
                {
                    Field = "CARRStatus", FieldType = typeof(CARRStatus)
                },
                new DataExtension()
                {
                    Field = "AssessmentNo", ActualField = "BOCA.BOCAAssessment.AssessmentNo"
                },
                new DataExtension()
                {
                    Field = "Score", ActualField = "BOCA.ScoringGuide.Score"
                },
                new DataExtension()
                {
                    Field = "GradingCriteriaName", ActualField = "BOCA.Observation.GradingCriteria.Name"
                },
                new DataExtension()
                {
                    Field = "ObservationTitle", ActualField = "BOCA.Observation.Title"
                },
                new DataExtension()
                {
                    Field = "ObservationDescription", ActualField = "BOCA.Observation.Description"
                },
            };
            IQueryable <CARRRequest> carrRequestListQueryable = null;

            if (GeneralService.IsAreaAdministratorRole(roleId))
            {
                carrRequestListQueryable = CarrRequestRepository.GetAll().Where(x => x.BOCA.BOCAAssessment.AssessorId == userId && x.BOCA.BOCAAssessment.IsCompleted).OrderByDescending(x => x.ReferenceNo).ThenBy(y => y.CARRStatus);
            }
            else if (roleId == new Guid(ApplicationConstants.BranchOICRoleId))
            {
                carrRequestListQueryable = CarrRequestRepository.GetAll().Where(x => x.BOCA.BOCAAssessment.BranchOICUserId == userId && x.BOCA.BOCAAssessment.IsCompleted).OrderByDescending(x => x.ReferenceNo).ThenBy(y => y.CARRStatus);
            }
            else
            {
                carrRequestListQueryable = CarrRequestRepository.GetAll().OrderByDescending(x => x.ReferenceNo).ThenBy(y => y.CARRStatus);
            }

            return(carrRequestListQueryable.ToDataSourceResult <CARRRequest, CARRRequestListViewModel>(kendoDataRequest, new Sort()
            {
                Field = "AssessmentNo", Dir = "desc"
            }));
        }
 public DataSourceResult ListRecoupmentPayment(KendoDataRequest kendoDataRequest)
 {
     return
         (_genericUnitOfWork.GetRepository <Recoupment, Guid>().GetAll().Where(x => !x.IsPaid)
          .ToDataSourceResult <Recoupment, RecoupmentListViewModel>(kendoDataRequest,
                                                                    new Sort()
     {
         Field = "RequestedDate", Dir = "desc"
     }));
 }
Exemplo n.º 13
0
        public IList <ListViewModel> ListRectificationPic(KendoDataRequest modelKendoDataRequest)
        {
            var branchString  = modelKendoDataRequest.Filter.Filters.SingleOrDefault(c => c.Field == "id")?.Value.ToString();
            var branchId      = new Guid(branchString);
            var branchOicRole = new Guid(ApplicationConstants.BranchOICRoleId);
            var users         = _genericUnitOfWork.GetRepository <User, Guid>().GetAll().Where(c => c.UserBranches.Any(r => r.BranchId == branchId) &&
                                                                                               (c.Roles.Any(p => p.Role.RoleType == RoleType.BranchAdminRole) || c.Roles.Any(z => z.RoleId == branchOicRole)));

            return(_mapper.Map <IList <User>, IList <ListViewModel> >(users.ToList()));
        }
 public DataSourceResult ListBudget(KendoDataRequest kendoDataRequest)
 {
     kendoDataRequest.DataExtensions = new List <DataExtension>()
     {
         new DataExtension()
         {
             Field = "Branch", ActualField = "Branch.Name"
         },
     };
     return(_genericUnitOfWork.GetRepository <PettyCashLedger, Guid>().GetAll().Where(c => c.PettyCashSourceType == PettyCashSourceType.Opening).ToDataSourceResult <PettyCashLedger, BudgetListViewModel>(kendoDataRequest, new Sort()
     {
         Field = "Id", Dir = "asc"
     }));
 }
Exemplo n.º 15
0
        public async Task <IHttpActionResult> ItDetail(KendoDataRequest kendoDataRequest)
        {
            var SupportPersonId = kendoDataRequest.ExternalFilter["SupportPersonId"];

            if (string.IsNullOrEmpty(SupportPersonId.ToString()))
            {
                return(Ok(await kendoDataRequest.GetReport <IncidentServiceCategoryReport>(
                              ItDetailByCategoryTemplatePath,
                              ItDetailByCategoryPath)));
            }

            return(Ok(await kendoDataRequest.GetReport <IncidentServicePersonReport>(
                          ItDetailByItStaffTemplatePath,
                          ItDetailByItStaffPath)));
        }
Exemplo n.º 16
0
        public async Task <IHttpActionResult> GetItSummary(KendoDataRequest kendoDataRequest)
        {
            var groupBy = Convert.ToInt32(kendoDataRequest.ExternalFilter["GroupBy"]);

            if (groupBy == 1)
            {
                return(Ok(await kendoDataRequest.GetReport <IncidentServiceSummaryReport>(
                              ItSummaryByLocationTemplatePath,
                              ItSummaryByLocationPath)));
            }

            return(Ok(await kendoDataRequest.GetReport <IncidentServiceSummaryReport>(
                          ItSummaryByCategoryTemplatePath,
                          ItSummaryByCategoryPath)));
        }
Exemplo n.º 17
0
        public async Task <IHttpActionResult> ParttimerSalary(KendoDataRequest kendoDataRequest)
        {
            var        year  = Convert.ToInt32(kendoDataRequest.ExternalFilter["Year"]);
            var        month = Convert.ToInt32(kendoDataRequest.ExternalFilter["Month"]);
            SalaryType partTimerSalaryType = (SalaryType)Enum.Parse(typeof(SalaryType), kendoDataRequest.ExternalFilter["SalaryType"].ToString());

            var extraInfo = new Dictionary <string, object>()
            {
                { "SalaryType", partTimerSalaryType },
                { "TotalDaysInMonth", new DateTime(year, month, 1).LastDayOfMonth().Day }
            };

            return(Ok(await kendoDataRequest.GetReport <ParttimerSalaryDetailReportViewModel>(ParttimerSalaryTemplatePath,
                                                                                              ParttimerSalaryPath, extraInfo)));
        }
Exemplo n.º 18
0
    /// <summary>
    /// Formats data source into json result kendo ui expects
    /// Applies pagination
    /// </summary>
    /// <typeparam name="T"></typeparam>
    /// <param name="source"></param>
    /// <param name="kendoDataRequest">filer and pagination options</param>
    /// <returns></returns>
    public static JsonResult KendoResult <T>(this IEnumerable <T> source, KendoDataRequest kendoDataRequest) where T : class
    {
        //Execute
        var items = source.ToList();

        //Get the count for kendo ui grids
        var count = items.Count;

        //Skip/Take
        items = items.Skip(kendoDataRequest.Skip).Take(kendoDataRequest.Take).ToList();

        return(new JsonResult(new KendoResult <T> {
            Result = "OK", Records = items, Count = count
        }));
    }
Exemplo n.º 19
0
        public IHttpActionResult BOCAAnnualScoreSummary(KendoDataRequest kendoDataRequest)
        {
            AnnualReportType type = GeneralService.ParseToEnum <AnnualReportType>(kendoDataRequest.ExternalFilter["ReportType"]);

            if (type == AnnualReportType.Score)
            {
                return(Ok(_reportService.GetBOCAAnnualScoreSummary(kendoDataRequest.ToServiceRequestModel())));
            }
            if (type == AnnualReportType.CARR)
            {
                return(Ok(_reportService.GetBOCAAnnualCARRSummary(kendoDataRequest.ToServiceRequestModel())));
            }

            return(Ok(new DataSourceResult()));
        }
Exemplo n.º 20
0
    /// <summary>
    /// Kendo data source support for soft delete, text filtering and sorting
    /// </summary>
    /// <typeparam name="T"></typeparam>
    /// <param name="source"></param>
    /// <param name="kendoDataRequest"></param>
    /// <returns></returns>
    public static IQueryable <T> Kendo <T>(this IQueryable <T> source, KendoDataRequest kendoDataRequest) where T : class
    {
        //Remove soft delete
        source = Core.Extensions.CollectionExtensions.SoftDelete(source);

        //Kendo text filter
        source = EntityFrameworkCore.Extensions.QueryableExtensions.TextFilter(source, kendoDataRequest.TextFilter);

        //Sort
        if (kendoDataRequest.Sort?.Any() != true)
        {
            return(source);
        }

        source = Core.Extensions.CollectionExtensions.OrderBy(source, kendoDataRequest.Sort.First().ToString());
        source = kendoDataRequest.Sort.Skip(1).Aggregate(source, (current, sort) => Core.Extensions.CollectionExtensions.ThenBy(current, sort.ToString()));

        return(source);
    }
Exemplo n.º 21
0
    public void Kendo_CoverAll_No_Sort()
    {
        var items = new List <Basic>
        {
            new() { Id = 1, Name = "Cat" },
            new() { Id = 2, Name = "Dog" }
        };

        var request = new KendoDataRequest
        {
            Page     = 0,
            PageSize = 5,
            Skip     = 0,
            Take     = 5
        };

        var results = items.AsQueryable().Kendo(request);

        Assert.True(results.Count() == 2);
    }
Exemplo n.º 22
0
        public static KendoDataRequest WithUserDetail(this KendoDataRequest model)
        {
            var loginInfo = HttpContext.Current.User.Identity.GetUserLoginInfo();
            var branchIds = loginInfo.LoginUserBranches.Select(c => "'" + c.Id + "'").ToList();

            if (model.ExternalFilter == null)
            {
                model.ExternalFilter = new Dictionary <string, object>();
            }

            if (branchIds.Any())
            {
                model.ExternalFilter.Add("Branches", "[" + string.Join(",", branchIds) + "]");
            }

            model.ExternalFilter.Add("RoleId", loginInfo.RoleId);
            model.ExternalFilter.Add("UserId", loginInfo.UserId);

            return(model);
        }
 public DataSourceResult ListWorkSchedule(KendoDataRequest kendoDataRequest)
 {
     kendoDataRequest.DataExtensions = new List <DataExtension>()
     {
         new DataExtension()
         {
             Field = "UserName", ActualField = "User.FullName"
         },
         new DataExtension()
         {
             Field = "BranchName", ActualField = "Branch.Name"
         },
         new DataExtension()
         {
             Field = "Date", FieldType = typeof(DateTime)
         },
     };
     return(_genericUnitOfWork.GetRepository <WorkSchedule, Guid>().GetAll().Where(c => c.IsPosted && c.WorkScheduleType == WorkScheduleType.Others).ToDataSourceResult <WorkSchedule, WorkScheduleListViewModel>(kendoDataRequest, new Sort()
     {
         Field = "Id", Dir = "asc"
     }));
 }
Exemplo n.º 24
0
        public IList <ListViewModel> ListBranchByAssessmentType(KendoDataRequest kendoDataRequest)
        {
            var branches       = _genericUnitOfWork.GetRepository <Branch, Guid>().GetAll();
            var selectedUserId = kendoDataRequest.Filter.Filters.SingleOrDefault(p => p.Field == "id")?.Value.ToString();
            var textSearch     = kendoDataRequest.Filter.Filters.SingleOrDefault(p => p.Field == "Text");
            var searchText     = "";

            if (textSearch?.Value != null && string.IsNullOrEmpty(textSearch.Value.ToString()))
            {
                searchText = textSearch.Value.ToString();
            }



            if (!string.IsNullOrEmpty(searchText))
            {
                branches = branches.Where(c => c.Name.Contains(searchText));
            }

            var userBranchIds = _genericUnitOfWork.GetRepository <UserBranch, Guid>().GetAll().Where(y => y.UserId == new Guid(selectedUserId)).Select(x => x.BranchId).ToList();

            return(_mapper.Map <IList <Branch>, IList <ListViewModel> >(branches.Where(x => x.IsActive && !userBranchIds.Contains(x.Id) && x.Id != new Guid(ApplicationConstants.HQBranchId)).OrderBy(c => c.Name).ToList()));;
        }
        public DataSourceResult ListBudgetLimit(KendoDataRequest kendoDataRequest)
        {
            kendoDataRequest.DataExtensions = new List <DataExtension>()
            {
                new DataExtension()
                {
                    Field = "Branch", ActualField = "Branch.Name"
                },
                new DataExtension()
                {
                    Field = "ExpensesTypeId", FieldType = typeof(int)
                },
                new DataExtension()
                {
                    Field = "Limit", FieldType = typeof(decimal)
                },
            };
            var result = _genericUnitOfWork.GetRepository <BudgetLimit, Guid>().GetAll().ToDataSourceResult <BudgetLimit, BudgetLimitListViewModel>(kendoDataRequest, new Sort()
            {
                Field = "Id", Dir = "asc"
            });

            return(result);
        }
 public async Task <IHttpActionResult> NonAPLItemClaimList(KendoDataRequest kendoDataRequest)
 {
     return(Ok(await WebApiService.Instance.PostAsync <DataSourceResult <NonAPLItemClaimListViewModel> >("claim/NonAPLItemClaim/list", kendoDataRequest)));
 }
 public async Task <IHttpActionResult> ListClaimPay(KendoDataRequest kendoDataRequest)
 {
     return(Ok(await WebApiService.Instance.PostAsync <DataSourceResult <ClaimPayListViewModel> >("claim/pay/list", kendoDataRequest)));
 }
 public async Task <IHttpActionResult> ListStaffLunchAllowanceClaim(KendoDataRequest kendoDataRequest)
 {
     return(Ok(await WebApiService.Instance.PostAsync <DataSourceResult <StaffLunchAllowanceClaimListViewModel> >("claim/StaffLunchAllowanceClaim/list", kendoDataRequest)));
 }
 public async Task <IHttpActionResult> ListBabyHamperClaim(KendoDataRequest kendoDataRequest)
 {
     return(Ok(await WebApiService.Instance.PostAsync <DataSourceResult <BabyHamperClaimListViewModel> >("claim/BabyHamperClaim/list", kendoDataRequest)));
 }
 public async Task <IHttpActionResult> GeneralExpensesClaimList(KendoDataRequest kendoDataRequest)
 {
     return(Ok(await WebApiService.Instance.PostAsync <DataSourceResult <GeneralExpensesClaimListViewModel> >("claim/GeneralExpensesClaim/list", kendoDataRequest)));
 }