Browse Source

网格得分说明暂存

dev_shibei_match
jianjun 5 years ago
parent
commit
aa89523b1f
  1. 5
      epmet-module/data-report/data-report-client/src/main/java/com/epmet/evaluationindex/index/dto/IndexExplainDTO.java
  2. 5
      epmet-module/data-report/data-report-client/src/main/java/com/epmet/evaluationindex/index/dto/IndexExplainTreeDTO.java
  3. 3
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/constant/IndexConstant.java
  4. 86
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/index/impl/IndexExplainServiceImpl.java
  5. 5
      epmet-module/data-report/data-report-server/src/main/resources/mapper/index/IndexExplainDao.xml

5
epmet-module/data-report/data-report-client/src/main/java/com/epmet/evaluationindex/index/dto/IndexExplainDTO.java

@ -84,11 +84,6 @@ public class IndexExplainDTO implements Serializable {
*/ */
private String type; private String type;
/**
* 是否下钻1 0否eg网格的下级分数 下钻到党员
*/
private Integer goDown;
/** /**
* 删除标记 0未删除1已删除 * 删除标记 0未删除1已删除
*/ */

5
epmet-module/data-report/data-report-client/src/main/java/com/epmet/evaluationindex/index/dto/IndexExplainTreeDTO.java

@ -84,11 +84,6 @@ public class IndexExplainTreeDTO implements Serializable {
*/ */
private String type; private String type;
/**
* 是否下钻1 0否eg网格的下级分数 下钻到党员
*/
private Integer goDown;
/** /**
* 子节点 * 子节点
*/ */

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

@ -25,8 +25,9 @@ public class IndexConstant {
private static final String BEN_JI_CN = "本级"; private static final String BEN_JI_CN = "本级";
private static final String XIA_JI_CN = "下级"; private static final String XIA_JI_CN = "下级";
public static final String ZI_SHEN = "ZISHEN"; public static final String ZI_SHEN = "zishen";
public static final String XIA_JI = "xiaji"; public static final String XIA_JI = "xiaji";
public static final String THRESHOLD_TEXT = "给定阈值%d%%,超过阈值不加分";
/** /**

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

@ -94,39 +94,51 @@ public class IndexExplainServiceImpl implements IndexExplainService {
} }
private void setTableData(IndexExplainFormDTO formDTO, Map<String, List<IndexGroupDetailResult>> detailEntityMap, IndexExplainTreeDTO explainDTO, IndexExplainResult result) { private void setTableData(IndexExplainFormDTO formDTO, Map<String, List<IndexGroupDetailResult>> detailEntityMap, IndexExplainTreeDTO explainDTO, IndexExplainResult result) {
Integer goDown = explainDTO.getGoDown();
if (NumConstant.ONE == explainDTO.getIsSearch()) { if (NumConstant.ONE == explainDTO.getIsSearch()) {
List<String> tableHeaders = getTableHeaders(explainDTO); String type = explainDTO.getType();
result.setTableTileList(tableHeaders);
switch (explainDTO.getOrgLevel()) { switch (explainDTO.getOrgLevel()) {
case "grid": case "grid":
String type = explainDTO.getType();
String allIndexCodePath = null; String allIndexCodePath = null;
List<IndexScoreDetailResult> tableList = null; List<IndexScoreDetailResult> tableList = null;
if (IndexConstant.ZI_SHEN.equals(type)) {
allIndexCodePath = "wanggexiangguan:dangjiannengli"; List<IndexScoreResult> scoreList = null;
tableList = setDefaultTableData(detailEntityMap, type, allIndexCodePath);
result.setTableDataList(tableList);
} else if (IndexConstant.XIA_JI.equals(type)) {
allIndexCodePath = "dangyuanxiangguan:lianxiqunzhong";
tableList = setDefaultTableData(detailEntityMap, type, allIndexCodePath);
result.setTableDataList(tableList);
}
//set Target value //set Target value
IndexScoreFormDTO ablityListFormDTO = new IndexScoreFormDTO(); IndexScoreFormDTO ablityListFormDTO = new IndexScoreFormDTO();
ablityListFormDTO.setCustomerId(formDTO.getCustomerId()); ablityListFormDTO.setCustomerId(formDTO.getCustomerId());
ablityListFormDTO.setOrgId(formDTO.getOrgId()); ablityListFormDTO.setOrgId(formDTO.getOrgId());
ablityListFormDTO.setMonthId(DateUtils.getCurrentTimeBeforeMonthId()); ablityListFormDTO.setMonthId(DateUtils.getCurrentTimeBeforeMonthId());
ablityListFormDTO.setAllParentIndexCode(allIndexCodePath);
//下钻到党员
List<IndexScoreResult> scoreList = null; if (IndexConstant.ZI_SHEN.equals(type)) {
if (goDown == 1) { allIndexCodePath = "wanggexiangguan:dangjiannengli";
scoreList = factIndexCpcSubScoreDao.selecCpcAvgScore(ablityListFormDTO);
} else { List<String> tableHeaders = getTableHeaders(type, allIndexCodePath, formDTO.getOrgLevel());
result.setTableTileList(tableHeaders);
tableList = setDefaultTableData(formDTO.getOrgLevel(), type, detailEntityMap, result, allIndexCodePath);
//不下钻 //不下钻
ablityListFormDTO.setAllParentIndexCode(allIndexCodePath);
scoreList = gridSubScoreDao.selectGridSubScore(ablityListFormDTO); scoreList = gridSubScoreDao.selectGridSubScore(ablityListFormDTO);
} else if (IndexConstant.XIA_JI.equals(type)) {
allIndexCodePath = "dangyuanxiangguan:lianxiqunzhong";
List<String> tableHeaders = getTableHeaders(type, allIndexCodePath, formDTO.getOrgLevel());
tableHeaders.add(0, "组织内党员的联系群众指数考评分(平均值)");
result.setTableTileList(tableHeaders);
tableList = setDefaultTableData(formDTO.getOrgLevel(), type, detailEntityMap, result, allIndexCodePath);
//下钻到党员
ablityListFormDTO.setAllParentIndexCode(allIndexCodePath);
scoreList = factIndexCpcSubScoreDao.selecCpcAvgScore(ablityListFormDTO);
} }
if (scoreList == null || tableList == null) {
if (scoreList == null) {
return; return;
} }
for (IndexScoreResult score : scoreList) { for (IndexScoreResult score : scoreList) {
@ -135,12 +147,10 @@ public class IndexExplainServiceImpl implements IndexExplainService {
tb.setOriginValue(score.getOriginValue()); tb.setOriginValue(score.getOriginValue());
tb.setScore(String.valueOf(score.getScore())); tb.setScore(String.valueOf(score.getScore()));
tb.setQuantity(score.getQuantity()); tb.setQuantity(score.getQuantity());
tb.setWeight(score.getWeight().multiply(new BigDecimal(100)).setScale(NumConstant.TWO, BigDecimal.ROUND_HALF_UP) + "%"); tb.setWeight(score.getWeight().multiply(new BigDecimal(NumConstant.ONE_HUNDRED)).setScale(NumConstant.TWO, BigDecimal.ROUND_HALF_UP) + "%");
} }
} }
} }
break; break;
default: default:
@ -148,18 +158,27 @@ public class IndexExplainServiceImpl implements IndexExplainService {
} }
} }
private List<IndexScoreDetailResult> setDefaultTableData(Map<String, List<IndexGroupDetailResult>> detailEntityMap, String type, String allIndexCodePath) { private List<IndexScoreDetailResult> setDefaultTableData(String orgLevel, String type, Map<String, List<IndexGroupDetailResult>> detailEntityMap, IndexExplainResult result, String allIndexCodePath) {
List<IndexGroupDetailResult> indexGroupDetailEntities = detailEntityMap.get(allIndexCodePath); List<IndexGroupDetailResult> indexGroupDetailEntities = detailEntityMap.get(allIndexCodePath);
List<IndexScoreDetailResult> tableList = new ArrayList<>(); List<IndexScoreDetailResult> tableList = new ArrayList<>();
List<String> threlodList = new ArrayList<>();
indexGroupDetailEntities.forEach(index -> { indexGroupDetailEntities.forEach(index -> {
IndexScoreDetailResult table = new IndexScoreDetailResult(); IndexScoreDetailResult table = new IndexScoreDetailResult();
if ("grid".equals(orgLevel) && IndexConstant.ZI_SHEN.equals(type) && index.getAllIndexCodePath().contains(IndexConstant.XIA_JI)) {
return;
}
table.setIndexCode(index.getIndexCode()); table.setIndexCode(index.getIndexCode());
table.setIndexName(index.getIndexName()); table.setIndexName(index.getIndexName());
table.setOriginValue(NumConstant.ZERO_STR); table.setOriginValue(NumConstant.ZERO_STR);
table.setScore(NumConstant.ZERO_STR); table.setScore(NumConstant.ZERO_STR);
table.setWeight(index.getWeight().multiply(new BigDecimal(100)).setScale(NumConstant.TWO, BigDecimal.ROUND_HALF_UP) + "%"); table.setWeight(index.getWeight().multiply(new BigDecimal(100)).setScale(NumConstant.TWO, BigDecimal.ROUND_HALF_UP) + "%");
tableList.add(table); tableList.add(table);
if (new BigDecimal(-1).compareTo(index.getThreshold()) != 0) {
threlodList.add(index.getIndexName().concat(String.format(IndexConstant.THRESHOLD_TEXT, index.getThreshold().intValue())));
}
}); });
result.setTableDataList(tableList);
result.setThresholdList(threlodList);
return tableList; return tableList;
} }
@ -182,15 +201,20 @@ public class IndexExplainServiceImpl implements IndexExplainService {
} }
private List<String> getTableHeaders(IndexExplainTreeDTO explain) { private List<String> getTableHeaders(String type, String allIndexCode, String orgLevel) {
String type = explain.getType();
List<String> headers = new ArrayList<>(); List<String> headers = new ArrayList<>();
if ("zishen".equals(type)) { switch (orgLevel) {
headers = IndexConstant.getStandardSelfHeaders(explain.getIndexCode()); case "grid":
//还没确定怎么搞
} else if ("xiaji".equals(type)) { default:
headers = IndexConstant.getStandardSubHeaders(explain.getIndexCode()); if ("zishen".equals(type)) {
headers = IndexConstant.getStandardSelfHeaders(allIndexCode);
} else if ("xiaji".equals(type)) {
headers = IndexConstant.getStandardSubHeaders(allIndexCode);
}
} }
return headers; return headers;
} }
} }

5
epmet-module/data-report/data-report-server/src/main/resources/mapper/index/IndexExplainDao.xml

@ -14,14 +14,13 @@
<result property="sort" column="SORT"/> <result property="sort" column="SORT"/>
<result property="isSearch" column="IS_SEARCH"/> <result property="isSearch" column="IS_SEARCH"/>
<result property="type" column="TYPE"/> <result property="type" column="TYPE"/>
<result property="goDown" column="GO_DOWN"/>
<collection property="children" ofType="com.epmet.evaluationindex.index.dto.IndexExplainTreeDTO" column="ID" select="getIndexExplainTreeByPid"> <collection property="children" ofType="com.epmet.evaluationindex.index.dto.IndexExplainTreeDTO" column="ID" select="getIndexExplainTreeByPid">
</collection> </collection>
</resultMap> </resultMap>
<select id="getIndexExplainTreeByOrgType" resultMap="explainTreeResultMap"> <select id="getIndexExplainTreeByOrgType" resultMap="explainTreeResultMap">
SELECT SELECT
ID, CUSTOMER_ID, TITLE, MEANING, INDEX_CODE, ORG_LEVEL, PID, SORT, IS_SEARCH, TYPE, GO_DOWN ID, CUSTOMER_ID, TITLE, MEANING, INDEX_CODE, ORG_LEVEL, PID, SORT, IS_SEARCH, TYPE
FROM index_explain FROM index_explain
WHERE WHERE
ORG_LEVEL = #{orgLevel} ORG_LEVEL = #{orgLevel}
@ -31,7 +30,7 @@
</select> </select>
<select id="getIndexExplainTreeByPid" resultMap="explainTreeResultMap"> <select id="getIndexExplainTreeByPid" resultMap="explainTreeResultMap">
SELECT SELECT
ID, CUSTOMER_ID, TITLE, MEANING, INDEX_CODE, ORG_LEVEL, PID, SORT, IS_SEARCH, TYPE, GO_DOWN ID, CUSTOMER_ID, TITLE, MEANING, INDEX_CODE, ORG_LEVEL, PID, SORT, IS_SEARCH, TYPE
FROM index_explain FROM index_explain
WHERE WHERE
DEL_FLAG = '0' DEL_FLAG = '0'

Loading…
Cancel
Save