/// <summary>
        /// Add/Remove existing treatment mappings with service
        /// </summary>
        /// <param name="companyID"></param>
        /// <param name="NewCreatedTreatment"></param>
        public void AddRmvExstngTrtmnts(Int64 companyID, CreateEditTrtmntViewModel NewCreatedTreatment)
        {
            ////using dapper.net
            string qryInsertListIntoXrefServiceTreatment = @"insert into [dbo].[XrefServiceTreatment] ([ServiceID], [TreatmentID], [CompanyID]) values (@ServiceID, @TreatmentID, @CompanyID)";

            this._con.Open();
            IDbTransaction transact = this._con.BeginTransaction();

            //first delete all svc-trtmnt mappings from XrefServiceTreatment table
            this._con.DeleteList<XrefServiceTreatment>(" where ServiceID = " + NewCreatedTreatment.SvcID, transact);

            // if treatments are checked - enter values only into XrefServiceTreatment
            foreach (var item in NewCreatedTreatment.ExistingTreatments)
            {
                if (item.CheckedStatus)
                {
                    //insert into XrefServiceTreatment
                    ////insert List using dapper.net
                    XrefServiceTreatment newXref = new XrefServiceTreatment(NewCreatedTreatment.SvcID, item.TreatmentID, companyID);
                    this._con.Execute(qryInsertListIntoXrefServiceTreatment, newXref, transact);

                }
            }

            transact.Commit();
            this._con.Close();

            return;
        }
        public ActionResult AddRmvExstngTrtmnts(CreateEditTrtmntViewModel NewCreatedTreatment)
        {
            var account = new AccountController();
            var currentUser = account.UserManager.FindById(User.Identity.GetUserId());
            //perform db operation to add Treatment
            this._svcTrtmntRepository.AddRmvExstngTrtmnts(currentUser.CompanyID, NewCreatedTreatment);

            return RedirectToAction("Index");
        }
        public ActionResult CreateTreatment2(string SvcDetails)
        {
            var account = new AccountController();
            var currentUser = account.UserManager.FindById(User.Identity.GetUserId());

            CreateEditTrtmntViewModel objNewTrtmnt = new CreateEditTrtmntViewModel();

            //getting service Id and name - associated with treatment
            objNewTrtmnt.SvcID = Convert.ToInt64(SvcDetails.Split(new char[] { '~' })[0]);
            objNewTrtmnt.SvcName = SvcDetails.Split(new char[] { '~' })[1];

            objNewTrtmnt.NewTreatment = new Treatment();
            objNewTrtmnt.ExistingTreatments = (IList<BasicTreatmentViewModel>)this._svcTrtmntRepository.GetAllTreatments(currentUser.CompanyID, objNewTrtmnt.SvcID);

            return PartialView("_CreateTreatment2", objNewTrtmnt);
        }
        /// <summary>
        /// Create new treatment and add reference into XrefServiceTreatment table
        /// </summary>
        /// <param name="companyID"></param>
        /// <param name="NewCreatedTreatment"></param>
        public void CreateNewTreatment(Int64 companyID, CreateEditTrtmntViewModel NewCreatedTreatment)
        {
            // newTrtmntID = newly created treatment id
            long newTrtmntID = this._con.Insert<long>(new Treatment
            {
                CompanyID = companyID,
                TreatmentName = NewCreatedTreatment.NewTreatment.TreatmentName,
                TreatmentDesc = NewCreatedTreatment.NewTreatment.TreatmentDesc,
                TreatmentDuration = NewCreatedTreatment.NewTreatment.TreatmentDuration
            });

            //insert into XrefServiceTreatment table
            this._con.Insert<long>(new XrefServiceTreatment
            {
                CompanyID = companyID,
                ServiceID = NewCreatedTreatment.SvcID,
                TreatmentID = newTrtmntID,
            });
        }
        /// <summary>
        /// Manage treatments
        /// </summary>
        /// <returns></returns>
        public ActionResult ManageTrtmnt()
        {
            var account = new AccountController();
            var currentUser = account.UserManager.FindById(User.Identity.GetUserId());

            CreateEditTrtmntViewModel objNewTrtmnt = new CreateEditTrtmntViewModel();
            objNewTrtmnt.ExistingTreatments = (IList<BasicTreatmentViewModel>)this._svcTrtmntRepository.GetAllTreatments(currentUser.CompanyID, -1);
            return PartialView("_ManageTreatment", objNewTrtmnt);
        }