Esempio n. 1
0
        /// <summary>
        /// The get appointment form.
        /// </summary>
        /// <param name="frm">
        /// The frm.
        /// </param>
        /// <param name="status">
        /// The status.
        /// </param>
        /// <returns>
        /// The <see cref="IAppointmentForm"/>.
        /// </returns>
        private IAppointmentForm GetAppointmentForm(FormCollection frm, ApptFormStatusType status, IAdminUnitOfWork adminUow)
        {
            var apptFormId = Convert.ToInt32(frm["AppointmentFormId"]);
            var apptForm   = new AppointmentForm
            {
                FormId        = Convert.ToInt32(frm["FormId"]),
                AppointmentId = Convert.ToInt32(frm["AppointmentId"]),
                CreatedBy     = User.Identity.Name,
                CreatedOn     = DateTime.UtcNow,
                IsActive      = true
            };

            if (apptFormId > 0)
            {
                //var adminUow = DependencyResolver.Current.GetService<IAdminUnitOfWork>();

                apptForm = adminUow.AppointmentRepository.GetAppointmentForm(apptFormId) as AppointmentForm;
            }

            if (apptForm != null)
            {
                apptForm.Notes            = frm["Notes"];
                apptForm.Status           = (int)EntityStatusType.Current;
                apptForm.FormStatusTypeId = (int)status;
                apptForm.UpdatedBy        = this.User.Identity.Name;
                apptForm.UpdatedOn        = DateTime.UtcNow;
            }

            return(apptForm);
        }
Esempio n. 2
0
        /// <summary>
        /// The create appointment form.
        /// </summary>
        /// <param name="frm">
        /// The frm.
        /// </param>
        /// <param name="status">
        /// The status.
        /// </param>
        /// <returns>
        /// The <see cref="IAppointmentForm"/>.
        /// </returns>
        private IAppointmentForm CreateAppointmentForm(FormCollection frm, ApptFormStatusType status)
        {
            IAppointmentForm apptForm = null;

            using (var adminUow = DependencyResolver.Current.GetService <IAdminUnitOfWork>())
            {
                apptForm = GetAppointmentForm(frm, status, adminUow);

                // TODO: Not sure but will clear all answers for now..
                apptForm.FormAnswers.Clear();

                var qKeys = frm.AllKeys.Where(k => k.StartsWith("q_"));
                foreach (var k in qKeys)
                {
                    var qId      = Convert.ToInt32(k.Split(new[] { "q_" }, StringSplitOptions.RemoveEmptyEntries)[0]);
                    var answer   = frm[k];
                    var question = adminUow.FormRepository.GetQuestion(qId);

                    if (question.CssType.CssClassName.Equals("checkbox"))
                    {
                        var chOptions = answer.Split(new[] { ',' });

                        foreach (var ch in chOptions)
                        {
                            var frmAnswer = GetFormAnswerAnswerId(ch, question.CssType.CssClassName);
                            frmAnswer.QuestionId = qId;
                            apptForm.FormAnswers.Add(frmAnswer);
                        }
                    }
                    else
                    {
                        var frmAnswer = GetFormAnswerAnswerId(answer, question.CssType.CssClassName);
                        frmAnswer.QuestionId = qId;
                        apptForm.FormAnswers.Add(frmAnswer);
                    }
                }
                adminUow.Commit();
            }
            return(apptForm);
        }