private string GetCouponCode() { string couponCode = "N/A"; if (_orderDetail != null && _orderDetail.SourceCodeOrderDetail != null) { ISourceCodeRepository sourceCodeRepository = new SourceCodeRepository(); var sourceCode = sourceCodeRepository.GetSourceCodeById(_orderDetail.SourceCodeOrderDetail.SourceCodeId); if (sourceCode != null) { couponCode = sourceCode.CouponCode; string couponValue = "0.00"; if (_orderDetail.SourceCodeOrderDetail.Amount != 0m) { couponValue = _orderDetail.SourceCodeOrderDetail.Amount.ToString(); } if (Convert.ToSingle(couponValue) < 0.00) { couponValue = string.Empty; } else { couponValue = _orderDetail.SourceCodeOrderDetail.Amount.ToString("C2"); } return(couponCode + "(" + couponValue + ")"); } } return(couponCode); }
private SourceCodeViewData GetSourceCodeUserPair(SourceCodeOrderDetail sourceCodeOrderDetail) { if (sourceCodeOrderDetail == null) { return(null); } var organizationRoleUserCreator = GetOrganizationRoleUser(sourceCodeOrderDetail, scod => scod.OrganizationRoleUserCreatorId); ISourceCodeRepository sourceCodeRepository = new SourceCodeRepository(); var sourceCode = sourceCodeRepository.GetSourceCodeById(sourceCodeOrderDetail.SourceCodeId); if (sourceCode != null && organizationRoleUserCreator != null && organizationRoleUserCreator.FirstValue != null) { sourceCode.CouponValue = sourceCodeOrderDetail.Amount; sourceCode.DataRecorderMetaData = new DataRecorderMetaData() { DateCreated = sourceCodeOrderDetail.DateCreated }; sourceCode.CouponDescription = ((Roles)organizationRoleUserCreator.FirstValue.RoleId).ToString(); return(new SourceCodeViewData { Amount = sourceCodeOrderDetail.Amount, AppliedByName = organizationRoleUserCreator.SecondValue.FirstValue, AppliedByRole = organizationRoleUserCreator.SecondValue.SecondValue, AppliedDate = sourceCodeOrderDetail.DateCreated.ToString( "MMM dd yyyy"), SourceCode = sourceCode.CouponCode, SourceCodeId = sourceCode.Id }); } return(null); }
private bool SetCustomerDetail() { IUniqueItemRepository <EventCustomer> eventCustomerRepository = new EventCustomerRepository(); var eventCustomer = eventCustomerRepository.GetById(EventCustomerId); if (eventCustomer != null) { CustomerId = eventCustomer.CustomerId; EventId = eventCustomer.EventId; var organizationRoleUserRepository = IoC.Resolve <IOrganizationRoleUserRepository>(); var orgRoleUser = organizationRoleUserRepository.GetOrganizationRoleUser(eventCustomer.DataRecorderMetaData.DataRecorderCreator.Id); EventRegisteredBy = (Roles)Enum.Parse(typeof(Roles), orgRoleUser.RoleId.ToString()); speventid.InnerText = EventId.ToString(); if (Customer != null && Customer.Address != null) { spcustomerdetail.InnerText = " " + "-" + " " + Customer.Name + "(ID:" + Customer.CustomerId + ")"; } var eventService = IoC.Resolve <IEventService>(); var eventBasicInfoViewModel = eventService.GetEventBasicInfoFor(eventCustomer.EventId); speventid.InnerText = EventId.ToString(); sphostname.InnerText = eventBasicInfoViewModel.HostName; spaddress.InnerText = CommonCode.AddressSingleLine(eventBasicInfoViewModel.HostAddress.StreetAddressLine1, eventBasicInfoViewModel.HostAddress.StreetAddressLine2, eventBasicInfoViewModel.HostAddress.City, eventBasicInfoViewModel.HostAddress.State, eventBasicInfoViewModel.HostAddress.ZipCode); if (eventCustomer.AppointmentId.HasValue) { var appointmentRepository = IoC.Resolve <IAppointmentRepository>(); var appointment = appointmentRepository.GetById(eventCustomer.AppointmentId.Value); spapptime.InnerText = appointment.StartTime.ToShortTimeString(); } speventdate.InnerText = eventBasicInfoViewModel.EventDate.ToShortDateString(); ViewState["EventDate"] = eventBasicInfoViewModel.EventDate.ToShortDateString(); IOrderRepository orderRepository = new OrderRepository(); var order = orderRepository.GetOrder(CustomerId.Value, EventId.Value); if (order != null && !order.OrderDetails.IsEmpty()) { hfPackageCost.Value = order.OrderDetails.Where(od => (od.DetailType == OrderItemType.EventPackageItem && od.IsCompleted) || (od.DetailType == OrderItemType.EventTestItem && od.IsCompleted)) .Sum(od => od.Price).ToString(); sppackagecost.InnerText = order.OrderDetails.Where(od => (od.DetailType == OrderItemType.EventPackageItem && od.IsCompleted) || (od.DetailType == OrderItemType.EventTestItem && od.IsCompleted)) .Sum(od => od.Price).ToString("C2"); OrderId = order.Id; SetRefundRequestAmount(OrderId); SetPaymentDetails(order); IOrderController orderController = new OrderController(); var orderDetail = orderController.GetActiveOrderDetail(order); IOrderItemRepository orderItemRepository = new OrderItemRepository(); var orderItem = orderItemRepository.GetOrderItem(orderDetail.OrderItemId); if (orderItem is EventPackageItem) { var eventPackageItem = orderItem as EventPackageItem; var itemRepository = IoC.Resolve <IEventPackageRepository>(); var eventPackage = itemRepository.GetById(eventPackageItem.ItemId); PackageId = eventPackage.PackageId; } if (orderDetail.SourceCodeOrderDetail != null) { if (Customer != null) { ViewState["DateApplied"] = Customer.DateCreated; } ISourceCodeRepository sourceCodeRepository = new SourceCodeRepository(); var sourceCode = sourceCodeRepository.GetSourceCodeById(orderDetail.SourceCodeOrderDetail.SourceCodeId); spcoupon.InnerText = sourceCode.CouponCode; if (!string.IsNullOrEmpty(sourceCode.CouponCode)) { rbtreplaceexisting.Checked = true; hfcurrentcoupon.Value = sourceCode.CouponCode; hfcurrentcouponamount.Value = orderDetail.SourceCodeOrderDetail.Amount.ToString("N2"); } else { rbtapplycoupon.Checked = true; } } else { spcoupon.InnerText = "N/A"; rbtapplycoupon.Checked = true; } } return(true); } return(false); }
protected void Page_Load(object sender, EventArgs e) { RegistrationFlow.CanSaveConsentInfo = false; SetTitle(); bool defaultBasePackage = false; FillClinicialQuestionnaireDiv.Visible = false; ClinicalQuestionTemplateId = 0; IsClinicalQuestionaireFilled = false; if (EventId > 0) { if (EventData != null) { EventType = EventData.EventType; var configurationSettingRepository = IoC.Resolve <IConfigurationSettingRepository>(); EnableAlaCarte = Convert.ToBoolean(configurationSettingRepository.GetConfigurationValue(ConfigurationSettingName.EnableAlaCarte)); if (EnableAlaCarte) { EnableAlaCarte = EventData.EnableAlaCarteCallCenter; } } if (AccountByEventId != null) { if (AccountByEventId.AskClinicalQuestions && AccountByEventId.ClinicalQuestionTemplateId.HasValue) { FillClinicialQuestionnaireDiv.Visible = true; ClinicalQuestionTemplateId = AccountByEventId.ClinicalQuestionTemplateId.Value; GetRecommendationText(); } defaultBasePackage = AccountByEventId.DefaultSelectionBasePackage; // for penguin integartion var settings = IoC.Resolve <ISettings>(); QuestionnaireType questionnaireType = QuestionnaireType.None; if (AccountByEventId != null && AccountByEventId.IsHealthPlan && EventData != null) { var accountHraChatQuestionnaireHistoryServices = IoC.Resolve <IAccountHraChatQuestionnaireHistoryServices>(); questionnaireType = accountHraChatQuestionnaireHistoryServices.QuestionnaireTypeByAccountIdandEventDate(AccountByEventId.Id, EventData.EventDate); } if (questionnaireType == QuestionnaireType.HraQuestionnaire) { var userSession = IoC.Resolve <ISessionContext>().UserSession; var token = (Session.SessionID + "_" + userSession.UserId + "_" + userSession.CurrentOrganizationRole.RoleId + "_" + userSession.CurrentOrganizationRole.OrganizationId).Encrypt(); HraQuestionerAppUrlWithoutVisit = settings.HraQuestionerAppUrl + "?userToken=" + HttpUtility.UrlEncode(token) + "&customerId=" + CustomerId + "&orgName=" + settings.OrganizationNameForHraQuestioner + "&tag=" + AccountByEventId.Tag; HraQuestionerAppUrl = HraQuestionerAppUrlWithoutVisit + "&visitId=" + (RegistrationFlow.AwvVisitId.HasValue ? RegistrationFlow.AwvVisitId.Value : 0); ChatQuestionerAppUrl = string.Empty; } else if (questionnaireType == QuestionnaireType.ChatQuestionnaire) { ChatQuestionerAppUrl = settings.HraQuestionerAppUrl; HraQuestionerAppUrl = string.Empty; } } } if (!IsPostBack) { if (RegistrationFlow != null && RegistrationFlow.IsRetest) { RetestNo.Checked = false; RetestYes.Checked = true; } else { RetestNo.Checked = true; RetestYes.Checked = false; } if (RegistrationFlow != null && RegistrationFlow.SingleTestOverride) { SingleTestOverrideYes.Checked = true; SingleTestOverrideNo.Checked = false; } else { SingleTestOverrideYes.Checked = false; SingleTestOverrideNo.Checked = true; } if (EventId != 0) { // Hack: This is done if the user hits back button on payment page, to get back to select package page. if (SourceCodeId > 0 && !string.IsNullOrEmpty(SourceCode)) { txtCouponCode.Text = SourceCode; } else if (RegistrationFlow != null) { txtCouponCode.Text = RegistrationFlow.CallSourceCode; } hfEventID.Value = EventId.ToString(); var eventCustomerQuestionAnswerService = IoC.Resolve <IEventCustomerQuestionAnswerService>(); hfQuestionAnsTestId.Value = eventCustomerQuestionAnswerService.GetQuestionAnswerTestIdString(CustomerId, EventId); } else { const string message = "Sorry, Event detail not found. <a href=\"RegCustomerSearchEvent.aspx\">Click here</a> to search event again "; DisplayErrorMessage(message); } if (CurrentProspectCustomer != null && CurrentProspectCustomer.Id > 0 && CurrentProspectCustomer.SourceCodeId != null && CurrentProspectCustomer.SourceCodeId.Value > 0) { ISourceCodeRepository sourceCodeRepository = new SourceCodeRepository(); var sourceCode = sourceCodeRepository.GetSourceCodeById(CurrentProspectCustomer.SourceCodeId.Value); if (sourceCode != null) { txtCouponCode.Text = sourceCode.CouponCode; } } IEventPackageRepository packageRepository = new EventPackageRepository(); var preApprovedPackageRepository = IoC.Resolve <IPreApprovedPackageRepository>(); if (AccountByEventId != null && AccountByEventId.AllowPreQualifiedTestOnly) { long preApprovedPackageId = preApprovedPackageRepository.CheckPreApprovedPackages(CustomerId); if (PackageId == 0 && preApprovedPackageId > 0 && (RegistrationFlow == null || !RegistrationFlow.SingleTestOverride) && (RegistrationFlow == null || string.IsNullOrEmpty(RegistrationFlow.DisqualifiedTest))) { var eventPackages = packageRepository.GetPackagesForEventByRole(EventId, (long)Roles.CallCenterRep); if (!eventPackages.IsNullOrEmpty()) { var preApprovedPackage = eventPackages.FirstOrDefault(x => x.PackageId == preApprovedPackageId); if (preApprovedPackage != null) { PackageId = preApprovedPackage.PackageId; TestIds = preApprovedPackage.Tests.Select(t => t.TestId).ToList(); } } } } if (defaultBasePackage && PackageId == 0 && (RegistrationFlow == null || !RegistrationFlow.SingleTestOverride) && (RegistrationFlow == null || string.IsNullOrEmpty(RegistrationFlow.DisqualifiedTest))) { var eventPackages = packageRepository.GetPackagesForEventByRole(EventId, (long)Roles.CallCenterRep) .OrderBy(p => p.Price); if (!eventPackages.IsNullOrEmpty()) { var lowestPricePackage = eventPackages.First(); PackageId = lowestPricePackage.PackageId; TestIds = lowestPricePackage.Tests.Select(t => t.TestId).ToList(); } } if (RegistrationFlow != null && !string.IsNullOrWhiteSpace(RegistrationFlow.DisqualifiedTest) && string.IsNullOrWhiteSpace(hfDisqualifedTest.Value)) { hfDisqualifedTest.Value = RegistrationFlow.DisqualifiedTest; } if (RegistrationFlow != null && !string.IsNullOrWhiteSpace(RegistrationFlow.QuestionIdAnswerTestId) && string.IsNullOrWhiteSpace(hfQuestionAnsTestId.Value)) { hfQuestionAnsTestId.Value = RegistrationFlow.QuestionIdAnswerTestId; } /*if (!DisqualifiedTestIds.IsNullOrEmpty()) * { * TestIds = TestIds.Where(x => !DisqualifiedTestIds.Contains(x)).ToList(); * }*/ ItemCartControl.EventId = EventId; ItemCartControl.RoleId = (long)Roles.CallCenterRep; ItemCartControl.PackageId = PackageId; ItemCartControl.TestIds = TestIds; if (Request.QueryString["Call"] != null && Request.QueryString["Call"] == "No") { divCall.Style.Add(HtmlTextWriterStyle.Display, "none"); divCall.Style.Add(HtmlTextWriterStyle.Visibility, "hidden"); } else { var repository = new CallCenterCallRepository(); hfCallStartTime.Value = repository.GetCallStarttime(CallId); } if (Request.UrlReferrer != null) { ViewState["UrlReferer"] = Request.UrlReferrer.PathAndQuery; } } if (Request.Params["__EVENTTARGET"] == "NextButton" && Request.Params["__EVENTARGUMENT"] == "Click") { NextButtonClick(); } }