|
|
@ -123,49 +123,49 @@ public class IndexExcelDataListener extends AnalysisEventListener<IndexModel> { |
|
|
|
group1.setIndexId(indexDictEntity.getId()); |
|
|
|
group1.setParentIndexGroupId("0"); |
|
|
|
group1.setId(UniqueIdGenerator.generate()); |
|
|
|
group1.setIndexCode(Pinyin4jUtil.getSpellPinYin(indexDictEntity.getIndexName(),true,4)); |
|
|
|
group1.setIndexCode(Pinyin4jUtil.getSpellPinYin(indexDictEntity.getIndexName(), true, 4)); |
|
|
|
indexGroupMap.put(index.getLevel1Index(), group1); |
|
|
|
} |
|
|
|
StringBuilder allIndexCodeSb = new StringBuilder(group1.getIndexCode()); |
|
|
|
String level4Index = index.getLevel4Index(); |
|
|
|
indexDictEntity = indexDicMap.get(level4Index); |
|
|
|
|
|
|
|
IndexGroupTemplateEntity group2 = indexGroupMap.get(index.getLevel1Index()+level4Index); |
|
|
|
IndexGroupTemplateEntity group2 = indexGroupMap.get(index.getLevel1Index() + level4Index); |
|
|
|
IndexGroupDetailTemplateEntity templateEntity = null; |
|
|
|
if (group2 == null) { |
|
|
|
group2 = new IndexGroupTemplateEntity(); |
|
|
|
group2.setIndexId(indexDictEntity.getId()); |
|
|
|
group2.setParentIndexGroupId(group1.getId()); |
|
|
|
group2.setId(UniqueIdGenerator.generate()); |
|
|
|
group2.setIndexCode(Pinyin4jUtil.getSpellPinYin(indexDictEntity.getIndexName(),false,4 )); |
|
|
|
indexGroupMap.put(index.getLevel1Index()+level4Index, group2); |
|
|
|
group2.setIndexCode(Pinyin4jUtil.getSpellPinYin(indexDictEntity.getIndexName(), false, 4)); |
|
|
|
indexGroupMap.put(index.getLevel1Index() + level4Index, group2); |
|
|
|
//构建 分组明细
|
|
|
|
templateEntity = indexGroupDetailMap.get(index.getLevel1Index()+level4Index); |
|
|
|
templateEntity = indexGroupDetailMap.get(index.getLevel1Index() + level4Index); |
|
|
|
if (templateEntity == null) { |
|
|
|
templateEntity = new IndexGroupDetailTemplateEntity(); |
|
|
|
templateEntity = new IndexGroupDetailTemplateEntity(); |
|
|
|
templateEntity.setIndexGroupId(group1.getId()); |
|
|
|
templateEntity.setIndexId(indexDictEntity.getId()); |
|
|
|
templateEntity.setAllParentIndexCode(allIndexCodeSb.toString()); |
|
|
|
templateEntity.setId(UniqueIdGenerator.generate()); |
|
|
|
templateEntity.setCorrelation(index.getCorrelation()); |
|
|
|
buildIndexGroupDetail(templateEntity,indexDictEntity, index, group1, 2); |
|
|
|
indexGroupDetailMap.put(index.getLevel1Index()+level4Index,templateEntity); |
|
|
|
buildIndexGroupDetail(templateEntity, indexDictEntity, index, 2); |
|
|
|
indexGroupDetailMap.put(index.getLevel1Index() + level4Index, templateEntity); |
|
|
|
} |
|
|
|
} |
|
|
|
indexDictEntity = indexDicMap.get(index.getLevel5Index()); |
|
|
|
|
|
|
|
allIndexCodeSb.append(StrConstant.COLON); |
|
|
|
allIndexCodeSb.append(group2.getIndexCode()); |
|
|
|
templateEntity = indexGroupDetailMap.get(index.getLevel1Index()+index.getLevel5Index()); |
|
|
|
templateEntity = indexGroupDetailMap.get(index.getLevel1Index() + index.getLevel5Index()); |
|
|
|
if (templateEntity == null) { |
|
|
|
templateEntity = new IndexGroupDetailTemplateEntity(); |
|
|
|
templateEntity = new IndexGroupDetailTemplateEntity(); |
|
|
|
templateEntity.setIndexGroupId(group2.getId()); |
|
|
|
templateEntity.setIndexId(indexDictEntity.getId()); |
|
|
|
templateEntity.setAllParentIndexCode(allIndexCodeSb.toString()); |
|
|
|
templateEntity.setId(UniqueIdGenerator.generate()); |
|
|
|
templateEntity.setCorrelation(index.getCorrelation()); |
|
|
|
buildIndexGroupDetail(templateEntity,indexDictEntity, index, group2, 5); |
|
|
|
indexGroupDetailMap.put(index.getLevel1Index()+index.getLevel5Index(),templateEntity); |
|
|
|
buildIndexGroupDetail(templateEntity, indexDictEntity, index, 5); |
|
|
|
indexGroupDetailMap.put(index.getLevel1Index() + index.getLevel5Index(), templateEntity); |
|
|
|
} |
|
|
|
} else { |
|
|
|
//todo 测试完去掉
|
|
|
@ -177,7 +177,7 @@ public class IndexExcelDataListener extends AnalysisEventListener<IndexModel> { |
|
|
|
group1.setIndexId(indexDictEntity.getId()); |
|
|
|
group1.setParentIndexGroupId("0"); |
|
|
|
group1.setId(UniqueIdGenerator.generate()); |
|
|
|
group1.setIndexCode(Pinyin4jUtil.getSpellPinYin(indexDictEntity.getIndexName(),false,4 )); |
|
|
|
group1.setIndexCode(Pinyin4jUtil.getSpellPinYin(indexDictEntity.getIndexName(), false, 4)); |
|
|
|
indexGroupMap.put(index.getLevel1Index(), group1); |
|
|
|
} |
|
|
|
StringBuilder allIndexCodeSb = new StringBuilder(group1.getIndexCode()); |
|
|
@ -191,35 +191,35 @@ public class IndexExcelDataListener extends AnalysisEventListener<IndexModel> { |
|
|
|
group2.setIndexId(indexDictEntity.getId()); |
|
|
|
group2.setParentIndexGroupId(group1.getId()); |
|
|
|
group2.setId(UniqueIdGenerator.generate()); |
|
|
|
group2.setIndexCode(Pinyin4jUtil.getSpellPinYin(indexDictEntity.getIndexName(),false,4 )); |
|
|
|
group2.setIndexCode(Pinyin4jUtil.getSpellPinYin(indexDictEntity.getIndexName(), false, 4)); |
|
|
|
|
|
|
|
indexGroupMap.put(groupMapKey, group2); |
|
|
|
//构建 分组明细
|
|
|
|
templateEntity = indexGroupDetailMap.get(level2Index); |
|
|
|
if (templateEntity == null) { |
|
|
|
templateEntity = new IndexGroupDetailTemplateEntity(); |
|
|
|
templateEntity = new IndexGroupDetailTemplateEntity(); |
|
|
|
templateEntity.setIndexGroupId(group2.getId()); |
|
|
|
templateEntity.setIndexId(indexDictEntity.getId()); |
|
|
|
templateEntity.setAllParentIndexCode(allIndexCodeSb.toString()); |
|
|
|
templateEntity.setId(UniqueIdGenerator.generate()); |
|
|
|
templateEntity.setCorrelation(index.getCorrelation()); |
|
|
|
buildIndexGroupDetail(templateEntity,indexDictEntity, index, group1, 2); |
|
|
|
indexGroupDetailMap.put(level2Index,templateEntity); |
|
|
|
buildIndexGroupDetail(templateEntity, indexDictEntity, index, 2); |
|
|
|
indexGroupDetailMap.put(groupMapKey, templateEntity); |
|
|
|
} |
|
|
|
} |
|
|
|
indexDictEntity = indexDicMap.get(index.getLevel5Index()); |
|
|
|
allIndexCodeSb.append(StrConstant.COLON); |
|
|
|
allIndexCodeSb.append(group2.getIndexCode()); |
|
|
|
templateEntity = indexGroupDetailMap.get(index.getLevel1Index()+index.getLevel5Index()); |
|
|
|
templateEntity = indexGroupDetailMap.get(index.getLevel1Index() + index.getLevel5Index()); |
|
|
|
if (templateEntity == null) { |
|
|
|
templateEntity = new IndexGroupDetailTemplateEntity(); |
|
|
|
templateEntity = new IndexGroupDetailTemplateEntity(); |
|
|
|
templateEntity.setIndexGroupId(group2.getId()); |
|
|
|
templateEntity.setIndexId(indexDictEntity.getId()); |
|
|
|
templateEntity.setAllParentIndexCode(allIndexCodeSb.toString()); |
|
|
|
templateEntity.setId(UniqueIdGenerator.generate()); |
|
|
|
templateEntity.setCorrelation(index.getCorrelation()); |
|
|
|
buildIndexGroupDetail(templateEntity, indexDictEntity, index, group2, 5); |
|
|
|
indexGroupDetailMap.put(index.getLevel1Index()+index.getLevel5Index(),templateEntity); |
|
|
|
buildIndexGroupDetail(templateEntity, indexDictEntity, index, 5); |
|
|
|
indexGroupDetailMap.put(index.getLevel1Index() + index.getLevel5Index(), templateEntity); |
|
|
|
} |
|
|
|
} |
|
|
|
//}
|
|
|
@ -228,13 +228,13 @@ public class IndexExcelDataListener extends AnalysisEventListener<IndexModel> { |
|
|
|
LOGGER.info("所有指标分组明细数据解析完成:{}", JSON.toJSONString(indexGroupDetailMap.values())); |
|
|
|
} |
|
|
|
|
|
|
|
private void buildIndexGroupDetail( IndexGroupDetailTemplateEntity templateEntity,IndexDictEntity indexDictEntity, IndexModel index, IndexGroupTemplateEntity parentGroup, Integer level) { |
|
|
|
private void buildIndexGroupDetail(IndexGroupDetailTemplateEntity templateEntity, IndexDictEntity indexDictEntity, IndexModel index, Integer level) { |
|
|
|
if (level == 5) { |
|
|
|
templateEntity.setIndexCode(Pinyin4jUtil.getSpellPinYin(index.getLevel5Index(),false,4 )); |
|
|
|
templateEntity.setIndexCode(Pinyin4jUtil.getSpellPinYin(index.getLevel5Index(), false, 4)); |
|
|
|
String level5WeightStr = index.getLevel5Weight().replace("%", ""); |
|
|
|
templateEntity.setWeight(new BigDecimal(level5WeightStr).divide(new BigDecimal(100), 4, RoundingMode.HALF_UP)); |
|
|
|
} else { |
|
|
|
templateEntity.setIndexCode(Pinyin4jUtil.getSpellPinYin(indexDictEntity.getIndexName(),false,4 )); |
|
|
|
templateEntity.setIndexCode(Pinyin4jUtil.getSpellPinYin(indexDictEntity.getIndexName(), false, 4)); |
|
|
|
templateEntity.setWeight(new BigDecimal(index.getWeight()).divide(new BigDecimal(100), 4, RoundingMode.HALF_UP)); |
|
|
|
} |
|
|
|
|
|
|
|