Ejemplo n.º 1
0
        public List <MedicalVendorMedicalVendorUserAggregate> CreateMedicalVendorMedicalVendorUserAggregates
            (List <MedicalVendorMedicalVendorUser> medicalVendorMedicalVendorUsers,
            MedicalVendorMvuserEarningAndPayRateTypedView medicalVendorMedicalVendorUserEarningAndPayRateView,
            MedicalVendorMvuserPaymentTypedView medicalVendorMedicalVendorUserPaymentView)
        {
            if (medicalVendorMedicalVendorUsers == null)
            {
                throw new ArgumentNullException("medicalVendorMedicalVendorUsers");
            }
            if (medicalVendorMedicalVendorUserEarningAndPayRateView == null)
            {
                throw new ArgumentNullException("medicalVendorMedicalVendorUserEarningAndPayRateView");
            }
            if (medicalVendorMedicalVendorUserPaymentView == null)
            {
                throw new ArgumentNullException("medicalVendorMedicalVendorUserPaymentView");
            }
            var medicalVendorMedicalVendorUserAggregates = new List <MedicalVendorMedicalVendorUserAggregate>();

            foreach (var medicalVendorMedicalVendorUser in medicalVendorMedicalVendorUsers)
            {
                MedicalVendorMedicalVendorUserAggregate medicalVendorMedicalVendorUserAggregate =
                    CreateMedicalVendorMedicalVendorUserAggregate(medicalVendorMedicalVendorUser,
                                                                  medicalVendorMedicalVendorUserEarningAndPayRateView, medicalVendorMedicalVendorUserPaymentView);
                medicalVendorMedicalVendorUserAggregates.Add(medicalVendorMedicalVendorUserAggregate);
            }
            return(medicalVendorMedicalVendorUserAggregates);
        }
Ejemplo n.º 2
0
        public MedicalVendorMedicalVendorUserAggregate CreateMedicalVendorMedicalVendorUserAggregate
            (MedicalVendorMedicalVendorUser medicalVendorMedicalVendorUser,
            MedicalVendorMvuserEarningAndPayRateTypedView medicalVendorMedicalVendorUserEarningAndPayRateView,
            MedicalVendorMvuserPaymentTypedView medicalVendorMedicalVendorUserPaymentView)
        {
            if (medicalVendorMedicalVendorUser == null)
            {
                throw new ArgumentNullException("medicalVendorMedicalVendorUser");
            }
            if (medicalVendorMedicalVendorUserEarningAndPayRateView == null)
            {
                throw new ArgumentNullException("medicalVendorMedicalVendorUserEarningAndPayRateView");
            }
            if (medicalVendorMedicalVendorUserPaymentView == null)
            {
                throw new ArgumentNullException("medicalVendorMedicalVendorUserPaymentView");
            }
            int     numberOfEvaluations = 0;
            decimal payRate             = 0m;
            decimal totalEarnings       = 0m;
            decimal totalPayments       = 0m;

            if (medicalVendorMedicalVendorUserEarningAndPayRateView.Where(m =>
                                                                          m.OrganizationRoleUserId == medicalVendorMedicalVendorUser.Id).Count() > 0)
            {
                MedicalVendorMvuserEarningAndPayRateRow medicalVendorMVUserEarningAndPayRateRow =
                    medicalVendorMedicalVendorUserEarningAndPayRateView.Where(m =>
                                                                              m.OrganizationRoleUserId == medicalVendorMedicalVendorUser.Id).Single();

                numberOfEvaluations = medicalVendorMVUserEarningAndPayRateRow.NumberOfEvaluations;
                payRate             = medicalVendorMVUserEarningAndPayRateRow.OfferRate;
                totalEarnings       = medicalVendorMVUserEarningAndPayRateRow.AmountEarned;
            }
            if (medicalVendorMedicalVendorUserPaymentView.Where(m =>
                                                                m.OrganizationRoleUserId == medicalVendorMedicalVendorUser.Id).Count() > 0)
            {
                MedicalVendorMvuserPaymentRow medicalVendorMVUserPaymentRow = medicalVendorMedicalVendorUserPaymentView.
                                                                              Where(m => m.OrganizationRoleUserId == medicalVendorMedicalVendorUser.Id).Single();
                totalPayments = medicalVendorMVUserPaymentRow.AmountPaid;
            }
            return(new MedicalVendorMedicalVendorUserAggregate
            {
                MedicalVendorMedicalVendorUser = medicalVendorMedicalVendorUser,
                NumberOfEvaluations = numberOfEvaluations,
                PayRate = payRate,
                TotalEarnings = totalEarnings,
                TotalPayments = totalPayments,
            });
        }
Ejemplo n.º 3
0
        public List <MedicalVendorMedicalVendorUserAggregate> GetMedicalVendorMedicalVendorUserAggregates(long medicalVendorId)
        {
            List <MedicalVendorMedicalVendorUser> medicalVendorMedicalVendorUsers = _medicalVendorMedicalVendorUserRepository
                                                                                    .GetMedicalVendorMedicalVendorUsersForMedicalVendor(medicalVendorId);

            var medicalVendorMedicalVendorUserEarningAndPayRateView = new MedicalVendorMvuserEarningAndPayRateTypedView();
            IRelationPredicateBucket earningBucket = new RelationPredicateBucket(MedicalVendorMvuserEarningAndPayRateFields
                                                                                 .OrganizationId == medicalVendorId);
            var medicalVendorMedicalVendorUserPaymentView = new MedicalVendorMvuserPaymentTypedView();
            IRelationPredicateBucket paymentBucket        = new RelationPredicateBucket(MedicalVendorMvuserPaymentFields
                                                                                        .OrganizationId == medicalVendorId);

            using (var myAdapter = PersistenceLayer.GetDataAccessAdapter())
            {
                myAdapter.FetchTypedView(medicalVendorMedicalVendorUserEarningAndPayRateView, earningBucket, false);
                myAdapter.FetchTypedView(medicalVendorMedicalVendorUserPaymentView, paymentBucket, false);
            }

            return(_medicalVendorMedicalVendorUserAggregateFactory.CreateMedicalVendorMedicalVendorUserAggregates
                       (medicalVendorMedicalVendorUsers, medicalVendorMedicalVendorUserEarningAndPayRateView,
                       medicalVendorMedicalVendorUserPaymentView));
        }