Exemplo n.º 1
0
        public bool Match(CrmVipCard vipCard, DateTime saleTime)
        {
            if (vipCard == null)
            {
                return(false);
            }
            bool ok = false;

            if (OnlyExistVipId)
            {
                ok = ((VipIds != null) && VipIds.Contains(vipCard.CardId));
            }
            else
            {
                ok = ((VipTypes == null) || (VipTypes.Contains(vipCard.CardTypeId))) &&
                     ((IdCardTypes == null) || (IdCardTypes.Contains(vipCard.IdCardType))) &&
                     ((JobTypes == null) || (JobTypes.Contains(vipCard.JobType))) &&
                     ((SexTypes == null) || (SexTypes.Contains(vipCard.SexType))) &&
                     ((IssueCardCompanyIds == null) || (IssueCardCompanyIds.Contains(vipCard.IssueCardCompanyId)));
            }
            if (ok && (BirthdayMode > 0))
            {
                switch (BirthdayMode)
                {
                case 1:         //生日
                    ok = ((vipCard.Birthday > DateTime.MinValue) && (DateTimeUtils.CheckBirthday(vipCard.Birthday, saleTime, vipCard.BirthdayIsChinese)));
                    break;

                case 2:         //生日当月
                    ok = ((vipCard.Birthday > DateTime.MinValue) && (DateTimeUtils.CheckBirthmonth(vipCard.Birthday, saleTime, vipCard.BirthdayIsChinese)));
                    break;
                }
            }
            return(ok);
        }