public ListModelBase <BarrierInboundViewModel, BarrierInboundFilter> Create(IEnumerable <EventCustomerBarrier> eventCustomerBarriers, IEnumerable <Barrier> barriers, IEnumerable <EventCustomer> eventCustomers, List <Customer> customers, IEnumerable <ChaseOutbound> chaseOutbounds, IEnumerable <CustomerChaseCampaign> customerChaseCampaigns, IEnumerable <ChaseCampaign> chaseCampaigns) { var collection = new List <BarrierInboundViewModel>(); foreach (var eventCustomerBarrier in eventCustomerBarriers) { var barrier = barriers.First(x => x.Id == eventCustomerBarrier.BarrierId); var eventCustomer = eventCustomers.First(x => x.Id == eventCustomerBarrier.EventCustomerId); var customer = customers.First(x => x.CustomerId == eventCustomer.CustomerId); var chaseOutbound = chaseOutbounds.FirstOrDefault(x => x.CustomerId == customer.CustomerId); if (chaseOutbound == null) { continue; } ChaseCampaign campaign = null; var customerChaseCampaign = !customerChaseCampaigns.IsNullOrEmpty() ? customerChaseCampaigns.FirstOrDefault(x => x.CustomerId == customer.CustomerId) : null; if (customerChaseCampaign != null && !chaseCampaigns.IsNullOrEmpty()) { campaign = chaseCampaigns.FirstOrDefault(x => x.Id == customerChaseCampaign.ChaseCampaignId); } var barrierViewModel = new BarrierInboundViewModel { TenantId = chaseOutbound.TenantId, ClientId = chaseOutbound.ClientId, CampaignId = campaign != null ? campaign.CampaignId : "", IndividualIDNumber = chaseOutbound.IndividualId, ContractNumber = chaseOutbound.ContractNumber, ContractPersonNumber = chaseOutbound.ContractPersonNumber, ConsumerId = chaseOutbound.ConsumerId, VendorPersonId = customer.CustomerId.ToString(), AppointmentID = eventCustomer.AppointmentId.HasValue ? eventCustomer.AppointmentId.Value.ToString() : "", BarrierId = barrier.Id.ToString(), BarrierCategory = barrier.Name, BarrierReason = eventCustomerBarrier.Reason, BarrierResolution = eventCustomerBarrier.Resolution }; collection.Add(barrierViewModel); } return(new BarrierInboundListModel { Collection = collection }); }
public ChaseCampaign Save(ChaseCampaign domain) { using (var adapter = PersistenceLayer.GetDataAccessAdapter()) { var entity = Mapper.Map <ChaseCampaign, ChaseCampaignEntity>(domain); if (!adapter.SaveEntity(entity, true)) { throw new PersistenceFailureException(); } return(Mapper.Map <ChaseCampaignEntity, ChaseCampaign>(entity)); } }
public ListModelBase <ConditionInboundViewModel, ConditionInboundFilter> Create(IEnumerable <EventCustomerDiagnosis> diagnosisRecords, IEnumerable <EventCustomer> eventCustomers, IEnumerable <ChaseOutbound> chaseOutbounds, IEnumerable <CustomerChaseCampaign> customerChaseCampaigns, IEnumerable <ChaseCampaign> chaseCampaigns) { var collection = new List <ConditionInboundViewModel>(); foreach (var eventCustomer in eventCustomers) { var eventCustomerDiagnosisRecords = diagnosisRecords.Where(x => x.EventCustomerId == eventCustomer.Id); var chaseOutbound = chaseOutbounds.FirstOrDefault(x => x.CustomerId == eventCustomer.CustomerId); if (chaseOutbound == null) { continue; } ChaseCampaign campaign = null; var customerChaseCampaign = !customerChaseCampaigns.IsNullOrEmpty() ? customerChaseCampaigns.FirstOrDefault(x => x.CustomerId == eventCustomer.CustomerId) : null; if (customerChaseCampaign != null && !chaseCampaigns.IsNullOrEmpty()) { campaign = chaseCampaigns.FirstOrDefault(x => x.Id == customerChaseCampaign.ChaseCampaignId); } foreach (var eventCustomerDiagnosis in eventCustomerDiagnosisRecords) { collection.Add(new ConditionInboundViewModel { TenantId = chaseOutbound.TenantId, ClientId = chaseOutbound.ClientId, CampaignId = campaign != null ? campaign.CampaignId : "", IndividualIdNumber = chaseOutbound.IndividualId, ContractNumber = chaseOutbound.ContractNumber, ContractPersonNumber = chaseOutbound.ContractPersonNumber, ConsumerId = chaseOutbound.ConsumerId, VendorPersonId = eventCustomer.CustomerId.ToString(), ConditionId = "", ConditionName = !string.IsNullOrEmpty(eventCustomerDiagnosis.Diagnosis) && eventCustomerDiagnosis.Diagnosis.Length > 100 ? eventCustomerDiagnosis.Diagnosis.Substring(0, 100) : eventCustomerDiagnosis.Diagnosis, ConditionDiagnosisCode = eventCustomerDiagnosis.Icd, ConditionIcdIndicator = eventCustomerDiagnosis.IsIcd10 ? Icd10 : Icd9 }); } } return(new ConditionInboundListModel { Collection = collection }); }