Ejemplo n.º 1
0
        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);
                }
            }
        }
Ejemplo n.º 2
0
        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);
            }
        }