From 99132a43bf344f2aafdd9894b0762d2eedd9767b Mon Sep 17 00:00:00 2001
From: “djh” <“3298565835@qq.com”>
Date: 星期二, 01 七月 2025 17:15:25 +0800
Subject: [PATCH] 修改

---
 multi-system/src/main/java/com/gkhy/exam/system/service/impl/CatalogueServiceImpl.java |  200 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 200 insertions(+), 0 deletions(-)

diff --git a/multi-system/src/main/java/com/gkhy/exam/system/service/impl/CatalogueServiceImpl.java b/multi-system/src/main/java/com/gkhy/exam/system/service/impl/CatalogueServiceImpl.java
new file mode 100644
index 0000000..27065f4
--- /dev/null
+++ b/multi-system/src/main/java/com/gkhy/exam/system/service/impl/CatalogueServiceImpl.java
@@ -0,0 +1,200 @@
+package com.gkhy.exam.system.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.gkhy.exam.common.api.CommonPage;
+import com.gkhy.exam.common.api.CommonResult;
+import com.gkhy.exam.common.utils.SecurityUtils;
+import com.gkhy.exam.system.domain.Catalogue;
+import com.gkhy.exam.system.domain.CatalogueData;
+import com.gkhy.exam.system.domain.CatalogueDataFile;
+import com.gkhy.exam.system.domain.SysCompany;
+import com.gkhy.exam.system.domain.req.CatalogueDataReq;
+import com.gkhy.exam.system.domain.req.CatalogueReq;
+import com.gkhy.exam.system.domain.vo.CatalogueDataVo;
+import com.gkhy.exam.system.domain.vo.CatalogueVo;
+import com.gkhy.exam.system.mapper.CatalogueMapper;
+import com.gkhy.exam.system.mapper.SysCompanyMapper;
+import com.gkhy.exam.system.service.CatalogueService;
+import com.gkhy.exam.system.service.SysCompanyService;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.time.LocalDate;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.stream.Collectors;
+
+@Service
+public class CatalogueServiceImpl extends ServiceImpl<CatalogueMapper, Catalogue> implements CatalogueService {
+
+    @Autowired
+    private CatalogueMapper catalogueMapper;
+    @Autowired
+    private SysCompanyMapper sysCompanyMapper;
+
+    /**
+     * 目录管理
+     * @param catalogueReq
+     * @return
+     */
+    @Override
+    public CommonResult selectCatalogueList(CatalogueReq catalogueReq) {
+        List<CatalogueVo> catalogueVos = catalogueMapper.selectCatalogueList(catalogueReq);
+        List<CatalogueVo> collect = catalogueVos.stream().filter(catalogueVo -> catalogueVo.getParentId() == 0).collect(Collectors.toList());
+        for (CatalogueVo catalogueVo : collect) {
+            List<CatalogueVo> getchildren = getchildren(catalogueVo, catalogueVos);
+            catalogueVo.setChildren(getchildren);
+        }
+        return CommonResult.success(collect);
+    }
+
+    private List<CatalogueVo> getchildren(CatalogueVo catalogueVo, List<CatalogueVo> catalogueVos) {
+        List<CatalogueVo> catalogueCharlden = new ArrayList<>();
+        for (CatalogueVo catalogue : catalogueVos) {
+            if (catalogueVo.getId() == catalogue.getParentId()){
+                catalogueCharlden.add(catalogue);
+            }
+        }
+        for (CatalogueVo vo : catalogueCharlden) {
+            List<CatalogueVo> getchildren = getchildren(vo, catalogueVos);
+            vo.setChildren(getchildren);
+        }
+        return catalogueCharlden;
+    }
+
+    @Override
+    public CommonResult insertCatalogue(Catalogue catalogue) {
+        catalogue.setCreateBy(SecurityUtils.getUsername());
+        catalogue.setCreateTime(LocalDate.now());
+        int insert = catalogueMapper.insert(catalogue);
+        if (insert>0){
+            return CommonResult.success();
+        }
+        return CommonResult.failed();
+    }
+
+    @Override
+    public CommonResult updateCatalogue(Catalogue catalogue) {
+        catalogue.setUpdateBy(SecurityUtils.getUsername());
+        catalogue.setUpdateTime(LocalDate.now());
+        int i = catalogueMapper.updateById(catalogue);
+        if (i>0){
+            return CommonResult.success();
+        }
+        return CommonResult.failed();
+    }
+
+    @Override
+    public CommonResult deletedCatalogue(Integer catalogueId) {
+
+        CatalogueReq catalogueReq = new CatalogueReq();
+        catalogueReq.setCatalogueId(catalogueId);
+        List<CatalogueDataVo> catalogueDataVos = catalogueMapper.selectCatalogueDataList(catalogueReq);
+        if (catalogueDataVos.size()>0){
+            return CommonResult.failed("当前目录存在数据,请勿删除");
+        }
+        Catalogue catalogue = new Catalogue();
+        catalogue.setId(catalogueId);
+        catalogue.setDelFlag(2);
+        catalogue.setUpdateTime(LocalDate.now());
+        catalogue.setUpdateBy(SecurityUtils.getUsername());
+        int i = catalogueMapper.updateById(catalogue);
+        if (i>0){
+            return CommonResult.success();
+        }
+        return CommonResult.failed();
+    }
+
+
+    /**
+     * 目录数据管理
+     * @param catalogueReq
+     * @return
+     */
+    @Override
+    public CommonResult selectCatalogueDataList(CatalogueReq catalogueReq) {
+        List<CatalogueDataVo> catalogueData = catalogueMapper.selectCatalogueDataList(catalogueReq);
+        for (CatalogueDataVo catalogueDatum : catalogueData) {
+            List<CatalogueDataFile> catalogueDataFiles = catalogueMapper.selectCatalogueDataFile(catalogueDatum.getCompanyId(), catalogueDatum.getCatalogueId());
+            catalogueDatum.setFiles(catalogueDataFiles);
+        }
+        return CommonResult.success(catalogueData);
+    }
+
+    @Override
+    public CommonResult insertCatalogueData(CatalogueDataReq catalogue) {
+        List<CatalogueData> catalogueData1 = catalogueMapper.selectByCompanyId(catalogue.getCompanyId());
+        if (catalogueData1.size()>0){
+            return CommonResult.failed("当前企业已有数据,请勿重复添加");
+        }
+        CatalogueData catalogueData = new CatalogueData();
+        BeanUtils.copyProperties(catalogue,catalogueData);
+        Integer i = catalogueMapper.insertCatalogueData(catalogueData);
+//        List<CatalogueDataFile> files = catalogue.getFiles();
+        if (i>0){
+//            for (CatalogueDataFile file : files) {
+//                file.setCatalogueDataId(catalogueData.getId());
+//                file.setCreateBy(SecurityUtils.getUsername());
+//                file.setCreateTime(LocalDate.now());
+//                catalogueMapper.insertCatalogueDataFile(file);
+//            }
+            return CommonResult.success();
+        }
+        return CommonResult.failed();
+    }
+
+    @Override
+    public CommonResult updateCatalogueData(CatalogueDataReq catalogue) {
+        CatalogueData catalogueData = new CatalogueData();
+        BeanUtils.copyProperties(catalogue,catalogueData);
+        Integer i = catalogueMapper.updateCatalogueData(catalogueData);
+//        List<CatalogueDataFile> files = catalogue.getFiles();
+        if (i>0){
+//            catalogueMapper.updateCatalogueDataFile(files);
+            return CommonResult.success();
+        }
+        return CommonResult.failed();
+    }
+
+    @Override
+    public CommonResult deletedCatalogueData(Integer catalogueDataId) {
+        CatalogueData catalogueData = new CatalogueData();
+        catalogueData.setId(catalogueDataId);
+        catalogueData.setDelFlag(2);
+        catalogueData.setUpdateBy(SecurityUtils.getUsername());
+        catalogueData.setUpdateTime(LocalDate.now());
+        Integer i = catalogueMapper.updateCatalogueData(catalogueData);
+        if (i>9){
+            return CommonResult.success();
+        }
+        return CommonResult.failed();
+    }
+
+    @Override
+    public CommonResult insertCatalogueDataFile(CatalogueDataFile catalogueDataFile) {
+        catalogueDataFile.setCreateTime(LocalDate.now());
+        catalogueDataFile.setCreateBy(SecurityUtils.getUsername());
+        catalogueMapper.insertCatalogueDataFile(catalogueDataFile);
+        return CommonResult.success();
+    }
+
+    @Override
+    public CommonResult updateCatalogueDataFile(CatalogueDataFile catalogueDataFile) {
+        catalogueDataFile.setUpdateBy(SecurityUtils.getUsername());
+        catalogueDataFile.setUpdateTime(LocalDate.now());
+        catalogueMapper.updateCatalogueDataFile(catalogueDataFile);
+        return CommonResult.success();
+    }
+
+    @Override
+    public CommonResult deletedCatalogueDataFile(Integer dataFileId) {
+        CatalogueDataFile catalogueDataFile = new CatalogueDataFile();
+        catalogueDataFile.setId(dataFileId);
+        catalogueDataFile.setDelFlag(2);
+        catalogueDataFile.setUpdateTime(LocalDate.now());
+        catalogueDataFile.setUpdateBy(SecurityUtils.getUsername());
+        catalogueMapper.updateCatalogueDataFile(catalogueDataFile);
+        return CommonResult.success();
+    }
+}

--
Gitblit v1.9.2