Commit da37fd99 by xiang

增加首页、线路信息、负荷接入分析后台接口;数据类部分调用修改

parent c973180d
...@@ -550,7 +550,7 @@ public class AvailCapMain { ...@@ -550,7 +550,7 @@ public class AvailCapMain {
// loadPosSeason为负荷接入分析结果列表,属性substation;feederName;canIn;tfName;phase;time对应界面表格的 // loadPosSeason为负荷接入分析结果列表,属性substation;feederName;canIn;tfName;phase;time对应界面表格的
// 变电站、线路名称、能否接入、接入点、接入相别、分析时间 // 变电站、线路名称、能否接入、接入点、接入相别、分析时间
SqliteDb sqliteDb = new SqliteDb(args[1]); SqliteDb sqliteDb = new SqliteDb(args[1]);
List<LoadPosSeason> loadPosSeason = sqliteDb.queryLoadPosSeason(loadPosTable, 1); List<LoadPosSeason> loadPosSeason = sqliteDb.queryLoadPosSeason(loadPosTable, 1,-1,-1);
System.out.println(loadPosSeason.size()); System.out.println(loadPosSeason.size());
break; break;
} }
......
...@@ -1293,17 +1293,52 @@ public class SqliteDb { ...@@ -1293,17 +1293,52 @@ public class SqliteDb {
return tfOverLoadRates; return tfOverLoadRates;
} }
/**
* 按季节查询负荷接入分析结果总数
* @param tableName 表名
* @param season 季节
* @return
*/
public int queryLoadPosSeasonCount(String tableName, int season) {
Connection conn = createConn();
String sql;
sql = "select count(*) from " + tableName + " where season=" + season;
Statement stmt = null;
ResultSet rs = null;
int count = 0;
try {
stmt = conn.createStatement();
rs = stmt.executeQuery(sql);
rs.next();
count = rs.getInt(1);
} catch (SQLException e) {
System.out.println(e.getMessage());
e.printStackTrace();
} finally {
try {
rs.close();
stmt.close();
} catch (SQLException e) {
}
}
return count;
}
/** /**
* 按季节查询负荷接入分析结果总表 * 按季节查询负荷接入分析结果总表
* @param tableName 表名 * @param tableName 表名
* @param season 季节 * @param season 季节
* @return * @return
*/ */
public List<LoadPosSeason> queryLoadPosSeason(String tableName, int season) { public List<LoadPosSeason> queryLoadPosSeason(String tableName, int season,int page,int rows) {
List<LoadPosSeason> loadPosSeasons = new LinkedList<>(); List<LoadPosSeason> loadPosSeasons = new LinkedList<>();
Connection conn = createConn(); Connection conn = createConn();
String sql; String sql;
sql = "select * from " + tableName + " where season=" + season; sql = "select * from " + tableName + " where season=" + season;
if(page>0 && rows>0){
sql +=" limit " + (page-1)*rows + "," + rows;
}
Statement stmt = null; Statement stmt = null;
ResultSet rs = null; ResultSet rs = null;
try { try {
......
...@@ -20,7 +20,7 @@ import java.util.List; ...@@ -20,7 +20,7 @@ import java.util.List;
import java.util.Map; import java.util.Map;
@Api(value = "desc of class", tags="DataImport",description = "数据导入") @Api(value = "desc of class", tags="DataImport",description = "数据导入")
@RestController //@RestController
@RequestMapping("import") @RequestMapping("import")
public class DataImportController { public class DataImportController {
@Autowired @Autowired
......
...@@ -11,6 +11,8 @@ import org.springframework.web.bind.annotation.RequestMethod; ...@@ -11,6 +11,8 @@ import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -21,30 +23,62 @@ public class LoadPosController { ...@@ -21,30 +23,62 @@ public class LoadPosController {
@Autowired @Autowired
CapService capService; CapService capService;
@ApiOperation(value = "接入分析", notes = "") @ApiOperation(value = "分析结果列表", notes = "")
@ApiImplicitParams({
@ApiImplicitParam(name = "page", value = "页码", dataType = "int", paramType = "query",required = true),
@ApiImplicitParam(name = "rows", value = "行数", dataType = "int", paramType = "query",required = true),
})
@RequestMapping(value = "/loadPosList",method = RequestMethod.GET) @RequestMapping(value = "/loadPosList",method = RequestMethod.GET)
public Object loadPosSeason() { public Object loadPosSeason(@RequestParam("page") int page,@RequestParam("rows") int rows) {
List result = capService.loadPosList(); int total = capService.loadPosListCout();
List loadPosList = new ArrayList();
if(total>0){
loadPosList = capService.loadPosList(page,rows);
}
Map<String,Object> result = new HashMap<>();
result.put("total",total);
result.put("rows",loadPosList);
return result;
}
@ApiOperation(value = "线路名称列表", notes = "")
@RequestMapping(value = "/lineNameList",method = RequestMethod.GET)
public Object lineNameList() {
List result = capService.lineNameList();
return result; return result;
} }
@ApiOperation(value = "负荷接入分析", notes = "")
@ApiImplicitParams({
@ApiImplicitParam(name = "lineName", value = "线路名称", dataType = "string", paramType = "query",required = true),
@ApiImplicitParam(name = "cap", value = "负荷容量", dataType = "int", paramType = "query",required = true),
@ApiImplicitParam(name = "type", value = "负荷特征(1为峰用电,2为谷用电,3为峰谷用电)", dataType = "int", paramType = "query",required = true),
})
@RequestMapping(value = "/loadPosAnalysis",method = RequestMethod.GET)
public Object loadPosAnalysis(@RequestParam("lineName") String lineName,@RequestParam("cap") int cap,@RequestParam("type") int type) {
Object result = capService.loadPosAnalysis(lineName, cap, type);
if(result != null)
return "分析完成";
else return "分析失败";
}
@ApiOperation(value = "高压负荷接入分析结果", notes = "") @ApiOperation(value = "高压负荷接入分析结果", notes = "")
@ApiImplicitParams({ @ApiImplicitParams({
@ApiImplicitParam(name = "mRID", value = "负荷ID", dataType = "string", paramType = "query",required = true), @ApiImplicitParam(name = "loadId", value = "负荷ID", dataType = "string", paramType = "query",required = true),
}) })
@RequestMapping(value = "/loadPosSw",method = RequestMethod.GET) @RequestMapping(value = "/loadPosSw",method = RequestMethod.GET)
public Object loadPosSw(@RequestParam("mRID") String mRID) { public Object loadPosSw(@RequestParam("loadId") String loadId) {
Object result = capService.loadPosSw(mRID); Object result = capService.loadPosSw(loadId);
return result; return result;
} }
@ApiOperation(value = "低压负荷接入分析结果", notes = "") @ApiOperation(value = "低压负荷接入分析结果", notes = "")
@ApiImplicitParams({ @ApiImplicitParams({
@ApiImplicitParam(name = "mRID", value = "负荷ID", dataType = "string", paramType = "query",required = true), @ApiImplicitParam(name = "loadId", value = "负荷ID", dataType = "string", paramType = "query",required = true),
}) })
@RequestMapping(value = "/loadPosTf",method = RequestMethod.GET) @RequestMapping(value = "/loadPosTf",method = RequestMethod.GET)
public Object loadPosTf(@RequestParam("mRID") String mRID) { public Object loadPosTf(@RequestParam("loadId") String loadId) {
Object result = capService.loadPosTf(mRID); Object result = capService.loadPosTf(loadId);
return result; return result;
} }
} }
package com.jinyun.web.controller;
import com.jinyun.web.service.CapService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Api(value = "desc of class", tags="LowMarginWarn",description = "低裕度预警分析")
@RestController
@RequestMapping("lowMarginWarn")
public class LowMarginWarnController {
@Autowired
CapService capService;
@ApiOperation(value = "lowMarginAnalysis", notes = "")
@RequestMapping(value = "/lowMarginAnalysis",method = RequestMethod.GET)
public Object lowMarginAnalysis() {
Map<String, Object> result = capService.lowMarginAnalysis();
return result;
}
}
...@@ -69,7 +69,7 @@ public class MainPageController { ...@@ -69,7 +69,7 @@ public class MainPageController {
@ApiOperation(value = "配变三相不平衡度列表", notes = "") @ApiOperation(value = "配变三相不平衡度列表", notes = "")
@RequestMapping(value = "/transformerUnbalanceList",method = RequestMethod.GET) @RequestMapping(value = "/transformerUnbalanceList",method = RequestMethod.GET)
public Object transformerUnbalanceList() { public Object transformerUnbalanceList() {
Map<String,Object> result = capService.transformerUnbalanceList(); List result = capService.transformerUnbalanceList();
return result; return result;
} }
...@@ -90,7 +90,7 @@ public class MainPageController { ...@@ -90,7 +90,7 @@ public class MainPageController {
@ApiOperation(value = "线路可开放容量大小", notes = "") @ApiOperation(value = "线路可开放容量大小", notes = "")
@RequestMapping(value = "/maxMinAvailCap",method = RequestMethod.GET) @RequestMapping(value = "/maxMinAvailCap",method = RequestMethod.GET)
public Object maxMinAvailCap() { public Object maxMinAvailCap() {
List result = capService.maxMinAvailCap(); Map<String, Object> result = capService.maxMinAvailCap();
return result; return result;
} }
} }
package com.jinyun.web.entity;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@AllArgsConstructor
@NoArgsConstructor
public class LinePassRateWeb {
String feederName;
String substation;
double springRate;
double summerRate;
double autumnRate;
double winterRate;
}
package com.jinyun.web.entity;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@AllArgsConstructor
@NoArgsConstructor
public class TfOverLoadRateWeb {
String feederName;
String devName;
String mRID;
String lineName;
String lineMRID;
String substation;
double springRate;
double summerRate;
double autumnRate;
double winterRate;
}
...@@ -2,8 +2,13 @@ package com.jinyun.web.service; ...@@ -2,8 +2,13 @@ package com.jinyun.web.service;
import com.jinyun.cap.*; import com.jinyun.cap.*;
import com.jinyun.web.entity.ImportData; import com.jinyun.web.entity.ImportData;
import com.jinyun.web.entity.LinePassRateWeb;
import com.jinyun.web.entity.TfOverLoadRateWeb;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.util.*; import java.util.*;
/** /**
...@@ -38,6 +43,7 @@ public class CapService { ...@@ -38,6 +43,7 @@ public class CapService {
static String allPsDbFile = "D:\\others\\yunqi\\项目\\缙云项目\\test\\allPsDb\\allPs.db"; static String allPsDbFile = "D:\\others\\yunqi\\项目\\缙云项目\\test\\allPsDb\\allPs.db";
static String feederDbFile = "D:\\others\\yunqi\\项目\\缙云项目\\test\\feederDb"; static String feederDbFile = "D:\\others\\yunqi\\项目\\缙云项目\\test\\feederDb";
static String feederDbName = "溪南G134线"; static String feederDbName = "溪南G134线";
static String cimFile = "D:\\others\\yunqi\\项目\\缙云项目\\test\\CIM";
public Map<String, Object> gridStatistics() { public Map<String, Object> gridStatistics() {
Map<String,Object> result = new HashMap<>(); Map<String,Object> result = new HashMap<>();
...@@ -83,7 +89,7 @@ public class CapService { ...@@ -83,7 +89,7 @@ public class CapService {
return result; return result;
} }
public Map<String, Object> transformerUnbalanceList() { public List transformerUnbalanceList() {
SqliteDb allPsDb = new SqliteDb(allPsDbFile); SqliteDb allPsDb = new SqliteDb(allPsDbFile);
List<String> feeders = allPsDb.queryAllFeederName(allFeederNameTable); // 查询馈线名称 List<String> feeders = allPsDb.queryAllFeederName(allFeederNameTable); // 查询馈线名称
List<TfUb> tfUbs = new LinkedList<>(); List<TfUb> tfUbs = new LinkedList<>();
...@@ -91,11 +97,7 @@ public class CapService { ...@@ -91,11 +97,7 @@ public class CapService {
SqliteDb sqliteDb = new SqliteDb(feederDbFile + "\\" + feeder + ".db"); SqliteDb sqliteDb = new SqliteDb(feederDbFile + "\\" + feeder + ".db");
tfUbs.addAll(sqliteDb.queryTfMonthUb(feeder + tfMonthUbTableName)); tfUbs.addAll(sqliteDb.queryTfMonthUb(feeder + tfMonthUbTableName));
} }
Map<String,Object> result = new HashMap<>(); return tfUbs;
for(TfUb tfUb:tfUbs){
result.put(tfUb.getmRID(),tfUb);
}
return result;
} }
public List hardLineList() { public List hardLineList() {
...@@ -125,7 +127,13 @@ public class CapService { ...@@ -125,7 +127,13 @@ public class CapService {
public List linePassRate() { public List linePassRate() {
SqliteDb sqliteDb = new SqliteDb(feederDbFile + "\\" + feederDbName + ".db"); SqliteDb sqliteDb = new SqliteDb(feederDbFile + "\\" + feederDbName + ".db");
List<LinePassRate> linePassRates = sqliteDb.queryLinePassRate(feederDbName + linePassRateTableName); List<LinePassRate> linePassRates = sqliteDb.queryLinePassRate(feederDbName + linePassRateTableName);
return linePassRates; List<LinePassRateWeb> linePassRateWebs = new ArrayList<>();
for(LinePassRate it:linePassRates){
LinePassRateWeb linePassRateWeb = new LinePassRateWeb(it.getFeederName(),
it.getSubstation(),it.getPassRate()[0],it.getPassRate()[1],it.getPassRate()[2],it.getPassRate()[3]);
linePassRateWebs.add(linePassRateWeb);
}
return linePassRateWebs;
} }
public Object transformerOverLoadRate() { public Object transformerOverLoadRate() {
...@@ -136,16 +144,19 @@ public class CapService { ...@@ -136,16 +144,19 @@ public class CapService {
SqliteDb sqliteDb = new SqliteDb(feederDbFile + "\\" + feeder + ".db"); SqliteDb sqliteDb = new SqliteDb(feederDbFile + "\\" + feeder + ".db");
tfOverLoadRates.addAll(sqliteDb.queryTfOverLoadRate(feeder + tfOverLoadRateTableName)); tfOverLoadRates.addAll(sqliteDb.queryTfOverLoadRate(feeder + tfOverLoadRateTableName));
} }
return tfOverLoadRates.get(0); //todo 先取第一个 TfOverLoadRate it = tfOverLoadRates.get(0); //todo 先取第一个
TfOverLoadRateWeb tfOverLoadRateWeb = new TfOverLoadRateWeb(it.getFeederName(),it.getDevName(),it.getmRID(),it.getLineName(),it.getLineMRID(),
it.getSubstation(),it.getOverLoadRate()[0],it.getOverLoadRate()[1],it.getOverLoadRate()[2],it.getOverLoadRate()[3]);
return tfOverLoadRateWeb;
} }
public List maxMinAvailCap() { public Map<String, Object> maxMinAvailCap() {
SqliteDb sqliteDb = new SqliteDb(allPsDbFile); SqliteDb sqliteDb = new SqliteDb(allPsDbFile);
MaxMinAvailCap maxFeeder = sqliteDb.queryMaxMinAvailCap(maxMinAvailCapTable, 1); MaxMinAvailCap maxFeeder = sqliteDb.queryMaxMinAvailCap(maxMinAvailCapTable, 1);
MaxMinAvailCap minFeeder = sqliteDb.queryMaxMinAvailCap(maxMinAvailCapTable, 2); MaxMinAvailCap minFeeder = sqliteDb.queryMaxMinAvailCap(maxMinAvailCapTable, 2);
List result = new LinkedList<>(); Map<String,Object> result = new HashMap<>();
result.add(maxFeeder); result.put("max",maxFeeder);
result.add(minFeeder); result.put("min",minFeeder);
return result; return result;
} }
...@@ -217,9 +228,15 @@ public class CapService { ...@@ -217,9 +228,15 @@ public class CapService {
return result; return result;
} }
public List loadPosList() { public int loadPosListCout() {
SqliteDb sqliteDb = new SqliteDb(allPsDbFile);
int total = sqliteDb.queryLoadPosSeasonCount(loadPosTable, 1);
return total;
}
public List loadPosList(int page, int rows) {
SqliteDb sqliteDb = new SqliteDb(allPsDbFile); SqliteDb sqliteDb = new SqliteDb(allPsDbFile);
List<LoadPosSeason> loadPosSeason = sqliteDb.queryLoadPosSeason(loadPosTable, 1); List<LoadPosSeason> loadPosSeason = sqliteDb.queryLoadPosSeason(loadPosTable, 1,page,rows);
return loadPosSeason; return loadPosSeason;
} }
...@@ -255,7 +272,7 @@ public class CapService { ...@@ -255,7 +272,7 @@ public class CapService {
} }
public Map<String, Object> transformerInfo(String mRID) { public Map<String, Object> transformerInfo(String mRID) {
// mouseOverTF为鼠标放置在公变上,查询公变容量,最大负荷,三相不平衡度。args[1]为馈线数据库文件夹的路径,args[2]为馈线名称,args[3]为公变mRID // mouseOverTF为鼠标放置在公变上,查询公变容量,最大负荷,三相不平衡度。args[1]为馈线数据库文件夹的路径,feederDbName为馈线名称,cimFile为公变mRID
SqliteDb sqliteDb = new SqliteDb(feederDbFile + "\\" + feederDbName + ".db"); SqliteDb sqliteDb = new SqliteDb(feederDbFile + "\\" + feederDbName + ".db");
double tFRatedCap = sqliteDb.queryTFCap(feederDbName + tfParamTableName, mRID); double tFRatedCap = sqliteDb.queryTFCap(feederDbName + tfParamTableName, mRID);
double tFMaxP = sqliteDb.queryMaxTFP(feederDbName + transformerTableName + HistoryData.seasonTable, mRID, -1); double tFMaxP = sqliteDb.queryMaxTFP(feederDbName + transformerTableName + HistoryData.seasonTable, mRID, -1);
...@@ -406,4 +423,135 @@ public class CapService { ...@@ -406,4 +423,135 @@ public class CapService {
result.add(importData3); result.add(importData3);
return result; return result;
} }
public List lineNameList() {
// allFeederName为查询所有馈线名称。args[1]为存储所有馈线数据的数据库文件的路径
// feederNames为馈线名称列表
SqliteDb sqliteDb = new SqliteDb(allPsDbFile);
List<String> feederNames = sqliteDb.queryAllFeederName(allFeederNameTable);
return feederNames;
}
public Object loadPosAnalysis(String lineName, int cap, int type) {
// loadPos为分析负荷接入位置,args[1]为馈线数据库文件夹的路径,feederDbName为馈线名称,cimFile为.xml文件夹的路径
// args[4]为负荷容量,args[5]为负荷特征(1为峰用电,2为谷用电,3为峰谷用电),args[6]为存储所有馈线数据的数据库文件的路径
SqliteDb sqliteDb = new SqliteDb(feederDbFile + "\\" + feederDbName + ".db");
String[] sourceStationNames = new String[]{sqliteDb.querySubstationName(feederDbName + substationTableName)};
JyPowerSystem ps = new JyPowerSystem(sourceStationNames);
try {
ps.loadFromCimXML(new FileInputStream(new File(cimFile + "\\" + feederDbName + "单线图.sln.xml")));
} catch (FileNotFoundException e) {
e.printStackTrace();
}
ps.createActiveIslands();
AvailCapModel availCapModel = new AvailCapModel(ps);
availCapModel.buildPaths();
availCapModel.createLoadPosTable(allPsDbFile, loadPosTable);
double loadCap = cap;
int loadType = type;
// 生成负荷曲线
double[] load = new double[96];
double peakAvg = 0.75 * loadCap;
double valleyAvg = 0.4 * loadCap;
double pvAvg = 0.7 * loadCap;
double minLoad = 0.2 * loadCap;
if (loadType == 1) {
load[0] = valleyAvg;
for (int i = 1; i < 32; i++) {
double r = 0.1 * (Math.random() - 0.5) * loadCap;
load[i] = load[i - 1] + r;
load[i] = Math.min(load[i], loadCap);
load[i] = Math.max(load[i], minLoad);
}
load[32] = peakAvg;
for (int i = 33; i < 88; i++) {
double r = 0.1 * (Math.random() - 0.5) * loadCap;
load[i] = load[i - 1] + r;
load[i] = Math.min(load[i], loadCap);
load[i] = Math.max(load[i], minLoad);
}
load[88] = valleyAvg;
for (int i = 89; i < 96; i++) {
double r = 0.1 * (Math.random() - 0.5) * loadCap;
load[i] = load[i - 1] + r;
load[i] = Math.min(load[i], loadCap);
load[i] = Math.max(load[i], minLoad);
}
} else if (loadType == 2) {
load[0] = peakAvg;
for (int i = 1; i < 32; i++) {
double r = 0.1 * (Math.random() - 0.5) * loadCap;
load[i] = load[i - 1] + r;
load[i] = Math.min(load[i], loadCap);
load[i] = Math.max(load[i], minLoad);
}
load[32] = valleyAvg;
for (int i = 33; i < 88; i++) {
double r = 0.1 * (Math.random() - 0.5) * loadCap;
load[i] = load[i - 1] + r;
load[i] = Math.min(load[i], loadCap);
load[i] = Math.max(load[i], minLoad);
}
load[88] = peakAvg;
for (int i = 89; i < 96; i++) {
double r = 0.1 * (Math.random() - 0.5) * loadCap;
load[i] = load[i - 1] + r;
load[i] = Math.min(load[i], loadCap);
load[i] = Math.max(load[i], minLoad);
}
} else if (loadType == 3) {
load[0] = pvAvg;
for (int i = 1; i < 96; i++) {
double r = 0.1 * (Math.random() - 0.5) * loadCap;
load[i] = load[i - 1] + r;
load[i] = Math.min(load[i], loadCap);
load[i] = Math.max(load[i], minLoad);
}
}
for (int i = 0; i < 96; i++) {
System.out.println(load[i] + ",");
}
// 负荷接入分析
LoadPos loadPos = availCapModel.loadPosOpt(load, feederDbName + switchTableName,
feederDbName + availCapTableName, feederDbFile + "\\" + feederDbName + ".db",
feederDbName + substationTableName, feederDbName + feederTableName,
feederDbName + oneLineParamTableName, feederDbName + switchTableName + HistoryData.seasonClusterTable,
feederDbName + swToTfTableName, feederDbName + tfParamTableName,
feederDbName + transformerTableName + HistoryData.tfAvailCapTable,
feederDbName + transformerTableName + HistoryData.seasonClusterTable,
feederDbName + transformerTableName + HistoryData.minITable, allPsDbFile, loadPosTable);
return loadPos;
}
public Map<String,Object> lowMarginAnalysis() {
// feederWarnDev为查询预警元件颜色。args[1]为馈线数据库文件夹路径,feederDbName为查询的馈线名称
// yellowTfs为显示黄色的公变列表,redTfs为显示红色的公变列表,yellowLines为显示黄色的线路列表,redLines为显示红色的线路列表,
// 属性loadState为1表示黄色,为2表示红色,属性mRID为设备mRID
SqliteDb sqliteDb = new SqliteDb(feederDbFile + "\\" + feederDbName + ".db");
List<WarnTf> warnTfs = sqliteDb.queryWarnTf(feederDbName + tfWarnTableName);
List<WarnLine> warnLines = sqliteDb.queryWarnLine(feederDbName + lineWarnTableName);
List<WarnTf> yellowTfs = new LinkedList<>(); // 显示黄色的公变
List<WarnTf> redTfs = new LinkedList<>(); // 显示红色的公变
List<WarnLine> yellowLines = new LinkedList<>(); // 显示黄色的线路
List<WarnLine> redLines = new LinkedList<>(); // 显示红色的线路
for (WarnTf warnTf : warnTfs) {
if (warnTf.getLoadState() == 1)
yellowTfs.add(warnTf);
else
redTfs.add(warnTf);
}
for (WarnLine warnLine : warnLines) {
if (warnLine.getLoadState() == 1)
yellowLines.add(warnLine);
else
redLines.add(warnLine);
}
Map<String,Object> result = new HashMap<>();
result.put("yellowTfs",yellowTfs);
result.put("redTfs",redTfs);
result.put("yellowLines",yellowLines);
result.put("redLines",redLines);
return result;
}
} }
server: server:
port: 6112 port: 8080
spring: spring:
datasource: datasource:
driverClassName: org.sqlite.JDBC driverClassName: org.sqlite.JDBC
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论