public async Task <bool> DeleteQuestionnaireAsync(QuestionnaireHideModel questionnaireHideModel, QuestionnaireResultModel questionnaireResultModel)
 {
     return(await MySqlHelper.TransactionAsync(async (conn, trans) =>
     {
         //新增删除标记表
         questionnaireHideModel.Insert(conn);
         if (questionnaireResultModel != null)
         {
             //删除主表用户数据
             await conn.DeleteAsync(questionnaireResultModel);
             //删除明细
             await conn.DeleteListAsync <QuestionnaireResultDetailModel>("where result_guid=@id", new { id = questionnaireResultModel.ResultGuid });
         }
         return true;
     }));
 }
        public async Task <IActionResult> DeleteQuestionnaireAsync(string questionnaireGuid)
        {
            //判断问卷是否存在
            var questionnaireModel = await new QuestionnaireBiz().GetAsync(questionnaireGuid);

            if (questionnaireModel == null || !questionnaireModel.Enable)
            {
                return(Success(false, "问卷不存在"));
            }
            var checkQuestionnaireHide = await new QuestionnaireHideBiz().GetQuestionnaireHideModelAsync(UserID, questionnaireModel.QuestionnaireGuid);

            if (checkQuestionnaireHide != null)
            {
                return(Failed(ErrorCode.DataBaseError, "已被删除,请勿重复操作"));
            }
            //判断问卷状态
            var questionnaireResultModel = await new QuestionnaireResultBiz().GetQuestionnaireResultModelAsync(UserID, questionnaireGuid);
            List <QuestionnaireResultDetailModel> questionnaireResultDetailList = null;

            if (questionnaireResultModel != null)
            {
                //用户问卷明细答案
                questionnaireResultDetailList = await new QuestionnaireResultDetailBiz().GetModelsByResultGuidAsync(questionnaireResultModel.ResultGuid);
            }
            //删除问卷标记数据
            QuestionnaireHideModel questionnaireHideModel = new QuestionnaireHideModel()
            {
                HideGuid          = Guid.NewGuid().ToString("N"),
                UserGuid          = UserID,
                QuestionnaireGuid = questionnaireModel.QuestionnaireGuid,
                CreatedBy         = UserID,
                CreationDate      = DateTime.Now,
                LastUpdatedBy     = UserID,
                LastUpdatedDate   = DateTime.Now
            };
            var result = await new QuestionnaireResultBiz().DeleteQuestionnaireAsync(questionnaireHideModel, questionnaireResultModel);

            return(result ? Success() : Failed(ErrorCode.DataBaseError, "删除失败"));
        }