Browse Source

报表数据库表根据条件查询分页列表

master
dimengzhe 2 years ago
parent
commit
cf653d038f
  1. 5
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysstafforg/SysStaffOrgFeign.java
  2. 5
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysstafforg/SysStaffOrgFeignFallback.java
  3. 5
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstafforg/SysStaffOrgRest.java
  4. 9
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstafforg/SysStaffOrgService.java
  5. 29
      anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/dailyreport/DailyReportFeign.java
  6. 8
      anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/dailyreport/DailyReportQuery.java
  7. 2
      anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/ReportcenterApplication.java
  8. 22
      anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportMapper.java
  9. 21
      anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportMapper.xml
  10. 47
      anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportRest.java
  11. 90
      anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportService.java

5
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysstafforg/SysStaffOrgFeign.java

@ -111,6 +111,11 @@ public interface SysStaffOrgFeign {
@ApiOperation("根据用户组织全路径获取用户的分公司sid")
ResultBean<String> getOrgSidByPath(@RequestParam("orgPath") String orgPath);
@GetMapping("/getOrgSidByPath2")
@ResponseBody
@ApiOperation("根据用户组织全路径获取用户的事业部sid")
ResultBean<String> getOrgSidByPath2(@RequestParam("orgPath") String orgPath);
@PostMapping("/selAllByOrgPath")
@ResponseBody
@ApiOperation("根据分公司全路径和角色sid模糊查询本公司本角色下的所有员工userSid")

5
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysstafforg/SysStaffOrgFeignFallback.java

@ -100,6 +100,11 @@ public class SysStaffOrgFeignFallback implements SysStaffOrgFeign {
return null;
}
@Override
public ResultBean<String> getOrgSidByPath2(String orgPath) {
return null;
}
@Override
public ResultBean<List<SysStaffOrgByUserVo>> selAllByOrgPath(String orgSidPath, String roleSid) {
return null;

5
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstafforg/SysStaffOrgRest.java

@ -135,6 +135,11 @@ public class SysStaffOrgRest implements SysStaffOrgFeign {
return sysStaffOrgService.getOrgSidByPath(orgPath);
}
@Override
public ResultBean<String> getOrgSidByPath2(String orgPath) {
return sysStaffOrgService.getOrgSidByPath2(orgPath);
}
@Override
public ResultBean<List<SysStaffOrgByUserVo>> selAllByOrgPath(String orgSidPath,String roleSid) {
return sysStaffOrgService.selAllByOrgPath(orgSidPath,roleSid);

9
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstafforg/SysStaffOrgService.java

@ -325,4 +325,13 @@ public class SysStaffOrgService extends MybatisBaseService<SysStaffOrgMapper, Sy
List<SysStaffOrgByUserVo> sysStaffOrgByUserVos = baseMapper.selAllByOrgPath(qw);
return rb.success().setData(sysStaffOrgByUserVos);
}
public ResultBean<String> getOrgSidByPath2(String orgPath) {
ResultBean<String> rb = ResultBean.fireFail();
//根据用户全路径获取分公司sid
List<String> stringList = Arrays.asList(orgPath.split("/"));
String orgSid = stringList.get(stringList.size() - 2);
orgPath = sysOrganizationService.getOrgSid(orgSid);
return rb.success().setData(orgPath);
}
}

29
anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/dailyreport/DailyReportFeign.java

@ -18,8 +18,35 @@ import org.springframework.web.bind.annotation.ResponseBody;
path = "v1/DailyReport",
fallback = DailyReportFeignFallback.class)
public interface DailyReportFeign {
/**
* 按照生成日期
* 分公司sid查询按照分公司sid品牌sid,车型sid配置sid排序
*
* @param pagerQuery
* @return
*/
@PostMapping("listPage")
@ResponseBody
ResultBean<PagerVo<DailyReportVo>> listPage(PagerQuery<DailyReportQuery> pagerQuery);
/**
* 按照生成日期
* 事业部sid查询并按分公司sid品牌sid车型sid配置sid排序
*
* @param pagerQuery
* @return
*/
@PostMapping("listPage2")
@ResponseBody
ResultBean<PagerVo<DailyReportVo>> listPage2(PagerQuery<DailyReportQuery> pagerQuery);
/**
* 按照生成日期查询按照事业部sid品牌sid车型sid配置sid分组
*
* @param pagerQuery
* @return
*/
@PostMapping("listPage3")
@ResponseBody
ResultBean<PagerVo<DailyReportVo>> listPage3(PagerQuery<DailyReportQuery> pagerQuery);
}

8
anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/dailyreport/DailyReportQuery.java

@ -1,6 +1,7 @@
package com.yxt.anrui.reportcenter.api.dailyreport;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
@ -11,4 +12,11 @@ import lombok.Data;
@Data
public class DailyReportQuery implements Query {
private static final long serialVersionUID = -3990941897379861702L;
@ApiModelProperty("生成日期开始")
private String createTimeStart;
@ApiModelProperty("生成日期结束")
private String createTimeEnd;
private String orgPath;
}

2
anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/ReportcenterApplication.java

@ -14,7 +14,7 @@ import org.springframework.cloud.openfeign.EnableFeignClients;
"com.yxt.anrui.reportcenter"
})
@EnableDiscoveryClient
@EnableFeignClients(basePackages = {})
@EnableFeignClients(basePackages = {"com.yxt.anrui.portal"})
public class ReportcenterApplication {
public static void main(String[] args) {

22
anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportMapper.java

@ -0,0 +1,22 @@
package com.yxt.anrui.reportcenter.biz.dailyreport;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.anrui.reportcenter.api.dailyreport.DailyReport;
import com.yxt.anrui.reportcenter.api.dailyreport.DailyReportVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
/**
* @description:
* @author: dimengzhe
* @date: 2023/9/28
**/
@Mapper
public interface DailyReportMapper extends BaseMapper<DailyReport> {
IPage<DailyReportVo> listPage(IPage<DailyReport> page, @Param(Constants.WRAPPER) QueryWrapper<DailyReport> qw);
IPage<DailyReportVo> listPage3(IPage<DailyReport> page, @Param(Constants.WRAPPER)QueryWrapper<DailyReport> qw);
}

21
anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportMapper.xml

@ -0,0 +1,21 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yxt.anrui.reportcenter.biz.dailyreport.DailyReportMapper">
<select id="listPage" resultType="com.yxt.anrui.reportcenter.api.dailyreport.DailyReportVo">
select *
from daily_report
<where>
${ew.sqlSegment}
</where>
order by useOrgSid desc, brandSid desc, vehModelSid desc, vehMConfigSid desc
</select>
<select id="listPage3" resultType="com.yxt.anrui.reportcenter.api.dailyreport.DailyReportVo">
select *
from daily_report
<where>
${ew.sqlSegment}
</where>
group by busOrgSid, brandSid, vehModelSid, vehMConfigSid
</select>
</mapper>

47
anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportRest.java

@ -0,0 +1,47 @@
package com.yxt.anrui.reportcenter.biz.dailyreport;
import com.yxt.anrui.reportcenter.api.dailyreport.DailyReportFeign;
import com.yxt.anrui.reportcenter.api.dailyreport.DailyReportQuery;
import com.yxt.anrui.reportcenter.api.dailyreport.DailyReportVo;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @description:
* @author: dimengzhe
* @date: 2023/9/28
**/
@Api(tags = "报表")
@RestController
@RequestMapping("v1/DailyReport")
public class DailyReportRest implements DailyReportFeign {
@Autowired
private DailyReportService dailyReportService;
@Override
public ResultBean<PagerVo<DailyReportVo>> listPage(PagerQuery<DailyReportQuery> pagerQuery) {
ResultBean rb = ResultBean.fireFail();
PagerVo<DailyReportVo> pv = dailyReportService.listPage(pagerQuery);
return rb.success().setData(pv);
}
@Override
public ResultBean<PagerVo<DailyReportVo>> listPage2(PagerQuery<DailyReportQuery> pagerQuery) {
ResultBean rb = ResultBean.fireFail();
PagerVo<DailyReportVo> pv = dailyReportService.listPage2(pagerQuery);
return rb.success().setData(pv);
}
@Override
public ResultBean<PagerVo<DailyReportVo>> listPage3(PagerQuery<DailyReportQuery> pagerQuery) {
ResultBean rb = ResultBean.fireFail();
PagerVo<DailyReportVo> pv = dailyReportService.listPage3(pagerQuery);
return rb.success().setData(pv);
}
}

90
anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportService.java

@ -0,0 +1,90 @@
package com.yxt.anrui.reportcenter.biz.dailyreport;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
import com.yxt.anrui.reportcenter.api.dailyreport.DailyReport;
import com.yxt.anrui.reportcenter.api.dailyreport.DailyReportQuery;
import com.yxt.anrui.reportcenter.api.dailyreport.DailyReportVo;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.vo.PagerVo;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
* @description:
* @author: dimengzhe
* @date: 2023/9/28
**/
@Service
public class DailyReportService extends MybatisBaseService<DailyReportMapper, DailyReport> {
@Autowired
private SysStaffOrgFeign sysStaffOrgFeign;
public PagerVo<DailyReportVo> listPage(PagerQuery<DailyReportQuery> pagerQuery) {
DailyReportQuery query = pagerQuery.getParams();
QueryWrapper<DailyReport> qw = new QueryWrapper<>();
if (query != null) {
//生成日期开始时间
String createTimeStart = query.getCreateTimeStart();
//生成日期结束时间
String createTimeEnd = query.getCreateTimeEnd();
qw.apply(StringUtils.isNotEmpty(createTimeStart), "date_format (createTime,'%Y-%m-%d') >= date_format('" + createTimeStart + "','%Y-%m-%d')").
apply(StringUtils.isNotEmpty(createTimeEnd), "date_format (createTime,'%Y-%m-%d') <= date_format('" + createTimeEnd + "','%Y-%m-%d')"
);
if (StringUtils.isNotBlank(query.getOrgPath())) {
String useOrgSid = sysStaffOrgFeign.getOrgSidByPath(query.getOrgPath()).getData();
qw.eq("useOrgSid", useOrgSid);
}
}
IPage<DailyReport> page = PagerUtil.queryToPage(pagerQuery);
IPage<DailyReportVo> pagging = baseMapper.listPage(page, qw);
PagerVo<DailyReportVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public PagerVo<DailyReportVo> listPage2(PagerQuery<DailyReportQuery> pagerQuery) {
DailyReportQuery query = pagerQuery.getParams();
QueryWrapper<DailyReport> qw = new QueryWrapper<>();
if (query != null) {
//生成日期开始时间
String createTimeStart = query.getCreateTimeStart();
//生成日期结束时间
String createTimeEnd = query.getCreateTimeEnd();
qw.apply(StringUtils.isNotEmpty(createTimeStart), "date_format (createTime,'%Y-%m-%d') >= date_format('" + createTimeStart + "','%Y-%m-%d')").
apply(StringUtils.isNotEmpty(createTimeEnd), "date_format (createTime,'%Y-%m-%d') <= date_format('" + createTimeEnd + "','%Y-%m-%d')"
);
//查询事业部
if (StringUtils.isNotBlank(query.getOrgPath())) {
String busOrgSid = sysStaffOrgFeign.getOrgSidByPath2(query.getOrgPath()).getData();
qw.eq("busOrgSid", busOrgSid);
}
}
IPage<DailyReport> page = PagerUtil.queryToPage(pagerQuery);
IPage<DailyReportVo> pagging = baseMapper.listPage(page, qw);
PagerVo<DailyReportVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public PagerVo<DailyReportVo> listPage3(PagerQuery<DailyReportQuery> pagerQuery) {
DailyReportQuery query = pagerQuery.getParams();
QueryWrapper<DailyReport> qw = new QueryWrapper<>();
if (query != null) {
//生成日期开始时间
String createTimeStart = query.getCreateTimeStart();
//生成日期结束时间
String createTimeEnd = query.getCreateTimeEnd();
qw.apply(StringUtils.isNotEmpty(createTimeStart), "date_format (createTime,'%Y-%m-%d') >= date_format('" + createTimeStart + "','%Y-%m-%d')").
apply(StringUtils.isNotEmpty(createTimeEnd), "date_format (createTime,'%Y-%m-%d') <= date_format('" + createTimeEnd + "','%Y-%m-%d')"
);
}
IPage<DailyReport> page = PagerUtil.queryToPage(pagerQuery);
IPage<DailyReportVo> pagging = baseMapper.listPage3(page, qw);
PagerVo<DailyReportVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
}
Loading…
Cancel
Save