123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 |
- package com.ruoyi.web.service.impl;
- import cn.hutool.core.collection.CollUtil;
- import cn.hutool.core.util.ObjectUtil;
- import cn.hutool.core.util.StrUtil;
- import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
- import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
- import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
- import com.ruoyi.common.utils.bean.BeanUtils;
- import com.ruoyi.web.domain.dto.projects.ProjectsQueryRequest;
- import com.ruoyi.web.domain.entity.Projects;
- import com.ruoyi.web.domain.vo.ProjectsVO;
- import com.ruoyi.web.mapper.ProjectsMapper;
- import com.ruoyi.web.service.ProjectsService;
- import org.apache.commons.lang3.StringUtils;
- import org.springframework.stereotype.Service;
- import java.util.Date;
- import java.util.List;
- import java.util.stream.Collectors;
- /**
- *
- */
- @Service
- public class ProjectsServiceImpl extends ServiceImpl<ProjectsMapper, Projects>
- implements ProjectsService {
- /**
- * 查询项目信息列表
- *
- * @param projectsQueryRequest
- * @return
- */
- @Override
- public List<ProjectsVO> getProjects(ProjectsQueryRequest projectsQueryRequest) {
- Projects projectsQuery = new Projects();
- if (projectsQueryRequest != null) {
- BeanUtils.copyProperties(projectsQueryRequest, projectsQuery);
- }
- QueryWrapper<Projects> queryWrapper = new QueryWrapper<>(projectsQuery);
- List<Projects> projectsList = this.list(queryWrapper);
- return projectsList.stream().map(projects -> {
- ProjectsVO projectsVO = new ProjectsVO();
- BeanUtils.copyProperties(projects, projectsVO);
- return projectsVO;
- }).collect(Collectors.toList());
- }
- /**
- * 分页获取项目列表
- *
- * @param projectsQueryRequest
- * @return
- */
- @Override
- public Page<Projects> getListProjectsByPage(ProjectsQueryRequest projectsQueryRequest) {
- long current = projectsQueryRequest.getCurrent();
- long size = projectsQueryRequest.getPageSize();
- return this.page(new Page<>(current, size),
- getQueryWrapper(projectsQueryRequest));
- }
- /**
- * 获取查询条件
- *
- * @param projectsQueryRequest
- * @return
- */
- @Override
- public QueryWrapper<Projects> getQueryWrapper(ProjectsQueryRequest projectsQueryRequest) {
- QueryWrapper<Projects> queryWrapper = new QueryWrapper<>();
- if (projectsQueryRequest == null) {
- return queryWrapper;
- }
- // 从对象中取值
- Integer id = projectsQueryRequest.getId();
- String projectName = projectsQueryRequest.getProjectName();
- String projectDescription = projectsQueryRequest.getProjectDescription();
- Integer progress = projectsQueryRequest.getProgress();
- String sortField = projectsQueryRequest.getSortField();
- String sortOrder = projectsQueryRequest.getSortOrder();
- // 项目名称、项目描述 项目进度
- queryWrapper.eq(ObjectUtil.isNotEmpty(id), "id", id);
- queryWrapper.eq(StrUtil.isNotBlank(projectName), "project_name", projectName);
- queryWrapper.like(StringUtils.isNotBlank(projectDescription), "project_description", projectDescription);
- queryWrapper.eq(ObjectUtil.isNotEmpty(progress), "progress", progress);
- // 排序
- queryWrapper.orderBy(StrUtil.isNotEmpty(sortField), sortOrder.equals("ascend"), sortField);
- return queryWrapper;
- }
- }
|