From c71757101b3bb33921b4970697c9cf22bbde7fb3 Mon Sep 17 00:00:00 2001 From: cjw Date: Thu, 20 Jun 2024 09:42:24 +0800 Subject: [PATCH] =?UTF-8?q?=E5=90=8C=E6=AD=A5=E6=95=99=E6=9D=90=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=E6=A0=91=E5=BD=A2=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/portal/PortalController.java | 7 ++--- .../service/ISysCatalogTextbookService.java | 11 ++++++++ .../impl/SysCatalogTextbookServiceImpl.java | 26 ++++++++++++++++++- .../impl/SysHomeBannerServiceImpl.java | 7 ++--- .../service/impl/SysHomeShowServiceImpl.java | 17 ++++++------ .../service/impl/SysHomeTrendServiceImpl.java | 1 + .../service/impl/SysOssPersonServiceImpl.java | 2 +- .../impl/SysOssResourceServiceImpl.java | 7 ++--- .../impl/SysOssTextbookServiceImpl.java | 5 ++-- .../service/impl/SysTeacherServiceImpl.java | 1 + 10 files changed, 63 insertions(+), 21 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/portal/PortalController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/portal/PortalController.java index f0d9a23..ac8b4f6 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/portal/PortalController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/portal/PortalController.java @@ -1,6 +1,7 @@ package org.dromara.system.controller.portal; import cn.dev33.satoken.annotation.SaIgnore; +import cn.hutool.core.lang.tree.Tree; import lombok.RequiredArgsConstructor; import org.dromara.common.core.domain.R; import org.dromara.common.mybatis.core.page.PageQuery; @@ -92,9 +93,9 @@ public class PortalController extends BaseController { */ @SaIgnore @GetMapping("/textbook/catalog/list") - public R> list(SysCatalogTextbookBo bo) { - List list = textbookService.queryList(bo); - return R.ok(list); + public R>> list() { + List> trees = textbookService.buildTreeSelect(); + return R.ok(trees); } /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysCatalogTextbookService.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysCatalogTextbookService.java index 7032581..0821ba6 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysCatalogTextbookService.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysCatalogTextbookService.java @@ -1,6 +1,7 @@ package org.dromara.system.service; +import cn.hutool.core.lang.tree.Tree; import com.baomidou.mybatisplus.core.conditions.Wrapper; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; @@ -109,4 +110,14 @@ public interface ISysCatalogTextbookService { String selectCatalogNameById(Long catalogId); List selectList(Wrapper queryWrapper); + + /** + * 构建前端所需要下拉树结构 + * + * @param catalogs 目录列表 + * @return 下拉树结构列表 + */ + //List> buildCatalogTreeSelect(List catalogs); + + List> buildTreeSelect(); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysCatalogTextbookServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysCatalogTextbookServiceImpl.java index 64dd0af..d13c33c 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysCatalogTextbookServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysCatalogTextbookServiceImpl.java @@ -2,6 +2,7 @@ package org.dromara.system.service.impl; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.convert.Convert; +import cn.hutool.core.lang.tree.Tree; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; @@ -12,6 +13,7 @@ import org.dromara.common.core.constant.CacheNames; import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.utils.SpringUtils; import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.core.utils.TreeBuildUtils; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.mybatis.helper.DataBaseHelper; @@ -81,7 +83,8 @@ public class SysCatalogTextbookServiceImpl implements ISysCatalogTextbookService lqw.eq(StringUtils.isNotBlank(bo.getAncestors()), SysCatalogTextbook::getAncestors, bo.getAncestors()); lqw.like(StringUtils.isNotBlank(bo.getCatalogName()), SysCatalogTextbook::getCatalogName, bo.getCatalogName()); lqw.eq(bo.getOrderNum() != null, SysCatalogTextbook::getOrderNum, bo.getOrderNum()); - lqw.eq(bo.getType() != null, SysCatalogTextbook::getType, bo.getType()); + //lqw.eq(bo.getType() != null, SysCatalogTextbook::getType, bo.getType()); + lqw.le(bo.getType() != null, SysCatalogTextbook::getType, bo.getType()); return lqw; } @@ -193,6 +196,27 @@ public class SysCatalogTextbookServiceImpl implements ISysCatalogTextbookService return baseMapper.selectList(queryWrapper); } + @Override + public List> buildTreeSelect() { + SysCatalogTextbookBo bo = new SysCatalogTextbookBo(); + bo.setType(4); + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + List voList = baseMapper.selectVoList(lqw); + return buildCatalogTreeSelect(voList); + } + + //@Override + private List> buildCatalogTreeSelect(List catalogs) { + if (CollUtil.isEmpty(catalogs)) { + return CollUtil.newArrayList(); + } + return TreeBuildUtils.build(catalogs, (catalog, tree) -> + tree.setId(catalog.getCatalogId()) + .setParentId(catalog.getParentId()) + .setName(catalog.getCatalogName()) + .setWeight(catalog.getOrderNum())); + } + /** * 修改子元素关系 * diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysHomeBannerServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysHomeBannerServiceImpl.java index d8fa844..bada07d 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysHomeBannerServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysHomeBannerServiceImpl.java @@ -38,7 +38,7 @@ public class SysHomeBannerServiceImpl implements ISysHomeBannerService { * @return 门户Banner */ @Override - public SysHomeBannerVo queryById(Long bannerId){ + public SysHomeBannerVo queryById(Long bannerId) { return baseMapper.selectVoById(bannerId); } @@ -77,6 +77,7 @@ public class SysHomeBannerServiceImpl implements ISysHomeBannerService { lqw.eq(bo.getSort() != null, SysHomeBanner::getSort, bo.getSort()); lqw.eq(bo.getCover() != null, SysHomeBanner::getCover, bo.getCover()); lqw.eq(bo.getStatus() != null, SysHomeBanner::getStatus, bo.getStatus()); + lqw.orderByDesc(SysHomeBanner::getUpdateTime); return lqw; } @@ -113,7 +114,7 @@ public class SysHomeBannerServiceImpl implements ISysHomeBannerService { /** * 保存前的数据校验 */ - private void validEntityBeforeSave(SysHomeBanner entity){ + private void validEntityBeforeSave(SysHomeBanner entity) { //TODO 做一些数据校验,如唯一约束 } @@ -126,7 +127,7 @@ public class SysHomeBannerServiceImpl implements ISysHomeBannerService { */ @Override public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { - if(isValid){ + if (isValid) { //TODO 做一些业务上的校验,判断是否需要校验 } return baseMapper.deleteBatchIds(ids) > 0; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysHomeShowServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysHomeShowServiceImpl.java index 1e2ef71..04fdf4d 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysHomeShowServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysHomeShowServiceImpl.java @@ -1,23 +1,23 @@ package org.dromara.system.service.impl; -import org.dromara.common.core.utils.MapstructUtils; -import org.dromara.common.core.utils.StringUtils; -import org.dromara.common.mybatis.core.page.TableDataInfo; -import org.dromara.common.mybatis.core.page.PageQuery; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import lombok.RequiredArgsConstructor; -import org.springframework.stereotype.Service; +import org.dromara.common.core.utils.MapstructUtils; +import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.system.domain.SysHomeShow; import org.dromara.system.domain.bo.SysHomeShowBo; import org.dromara.system.domain.vo.SysHomeShowVo; -import org.dromara.system.domain.SysHomeShow; import org.dromara.system.mapper.SysHomeShowMapper; import org.dromara.system.service.ISysHomeShowService; +import org.springframework.stereotype.Service; +import java.util.Collection; import java.util.List; import java.util.Map; -import java.util.Collection; /** * 学校名师Service业务层处理 @@ -75,6 +75,7 @@ public class SysHomeShowServiceImpl implements ISysHomeShowService { lqw.like(StringUtils.isNotBlank(bo.getGradeName()), SysHomeShow::getGradeName, bo.getGradeName()); lqw.like(StringUtils.isNotBlank(bo.getSubjectName()), SysHomeShow::getSubjectName, bo.getSubjectName()); lqw.eq(bo.getStatus() != null, SysHomeShow::getStatus, bo.getStatus()); + lqw.orderByDesc(SysHomeShow::getUpdateTime); return lqw; } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysHomeTrendServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysHomeTrendServiceImpl.java index 93d3561..0fc85f4 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysHomeTrendServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysHomeTrendServiceImpl.java @@ -75,6 +75,7 @@ public class SysHomeTrendServiceImpl implements ISysHomeTrendService { lqw.like(StringUtils.isNotBlank(bo.getTitle()), SysHomeTrend::getTitle, bo.getTitle()); lqw.eq(bo.getStatus() != null, SysHomeTrend::getStatus, bo.getStatus()); lqw.apply(StringUtils.isNotBlank(bo.getTime()), "DATE_FORMAT (create_time,'%Y-%m-%d')={0}", bo.getTime()); + lqw.orderByDesc(SysHomeTrend::getUpdateTime); return lqw; } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssPersonServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssPersonServiceImpl.java index e889cca..04c2a0b 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssPersonServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssPersonServiceImpl.java @@ -96,7 +96,7 @@ public class SysOssPersonServiceImpl implements ISysOssPersonService { List ids = StreamUtils.toList(list, SysCatalogPerson::getCatalogId); ids.add(bo.getCatalogId()); w.in("op.catalog_id", ids); - }); + }).orderByDesc("op.create_time"); return wrapper; } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssResourceServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssResourceServiceImpl.java index a42ff89..f307df8 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssResourceServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssResourceServiceImpl.java @@ -77,8 +77,9 @@ public class SysOssResourceServiceImpl implements ISysOssResourceService { public TableDataInfo queryAwaitPageList(SysOssResourceBo bo, PageQuery pageQuery) { QueryWrapper wrapper = Wrappers.query(); wrapper.le("r.status", 0) - .eq(StringUtils.isNotEmpty(bo.getFileSuffix()),"r.file_suffix", bo.getFileSuffix()) - .like(StringUtils.isNotEmpty(bo.getFileName()),"r.file_name", bo.getFileName()); + .eq(StringUtils.isNotEmpty(bo.getFileSuffix()), "r.file_suffix", bo.getFileSuffix()) + .like(StringUtils.isNotEmpty(bo.getFileName()), "r.file_name", bo.getFileName()) + .orderByDesc("r.create_time"); Page result = baseMapper.selectPageAwaitList(pageQuery.build(), wrapper); return TableDataInfo.build(result); } @@ -106,7 +107,7 @@ public class SysOssResourceServiceImpl implements ISysOssResourceService { List ids = StreamUtils.toList(deptList, SysCatalogResource::getCatalogId); ids.add(bo.getCatalogId()); w.in("r.catalog_id", ids); - }); + }).orderByDesc("r.create_time"); return wrapper; } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssTextbookServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssTextbookServiceImpl.java index d4f5050..d9d5184 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssTextbookServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssTextbookServiceImpl.java @@ -77,7 +77,8 @@ public class SysOssTextbookServiceImpl implements ISysOssTextbookService { QueryWrapper wrapper = Wrappers.query(); wrapper.le("ot.status", 0) .eq(StringUtils.isNotEmpty(bo.getFileSuffix()), "ot.file_suffix", bo.getFileSuffix()) - .like(StringUtils.isNotEmpty(bo.getFileName()), "ot.file_name", bo.getFileName()); + .like(StringUtils.isNotEmpty(bo.getFileName()), "ot.file_name", bo.getFileName()) + .orderByDesc("ot.create_time"); Page result = baseMapper.selectPageAwaitList(pageQuery.build(), wrapper); return TableDataInfo.build(result); } @@ -106,7 +107,7 @@ public class SysOssTextbookServiceImpl implements ISysOssTextbookService { List ids = StreamUtils.toList(list, SysCatalogTextbook::getCatalogId); ids.add(bo.getCatalogId()); w.in("ot.catalog_id", ids); - }); + }).orderByDesc("ot.create_time"); return wrapper; } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTeacherServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTeacherServiceImpl.java index f76f0c2..c9a7fca 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTeacherServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTeacherServiceImpl.java @@ -88,6 +88,7 @@ public class SysTeacherServiceImpl implements ISysTeacherService { ids.add(bo.getDeptId()); w.in(SysTeacher::getDeptId, ids); }); + lqw.orderByDesc(SysTeacher::getCreateTime); return lqw; }