private void ExecuteShowReport() { Result = null; SearchStatus = String.Empty; if (SelectedContributionColumns.Count == 0) { MessageBox.Show("No Columns selected"); return; } if (DateTime.Compare(StartDate.Date, EndDate.Date) > 0) { MessageBox.Show("Start Date should be before End Date"); return; } Result = new FlowDocument(); if (!WithDetails) { List <MahalluManager.Model.Contribution> input = null; using (UnitOfWork unitOfWork = new UnitOfWork(new MahalluDBContext())) { if (DateTime.Compare(StartDate, EndDate) == 0) { input = unitOfWork.Contributions.GetAll().Where(x => DateTime.Compare(x.CreatedOn, StartDate.Date) == 0).ToList(); } else { input = unitOfWork.Contributions.GetAll().Where(x => DateTime.Compare(x.CreatedOn, StartDate) >= 0 && DateTime.Compare(x.CreatedOn, EndDate) <= 0).ToList(); } if (Category != null) { input = input.Where(x => x.CategoryName == Category.Name).ToList();; } } if (ValidateReportParameters()) { BuildReport(input); } } else { List <MahalluManager.Model.Contribution> input = null; using (UnitOfWork unitOfWork = new UnitOfWork(new MahalluDBContext())) { input = unitOfWork.Contributions.GetAll().ToList(); if (Category != null) { input = input.Where(x => x.CategoryName == Category.Name).ToList();; } } List <ContributionDetail> inputDetails = null; using (UnitOfWork unitOfWork = new UnitOfWork(new MahalluDBContext())) { if (DateTime.Compare(StartDate, EndDate) == 0) { inputDetails = unitOfWork.ContributionDetails.GetAll().Where(x => DateTime.Compare(x.CreatedOn, StartDate.Date) == 0).ToList(); } else { inputDetails = unitOfWork.ContributionDetails.GetAll().Where(x => DateTime.Compare(x.CreatedOn, StartDate) >= 0 && DateTime.Compare(x.CreatedOn, EndDate) <= 0).ToList(); } } String[] temp = null; if (!String.IsNullOrEmpty(HouseNumber)) { if (HouseNumber.Contains(";")) { temp = HouseNumber.Split(';'); } else { temp = new string[1]; temp[0] = HouseNumber; } if (temp != null) { inputDetails = inputDetails.Where(x => temp.Contains(x.HouserNumber.ToString(), new ContainsComparer())).ToList(); } } if (!String.IsNullOrEmpty(HouseName)) { temp = null; if (HouseName.Contains(";")) { temp = HouseName.Split(';'); } else { temp = new string[1]; temp[0] = HouseName; } if (temp != null) { inputDetails = inputDetails.Where(x => temp.Contains(x.HouserName, new ContainsComparer())).ToList(); } } if (!String.IsNullOrEmpty(MemberName)) { temp = null; if (MemberName.Contains(";")) { temp = MemberName.Split(';'); } else { temp = new string[1]; temp[0] = MemberName; } if (temp != null) { inputDetails = inputDetails.Where(x => temp.Contains(x.MemberName, new ContainsComparer())).ToList(); } } if (ValidateReportParameters()) { BuildReport(input, inputDetails); } } }
private void ExecuteShowReport() { if (SelectedResidenceColumns.Count == 0) { MessageBox.Show("No Columns selected"); Result = null; SearchStatus = String.Empty; return; } Result = new FlowDocument(); List <Residence> input = null; using (UnitOfWork unitOfWork = new UnitOfWork(new MahalluDBContext())) { input = unitOfWork.Residences.GetAll().ToList(); String[] temp = null; if (!String.IsNullOrEmpty(Area)) { if (Area.Contains(";")) { temp = Area.Split(';'); } else { temp = new string[1]; temp[0] = Area; } if (temp != null) { input = input.Where(x => temp.Contains(x.Area, new ContainsComparer())).ToList(); } } if (!String.IsNullOrEmpty(HouseName)) { temp = null; if (HouseName.Contains(";")) { temp = HouseName.Split(';'); } else { temp = new string[1]; temp[0] = HouseName; } if (temp != null) { input = input.Where(x => temp.Contains(x.Name, new ContainsComparer())).ToList(); } } if (!String.IsNullOrEmpty(HouseNumber)) { temp = null; if (HouseNumber.Contains(";")) { temp = HouseNumber.Split(';'); } else { temp = new string[1]; temp[0] = HouseNumber; } if (temp != null) { input = input.Where(x => temp.Contains(x.Number, new ContainsComparer())).ToList(); } } } List <ResidenceMember> members = null; using (UnitOfWork unitOfWork = new UnitOfWork(new MahalluDBContext())) { members = unitOfWork.ResidenceMembers.GetAll().ToList(); String[] temp = null; if (!String.IsNullOrEmpty(MarriageStatus)) { if (MarriageStatus.Contains(";")) { temp = MarriageStatus.Split(';'); } else { temp = new string[1]; temp[0] = MarriageStatus; } if (temp != null) { members = members.Where(x => temp.Contains(x.MarriageStatus, new ContainsComparer())).ToList(); } } if (!String.IsNullOrEmpty(Country)) { temp = null; if (Country.Contains(";")) { temp = Country.Split(';'); } else { temp = new string[1]; temp[0] = Country; } if (temp != null) { members = members.Where(x => temp.Contains(x.Country, new ContainsComparer())).ToList(); } } if (!String.IsNullOrEmpty(Qualification)) { temp = null; if (Qualification.Contains(";")) { temp = Qualification.Split(';'); } else { temp = new string[1]; temp[0] = Qualification; } if (temp != null) { members = members.Where(x => temp.Contains(x.Qualification, new ContainsComparer())).ToList(); } } if (!String.IsNullOrEmpty(Gender)) { temp = null; if (Gender.Contains(";")) { temp = Gender.Split(';'); } else { temp = new string[1]; temp[0] = Gender; } if (temp != null) { members = members.Where(x => temp.Contains(x.Gender, new ContainsComparer())).ToList(); } } } if (ValidateReportParameters()) { BuildReport(input, members); } }