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 new file mode 100644 index 0000000..9126e5d --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/portal/PortalController.java @@ -0,0 +1,63 @@ +package org.dromara.system.controller.portal; + +import lombok.RequiredArgsConstructor; +import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.web.core.BaseController; +import org.dromara.system.domain.bo.SysHomeBannerBo; +import org.dromara.system.domain.bo.SysHomeShowBo; +import org.dromara.system.domain.bo.SysHomeTrendBo; +import org.dromara.system.domain.vo.SysHomeBannerVo; +import org.dromara.system.domain.vo.SysHomeShowVo; +import org.dromara.system.domain.vo.SysHomeTrendVo; +import org.dromara.system.service.ISysHomeBannerService; +import org.dromara.system.service.ISysHomeShowService; +import org.dromara.system.service.ISysHomeTrendService; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + *

门户接口

+ * + * @author cjw + * @version V1.0.0 + * @date 2024/6/19 15:49 + */ +@RequiredArgsConstructor +@RestController +@RequestMapping("/portal") +public class PortalController extends BaseController { + private final ISysHomeBannerService sysHomeBannerService; + + private final ISysHomeShowService sysHomeShowService; + + private final ISysHomeTrendService sysHomeTrendService; + + + /** + * 查询门户Banner列表 + */ + @GetMapping("/banner/list") + public TableDataInfo bannerList(SysHomeBannerBo bo, PageQuery pageQuery) { + return sysHomeBannerService.queryPageList(bo, pageQuery); + } + + /** + * 查询学校名师列表 + */ + @GetMapping("/show/list") + public TableDataInfo showList(SysHomeShowBo bo, PageQuery pageQuery) { + return sysHomeShowService.queryPageList(bo, pageQuery); + } + + + /** + * 查询学校动态列表 + */ + @GetMapping("/trend/list") + public TableDataInfo trendList(SysHomeTrendBo bo, PageQuery pageQuery) { + return sysHomeTrendService.queryPageList(bo, pageQuery); + } + +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysHomeTrendBo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysHomeTrendBo.java index da2c959..09a6507 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysHomeTrendBo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysHomeTrendBo.java @@ -60,6 +60,7 @@ public class SysHomeTrendBo extends BaseEntity { @NotNull(message = "0-下架,1-上架不能为空", groups = {AddGroup.class, EditGroup.class}) private Integer status; + private String time; } 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 c9300ad..1e2ef71 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 @@ -74,7 +74,6 @@ public class SysHomeShowServiceImpl implements ISysHomeShowService { lqw.like(StringUtils.isNotBlank(bo.getTeacherName()), SysHomeShow::getTeacherName, bo.getTeacherName()); lqw.like(StringUtils.isNotBlank(bo.getGradeName()), SysHomeShow::getGradeName, bo.getGradeName()); lqw.like(StringUtils.isNotBlank(bo.getSubjectName()), SysHomeShow::getSubjectName, bo.getSubjectName()); - lqw.eq(bo.getSort() != null, SysHomeShow::getSort, bo.getSort()); lqw.eq(bo.getStatus() != null, SysHomeShow::getStatus, bo.getStatus()); 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 3349c6b..93d3561 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 @@ -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.dromara.system.service.ISysHomeTrendService; -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.SysHomeTrend; import org.dromara.system.domain.bo.SysHomeTrendBo; import org.dromara.system.domain.vo.SysHomeTrendVo; -import org.dromara.system.domain.SysHomeTrend; import org.dromara.system.mapper.SysHomeTrendMapper; +import org.dromara.system.service.ISysHomeTrendService; +import org.springframework.stereotype.Service; +import java.util.Collection; import java.util.List; import java.util.Map; -import java.util.Collection; /** * 学校动态Service业务层处理 @@ -38,7 +38,7 @@ public class SysHomeTrendServiceImpl implements ISysHomeTrendService { * @return 学校动态 */ @Override - public SysHomeTrendVo queryById(Long trendId){ + public SysHomeTrendVo queryById(Long trendId) { return baseMapper.selectVoById(trendId); } @@ -73,9 +73,8 @@ public class SysHomeTrendServiceImpl implements ISysHomeTrendService { LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); lqw.eq(bo.getType() != null, SysHomeTrend::getType, bo.getType()); lqw.like(StringUtils.isNotBlank(bo.getTitle()), SysHomeTrend::getTitle, bo.getTitle()); - lqw.eq(bo.getSort() != null, SysHomeTrend::getSort, bo.getSort()); lqw.eq(bo.getStatus() != null, SysHomeTrend::getStatus, bo.getStatus()); - lqw.eq(bo.getCreateTime() !=null,SysHomeTrend::getCreateTime,bo.getCreateTime()); + lqw.apply(StringUtils.isNotBlank(bo.getTime()), "DATE_FORMAT (create_time,'%Y-%m-%d')={0}", bo.getTime()); return lqw; } @@ -112,7 +111,7 @@ public class SysHomeTrendServiceImpl implements ISysHomeTrendService { /** * 保存前的数据校验 */ - private void validEntityBeforeSave(SysHomeTrend entity){ + private void validEntityBeforeSave(SysHomeTrend entity) { //TODO 做一些数据校验,如唯一约束 } @@ -125,7 +124,7 @@ public class SysHomeTrendServiceImpl implements ISysHomeTrendService { */ @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/SysTeacherServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTeacherServiceImpl.java index eaa6caf..56eeb7c 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 @@ -1,25 +1,29 @@ package org.dromara.system.service.impl; import cn.hutool.core.util.ObjectUtil; -import org.dromara.common.core.exception.ServiceException; -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.exception.ServiceException; +import org.dromara.common.core.utils.MapstructUtils; +import org.dromara.common.core.utils.StreamUtils; +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.common.mybatis.helper.DataBaseHelper; +import org.dromara.system.domain.SysDept; +import org.dromara.system.domain.SysTeacher; import org.dromara.system.domain.bo.SysTeacherBo; import org.dromara.system.domain.vo.SysTeacherVo; -import org.dromara.system.domain.SysTeacher; +import org.dromara.system.mapper.SysDeptMapper; import org.dromara.system.mapper.SysTeacherMapper; import org.dromara.system.service.ISysTeacherService; +import org.springframework.stereotype.Service; +import java.util.Collection; import java.util.List; import java.util.Map; -import java.util.Collection; /** * 教职工信息Service业务层处理 @@ -32,6 +36,7 @@ import java.util.Collection; public class SysTeacherServiceImpl implements ISysTeacherService { private final SysTeacherMapper baseMapper; + private final SysDeptMapper deptMapper; /** * 查询教职工信息 @@ -75,15 +80,15 @@ public class SysTeacherServiceImpl implements ISysTeacherService { LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); lqw.eq(bo.getDeptId() != null, SysTeacher::getDeptId, bo.getDeptId()); lqw.like(StringUtils.isNotBlank(bo.getTeacherName()), SysTeacher::getTeacherName, bo.getTeacherName()); - lqw.eq(StringUtils.isNotBlank(bo.getPhonenumber()), SysTeacher::getPhonenumber, bo.getPhonenumber()); - lqw.eq(StringUtils.isNotBlank(bo.getTelephone()), SysTeacher::getTelephone, bo.getTelephone()); - lqw.eq(StringUtils.isNotBlank(bo.getEmail()), SysTeacher::getEmail, bo.getEmail()); - lqw.eq(StringUtils.isNotBlank(bo.getEducationCode()), SysTeacher::getEducationCode, bo.getEducationCode()); - lqw.eq(StringUtils.isNotBlank(bo.getDegreeCode()), SysTeacher::getDegreeCode, bo.getDegreeCode()); - lqw.eq(StringUtils.isNotBlank(bo.getSubjectCode()), SysTeacher::getSubjectCode, bo.getSubjectCode()); - lqw.eq(StringUtils.isNotBlank(bo.getPostCode()), SysTeacher::getPostCode, bo.getPostCode()); - lqw.eq(StringUtils.isNotBlank(bo.getSex()), SysTeacher::getSex, bo.getSex()); - lqw.eq(bo.getBirthday() != null, SysTeacher::getBirthday, bo.getBirthday()); + lqw.like(StringUtils.isNotBlank(bo.getPhonenumber()), SysTeacher::getPhonenumber, bo.getPhonenumber()); + lqw.and(ObjectUtil.isNotNull(bo.getDeptId()), w -> { + List deptList = deptMapper.selectList(new LambdaQueryWrapper() + .select(SysDept::getDeptId) + .apply(DataBaseHelper.findInSet(bo.getDeptId(), "ancestors"))); + List ids = StreamUtils.toList(deptList, SysDept::getDeptId); + ids.add(bo.getDeptId()); + w.in(SysTeacher::getDeptId, ids); + }); return lqw; } @@ -122,13 +127,13 @@ public class SysTeacherServiceImpl implements ISysTeacherService { */ private void validEntityBeforeSave(SysTeacher entity) { SysTeacherVo sysTeacherVo = baseMapper.selectVoOne(new LambdaQueryWrapper().eq(SysTeacher::getPhonenumber, entity.getPhonenumber())); - if(ObjectUtil.isNull(entity.getTeacherId())) { + if (ObjectUtil.isNull(entity.getTeacherId())) { if (ObjectUtil.isNotNull(sysTeacherVo)) { throw new ServiceException("存在相同手机号,请确认后再新增"); } - }else{ + } else { if (ObjectUtil.isNotNull(sysTeacherVo)) { - if(ObjectUtil.equals(sysTeacherVo.getTeacherId().toString(),entity.getTeacherId().toString()) ){ + if (ObjectUtil.equals(sysTeacherVo.getTeacherId().toString(), entity.getTeacherId().toString())) { throw new ServiceException("存在相同手机号,请确认后再新增"); } }