添加报工记录代码

修复报工的排序问题
This commit is contained in:
2025-06-19 15:43:57 +08:00
parent ec425b2b36
commit 213488feb6
13 changed files with 366 additions and 10 deletions

View File

@@ -1,12 +1,14 @@
package com.ruoyi.oa.service;
import com.ruoyi.oa.domain.OaProjectReport;
import com.ruoyi.oa.domain.vo.OaProjectReportVo;
import com.ruoyi.oa.domain.bo.OaProjectReportBo;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.core.domain.PageQuery;
import com.ruoyi.oa.domain.vo.ProjectReportCardVo;
import com.ruoyi.oa.domain.vo.ProjectReportPieVo;
import com.ruoyi.oa.domain.vo.ProjectReportTrendVo;
import java.time.LocalDate;
import java.util.Collection;
import java.util.List;
@@ -54,4 +56,16 @@ public interface IOaProjectReportService {
*/
ProjectReportCardVo getCardData();
public List<ProjectReportTrendVo> getTrend(LocalDate start, LocalDate end);
public List<ProjectReportPieVo> getDistribution(LocalDate start, LocalDate end);
List<OaProjectReportVo> getRankData(LocalDate start, LocalDate end);
List<OaProjectReportVo> getProjects(LocalDate start, LocalDate end);
List<OaProjectReportVo> clearList(LocalDate start, LocalDate end);
List<OaProjectReportVo> getSummaryData(LocalDate start, LocalDate end);
}

View File

@@ -7,11 +7,12 @@ import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.core.domain.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.ruoyi.oa.domain.vo.ProjectReportCardVo;
import liquibase.pro.packaged.D;
import com.ruoyi.oa.domain.vo.ProjectReportPieVo;
import com.ruoyi.oa.domain.vo.ProjectReportTrendVo;
import lombok.RequiredArgsConstructor;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Service;
import com.ruoyi.oa.domain.bo.OaProjectReportBo;
import com.ruoyi.oa.domain.vo.OaProjectReportVo;
@@ -22,10 +23,7 @@ import com.ruoyi.oa.service.IOaProjectReportService;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.Collection;
import java.util.*;
/**
* 项目报工Service业务层处理
@@ -71,6 +69,7 @@ public class OaProjectReportServiceImpl implements IOaProjectReportService {
QueryWrapper<OaProjectReport> lqw = Wrappers.query();
lqw.eq("opr.del_flag", 0);
lqw.eq(bo.getUserId()!=null, "opr.user_id", bo.getUserId());
lqw.eq(bo.getWorkType()!=null, "opr.work_type", bo.getWorkType());
lqw.eq(bo.getProjectId() != null, "opr.project_id", bo.getProjectId());
lqw.like(StringUtils.isNotBlank(bo.getNickName()), "su.nick_name", bo.getNickName());
@@ -88,6 +87,7 @@ public class OaProjectReportServiceImpl implements IOaProjectReportService {
lqw.ge("opr.create_time", start)
.lt("opr.create_time", end); // [start, end)
}
lqw.orderByDesc("opr.create_time");
return lqw;
}
@@ -176,9 +176,41 @@ public class OaProjectReportServiceImpl implements IOaProjectReportService {
projectReportCardVo.setTodayCountChange(baseMapper.selectCount(ClearbuildQueryWrapper(oaProjectReportBo)));
// 查询昨日涉及项目数据量
oaProjectReportQueryWrapper.select("COUNT(DISTINCT project_id) AS cnt");
oaProjectReportQueryWrapper.select("DISTINCT project_id");
projectReportCardVo.setProjectChange(baseMapper.selectCount(oaProjectReportQueryWrapper));
projectReportCardVo.setCompletionChange(baseMapper.countWithCompleted(yesterday));
return projectReportCardVo;
}
public List<ProjectReportTrendVo> getTrend(LocalDate start, LocalDate end) {
return baseMapper.selectReportTrend(start, end);
}
public List<ProjectReportPieVo> getDistribution( LocalDate start, LocalDate end) {
return baseMapper.selectProjectDistribution(start,end);
}
@Override
public List<OaProjectReportVo> getRankData(LocalDate start, LocalDate end) {
return baseMapper.selectRankData(start,end);
}
@Override
public List<OaProjectReportVo> getProjects(LocalDate start, LocalDate end) {
return baseMapper.getProjects(start,end);
}
@Override
public List<OaProjectReportVo> clearList(LocalDate start, LocalDate end) {
return baseMapper.getClearList(start,end);
}
@Override
public List<OaProjectReportVo> getSummaryData(LocalDate start, LocalDate end) {
return baseMapper.getSummaryData(start,end);
}
}