예제 #1
0
        public void CreateMedicalVendorEarningAggregatesReturnsOneItemWhenGivenSingleRow()
        {
            var medicalVendorEarningCustomerTypedView = new MedicalVendorEarningCustomerTypedView();

            medicalVendorEarningCustomerTypedView.Rows.Add();

            List <MedicalVendorEarningCustomerAggregate> medicalVendorEarningCustomerAggregates =
                _medicalVendorEarningCustomerAggregateFactory.CreateMedicalVendorEarningAggregates
                    (medicalVendorEarningCustomerTypedView);

            Assert.AreEqual(medicalVendorEarningCustomerTypedView.Rows.Count, medicalVendorEarningCustomerAggregates.Count);
        }
예제 #2
0
        private List <MedicalVendorEarningCustomerAggregate> FetchEarningCustomerAggregates(IRelationPredicateBucket bucket,
                                                                                            int pageSize, int pageNumber)
        {
            var medicalVendorEarningCustomerTypedView = new MedicalVendorEarningCustomerTypedView();

            using (var myAdapter = PersistenceLayer.GetDataAccessAdapter())
            {
                var sortExpression = new SortExpression(MedicalVendorEarningCustomerFields.EvaluationDate | SortOperator.Descending);
                myAdapter.FetchTypedView(new MedicalVendorEarningCustomerTypedView().GetFieldsInfo(),
                                         medicalVendorEarningCustomerTypedView, bucket, pageSize, sortExpression, false, null, pageNumber, pageSize);
            }
            return(_medicalVendorEarningCustomerAggregateFactory.CreateMedicalVendorEarningAggregates(medicalVendorEarningCustomerTypedView));
        }
예제 #3
0
        // TODO: TEST (integration)
        public List <MedicalVendorEarningCustomerAggregate> GetEarningCustomerAggregatesNotInDateRanges
            (long organizationRoleUserId, List <OrderedPair <DateTime, DateTime> > dateRanges)
        {
            IRelationPredicateBucket bucket = new RelationPredicateBucket
                                                  (MedicalVendorEarningCustomerFields.OrganizationRoleUserId == organizationRoleUserId);

            foreach (var dateRange in dateRanges)
            {
                bucket.PredicateExpression.Add(!(MedicalVendorEarningCustomerFields.EvaluationDate >= dateRange.FirstValue &
                                                 MedicalVendorEarningCustomerFields.EvaluationDate <= dateRange.SecondValue.GetEndOfDay()));
            }
            var medicalVendorEarningCustomerTypedView = new MedicalVendorEarningCustomerTypedView();

            using (var myAdapter = PersistenceLayer.GetDataAccessAdapter())
            {
                myAdapter.FetchTypedView(new MedicalVendorEarningCustomerTypedView().GetFieldsInfo(),
                                         medicalVendorEarningCustomerTypedView, bucket, false);
            }
            return(_medicalVendorEarningCustomerAggregateFactory.CreateMedicalVendorEarningAggregates
                       (medicalVendorEarningCustomerTypedView));
        }
예제 #4
0
        public List <MedicalVendorEarningCustomerAggregate> CreateMedicalVendorEarningAggregates(MedicalVendorEarningCustomerTypedView
                                                                                                 medicalVendorEarningCustomerTypedView)
        {
            if (medicalVendorEarningCustomerTypedView == null)
            {
                throw new ArgumentNullException("medicalVendorEarningCustomerTypedView");
            }
            var medicalVendorEarningCustomerAggregates = new List <MedicalVendorEarningCustomerAggregate>();

            foreach (var medicalVendorEarningCustomerRow in medicalVendorEarningCustomerTypedView)
            {
                medicalVendorEarningCustomerAggregates.Add(CreateMedicalVendorEarningAggregate(medicalVendorEarningCustomerRow));
            }
            return(medicalVendorEarningCustomerAggregates);
        }