public DataSourceResult ListStandardTiming(KendoDataRequest kendoDataRequest) { return(_genericUnitOfWork.GetRepository <StandardTiming, int>().GetAll().ToDataSourceResult <StandardTiming, StandardTimingListViewModel>(kendoDataRequest, new Sort() { Field = "Id", Dir = "asc" })); }
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); }
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" })); }
public DataSourceResult ListExternalAudit(KendoDataRequest kendoDataRequest) { return(_genericUnitOfWork.GetRepository <ExternalAudit, Guid>().GetAll().ToDataSourceResult <ExternalAudit, ExternalAuditListViewModel>(kendoDataRequest, new Sort() { Field = "Id", Dir = "asc" })); }
public DataSourceResult ListReliefStaff(KendoDataRequest kendoDataRequest) { return(_genericUnitOfWork.GetRepository <ReliefStaff, Guid>().GetAll().ToDataSourceResult <ReliefStaff, ReliefStaffListViewModel>(kendoDataRequest, new Sort() { Field = "Id", Dir = "asc" })); }
public DataSourceResult ListITCategory(KendoDataRequest kendoDataRequest) { return(_genericUnitOfWork.GetRepository <IncidentCategory, int>().GetAll().ToDataSourceResult <IncidentCategory, ITCategoryListViewModel>(kendoDataRequest, new Sort() { Field = "Id", Dir = "asc" })); }
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" })); }
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); }
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" })); }
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); }
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" })); }
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" })); }
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))); }
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))); }
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))); }
/// <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 })); }
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())); }
/// <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); }
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); }
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" })); }
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))); }