示例#1
0
        public Customer SaveCustomer(HealthAssessmentHeaderEditModel headerModel, HealthAssessmentFooterEditModel footerModel, long orgRoleId)
        {
            Customer customer = _customerRepository.GetCustomer(headerModel.CustomerId);

            customer.Name   = headerModel.CustomerName;
            customer.Gender = (Gender)headerModel.Gender;

            customer.DateOfBirth     = headerModel.DateofBirth;
            customer.Address         = Mapper.Map <AddressEditModel, Address>(headerModel.Address);
            customer.Email           = !string.IsNullOrEmpty(headerModel.Email) ? new Email(headerModel.Email) : null;
            customer.HomePhoneNumber = !string.IsNullOrEmpty(headerModel.PhoneNumber)
                                           ? PhoneNumber.Create(PhoneNumber.ToNumber(headerModel.PhoneNumber), PhoneNumberType.Home)
                                           : null;

            customer.Height = headerModel.Height > 0 ? new Height(Math.Floor((double)(headerModel.Height / 12)), headerModel.Height % 12) : null;
            customer.Weight = headerModel.Weight > 0 ? new Weight(headerModel.Weight) : null;

            customer.EmergencyContactName         = footerModel.EmergencyContact;
            customer.EmergencyContactRelationship = footerModel.Relationship;
            customer.EmergencyContactPhoneNumber  = !string.IsNullOrEmpty(footerModel.ContactPhoneNumber) ? PhoneNumber.Create(footerModel.ContactPhoneNumber, PhoneNumberType.Unknown) : null;
            customer.Race = (Race)headerModel.Race;
            customer.Ssn  = string.IsNullOrEmpty(headerModel.Ssn) ? "" : headerModel.Ssn.Replace("-", "");

            customer.LanguageId = null;
            if (!string.IsNullOrWhiteSpace(headerModel.Laguage))
            {
                var language = _languageRepository.GetByName(headerModel.Laguage) ??
                               _languageService.AddLanguage(headerModel.Laguage, orgRoleId);
                customer.LanguageId = language.Id;
            }

            var result = SaveCustomer(customer, orgRoleId);

            return(result ? customer : null);
        }
示例#2
0
        public ActionResult HealthAssessment(HealthAssessmentFormEditModel model, HealthAssessmentHeaderEditModel headerModel, HealthAssessmentEditModel assessmentEditModel, HealthAssessmentFooterEditModel footerEditModel, KynHealthAssessmentEditModel kynHealthAssessmentEditModel)
        {
            try
            {
                if (!model.PrintBlank)
                {
                    _customerService.SaveCustomer(headerModel, footerEditModel, _sessionContext.UserSession.CurrentOrganizationRole.OrganizationRoleUserId);

                    _healthAssessmentService.Save(assessmentEditModel, _sessionContext.UserSession.CurrentOrganizationRole.OrganizationRoleUserId);
                    if ((model.IsKynPurchased || assessmentEditModel.IsBioCheckAssessmentPurchased || assessmentEditModel.IsHKynPurchased) && (kynHealthAssessmentEditModel != null))
                    {
                        _kynHealthAssessmentService.SetKynHealthAssessment(kynHealthAssessmentEditModel, _sessionContext.UserSession.CurrentOrganizationRole.OrganizationRoleUserId);
                    }
                }

                model.RefrrerUrl = "/Scheduling/EventCustomerList/Index?id=" + model.EventId;
                if (model.RedirecttoPrevious && !model.Print)
                {
                    Response.RedirectUser(model.RefrrerUrl + "&hId=" + model.CustomerId);
                    return(null);
                }

                var newModel = _healthAssessmentService.GetModel(model.EventId, model.CustomerId, true);

                newModel.Print              = model.Print;
                newModel.PrintBlank         = model.PrintBlank;
                newModel.OpenforPrint       = model.OpenforPrint;
                newModel.RedirecttoPrevious = model.RedirecttoPrevious;
                newModel.RefrrerUrl         = model.RefrrerUrl;
                newModel.IsBulkPrint        = model.IsBulkPrint;

                if (newModel.Print || newModel.PrintBlank)
                {
                    newModel.PrintUrl = PrintHealthAssessmentForm(newModel);
                }

                return(View(newModel));
            }
            catch (Exception ex)
            {
                var newModel = _healthAssessmentService.GetModel(model.EventId, model.CustomerId, true);
                newModel.Print              = model.Print;
                newModel.PrintBlank         = model.PrintBlank;
                newModel.OpenforPrint       = model.OpenforPrint;
                newModel.RedirecttoPrevious = model.RedirecttoPrevious;
                newModel.RefrrerUrl         = model.RefrrerUrl;
                newModel.FeedbackMessage    = FeedbackMessageModel.CreateFailureMessage(ex.Message);
                _logger.Error("Error Message : " + ex.Message + " \n stack Trace : " + ex.StackTrace);
                return(View(newModel));
            }
        }