예제 #1
0
 private static void CreateEnvelopsForMembers(string senderAddr, ContactReportResultDto contact, ContactReportAddress addr, FilterContactReport filter)
 {
     foreach (ContactReportMambers member in contact.Members)
     {
         AddEnvelopPage(senderAddr, (filter.SkipTitles ? "" : member.Title) + member.FirstName + " " + member.LastName, addr, filter);
     }
 }
예제 #2
0
 private static void FillWithAddresses(FilterContactReport filter, ContactReportResultDto contact)
 {
     if (filter.ReportType == TransFilterType.Family)
     {
         if (contact.Addresses.Any())
         {
             foreach (ContactReportAddress address in contact.Addresses)
             {
                 FillContRow(contact, filter, address.CompanyName, address);
             }
         }
         else
         {
             FillContRow(contact, filter, "", null);
         }
     }
     if (filter.ReportType == TransFilterType.Member)
     {
         foreach (ContactReportMambers member in contact.Members)
         {
             if (contact.Addresses.Any())
             {
                 foreach (ContactReportAddress address in contact.Addresses)
                 {
                     FillContRow(member, filter, address.CompanyName, address);
                 }
             }
             else
             {
                 FillContRow(member, filter, "", null);
             }
         }
     }
 }
예제 #3
0
        static void FillContRow(ContactReportResultDto contact, FilterContactReport filter, string companyName, ContactReportAddress address)
        {
            colsRows++;
            Row row = _table.AddRow();

            var startIndex = 1;

            //fam name
            FillRow(row, 0, contact.FamilyName,
                    false, ParagraphAlignment.Left,
                    VerticalAlignment.Center);
            //company
            if (filter.Columns.Any(r => r.Column == ReportColumns.Company))
            {
                startIndex++;
                FillRow(row, 1,
                        string.IsNullOrEmpty(companyName) ? "" : companyName,
                        false, ParagraphAlignment.Left,
                        VerticalAlignment.Center);
            }
            // addresses
            int position = filter.Columns.Any(r => r.Column == ReportColumns.Company) ? 2 : 1;

            if (filter.Columns.Any(e => e.Column == ReportColumns.Address && e.IsChecked))
            {
                FillRow(row, position, address != null ? (string.IsNullOrEmpty(address.Address) ? "" : address.Address) : "",
                        false, ParagraphAlignment.Left,
                        VerticalAlignment.Center);
                startIndex++;
                position++;
            }
            if (filter.Columns.Any(e => (int)e.Column >= 8 && (int)e.Column <= 12 && e.IsChecked))
            {
                startIndex++;
                FillRow(row, position, address != null ? GetShortAddressLine(address, filter) : "",
                        false, ParagraphAlignment.Left,
                        VerticalAlignment.Center);
            }
            //contacts
            var cols = filter.Columns.Where(e => (int)e.Column >= 0 && (int)e.Column <= 7)
                       .OrderBy(q => q.Column)
                       .ToList();

            for (int i = 0; i < cols.Count; i++)
            {
                var index = startIndex + i;
                var col   = cols[i];
                FillRow(row, index,
                        GetContactsForFamily(contact.Members.ToList(), filter, (int)col.Column), false,
                        ParagraphAlignment.Left,
                        VerticalAlignment.Center);
            }
        }
        void CreateEnvelopsForMembers(ref Dictionary <int, EnvelopeAddress> labels, string senderAddr, ContactReportResultDto contact, ContactReportAddress addr, FilterContactReport filter)
        {
            var index   = labels.Count;
            var members = contact.Members.ToList();

            for (int i = 0; i < members.Count; i++)
            {
                labels.Add(index + i, AddEnvelopAddress(senderAddr, addr, filter.ReportType, members[i].Gender));
            }
        }