Commit fc12fc78 by xiang

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

parent eaed5e1d
...@@ -3,7 +3,9 @@ plugins { ...@@ -3,7 +3,9 @@ plugins {
id 'io.spring.dependency-management' version '1.0.11.RELEASE' id 'io.spring.dependency-management' version '1.0.11.RELEASE'
id 'java' id 'java'
} }
apply plugin: 'application'
mainClassName = 'com.jinyun.web.DemoApplication'
group = 'com.example' group = 'com.example'
version = '0.0.1-SNAPSHOT' version = '0.0.1-SNAPSHOT'
sourceCompatibility = '1.8' sourceCompatibility = '1.8'
......
package com.jinyun.web.controller;
import com.alibaba.fastjson.JSONObject;
import com.jinyun.web.annotation.UserLoginToken;
import com.jinyun.web.entity.User;
import com.jinyun.web.service.CapService;
import com.jinyun.web.service.TokenService;
import com.jinyun.web.service.UserService;
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.*;
import org.springframework.web.multipart.MultipartFile;
import java.io.File;
import java.io.IOException;
import java.util.List;
import java.util.Map;
@Api(value = "desc of class", tags="DataImport",description = "数据导入")
@RestController
@RequestMapping("import")
public class DataImportController {
@Autowired
CapService capService;
@ApiOperation("数据导入")
@PostMapping("/upload")
public String upload(@RequestBody MultipartFile file) throws IOException {
// for(MultipartFile file:files){
// String fileName = file.getOriginalFilename();
// String target = "d:/";
// File dest = new File(target+fileName);
// try {
// file.transferTo(dest);
// System.out.println( "上传成功");;
// } catch (IOException e) {
// e.printStackTrace();
// } catch (IllegalStateException e) {
// e.printStackTrace();
// }
// System.out.println( "上传失败");;
// }
String fileName = file.getOriginalFilename();
String target = "d:/";
File dest = new File(target+fileName);
try {
file.transferTo(dest);
return "上传成功";
} catch (IOException e) {
e.printStackTrace();
} catch (IllegalStateException e) {
e.printStackTrace();
}
return "上传成功";
}
@ApiOperation(value = "数据导入列表", notes = "")
@RequestMapping(value = "/dataImportList",method = RequestMethod.GET)
public Object transformerInfoDetail() {
List result = capService.dataImportList();
return result;
}
}
...@@ -18,13 +18,13 @@ public class LineBaseController { ...@@ -18,13 +18,13 @@ public class LineBaseController {
@Autowired @Autowired
CapService capService; CapService capService;
@ApiOperation(value = "基础信息列表", notes = "") @ApiOperation(value = "基础信息", notes = "")
@ApiImplicitParams({ @ApiImplicitParams({
@ApiImplicitParam(name = "mRID", value = "开关ID", dataType = "string", paramType = "query",required = true), @ApiImplicitParam(name = "mRID", value = "开关ID", dataType = "string", paramType = "query",required = true),
}) })
@RequestMapping(value = "/baseInfoList",method = RequestMethod.GET) @RequestMapping(value = "/baseInfo",method = RequestMethod.GET)
public Object baseInfoList(@RequestParam("mRID") String mRID) { public Object baseInfo(@RequestParam("mRID") String mRID) {
Map<String,Object> result = capService.baseInfoList(mRID); Map<String,Object> result = capService.baseInfo(mRID);
return result; return result;
} }
...@@ -80,7 +80,7 @@ public class LineBaseController { ...@@ -80,7 +80,7 @@ public class LineBaseController {
@ApiOperation(value = "线路信息明细", notes = "") @ApiOperation(value = "线路信息明细", notes = "")
@ApiImplicitParams({ @ApiImplicitParams({
@ApiImplicitParam(name = "mRID", value = "公变ID", dataType = "string", paramType = "query",required = true), @ApiImplicitParam(name = "mRID", value = "线路ID", dataType = "string", paramType = "query",required = true),
}) })
@RequestMapping(value = "/lineInfoDetail",method = RequestMethod.GET) @RequestMapping(value = "/lineInfoDetail",method = RequestMethod.GET)
public Object lineInfoDetail(@RequestParam("mRID") String mRID) { public Object lineInfoDetail(@RequestParam("mRID") String mRID) {
......
...@@ -49,34 +49,4 @@ public class LoginController { ...@@ -49,34 +49,4 @@ public class LoginController {
return "你已通过验证"; return "你已通过验证";
} }
@ApiOperation("数据导入")
@PostMapping("/upload")
public String upload(@RequestBody MultipartFile[] files) throws IOException {
for(MultipartFile file:files){
String fileName = file.getOriginalFilename();
String target = "d:/";
File dest = new File(target+fileName);
try {
file.transferTo(dest);
System.out.println( "上传成功");;
} catch (IOException e) {
e.printStackTrace();
} catch (IllegalStateException e) {
e.printStackTrace();
}
System.out.println( "上传失败");;
}
// String fileName = file.getOriginalFilename();
// String target = "d:/";
// File dest = new File(target+fileName);
// try {
// file.transferTo(dest);
// return "上传成功";
// } catch (IOException e) {
// e.printStackTrace();
// } catch (IllegalStateException e) {
// e.printStackTrace();
// }
return "上传成功";
}
} }
package com.jinyun.web.entity;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@AllArgsConstructor
@NoArgsConstructor
public class ImportData {
String stationName;
String lineName;
String importTime;
}
package com.jinyun.web.service; package com.jinyun.web.service;
import com.jinyun.cap.*; import com.jinyun.cap.*;
import com.jinyun.web.entity.ImportData;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.HashMap; import java.util.*;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
/** /**
* @author jinbin * @author jinbin
...@@ -151,7 +149,7 @@ public class CapService { ...@@ -151,7 +149,7 @@ public class CapService {
return result; return result;
} }
public Map<String, Object> baseInfoList(String mRID) { public Map<String, Object> baseInfo(String mRID) {
SqliteDb sqliteDb = new SqliteDb(feederDbFile + "\\" + feederDbName + ".db"); SqliteDb sqliteDb = new SqliteDb(feederDbFile + "\\" + feederDbName + ".db");
double lineRatedI = sqliteDb.queryOneLineParam(feederDbName + oneLineParamTableName, mRID); double lineRatedI = sqliteDb.queryOneLineParam(feederDbName + oneLineParamTableName, mRID);
double lineMaxI = sqliteDb.queryMaxSwitchI(feederDbName + switchTableName + HistoryData.seasonTable, mRID, -1); double lineMaxI = sqliteDb.queryMaxSwitchI(feederDbName + switchTableName + HistoryData.seasonTable, mRID, -1);
...@@ -165,6 +163,7 @@ public class CapService { ...@@ -165,6 +163,7 @@ public class CapService {
public Map<String, Object> lineSummer(String mRID) { public Map<String, Object> lineSummer(String mRID) {
SqliteDb sqliteDb = new SqliteDb(feederDbFile + "\\" + feederDbName + ".db"); SqliteDb sqliteDb = new SqliteDb(feederDbFile + "\\" + feederDbName + ".db");
// lineRatedICv为线路限额,seasonCluster2为负荷聚类曲线,seasonMax2为最大负荷曲线,cap2为可开放容量
double lineRatedI = sqliteDb.queryOneLineParam(feederDbName + oneLineParamTableName, mRID); double lineRatedI = sqliteDb.queryOneLineParam(feederDbName + oneLineParamTableName, mRID);
double[] lineRatedICv = new double[96]; double[] lineRatedICv = new double[96];
for (int i = 0; i < 96; i++) { for (int i = 0; i < 96; i++) {
...@@ -173,7 +172,9 @@ public class CapService { ...@@ -173,7 +172,9 @@ public class CapService {
double[] seasonCluster2 = sqliteDb.querySeasonSwitchI(feederDbName + switchTableName + HistoryData.seasonClusterTable, mRID, 2, 96); double[] seasonCluster2 = sqliteDb.querySeasonSwitchI(feederDbName + switchTableName + HistoryData.seasonClusterTable, mRID, 2, 96);
double[] seasonMax2 = sqliteDb.querySeasonSwitchI(feederDbName + switchTableName + HistoryData.seasonTable, mRID, 2, 96); double[] seasonMax2 = sqliteDb.querySeasonSwitchI(feederDbName + switchTableName + HistoryData.seasonTable, mRID, 2, 96);
double[] cap2 = sqliteDb.queryAvailCap(feederDbName + availCapTableName, mRID, 2, 96); double[] cap2 = sqliteDb.queryAvailCap(feederDbName + availCapTableName, mRID, 2, 96);
Map<String,Object> result = new HashMap<>(); Map<String,Object> result = new HashMap<>();
result.put("lineRatedICv",lineRatedICv);
result.put("seasonCluster2",seasonCluster2); result.put("seasonCluster2",seasonCluster2);
result.put("seasonMax2",seasonMax2); result.put("seasonMax2",seasonMax2);
result.put("cap2",cap2); result.put("cap2",cap2);
...@@ -191,6 +192,7 @@ public class CapService { ...@@ -191,6 +192,7 @@ public class CapService {
double[] seasonMax4 = sqliteDb.querySeasonSwitchI(feederDbName + switchTableName + HistoryData.seasonTable, mRID, 4, 96); double[] seasonMax4 = sqliteDb.querySeasonSwitchI(feederDbName + switchTableName + HistoryData.seasonTable, mRID, 4, 96);
double[] cap4 = sqliteDb.queryAvailCap(feederDbName + availCapTableName, mRID, 4, 96); double[] cap4 = sqliteDb.queryAvailCap(feederDbName + availCapTableName, mRID, 4, 96);
Map<String,Object> result = new HashMap<>(); Map<String,Object> result = new HashMap<>();
result.put("lineRatedICv",lineRatedICv);
result.put("seasonCluster4",seasonCluster4); result.put("seasonCluster4",seasonCluster4);
result.put("seasonMax4",seasonMax4); result.put("seasonMax4",seasonMax4);
result.put("cap4",cap4); result.put("cap4",cap4);
...@@ -208,6 +210,7 @@ public class CapService { ...@@ -208,6 +210,7 @@ public class CapService {
double[] seasonMax2 = sqliteDb.querySeasonSwitchI(feederDbName + switchTableName + HistoryData.seasonTable, mRID, 2, 96); double[] seasonMax2 = sqliteDb.querySeasonSwitchI(feederDbName + switchTableName + HistoryData.seasonTable, mRID, 2, 96);
double[] cap2 = sqliteDb.queryAvailCap(feederDbName + availCapTableName, mRID, 2, 96); double[] cap2 = sqliteDb.queryAvailCap(feederDbName + availCapTableName, mRID, 2, 96);
Map<String,Object> result = new HashMap<>(); Map<String,Object> result = new HashMap<>();
result.put("lineRatedICv",lineRatedICv);
result.put("psCluster2",psCluster2); result.put("psCluster2",psCluster2);
result.put("seasonMax2",seasonMax2); result.put("seasonMax2",seasonMax2);
result.put("cap2",cap2); result.put("cap2",cap2);
...@@ -252,7 +255,7 @@ public class CapService { ...@@ -252,7 +255,7 @@ public class CapService {
} }
public Map<String, Object> transformerInfo(String mRID) { public Map<String, Object> transformerInfo(String mRID) {
// mouseOverSw为鼠标放置在开关上,查询线路限额,最大电流,可开放容量。args[1]为馈线数据库文件夹的路径,feederDbName为馈线名称,mRID为线路mRID // mouseOverTF为鼠标放置在公变上,查询公变容量,最大负荷,三相不平衡度。args[1]为馈线数据库文件夹的路径,args[2]为馈线名称,args[3]为公变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);
...@@ -262,8 +265,7 @@ public class CapService { ...@@ -262,8 +265,7 @@ public class CapService {
Map<String,Object> result = new HashMap<>(); Map<String,Object> result = new HashMap<>();
result.put("tFRatedCap",tFRatedCap); result.put("tFRatedCap",tFRatedCap);
result.put("tFMaxP",tFMaxP); result.put("tFMaxP",tFMaxP);
result.put("ub0",ub[0]); result.put("ub",ub);
result.put("ub1",ub[1]);
result.put("phase",phase); result.put("phase",phase);
return result; return result;
} }
...@@ -393,4 +395,15 @@ public class CapService { ...@@ -393,4 +395,15 @@ public class CapService {
result.put("cap4",cap4); result.put("cap4",cap4);
return result; return result;
} }
public List dataImportList() {
ImportData importData1 = new ImportData("新建变电站","溪南G134线","2021.11.11 15:11:23");
ImportData importData2 = new ImportData("新建变电站","溪南G134线","2021.11.12 13:32:32");
ImportData importData3 = new ImportData("新建变电站","溪南G134线","2021.11.14 09:34:43");
List<ImportData> result = new ArrayList<ImportData>();
result.add(importData1);
result.add(importData2);
result.add(importData3);
return result;
}
} }
server: server:
port: 8080 port: 6112
spring: spring:
datasource: datasource:
driverClassName: org.sqlite.JDBC driverClassName: org.sqlite.JDBC
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论