diff --git a/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysstafforg/SysStaffOrgFeign.java b/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysstafforg/SysStaffOrgFeign.java index 18d3a345b6..bae02bd293 100644 --- a/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysstafforg/SysStaffOrgFeign.java +++ b/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 getOrgSidByPath(@RequestParam("orgPath") String orgPath); + @GetMapping("/getOrgSidByPath2") + @ResponseBody + @ApiOperation("根据用户组织全路径获取用户的事业部sid") + ResultBean getOrgSidByPath2(@RequestParam("orgPath") String orgPath); + @PostMapping("/selAllByOrgPath") @ResponseBody @ApiOperation("根据分公司全路径和角色sid模糊查询本公司本角色下的所有员工userSid") diff --git a/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysstafforg/SysStaffOrgFeignFallback.java b/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysstafforg/SysStaffOrgFeignFallback.java index 144c144455..aa3fd05235 100644 --- a/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysstafforg/SysStaffOrgFeignFallback.java +++ b/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 getOrgSidByPath2(String orgPath) { + return null; + } + @Override public ResultBean> selAllByOrgPath(String orgSidPath, String roleSid) { return null; diff --git a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstafforg/SysStaffOrgRest.java b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstafforg/SysStaffOrgRest.java index 2f2f689dd2..63f5512172 100644 --- a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstafforg/SysStaffOrgRest.java +++ b/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 getOrgSidByPath2(String orgPath) { + return sysStaffOrgService.getOrgSidByPath2(orgPath); + } + @Override public ResultBean> selAllByOrgPath(String orgSidPath,String roleSid) { return sysStaffOrgService.selAllByOrgPath(orgSidPath,roleSid); diff --git a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstafforg/SysStaffOrgService.java b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstafforg/SysStaffOrgService.java index 90c913ab5a..09cb54f7ee 100644 --- a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstafforg/SysStaffOrgService.java +++ b/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 sysStaffOrgByUserVos = baseMapper.selAllByOrgPath(qw); return rb.success().setData(sysStaffOrgByUserVos); } + + public ResultBean getOrgSidByPath2(String orgPath) { + ResultBean rb = ResultBean.fireFail(); + //根据用户全路径获取分公司sid + List stringList = Arrays.asList(orgPath.split("/")); + String orgSid = stringList.get(stringList.size() - 2); + orgPath = sysOrganizationService.getOrgSid(orgSid); + return rb.success().setData(orgPath); + } } \ No newline at end of file diff --git a/anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/dailyreport/DailyReportFeign.java b/anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/dailyreport/DailyReportFeign.java index 5368187727..80284c3064 100644 --- a/anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/dailyreport/DailyReportFeign.java +++ b/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> listPage(PagerQuery pagerQuery); + + /** + * 按照生成日期、 + * 事业部sid查询,并按分公司sid,品牌sid,车型sid,配置sid排序 + * + * @param pagerQuery + * @return + */ + @PostMapping("listPage2") + @ResponseBody + ResultBean> listPage2(PagerQuery pagerQuery); + + /** + * 按照生成日期查询,按照事业部sid,品牌sid,车型sid,配置sid分组 + * + * @param pagerQuery + * @return + */ + @PostMapping("listPage3") + @ResponseBody + ResultBean> listPage3(PagerQuery pagerQuery); } diff --git a/anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/dailyreport/DailyReportQuery.java b/anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/dailyreport/DailyReportQuery.java index f0b0e038ba..8301a602ed 100644 --- a/anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/dailyreport/DailyReportQuery.java +++ b/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; } diff --git a/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/ReportcenterApplication.java b/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/ReportcenterApplication.java index 06d7b62be4..32fc480298 100644 --- a/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/ReportcenterApplication.java +++ b/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) { diff --git a/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportMapper.java b/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportMapper.java new file mode 100644 index 0000000000..53a7d6cd93 --- /dev/null +++ b/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 { + IPage listPage(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); + + IPage listPage3(IPage page, @Param(Constants.WRAPPER)QueryWrapper qw); +} diff --git a/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportMapper.xml b/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportMapper.xml new file mode 100644 index 0000000000..fc8b9b85b0 --- /dev/null +++ b/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportMapper.xml @@ -0,0 +1,21 @@ + + + + + + + \ No newline at end of file diff --git a/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportRest.java b/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportRest.java new file mode 100644 index 0000000000..fc6f0a6632 --- /dev/null +++ b/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> listPage(PagerQuery pagerQuery) { + ResultBean rb = ResultBean.fireFail(); + PagerVo pv = dailyReportService.listPage(pagerQuery); + return rb.success().setData(pv); + } + + @Override + public ResultBean> listPage2(PagerQuery pagerQuery) { + ResultBean rb = ResultBean.fireFail(); + PagerVo pv = dailyReportService.listPage2(pagerQuery); + return rb.success().setData(pv); + } + + @Override + public ResultBean> listPage3(PagerQuery pagerQuery) { + ResultBean rb = ResultBean.fireFail(); + PagerVo pv = dailyReportService.listPage3(pagerQuery); + return rb.success().setData(pv); + } +} diff --git a/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportService.java b/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportService.java new file mode 100644 index 0000000000..1535a4b0a3 --- /dev/null +++ b/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 { + + @Autowired + private SysStaffOrgFeign sysStaffOrgFeign; + + public PagerVo listPage(PagerQuery pagerQuery) { + DailyReportQuery query = pagerQuery.getParams(); + QueryWrapper 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 page = PagerUtil.queryToPage(pagerQuery); + IPage pagging = baseMapper.listPage(page, qw); + PagerVo p = PagerUtil.pageToVo(pagging, null); + return p; + } + + public PagerVo listPage2(PagerQuery pagerQuery) { + DailyReportQuery query = pagerQuery.getParams(); + QueryWrapper 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 page = PagerUtil.queryToPage(pagerQuery); + IPage pagging = baseMapper.listPage(page, qw); + PagerVo p = PagerUtil.pageToVo(pagging, null); + return p; + } + + public PagerVo listPage3(PagerQuery pagerQuery) { + DailyReportQuery query = pagerQuery.getParams(); + QueryWrapper 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 page = PagerUtil.queryToPage(pagerQuery); + IPage pagging = baseMapper.listPage3(page, qw); + PagerVo p = PagerUtil.pageToVo(pagging, null); + return p; + } +}