public MedicalVendor Save(MedicalVendor medicalVendor) { using (var myAdapter = PersistenceLayer.GetDataAccessAdapter()) { var medicalVendorProfileEntity = _medicalVendorFactory.CreateMedicalVendorEntity(medicalVendor); try { var entity = new MedicalVendorProfileEntity(medicalVendor.Id); if (myAdapter.FetchEntity(entity)) { medicalVendorProfileEntity.IsNew = false; } } catch (ObjectNotFoundInPersistenceException <MedicalVendor> ) { medicalVendorProfileEntity.IsNew = true; } if (!myAdapter.SaveEntity(medicalVendorProfileEntity, true)) { throw new PersistenceFailureException(); } medicalVendor.Id = medicalVendorProfileEntity.OrganizationId; return(medicalVendor); } }
public MedicalVendorProfileEntity CreateMedicalVendorEntity(MedicalVendor vendor) { var profileEntity = new MedicalVendorProfileEntity(vendor.Id) { ContractId = vendor.ContractId, TypeId = (long)vendor.MedicalVendorType, IsHospitalPartner = vendor.IsHospitalPartner, ResultLetterCoBrandingFileId = vendor.ResultLetterCoBrandingFileId, DoctorLetterFileId = vendor.DoctorLetterFileId }; return(profileEntity); }
public MedicalVendor ToDomain(MedicalVendorEditModel model) { var binder = new OrganizationCreateModelBinder(); var medicalVendor = new MedicalVendor(); medicalVendor = binder.ToDomain(medicalVendor, model) as MedicalVendor; medicalVendor.MedicalVendorType = model.MedicalVendorType; medicalVendor.ContractId = model.ContractId; medicalVendor.IsHospitalPartner = model.IsHospitalPartner; //medicalVendor.PaymentInstructionId = model.PaymentInstructions.Id; //medicalVendor.EvaluationMode = model.EvaluationMode; return(medicalVendor); }
public PhysicianInvoice GenerateInvoice(long medicalVendorId, long physicianId, DateTime payPeriodStartDate, DateTime payPeriodEndDate) { List <MedicalVendorInvoiceItem> medicalVendorInvoiceItems = _medicalVendorInvoiceItemRepository. GetMedicalVendorInvoiceItems(physicianId, payPeriodStartDate, payPeriodEndDate); if (medicalVendorInvoiceItems.IsEmpty()) { return(null); } Physician physician = _physicianRepository.GetPhysician(physicianId); MedicalVendor medicalVendor = _medicalVendorRepository.GetMedicalVendor(medicalVendorId); return(_medicalVendorInvoiceFactory.CreateNewMedicalVendorInvoice(medicalVendor, physician, medicalVendorInvoiceItems, payPeriodStartDate, payPeriodEndDate)); }
public MedicalVendorEditModel ToModel(MedicalVendor organization, AddressEditModel billingAddress, AddressEditModel businessAddress, File logoImage, File teamImage, PaymentInstructions instructions, TestPayRate[] payRates, decimal customerPayRate, TestType[] permitted) { var binder = new OrganizationCreateModelBinder(); var model = new MedicalVendorEditModel(); model = binder.ToModel(model, organization, billingAddress, businessAddress, logoImage, teamImage) as MedicalVendorEditModel; model.ContractId = organization.ContractId; model.MedicalVendorType = organization.MedicalVendorType; model.IsHospitalPartner = organization.IsHospitalPartner; //model.CustomerPayRate = customerPayRate; //model.EvaluationMode = organization.EvaluationMode; //model.PaymentInstructions = instructions; //model.PermittedTests = permitted; //model.TestPayRates = payRates; return(model); }
public PhysicianInvoice CreateNewMedicalVendorInvoice(MedicalVendor medicalVendor, Physician physician, List <MedicalVendorInvoiceItem> medicalVendorInvoiceItems, DateTime payPeriodStartDate, DateTime payPeriodEndDate) { return(new PhysicianInvoice { ApprovalGuid = Guid.NewGuid(), ApprovalStatus = ApprovalStatus.Unapproved, DateGenerated = DateTime.Now, MedicalVendorAddress = medicalVendor.BusinessAddressId.ToString(), MedicalVendorId = medicalVendor.Id, MedicalVendorInvoiceItems = medicalVendorInvoiceItems, MedicalVendorName = medicalVendor.Name, PhysicianId = physician.Id, PhysicianName = physician.Name.FullName, PaymentStatus = PaymentStatus.Unpaid, PayPeriodStartDate = payPeriodStartDate, PayPeriodEndDate = payPeriodEndDate }); }
public void GetMedicalVendorReturnsVendorWhenGivenValidId() { MedicalVendor medicalVendor = _medicalVendorRepository.GetMedicalVendor(VALID_MEDICAL_VENDOR_ID); Assert.IsNotNull(medicalVendor); }