예제 #1
0
        public void FilterPayersNames(string filter)
        {
            IEnumerable <TransactionData> payers = AllPayers;

            if (!string.IsNullOrWhiteSpace(filter))
            {
                payers = payers.Where(t => t.Name.Contains(filter));
            }

            FilteredNames = payers.Select(t => t.Name)                                               //select only names
                            .Concat(Payers.Select(t => t.Name))                                      //merge Names of allready added payers with names of all payers
                            .GroupBy(t => t).Where(g => g.Count() == 1).Select(g => g.Key).ToList(); //select only unique entries

            MoveCurrentUserToTop(FilteredNames);
        }
예제 #2
0
 public virtual IEnumerable <IAuditRecord> GetAuditRecords(IEnumerable <AuditableProperty> properties)
 {
     if (properties != null && properties.Any(p => p.Property.Name.Equals("Status")))
     {
         return(Payers.Select(payer => new PayerAuditRecord(payer, "$$$", EditComment)
         {
             ShowOnlyPayer = true,
             ObjectType = LogObjectType.Client,
             ObjectId = Id,
             Name = Name
         })
                .Cast <IAuditRecord>()
                .Concat(new[] { new AuditRecord(this)
                                {
                                    MessageType = LogMessageType.System, Type = LogObjectType.Client, Name = Name
                                } }));
     }
     return(new List <IAuditRecord> {
         new AuditRecord(this)
         {
             MessageType = LogMessageType.System, Type = LogObjectType.Client, Name = Name
         }
     });
 }