From 0dccef48a4863754bd6080511bdf9372c0004d78 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期五, 19 四月 2024 11:05:55 +0800
Subject: [PATCH] 代码提交
---
smartor/src/main/java/com/smartor/service/impl/SvyLibTopicServiceImpl.java | 270 ++++++++++++-----------------------------------------
1 files changed, 63 insertions(+), 207 deletions(-)
diff --git a/smartor/src/main/java/com/smartor/service/impl/SvyLibTopicServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/SvyLibTopicServiceImpl.java
index f0e7adc..1c04c30 100644
--- a/smartor/src/main/java/com/smartor/service/impl/SvyLibTopicServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/SvyLibTopicServiceImpl.java
@@ -9,6 +9,7 @@
import com.ruoyi.common.utils.StringUtils;
import com.smartor.domain.*;
import com.smartor.mapper.SvyLibTopicoptionMapper;
+import lombok.extern.slf4j.Slf4j;
import org.apache.catalina.User;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.ObjectUtils;
@@ -16,6 +17,7 @@
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
+import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.smartor.mapper.SvyLibTopicMapper;
@@ -29,6 +31,7 @@
* @author ruoyi
* @date 2023-03-03
*/
+@Slf4j
@Service
public class SvyLibTopicServiceImpl implements ISvyLibTopicService {
@Autowired
@@ -56,7 +59,25 @@
*/
@Override
public List<SvyLibTopic> selectSvyLibTopicList(SvyLibTopic svyLibTopic) {
- return svyLibTopicMapper.selectSvyLibTopicList(svyLibTopic);
+ //娣诲姞棰樼洰
+
+ List<SvyLibTopic> svyLibTopics = svyLibTopicMapper.selectSvyLibTopicList(svyLibTopic);
+ //鑾峰彇棰樼洰閫夐」
+
+ for (int j = 0; j < svyLibTopics.size(); j++) {
+ log.info("闂id涓猴細{}", svyLibTopics.get(j).getSvyTopicId());
+ if (StringUtils.isNotEmpty(svyLibTopics.get(j).getTopictype()) && svyLibTopics.get(j).getTopictype().equals("3") || svyLibTopics.get(j).getTopicid() == null) {
+ //浣滅瓟棰橈紝涓嶉渶瑕侀�夐」
+ continue;
+ } else {
+ SvyLibTopicoption svyLibTopicoption = new SvyLibTopicoption();
+ svyLibTopicoption.setTopicid(svyLibTopics.get(j).getTopicid());
+ List<SvyLibTopicoption> svyLibTopicoptions = svyLibTopicoptionMapper.selectSvyLibTopicoptionList(svyLibTopicoption);
+ //灏嗘煡璇㈠嚭鐨勯�夐」鐩斁鍒伴鐩腑
+ svyLibTopics.get(j).setSvyLibTopicoptions(svyLibTopicoptions);
+ }
+ }
+ return svyLibTopics;
}
/**
@@ -69,6 +90,42 @@
public int insertSvyLibTopic(SvyLibTopic svyLibTopic) {
svyLibTopic.setCreateTime(DateUtils.getNowDate());
return svyLibTopicMapper.insertSvyLibTopic(svyLibTopic);
+ }
+
+ @Transactional(rollbackFor = Exception.class)
+ @Override
+ public Integer saveOrUpdateTopic(SvyLibTopic svyLibTopic) {
+ Integer i = null;
+
+ //瀵归鐩繘琛屽鐞�
+ if (svyLibTopic.getIsoperation() != null && svyLibTopic.getIsoperation() == 1) {
+ //鏂板
+ i = svyLibTopicMapper.insertSvyLibTopic(svyLibTopic);
+ } else if (svyLibTopic.getIsoperation() != null && svyLibTopic.getIsoperation() == 2) {
+ //淇敼
+ i = svyLibTopicMapper.updateSvyLibTopic(svyLibTopic);
+ }
+
+ //瀵归鐩�夐」杩涜澶勭悊
+ if (CollectionUtils.isNotEmpty(svyLibTopic.getSvyLibTopicoptions())) {
+ for (SvyLibTopicoption svyLibTopicoption : svyLibTopic.getSvyLibTopicoptions()) {
+ if (svyLibTopicoption.getIsoperation() != null && svyLibTopicoption.getIsoperation() == 1) {
+ //鏂板
+ svyLibTopicoption.setTopicid(svyLibTopic.getTopicid());
+ svyLibTopicoption.setCreateTime(new Date());
+ svyLibTopicoptionMapper.insertSvyLibTopicoption(svyLibTopicoption);
+ } else if (svyLibTopicoption.getIsoperation() != null && svyLibTopicoption.getIsoperation() == 2) {
+ //淇敼
+ svyLibTopicoption.setTopicid(svyLibTopic.getTopicid());
+ svyLibTopicoption.setUpdateTime(new Date());
+ svyLibTopicoptionMapper.updateSvyLibTopicoption(svyLibTopicoption);
+ } else if (svyLibTopicoption.getIsoperation() != null && svyLibTopicoption.getIsoperation() == 3) {
+ //鍒犻櫎
+ svyLibTopicoptionMapper.deleteSvyLibTopicoptionByOptionid(svyLibTopicoption.getOptionid());
+ }
+ }
+ }
+ return i;
}
/**
@@ -91,7 +148,11 @@
*/
@Override
public int deleteSvyLibTopicByTopicids(Long[] topicids) {
- return svyLibTopicMapper.deleteSvyLibTopicByTopicids(topicids);
+ Integer i = null;
+ for (Long topicid : topicids) {
+ i = svyLibTopicMapper.deleteSvyLibTopicByTopicid(topicid);
+ }
+ return i;
}
/**
@@ -103,211 +164,6 @@
@Override
public int deleteSvyLibTopicByTopicid(Long topicid) {
return svyLibTopicMapper.deleteSvyLibTopicByTopicid(topicid);
- }
-
- /**
- * 鎵归噺瀵煎叆闂棶棰樼洰
- *
- * @param multipartFile
- * @return
- */
- @Override
- @Transactional
- public List<SvyLibTopicRes> importLitTopic(SysUser user, MultipartFile multipartFile) {
- List<SvyLibTopicRes> svyLibTopicErrors = new ArrayList<>();
-
- try {
- Workbook workbook = new XSSFWorkbook(multipartFile.getInputStream());
- Sheet sheet = workbook.getSheetAt(0);
-
- //闂嵎棰樼洰瀵硅薄
- SvyLibTopic svyLibTopic = new SvyLibTopic();
-
-
- for (int i = sheet.getFirstRowNum() + 1; i < sheet.getLastRowNum(); i++) {
- SvyLibTopicRes svyLibTopicRes = new SvyLibTopicRes();
-
- Row row = sheet.getRow(i);
- //濡傛灉琛屼负绌猴紝杩涜涓嬩竴娆″惊鐜�
- if (ObjectUtils.isEmpty(row.getCell(0)) && ObjectUtils.isEmpty(row.getCell(1)) && ObjectUtils.isEmpty(row.getCell(2))) {
- continue;
- }
- //鍒ゆ柇鏁版嵁鏄惁鏈夐棶棰�
- svyLibTopicRes.setTopic(row.getCell(0).toString());
- if (ObjectUtils.isEmpty(row.getCell(0)) || StringUtils.isEmpty(row.getCell(0).toString())) {
- svyLibTopicRes.setRemark("棰樼洰涓虹┖,");
- } else {
- //鍒ゆ柇涓�涓嬭棰樻槸鍚﹀凡缁忓湪琛ㄩ噷鍑虹幇
- SvyLibTopic svyLibTopic1 = new SvyLibTopic();
- svyLibTopic1.setTopic(row.getCell(0).toString());
- List<SvyLibTopic> svyLibTopics = svyLibTopicMapper.selectSvyLibTopicList(svyLibTopic1);
- if (svyLibTopics.size() > 0) {
- //宸茬粡瀛樺湪浜嗭紝灏变笉瀛樹簡
- continue;
- }
- }
- svyLibTopicRes.setTag(row.getCell(1).toString());
- if (ObjectUtils.isEmpty(row.getCell(1)) || StringUtils.isEmpty(row.getCell(1).toString())) {
- svyLibTopicRes.setRemark(StringUtils.isNotEmpty(svyLibTopicRes.getRemark()) ? svyLibTopicRes.getRemark() : "" + "绫诲埆涓虹┖,");
- }
- svyLibTopicRes.setTopictype(row.getCell(2).toString());
- if (ObjectUtils.isEmpty(row.getCell(2)) || StringUtils.isEmpty(row.getCell(2).toString())) {
- svyLibTopicRes.setRemark(StringUtils.isNotEmpty(svyLibTopicRes.getRemark()) ? svyLibTopicRes.getRemark() : "" + "棰樼洰绫诲瀷涓虹┖,");
- }
- if (ObjectUtils.isNotEmpty(row.getCell(3))) {
- svyLibTopicRes.setAnswer(row.getCell(3).toString());
- }
- if (ObjectUtils.isNotEmpty(row.getCell(4))) {
- svyLibTopicRes.setOptionA(row.getCell(4).toString());
- }
- if (ObjectUtils.isNotEmpty(row.getCell(5))) {
- svyLibTopicRes.setOptionB(row.getCell(5).toString());
- }
- if (ObjectUtils.isNotEmpty(row.getCell(6))) {
- svyLibTopicRes.setOptionC(row.getCell(6).toString());
- }
- if (ObjectUtils.isNotEmpty(row.getCell(7))) {
- svyLibTopicRes.setOptionD(row.getCell(7).toString());
- }
- if (ObjectUtils.isNotEmpty(row.getCell(8))) {
- svyLibTopicRes.setScore(row.getCell(8).toString());
- }
- if (ObjectUtils.isNotEmpty(row.getCell(9))) {
- svyLibTopicRes.setScore(row.getCell(9).toString());
- }
- if (ObjectUtils.isNotEmpty(row.getCell(10))) {
- svyLibTopicRes.setScore(row.getCell(10).toString());
- }
- if (ObjectUtils.isNotEmpty(row.getCell(11))) {
- svyLibTopicRes.setScore(row.getCell(11).toString());
- }
- if (ObjectUtils.isNotEmpty(row.getCell(12))) {
- svyLibTopicRes.setScore(row.getCell(12).toString());
- }
- if (StringUtils.isNotEmpty(svyLibTopicRes.getRemark())) {
- //璇存槑璇ヨ鏁版嵁鏈夐棶棰�
- svyLibTopicErrors.add(svyLibTopicRes);
- continue;
- }
-
- //鏁版嵁娌℃湁闂锛屽紑濮嬫彃琛�
- svyLibTopic.setTopic(row.getCell(0).toString());
- if (row.getCell(2).toString().equals("鍗曢��")) {
- svyLibTopic.setTopictype(1L);
- } else if (row.getCell(2).toString().equals("澶氶��")) {
- svyLibTopic.setTopictype(2L);
- } else {
- svyLibTopic.setTopictype(3L);
- }
- svyLibTopic.setTopiccode(UUID.randomUUID().toString().replace("-", ""));
- //棰樼洰绫诲埆
- svyLibTopic.setTag(row.getCell(1).toString());
- svyLibTopic.setCreateBy(user.getUserName());
- svyLibTopic.setOrgid(user.getDeptId().toString());
- svyLibTopic.setUpdateBy(user.getUserName());
- svyLibTopic.setUpdateTime(new Date());
- svyLibTopic.setCreateTime(new Date());
- svyLibTopic.setDelFlag("0");
- //鏂板棰樼洰琛�
- svyLibTopicMapper.insertSvyLibTopic(svyLibTopic);
-
- //鏂板棰樼洰閫夐」琛�
- SvyLibTopicoption svyLibTopicoption = new SvyLibTopicoption();
- svyLibTopicoption.setTopicid(svyLibTopic.getTopicid());
- svyLibTopicoption.setTopictype(svyLibTopic.getTopictype());
- svyLibTopicoption.setOptioncode(UUID.randomUUID().toString().replace("-", ""));
- svyLibTopicoption.setCreateBy(user.getUserName());
- svyLibTopicoption.setCreateTime(new Date());
- svyLibTopicoption.setUpdateBy(user.getUserName());
- svyLibTopicoption.setUpdateTime(new Date());
- svyLibTopicoption.setDelFlag("0");
- if (svyLibTopicoption.getTopictype() == 3) {
- //瑙g瓟棰橈紝涓嶉渶瑕佸啀璁剧疆閫夐」
- svyLibTopicoptionMapper.insertSvyLibTopicoption(svyLibTopicoption);
- } else {
- if (ObjectUtils.isNotEmpty(row.getCell(4))) {
- if (StringUtils.isNotEmpty(row.getCell(4).toString())) {
- svyLibTopicoption.setOptioncode("A");
- svyLibTopicoption.setOptioncontent(row.getCell(4).toString());
- svyLibTopicoption.setOptionid(null);
- svyLibTopicoptionMapper.insertSvyLibTopicoption(svyLibTopicoption);
- }
- }
- if (ObjectUtils.isNotEmpty(row.getCell(5))) {
- if (StringUtils.isNotEmpty(row.getCell(5).toString())) {
- svyLibTopicoption.setOptioncode("B");
- svyLibTopicoption.setOptioncontent(row.getCell(5).toString());
- svyLibTopicoption.setOptionid(null);
- svyLibTopicoptionMapper.insertSvyLibTopicoption(svyLibTopicoption);
- }
- }
- if (ObjectUtils.isNotEmpty(row.getCell(6))) {
- if (StringUtils.isNotEmpty(row.getCell(6).toString())) {
- svyLibTopicoption.setOptioncode("C");
- svyLibTopicoption.setOptioncontent(row.getCell(6).toString());
- svyLibTopicoption.setOptionid(null);
- svyLibTopicoptionMapper.insertSvyLibTopicoption(svyLibTopicoption);
- }
- }
- if (ObjectUtils.isNotEmpty(row.getCell(7))) {
- if (StringUtils.isNotEmpty(row.getCell(7).toString())) {
- svyLibTopicoption.setOptioncode("D");
- svyLibTopicoption.setOptioncontent(row.getCell(7).toString());
- svyLibTopicoption.setOptionid(null);
- svyLibTopicoptionMapper.insertSvyLibTopicoption(svyLibTopicoption);
- }
- }
- if (ObjectUtils.isNotEmpty(row.getCell(8))) {
- if (StringUtils.isNotEmpty(row.getCell(8).toString())) {
- svyLibTopicoption.setOptioncode("E");
- svyLibTopicoption.setOptioncontent(row.getCell(8).toString());
- svyLibTopicoption.setOptionid(null);
- svyLibTopicoptionMapper.insertSvyLibTopicoption(svyLibTopicoption);
- }
- }
- if (ObjectUtils.isNotEmpty(row.getCell(9))) {
- if (StringUtils.isNotEmpty(row.getCell(9).toString())) {
- svyLibTopicoption.setOptioncode("F");
- svyLibTopicoption.setOptioncontent(row.getCell(9).toString());
- svyLibTopicoption.setOptionid(null);
- svyLibTopicoptionMapper.insertSvyLibTopicoption(svyLibTopicoption);
- }
- }
- if (ObjectUtils.isNotEmpty(row.getCell(10))) {
- if (StringUtils.isNotEmpty(row.getCell(10).toString())) {
- svyLibTopicoption.setOptioncode("G");
- svyLibTopicoption.setOptioncontent(row.getCell(10).toString());
- svyLibTopicoption.setOptionid(null);
- svyLibTopicoptionMapper.insertSvyLibTopicoption(svyLibTopicoption);
- }
- }
- if (ObjectUtils.isNotEmpty(row.getCell(11))) {
- if (StringUtils.isNotEmpty(row.getCell(11).toString())) {
- svyLibTopicoption.setOptioncode("H");
- svyLibTopicoption.setOptioncontent(row.getCell(11).toString());
- svyLibTopicoption.setOptionid(null);
- svyLibTopicoptionMapper.insertSvyLibTopicoption(svyLibTopicoption);
- }
- }
- }
- }
- if (CollectionUtils.isNotEmpty(svyLibTopicErrors)) {
- return svyLibTopicErrors;
- }
-
- } catch (Exception e) {
- e.printStackTrace();
- }
-
- return null;
- }
-
- @Override
- public SvyLibTopicRes showTopic(SvyTopicReq svyTopicReq) {
- List<SvyLibTopicAndOptionRes> svyLibTopicAndOptionRes = svyLibTopicMapper.showTopic(svyTopicReq);
- Map<Long, List<SvyLibTopicAndOptionRes>> groupByAge = svyLibTopicAndOptionRes.stream().collect(Collectors.groupingBy(SvyLibTopicAndOptionRes::getTopicid));
-
- return null;
}
--
Gitblit v1.9.3