コード例 #1
0
 private bool GetProspectCustomerList()
 {
     if (ExistingCallId > 0 && !string.IsNullOrWhiteSpace(txtFirstName.Text) && !string.IsNullOrWhiteSpace(txtLastName.Text) && !string.IsNullOrWhiteSpace(txtCallBackNo.Text.Replace("(", "").Replace(")", "").Replace("-", "")))
     {
         IProspectCustomerRepository prospectCustomerRepository = new ProspectCustomerRepository();
         var listProspectCustomerViewData = prospectCustomerRepository.GetProspectCustomersWithFiltersforCallCenterRep(txtFirstName.Text, txtLastName.Text, txtCallBackNo.Text.Replace("(", "").Replace(")", "").Replace("-", ""));
         if (listProspectCustomerViewData != null && listProspectCustomerViewData.Count > 0)
         {
             return(true);
         }
     }
     return(false);
 }
コード例 #2
0
        private void UpdateProspectCustomer(long sourceCodeId)
        {
            IUniqueItemRepository <ProspectCustomer> uniqueItemRepository = new ProspectCustomerRepository();

            if (Session["ProspectCustomerId"] == null)
            {
                return;
            }
            var prospectCustomerId = (long)Session["ProspectCustomerId"];

            if (prospectCustomerId <= 0)
            {
                return;
            }

            var prospectCustomer = uniqueItemRepository.GetById(prospectCustomerId);

            if (prospectCustomer == null)
            {
                return;
            }

            var sourceCodeRepository = IoC.Resolve <ISourceCodeRepository>();

            bool isAWorkshopSourceCode;

            try
            {
                isAWorkshopSourceCode = sourceCodeRepository.IsSourceCodeAWorkshopSourceCode(txtCouponCode.Text.Trim());
            }
            catch (Exception)
            {
                isAWorkshopSourceCode = false;
            }

            if (isAWorkshopSourceCode)
            {
                prospectCustomer.SourceCodeId  = sourceCodeId;
                prospectCustomer.Source        = ProspectCustomerSource.SalesRep;
                prospectCustomer.Tag           = ProspectCustomerTag.WellnessSeminar;
                prospectCustomer.TagUpdateDate = DateTime.Now;
            }
            prospectCustomer.IsConverted = false;
            prospectCustomer             = uniqueItemRepository.Save(prospectCustomer);
            if (prospectCustomer.Id > 0)
            {
                Session["ProspectCustomerId"] = prospectCustomer.Id;
            }
        }
コード例 #3
0
    private void SaveProspectCustomer()
    {
        if (CurrentProspectCustomer != null && !string.IsNullOrEmpty(CurrentProspectCustomer.FirstName) && !string.IsNullOrEmpty(CurrentProspectCustomer.LastName) && CurrentProspectCustomer.CallBackPhoneNumber != null && !string.IsNullOrEmpty(CurrentProspectCustomer.CallBackPhoneNumber.ToString()) && CurrentProspectCustomer.CallBackPhoneNumber.ToString() != "(___)-___-____")
        {
            IUniqueItemRepository <ProspectCustomer> uniqueItemRepository = new ProspectCustomerRepository();
            var prospectCustomer = uniqueItemRepository.Save(CurrentProspectCustomer);
            CurrentProspectCustomer = prospectCustomer;

            if (CallId != null && CallId > 0 && prospectCustomer.Id > 0)
            {
                var callWizardService = new CallCenterCallWizardService();
                callWizardService.BindCurrentCallToProspectCustomer(CallId.Value, prospectCustomer.Id, IoC.Resolve <ISessionContext>().UserSession.UserId);
            }
        }
    }
コード例 #4
0
        private void SaveProspectCustomerNew(ProspectCustomer prospectCustomer)
        {
            if (prospectCustomer != null && !string.IsNullOrEmpty(prospectCustomer.FirstName) && !string.IsNullOrEmpty(prospectCustomer.LastName) && prospectCustomer.CallBackPhoneNumber != null && !string.IsNullOrWhiteSpace(prospectCustomer.CallBackPhoneNumber.ToString()) && prospectCustomer.CallBackPhoneNumber.ToString() != "(___)-___-____")
            {
                var isNewProspectCustomer = prospectCustomer.Id <= 0;
                IUniqueItemRepository <ProspectCustomer> uniqueItemRepository = new ProspectCustomerRepository();
                prospectCustomer          = uniqueItemRepository.Save(prospectCustomer);
                CurrentProspectCustomerId = prospectCustomer.Id;

                if (isNewProspectCustomer && ExistingCallId > 0 && CurrentProspectCustomerId > 0)
                {
                    var callWizardService = new CallCenterCallWizardService();
                    callWizardService.BindCurrentCallToProspectCustomer(ExistingCallId, CurrentProspectCustomerId, IoC.Resolve <ISessionContext>().UserSession.UserId);
                }
            }
        }
コード例 #5
0
        private void SaveProspectCustomer()
        {
            if (CurrentProspectCustomer == null || CurrentProspectCustomer.Id < 1)
            {
                return;
            }

            IProspectCustomerRepository prospectCustomerRepository = new ProspectCustomerRepository();
            bool isAWorkshopProspect = prospectCustomerRepository.IsProspectAWorkshopProspect(CurrentProspectCustomer.Id);

            if (isAWorkshopProspect)
            {
                CurrentProspectCustomer.Source        = ProspectCustomerSource.SalesRep;
                CurrentProspectCustomer.Tag           = ProspectCustomerTag.WellnessSeminar;
                CurrentProspectCustomer.TagUpdateDate = DateTime.Now;

                IUniqueItemRepository <ProspectCustomer> uniqueItemRepository = new ProspectCustomerRepository();
                uniqueItemRepository.Save(CurrentProspectCustomer);
                return;
            }

            if (!string.IsNullOrEmpty(txtCouponCode.Text))
            {
                ISourceCodeRepository sourceCodeRepository = new SourceCodeRepository();
                bool isAWorkshopSourceCode;
                try
                {
                    isAWorkshopSourceCode =
                        sourceCodeRepository.IsSourceCodeAWorkshopSourceCode(txtCouponCode.Text.Trim());
                }
                catch (Exception)
                {
                    isAWorkshopSourceCode = false;
                }

                if (isAWorkshopSourceCode)
                {
                    CurrentProspectCustomer.SourceCodeId  = SourceCodeId;
                    CurrentProspectCustomer.Source        = ProspectCustomerSource.SalesRep;
                    CurrentProspectCustomer.Tag           = ProspectCustomerTag.WellnessSeminar;
                    CurrentProspectCustomer.TagUpdateDate = DateTime.Now;

                    IUniqueItemRepository <ProspectCustomer> uniqueItemRepository = new ProspectCustomerRepository();
                    uniqueItemRepository.Save(CurrentProspectCustomer);
                }
            }
        }
コード例 #6
0
    protected void SelectPropsectCustomerLink_Click(object sender, EventArgs e)
    {
        long prospectCustomerId = Convert.ToInt64(((LinkButton)sender).CommandArgument);

        IProspectCustomerRepository prospectCustomerRepository = new ProspectCustomerRepository();
        var prospectCustomer = prospectCustomerRepository.GetProspectCustomer(prospectCustomerId);

        CurrentProspectCustomer = prospectCustomer;

        if (CallId != null && CallId > 0)
        {
            var callWizardService = new CallCenterCallWizardService();
            callWizardService.BindCurrentCallToProspectCustomer(CallId.Value, prospectCustomer.Id, IoC.Resolve <ISessionContext>().UserSession.UserId);
        }

        Response.RedirectUser("CustomerOptions.aspx?guid=" + GuId);
    }
コード例 #7
0
    protected void Page_Load(object sender, EventArgs e)
    {
        RegistrationFlow.CanSaveConsentInfo = false;
        Page.Title = "Customer Verification";
        CallCenter_CallCenterMaster1 obj;

        obj = (CallCenter_CallCenterMaster1)this.Master;
        obj.SetTitle("Customer Verification");
        obj.SetBreadCrumbRoot = "<a href=\"/CallCenter/CallCenterRepDashboard/Index\">Dashboard</a>";

        obj.hideucsearch();

        CallCenterOrganizationId = 0;
        if (CurrentOrganizationRole.CheckRole((long)Roles.CallCenterRep))
        {
            CallCenterOrganizationId = CurrentOrganizationRole.OrganizationId;
        }
        if (!IsPostBack)
        {
            if (CallId != null)
            {
                hfCallStartTime.Value = new CallCenterCallRepository().GetCallStarttime(CallId.Value);
            }

            if (CallId != null && !string.IsNullOrWhiteSpace(FirstName) && !string.IsNullOrWhiteSpace(LastName) && !string.IsNullOrWhiteSpace(CallBackNumber))
            {
                IProspectCustomerRepository prospectCustomerRepository = new ProspectCustomerRepository();
                var listProspectCustomerViewData =
                    prospectCustomerRepository.GetProspectCustomersWithFiltersforCallCenterRep(FirstName, LastName, CallBackNumber.Replace("(", "").Replace(")", "").Replace("-", ""));
                if (listProspectCustomerViewData != null)
                {
                    if (listProspectCustomerViewData.Count > 10)
                    {
                        ProspectGridView.DataSource = listProspectCustomerViewData.GetRange(0, 10);
                        ProspectGridView.DataBind();
                        ProspectCustomerWarningContainerDiv.Style[HtmlTextWriterStyle.Display] = "block";
                    }
                    else
                    {
                        ProspectGridView.DataSource = listProspectCustomerViewData;
                        ProspectGridView.DataBind();
                    }
                    hfheader.Value = "divHeaderProspect";
                }
                else
                {
                    ProspectCustomerNoResultFoundContainerDiv.Style[HtmlTextWriterStyle.Display] = "block";
                    ProspectCustomerContainerDiv.Style[HtmlTextWriterStyle.Display] = "none";
                }
            }
            else
            {
                ProspectCustomerNoResultFoundContainerDiv.Style[HtmlTextWriterStyle.Display] = "block";
                ProspectCustomerContainerDiv.Style[HtmlTextWriterStyle.Display] = "none";
            }
            var masterDal = new MasterDAL();
            if (!String.IsNullOrWhiteSpace(Zip))
            {
                _customerDataZip = masterDal.SearchCustomersOnCall(FirstName.Replace("'", "''"), LastName.Replace("'", "''"), Zip, 1, CallBackNumber, CustomerId, MemberId, Hicn, PhoneNumber, EmailId, CallCenterOrganizationId, MbiNumber);
                if (_customerDataZip != null && _customerDataZip.Count > 0)
                {
                    grdCustomerListZIP.DataSource = _customerDataZip;
                    grdCustomerListZIP.DataBind();

                    pnlZIP.Enabled = true;

                    hfheader.Value = "divHeaderZIP";
                    divNoResultsMatchingZip.Style.Add(HtmlTextWriterStyle.Display, "none");
                    divResultsMatchingZip.Style.Add(HtmlTextWriterStyle.Display, "block");
                    if (_customerDataZip.Count > 20)
                    {
                        divMoreResultsMatchingZip.Visible = true;
                    }
                }
                else
                {
                    //pnlZIP.Enabled = false;
                    divNoResultsMatchingZip.Style.Add(HtmlTextWriterStyle.Display, "block");
                    divResultsMatchingZip.Style.Add(HtmlTextWriterStyle.Display, "none");

                    //hfheader.Value = "divHeaderOTHERS";
                }
            }
            else
            {
                //pnlZIP.Enabled = false;
                divNoResultsMatchingZip.Style.Add(HtmlTextWriterStyle.Display, "block");
                divResultsMatchingZip.Style.Add(HtmlTextWriterStyle.Display, "none");

                //hfheader.Value = "divHeaderOTHERS";
            }


            _customerData = masterDal.SearchCustomersOnCall(FirstName.Replace("'", "''"), LastName.Replace("'", "''"), Zip, 0, CallBackNumber, CustomerId, MemberId, Hicn, PhoneNumber, EmailId, CallCenterOrganizationId, MbiNumber);

            if (_customerData != null && _customerData.Count > 0)
            {
                divNoResultsWithoutMatchingZip.Style.Add(HtmlTextWriterStyle.Display, "none");
                divResultsWithoutMatchingZip.Style.Add(HtmlTextWriterStyle.Display, "block");
                grdCustomerList.DataSource = _customerData;
                grdCustomerList.DataBind();

                if (_customerData.Count > 20)
                {
                    divMoreResultsWithoutMatchingZip.Visible = true;
                }
                hfheader.Value = "divHeaderOTHERS";
            }
            else
            {
                divNoResultsWithoutMatchingZip.Style.Add(HtmlTextWriterStyle.Display, "block");
                divResultsWithoutMatchingZip.Style.Add(HtmlTextWriterStyle.Display, "none");
                //pnlOTHERS.Enabled = false;
                //divResults.Style.Add(HtmlTextWriterStyle.Display, "none");
            }

            if (_customerDataZip != null && _customerDataZip.Count > 0)
            {
                hfheader.Value = "divHeaderZIP";
            }
            else if (_customerData != null && _customerData.Count > 0)
            {
                hfheader.Value = "divHeaderOTHERS";
            }
        }
        Page.ClientScript.RegisterStartupScript(typeof(string), "jscode_tabSelection", "sel_caption('" + hfheader.Value + "');", true);
        switch (hfheader.Value)
        {
        case "divHeaderOTHERS":
            tbpnlContainer.ActiveTab = pnlOTHERS;
            break;

        case "divHeaderZIP":
            tbpnlContainer.ActiveTab = pnlZIP;
            break;

        case "divHeaderProspect":
            tbpnlContainer.ActiveTab = pnlProspect;
            break;

        default:
            return;
        }

        if (RegistrationFlow.CallQueueCustomerId > 0)
        {
            var callQueueCustomerRepository = IoC.Resolve <ICallQueueCustomerRepository>();
            var callQueueRepository         = IoC.Resolve <ICallQueueRepository>();
            var callQueueCriteriaRepository = IoC.Resolve <ICallQueueCriteriaRepository>();

            var callQueueCustomer = callQueueCustomerRepository.GetById(RegistrationFlow.CallQueueCustomerId);
            var callQueue         = callQueueRepository.GetById(callQueueCustomer.CallQueueId);
            CallQueueCriteria callQueueCriteria = null;
            if (callQueueCustomer.CallQueueCriteriaId.HasValue && callQueueCustomer.CallQueueCriteriaId.Value > 0)
            {
                callQueueCriteria = callQueueCriteriaRepository.GetById(callQueueCustomer.CallQueueCriteriaId.Value);
            }

            if (callQueue.ScriptId.HasValue && callQueue.ScriptId.Value > 0)
            {
                var scriptRepository = IoC.Resolve <IScriptRepository>();
                var script           = scriptRepository.GetById(callQueue.ScriptId.Value);

                var scriptText = string.Empty;
                if (callQueueCriteria != null && callQueueCriteria.CriteriaId == (long)QueueCriteria.PhysicianPartner)
                {
                    var userSession   = IoC.Resolve <ISessionContext>().UserSession;
                    var pcpRepository = IoC.Resolve <IPrimaryCarePhysicianRepository>();

                    var pcp = callQueueCustomer.CustomerId.HasValue ? pcpRepository.Get(callQueueCustomer.CustomerId.Value) : null;

                    if (pcp != null)
                    {
                        scriptText = "Hi, this is " + HttpUtility.HtmlEncode(userSession.FullName) + " calling on behalf of " + HttpUtility.HtmlEncode(pcp.Name.FullName) + " and Physician partner office. ";
                    }
                }
                ScriptTextDiv.InnerHtml = System.Web.Security.AntiXss.AntiXssEncoder.HtmlEncode(scriptText + script.ScriptText, true);
            }
        }
    }
コード例 #8
0
        private void UpdateProspectCustomer()
        {
            var prospectCustomerRepository = IoC.Resolve <IProspectCustomerRepository>();
            var prospectCustomer           = prospectCustomerRepository.GetProspectCustomerByCustomerId(CustomerId);

            if (prospectCustomer != null && RegistrationFlow != null)
            {
                RegistrationFlow.ProspectCustomerId = prospectCustomer.Id;
                return;
            }
            prospectCustomer = new ProspectCustomer();
            ICustomerRepository customerRepository = new CustomerRepository();
            var customer = customerRepository.GetCustomer(CustomerId);

            prospectCustomer.FirstName = customer.Name.FirstName;
            prospectCustomer.LastName  = customer.Name.LastName;

            if (customer.HomePhoneNumber != null && !string.IsNullOrEmpty(customer.HomePhoneNumber.ToString()))
            {
                prospectCustomer.CallBackPhoneNumber = customer.HomePhoneNumber;
            }
            else if (customer.MobilePhoneNumber != null && !string.IsNullOrEmpty(customer.MobilePhoneNumber.ToString()))
            {
                prospectCustomer.CallBackPhoneNumber = customer.MobilePhoneNumber;
            }
            else if (customer.OfficePhoneNumber != null && !string.IsNullOrEmpty(customer.OfficePhoneNumber.ToString()))
            {
                prospectCustomer.CallBackPhoneNumber = customer.OfficePhoneNumber;
            }

            prospectCustomer.Address = new Address
            {
                City               = customer.Address.City,
                Country            = customer.Address.Country,
                State              = customer.Address.State,
                StreetAddressLine1 = customer.Address.StreetAddressLine1,
                StreetAddressLine2 = customer.Address.StreetAddressLine2,
                ZipCode            = new ZipCode {
                    Zip = customer.Address.ZipCode.Zip
                }
            };
            if (customer.DateOfBirth.HasValue)
            {
                prospectCustomer.BirthDate = customer.DateOfBirth.Value.Date;
            }

            if (!string.IsNullOrEmpty(customer.Email.ToString()))
            {
                prospectCustomer.Email = customer.Email;
            }

            prospectCustomer.CustomerId = CustomerId;

            prospectCustomer.Source        = ProspectCustomerSource.CallCenter;
            prospectCustomer.Tag           = ProspectCustomerTag.CallCenterSignup;
            prospectCustomer.TagUpdateDate = DateTime.Now;

            var eventRepository = IoC.Resolve <IEventRepository>();

            prospectCustomer.IsConverted = eventRepository.CheckCustomerRegisteredForFutureEvent(CustomerId);

            if (!prospectCustomer.IsConverted.Value)
            {
                prospectCustomer.ConvertedOnDate = null;
                prospectCustomer.Status          = (long)ProspectCustomerConversionStatus.NotConverted;
                prospectCustomer.CreatedOn       = DateTime.Now;
            }


            IUniqueItemRepository <ProspectCustomer> uniqueItemRepository = new ProspectCustomerRepository();

            prospectCustomer = uniqueItemRepository.Save(prospectCustomer);
            if (RegistrationFlow != null)
            {
                RegistrationFlow.ProspectCustomerId = prospectCustomer.Id;
            }
        }