From 63fa498d66c928e0802010dae9f8f9dab4876b2f Mon Sep 17 00:00:00 2001 From: lishuai <260038442@qq.com> Date: 星期二, 26 十二月 2023 14:25:18 +0800 Subject: [PATCH] 导出字段显示 --- server/dmvisit_service/src/main/java/com/doumee/service/business/impl/ProblemsServiceImpl.java | 61 ++++++++++++++++++++---------- 1 files changed, 41 insertions(+), 20 deletions(-) diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/ProblemsServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/ProblemsServiceImpl.java index 397f583..c9c6a2e 100644 --- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/ProblemsServiceImpl.java +++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/ProblemsServiceImpl.java @@ -1,12 +1,14 @@ package com.doumee.service.business.impl; import cn.hutool.core.bean.BeanUtil; +import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.doumee.core.model.LoginUserInfo; import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.core.utils.Constants; import com.doumee.core.utils.Utils; +import com.doumee.dao.admin.request.OptionsObject; import com.doumee.dao.admin.response.ProblemDTO; import com.doumee.dao.business.ProblemsMapper; import com.doumee.dao.business.model.Problems; @@ -16,6 +18,7 @@ import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; import org.apache.shiro.SecurityUtils; import org.springframework.beans.BeanUtils; @@ -42,23 +45,25 @@ @Override public Integer create(Problems problems) { LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); - Problems insert = new Problems(); + Problems newProblems = new Problems(); - insert.setCreator(loginUserInfo.getId()); - insert.setCreateDate(new Date()); - insert.setEditor(loginUserInfo.getId()); - insert.setEditDate(new Date()); - insert.setIsdeleted(Constants.ZERO); - insert.setRemark(problems.getRemark()); - insert.setTitle(problems.getTitle()); - insert.setOptions(problems.getOptions()); - insert.setAnswer(problems.getAnswer()); - insert.setSortnu(problems.getSortnu()); - insert.setType(problems.getType()); - insert.setScore(problems.getScore()); - insert.setUseType(problems.getUseType()); - problemsMapper.insert(problems); - return insert.getId(); + newProblems.setCreator(loginUserInfo.getId()); + newProblems.setCreateDate(new Date()); + newProblems.setEditor(loginUserInfo.getId()); + newProblems.setEditDate(new Date()); + newProblems.setIsdeleted(Constants.ZERO); + newProblems.setRemark(problems.getRemark()); + newProblems.setTitle(problems.getTitle()); + if(null != problems.getObjectList() && problems.getObjectList().size() > 0) { + newProblems.setOptions(JSON.toJSONString(problems.getObjectList())); + } + newProblems.setAnswer(problems.getAnswer()); + newProblems.setSortnu(problems.getSortnu()); + newProblems.setType(problems.getType()); + newProblems.setScore(problems.getScore()); + newProblems.setUseType(problems.getUseType()); + problemsMapper.insert(newProblems); + return newProblems.getId(); } @Override @@ -88,7 +93,9 @@ update.setEditor(loginUserInfo.getId()); update.setEditDate(new Date()); update.setTitle(problems.getTitle()); - update.setOptions(problems.getOptions()); + if(null != problems.getObjectList() && problems.getObjectList().size() > 0) { + update.setOptions(JSON.toJSONString(problems.getObjectList())); + } update.setAnswer(problems.getAnswer()); update.setSortnu(problems.getSortnu()); update.setType(problems.getType()); @@ -109,7 +116,11 @@ @Override public Problems findById(Integer id) { - return problemsMapper.selectById(id); + Problems problems = problemsMapper.selectById(id); + if(null != problems && StringUtils.isNotBlank(problems.getOptions())) { + problems.setObjectList(JSON.parseArray(problems.getOptions(), OptionsObject.class)); + } + return problems; } @Override @@ -165,7 +176,7 @@ queryWrapper.lambda().eq(Problems::getSortnu, pageWrap.getModel().getSortnu()); } if (pageWrap.getModel().getType() != null) { - queryWrapper.lambda().eq(Problems::getType, pageWrap.getModel().getType()); + queryWrapper.lambda().in(Problems::getType, pageWrap.getModel().getType()); } if (pageWrap.getModel().getScore() != null) { queryWrapper.lambda().eq(Problems::getScore, pageWrap.getModel().getScore()); @@ -175,7 +186,17 @@ } queryWrapper.lambda().orderByAsc(Problems::getSortnu); queryWrapper.select("problems.*, (select REALNAME from system_user where system_user.id = problems.CREATOR) as creatorName"); - return PageData.from(problemsMapper.selectPage(page, queryWrapper)); + IPage<Problems> problemsIPage = problemsMapper.selectPage(page, queryWrapper); + if(null != problemsIPage && problemsIPage.getRecords().size() > 0) { + List<Problems> newProblems = new ArrayList<>(); + List<Problems> newDatas = problemsIPage.getRecords(); + for (Problems dto:newDatas) { + dto.setObjectList(JSON.parseArray(dto.getOptions(), OptionsObject.class)); + newProblems.add(dto); + } + problemsIPage.setRecords(newProblems); + } + return PageData.from(problemsIPage); } @Override -- Gitblit v1.9.3