/// <summary> /// 保存用户答案 /// </summary> /// <param name="answerDetailList"></param> /// <returns></returns> public bool SaveUserAnswer(U_QuestionAnswerDetail answerDetailModel) { bool result = false;//保存结果标识 //问卷人员与答案主表 Business_Questionnaire_Answer mainExerciseAnswerModel = new Business_Questionnaire_Answer(); mainExerciseAnswerModel.QuestionnaireVguid = answerDetailModel.BusinessQuestionnaireVguid; //问卷主信息Vguid mainExerciseAnswerModel.Business_PersonnelVguid = answerDetailModel.BusinessPersonnelVguid; //做题人Vguid mainExerciseAnswerModel.Status = "1"; //未完成 mainExerciseAnswerModel.ParticipateStatus = "2"; //参与 //mainExerciseAnswerModel.CreatedDate = DateTime.Now; //mainExerciseAnswerModel.ChangeDate = DateTime.Now; //问卷人员与答案附表 Business_Questionnaire_AnswerDetail detailAnswerModel = new Business_Questionnaire_AnswerDetail(); detailAnswerModel.Answer = answerDetailModel.Answer; detailAnswerModel.BusinessQuestionDetailVguid = answerDetailModel.BusinessQuestionnaireDetailVguid;//具体问卷Vguid //detailAnswerModel.BusinessAnswerExercisesVguid = answerDetailModel.BusinessAnswerExercisesVguid; //detailAnswerModel.CreatedDate = DateTime.Now; //detailAnswerModel.ChangeDate = DateTime.Now; result = _ws.SaveUserAnswer(mainExerciseAnswerModel, detailAnswerModel); LogHelper.WriteLog(JsonHelper.ModelToJson <Business_Questionnaire_AnswerDetail>(detailAnswerModel)); return(result); }
/// <summary> /// 保存用户答案 /// </summary> /// <param name="mainQuestionAnswerModel"></param> /// <param name="detailAnswerModel"></param> /// <returns></returns> public bool SaveUserAnswer(Business_Questionnaire_Answer mainQuestionAnswerModel, Business_Questionnaire_AnswerDetail detailAnswerModel) { using (SqlSugarClient dbMsSql = SugarDao_MsSql.GetInstance()) { bool result = false; bool mainEdit = false; //问卷人员与答案主表中是否存在 bool detailEdit = false; //问卷人员与答案附表中是否存在 try { dbMsSql.BeginTran(); mainEdit = dbMsSql.Queryable <Business_Questionnaire_Answer>().Any(i => i.Business_PersonnelVguid == mainQuestionAnswerModel.Business_PersonnelVguid && i.QuestionnaireVguid == mainQuestionAnswerModel.QuestionnaireVguid); if (!mainEdit) //新增 { mainQuestionAnswerModel.Vguid = Guid.NewGuid(); mainQuestionAnswerModel.CreatedDate = DateTime.Now; mainQuestionAnswerModel.ChangeDate = DateTime.Now; result = dbMsSql.Insert(mainQuestionAnswerModel, false) != DBNull.Value; //存入操作日志表 string logData = JsonHelper.ModelToJson(mainQuestionAnswerModel); _ll.SaveLog(1, 34, mainQuestionAnswerModel.Business_PersonnelVguid.ToString(), "用户" + mainQuestionAnswerModel.Business_PersonnelVguid + " " + mainQuestionAnswerModel.Business_PersonnelVguid + "套题的答题情况", logData); } else { mainQuestionAnswerModel = dbMsSql.Queryable <Business_Questionnaire_Answer>().Where(i => i.Business_PersonnelVguid == mainQuestionAnswerModel.Business_PersonnelVguid && i.QuestionnaireVguid == mainQuestionAnswerModel.QuestionnaireVguid).SingleOrDefault(); result = dbMsSql.Update <Business_Questionnaire_Answer>(new { ChangeDate = DateTime.Now }, i => i.Business_PersonnelVguid == mainQuestionAnswerModel.Business_PersonnelVguid && i.QuestionnaireVguid == mainQuestionAnswerModel.QuestionnaireVguid); //存入操作日志表 string logData = JsonHelper.ModelToJson(mainQuestionAnswerModel); _ll.SaveLog(4, 34, mainQuestionAnswerModel.Business_PersonnelVguid.ToString(), "用户" + mainQuestionAnswerModel.Business_PersonnelVguid + " " + mainQuestionAnswerModel.QuestionnaireVguid + "套题的答题情况", logData); } detailEdit = dbMsSql.Queryable <Business_Questionnaire_AnswerDetail>().Any(i => i.QuestionnaireAnswerVguid == mainQuestionAnswerModel.Vguid && i.BusinessQuestionDetailVguid == detailAnswerModel.BusinessQuestionDetailVguid); if (result) //主表插入成功 { Business_Questionnaire_AnswerDetail newDeatailAnswerModel = new Business_Questionnaire_AnswerDetail(); if (detailEdit) //编辑 { newDeatailAnswerModel = dbMsSql.Queryable <Business_Questionnaire_AnswerDetail>().Where(i => i.QuestionnaireAnswerVguid == mainQuestionAnswerModel.Vguid && i.BusinessQuestionDetailVguid == detailAnswerModel.BusinessQuestionDetailVguid).SingleOrDefault(); var model = new { Answer = detailAnswerModel.Answer, ChangeDate = DateTime.Now }; result = dbMsSql.Update <Business_Questionnaire_AnswerDetail>(model, i => i.Vguid == newDeatailAnswerModel.Vguid); //存入操作日志表 string logData = JsonHelper.ModelToJson(detailAnswerModel); _ll.SaveLog(4, 34, "", detailAnswerModel.QuestionnaireAnswerVguid + "道题的答题情况", logData); } else //新增 { detailAnswerModel.QuestionnaireAnswerVguid = mainQuestionAnswerModel.Vguid; //关联”问卷人员与答案信息“主表 detailAnswerModel.Vguid = Guid.NewGuid(); detailAnswerModel.CreatedDate = DateTime.Now; detailAnswerModel.ChangeDate = DateTime.Now; result = dbMsSql.Insert(detailAnswerModel, false) != DBNull.Value; //存入操作日志表 string logData = JsonHelper.ModelToJson(detailAnswerModel); _ll.SaveLog(1, 34, "", detailAnswerModel.QuestionnaireAnswerVguid + "道题的答题情况", logData); } } dbMsSql.CommitTran(); } catch (Exception ex) { LogHelper.WriteLog(ex.ToString()); dbMsSql.RollbackTran(); } return(result); } }