Ejemplo n.º 1
0
        public void TestVerifyProviderReportFees()
        {
            var accountController = new ManageAccountController(new AdminList(),
                                                                new ManagerList(), new MemberList(), new ProviderList());
            var serviceController = new ManageServiceController(new MemberList(), new ProviderList(),
                                                                new ProviderDirectory(), new ServiceRecordList());
            var reportController = new ManageReportController(new MemberList(), new ProviderList(),
                                                              new ProviderDirectory(), new ScheduleList(), new ServiceRecordList());

            var newMember = new Member()
            {
                Name          = "John Deere",
                City          = "Maple Grove",
                State         = "MN",
                StreetAddress = "11 st 25",
                ZipCode       = "12345",
                Status        = MemberStatus.ACCEPTED
            };

            var newProvider = new Provider()
            {
                Name          = "John Deere",
                City          = "Maple Grove",
                State         = "MN",
                StreetAddress = "11 st 25",
                ZipCode       = "12345",
                BankAccount   = 1234567890
            };

            var newMemberId   = accountController.AddMember(newMember);
            var newProviderId = accountController.AddProvider(newProvider);

            Assert.IsTrue(newMemberId.HasValue, "unable to add new member");
            Assert.IsTrue(newProviderId.HasValue, "unable to add new provider");

            var services    = serviceController.GetAllServices();
            var serviceCode = null != services && services.Any() ? services.First().ServiceCode : new int?();

            Assert.IsTrue(serviceCode.HasValue, "unable to get service code");

            var newServiceRecord = new ServiceRecord(serviceCode.Value,
                                                     DateTime.Now, DateTime.Today, newProviderId.Value, newMemberId.Value, "test");

            var newServiceRecordId = serviceController.AddServiceRecord(newServiceRecord);

            Assert.IsTrue(newServiceRecordId.HasValue, "unable to add service record");

            var feeVerified       = true;
            var verifyReportInput = new VerifyReportViewModel(newProviderId.Value, DateTime.Today.AddDays(-2), DateTime.Today.AddDays(1));
            var success           = reportController.VerifyProviderReportFees(verifyReportInput);

            var serviceRecord = serviceController.GetServiceRecord(newServiceRecordId.Value);

            Assert.IsTrue(null != serviceRecord, "unable to get service record");

            Assert.AreEqual(serviceRecord.FeeVerified, feeVerified, "service verified are not equal");
        }
Ejemplo n.º 2
0
        public bool VerifyProviderReportFees([FromBody] VerifyReportViewModel input)
        {
            bool success = false;

            try
            {
                if (null != input)
                {
                    if (null != providerList.GetProvider(input.ProviderNumber))
                    {
                        success = serviceRecordList.VerifyServiceRecords(input.ProviderNumber,
                                                                         input.StartDate, input.EndDate, true, null);
                        if (!success)
                        {
                            throw new Exception("unable to verify provider report fees.");
                        }
                    }
                    else
                    {
                        throw new Exception("invalid provider");
                    }
                }
                else
                {
                    throw new Exception("invalid input");
                }
            }
            catch (Exception e)
            {
                success = false;
                if (e.GetType() != typeof(HttpResponseException))
                {
                    throw new HttpResponseException(
                              Request.CreateErrorResponse(HttpStatusCode.BadRequest, e.Message));
                }
                else
                {
                    throw e;
                }
            }

            return(success);
        }