添加查询台站数据有效率findStationProvisionEfficiency接口

This commit is contained in:
duwenyuan 2025-05-29 16:44:25 +08:00
parent 31d9585c0d
commit b451236b2a
6 changed files with 1139 additions and 52 deletions

View File

@ -6,6 +6,7 @@ import org.jeecg.common.api.vo.Result;
import org.jeecg.modules.entity.data.PointVo;
import org.jeecg.modules.entity.data.StationOperation;
import org.jeecg.modules.service.IStationOperationService;
import org.jeecg.modules.service.IStationProvisionEffService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.format.annotation.DateTimeFormat;
@ -24,77 +25,79 @@ public class StationOperationController {
@Autowired
private IStationOperationService stationOperationService;
@Autowired
private IStationProvisionEffService stationProvisionEffService;
@GetMapping("findStationType")
@ApiOperation(value = "查询台站/核设施类型", notes = "查询台站/核设施类型")
public List<String> findStationType(){
public List<String> findStationType() {
List<String> result = stationOperationService.findStationType();
return result;
}
@GetMapping("findList")
@ApiOperation(value = "查询台站/核设施信息", notes = "查询台站/核设施信息")
public List<StationOperation> findList(String status, String stationType){
public List<StationOperation> findList(String status, String stationType) {
List<StationOperation> result = stationOperationService.findList(status, stationType);
return result;
}
@GetMapping("findListApp")
@ApiOperation(value = "查询台站/核设施信息", notes = "查询台站/核设施信息")
public List<StationOperation> findListApp(@RequestParam String status,@RequestParam String stationType){
public List<StationOperation> findListApp(@RequestParam String status, @RequestParam String stationType) {
List<StationOperation> result = stationOperationService.findList(status, stationType);
return result;
}
@GetMapping("findInfo")
@ApiOperation(value = "查询台站/核设施详情信息", notes = "查询台站/核设施详情信息")
public Result findInfo(String stationId, String type){
public Result findInfo(String stationId, String type) {
Result result = stationOperationService.findInfo(stationId, type);
return result;
}
@GetMapping("findInfoApp")
@ApiOperation(value = "查询台站/核设施详情信息", notes = "查询台站/核设施详情信息")
public Result findInfoApp(@RequestParam String stationId,@RequestParam String type){
public Result findInfoApp(@RequestParam String stationId, @RequestParam String type) {
Result result = stationOperationService.findInfo(stationId, type);
return result;
}
@GetMapping("findTree")
@ApiOperation(value = "查询台站树形结构", notes = "查询台站树形结构")
public Result findTree(){
public Result findTree() {
Result result = stationOperationService.findTree();
return result;
}
@PostMapping("getHitEquList")
@ApiOperation(value = "查询半径内核设施信息", notes = "查询半径内核设施信息")
public Result getHitEquList(@RequestBody PointVo pointVo){
public Result getHitEquList(@RequestBody PointVo pointVo) {
Result result = stationOperationService.getHitEquList(pointVo);
return result;
}
@GetMapping("getDataReceivingStatus")
@ApiOperation(value = "查询台站监测数据信息", notes = "查询台站监测数据信息")
public Result getDataReceivingStatus(String userId, Double cacheTime, String oneStationId){
public Result getDataReceivingStatus(String userId, Double cacheTime, String oneStationId) {
return stationOperationService.getDataReceivingStatus(userId, cacheTime, oneStationId);
}
@GetMapping("getDataReceivingStatusApp")
@ApiOperation(value = "查询台站监测数据信息", notes = "查询台站监测数据信息")
public Result getDataReceivingStatusApp(@RequestParam String userId,@RequestParam Double cacheTime,@RequestParam String oneStationId){
public Result getDataReceivingStatusApp(@RequestParam String userId, @RequestParam Double cacheTime, @RequestParam String oneStationId) {
return stationOperationService.getDataReceivingStatus(userId, cacheTime, oneStationId);
}
@GetMapping("getDataProvisionEfficiency")
@ApiOperation(value = "查询台站数据提供率及有效率", notes = "查询台站数据提供率及有效率")
public Result getDataProvisionEfficiency(){
public Result getDataProvisionEfficiency() {
return stationOperationService.getDataProvisionEfficiency();
}
@GetMapping("getMapUrl")
@ApiOperation(value = "获取地图地址", notes = "获取地图地址")
public Result<?> getMapUrl(){
public Result<?> getMapUrl() {
Result<String> result = Result.OK();
result.setResult(mapUrl);
return result;
@ -108,4 +111,12 @@ public class StationOperationController {
return stationOperationService.getSelfStationGPS(stationCode, startDate, endDate);
}
@GetMapping("getStationProvisionEff")
@ApiOperation(value = "查询台站提供数据信息", notes = "查询台站提供数据信息")
public Result getStationProvisionEff(Integer[] stationIds, @DateTimeFormat(pattern = "yyyy-MM-dd") Date startTime, @DateTimeFormat(pattern = "yyyy-MM-dd") Date endTime) {
return stationProvisionEffService.getStationProvisionEff(stationIds, startTime, endTime);
}
}

View File

@ -7,29 +7,63 @@ import java.io.Serializable;
@Data
public class Rate implements Serializable {
//数据提供数量
private double phdfOfferedNumber;
//数据有效数量
private double phdfDataNumber;
//数据提供率
private double phdfOffered;
//数据有效率
private double phdfEfficient;
private double phdOfferedNumber;
private double phdDataNumber;
private double phdOffered;
private double phdEfficient;
private double metOfferedNumber;
private double metDataNumber;
private double met;
private double metEfficient;
private double sohOfferedNumber;
private double sohDataNumber;
private double soh;
private double sohEfficient;
private double pmtOfferedNumber;
private double pmtDataNumber;
private double phdMetSoh;
private double pmtEfficient;
public Rate() {
phdfOfferedNumber=0;
phdfDataNumber=0;
phdfOffered = 0;
phdfEfficient = 0;
phdOfferedNumber=0;
phdDataNumber=0;
phdOffered = 0;
phdEfficient = 0;
metOfferedNumber=0;
metDataNumber=0;
met = 0;
metEfficient=0;
sohOfferedNumber=0;
sohDataNumber=0;
soh = 0;
sohEfficient=0;
pmtOfferedNumber=0;
pmtDataNumber=0;
phdMetSoh = 0;
sohEfficient=0;
}
}

View File

@ -0,0 +1,11 @@
package org.jeecg.modules.service;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.common.api.vo.Result;
import org.jeecg.modules.entity.data.StationOperation;
import java.util.Date;
public interface IStationProvisionEffService extends IService<StationOperation> {
Result getStationProvisionEff(Integer[] stationIds, Date startTime, Date endTime);
}

View File

@ -11,6 +11,7 @@ import org.jeecg.modules.base.entity.configuration.GardsStations;
import org.jeecg.modules.base.enums.PageType;
import org.jeecg.modules.entity.GardsSampleDataWeb;
import org.jeecg.modules.entity.GardsSohDataWeb;
import org.jeecg.modules.feignclient.StationInfoService;
import org.jeecg.modules.service.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.format.annotation.DateTimeFormat;
@ -46,10 +47,12 @@ public class WebStatisticsController {
private IGardsAlertDataService gardsAlertDataService;
@Autowired
private IMenuNameService menuNameService;
@Autowired
private StationInfoService stationInfoService;
@GetMapping("findStationList")
@ApiOperation(value = "根据菜单名称查询对应的台站信息", notes = "根据菜单名称查询对应的台站信息")
public Result findStationList(String menuName){
public Result findStationList(String menuName) {
Result result = new Result();
List<GardsStations> gardsStations = menuNameService.findStationListByMenuName(menuName);
result.setSuccess(true);
@ -59,7 +62,7 @@ public class WebStatisticsController {
@GetMapping("findStationListApp")
@ApiOperation(value = "根据菜单名称查询对应的台站信息", notes = "根据菜单名称查询对应的台站信息")
public Result findStationListApp(@RequestParam String menuName){
public Result findStationListApp(@RequestParam String menuName) {
Result result = new Result();
List<GardsStations> gardsStations = menuNameService.findStationListByMenuName(menuName);
result.setSuccess(true);
@ -70,77 +73,77 @@ public class WebStatisticsController {
@GetMapping("findParticulatePage")
@ApiOperation(value = "气溶胶分页查询", notes = "气溶胶分页查询")
public Result findParticulatePage(QueryRequest queryRequest, Integer[] stationIds, String dataType,
String spectralQualifie, @DateTimeFormat(pattern = "yyyy-MM-dd") Date startTime,@DateTimeFormat(pattern = "yyyy-MM-dd") Date endTime){
String spectralQualifie, @DateTimeFormat(pattern = "yyyy-MM-dd") Date startTime, @DateTimeFormat(pattern = "yyyy-MM-dd") Date endTime) {
return gardsSampleDataWebService.findParticulatePage(queryRequest, stationIds, dataType, spectralQualifie, startTime, endTime);
}
@GetMapping("findMetPage")
@ApiOperation(value = "气象数据分页查询", notes = "气象数据分页查询")
public Result findMetPage(QueryRequest queryRequest, Integer[] stationIds,@DateTimeFormat(pattern = "yyyy-MM-dd") Date startTime,@DateTimeFormat(pattern = "yyyy-MM-dd") Date endTime){
public Result findMetPage(QueryRequest queryRequest, Integer[] stationIds, @DateTimeFormat(pattern = "yyyy-MM-dd") Date startTime, @DateTimeFormat(pattern = "yyyy-MM-dd") Date endTime) {
return gardsMetDataService.findMetPage(queryRequest, stationIds, startTime, endTime);
}
@GetMapping("findSohPage")
@ApiOperation(value = "状态数据分页查询", notes = "状态数据分页查询")
public Result findSohPage(QueryRequest queryRequest, Integer[] stationIds,@DateTimeFormat(pattern = "yyyy-MM-dd") Date startTime,@DateTimeFormat(pattern = "yyyy-MM-dd") Date endTime){
public Result findSohPage(QueryRequest queryRequest, Integer[] stationIds, @DateTimeFormat(pattern = "yyyy-MM-dd") Date startTime, @DateTimeFormat(pattern = "yyyy-MM-dd") Date endTime) {
return gardsSohDataService.findSohPage(queryRequest, stationIds, startTime, endTime);
}
@GetMapping("findAlertSohPage")
@ApiOperation(value = "台站报警数据分页查询", notes = "台站报警数据分页查询")
public Result findAlertSohPage(QueryRequest queryRequest, Integer[] stationIds,@DateTimeFormat(pattern = "yyyy-MM-dd") Date startTime,@DateTimeFormat(pattern = "yyyy-MM-dd") Date endTime){
public Result findAlertSohPage(QueryRequest queryRequest, Integer[] stationIds, @DateTimeFormat(pattern = "yyyy-MM-dd") Date startTime, @DateTimeFormat(pattern = "yyyy-MM-dd") Date endTime) {
return gardsSohDataService.findAlertSohPage(queryRequest, stationIds, startTime, endTime);
}
@GetMapping("findGeneratedReport")
@ApiOperation(value = "查询报告详情页面", notes = "查询报告详情页面")
public Result findGeneratedReport(Integer sampleId){
public Result findGeneratedReport(Integer sampleId) {
return gardsSampleDataWebService.findGeneratedReport(sampleId);
}
@GetMapping("sampleInfo")
@ApiOperation(value = "查看谱的详细信息", notes = "查看谱的详细信息")
public Result sampleInfo(@RequestParam Integer sampleId){
public Result sampleInfo(@RequestParam Integer sampleId) {
return gardsSampleDataWebService.sampleInfo(sampleId);
}
@GetMapping("radionuclideFile")
@ApiOperation("查看Radionuclide的文件")
public Result radionuclideFile(@RequestParam Integer sampleId,
HttpServletResponse response){
HttpServletResponse response) {
GardsSampleDataWeb sampleData = gardsSampleDataWebService.getOneSample(sampleId);
String filePath = sampleData.getInputFileName();
if (StrUtil.isBlank(filePath))
return Result.error(Prompt.FILE_NOT_EXITS);
return readLineUtil.readFtpFile(filePath,response);
return readLineUtil.readFtpFile(filePath, response);
}
@GetMapping("downloadFile")
@ApiOperation("查看Radionuclide的文件")
public void downloadFile(@RequestParam Integer sampleId, HttpServletResponse response){
public void downloadFile(@RequestParam Integer sampleId, HttpServletResponse response) {
gardsSampleDataWebService.downloadFile(sampleId, response);
}
@GetMapping("sohFile")
@ApiOperation(value = "查看RMSSHO的文件",notes = "查看RMSSHO的文件")
@ApiOperation(value = "查看RMSSHO的文件", notes = "查看RMSSHO的文件")
public Result sohFile(@RequestParam Integer sohId,
HttpServletResponse response){
HttpServletResponse response) {
GardsSohDataWeb soh = gardsSohDataService.getOneSoh(sohId);
String filePath = soh.getInputFileName();
if (StrUtil.isBlank(filePath))
return Result.error(Prompt.FILE_NOT_EXITS);
return readLineUtil.readFtpFile(filePath,response);
return readLineUtil.readFtpFile(filePath, response);
}
@GetMapping("arFile")
@ApiOperation(value = "查看ARR/RRR的文件", notes = "查看ARR/RRR的文件")
public Result arFile(@RequestParam String type,
@RequestParam Integer sampleId,
HttpServletResponse response){
HttpServletResponse response) {
String reportPath = "";
if (PageType.ARR.getType().equals(type)){ // 自动处理
if (PageType.ARR.getType().equals(type)) { // 自动处理
reportPath = autoService.getOne(sampleId).getReportPath();
}else if (PageType.RRR.getType().equals(type)){ // 人工交互
} else if (PageType.RRR.getType().equals(type)) { // 人工交互
reportPath = reviewedService.getOne(sampleId).getReportPath();
}
if (StrUtil.isBlank(reportPath))
@ -148,65 +151,65 @@ public class WebStatisticsController {
// 将FTP上的文件转为文件流返回到前端
if (!reportPath.endsWith(txt.getType()))
reportPath += txt.getType();
return readLineUtil.readFtpFile(reportPath,response);
return readLineUtil.readFtpFile(reportPath, response);
}
@GetMapping("radionuclideExport")
@ApiOperation(value = "导出Radionuclide的Excel",notes = "导出Radionuclide的Excel")
@ApiOperation(value = "导出Radionuclide的Excel", notes = "导出Radionuclide的Excel")
public void radionuclideExport(@RequestParam Integer[] stationIds,
@RequestParam String dataType,
@RequestParam String pageType,
String spectralQualifie,
@RequestParam String startTime,
@RequestParam String endTime,
HttpServletResponse response){
HttpServletResponse response) {
gardsSampleDataWebService.radionuclideExport(stationIds,
dataType, pageType, spectralQualifie, startTime, endTime, response);
}
@GetMapping("alertsExport")
@ApiOperation(value = "导出Alerts的Excel",notes = "导出Alerts的Excel")
@ApiOperation(value = "导出Alerts的Excel", notes = "导出Alerts的Excel")
public void alertsExport(@RequestParam Integer[] stationIds,
@RequestParam String startTime,
@RequestParam String endTime,
HttpServletResponse response){
gardsAlertDataService.alertsExport(stationIds, startTime, endTime,response);
HttpServletResponse response) {
gardsAlertDataService.alertsExport(stationIds, startTime, endTime, response);
}
@GetMapping("sohExport")
@ApiOperation(value = "导出RMSSOH的Excel",notes = "导出RMSSOH的Excel")
@ApiOperation(value = "导出RMSSOH的Excel", notes = "导出RMSSOH的Excel")
public void sohExport(@RequestParam Integer[] stationIds,
@RequestParam String startTime,
@RequestParam String endTime,
HttpServletResponse response){
HttpServletResponse response) {
gardsSohDataService.sohExport(stationIds, startTime, endTime, response);
}
@GetMapping("metExport")
@ApiOperation(value = "导出Met的Excel",notes = "导出Met的Excel")
@ApiOperation(value = "导出Met的Excel", notes = "导出Met的Excel")
public void metExport(@RequestParam Integer[] stationIds,
@RequestParam String startTime,
@RequestParam String endTime,
HttpServletResponse response){
HttpServletResponse response) {
gardsMetDataService.metExport(stationIds, startTime, endTime, response);
}
@GetMapping("arrExport")
@ApiOperation(value = "导出ARR的Excel",notes = "导出ARR的Excel")
@ApiOperation(value = "导出ARR的Excel", notes = "导出ARR的Excel")
public void arrExport(@RequestParam Integer[] stationIds,
@RequestParam String startTime,
@RequestParam String endTime,
HttpServletResponse response){
autoService.arrExport(stationIds,startTime,endTime,response);
HttpServletResponse response) {
autoService.arrExport(stationIds, startTime, endTime, response);
}
@GetMapping("rrrExport")
@ApiOperation(value = "导出RRR的Excel",notes = "导出RRR的Excel")
@ApiOperation(value = "导出RRR的Excel", notes = "导出RRR的Excel")
public void rrrExport(@RequestParam Integer[] stationIds,
@RequestParam String startTime,
@RequestParam String endTime,
HttpServletResponse response){
reviewedService.rrrExport(stationIds, startTime, endTime,response);
HttpServletResponse response) {
reviewedService.rrrExport(stationIds, startTime, endTime, response);
}
@GetMapping("findNuclideList")
@ -218,7 +221,7 @@ public class WebStatisticsController {
@GetMapping("findNuclideStatistics")
@ApiOperation(value = "查询核素统计结果", notes = "查询核素统计结果")
public Result findNuclideStatistics(String stationId, String systemType, String dbName, String[] nuclideNames,
@DateTimeFormat(pattern = "yyyy-MM-dd") Date startDate, @DateTimeFormat(pattern = "yyyy-MM-dd") Date endDate) {
@DateTimeFormat(pattern = "yyyy-MM-dd") Date startDate, @DateTimeFormat(pattern = "yyyy-MM-dd") Date endDate) {
return gardsSampleDataWebService.findNuclideStatistics(stationId, systemType, dbName, nuclideNames, startDate, endDate);
}
@ -230,6 +233,12 @@ public class WebStatisticsController {
gardsSampleDataWebService.exportNuclideStatistics(stationIds, systemType, dbName, nuclideNames, startDate, endDate, response);
}
@GetMapping("findStationProvisionEfficiency")
@ApiOperation(value="查询台站数据提供率及有效率",notes = "查询台站数据提供率及有效率")
public Result findStationProvisionEfficiency( Integer[] stationIds, @DateTimeFormat(pattern = "yyyy-MM-dd") Date startTime, @DateTimeFormat(pattern = "yyyy-MM-dd") Date endTime) {
Result result=stationInfoService.getStationProvisionEff(stationIds,startTime,endTime);
return result;
}
}

View File

@ -0,0 +1,19 @@
package org.jeecg.modules.feignclient;
import org.jeecg.common.api.vo.Result;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.stereotype.Component;
import org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.Date;
@Component
@Service
@FeignClient(value = "armd-station-operation",path = "/stationOperation")
public interface StationInfoService {
@GetMapping("/getStationProvisionEff")
Result getStationProvisionEff(@RequestParam Integer[] stationIds,@RequestParam("startTime") @DateTimeFormat(pattern = "yyyy-MM-dd") Date startTime,@RequestParam("endTime") @DateTimeFormat(pattern = "yyyy-MM-dd")Date endTime);
}