public (IEnumerable <TicketViewModel>, int) EmployeeDailyTicket(TicketEmployeeSearchModel search) { var DateOfNow = DateTime.Now.AddServerTimeHours().Date; var query = Context.Tickets.Where(t => t.CreatedAt.Date == DateOfNow && t.BranchDepartementId == search.branchDepartementId && (search.statusIds.Count == 0 || search.statusIds.Contains(t.StatusId)) && (search.ticketIds.Count == 0 || search.ticketIds.Contains(t.Id)) && (search.ticketNumbers.Count == 0 || search.ticketNumbers.Contains(t.TicketNumber))) .Select(t => new TicketViewModel { Id = t.Id, CreateTime = t.CreatedAt, TicketNumber = t.TicketNumber, VisitorId = t.CreatedById.Value, VisitorName = t.CreatedBy.UserName, BranchId = t.BranchDepartement.BranchId, BranchNameAR = t.BranchDepartement.Branch.NameAR, BranchNameEN = t.BranchDepartement.Branch.NameEN, DepartementId = t.BranchDepartement.DepartementId, DepartementNameAR = t.BranchDepartement.Departement.NameAR, DepartementNameEN = t.BranchDepartement.Departement.NameEN, StatusId = t.StatusId, StatusNameAR = t.Status.NameAR, StatusNameEN = t.Status.NameEN, BranchDepartementId = t.BranchDepartementId }); var count = query.Count(); var data = query.OrderBy(c => c.TicketNumber).Skip((search.pageNumber - 1) * search.pageSize).Take(search.pageSize); return(data, count); }
public ActionResult EmployeeDailyTickets([FromQuery] TicketEmployeeSearchModel search) { int branchDepartementId = int.Parse(User.GetClaims("BranchDepartementId")); search.branchDepartementId = branchDepartementId; var response = service.EmployeeDailyTickets(search); return(Ok(response)); }
public IResponse EmployeeDailyTickets(TicketEmployeeSearchModel search) { var(result, totalRows) = UOW.Tickets.EmployeeDailyTicket(search); response.pagesTotalRows = totalRows; float all_pages = (float)totalRows / search.pageSize; response.pagesTotalNumber = (int)Math.Ceiling(all_pages); response.pageSize = search.pageSize; response.pageNumber = search.pageNumber; response.data = result; return(response); }