public async Task <string> _Create(PatientMedicalHistory_MedicalStatus medicalStatus)
        {
            if (HelperExtensions.isAllowedforEditingorAdd(medicalStatus.PatientId, CategoryCycleStatusHelper.GetPatientNewOrOldCycleByCategory(medicalStatus.PatientId, BillingCodeHelper.cmmBillingCatagoryid), User.Identity.GetUserId()) == false)
            {
                //return RedirectToAction("Index", "CcmStatus", new { status = HelperExtensions.GetStatusRedirectionbyUser(User.Identity.GetUserId()), Message = "Cycle is locked." });
                return("Cycle is locked.");
            }
            var patient = _db.Patients.Find(medicalStatus.PatientId);

            if (patient != null && ModelState.IsValid)
            {
                if (patient.MedicalStatusId != null)
                {
                    _db.Entry(medicalStatus).State = EntityState.Modified;
                }

                else
                {
                    _db.PatientMedicalHistory_MedicalStatuses.Add(medicalStatus);
                    await _db.SaveChangesAsync();

                    patient.MedicalStatusId = medicalStatus.Id;
                }

                patient.UpdatedBy        = User.Identity.GetUserId();
                patient.UpdatedOn        = DateTime.Now;
                _db.Entry(patient).State = EntityState.Modified;
                await _db.SaveChangesAsync();

                //return RedirectToAction("Create", "PatientMedicalHistory_MedicalCondition", new { patientId = patient.Id });
                return("True");
            }
            else
            {
                var errorList = ModelState.Values.SelectMany(m => m.Errors)
                                .Select(e => e.ErrorMessage)
                                .ToList();
                if (errorList.Contains("Invalid Phone Number") && errorList.Contains("Invalid Phone Number"))
                {
                    var val = errorList.IndexOf("Invalid Phone Number");
                    errorList.RemoveAt(val);
                }
                var errorstr = string.Join(",", errorList);
                return(errorstr);
            }
            ViewBag.PatientName = patient?.FirstName + " " + patient?.LastName;
            ViewBag.PatientId   = patient?.Id;
            ViewBag.CcmStatus   = patient?.CcmStatus;

            return("False");
            //return View(medicalStatus);
        }
        public async Task <ActionResult> Create(PatientMedicalHistory_MedicalStatus medicalStatus)
        {
            if (HelperExtensions.isAllowedforEditingorAdd(medicalStatus.PatientId, CategoryCycleStatusHelper.GetPatientNewOrOldCycleByCategory(medicalStatus.PatientId, BillingCodeHelper.cmmBillingCatagoryid), User.Identity.GetUserId()) == false)
            {
                return(RedirectToAction("Index", "CcmStatus", new { status = HelperExtensions.GetStatusRedirectionbyUser(User.Identity.GetUserId()), Message = "Cycle is locked." }));
            }
            var patient = _db.Patients.Find(medicalStatus.PatientId);

            if (patient != null && ModelState.IsValid)
            {
                if (patient.MedicalStatusId != null)
                {
                    _db.Entry(medicalStatus).State = EntityState.Modified;
                }

                else
                {
                    _db.PatientMedicalHistory_MedicalStatuses.Add(medicalStatus);
                    await _db.SaveChangesAsync();

                    patient.MedicalStatusId = medicalStatus.Id;
                }

                patient.UpdatedBy        = User.Identity.GetUserId();
                patient.UpdatedOn        = DateTime.Now;
                _db.Entry(patient).State = EntityState.Modified;
                await _db.SaveChangesAsync();

                return(RedirectToAction("Create", "PatientMedicalHistory_MedicalCondition", new { patientId = patient.Id }));
            }

            ViewBag.PatientName = patient?.FirstName + " " + patient?.LastName;
            ViewBag.PatientId   = patient?.Id;
            ViewBag.CcmStatus   = patient?.CcmStatus;

            return(View(medicalStatus));
        }