diff --git a/lzbi-module/src/main/java/com/lzbi/bi/domain/dto/MultiOrgSomedaySomeParamSummarizingDataDTO.java b/lzbi-module/src/main/java/com/lzbi/bi/domain/dto/MultiOrgSomedaySomeParamSummarizingDataDTO.java new file mode 100644 index 0000000..8fd6590 --- /dev/null +++ b/lzbi-module/src/main/java/com/lzbi/bi/domain/dto/MultiOrgSomedaySomeParamSummarizingDataDTO.java @@ -0,0 +1,18 @@ +package com.lzbi.bi.domain.dto; + +import lombok.Data; + +import java.math.BigDecimal; + +/** + * 多个组织某天参数数据 + */ +@Data +public class MultiOrgSomedaySomeParamSummarizingDataDTO { + + private Long orgId; + + private String orgName; + + private BigDecimal value; +} diff --git a/lzbi-module/src/main/java/com/lzbi/bi/domain/dto/SomeOrgSomedaySomeParamSummarizingDataDTO.java b/lzbi-module/src/main/java/com/lzbi/bi/domain/dto/SomeOrgSomedaySomeParamSummarizingDataDTO.java new file mode 100644 index 0000000..16fd8b2 --- /dev/null +++ b/lzbi-module/src/main/java/com/lzbi/bi/domain/dto/SomeOrgSomedaySomeParamSummarizingDataDTO.java @@ -0,0 +1,14 @@ +package com.lzbi.bi.domain.dto; + +import lombok.Data; + +import java.math.BigDecimal; + +/** + * 某组织某天参数数据 + */ +@Data +public class SomeOrgSomedaySomeParamSummarizingDataDTO { + + private BigDecimal value; +} diff --git a/lzbi-module/src/main/java/com/lzbi/bi/domain/req/ParamSummarizingDataReq.java b/lzbi-module/src/main/java/com/lzbi/bi/domain/req/ParamSummarizingDataReq.java new file mode 100644 index 0000000..f3e5d6c --- /dev/null +++ b/lzbi-module/src/main/java/com/lzbi/bi/domain/req/ParamSummarizingDataReq.java @@ -0,0 +1,23 @@ +package com.lzbi.bi.domain.req; + +import lombok.Data; + +import javax.validation.constraints.NotNull; + +@Data +public class ParamSummarizingDataReq { + + @NotNull + private String dateYear; + + @NotNull + private String dateMonth; + + @NotNull + private String dateDay; + + @NotNull + private Long orgId; + + private String targetModelCode; +} diff --git a/lzbi-module/src/main/java/com/lzbi/bi/mapper/DcBusiDataScreenMainMapper.java b/lzbi-module/src/main/java/com/lzbi/bi/mapper/DcBusiDataScreenMainMapper.java index b12f694..4e592d7 100644 --- a/lzbi-module/src/main/java/com/lzbi/bi/mapper/DcBusiDataScreenMainMapper.java +++ b/lzbi-module/src/main/java/com/lzbi/bi/mapper/DcBusiDataScreenMainMapper.java @@ -3,56 +3,89 @@ package com.lzbi.bi.mapper; import com.baomidou.mybatisplus.annotation.InterceptorIgnore; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.lzbi.bi.domain.DcBusiDataScreenDto; +import com.lzbi.bi.domain.dto.MultiOrgSomedaySomeParamSummarizingDataDTO; import com.lzbi.bi.domain.dto.SomeOrgSomedayMultiReportDataDTO; +import com.lzbi.bi.domain.dto.SomeOrgSomedaySomeParamSummarizingDataDTO; import com.lzbi.bi.domain.dto.SomeTypeChildrenOrgSomedayMultiReportDataDTO; import com.lzbi.bi.domain.req.ReportDataReq; +import com.lzbi.bi.domain.req.ParamSummarizingDataReq; import com.lzbi.bi.domain.vo.ChildrenOrgSomedaySomeReportDataVO; +import com.lzbi.bi.domain.vo.MapOrgVO; import com.lzbi.bi.domain.vo.SomeOrgSomeReportYearlyDataVO; import com.lzbi.bi.domain.vo.SomeOrgSomedaySomeReportDataVO; +import java.math.BigDecimal; import java.util.List; /** * 资产指标调整单;(dc_busi_target_adjust)表数据库访问层 + * * @author : zhousq * @date : 2023-11-16 */ @InterceptorIgnore(tenantLine = "true") public interface DcBusiDataScreenMainMapper extends BaseMapper { - /** - * 查询某个组织某天的某个图表数据 - * @param reportDataReq - * @return - */ - SomeOrgSomedaySomeReportDataVO selectSomeOrgSomedaySomeReportData(ReportDataReq reportDataReq); - - /** - * 查询下级组织某天的某个图表数据列表 - * @param reportDataReq - * @return - */ - List selectChildrenOrgSomedaySomeReportDataList(ReportDataReq reportDataReq); - - /** - * 查询某组织某天多图表数据列表 - * @param reportDataReq - * @return - */ - List selectSomeOrgSomedayMultiReportDataList(ReportDataReq reportDataReq); - - /** - * 查询某类型的下级组织某天的多图表数据列表 - * @param reportDataReq - * @return - */ - List selectSomeTypeChildrenOrgSomedayMultiReportDataList(ReportDataReq reportDataReq); - - /** - * 查询某组织某个图表年度数据列表 - * @param reportDataReq - * @return - */ - List selectSomeOrgSomeReportYearlyDataList(ReportDataReq reportDataReq); + /** + * 查询某个组织某天的某个图表数据 + * + * @param reportDataReq + * @return + */ + SomeOrgSomedaySomeReportDataVO selectSomeOrgSomedaySomeReportData(ReportDataReq reportDataReq); + + /** + * 查询下级组织某天的某个图表数据列表 + * + * @param reportDataReq + * @return + */ + List selectChildrenOrgSomedaySomeReportDataList(ReportDataReq reportDataReq); + + /** + * 查询某组织某天多图表数据列表 + * + * @param reportDataReq + * @return + */ + List selectSomeOrgSomedayMultiReportDataList(ReportDataReq reportDataReq); + + /** + * 查询某类型的下级组织某天的多图表数据列表 + * + * @param reportDataReq + * @return + */ + List selectSomeTypeChildrenOrgSomedayMultiReportDataList(ReportDataReq reportDataReq); + + /** + * 查询某组织某个图表年度数据列表 + * + * @param reportDataReq + * @return + */ + List selectSomeOrgSomeReportYearlyDataList(ReportDataReq reportDataReq); + + /** + * 查询地图上的组织数据列表 + * + * @param reportDataReq + * @return + */ + List selectMapOrgList(ReportDataReq reportDataReq); + + /** + * 查询某组织某天某参数的汇总数据 + * @param paramSummarizingDataReq + * @return + */ + BigDecimal selectSomeOrgSomedaySomeParamSummarizingData(ParamSummarizingDataReq paramSummarizingDataReq); + + /** + * 查询多个级组织某天某参数的汇总数据列表 + * @param paramSummarizingDataReq + * @return + */ + MultiOrgSomedaySomeParamSummarizingDataDTO selectMultiOrgSomedaySomeParamSummarizingData(ParamSummarizingDataReq paramSummarizingDataReq); } \ No newline at end of file diff --git a/lzbi-module/src/main/java/com/lzbi/bi/service/DcBusiDataScreenMainService.java b/lzbi-module/src/main/java/com/lzbi/bi/service/DcBusiDataScreenMainService.java index 5b0382d..9eabb70 100644 --- a/lzbi-module/src/main/java/com/lzbi/bi/service/DcBusiDataScreenMainService.java +++ b/lzbi-module/src/main/java/com/lzbi/bi/service/DcBusiDataScreenMainService.java @@ -8,15 +8,19 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.lzbi.bi.domain.DcBusiDataScreenDto; import com.lzbi.bi.domain.SysDeptLocation; +import com.lzbi.bi.domain.dto.SomeOrgSomedaySomeParamSummarizingDataDTO; +import com.lzbi.bi.domain.req.ParamSummarizingDataReq; import com.lzbi.bi.domain.vo.*; import com.lzbi.bi.mapper.DcBusiDataScreenMainMapper; import com.lzbi.bi.mapper.ScreenMockDataMapper; import com.lzbi.common.constant.BizConstants; +import com.lzbi.common.constant.ParamsModelCodeConstants; import com.lzbi.common.core.domain.entity.SysDept; import com.lzbi.common.enums.ReportNameEnum; import com.lzbi.bi.domain.dto.SomeOrgSomedayMultiReportDataDTO; import com.lzbi.bi.domain.dto.SomeTypeChildrenOrgSomedayMultiReportDataDTO; import com.lzbi.bi.domain.req.ReportDataReq; +import com.lzbi.common.utils.bean.BeanUtils; import com.lzbi.draft.domain.vo.*; import com.lzbi.draft.service.DcBusiTargetDraftDaynewService; import com.lzbi.system.service.ISysDeptService; @@ -25,6 +29,9 @@ import org.springframework.util.CollectionUtils; import javax.annotation.Resource; import java.math.BigDecimal; +import java.time.LocalDate; +import java.time.format.DateTimeFormatter; +import java.time.temporal.ChronoUnit; import java.util.*; import java.util.stream.Collectors; import java.util.stream.Stream; @@ -45,8 +52,45 @@ public class DcBusiDataScreenMainService extends ServiceImpl SPECIAL_REPORT_LIST; + + static { + SPECIAL_REPORT_LIST = new ArrayList<>(); + SPECIAL_REPORT_LIST.add(GRMJ); + SPECIAL_REPORT_LIST.add(LWMJ); + SPECIAL_REPORT_LIST.add(AQGR); + SPECIAL_REPORT_LIST.add(RY); + SPECIAL_REPORT_LIST.add(HRZ); + SPECIAL_REPORT_LIST.add(ZMJ); + SPECIAL_REPORT_LIST.add(ZYH); + } /** * 查询某个组织某天的某个图表数据 @@ -55,7 +99,61 @@ public class DcBusiDataScreenMainService extends ServiceImpl reportNameValueMap = orgDataList.stream().collect(Collectors.toMap(SomeTypeChildrenOrgSomedayMultiReportDataDTO::getReportName, SomeTypeChildrenOrgSomedayMultiReportDataDTO::getValueResult, (v1, v2) -> v2)); head.add(orgDataList.get(0).getOrgName()); for (int i = 1; i < result.size(); i++) { - int finalI = i; - reportNameValueMap.forEach((reportName, valueResult) -> { - if (result.get(finalI).get(0).equals(reportName)) { - result.get(finalI).add(valueResult); - } - }); + result.get(i).add(reportNameValueMap.get(String.valueOf(result.get(i).get(0)))); } }); } @@ -172,12 +265,7 @@ public class DcBusiDataScreenMainService extends ServiceImpl reportNameMaxValueResultMap = dateYearDataList.stream().collect(Collectors.toMap(SomeOrgSomeReportYearlyDataVO::getReportName, SomeOrgSomeReportYearlyDataVO::getMaxValueResult, (v1, v2) -> v2)); head.add(dateYear); for (int i = 1; i < result.size(); i++) { - int finalI = i; - reportNameMaxValueResultMap.forEach((reportName, maxValueResult) -> { - if (result.get(finalI).get(0).equals(reportName)) { - result.get(finalI).add(maxValueResult); - } - }); + result.get(i).add(reportNameMaxValueResultMap.get(String.valueOf(result.get(i).get(0)))); } } }); @@ -186,6 +274,7 @@ public class DcBusiDataScreenMainService extends ServiceImpl selectMapOrgList(ReportDataReq reportDataReq) { + this.buildChildrenOrgReportDataReq(reportDataReq); return baseMapper.selectMapOrgList(reportDataReq); } diff --git a/lzbi-module/src/main/resources/mapper/DcBusiDataScreenMainMapper.xml b/lzbi-module/src/main/resources/mapper/DcBusiDataScreenMainMapper.xml index 1251b8f..226e50c 100644 --- a/lzbi-module/src/main/resources/mapper/DcBusiDataScreenMainMapper.xml +++ b/lzbi-module/src/main/resources/mapper/DcBusiDataScreenMainMapper.xml @@ -444,4 +444,99 @@ t3.report_name, t1.date_year + + + + + + \ No newline at end of file