Browse Source

Merge branch 'dev_third_data' of http://git.elinkit.com.cn:7070/r/epmet-cloud into dev_third_data

dev_shibei_match
wxz 4 years ago
parent
commit
ce2bce438b
  1. 51
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/OrgLevelEnum.java
  2. 28
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/form/AgencyGovrnFormDTO.java
  3. 28
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/form/GridGovrnFormDTO.java
  4. 37
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/AgencyGovrnResultDTO.java
  5. 29
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/GridGovrnResultDTO.java
  6. 49
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/DataStatsController.java
  7. 34
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/DataStatsService.java
  8. 46
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/impl/DataStatsServiceImpl.java
  9. 5
      epmet-module/data-report/data-report-client/src/main/java/com/epmet/evaluationindex/index/form/IndexScoreFormDTO.java
  10. 5
      epmet-module/data-report/data-report-client/src/main/java/com/epmet/evaluationindex/screen/dto/result/IndexDictResultDTO.java
  11. 2
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/constant/IndexConstant.java
  12. 36
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/fact/FactIndexDeptSubScoreDao.java
  13. 94
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/index/impl/IndexExplainServiceImpl.java
  14. 24
      epmet-module/data-report/data-report-server/src/main/resources/mapper/fact/FactIndexDeptSubScoreDao.xml
  15. 49
      epmet-module/data-statistical/data-statistical-server/src/main/resources/db/migration/V0.0.14__groupact_analysis.sql
  16. 3
      epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueProjectCategoryDictServiceImpl.java

51
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/OrgLevelEnum.java

@ -0,0 +1,51 @@
package com.epmet.commons.tools.enums;
import com.epmet.commons.tools.exception.EpmetErrorCode;
import com.epmet.commons.tools.exception.RenException;
/**
* 组织级别枚举类
* dev|test|prod
*
* @author jianjun liu
* @date 2020-07-03 11:14
**/
public enum OrgLevelEnum {
/**
* 组织等级枚举
*/
GRID("grid"),
COMMUNITY("community"),
STREET("street"),
DISTRICT("district"),
CITY("city"),
PROVINCE("province"),
;
private String code;
OrgLevelEnum(String code) {
this.code = code;
}
public static OrgLevelEnum getEnum(String code) {
OrgLevelEnum[] values = OrgLevelEnum.values();
for (OrgLevelEnum value : values) {
if (value.getCode().equals(code)) {
return value;
}
}
throw new RenException(EpmetErrorCode.INTERNAL_VALIDATE_ERROR.getCode());
}
public String getCode() {
return code;
}
}

28
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/form/AgencyGovrnFormDTO.java

@ -0,0 +1,28 @@
package com.epmet.dataaggre.dto.datastats.form;
import com.epmet.commons.tools.validator.group.CustomerClientShowGroup;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
/**
* @Description 治理实况-当前组织治理指数-接口入参
* @Auth sun
*/
@Data
public class AgencyGovrnFormDTO implements Serializable {
private static final long serialVersionUID = -3381286960911634231L;
/**
* 组织Id
*/
@NotBlank(message = "组织ID不能为空",groups = AgencyGovrnFormDTO.Agency.class)
private String agencyId;
/**
* 日维度Id
*/
private String dateId;
public interface Agency extends CustomerClientShowGroup {}
}

28
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/form/GridGovrnFormDTO.java

@ -0,0 +1,28 @@
package com.epmet.dataaggre.dto.datastats.form;
import com.epmet.commons.tools.validator.group.CustomerClientShowGroup;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
/**
* @Description 治理实况-当前网格治理指数-接口入参
* @Auth sun
*/
@Data
public class GridGovrnFormDTO implements Serializable {
private static final long serialVersionUID = -3381286960911634231L;
/**
* 网格Id
*/
@NotBlank(message = "网格Id不能为空",groups = GridGovrnFormDTO.Grid.class)
private String gridId;
/**
* 日维度Id
*/
private String dateId;
public interface Grid extends CustomerClientShowGroup {}
}

37
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/AgencyGovrnResultDTO.java

@ -0,0 +1,37 @@
package com.epmet.dataaggre.dto.datastats.result;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
/**
* @Description 治理实况-当前组织治理指数-接口返参
* @Auth sun
*/
@Data
public class AgencyGovrnResultDTO implements Serializable {
private static final long serialVersionUID = 466974582608407121L;
@JsonIgnore
BigDecimal bi = new BigDecimal(0);
//组织Id
private String agencyId;
//组织名称
private String agencyName;
//机关级别(社区级:community, 乡(镇、街道)级:street, 区县级: district, 市级: city 省级:province)
private String level;
//问题解决总数
private Integer a = 0;
//党群自治占比
private BigDecimal b = bi;
//网格自治占比
private BigDecimal c = bi;
//社区解决占比
private BigDecimal d = bi;
//区直部门解决占比
private BigDecimal e = bi;
//街道解决占比
private BigDecimal f = bi;
}

29
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/GridGovrnResultDTO.java

@ -0,0 +1,29 @@
package com.epmet.dataaggre.dto.datastats.result;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
/**
* @Description 治理实况-当前网格治理指数-接口返参
* @Auth sun
*/
@Data
public class GridGovrnResultDTO implements Serializable {
private static final long serialVersionUID = 466974582608407121L;
@JsonIgnore
BigDecimal bi = new BigDecimal(0);
//网格Id
private String gridId;
//网格名称
private String gridName;
//问题解决总数
private Integer a = 0;
//党群自治占比
private BigDecimal b = bi;
//网格自治占比
private BigDecimal c = bi;
}

49
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/DataStatsController.java

@ -2,10 +2,7 @@ package com.epmet.dataaggre.controller;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.dataaggre.dto.datastats.form.AgenctBasicDataFormDTO;
import com.epmet.dataaggre.dto.datastats.form.GridBasicDataFormDTO;
import com.epmet.dataaggre.dto.datastats.form.SubAgencyFormDTO;
import com.epmet.dataaggre.dto.datastats.form.SubGridFormDTO;
import com.epmet.dataaggre.dto.datastats.form.*;
import com.epmet.dataaggre.dto.datastats.result.*;
import com.epmet.dataaggre.service.datastats.DataStatsService;
import org.springframework.beans.factory.annotation.Autowired;
@ -159,4 +156,48 @@ public class DataStatsController {
return new Result<List<SubGridProjectResultDTO>>().ok(dataStatsService.subGridProject(formDTO));
}
/**
* @Param formDTO
* @Description 治理实况-当前组织治理指数
* @author sun
*/
@PostMapping("agencygovrn")
public Result<AgencyGovrnResultDTO> agencyGovrn(@RequestBody AgencyGovrnFormDTO formDTO) {
ValidatorUtils.validateEntity(formDTO, AgencyGovrnFormDTO.Agency.class);
return new Result<AgencyGovrnResultDTO>().ok(dataStatsService.agencyGovrn(formDTO));
}
/**
* @Param formDTO
* @Description 治理实况-组织直属下级治理指数列表
* @author sun
*/
@PostMapping("subagencygovrnlist")
public Result<List<AgencyGovrnResultDTO>> subAgencyGovrnList(@RequestBody AgencyGovrnFormDTO formDTO) {
ValidatorUtils.validateEntity(formDTO, AgencyGovrnFormDTO.Agency.class);
return new Result<List<AgencyGovrnResultDTO>>().ok(dataStatsService.subAgencyGovrnList(formDTO));
}
/**
* @Param formDTO
* @Description 治理实况-当前网格治理指数
* @author sun
*/
@PostMapping("gridgovrn")
public Result<GridGovrnResultDTO> gridGovrn(@RequestBody GridGovrnFormDTO formDTO) {
ValidatorUtils.validateEntity(formDTO, GridGovrnFormDTO.Grid.class);
return new Result<GridGovrnResultDTO>().ok(dataStatsService.gridGovrn(formDTO));
}
/**
* @Param formDTO
* @Description 治理实况-组织直属网格治理指数列表
* @author sun
*/
@PostMapping("subgridgovrnlist")
public Result<List<GridGovrnResultDTO>> subGridGovrnList(@RequestBody GridGovrnFormDTO formDTO) {
ValidatorUtils.validateEntity(formDTO, GridGovrnFormDTO.Grid.class);
return new Result<List<GridGovrnResultDTO>>().ok(dataStatsService.subGridGovrnList(formDTO));
}
}

34
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/DataStatsService.java

@ -1,11 +1,7 @@
package com.epmet.dataaggre.service.datastats;
import com.epmet.dataaggre.dto.datastats.FactGroupActDailyDTO;
import com.epmet.dataaggre.dto.datastats.form.AgenctBasicDataFormDTO;
import com.epmet.dataaggre.dto.datastats.form.PartyMemberVanguardFormDTO;
import com.epmet.dataaggre.dto.datastats.form.GridBasicDataFormDTO;
import com.epmet.dataaggre.dto.datastats.form.SubAgencyFormDTO;
import com.epmet.dataaggre.dto.datastats.form.SubGridFormDTO;
import com.epmet.dataaggre.dto.datastats.form.*;
import com.epmet.dataaggre.dto.datastats.result.*;
import com.epmet.dataaggre.dto.resigroup.ActCategoryDictDTO;
import com.epmet.dataaggre.dto.resigroup.result.GroupActRankDetailDTO;
@ -128,4 +124,32 @@ public interface DataStatsService {
List<FactGroupActDailyDTO> querySubAnalysisByCode(String customerId, String pid, String dateId, String categoryCode);
List<GroupActRankDetailDTO> selectGroupActRankDetail(String customerId, String dateId, String orgId, List<ActCategoryDictDTO> actCategoryDictDTOList);
/**
* @Param formDTO
* @Description 治理实况-当前组织治理指数
* @author sun
*/
AgencyGovrnResultDTO agencyGovrn(AgencyGovrnFormDTO formDTO);
/**
* @Param formDTO
* @Description 治理实况-组织直属下级治理指数列表
* @author sun
*/
List<AgencyGovrnResultDTO> subAgencyGovrnList(AgencyGovrnFormDTO formDTO);
/**
* @Param formDTO
* @Description 治理实况-当前网格治理指数
* @author sun
*/
GridGovrnResultDTO gridGovrn(GridGovrnFormDTO formDTO);
/**
* @Param formDTO
* @Description 治理实况-组织直属网格治理指数列表
* @author sun
*/
List<GridGovrnResultDTO> subGridGovrnList(GridGovrnFormDTO formDTO);
}

46
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/impl/DataStatsServiceImpl.java

@ -7,11 +7,7 @@ import com.epmet.dataaggre.constant.DataSourceConstant;
import com.epmet.dataaggre.constant.OrgConstant;
import com.epmet.dataaggre.dao.datastats.DataStatsDao;
import com.epmet.dataaggre.dto.datastats.FactGroupActDailyDTO;
import com.epmet.dataaggre.dto.datastats.form.AgenctBasicDataFormDTO;
import com.epmet.dataaggre.dto.datastats.form.PartyMemberVanguardFormDTO;
import com.epmet.dataaggre.dto.datastats.form.GridBasicDataFormDTO;
import com.epmet.dataaggre.dto.datastats.form.SubAgencyFormDTO;
import com.epmet.dataaggre.dto.datastats.form.SubGridFormDTO;
import com.epmet.dataaggre.dto.datastats.form.*;
import com.epmet.dataaggre.dto.datastats.result.*;
import com.epmet.dataaggre.dto.resigroup.ActCategoryDictDTO;
import com.epmet.dataaggre.dto.resigroup.result.GroupActRankDetailDTO;
@ -1014,4 +1010,44 @@ public class DataStatsServiceImpl implements DataStatsService {
return new ArrayList<>();
}
/**
* @Param formDTO
* @Description 治理实况-当前组织治理指数
* @author sun
*/
@Override
public AgencyGovrnResultDTO agencyGovrn(AgencyGovrnFormDTO formDTO) {
return null;
}
/**
* @Param formDTO
* @Description 治理实况-组织直属下级治理指数列表
* @author sun
*/
@Override
public List<AgencyGovrnResultDTO> subAgencyGovrnList(AgencyGovrnFormDTO formDTO) {
return null;
}
/**
* @Param formDTO
* @Description 治理实况-当前网格治理指数
* @author sun
*/
@Override
public GridGovrnResultDTO gridGovrn(GridGovrnFormDTO formDTO) {
return null;
}
/**
* @Param formDTO
* @Description 治理实况-组织直属网格治理指数列表
* @author sun
*/
@Override
public List<GridGovrnResultDTO> subGridGovrnList(GridGovrnFormDTO formDTO) {
return null;
}
}

5
epmet-module/data-report/data-report-client/src/main/java/com/epmet/evaluationindex/index/form/IndexScoreFormDTO.java

@ -36,5 +36,8 @@ public class IndexScoreFormDTO implements Serializable {
* 所有有权重的指标code拼接的字符串 冒号隔开
*/
private String allParentIndexCode;
/**
* pid
*/
private String pid;
}

5
epmet-module/data-report/data-report-client/src/main/java/com/epmet/evaluationindex/screen/dto/result/IndexDictResultDTO.java

@ -3,7 +3,6 @@ package com.epmet.evaluationindex.screen.dto.result;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
* 评价指标字典表数据--接口返参
@ -18,6 +17,10 @@ public class IndexDictResultDTO implements Serializable {
* 指标名
*/
private String indexName;
/**
* 指标名
*/
private String indexDesc;
/**
* 指标code
*/

2
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/constant/IndexConstant.java

@ -31,6 +31,8 @@ public class IndexConstant {
public static final String TABLE_DESC = "详见下表:";
public static final String INDEX_SCORE_TITLE = "当月指数";
public static final String INDEX_SCORE_DESC = "含义:自然月周期内,当月指数得分=党建指数得分*相关权重+治理指数得分*相关权重+服务指数得分*相关权重";
public static final String INDEX_DISTRINCT_TABLE1_INDEX_CODE = "suoyoujiedaozlnlpjz";
public static final String ZHI_LI_NENG_LI = "zhilinengli";
/**

36
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/fact/FactIndexDeptSubScoreDao.java

@ -0,0 +1,36 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.epmet.datareport.dao.fact;
import com.epmet.evaluationindex.index.form.IndexScoreFormDTO;
import com.epmet.evaluationindex.index.result.IndexScoreResult;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
* 部门相关分数表
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2020-09-02
*/
@Mapper
public interface FactIndexDeptSubScoreDao {
List<IndexScoreResult> selecDeptAvgScore(IndexScoreFormDTO ablityListFormDTO);
}

94
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/index/impl/IndexExplainServiceImpl.java

@ -19,6 +19,7 @@ package com.epmet.datareport.service.evaluationindex.index.impl;
import com.epmet.commons.dynamic.datasource.annotation.DataSource;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.enums.OrgLevelEnum;
import com.epmet.commons.tools.utils.DateUtils;
import com.epmet.constant.DataSourceConstant;
import com.epmet.datareport.constant.IndexConstant;
@ -70,6 +71,8 @@ public class IndexExplainServiceImpl implements IndexExplainService {
private FactIndexCommunitySubScoreDao communitySubScoreDao;
@Autowired
private FactIndexAgencySubScoreDao agencySubScoreDao;
@Autowired
private FactIndexDeptSubScoreDao deptSubScoreDao;
@Override
@ -125,46 +128,63 @@ public class IndexExplainServiceImpl implements IndexExplainService {
IndexScoreFormDTO ablityListFormDTO = new IndexScoreFormDTO();
ablityListFormDTO.setCustomerId(formDTO.getCustomerId());
ablityListFormDTO.setOrgId(formDTO.getOrgId());
ablityListFormDTO.setAllParentIndexCode(allIndexCodePath);
ablityListFormDTO.setMonthId(StringUtils.isBlank(formDTO.getMonthId()) ? DateUtils.getCurrentTimeBeforeMonthId() : formDTO.getMonthId());
switch (orgLevel) {
case "grid":
OrgLevelEnum anEnum = OrgLevelEnum.getEnum(orgLevel);
switch (anEnum) {
case GRID:
if (IndexConstant.ZI_SHEN.equals(type)) {
setDefaultTableData(orgLevel, type, detailEntityMap, result, allIndexCodePath);
setDefaultTableData(orgLevel, type, detailEntityMap, result, allIndexCodePath, null);
//不下钻
ablityListFormDTO.setAllParentIndexCode(allIndexCodePath);
realScoreList = gridSubScoreDao.selectSubScore(ablityListFormDTO);
} else if (IndexConstant.XIA_JI.equals(type)) {
setDefaultTableData(orgLevel, type, detailEntityMap, result, allIndexCodePath);
setDefaultTableData(orgLevel, type, detailEntityMap, result, allIndexCodePath, null);
//下钻到党员
ablityListFormDTO.setAllParentIndexCode(allIndexCodePath);
realScoreList = factIndexCpcSubScoreDao.selecCpcAvgScore(ablityListFormDTO);
}
break;
case "community":
setDefaultTableData(orgLevel, type, detailEntityMap, result, allIndexCodePath);
case COMMUNITY:
setDefaultTableData(orgLevel, type, detailEntityMap, result, allIndexCodePath, null);
//不下钻
ablityListFormDTO.setAllParentIndexCode(allIndexCodePath);
realScoreList = communitySubScoreDao.selectSubScore(ablityListFormDTO);
break;
case "street":
setDefaultTableData(orgLevel, type, detailEntityMap, result, allIndexCodePath);
case STREET:
setDefaultTableData(orgLevel, type, detailEntityMap, result, allIndexCodePath, null);
//不下钻
ablityListFormDTO.setAllParentIndexCode(allIndexCodePath);
realScoreList = agencySubScoreDao.selectSubScore(ablityListFormDTO);
break;
case "district":
setDefaultTableData(orgLevel, type, detailEntityMap, result, allIndexCodePath);
//不下钻
ablityListFormDTO.setAllParentIndexCode(allIndexCodePath);
realScoreList = agencySubScoreDao.selectSubScore(ablityListFormDTO);
case DISTRICT:
if (allIndexCodePath.contains(IndexConstant.ZHI_LI_NENG_LI)) {
List<IndexGroupDetailResult> detailResults = detailEntityMap.get(allIndexCodePath);
List<IndexGroupDetailResult> indexGroupDetailEntities = new ArrayList<>();
for (IndexGroupDetailResult index : detailResults) {
if (IndexConstant.INDEX_DISTRINCT_TABLE1_INDEX_CODE.equals(index.getIndexCode())) {
indexGroupDetailEntities.add(index);
setDefaultTableData(orgLevel, type, detailEntityMap, result, allIndexCodePath, indexGroupDetailEntities);
//不下钻
realScoreList = agencySubScoreDao.selectSubScore(ablityListFormDTO);
break;
} else {
//下钻到区直部门
setDefaultTableData(orgLevel, type, detailEntityMap, result, allIndexCodePath, null);
ablityListFormDTO.setPid(formDTO.getOrgId());
realScoreList = deptSubScoreDao.selecDeptAvgScore(ablityListFormDTO);
}
}
} else {
setDefaultTableData(orgLevel, type, detailEntityMap, result, allIndexCodePath, null);
//不下钻
realScoreList = agencySubScoreDao.selectSubScore(ablityListFormDTO);
}
break;
default:
log.error("暂不支持更高级别的查询,level:{}",orgLevel);
}
setRealValue(result.getTableDataList(), realScoreList);
@ -191,16 +211,22 @@ public class IndexExplainServiceImpl implements IndexExplainService {
}
tb.setOriginValue(score.getOriginValue());
tb.setScore(String.valueOf(score.getScore()));
tb.setQuantity(score.getQuantity());
if (StringUtils.isNotBlank(score.getQuantity())) {
tb.setQuantity(score.getQuantity());
}
tb.setWeight(score.getWeight().multiply(new BigDecimal(NumConstant.ONE_HUNDRED)).setScale(NumConstant.TWO, BigDecimal.ROUND_HALF_UP) + "%");
}
}
}
private List<IndexScoreDetailResult> setDefaultTableData(String orgLevel, String type, Map<String, List<IndexGroupDetailResult>> detailEntityMap, IndexExplainResult result, String allIndexCodePath) {
List<IndexGroupDetailResult> indexGroupDetailEntities = detailEntityMap.get(allIndexCodePath);
if (CollectionUtils.isEmpty(indexGroupDetailEntities)){
log.warn("setDefaultTableData allINdexCodePath:{} is config error",allIndexCodePath);
private List<IndexScoreDetailResult> setDefaultTableData(String orgLevel, String type, Map<String, List<IndexGroupDetailResult>> detailEntityMap,
IndexExplainResult result, String allIndexCodePath, List<IndexGroupDetailResult> indexGroupDetailEntities) {
if (indexGroupDetailEntities == null) {
indexGroupDetailEntities = detailEntityMap.get(allIndexCodePath);
}
if (CollectionUtils.isEmpty(indexGroupDetailEntities)) {
log.warn("setDefaultTableData allINdexCodePath:{} is config error", allIndexCodePath);
return null;
}
List<IndexScoreDetailResult> tableList = new ArrayList<>();
@ -210,7 +236,7 @@ public class IndexExplainServiceImpl implements IndexExplainService {
if ("grid".equals(orgLevel) && IndexConstant.ZI_SHEN.equals(type) && index.getAllIndexCodePath().contains(IndexConstant.XIA_JI)) {
return;
}
if (!"grid".equals(orgLevel) && !index.getAllIndexCodePath().contains(type)){
if ((!"grid".equals(orgLevel) && !"district".equals(orgLevel)) && !index.getAllIndexCodePath().contains(type)) {
return;
}
table.setIndexCode(index.getIndexCode());
@ -218,6 +244,7 @@ public class IndexExplainServiceImpl implements IndexExplainService {
table.setOriginValue(NumConstant.ZERO_STR);
table.setScore(NumConstant.ZERO_STR);
table.setWeight(index.getWeight().multiply(new BigDecimal(100)).setScale(NumConstant.TWO, BigDecimal.ROUND_HALF_UP) + "%");
table.setQuantity(NumConstant.ZERO_STR);
tableList.add(table);
if (new BigDecimal(-1).compareTo(index.getThreshold()) != 0) {
threlodList.add(index.getIndexName().concat(String.format(IndexConstant.THRESHOLD_TEXT, index.getThreshold().intValue())));
@ -257,7 +284,7 @@ public class IndexExplainServiceImpl implements IndexExplainService {
headers = IndexConstant.getStandardSelfHeaders(allIndexCode);
} else if ("xiaji".equals(type)) {
headers = IndexConstant.getStandardSubHeaders(allIndexCode);
headers = new ArrayList<>(IndexConstant.QuantityLastHeader);
if (allIndexCode.contains("canyuyishi")) {
headers.add(0, "组织内党员的参与议事指数考评分(平均值)");
} else if (allIndexCode.contains("lianxiqunzhong")) {
@ -265,6 +292,19 @@ public class IndexExplainServiceImpl implements IndexExplainService {
}
break;
}
case "district":
if ("zishen".equals(type)) {
headers = IndexConstant.getStandardSelfHeaders(allIndexCode);
} else if ("xiaji".equals(type)) {
headers = new ArrayList<>(IndexConstant.QuantityLastHeader);
if (allIndexCode.contains("quzhibumen")) {
headers.add(0, "区直部门各项治理指数指标");
} else {
headers.add(0, "所有街道治理指数指标");
}
}
break;
default:
if ("zishen".equals(type)) {
headers = IndexConstant.getStandardSelfHeaders(allIndexCode);

24
epmet-module/data-report/data-report-server/src/main/resources/mapper/fact/FactIndexDeptSubScoreDao.xml

@ -0,0 +1,24 @@
<?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.epmet.datareport.dao.fact.FactIndexDeptSubScoreDao">
<select id="selecDeptAvgScore" resultType="com.epmet.evaluationindex.index.result.IndexScoreResult">
SELECT
id, customer_id, dept_id, agency_id, month_id,
origin_value,
index_code, all_parent_index_code, weight,
COUNT(*) quantity,
ROUND(AVG(score),2) score
FROM fact_index_dept_sub_score
WHERE
ALL_PARENT_INDEX_CODE = #{allParentIndexCode}
AND CUSTOMER_ID = #{customerId}
and AGENCY_ID= #{orgId}
and MONTH_ID = #{monthId}
GROUP BY INDEX_CODE;
</select>
</mapper>

49
epmet-module/data-statistical/data-statistical-server/src/main/resources/db/migration/V0.0.14__groupact_analysis.sql

@ -0,0 +1,49 @@
-- epmet_data_statistical 库执行以下脚本
-- CREATE TABLE `fact_group_act_daily` (
-- `ID` varchar(64) NOT NULL COMMENT '主键',
-- `CUSTOMER_ID` varchar(64) NOT NULL COMMENT '客户ID',
-- `DATE_ID` varchar(8) NOT NULL COMMENT '数据更新至日期Id:yyyyMMdd',
-- `ORG_ID` varchar(64) NOT NULL COMMENT '网格id',
-- `ORG_TYPE` varchar(10) NOT NULL COMMENT '网格:grid;组织:agency',
-- `PID` varchar(255) DEFAULT NULL COMMENT '1)orgType=grid: pid=网格所属组织id;\r\n2)orgType=agency: pid=当前组织的上级组织',
-- `PIDS` varchar(255) DEFAULT NULL COMMENT '1)orgType=grid: pids=网格所有上级组织,包括pid;\r\n2)orgType=agency: pids=当前组织的所有上级组织,包括pid.',
-- `CATEGORY_CODE` varchar(255) NOT NULL COMMENT '活动分类编码',
-- `PARENT_CODE` varchar(255) NOT NULL COMMENT '上级分类编码',
-- `LEVEL` int(11) NOT NULL COMMENT '分类等级',
-- `ORGANIZE_TOTAL` int(11) NOT NULL COMMENT '截止到dateId: 组织次数;包含dateId这一天的数据',
-- `PARTICIPATE_USER_TOTAL` int(11) NOT NULL COMMENT '截止到dateId: 参加人数;包含dateId这一天的数据',
-- `AVG_PARTICIPATE_USER_TOTAL` int(11) NOT NULL COMMENT '截止到dateId: 平均参加人数;包含dateId这一天的数据',
-- `DEL_FLAG` char(1) NOT NULL DEFAULT '0' COMMENT '删除标识 0未删除;1已删除',
-- `REVISION` int(11) NOT NULL DEFAULT '0' COMMENT '乐观锁',
-- `CREATED_BY` varchar(64) NOT NULL COMMENT '创建人',
-- `CREATED_TIME` datetime NOT NULL COMMENT '创建时间',
-- `UPDATED_BY` varchar(64) NOT NULL COMMENT '更新人',
-- `UPDATED_TIME` datetime NOT NULL COMMENT '更新时间',
-- PRIMARY KEY (`ID`) USING BTREE
-- ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC COMMENT='组织活动(参加人数、组织次数、平均参加人数)按天累计值分析';
-- CREATE TABLE `fact_group_act_monthly` (
-- `ID` varchar(64) NOT NULL COMMENT '主键',
-- `CUSTOMER_ID` varchar(64) NOT NULL COMMENT '客户ID',
-- `MONTH_ID` varchar(8) NOT NULL COMMENT '数据维度:yyyyMM',
-- `ORG_ID` varchar(64) NOT NULL COMMENT '网格id',
-- `ORG_TYPE` varchar(10) NOT NULL COMMENT '网格:grid;组织:agency',
-- `PID` varchar(255) DEFAULT NULL COMMENT '1)orgType=grid: pid=网格所属组织id;\r\n2)orgType=agency: pid=当前组织的上级组织',
-- `PIDS` varchar(255) DEFAULT NULL COMMENT '1)orgType=grid: pids=网格所有上级组织,包括pid;\r\n2)orgType=agency: pids=当前组织的所有上级组织,包括pid.',
-- `CATEGORY_CODE` varchar(255) NOT NULL COMMENT '活动分类编码',
-- `PARENT_CODE` varchar(255) NOT NULL COMMENT '上级分类编码',
-- `LEVEL` int(11) NOT NULL COMMENT '分类等级',
-- `ORGANIZE_INCR` int(11) NOT NULL COMMENT '本月内:活动组织次数',
-- `PARTICIPATE_USER__INCR` int(11) NOT NULL COMMENT '本月内:活动签到人数参加人数',
-- `AVG_PARTICIPATE_USER_INCR` int(11) NOT NULL COMMENT '本月内:平均参加人数',
-- `DEL_FLAG` char(1) NOT NULL DEFAULT '0' COMMENT '删除标识 0未删除;1已删除',
-- `REVISION` int(11) NOT NULL DEFAULT '0' COMMENT '乐观锁',
-- `CREATED_BY` varchar(64) NOT NULL COMMENT '创建人',
-- `CREATED_TIME` datetime NOT NULL COMMENT '创建时间',
-- `UPDATED_BY` varchar(64) NOT NULL COMMENT '更新人',
-- `UPDATED_TIME` datetime NOT NULL COMMENT '更新时间',
-- PRIMARY KEY (`ID`) USING BTREE
-- ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC COMMENT='专项组活动(参加人数、组织次数、平均参加人数)按月增量分析';

3
epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueProjectCategoryDictServiceImpl.java

@ -509,6 +509,9 @@ public class IssueProjectCategoryDictServiceImpl extends BaseServiceImpl<IssuePr
result.concat(l.getCategoryName()).concat(",");
});
}
if (StringUtils.isEmpty(result)){
return result;
}
return result.substring(NumConstant.ZERO,result.length()-NumConstant.ONE);
}
}

Loading…
Cancel
Save