public ActionResult MoveDownTable(string questionGroupStr, int seq)
        {
            Logger.Info(_logMsg.Clear().SetPrefixMsg("Down Table").ToInputLogString());

            try
            {
                var tableModel = new TableViewModel();
                tableModel.QuestionGroupTableList = new List <QuestionGroupTableViewModel>();
                var questionGroupDataList = new JavaScriptSerializer().Deserialize <QuestionGroupTableViewModel[]>(questionGroupStr);

                for (int i = 0; i < questionGroupDataList.Count(); i++)
                {
                    var model = new QuestionGroupTableViewModel();

                    if (i == 0)
                    {
                        if (questionGroupDataList[i].QuestionSeq == seq)
                        {
                            model.QuestionGroupId         = questionGroupDataList[i + 1].QuestionGroupId;
                            model.QuestionGroupName       = questionGroupDataList[i + 1].QuestionGroupName;
                            model.QuestionGroupNo         = questionGroupDataList[i + 1].QuestionGroupNo;
                            model.QuestionGroupPassAmount = questionGroupDataList[i + 1].QuestionGroupPassAmount;
                            model.QuestionSeq             = questionGroupDataList[i + 1].QuestionSeq;
                        }
                        else
                        {
                            model.QuestionGroupId         = questionGroupDataList[i].QuestionGroupId;
                            model.QuestionGroupName       = questionGroupDataList[i].QuestionGroupName;
                            model.QuestionGroupNo         = questionGroupDataList[i].QuestionGroupNo;
                            model.QuestionGroupPassAmount = questionGroupDataList[i].QuestionGroupPassAmount;
                            model.QuestionSeq             = questionGroupDataList[i].QuestionSeq;
                        }
                    }
                    else
                    {
                        if (questionGroupDataList[i].QuestionSeq == seq)
                        {
                            model.QuestionGroupId         = questionGroupDataList[i + 1].QuestionGroupId;
                            model.QuestionGroupName       = questionGroupDataList[i + 1].QuestionGroupName;
                            model.QuestionGroupNo         = questionGroupDataList[i + 1].QuestionGroupNo;
                            model.QuestionGroupPassAmount = questionGroupDataList[i + 1].QuestionGroupPassAmount;
                            model.QuestionSeq             = questionGroupDataList[i + 1].QuestionSeq;
                        }
                        else if (questionGroupDataList[i - 1].QuestionSeq == seq)
                        {
                            model.QuestionGroupId         = questionGroupDataList[i - 1].QuestionGroupId;
                            model.QuestionGroupName       = questionGroupDataList[i - 1].QuestionGroupName;
                            model.QuestionGroupNo         = questionGroupDataList[i - 1].QuestionGroupNo;
                            model.QuestionGroupPassAmount = questionGroupDataList[i - 1].QuestionGroupPassAmount;
                            model.QuestionSeq             = questionGroupDataList[i - 1].QuestionSeq;
                        }
                        else
                        {
                            model.QuestionGroupId         = questionGroupDataList[i].QuestionGroupId;
                            model.QuestionGroupName       = questionGroupDataList[i].QuestionGroupName;
                            model.QuestionGroupNo         = questionGroupDataList[i].QuestionGroupNo;
                            model.QuestionGroupPassAmount = questionGroupDataList[i].QuestionGroupPassAmount;
                            model.QuestionSeq             = questionGroupDataList[i].QuestionSeq;
                        }
                    }

                    tableModel.QuestionGroupTableList.Add(model);
                }


                return(PartialView("~/Views/MappingProductType/_QuestionGroupCreateList.cshtml", tableModel));
            }
            catch (Exception ex)
            {
                Logger.Info(_logMsg.Clear().SetPrefixMsg("Down Table").ToFailLogString());
                return(Error(new HandleErrorInfo(ex, this.ControllerContext.RouteData.Values["controller"].ToString(),
                                                 this.ControllerContext.RouteData.Values["action"].ToString())));
            }
        }
        public ActionResult RenderQuestionGroupList(string questionGroupStr, string questionGroupModalStr, int?deleteId)
        {
            Logger.Info(_logMsg.Clear().SetPrefixMsg("Render QuestionGroup").ToInputLogString());

            try
            {
                if (ModelState.IsValid)
                {
                    var tableModel            = new TableViewModel();
                    var questionGroupDataList =
                        new JavaScriptSerializer().Deserialize <QuestionGroupTableViewModel[]>(questionGroupStr);
                    tableModel.QuestionGroupTableList = new List <QuestionGroupTableViewModel>();

                    foreach (var item in questionGroupDataList)
                    {
                        if (!deleteId.HasValue || deleteId != item.QuestionGroupId)
                        {
                            var model = new QuestionGroupTableViewModel()
                            {
                                QuestionGroupId         = item.QuestionGroupId,
                                QuestionGroupName       = item.QuestionGroupName,
                                QuestionGroupNo         = item.QuestionGroupNo,
                                QuestionGroupPassAmount = item.QuestionGroupPassAmount
                            };

                            tableModel.QuestionGroupTableList.Add(model);
                        }
                    }

                    if (!string.IsNullOrEmpty(questionGroupModalStr))
                    {
                        var questionGroupModalDataList = new JavaScriptSerializer().Deserialize <QuestionGroupTableViewModel[]>(questionGroupModalStr);

                        foreach (var item in questionGroupModalDataList)
                        {
                            if (!deleteId.HasValue || deleteId != item.QuestionGroupId)
                            {
                                var model = new QuestionGroupTableViewModel()
                                {
                                    QuestionGroupId   = item.QuestionGroupId,
                                    QuestionGroupName = item.QuestionGroupName,
                                    QuestionGroupNo   = item.QuestionGroupNo
                                };

                                tableModel.QuestionGroupTableList.Add(model);
                            }
                        }
                    }

                    return(PartialView("~/Views/MappingProductType/_QuestionGroupCreateList.cshtml", tableModel));
                }

                return(Json(new
                {
                    Valid = false,
                    Error = string.Empty
                }));
            }
            catch (Exception ex)
            {
                Logger.Info(_logMsg.Clear().SetPrefixMsg("Render SubArea").ToFailLogString());
                return(Error(new HandleErrorInfo(ex, this.ControllerContext.RouteData.Values["controller"].ToString(),
                                                 this.ControllerContext.RouteData.Values["action"].ToString())));
            }
        }