达梦兼容调整
This commit is contained in:
@@ -4,7 +4,7 @@
|
|||||||
|
|
||||||
<select id="getLineIntegrityRate" resultType="LineDataIntegrity">
|
<select id="getLineIntegrityRate" resultType="LineDataIntegrity">
|
||||||
select line_index lineId,
|
select line_index lineId,
|
||||||
avg(real_time/due_time)*100 integrityData,
|
avg(real_time*1.0/due_time)*100 integrityData,
|
||||||
sum(real_time) mysqlReal,
|
sum(real_time) mysqlReal,
|
||||||
sum(due_time) due
|
sum(due_time) due
|
||||||
from r_stat_integrity_d
|
from r_stat_integrity_d
|
||||||
@@ -44,7 +44,7 @@
|
|||||||
<select id="getOnIntegrityByIdsAndTime" resultType="com.njcn.device.pq.pojo.vo.RStatIntegrityVO">
|
<select id="getOnIntegrityByIdsAndTime" resultType="com.njcn.device.pq.pojo.vo.RStatIntegrityVO">
|
||||||
SELECT
|
SELECT
|
||||||
line_index AS lineIndex,
|
line_index AS lineIndex,
|
||||||
sum( real_time )/ sum( due_time )* 100 AS integrityRate
|
sum( real_time*1.0 )/ sum( due_time )* 100 AS integrityRate
|
||||||
FROM
|
FROM
|
||||||
r_stat_integrity_d
|
r_stat_integrity_d
|
||||||
<where>
|
<where>
|
||||||
@@ -65,7 +65,7 @@
|
|||||||
</select>
|
</select>
|
||||||
<select id="selectTotalIntegrityByLineIds" resultType="java.lang.Float">
|
<select id="selectTotalIntegrityByLineIds" resultType="java.lang.Float">
|
||||||
select
|
select
|
||||||
if(sum(real_time)/sum(due_time)*100>100,
|
if(sum(real_time*1.0)/sum(due_time)*100>100,
|
||||||
100,
|
100,
|
||||||
IFNULL(ROUND( sum(real_time)/sum(due_time)*100,2),0))
|
IFNULL(ROUND( sum(real_time)/sum(due_time)*100,2),0))
|
||||||
as integrityRate
|
as integrityRate
|
||||||
|
|||||||
@@ -118,7 +118,13 @@ public class CustomReportServiceImpl implements CustomReportService {
|
|||||||
private final WlRecordFeignClient wlRecordFeignClient;
|
private final WlRecordFeignClient wlRecordFeignClient;
|
||||||
|
|
||||||
private final ExecutorService executorService = Executors.newFixedThreadPool(Runtime.getRuntime().availableProcessors() + 1);
|
private final ExecutorService executorService = Executors.newFixedThreadPool(Runtime.getRuntime().availableProcessors() + 1);
|
||||||
|
|
||||||
|
private final String CELL_DATA = "celldata";
|
||||||
|
private final String V = "v";
|
||||||
|
private final String STR_ONE = "#";
|
||||||
|
private final String STR_TWO = "$";
|
||||||
|
private final String STR_THREE = "&";
|
||||||
|
private final String STR_FOUR = "%";
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void getCustomReport(ReportSearchParam reportSearchParam, HttpServletResponse response) {
|
public void getCustomReport(ReportSearchParam reportSearchParam, HttpServletResponse response) {
|
||||||
@@ -329,10 +335,10 @@ public class CustomReportServiceImpl implements CustomReportService {
|
|||||||
if (val.get(0).getHarmStart() == 1) {
|
if (val.get(0).getHarmStart() == 1) {
|
||||||
count = i + 0.5;
|
count = i + 0.5;
|
||||||
reportTreeItem.setShowName(count + "次" + val.get(0).getShowName());
|
reportTreeItem.setShowName(count + "次" + val.get(0).getShowName());
|
||||||
reportTreeItem.setName("%" + one + count + "#" + val.get(0).getFormula() + "#" + val.get(0).getLimitTable() + "%");
|
reportTreeItem.setName(STR_FOUR + one + count + STR_ONE + val.get(0).getFormula() + STR_ONE + val.get(0).getLimitTable() + STR_FOUR);
|
||||||
} else {
|
} else {
|
||||||
reportTreeItem.setShowName(i + "次" + val.get(0).getShowName());
|
reportTreeItem.setShowName(i + "次" + val.get(0).getShowName());
|
||||||
reportTreeItem.setName("%" + one + i + "#" + val.get(0).getFormula() + "#" + val.get(0).getLimitTable() + "%");
|
reportTreeItem.setName(STR_FOUR + one + i + STR_ONE + val.get(0).getFormula() + STR_ONE + val.get(0).getLimitTable() + STR_FOUR);
|
||||||
}
|
}
|
||||||
|
|
||||||
reportTreeItem.setFlag(1);
|
reportTreeItem.setFlag(1);
|
||||||
@@ -340,7 +346,7 @@ public class CustomReportServiceImpl implements CustomReportService {
|
|||||||
}
|
}
|
||||||
reportTreeVO.setChildren(temList);
|
reportTreeVO.setChildren(temList);
|
||||||
} else {
|
} else {
|
||||||
reportTreeVO.setName("%" + val.get(0).getLimitName() + "#" + val.get(0).getLimitTable() + "%" + val.get(0).getFormula() + "%");
|
reportTreeVO.setName(STR_FOUR + val.get(0).getLimitName() + STR_ONE + val.get(0).getLimitTable() + STR_FOUR + val.get(0).getFormula() + STR_FOUR);
|
||||||
reportTreeVO.setFlag(1);
|
reportTreeVO.setFlag(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -359,7 +365,7 @@ public class CustomReportServiceImpl implements CustomReportService {
|
|||||||
list.forEach(item -> {
|
list.forEach(item -> {
|
||||||
ReportTreeVO reportTreeVO = new ReportTreeVO();
|
ReportTreeVO reportTreeVO = new ReportTreeVO();
|
||||||
reportTreeVO.setId(item.getId());
|
reportTreeVO.setId(item.getId());
|
||||||
reportTreeVO.setName("&" + item.getName() + "&");
|
reportTreeVO.setName(STR_THREE + item.getName() + STR_THREE);
|
||||||
reportTreeVO.setFlag(1);
|
reportTreeVO.setFlag(1);
|
||||||
reportTreeVO.setShowName(item.getShowName());
|
reportTreeVO.setShowName(item.getShowName());
|
||||||
result.add(reportTreeVO);
|
result.add(reportTreeVO);
|
||||||
@@ -402,14 +408,14 @@ public class CustomReportServiceImpl implements CustomReportService {
|
|||||||
ReportTreeVO reportTreeStat = new ReportTreeVO();
|
ReportTreeVO reportTreeStat = new ReportTreeVO();
|
||||||
String tem = "";
|
String tem = "";
|
||||||
if (Objects.nonNull(item.getLimitName())) {
|
if (Objects.nonNull(item.getLimitName())) {
|
||||||
tem = "#" + item.getLimitName();
|
tem = STR_ONE + item.getLimitName();
|
||||||
} else {
|
} else {
|
||||||
tem = "#NO";
|
tem = "#NO";
|
||||||
}
|
}
|
||||||
if (StrUtil.isNotBlank(twoKey)) {
|
if (StrUtil.isNotBlank(twoKey)) {
|
||||||
reportTreeStat.setName("$" + oneKey + "#" + twoKey + "#" + statItem + "#" + item.getResourcesId().trim() + tem.trim() + "$");
|
reportTreeStat.setName(STR_TWO + oneKey + STR_ONE + twoKey + STR_ONE + statItem + STR_ONE + item.getResourcesId().trim() + tem.trim() + STR_TWO);
|
||||||
} else {
|
} else {
|
||||||
reportTreeStat.setName("$" + oneKey + "#" + statItem + "#" + item.getResourcesId().trim() + tem.trim() + "$");
|
reportTreeStat.setName(STR_TWO + oneKey + STR_ONE + statItem + STR_ONE + item.getResourcesId().trim() + tem.trim() + STR_TWO);
|
||||||
}
|
}
|
||||||
|
|
||||||
reportTreeStat.setShowName(statItem);
|
reportTreeStat.setShowName(statItem);
|
||||||
@@ -490,11 +496,11 @@ public class CustomReportServiceImpl implements CustomReportService {
|
|||||||
}
|
}
|
||||||
//三项不平衡度
|
//三项不平衡度
|
||||||
if (s.equals(DicDataEnum.UNBALANCE.getCode())) {
|
if (s.equals(DicDataEnum.UNBALANCE.getCode())) {
|
||||||
unit.put(s + "#v", "%");
|
unit.put(s + "#v", STR_FOUR);
|
||||||
unit.put(s + "#vPos", deviceUnit.getPositiveV());
|
unit.put(s + "#vPos", deviceUnit.getPositiveV());
|
||||||
unit.put(s + "#vNeg", deviceUnit.getNoPositiveV());
|
unit.put(s + "#vNeg", deviceUnit.getNoPositiveV());
|
||||||
unit.put(s + "#vZero", deviceUnit.getNoPositiveV());
|
unit.put(s + "#vZero", deviceUnit.getNoPositiveV());
|
||||||
unit.put(s + "#i", "%");
|
unit.put(s + "#i", STR_FOUR);
|
||||||
unit.put(s + "#iPos", "A");
|
unit.put(s + "#iPos", "A");
|
||||||
unit.put(s + "#iNeg", "A");
|
unit.put(s + "#iNeg", "A");
|
||||||
unit.put(s + "#iZero", "A");
|
unit.put(s + "#iZero", "A");
|
||||||
@@ -640,7 +646,7 @@ public class CustomReportServiceImpl implements CustomReportService {
|
|||||||
|
|
||||||
//判断是否越限
|
//判断是否越限
|
||||||
if (limitMap.size() != 0) {
|
if (limitMap.size() != 0) {
|
||||||
String key = item.getLimitName() + "#" + item.getStatMethod().toLowerCase() + "#pq_overlimit";
|
String key = item.getLimitName() + STR_ONE + item.getStatMethod().toLowerCase() + "#pq_overlimit";
|
||||||
if (limitMap.containsKey(key)) {
|
if (limitMap.containsKey(key)) {
|
||||||
ReportTemplateDTO tem = limitMap.get(key);
|
ReportTemplateDTO tem = limitMap.get(key);
|
||||||
double limitVal = Double.parseDouble(tem.getValue());
|
double limitVal = Double.parseDouble(tem.getValue());
|
||||||
@@ -781,7 +787,7 @@ public class CustomReportServiceImpl implements CustomReportService {
|
|||||||
|
|
||||||
//判断是否越限
|
//判断是否越限
|
||||||
if (!limitMap.isEmpty()) {
|
if (!limitMap.isEmpty()) {
|
||||||
String key = item.getLimitName() + "#" + item.getStatMethod() + "#PQ_OVERLIMIT";
|
String key = item.getLimitName() + STR_ONE + item.getStatMethod() + "#PQ_OVERLIMIT";
|
||||||
if (limitMap.containsKey(key)) {
|
if (limitMap.containsKey(key)) {
|
||||||
ReportTemplateDTO tem = limitMap.get(key);
|
ReportTemplateDTO tem = limitMap.get(key);
|
||||||
double limitVal = Double.parseDouble(tem.getValue());
|
double limitVal = Double.parseDouble(tem.getValue());
|
||||||
@@ -891,8 +897,6 @@ public class CustomReportServiceImpl implements CustomReportService {
|
|||||||
//处理指标最终判定合格还是不合格
|
//处理指标最终判定合格还是不合格
|
||||||
dealTargetResult(assNoPassMap, limitTargetMapX, endList);
|
dealTargetResult(assNoPassMap, limitTargetMapX, endList);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (CollUtil.isNotEmpty(endList)) {
|
if (CollUtil.isNotEmpty(endList)) {
|
||||||
//数据单位信息
|
//数据单位信息
|
||||||
Map<String, String> unit = unitMap(reportSearchParam);
|
Map<String, String> unit = unitMap(reportSearchParam);
|
||||||
@@ -910,47 +914,47 @@ public class CustomReportServiceImpl implements CustomReportService {
|
|||||||
//2、把itemName的value赋给v和m
|
//2、把itemName的value赋给v和m
|
||||||
jsonArray.forEach(item -> {
|
jsonArray.forEach(item -> {
|
||||||
JSONObject jsonObject = (JSONObject) item;
|
JSONObject jsonObject = (JSONObject) item;
|
||||||
JSONArray itemArr = (JSONArray) jsonObject.get("celldata");
|
JSONArray itemArr = (JSONArray) jsonObject.get(CELL_DATA);
|
||||||
itemArr.forEach((it) -> {
|
itemArr.forEach((it) -> {
|
||||||
if (Objects.nonNull(it) && !"null".equals(it.toString())) {
|
if (Objects.nonNull(it) && !"null".equals(it.toString())) {
|
||||||
//获取到1列
|
//获取到1列
|
||||||
JSONObject data = (JSONObject) it;
|
JSONObject data = (JSONObject) it;
|
||||||
JSONObject son = (JSONObject) data.get("v");
|
JSONObject son = (JSONObject) data.get(V);
|
||||||
if (son.containsKey("v")) {
|
if (son.containsKey(V)) {
|
||||||
String v = son.getStr("v");
|
String v = son.getStr(V);
|
||||||
//数据格式:$HA[_25]#B#max#classId$ 或 $HA[_25]#max#classId$
|
//数据格式:$HA[_25]#B#max#classId$ 或 $HA[_25]#max#classId$
|
||||||
if (v.charAt(0) == '$' && v.contains("#")) {
|
if (v.charAt(0) == '$' && v.contains(STR_ONE)) {
|
||||||
String str = "";
|
String str = "";
|
||||||
List<ReportTemplateDTO> rDto = assMap.get(v.replace("$", "").toUpperCase());
|
List<ReportTemplateDTO> rDto = assMap.get(v.replace(STR_TWO, "").toUpperCase());
|
||||||
if (Objects.nonNull(rDto)) {
|
if (Objects.nonNull(rDto)) {
|
||||||
str = rDto.get(0).getValue();
|
str = rDto.get(0).getValue();
|
||||||
//没有值,赋"/"
|
//没有值,赋"/"
|
||||||
if (StringUtils.isBlank(str)) {
|
if (StringUtils.isBlank(str)) {
|
||||||
str = "/";
|
str = "/";
|
||||||
}
|
}
|
||||||
son.set("v", str);
|
son.set(V, str);
|
||||||
if (Objects.nonNull(rDto.get(0).getOverLimitFlag()) && rDto.get(0).getOverLimitFlag() == 1) {
|
if (Objects.nonNull(rDto.get(0).getOverLimitFlag()) && rDto.get(0).getOverLimitFlag() == 1) {
|
||||||
son.set("fc", "#990000");
|
son.set("fc", "#990000");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if (v.charAt(0) == '%' && v.contains("#")) {
|
} else if (v.charAt(0) == '%' && v.contains(STR_ONE)) {
|
||||||
//指标合格情况
|
//指标合格情况
|
||||||
String str = "";
|
String str = "";
|
||||||
List<ReportTemplateDTO> rDto = assMap.get(v.replace("%", "").toUpperCase());
|
List<ReportTemplateDTO> rDto = assMap.get(v.replace(STR_FOUR, "").toUpperCase());
|
||||||
if (Objects.nonNull(rDto)) {
|
if (Objects.nonNull(rDto)) {
|
||||||
str = rDto.get(0).getValue();
|
str = rDto.get(0).getValue();
|
||||||
//没有值,赋"/"
|
//没有值,赋"/"
|
||||||
if (StringUtils.isBlank(str)) {
|
if (StringUtils.isBlank(str)) {
|
||||||
str = "/";
|
str = "/";
|
||||||
}
|
}
|
||||||
son.set("v", str);
|
son.set(V, str);
|
||||||
if ("不合格".equals(str)) {
|
if ("不合格".equals(str)) {
|
||||||
son.set("fc", "#990000");
|
son.set("fc", "#990000");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if (v.charAt(0) == '&') {
|
} else if (v.charAt(0) == '&') {
|
||||||
//结论
|
//结论
|
||||||
String tem = v.replace("&", "").toUpperCase();
|
String tem = v.replace(STR_THREE, "").toUpperCase();
|
||||||
if (Objects.nonNull(finalTerminalMap)) {
|
if (Objects.nonNull(finalTerminalMap)) {
|
||||||
if ("STATIS_TIME".equals(tem)) {
|
if ("STATIS_TIME".equals(tem)) {
|
||||||
//如何时间是大于当前时间则用当前时间
|
//如何时间是大于当前时间则用当前时间
|
||||||
@@ -958,21 +962,21 @@ public class CustomReportServiceImpl implements CustomReportService {
|
|||||||
LocalDate localDate = LocalDateTimeUtil.parseDate(reportSearchParam.getEndTime(), DatePattern.NORM_DATE_PATTERN);
|
LocalDate localDate = LocalDateTimeUtil.parseDate(reportSearchParam.getEndTime(), DatePattern.NORM_DATE_PATTERN);
|
||||||
LocalDate nowDate = LocalDate.now();
|
LocalDate nowDate = LocalDate.now();
|
||||||
if (nowDate.isAfter(localDate)) {
|
if (nowDate.isAfter(localDate)) {
|
||||||
son.set("v", reportSearchParam.getStartTime() + InfluxDbSqlConstant.START_TIME + "_" + reportSearchParam.getEndTime() + localTime);
|
son.set(V, reportSearchParam.getStartTime() + InfluxDbSqlConstant.START_TIME + "_" + reportSearchParam.getEndTime() + localTime);
|
||||||
} else {
|
} else {
|
||||||
localTime = " " + LocalTime.now().format(DatePattern.NORM_TIME_FORMATTER);
|
localTime = " " + LocalTime.now().format(DatePattern.NORM_TIME_FORMATTER);
|
||||||
son.set("v", reportSearchParam.getStartTime() + InfluxDbSqlConstant.START_TIME + "_" + nowDate + localTime);
|
son.set(V, reportSearchParam.getStartTime() + InfluxDbSqlConstant.START_TIME + "_" + nowDate + localTime);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
//台账信息
|
//台账信息
|
||||||
son.set("v", finalTerminalMap.getOrDefault(tem, "/"));
|
son.set(V, finalTerminalMap.getOrDefault(tem, "/"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//解决数据单位问题 @指标#类型@
|
//解决数据单位问题 @指标#类型@
|
||||||
if (v.charAt(0) == '@' && v.contains("#")) {
|
if (v.charAt(0) == '@' && v.contains(STR_ONE)) {
|
||||||
String replace = v.replace("@", "");
|
String replace = v.replace("@", "");
|
||||||
son.set("v", unit.getOrDefault(replace, "/"));
|
son.set(V, unit.getOrDefault(replace, "/"));
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -995,23 +999,23 @@ public class CustomReportServiceImpl implements CustomReportService {
|
|||||||
//通过文件服务器获取
|
//通过文件服务器获取
|
||||||
jsonArray.forEach(item -> {
|
jsonArray.forEach(item -> {
|
||||||
JSONObject jsonObject = (JSONObject) item;
|
JSONObject jsonObject = (JSONObject) item;
|
||||||
JSONArray itemArr = (JSONArray) jsonObject.get("celldata");
|
JSONArray itemArr = (JSONArray) jsonObject.get(CELL_DATA);
|
||||||
itemArr.forEach((it) -> {
|
itemArr.forEach((it) -> {
|
||||||
if (Objects.nonNull(it) && !"null".equals(it.toString())) {
|
if (Objects.nonNull(it) && !"null".equals(it.toString())) {
|
||||||
//获取到1列
|
//获取到1列
|
||||||
JSONObject data = (JSONObject) it;
|
JSONObject data = (JSONObject) it;
|
||||||
JSONObject son = (JSONObject) data.get("v");
|
JSONObject son = (JSONObject) data.get(V);
|
||||||
if (son.containsKey("v")) {
|
if (son.containsKey(V)) {
|
||||||
String v = son.getStr("v");
|
String v = son.getStr(V);
|
||||||
//数据格式:$HA[_25]#B#max#classId$ 或 $HA[_25]#max#classId$
|
//数据格式:$HA[_25]#B#max#classId$ 或 $HA[_25]#max#classId$
|
||||||
if (v.charAt(0) == '$' && v.contains("#")) {
|
if (v.charAt(0) == '$' && v.contains(STR_ONE)) {
|
||||||
//剔除前后$
|
//剔除前后$
|
||||||
v = v.replace("$", "");
|
v = v.replace(STR_TWO, "");
|
||||||
//封装ReportTemplateDTO
|
//封装ReportTemplateDTO
|
||||||
ReportTemplateDTO reportTemplateDTO = new ReportTemplateDTO();
|
ReportTemplateDTO reportTemplateDTO = new ReportTemplateDTO();
|
||||||
reportTemplateDTO.setItemName(v.toUpperCase());
|
reportTemplateDTO.setItemName(v.toUpperCase());
|
||||||
//根据#分割数据
|
//根据#分割数据
|
||||||
String[] vItem = v.split("#");
|
String[] vItem = v.split(STR_ONE);
|
||||||
if (vItem.length == 5) {
|
if (vItem.length == 5) {
|
||||||
//$HA[_25]#B#max#classId$
|
//$HA[_25]#B#max#classId$
|
||||||
reportTemplateDTO.setTemplateName(vItem[0].toUpperCase());
|
reportTemplateDTO.setTemplateName(vItem[0].toUpperCase());
|
||||||
@@ -1029,13 +1033,13 @@ public class CustomReportServiceImpl implements CustomReportService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
reportTemplateDTOList.add(reportTemplateDTO);
|
reportTemplateDTOList.add(reportTemplateDTO);
|
||||||
} else if (v.charAt(0) == '%' && v.contains("#")) {
|
} else if (v.charAt(0) == '%' && v.contains(STR_ONE)) {
|
||||||
//封装ReportTemplateDTO
|
//封装ReportTemplateDTO
|
||||||
ReportTemplateDTO reportTemplateDTO = new ReportTemplateDTO();
|
ReportTemplateDTO reportTemplateDTO = new ReportTemplateDTO();
|
||||||
v = v.replace("%", "");
|
v = v.replace(STR_FOUR, "");
|
||||||
reportTemplateDTO.setItemName(v.toUpperCase());
|
reportTemplateDTO.setItemName(v.toUpperCase());
|
||||||
//根据#分割数据
|
//根据#分割数据
|
||||||
String[] vItem = v.split("#");
|
String[] vItem = v.split(STR_ONE);
|
||||||
if (vItem.length == 3) {
|
if (vItem.length == 3) {
|
||||||
//$HA[_25]#B#max#classId$
|
//$HA[_25]#B#max#classId$
|
||||||
reportTemplateDTO.setTemplateName(vItem[0].toUpperCase());
|
reportTemplateDTO.setTemplateName(vItem[0].toUpperCase());
|
||||||
@@ -1046,7 +1050,7 @@ public class CustomReportServiceImpl implements CustomReportService {
|
|||||||
} else if (v.charAt(0) == '&') {
|
} else if (v.charAt(0) == '&') {
|
||||||
//封装ReportTemplateDTO
|
//封装ReportTemplateDTO
|
||||||
ReportTemplateDTO reportTemplateDTO = new ReportTemplateDTO();
|
ReportTemplateDTO reportTemplateDTO = new ReportTemplateDTO();
|
||||||
v = v.replace("&", "");
|
v = v.replace(STR_THREE, "");
|
||||||
reportTemplateDTO.setItemName(v.toUpperCase());
|
reportTemplateDTO.setItemName(v.toUpperCase());
|
||||||
reportTemplateDTO.setTemplateName(v.toUpperCase());
|
reportTemplateDTO.setTemplateName(v.toUpperCase());
|
||||||
terminalList.add(reportTemplateDTO);
|
terminalList.add(reportTemplateDTO);
|
||||||
@@ -1334,7 +1338,7 @@ public class CustomReportServiceImpl implements CustomReportService {
|
|||||||
if (Objects.nonNull(entry.getValue()) && !entry.getKey().equals("time")) {
|
if (Objects.nonNull(entry.getValue()) && !entry.getKey().equals("time")) {
|
||||||
String key = entry.getKey();
|
String key = entry.getKey();
|
||||||
double val = (double) entry.getValue();
|
double val = (double) entry.getValue();
|
||||||
String zi = key.substring(0, key.indexOf("#"));
|
String zi = key.substring(0, key.indexOf(STR_ONE));
|
||||||
String[] temStrArr = zi.split("_");
|
String[] temStrArr = zi.split("_");
|
||||||
boolean flag = isInteger(temStrArr[temStrArr.length-1]);
|
boolean flag = isInteger(temStrArr[temStrArr.length-1]);
|
||||||
if(flag){
|
if(flag){
|
||||||
@@ -1377,7 +1381,7 @@ public class CustomReportServiceImpl implements CustomReportService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
//结论判断是否越限
|
//结论判断是否越限
|
||||||
String key = item.getLimitName() + "#" + item.getStatMethod().toLowerCase() + "#pq_overlimit";
|
String key = item.getLimitName() + STR_ONE + item.getStatMethod().toLowerCase() + "#pq_overlimit";
|
||||||
if (limitMap.containsKey(key)) {
|
if (limitMap.containsKey(key)) {
|
||||||
ReportTemplateDTO tem = limitMap.get(key);
|
ReportTemplateDTO tem = limitMap.get(key);
|
||||||
double limitVal = Double.parseDouble(tem.getValue());
|
double limitVal = Double.parseDouble(tem.getValue());
|
||||||
@@ -1476,59 +1480,59 @@ public class CustomReportServiceImpl implements CustomReportService {
|
|||||||
jsonArray, Map<String, List<ReportTemplateDTO>> assMap, Map<String, String> unit,Map<String,String> finalTerminalMap) {
|
jsonArray, Map<String, List<ReportTemplateDTO>> assMap, Map<String, String> unit,Map<String,String> finalTerminalMap) {
|
||||||
jsonArray.forEach(item -> {
|
jsonArray.forEach(item -> {
|
||||||
JSONObject jsonObject = (JSONObject) item;
|
JSONObject jsonObject = (JSONObject) item;
|
||||||
JSONArray itemArr = (JSONArray) jsonObject.get("celldata");
|
JSONArray itemArr = (JSONArray) jsonObject.get(CELL_DATA);
|
||||||
itemArr.forEach((it) -> {
|
itemArr.forEach((it) -> {
|
||||||
if (Objects.nonNull(it) && !"null".equals(it.toString())) {
|
if (Objects.nonNull(it) && !"null".equals(it.toString())) {
|
||||||
//获取到1列
|
//获取到1列
|
||||||
JSONObject data = (JSONObject) it;
|
JSONObject data = (JSONObject) it;
|
||||||
JSONObject son = (JSONObject) data.get("v");
|
JSONObject son = (JSONObject) data.get(V);
|
||||||
if (son.containsKey("v")) {
|
if (son.containsKey(V)) {
|
||||||
String v = son.getStr("v");
|
String v = son.getStr(V);
|
||||||
//数据格式:$HA[_25]#B#max#classId$ 或 $HA[_25]#max#classId$
|
//数据格式:$HA[_25]#B#max#classId$ 或 $HA[_25]#max#classId$
|
||||||
if (v.charAt(0) == '$' && v.contains("#")) {
|
if (v.charAt(0) == '$' && v.contains(STR_ONE)) {
|
||||||
String str = "";
|
String str = "";
|
||||||
List<ReportTemplateDTO> rDto = assMap.get(v.replace("$", ""));
|
List<ReportTemplateDTO> rDto = assMap.get(v.replace(STR_TWO, ""));
|
||||||
if (Objects.nonNull(rDto)) {
|
if (Objects.nonNull(rDto)) {
|
||||||
str = rDto.get(0).getValue();
|
str = rDto.get(0).getValue();
|
||||||
//没有值,赋"/"
|
//没有值,赋"/"
|
||||||
if (StringUtils.isBlank(str)) {
|
if (StringUtils.isBlank(str)) {
|
||||||
str = "/";
|
str = "/";
|
||||||
}
|
}
|
||||||
son.set("v", str);
|
son.set(V, str);
|
||||||
if (Objects.nonNull(rDto.get(0).getOverLimitFlag()) && rDto.get(0).getOverLimitFlag() == 1) {
|
if (Objects.nonNull(rDto.get(0).getOverLimitFlag()) && rDto.get(0).getOverLimitFlag() == 1) {
|
||||||
son.set("fc", "#990000");
|
son.set("fc", "#990000");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if (v.charAt(0) == '%' && v.contains("#")) {
|
} else if (v.charAt(0) == '%' && v.contains(STR_ONE)) {
|
||||||
//指标合格情况
|
//指标合格情况
|
||||||
String str = "";
|
String str = "";
|
||||||
List<ReportTemplateDTO> rDto = assMap.get(v.replace("%", ""));
|
List<ReportTemplateDTO> rDto = assMap.get(v.replace(STR_FOUR, ""));
|
||||||
if (Objects.nonNull(rDto)) {
|
if (Objects.nonNull(rDto)) {
|
||||||
str = rDto.get(0).getValue();
|
str = rDto.get(0).getValue();
|
||||||
//没有值,赋"/"
|
//没有值,赋"/"
|
||||||
if (StringUtils.isBlank(str)) {
|
if (StringUtils.isBlank(str)) {
|
||||||
str = "/";
|
str = "/";
|
||||||
}
|
}
|
||||||
son.set("v", str);
|
son.set(V, str);
|
||||||
if ("不合格".equals(str)) {
|
if ("不合格".equals(str)) {
|
||||||
son.set("fc", "#990000");
|
son.set("fc", "#990000");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if (v.charAt(0) == '&') {
|
} else if (v.charAt(0) == '&') {
|
||||||
//结论
|
//结论
|
||||||
String tem = v.replace("&", "");
|
String tem = v.replace(STR_THREE, "");
|
||||||
if (Objects.nonNull(finalTerminalMap)) {
|
if (Objects.nonNull(finalTerminalMap)) {
|
||||||
if ("statis_time".equals(tem)) {
|
if ("statis_time".equals(tem)) {
|
||||||
// son.set("v", reportSearchParam.getStartTime() + InfluxDbSqlConstant.START_TIME + "_" + reportSearchParam.getEndTime() + InfluxDbSqlConstant.END_TIME);
|
// son.set(V, reportSearchParam.getStartTime() + InfluxDbSqlConstant.START_TIME + "_" + reportSearchParam.getEndTime() + InfluxDbSqlConstant.END_TIME);
|
||||||
} else {
|
} else {
|
||||||
//台账信息
|
//台账信息
|
||||||
son.set("v", finalTerminalMap.getOrDefault(tem, "/"));
|
son.set(V, finalTerminalMap.getOrDefault(tem, "/"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if (v.charAt(0) == '@' && v.contains("#")) {
|
} else if (v.charAt(0) == '@' && v.contains(STR_ONE)) {
|
||||||
//解决数据单位问题 @指标#类型@
|
//解决数据单位问题 @指标#类型@
|
||||||
String replace = v.replace("@", "");
|
String replace = v.replace("@", "");
|
||||||
son.set("v", unit.getOrDefault(replace, "/"));
|
son.set(V, unit.getOrDefault(replace, "/"));
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1580,23 +1584,23 @@ public class CustomReportServiceImpl implements CustomReportService {
|
|||||||
|
|
||||||
jsonArray.forEach(item -> {
|
jsonArray.forEach(item -> {
|
||||||
JSONObject jsonObject = (JSONObject) item;
|
JSONObject jsonObject = (JSONObject) item;
|
||||||
JSONArray itemArr = (JSONArray) jsonObject.get("celldata");
|
JSONArray itemArr = (JSONArray) jsonObject.get(CELL_DATA);
|
||||||
itemArr.forEach((it) -> {
|
itemArr.forEach((it) -> {
|
||||||
if (Objects.nonNull(it) && !"null".equals(it.toString())) {
|
if (Objects.nonNull(it) && !"null".equals(it.toString())) {
|
||||||
//获取到1列
|
//获取到1列
|
||||||
JSONObject data = (JSONObject) it;
|
JSONObject data = (JSONObject) it;
|
||||||
JSONObject son = (JSONObject) data.get("v");
|
JSONObject son = (JSONObject) data.get(V);
|
||||||
if (son.containsKey("v")) {
|
if (son.containsKey(V)) {
|
||||||
String v = son.getStr("v");
|
String v = son.getStr(V);
|
||||||
//数据格式:$HA[_25]#B#max#classId$ 或 $HA[_25]#max#classId$
|
//数据格式:$HA[_25]#B#max#classId$ 或 $HA[_25]#max#classId$
|
||||||
if (v.charAt(0) == '$' && v.contains("#")) {
|
if (v.charAt(0) == '$' && v.contains(STR_ONE)) {
|
||||||
//剔除前后$
|
//剔除前后$
|
||||||
v = v.replace("$", "");
|
v = v.replace(STR_TWO, "");
|
||||||
//封装ReportTemplateDTO
|
//封装ReportTemplateDTO
|
||||||
ReportTemplateDTO reportTemplateDTO = new ReportTemplateDTO();
|
ReportTemplateDTO reportTemplateDTO = new ReportTemplateDTO();
|
||||||
reportTemplateDTO.setItemName(v);
|
reportTemplateDTO.setItemName(v);
|
||||||
//根据#分割数据
|
//根据#分割数据
|
||||||
String[] vItem = v.split("#");
|
String[] vItem = v.split(STR_ONE);
|
||||||
if (vItem.length == 5) {
|
if (vItem.length == 5) {
|
||||||
//$HA[_25]#B#max#classId$
|
//$HA[_25]#B#max#classId$
|
||||||
reportTemplateDTO.setTemplateName(vItem[0]);
|
reportTemplateDTO.setTemplateName(vItem[0]);
|
||||||
@@ -1614,14 +1618,14 @@ public class CustomReportServiceImpl implements CustomReportService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
reportTemplateDTOList.add(reportTemplateDTO);
|
reportTemplateDTOList.add(reportTemplateDTO);
|
||||||
} else if (v.charAt(0) == '%' && v.contains("#")) {
|
} else if (v.charAt(0) == '%' && v.contains(STR_ONE)) {
|
||||||
//封装ReportTemplateDTO
|
//封装ReportTemplateDTO
|
||||||
ReportTemplateDTO reportTemplateDTO = new ReportTemplateDTO();
|
ReportTemplateDTO reportTemplateDTO = new ReportTemplateDTO();
|
||||||
|
|
||||||
v = v.replace("%", "");
|
v = v.replace(STR_FOUR, "");
|
||||||
reportTemplateDTO.setItemName(v);
|
reportTemplateDTO.setItemName(v);
|
||||||
//根据#分割数据
|
//根据#分割数据
|
||||||
String[] vItem = v.split("#");
|
String[] vItem = v.split(STR_ONE);
|
||||||
if (vItem.length == 3) {
|
if (vItem.length == 3) {
|
||||||
//$HA[_25]#B#max#classId$
|
//$HA[_25]#B#max#classId$
|
||||||
reportTemplateDTO.setTemplateName(vItem[0]);
|
reportTemplateDTO.setTemplateName(vItem[0]);
|
||||||
@@ -1632,7 +1636,7 @@ public class CustomReportServiceImpl implements CustomReportService {
|
|||||||
} else if (v.charAt(0) == '&') {
|
} else if (v.charAt(0) == '&') {
|
||||||
//封装ReportTemplateDTO
|
//封装ReportTemplateDTO
|
||||||
ReportTemplateDTO reportTemplateDTO = new ReportTemplateDTO();
|
ReportTemplateDTO reportTemplateDTO = new ReportTemplateDTO();
|
||||||
v = v.replace("&", "");
|
v = v.replace(STR_THREE, "");
|
||||||
reportTemplateDTO.setItemName(v);
|
reportTemplateDTO.setItemName(v);
|
||||||
reportTemplateDTO.setTemplateName(v);
|
reportTemplateDTO.setTemplateName(v);
|
||||||
terminalList.add(reportTemplateDTO);
|
terminalList.add(reportTemplateDTO);
|
||||||
|
|||||||
Reference in New Issue
Block a user