Beispiel #1
0
        /// <summary>
        /// 状态变更
        /// </summary>
        /// <param name="context"></param>
        public void Change_Eva_QuestionAnswer_State(HttpContext context)
        {
            int         intSuccess = (int)errNum.Success;
            int         intFailed  = (int)errNum.Failed;
            HttpRequest Request    = context.Request;
            int         Id         = RequestHelper.int_transfer(Request, "Id");
            int         State      = RequestHelper.int_transfer(Request, "State");

            try
            {
                Eva_QuestionAnswer answer = Constant.Eva_QuestionAnswer_List.FirstOrDefault(i => i.Id == Id);
                if (answer != null)
                {
                    Eva_QuestionAnswer answerClone = Constant.Clone(answer);
                    answerClone.State = State;
                    jsonModel         = Constant.Eva_QuestionAnswerService.Update(answerClone);
                    if (jsonModel.errNum == intSuccess)
                    {
                        answer.State = State;
                        List <Eva_QuestionAnswer_Detail> details = (from d in Constant.Eva_QuestionAnswer_Detail_List where d.QuestionID == Id select d).ToList();
                        foreach (var item in details)
                        {
                            Eva_QuestionAnswer_Detail detailClone = Constant.Clone(item);
                            detailClone.State = State;
                            var jsm = Constant.Eva_QuestionAnswer_DetailService.Update(detailClone);
                            if (jsm.errNum == 0)
                            {
                                item.State = State;
                            }
                        }
                    }
                }
                else
                {
                    jsonModel = JsonModel.get_jsonmodel(intFailed, "failed", "操作失败");
                }
            }
            catch (Exception ex)
            {
                LogHelper.Error(ex);
            }
            finally
            {
                //无论后端出现什么问题,都要给前端有个通知【为防止jsonModel 为空 ,全局字段 jsonModel 特意声明之后进行初始化】
                context.Response.Write("{\"result\":" + Constant.jss.Serialize(jsonModel) + "}");
            }
        }
Beispiel #2
0
        public void Edit_Eva_QuestionAnswer(HttpContext context)
        {
            int         intSuccess = (int)errNum.Success;
            HttpRequest Request    = context.Request;
            int         Id         = RequestHelper.int_transfer(Request, "Id");
            int         State      = RequestHelper.int_transfer(Request, "State");
            //得分
            decimal Score = RequestHelper.decimal_transfer(Request, "Score");
            //答题详情明细
            string List = RequestHelper.string_transfer(Request, "List");
            //表头明显
            string HeaderList = RequestHelper.string_transfer(Request, "HeaderList");

            try
            {
                Eva_QuestionAnswer Eva_QuestionAnswer       = Constant.Eva_QuestionAnswer_List.FirstOrDefault(q => q.Id == Id);
                List <Eva_QuestionAnswer_Header> headerList = (from h in Constant.Eva_QuestionAnswer_Header_List where h.QuestionID == Id select h).ToList();
                List <Eva_QuestionAnswer_Detail> detailList = (from q in Constant.Eva_QuestionAnswer_Detail_List where q.QuestionID == Id select q).ToList();
                Eva_QuestionAnswer Eva_QuestionAnswerClone  = Constant.Clone(Eva_QuestionAnswer);
                Eva_QuestionAnswerClone.EditTime = DateTime.Now;
                Eva_QuestionAnswerClone.State    = State;
                Eva_QuestionAnswerClone.Score    = Score;
                jsonModel = Constant.Eva_QuestionAnswerService.Update(Eva_QuestionAnswerClone);

                if (jsonModel.errNum == intSuccess)
                {
                    Eva_QuestionAnswer.EditTime = DateTime.Now;
                    Eva_QuestionAnswer.State    = State;
                    Eva_QuestionAnswer.Score    = Score;

                    #region 表头添加

                    //序列化表单详情列表
                    List <Eva_QuestionAnswer_Header> Eva_QuestionAnswer_Header_List = JsonConvert.DeserializeObject <List <Eva_QuestionAnswer_Header> >(HeaderList);

                    //答题任务详情填充
                    foreach (Eva_QuestionAnswer_Header item in Eva_QuestionAnswer_Header_List)
                    {
                        Eva_QuestionAnswer_Header detail = headerList.FirstOrDefault(i => i.Id == item.Id);
                        if (detail != null)
                        {
                            Eva_QuestionAnswer_Header detailClone = Constant.Clone(detail);
                            detailClone.Value    = item.Value;
                            detailClone.ValueID  = item.ValueID;
                            detailClone.EditTime = DateTime.Now;
                            var jsm = Constant.Eva_QuestionAnswer_HeaderService.Update(detailClone);
                            if (jsm.errNum == 0)
                            {
                                detail.Value    = item.Value;
                                detail.ValueID  = item.ValueID;
                                detail.EditTime = DateTime.Now;
                            }
                        }
                    }

                    #endregion

                    #region 答题详情


                    //序列化表单详情列表
                    List <Eva_QuestionAnswer_Detail> Eva_QuestionAnswer_Detail_List = JsonConvert.DeserializeObject <List <Eva_QuestionAnswer_Detail> >(List);

                    //答题任务详情填充
                    foreach (Eva_QuestionAnswer_Detail item in Eva_QuestionAnswer_Detail_List)
                    {
                        Eva_QuestionAnswer_Detail detail = detailList.FirstOrDefault(i => i.TableDetailID == item.TableDetailID);
                        if (detail != null)
                        {
                            Eva_QuestionAnswer_Detail detailClone = Constant.Clone(detail);
                            detailClone.Answer   = item.Answer;
                            detailClone.Score    = item.Score;
                            detailClone.State    = State;
                            detailClone.EditTime = DateTime.Now;
                            var jsm = Constant.Eva_QuestionAnswer_DetailService.Update(detailClone);
                            if (jsm.errNum == 0)
                            {
                                detail.Answer   = item.Answer;
                                detail.Score    = item.Score;
                                detail.State    = State;
                                detail.EditTime = DateTime.Now;
                            }
                        }
                        else
                        {
                            item.SectionID   = Eva_QuestionAnswer.SectionID;
                            item.DisPlayName = Eva_QuestionAnswer.DisPlayName;
                            item.ReguID      = Eva_QuestionAnswer.ReguID;
                            item.ReguName    = Eva_QuestionAnswer.ReguName;

                            item.TableID     = Eva_QuestionAnswer.TableID;
                            item.TableName   = Eva_QuestionAnswer.TableName;
                            item.TeacherUID  = Eva_QuestionAnswer.TeacherUID;
                            item.TeacherName = Eva_QuestionAnswer.TeacherName;

                            item.CourseTypeID   = Eva_QuestionAnswer.CourseTypeID;
                            item.CourseTypeName = Eva_QuestionAnswer.CourseTypeName;
                            item.CourseID       = Eva_QuestionAnswer.CourseID;
                            item.CourseName     = Eva_QuestionAnswer.CourseName;

                            item.AnswerUID  = Eva_QuestionAnswer.AnswerUID;
                            item.AnswerName = Eva_QuestionAnswer.AnswerName;

                            item.QuestionID = Eva_QuestionAnswer.Id;

                            item.State     = Eva_QuestionAnswer.State;
                            item.RoomID    = Eva_QuestionAnswer.RoomID;
                            item.Eva_Role  = Eva_QuestionAnswer.Eva_Role;
                            item.CreateUID = Eva_QuestionAnswer.CreateUID;
                            item.EditUID   = Eva_QuestionAnswer.EditUID;
                            item.EditTime  = DateTime.Now;

                            var jsm = Constant.Eva_QuestionAnswer_DetailService.Add(item);
                            if (jsm.errNum == 0)
                            {
                                Constant.Eva_QuestionAnswer_Detail_List.Add(item);
                                item.Id = Convert.ToInt32(jsm.retData);
                            }
                        }
                    }

                    #endregion
                }
            }
            catch (Exception ex)
            {
                LogHelper.Error(ex);
            }
            finally
            {
                //无论后端出现什么问题,都要给前端有个通知【为防止jsonModel 为空 ,全局字段 jsonModel 特意声明之后进行初始化】
                context.Response.Write("{\"result\":" + Constant.jss.Serialize(jsonModel) + "}");
            }
        }