Exemplo n.º 1
0
        private MemberAccess AccessMember(ChannelApp app, IEmployer employer, ProfessionalView view, MemberAccessReason reason)
        {
            // An anonymous employer means insufficient credits.

            if (employer == null)
            {
                throw new InsufficientCreditsException {
                          Available = 0, Required = 1
                }
            }
            ;

            // Make sure the details are visible.

            CheckVisibility(view, reason);

            // Check against limits.

            CheckAccessLimit(employer.Id, view.Id, reason);

            // Exercise the credit.

            var exercisedCreditId = _employerCreditsCommand.ExerciseContactCredit(employer, view);

            // Record the access.

            return(CreateMemberAccess(app, employer.Id, view.Id, reason, exercisedCreditId));
        }
Exemplo n.º 2
0
        public override Employer CreateEmployer(Member[] members)
        {
            var employer = CreateEmployer(10, DateTime.Now.AddMonths(6).Date);

            foreach (var member in members)
            {
                _employerCreditsCommand.ExerciseContactCredit(employer, _employerMemberViewsQuery.GetProfessionalView(employer, member));
            }
            if (HasExpired)
            {
                ExpireCredits();
            }
            return(employer);
        }