From e7b486f54ecee830749151e0fd8feae726fd4107 Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期五, 22 十二月 2023 13:45:21 +0800 Subject: [PATCH] 海康接口对接开发 --- server/dmvisit_service/src/main/java/com/doumee/service/business/impl/ProblemsServiceImpl.java | 81 +++++++++++++++++++++++++++++++--------- 1 files changed, 63 insertions(+), 18 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 e409308..ba9e77f 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,26 +1,32 @@ 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; +import com.doumee.dao.web.response.ProblemsVO; import com.doumee.service.business.ProblemsService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; 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; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; +import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.stream.Collectors; @@ -39,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 @@ -106,7 +114,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 @@ -172,7 +184,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 @@ -199,4 +221,27 @@ return collect; } + + + /** + * 鑾峰彇棰樼洰淇℃伅 + * @param useType + * @return + */ + @Override + public List<ProblemsVO> getProblemsVO(Integer useType){ + List<Problems> problemsList = problemsMapper.selectList(new QueryWrapper<Problems>().lambda().eq(Problems::getUseType,useType) + .eq(Problems::getIsdeleted, Constants.ZERO).orderByAsc(Problems::getSortnu)); + List<ProblemsVO> problemsVOList = new ArrayList<>(); + for (Problems problems:problemsList) { + ProblemsVO problemsVO = new ProblemsVO(); + BeanUtils.copyProperties(problems,problemsVO); + problemsVOList.add(problemsVO); + } + return problemsVOList; + } + + + + } -- Gitblit v1.9.3