Commit ffac3734 authored by tangwei's avatar tangwei

解决冲突

parents 0dd9faf5 190cce8a
......@@ -284,18 +284,20 @@ public class PeasantHouseholdServiceImpl extends BaseService<PeasantHouseholdDto
List<PeasantHousehold> peasantHouseholds = this.query().eq("telephone", phoneNo).orderByDesc("rec_date").list();
PeasantHousehold peasantHousehold = peasantHouseholds.size() > 0 ? peasantHouseholds.get(0) : null;
// 没有注册过农户信息
boolean isNotFound = false;
if (null == peasantHousehold) {
peasantHousehold = new PeasantHousehold();
isNotFound = true;
}
PeasantHouseholdDto peasantHouseholdDto = buildDefaultPeasantHouseholdDto(wxDTO.getUserId(), wxDTO.getQrCodeType(), phoneNo);
BeanUtils.copyProperties(peasantHouseholdDto, peasantHousehold);
if (isNotFound) {
peasantHousehold.setIsCertified(0);
peasantHousehold.setSurveyOrNot(0);
peasantHousehold.setReview(0);
}
PeasantHouseholdDto peasantHouseholdDto = buildDefaultPeasantHouseholdDto(wxDTO.getUserId(), wxDTO.getQrCodeType(), phoneNo);
peasantHousehold.setDeveloperCode(peasantHouseholdDto.getDeveloperCode());// 开发方code
peasantHousehold.setDeveloperId(peasantHouseholdDto.getDeveloperId());// 开发方id
peasantHousehold.setDeveloperName(peasantHouseholdDto.getDeveloperName());// 开发方名称
peasantHousehold.setDeveloper(peasantHouseholdDto.getDeveloper());// 开发人
peasantHousehold.setRegionalCompaniesSeq(peasantHouseholdDto.getRegionalCompaniesSeq());
peasantHousehold.setRegionalCompaniesCode(peasantHouseholdDto.getRegionalCompaniesCode());
peasantHousehold.setRegionalCompaniesName(peasantHouseholdDto.getRegionalCompaniesName());
PeasantHouseholdWxDto loginResult = doLogin(wxDTO);
// 装载农户信息
loginResult.setPeasantHousehold(peasantHousehold);
......
......@@ -148,21 +148,22 @@ public class CommonServiceImpl {
}
public String getFanConditionVariablesByTimeThread(String startTime, String endTime) {
String result ="开始计算";
if(!ObjectUtils.isEmpty(cacheExecInfo.get(SmartAnalyseEnum.FAN_QJHF.getKey()))){
result="正在计算中";
}else {
MyServiceThread myServiceThread =new MyServiceThread(this,startTime,endTime,SmartAnalyseEnum.FAN_QJHF.getKey());
String result = "开始计算";
if (!ObjectUtils.isEmpty(cacheExecInfo.get(SmartAnalyseEnum.FAN_QJHF.getKey()))) {
result = "正在计算中";
} else {
MyServiceThread myServiceThread = new MyServiceThread(this, startTime, endTime, SmartAnalyseEnum.FAN_QJHF.getKey());
myServiceThread.start();
cacheExecInfo.put(SmartAnalyseEnum.FAN_QJHF.getKey(),myServiceThread);
cacheExecInfo.put(SmartAnalyseEnum.FAN_QJHF.getKey(), myServiceThread);
}
return result;
}
//遍历工况列表数据-风机
public void getFanConditionVariablesByTime(String startTime, String endTime) {
try {
String startTimeUTC = getUtcTimeString(startTime);
String endTimeUTC =getUtcTimeString(endTime);
String endTimeUTC = getUtcTimeString(endTime);
HashMap<String, List<IdxBizFanPointProcessVariableClassification>> idxBizFanPointProcessVariableClassificationHashMap = getIdxBizFanPointProcessVariableClassificationList();
idxBizFanPointProcessVariableClassificationHashMap.keySet().forEach(s -> {
List<IdxBizFanPointProcessVariableClassification> list = idxBizFanPointProcessVariableClassificationHashMap.get(s);
......@@ -171,24 +172,30 @@ public class CommonServiceImpl {
}
});
cacheExecInfo.remove(SmartAnalyseEnum.FAN_QJHF.getKey());
} catch (Exception exception) {
cacheExecInfo.remove(SmartAnalyseEnum.FAN_QJHF.getKey());
}
}
public String getPvConditionVariablesByTimeThread(String startTime, String endTime) {
String result ="开始计算";
if(!ObjectUtils.isEmpty(cacheExecInfo.get(SmartAnalyseEnum.PV_QJHF.getKey()))){
result="正在计算中";
}else {
MyServiceThread myServiceThread =new MyServiceThread(this,startTime,endTime,SmartAnalyseEnum.PV_QJHF.getKey());
String result = "开始计算";
if (!ObjectUtils.isEmpty(cacheExecInfo.get(SmartAnalyseEnum.PV_QJHF.getKey()))) {
result = "正在计算中";
} else {
MyServiceThread myServiceThread = new MyServiceThread(this, startTime, endTime, SmartAnalyseEnum.PV_QJHF.getKey());
myServiceThread.start();
cacheExecInfo.put(SmartAnalyseEnum.PV_QJHF.getKey(),myServiceThread);
cacheExecInfo.put(SmartAnalyseEnum.PV_QJHF.getKey(), myServiceThread);
}
return result;
}
//遍历工况列表数据-光伏
public void getPvConditionVariablesByTime(String startTime, String endTime) {
try {
String startTimeUTC = getUtcTimeString(startTime);
String endTimeUTC =getUtcTimeString(endTime);
String endTimeUTC = getUtcTimeString(endTime);
HashMap<String, List<IdxBizPvPointProcessVariableClassification>> idxBizPvPointProcessVariableClassificationHashMap = getIdxBizPvPointProcessVariableClassificationList();
idxBizPvPointProcessVariableClassificationHashMap.keySet().forEach(s -> {
List<IdxBizPvPointProcessVariableClassification> list = idxBizPvPointProcessVariableClassificationHashMap.get(s);
......@@ -197,6 +204,10 @@ public class CommonServiceImpl {
}
});
cacheExecInfo.remove(SmartAnalyseEnum.FAN_QJHF.getKey());
} catch (Exception exception) {
cacheExecInfo.remove(SmartAnalyseEnum.FAN_QJHF.getKey());
}
}
//遍历查询数据并调用并计算-风机
......@@ -204,7 +215,7 @@ public class CommonServiceImpl {
list.forEach(idxBizFanPointProcessVariableClassification -> {
logger.info("--------------------------------------------风机::开始查询influxdb--------------------------------");
List<Map<String, Object>> params = new ArrayList<>();
String sql = String.format("select value from %s where address='%s' and time >= '%s' and time <= '%s' ", tableName, idxBizFanPointProcessVariableClassification.getIndexAddress(),startTime,endTime);
String sql = String.format("select value from %s where address='%s' and time >= '%s' and time <= '%s' ", tableName, idxBizFanPointProcessVariableClassification.getIndexAddress(), startTime, endTime);
List<Map<String, Object>> returnList = influxdbUtil.query(sql);
returnList.forEach((k) -> {
Map<String, Object> map = new HashMap<>();
......@@ -217,7 +228,7 @@ public class CommonServiceImpl {
HashMap<String, Object> realParams = new HashMap<>();
realParams.put(gkqjhfkey, params);
String response = HttpUtil.createPost(baseUrl + gkqjhfurlfan).body(JSON.toJSONString(realParams)).execute().body();
if (response.contains("\"status\":200")&&response.contains("rows")&&response.contains("rows")) {
if (response.contains("\"status\":200") && response.contains("rows") && response.contains("rows")) {
JSONObject jsonObject = JSONObject.parseObject(response);
JSONObject result = (JSONObject) jsonObject.get("result");
JSONObject result1 = (JSONObject) result.get("result1");
......@@ -248,7 +259,7 @@ public class CommonServiceImpl {
list.forEach(idxBizPvPointProcessVariableClassification -> {
logger.info("--------------------------------------------光伏::开始查询influxdb--------------------------------");
List<Map<String, Object>> params = new ArrayList<>();
String sql = String.format("select value from %s where address='%s' and time >= '%s' and time <= '%s' ", tableName, idxBizPvPointProcessVariableClassification.getIndexAddress(),startTime,endTime);
String sql = String.format("select value from %s where address='%s' and time >= '%s' and time <= '%s' ", tableName, idxBizPvPointProcessVariableClassification.getIndexAddress(), startTime, endTime);
List<Map<String, Object>> returnList = influxdbUtil.query(sql);
returnList.forEach((k) -> {
Map<String, Object> map = new HashMap<>();
......@@ -261,7 +272,7 @@ public class CommonServiceImpl {
HashMap<String, Object> realParams = new HashMap<>();
realParams.put(gkqjhfkey, params);
String response = HttpUtil.createPost(baseUrl + gkqjhfurlpv).body(JSON.toJSONString(realParams)).execute().body();
if (response.contains("\"status\":200")&&response.contains("rows")) {
if (response.contains("\"status\":200") && response.contains("rows")) {
JSONObject jsonObject = JSONObject.parseObject(response);
JSONObject result = (JSONObject) jsonObject.get("result");
JSONObject result1 = (JSONObject) result.get("result1");
......@@ -314,20 +325,22 @@ public class CommonServiceImpl {
}
public String getFanConditionVariablesByTimeAnalyseThread(String startTime, String endTime) {
String result ="开始计算";
if(!ObjectUtils.isEmpty(cacheExecInfo.get(SmartAnalyseEnum.FAN_XGX.getKey()))){
result="正在计算中";
}else {
MyServiceThread myServiceThread =new MyServiceThread(this,startTime,endTime,SmartAnalyseEnum.FAN_XGX.getKey());
String result = "开始计算";
if (!ObjectUtils.isEmpty(cacheExecInfo.get(SmartAnalyseEnum.FAN_XGX.getKey()))) {
result = "正在计算中";
} else {
MyServiceThread myServiceThread = new MyServiceThread(this, startTime, endTime, SmartAnalyseEnum.FAN_XGX.getKey());
myServiceThread.start();
cacheExecInfo.put(SmartAnalyseEnum.FAN_XGX.getKey(),myServiceThread);
cacheExecInfo.put(SmartAnalyseEnum.FAN_XGX.getKey(), myServiceThread);
}
return result;
}
//相关性分析-风机入口
public void getFanConditionVariablesByTimeAnalyse(String startTime, String endTime) {
try {
String startTimeUTC = getUtcTimeString(startTime);
String endTimeUTC =getUtcTimeString(endTime);
String endTimeUTC = getUtcTimeString(endTime);
HashMap<String, List<IdxBizFanPointProcessVariableClassification>> idxBizFanPointProcessVariableClassificationHashMap = getIdxBizFanPointProcessVariableClassificationListOfAnaLyse();
idxBizFanPointProcessVariableClassificationHashMap.keySet().forEach(s -> {
List<IdxBizFanPointProcessVariableClassification> list = idxBizFanPointProcessVariableClassificationHashMap.get(s);
......@@ -339,23 +352,28 @@ public class CommonServiceImpl {
});
});
cacheExecInfo.remove(SmartAnalyseEnum.FAN_XGX.getKey());
} catch (Exception exception) {
cacheExecInfo.remove(SmartAnalyseEnum.PV_XGX.getKey());
}
}
public String getPvConditionVariablesByTimeAnalyseThread(String startTime, String endTime) {
String result ="开始计算";
if(!ObjectUtils.isEmpty(cacheExecInfo.get(SmartAnalyseEnum.PV_XGX.getKey()))){
result="正在计算中";
}else {
MyServiceThread myServiceThread =new MyServiceThread(this,startTime,endTime,SmartAnalyseEnum.PV_XGX.getKey());
String result = "开始计算";
if (!ObjectUtils.isEmpty(cacheExecInfo.get(SmartAnalyseEnum.PV_XGX.getKey()))) {
result = "正在计算中";
} else {
MyServiceThread myServiceThread = new MyServiceThread(this, startTime, endTime, SmartAnalyseEnum.PV_XGX.getKey());
myServiceThread.start();
cacheExecInfo.put(SmartAnalyseEnum.PV_XGX.getKey(),myServiceThread);
cacheExecInfo.put(SmartAnalyseEnum.PV_XGX.getKey(), myServiceThread);
}
return result;
}
//相关性分析-光伏入口
public void getPvConditionVariablesByTimeAnalyse(String startTime, String endTime) {
try {
String startTimeUTC = getUtcTimeString(startTime);
String endTimeUTC =getUtcTimeString(endTime);
String endTimeUTC = getUtcTimeString(endTime);
HashMap<String, List<IdxBizPvPointProcessVariableClassification>> idxBizPvPointProcessVariableClassificationHashMap = getIdxBizPvPointProcessVariableClassificationListOfAnaLyse();
idxBizPvPointProcessVariableClassificationHashMap.keySet().forEach(s -> {
List<IdxBizPvPointProcessVariableClassification> list = idxBizPvPointProcessVariableClassificationHashMap.get(s);
......@@ -367,12 +385,15 @@ public class CommonServiceImpl {
});
});
cacheExecInfo.remove(SmartAnalyseEnum.PV_XGX.getKey());
} catch (Exception exception) {
cacheExecInfo.remove(SmartAnalyseEnum.PV_XGX.getKey());
}
}
//遍历处理数据-组装风机
public void foreachHandlerConditionVariabAnalyseFan(String tableName, List<IdxBizFanPointVarCorrelation> list, String startTime, String endTime, IdxBizFanPointProcessVariableClassification idxBizFanPointProcessVariableClassification) {
String sql1 = String.format("select value from %s where address='%s' and time >= '%s' and time <= '%s' ", tableName, idxBizFanPointProcessVariableClassification.getIndexAddress(),startTime,endTime);
String sql1 = String.format("select value from %s where address='%s' and time >= '%s' and time <= '%s' ", tableName, idxBizFanPointProcessVariableClassification.getIndexAddress(), startTime, endTime);
List<Map<String, Object>> returnList = influxdbUtil.query(sql1);
List<Map<String, Object>> params = new ArrayList<>();
returnList.forEach((k) -> {
......@@ -386,7 +407,7 @@ public class CommonServiceImpl {
logger.info("---------------------------------风机相关性-----------开始查询influxdb--------------------------------");
List<Map<String, Object>> params1 = new ArrayList<>();
List<Map<String, Object>> requestParams = new ArrayList<>();
String sql = String.format("select value from %s where address='%s' and time >= '%s' and time <= '%s' ", tableName, idxBizFanPointVarCorrelation.getProcessIndexAddress(),startTime,endTime);
String sql = String.format("select value from %s where address='%s' and time >= '%s' and time <= '%s' ", tableName, idxBizFanPointVarCorrelation.getProcessIndexAddress(), startTime, endTime);
List<Map<String, Object>> returnList1 = influxdbUtil.query(sql);
returnList.forEach((k) -> {
Map<String, Object> map = new HashMap<>();
......@@ -406,7 +427,7 @@ public class CommonServiceImpl {
realParams.put(gkxgxfxkey, requestParams);
logger.info("------------------------------风机相关性------------分析变量与工况变量相关性分析算参数---------------------------------------" + JSON.toJSONString(realParams));
String response = HttpUtil.createPost(baseUrl + gkxgxfxurlfan).body(JSON.toJSONString(realParams)).execute().body();
if (response.contains("\"status\":200")&&response.contains("rows")) {
if (response.contains("\"status\":200") && response.contains("rows")) {
JSONObject jsonObject = JSONObject.parseObject(response);
JSONObject result = (JSONObject) jsonObject.get("result");
JSONObject result1 = (JSONObject) result.get("result1");
......@@ -429,7 +450,7 @@ public class CommonServiceImpl {
//遍历处理数据-组装风机
public void foreachHandlerConditionVariabAnalysePv(String tableName, List<IdxBizPvPointVarCorrelation> list, String startTime, String endTime, IdxBizPvPointProcessVariableClassification idxBizPvPointProcessVariableClassification) {
String sql1 = String.format("select value from %s where address='%s' and time >= '%s' and time <= '%s' ", tableName, idxBizPvPointProcessVariableClassification.getIndexAddress(),startTime,endTime);
String sql1 = String.format("select value from %s where address='%s' and time >= '%s' and time <= '%s' ", tableName, idxBizPvPointProcessVariableClassification.getIndexAddress(), startTime, endTime);
List<Map<String, Object>> returnList = influxdbUtil.query(sql1);
List<Map<String, Object>> params = new ArrayList<>();
returnList.forEach((k) -> {
......@@ -442,7 +463,7 @@ public class CommonServiceImpl {
logger.info("-------------------------------------光伏相关性-------开始查询influxdb--------------------------------");
List<Map<String, Object>> params1 = new ArrayList<>();
List<Map<String, Object>> requestParams = new ArrayList<>();
String sql = String.format("select value from %s where address='%s' and time >= '%s' and time <= '%s' ", tableName, idxBizPvPointVarCorrelation.getProcessIndexAddress(),startTime,endTime);
String sql = String.format("select value from %s where address='%s' and time >= '%s' and time <= '%s' ", tableName, idxBizPvPointVarCorrelation.getProcessIndexAddress(), startTime, endTime);
List<Map<String, Object>> returnList1 = influxdbUtil.query(sql);
returnList.forEach((k) -> {
Map<String, Object> map = new HashMap<>();
......@@ -460,7 +481,7 @@ public class CommonServiceImpl {
HashMap<String, Object> realParams = new HashMap<>();
realParams.put(gkxgxfxkey, requestParams);
String response = HttpUtil.createPost(baseUrl + gkxgxfxurlpv).body(JSON.toJSONString(realParams)).execute().body();
if (response.contains("\"status\":200")&&response.contains("rows")) {
if (response.contains("\"status\":200") && response.contains("rows")) {
JSONObject jsonObject = JSONObject.parseObject(response);
JSONObject result = (JSONObject) jsonObject.get("result");
JSONObject result1 = (JSONObject) result.get("result1");
......@@ -516,10 +537,13 @@ public class CommonServiceImpl {
}
return result;
}
//中心值计算-风电
public void getFanConditionVariablesByTimeAnalyse1(String startTime, String endTime) {
try {
String startTimeUTC = getUtcTimeString(startTime);
String endTimeUTC =getUtcTimeString(endTime);
String endTimeUTC = getUtcTimeString(endTime);
HashMap<String, List<IdxBizFanPointProcessVariableClassification>> IdxBizFanPointProcessVariableClassificationHashMap = getIdxBizFanPointProcessVariableClassificationListOfAnaLyse();
IdxBizFanPointProcessVariableClassificationHashMap.keySet().forEach(s -> {
List<IdxBizFanPointProcessVariableClassification> list = IdxBizFanPointProcessVariableClassificationHashMap.get(s);
......@@ -531,6 +555,10 @@ public class CommonServiceImpl {
});
});
cacheExecInfo.remove(SmartAnalyseEnum.FAN_ZXZ.getKey());
} catch (Exception exception) {
cacheExecInfo.remove(SmartAnalyseEnum.FAN_ZXZ.getKey());
}
}
public String getPvConditionVariablesByTimeAnalyse1Thread(String startTime, String endTime) {
......@@ -544,10 +572,14 @@ public class CommonServiceImpl {
}
return result;
}
//中心值计算-光伏
public void getPvConditionVariablesByTimeAnalyse1(String startTime, String endTime) {
try {
String startTimeUTC = getUtcTimeString(startTime);
String endTimeUTC =getUtcTimeString(endTime);
String endTimeUTC = getUtcTimeString(endTime);
HashMap<String, List<IdxBizPvPointProcessVariableClassification>> idxBizPvPointProcessVariableClassificationHashMap = getIdxBizPvPointProcessVariableClassificationListOfAnaLyse();
idxBizPvPointProcessVariableClassificationHashMap.keySet().forEach(s -> {
List<IdxBizPvPointProcessVariableClassification> list = idxBizPvPointProcessVariableClassificationHashMap.get(s);
......@@ -560,11 +592,14 @@ public class CommonServiceImpl {
});
});
cacheExecInfo.remove(SmartAnalyseEnum.PV_ZXZ.getKey());
} catch (Exception exception) {
cacheExecInfo.remove(SmartAnalyseEnum.PV_ZXZ.getKey());
}
}
//中心值参数组装-风电
public void foreachHandlerConditionVariabAnalyse1Fan(String tableName, List<IdxBizFanPointVarCorrelation> list, String startTime, String endTime, IdxBizFanPointProcessVariableClassification IdxBizFanPointProcessVariableClassification) {
String sql0 = String.format("select value from %s where address='%s' and time >= '%s' and time <= '%s' ", tableName, IdxBizFanPointProcessVariableClassification.getIndexAddress(),startTime,endTime);
String sql0 = String.format("select value from %s where address='%s' and time >= '%s' and time <= '%s' ", tableName, IdxBizFanPointProcessVariableClassification.getIndexAddress(), startTime, endTime);
List<Map<String, Object>> returnList = influxdbUtil.query(sql0);
List<Map<String, Object>> params = new ArrayList<>();
returnList.forEach((k) -> {
......@@ -577,9 +612,9 @@ public class CommonServiceImpl {
List<Map<String, Object>> params1 = new ArrayList<>();
List<Map<String, Object>> requestParams = new ArrayList<>();
// String sql = String.format("select value from %s where address='%s' and where time >= '%s' and where time <= '%s' ", tableName, IdxBizFanPointProcessVariableClassification.getIndexAddress(), startTime, endTime);
String sql = String.format("select value from %s where address='%s' and time >= '%s' and time <= '%s' ", tableName, list.get(0).getProcessIndexAddress(),startTime,endTime);
String sql1 = String.format("select value from %s where address='%s' and time >= '%s' and time <= '%s' ", tableName, list.get(1).getProcessIndexAddress(),startTime,endTime);
String sql2 = String.format("select value from %s where address='%s' and time >= '%s' and time <= '%s' ", tableName, list.get(2).getProcessIndexAddress(),startTime,endTime);
String sql = String.format("select value from %s where address='%s' and time >= '%s' and time <= '%s' ", tableName, list.get(0).getProcessIndexAddress(), startTime, endTime);
String sql1 = String.format("select value from %s where address='%s' and time >= '%s' and time <= '%s' ", tableName, list.get(1).getProcessIndexAddress(), startTime, endTime);
String sql2 = String.format("select value from %s where address='%s' and time >= '%s' and time <= '%s' ", tableName, list.get(2).getProcessIndexAddress(), startTime, endTime);
List<HashMap<String, Object>> values = new ArrayList<>();
List<String> processPointIds = list.stream().map(idxBizFanPointVarCorrelation -> idxBizFanPointVarCorrelation.getProcessPointId().toString()).collect(Collectors.toList());
List<IdxBizFanPointProcessVariableClassification> idxBizFanPointProcessVariableClassificationList = idxBizFanPointProcessVariableClassificationMapper.selectList(new QueryWrapper<IdxBizFanPointProcessVariableClassification>().in("SEQUENCE_NBR", processPointIds));
......@@ -659,16 +694,16 @@ public class CommonServiceImpl {
realParams.put(gkzxzjskey2, requestParams);
logger.info("------------------------------风机中心值------请求参数---------------------------------------" + JSON.toJSONString(realParams));
String response = HttpUtil.createPost(baseUrl + gkzxzjsurlfan).body(JSON.toJSONString(realParams)).execute().body();
if (response.contains("\"status\":200")&&response.contains("rows")) {
if (response.contains("\"status\":200") && response.contains("rows")) {
JSONObject jsonObject = JSONObject.parseObject(response);
JSONObject result = (JSONObject) jsonObject.get("result");
JSONObject result1 = (JSONObject) result.get("result1");
JSONArray rows = (JSONArray) result1.get("rows");
JSONObject resultValues = rows.getJSONObject(0);
idxBizFanPointVarCentralValueMapper.delete(new QueryWrapper<IdxBizFanPointVarCentralValue>().eq("ANALYSIS_POINT_ID",resultValues.get("analysisVariableId")));
for (int i = 0; i <rows.size() ; i++) {
idxBizFanPointVarCentralValueMapper.delete(new QueryWrapper<IdxBizFanPointVarCentralValue>().eq("ANALYSIS_POINT_ID", resultValues.get("analysisVariableId")));
for (int i = 0; i < rows.size(); i++) {
JSONObject idxCentralValue = rows.getJSONObject(i);
IdxBizFanPointVarCentralValue idxBizFanPointVarCentralValue =new IdxBizFanPointVarCentralValue();
IdxBizFanPointVarCentralValue idxBizFanPointVarCentralValue = new IdxBizFanPointVarCentralValue();
idxBizFanPointVarCentralValue.setProcess1Min(idxCentralValue.getDoubleValue("process1Min"));
idxBizFanPointVarCentralValue.setProcess2Min(idxCentralValue.getDoubleValue("process2Min"));
idxBizFanPointVarCentralValue.setProcess3Min(idxCentralValue.getDoubleValue("process3Min"));
......@@ -707,7 +742,7 @@ public class CommonServiceImpl {
//中心值参数组装-光伏
public void foreachHandlerConditionVariabAnalyse1Pv(String tableName, List<IdxBizPvPointVarCorrelation> list, String startTime, String endTime, IdxBizPvPointProcessVariableClassification idxBizPvPointProcessVariableClassification) {
String sql0 = String.format("select value from %s where address='%s' and time >= '%s' and time <= '%s' ", tableName, idxBizPvPointProcessVariableClassification.getIndexAddress(),startTime,endTime);
String sql0 = String.format("select value from %s where address='%s' and time >= '%s' and time <= '%s' ", tableName, idxBizPvPointProcessVariableClassification.getIndexAddress(), startTime, endTime);
List<Map<String, Object>> returnList = influxdbUtil.query(sql0);
List<Map<String, Object>> params = new ArrayList<>();
returnList.forEach((k) -> {
......@@ -719,9 +754,9 @@ public class CommonServiceImpl {
logger.info("-----------------------------------光伏中心值---------开始查询influxdb--------------------------------");
List<Map<String, Object>> params1 = new ArrayList<>();
List<Map<String, Object>> requestParams = new ArrayList<>();
String sql = String.format("select value from %s where address='%s' and time >= '%s' and time <= '%s' ", tableName, list.get(0).getProcessIndexAddress(),startTime,endTime);
String sql1 = String.format("select value from %s where address='%s' and time >= '%s' and time <= '%s' ", tableName, list.get(1).getProcessIndexAddress(),startTime,endTime);
String sql2 = String.format("select value from %s where address='%s' and time >= '%s' and time <= '%s' ", tableName, list.get(2).getProcessIndexAddress(),startTime,endTime);
String sql = String.format("select value from %s where address='%s' and time >= '%s' and time <= '%s' ", tableName, list.get(0).getProcessIndexAddress(), startTime, endTime);
String sql1 = String.format("select value from %s where address='%s' and time >= '%s' and time <= '%s' ", tableName, list.get(1).getProcessIndexAddress(), startTime, endTime);
String sql2 = String.format("select value from %s where address='%s' and time >= '%s' and time <= '%s' ", tableName, list.get(2).getProcessIndexAddress(), startTime, endTime);
List<HashMap<String, Object>> values = new ArrayList<>();
List<String> processPointIds = list.stream().map(idxBizPvPointVarCorrelation -> idxBizPvPointVarCorrelation.getProcessPointId().toString()).collect(Collectors.toList());
List<IdxBizPvPointProcessVariableClassification> idxBizPvPointProcessVariableClassificationList = idxBizPvPointProcessVariableClassificationMapper.selectList(new QueryWrapper<IdxBizPvPointProcessVariableClassification>().in("SEQUENCE_NBR", processPointIds));
......@@ -800,16 +835,16 @@ public class CommonServiceImpl {
realParams.put(gkzxzjskey1, values);
realParams.put(gkzxzjskey2, requestParams);
String response = HttpUtil.createPost(baseUrl + gkzxzjsurlpv).body(JSON.toJSONString(realParams)).execute().body();
if (response.contains("\"status\":200")&&response.contains("rows")) {
if (response.contains("\"status\":200") && response.contains("rows")) {
JSONObject jsonObject = JSONObject.parseObject(response);
JSONObject result = (JSONObject) jsonObject.get("result");
JSONObject result1 = (JSONObject) result.get("result1");
JSONArray rows = (JSONArray) result1.get("rows");
JSONObject resultValues = rows.getJSONObject(0);
idxBizPvPointVarCentralValueMapper.delete(new QueryWrapper<IdxBizPvPointVarCentralValue>().eq("ANALYSIS_POINT_ID",resultValues.get("analysisVariableId")));
for (int i = 0; i <rows.size() ; i++) {
idxBizPvPointVarCentralValueMapper.delete(new QueryWrapper<IdxBizPvPointVarCentralValue>().eq("ANALYSIS_POINT_ID", resultValues.get("analysisVariableId")));
for (int i = 0; i < rows.size(); i++) {
JSONObject idxCentralValue = rows.getJSONObject(i);
IdxBizPvPointVarCentralValue idxBizPvPointVarCentralValue =new IdxBizPvPointVarCentralValue();
IdxBizPvPointVarCentralValue idxBizPvPointVarCentralValue = new IdxBizPvPointVarCentralValue();
idxBizPvPointVarCentralValue.setProcess1Min(idxCentralValue.getDoubleValue("process1Min"));
idxBizPvPointVarCentralValue.setProcess2Min(idxCentralValue.getDoubleValue("process2Min"));
idxBizPvPointVarCentralValue.setProcess3Min(idxCentralValue.getDoubleValue("process3Min"));
......@@ -974,9 +1009,7 @@ public class CommonServiceImpl {
}
}
Map<String, Object> map = new HashMap<>();
if (idxBizUhef.getProcess1Min() <= value1 && value1 <= idxBizUhef.getProcess1Max() &&
idxBizUhef.getProcess2Min() <= value2 && value2 <= idxBizUhef.getPorcess2Max() &&
idxBizUhef.getProcess3Min() <= value3 && value3 <= idxBizUhef.getProcess3Max()) {
if (idxBizUhef.getProcess1Min() <= value1 && value1 <= idxBizUhef.getProcess1Max() && idxBizUhef.getProcess2Min() <= value2 && value2 <= idxBizUhef.getPorcess2Max() && idxBizUhef.getProcess3Min() <= value3 && value3 <= idxBizUhef.getProcess3Max()) {
map.put("analysisVariable", value4);
map.put("stdDev", idxBizUhef.getAnalysisStdDev());
map.put("centerValue", idxBizUhef.getAnalysisCenterValue());
......@@ -991,30 +1024,30 @@ public class CommonServiceImpl {
realParams.put(gkzxzjskey1, values);
String response = HttpUtil.createPost(baseUrl + jkzsjsfjurl).body(JSON.toJSONString(realParams)).execute().body();
JSONObject result = JSON.parseObject(response).getJSONObject("result");
if (null != result){
JSONObject jsonObject =result .getJSONObject("result1").getJSONObject("rows");
if (null != result) {
JSONObject jsonObject = result.getJSONObject("result1").getJSONObject("rows");
List<JSONObject> jsonObjects = JSON.parseArray(JSON.toJSONString(jsonObject), JSONObject.class);
List<String> ids = new ArrayList<>();
jsonObjects.stream().forEach(e-> ids.add(e.getString("analysisVariableId")));
jsonObjects.stream().forEach(e -> ids.add(e.getString("analysisVariableId")));
LambdaQueryWrapper<IdxBizFanPointProcessVariableClassification> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.in(IdxBizFanPointProcessVariableClassification::getSequenceNbr,ids);
queryWrapper.in(IdxBizFanPointProcessVariableClassification::getSequenceNbr, ids);
List<IdxBizFanPointProcessVariableClassification> list = idxBizFanPointProcessVariableClassificationMapper.selectList(queryWrapper);
List<IdxBizFanHealthIndex> idxBizFanHealthIndexs = new ArrayList<>();
for (IdxBizFanPointProcessVariableClassification obj : list) {
for (JSONObject object : jsonObjects) {
if (obj.getSequenceNbr().equals(object.getString("analysisVariableId"))){
if (obj.getSequenceNbr().equals(object.getString("analysisVariableId"))) {
IdxBizFanHealthIndex idxBizFanHealthIndex = new IdxBizFanHealthIndex();
BeanUtils.copyProperties(idxBizFanHealthIndex,obj);
BeanUtils.copyProperties(idxBizFanHealthIndex, obj);
idxBizFanHealthIndex.setHealthIndex(object.getDouble("indexValue"));
idxBizFanHealthIndex.setAnalysisObjSeq(obj.getSequenceNbr());
idxBizFanHealthIndex.setRecDate(new Date());
//获取健康指数对应等级
LambdaQueryWrapper<IdxBizFanHealthLevel> query = new LambdaQueryWrapper<>();
query.eq(IdxBizFanHealthLevel::getAnalysisObjType,"设备");
query.eq(IdxBizFanHealthLevel::getStatus,obj.getStation());
query.le(IdxBizFanHealthLevel::getGroupLowerLimit,object.getDouble("indexValue"));
query.ge(IdxBizFanHealthLevel::getGroupUpperLimit,object.getDouble("indexValue"));
query.eq(IdxBizFanHealthLevel::getAnalysisObjType, "设备");
query.eq(IdxBizFanHealthLevel::getStatus, obj.getStation());
query.le(IdxBizFanHealthLevel::getGroupLowerLimit, object.getDouble("indexValue"));
query.ge(IdxBizFanHealthLevel::getGroupUpperLimit, object.getDouble("indexValue"));
IdxBizFanHealthLevel idxBizFanHealthLevel = idxBizFanHealthLevelMapper.selectOne(query);
idxBizFanHealthIndex.setHealthLevel(idxBizFanHealthLevel.getHealthLevel());
idxBizFanHealthIndex.setAnalysisType("按时刻");
......@@ -1027,7 +1060,7 @@ public class CommonServiceImpl {
}
try {
logger.info("--------------------response: "+response);
logger.info("--------------------response: " + response);
logger.info("------------------------------------------调用健康指数计算算法结束----------------------------------------");
} catch (Exception e) {
throw new RuntimeException(e);
......@@ -1070,7 +1103,7 @@ public class CommonServiceImpl {
for (IdxBizPvPointProcessVariableClassificationDto datum : data) {
for (ESEquipments equipment : equipments) {
if (equipment.getAddress().equals(datum.getIndexAddress()) && equipment.getGatewayId().equals(datum.getGatewayId())){
if (equipment.getAddress().equals(datum.getIndexAddress()) && equipment.getGatewayId().equals(datum.getGatewayId())) {
datum.setCurrentValue(equipment.getValueDouble());
}
}
......@@ -1078,7 +1111,7 @@ public class CommonServiceImpl {
LambdaQueryWrapper<IdxBizPvPointVarCentralValue> wrapper = new LambdaQueryWrapper<>();
List<IdxBizPvPointVarCentralValue> idxBizUhefs = idxBizPvPointVarCentralValueMapper.selectList(wrapper);
List< Map<String, Object>> datas = new ArrayList<>();
List<Map<String, Object>> datas = new ArrayList<>();
Map<String, Map<String, Object>> resultMap = new HashMap<>();
for (IdxBizPvPointVarCentralValue idxBizUhef : idxBizUhefs) {
double value1 = 0.00;
......@@ -1086,7 +1119,7 @@ public class CommonServiceImpl {
double value3 = 0.00;
double value4 = 0.00;
for (IdxBizPvPointProcessVariableClassificationDto datum : data) {
if (idxBizUhef.getProcessPoint1Id().equals(datum.getSequenceNbr())){
if (idxBizUhef.getProcessPoint1Id().equals(datum.getSequenceNbr())) {
value1 = datum.getCurrentValue();
}
if (idxBizUhef.getProcessPoint2Id().equals(datum.getSequenceNbr())) {
......@@ -1100,14 +1133,12 @@ public class CommonServiceImpl {
}
}
Map<String, Object> map = new HashMap<>();
if (idxBizUhef.getProcess1Min() <= value1 && value1 <= idxBizUhef.getProcess1Max() &&
idxBizUhef.getProcess2Min() <= value2 && value2 <= idxBizUhef.getProcess2Max() &&
idxBizUhef.getProcess3Min() <= value3 && value3 <= idxBizUhef.getProcess3Max()){
map.put("analysisVariable",value4);
map.put("stdDev",idxBizUhef.getAnalysisStdDev());
map.put("centerValue",idxBizUhef.getAnalysisCenterValue());
map.put("analysisVariableId",idxBizUhef.getAnalysisPointId());
resultMap.put(idxBizUhef.getAnalysisPointId(),map);
if (idxBizUhef.getProcess1Min() <= value1 && value1 <= idxBizUhef.getProcess1Max() && idxBizUhef.getProcess2Min() <= value2 && value2 <= idxBizUhef.getProcess2Max() && idxBizUhef.getProcess3Min() <= value3 && value3 <= idxBizUhef.getProcess3Max()) {
map.put("analysisVariable", value4);
map.put("stdDev", idxBizUhef.getAnalysisStdDev());
map.put("centerValue", idxBizUhef.getAnalysisCenterValue());
map.put("analysisVariableId", idxBizUhef.getAnalysisPointId());
resultMap.put(idxBizUhef.getAnalysisPointId(), map);
}
}
Collection<Map<String, Object>> values = resultMap.values();
......@@ -1117,30 +1148,30 @@ public class CommonServiceImpl {
realParams.put(gkzxzjskey1, values);
String response = HttpUtil.createPost(baseUrl + jkzsgfurl).body(JSON.toJSONString(realParams)).execute().body();
JSONObject result = JSON.parseObject(response).getJSONObject("result");
if (null != result){
JSONObject jsonObject =result .getJSONObject("result1").getJSONObject("rows");
if (null != result) {
JSONObject jsonObject = result.getJSONObject("result1").getJSONObject("rows");
List<JSONObject> jsonObjects = JSON.parseArray(JSON.toJSONString(jsonObject), JSONObject.class);
List<String> ids = new ArrayList<>();
jsonObjects.stream().forEach(e-> ids.add(e.getString("analysisVariableId")));
jsonObjects.stream().forEach(e -> ids.add(e.getString("analysisVariableId")));
LambdaQueryWrapper<IdxBizPvPointProcessVariableClassification> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.in(IdxBizPvPointProcessVariableClassification::getSequenceNbr,ids);
queryWrapper.in(IdxBizPvPointProcessVariableClassification::getSequenceNbr, ids);
List<IdxBizPvPointProcessVariableClassification> list = idxBizPvPointProcessVariableClassificationMapper.selectList(queryWrapper);
List<IdxBizPvHealthIndex> idxBizPvHealthIndexs = new ArrayList<>();
for (IdxBizPvPointProcessVariableClassification obj : list) {
for (JSONObject object : jsonObjects) {
if (obj.getSequenceNbr().equals(object.getString("analysisVariableId"))){
if (obj.getSequenceNbr().equals(object.getString("analysisVariableId"))) {
IdxBizPvHealthIndex idxBizFanHealthIndex = new IdxBizPvHealthIndex();
BeanUtils.copyProperties(idxBizFanHealthIndex,obj);
BeanUtils.copyProperties(idxBizFanHealthIndex, obj);
idxBizFanHealthIndex.setHealthIndex(object.getDouble("indexValue"));
idxBizFanHealthIndex.setAnalysisObjSeq(obj.getSequenceNbr());
idxBizFanHealthIndex.setRecDate(new Date());
//获取健康指数对应等级
LambdaQueryWrapper<IdxBizPvHealthLevel> query = new LambdaQueryWrapper<>();
query.eq(IdxBizPvHealthLevel::getAnalysisObjType,"设备");
query.eq(IdxBizPvHealthLevel::getStatus,obj.getStation());
query.le(IdxBizPvHealthLevel::getGroupLowerLimit,object.getDouble("indexValue"));
query.ge(IdxBizPvHealthLevel::getGroupUpperLimit,object.getDouble("indexValue"));
query.eq(IdxBizPvHealthLevel::getAnalysisObjType, "设备");
query.eq(IdxBizPvHealthLevel::getStatus, obj.getStation());
query.le(IdxBizPvHealthLevel::getGroupLowerLimit, object.getDouble("indexValue"));
query.ge(IdxBizPvHealthLevel::getGroupUpperLimit, object.getDouble("indexValue"));
IdxBizPvHealthLevel idxBizFanHealthLevel = idxBizPvHealthLevelMapper.selectOne(query);
idxBizFanHealthIndex.setHealthLevel(idxBizFanHealthLevel.getHealthLevel());
idxBizFanHealthIndex.setAnalysisType("按时刻");
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment