Example #1
0
        public ActionResult ChangeExerciseStatus(int execiseId, int operationId)
        {
            StringBuilder traceLog = new StringBuilder();

            if (Login.IsSessionExpire(Convert.ToString(HttpContext.Session[ConstantHelper.constLoginUserName])) ||
                Convert.ToString(HttpContext.Session[ConstantHelper.constUserType]) != ConstantHelper.constLoginadmin)
            {
                return(RedirectToAction(ConstantHelper.constLogin, ConstantHelper.constLogin));
            }
            try
            {
                ExerciseStatusVM response = null;
                if (execiseId > 0)
                {
                    traceLog.AppendLine("Start: ChangeExerciseStatus() in Exercise controller");
                    int actionId = Convert.ToInt32(operationId);
                    response = ExerciseBL.ChangeExerciseStatus(execiseId, actionId);
                }
                return(Json(response, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                LogManager.LogManagerInstance.WriteErrorLog(ex);
                /*return view to error page*/
                return(View());
            }
            finally
            {
                traceLog.AppendLine("ChangeExerciseStatus end() : --- " + DateTime.Now.ToLongDateString());
                LogManager.LogManagerInstance.WriteTraceLog(traceLog);
            }
        }
        /// <summary>
        /// Change Exercise Status
        /// </summary>
        /// <param name="exerciseId"></param>
        /// <param name="operationId"></param>
        /// <returns></returns>
        public static ExerciseStatusVM ChangeExerciseStatus(int exerciseId, int operationId)
        {
            StringBuilder traceLog = new StringBuilder();

            using (LinksMediaContext dataContext = new LinksMediaContext())
            {
                try
                {
                    ExerciseStatusVM objExerciseStatusVM = new ExerciseStatusVM();
                    traceLog.AppendLine("Start: ChangeExerciseStatus---- " + DateTime.Now.ToLongDateString());
                    if (exerciseId > 0)
                    {
                        tblExercise exercise = dataContext.Exercise.Where(ex => ex.ExerciseId == exerciseId).FirstOrDefault();
                        switch (operationId)
                        {
                        case 1:
                        {
                            exercise.ExerciseStatus               = 1;
                            objExerciseStatusVM.OperationId       = operationId;
                            objExerciseStatusVM.OperationResultId = 1;
                        }
                        break;

                        case 2:
                        {
                            exercise.ExerciseStatus               = 2;
                            objExerciseStatusVM.OperationId       = operationId;
                            objExerciseStatusVM.OperationResultId = 2;
                        }
                        break;

                        case 3:
                        {
                            if (dataContext.CEAssociation.Any(ex => ex.ExerciseId == exerciseId))
                            {
                                exercise.ExerciseStatus = 2;
                                objExerciseStatusVM.OperationResultId = -1;
                            }
                            else
                            {
                                exercise.ExerciseStatus = 3;
                                objExerciseStatusVM.OperationResultId = 1;
                            }
                            objExerciseStatusVM.OperationId = operationId;
                        }
                        break;
                        }
                        dataContext.SaveChanges();
                    }
                    return(objExerciseStatusVM);
                }
                finally
                {
                    traceLog.AppendLine("End  ChangeExerciseStatus : --- " + DateTime.Now.ToLongDateString());
                    LogManager.LogManagerInstance.WriteTraceLog(traceLog);
                }
            }
        }