3944f075 张雷

药耗,能耗分析页面迁移

1 个父辈 691b55e8
正在显示 29 个修改的文件 包含 724 行增加50 行删除
......@@ -120,8 +120,8 @@ public class CommandCentreServiceImpl implements ICommandCentreService {
@Override
public DepartDrugResult getYhTotal(String month) {
// String monthTb = getTbMonth(month);//同比时间
// String monthHb = getHbMonth(month);//环比时间
String monthTb = getTbMonth(month);//同比时间
String monthHb = getHbMonth(month);//环比时间
// String view2119 = "2119ecbf53a1d2d0708258ff67cfd9e1";
// String view3a24 = "3a243d5715b9e1a3753c180872ca0df9";
// String departId = "1519193830953553920,1519200041706954752,1816759403152666624,1818214145808531456,1818214519948836864," +
......@@ -141,57 +141,12 @@ public class CommandCentreServiceImpl implements ICommandCentreService {
departDrugResult.setZyh("0");
departDrugResult.setZyhHb("0");
departDrugResult.setZyhTb("0");
DepartDrugDataVO departDrugDataVO1 = new DepartDrugDataVO();
departDrugDataVO1.setDepartId("1519193830953553920");
departDrugDataVO1.setDepartName("杨村镇污水处理厂");
departDrugDataVO1.setYjdh("0");
departDrugDataVO1.setYjdhHb("0");
departDrugDataVO1.setYjdhTb("0");
DepartDrugDataVO departDrugDataVO2 = new DepartDrugDataVO();
departDrugDataVO2.setDepartId("1519200041706954752");
departDrugDataVO2.setDepartName("秦栏镇污水处理厂");
departDrugDataVO2.setYjdh("0");
departDrugDataVO2.setYjdhHb("0");
departDrugDataVO2.setYjdhTb("0");
List<DepartDrugDataVO> drugList = new ArrayList<>();
// drugList = fReportItemvMapper.getYhList(month,monthTb,monthHb);
drugList.add(departDrugDataVO1);
drugList.add(departDrugDataVO2);
drugList = fReportItemvMapper.getYhList(month,monthTb,monthHb);
departDrugResult.setDrugList(drugList);
return departDrugResult;
}
/***
* 根据String itemCode, String reportId 查询reitId字段
* @param reportItemvParam
* @return
*/
/* private String getReitId( ReportItemvParam reportItemvParam){
List<FReportItem> reitIdList = reportItemMapper.getItemInfoByItemCode(reportItemvParam.getReportItemCode(),reportItemvParam.getReportId());
String reitId = null;
if(reitIdList != null && !reitIdList.isEmpty()){
reitId = reitIdList.get(0).getId();
}
return reitId;
}*/
/* private String getReitId( String itemCode, String reportId){
JdbcTemplate jdbcTemplate = (JdbcTemplate) SpringContextUtils.getBean("master");
String sql = "select id from f_report_item where report_id = '"+reportId+"' and required='1' and item_code = '"+itemCode+"'";
// String sql = "SELECT column_name FROM table_name WHERE condition";
List<String> reitIdList = jdbcTemplate.query(sql, (rs, rowNum) -> rs.getString("id"));
//该方法会返回查询结果集中的第一条记录对应的指定字段值。
//String sql = "SELECT column_name FROM table_name WHERE condition";
//String reitId = jdbcTemplate.queryForObject(sql, String.class);
System.out.println(reitIdList+"----reitIdList");
String reitId = null;
if(reitIdList != null && !reitIdList.isEmpty()){
reitId = reitIdList.get(0);
}
return reitId;
}*/
/**
* 同比
* @param month
......
......@@ -142,7 +142,7 @@
FROM
report_electric_cost
WHERE
month BETWEEN '2024-01' AND '2024-09'
month BETWEEN '2024-01' AND '2024-10'
GROUP BY month
</select>
......@@ -153,7 +153,8 @@
</select>
<select id="getYhList" resultType="com.skua.modules.report.vo.DepartDrugDataVO">
select * from sys_depart where depart_type = '1'
select d.id AS depart_id,d.depart_name,'0' as yjdh,'0' as yjdh_tb,'0' as yjdh_hb from sys_depart d
where d.depart_type = '1'
</select>
</mapper>
......
package com.skua.modules.equipment.controller;
import com.skua.core.api.vo.Result;
import com.skua.core.aspect.annotation.AutoLog;
import com.skua.modules.equipment.dto.DrugDto;
import com.skua.modules.equipment.service.IDrugConsumptionAnalysisService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
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.RestController;
import java.util.Map;
@Slf4j
@Api(tags = "药耗分析")
@RestController
@RequestMapping("/drug/consumption/analysis")
public class DrugConsumptionAnalysisController {
@Autowired
private IDrugConsumptionAnalysisService drugConsumptionAnalysisService;
@AutoLog(value = "数据展示")
@ApiOperation(value = "数据展示", notes = "数据展示")
@RequestMapping(value = "/data/display", method = RequestMethod.GET)
public Result<Map<String, Object>> dataDisplay(String time) {
Result<Map<String, Object>> result = new Result<>();
Map<String, Object> data = drugConsumptionAnalysisService.DataDisplay(time);
result.setResult(data);
result.setSuccess(true);
return result;
}
@AutoLog(value = "总药耗趋势")
@ApiOperation(value = "总药耗趋势", notes = "总药耗趋势")
@RequestMapping(value = "/drug/consumption/trend", method = RequestMethod.GET)
public Result<Map<String, Object>> drugConsumptionTrend(String time) {
Result<Map<String, Object>> result = new Result<>();
Map<String, Object> data = drugConsumptionAnalysisService.drugConsumptionTrend(time);
result.setResult(data);
result.setSuccess(true);
return result;
}
@AutoLog(value = "吨水药耗趋势")
@ApiOperation(value = "吨水药耗趋势", notes = "吨水药耗趋势")
@RequestMapping(value = "/consumption/ton/of/water/trend", method = RequestMethod.GET)
public Result<Map<String, Object>> consumptionTonOfWaterTrend(String time) {
Result<Map<String, Object>> result = new Result<>();
Map<String, Object> data = drugConsumptionAnalysisService.consumptionTonOfWaterTrend(time);
result.setResult(data);
result.setSuccess(true);
return result;
}
@AutoLog(value = "药剂占比统计 type 1.按明细 2.按类型")
@ApiOperation(value = "药剂占比统计 type 1.按明细 2.按类型", notes = "药剂占比统计 type 1.按明细 2.按类型")
@RequestMapping(value = "/proportion/statistics", method = RequestMethod.GET)
public Result<Map<String, Object>> proportionStatistics(String time,Integer type) {
Result<Map<String, Object>> result = new Result<>();
Map<String, Object> data = drugConsumptionAnalysisService.proportionStatistics(time,type);
result.setResult(data);
result.setSuccess(true);
return result;
}
@AutoLog(value = "药剂占比统计列表 type 1.按明细 2.按类型")
@ApiOperation(value = "药剂占比统计列表 type 1.按明细 2.按类型", notes = "药剂占比统计列表 type 1.按明细 2.按类型")
@RequestMapping(value = "/proportion/statistics/detail", method = RequestMethod.GET)
public Result<Map<String, Object>> proportionStatisticsDetail(String time,Integer type) {
Result<Map<String, Object>> result = new Result<>();
Map<String, Object> data = drugConsumptionAnalysisService.proportionStatisticsDetail(time,type);
result.setResult(data);
result.setSuccess(true);
return result;
}
@AutoLog(value = "相关性分析 type 1.絮凝剂 2.碳源 3.除磷剂")
@ApiOperation(value = "相关性分析 type 1.絮凝剂 2.碳源 3.除磷剂", notes = "相关性分析 type 1.絮凝剂 2.碳源 3.除磷剂")
@RequestMapping(value = "/correlation/analysis", method = RequestMethod.GET)
public Result<Map<String, Object>> correlationAnalysis(String time,Integer type) {
Result<Map<String, Object>> result = new Result<>();
Map<String, Object> data = drugConsumptionAnalysisService.correlationAnalysis(time,type);
result.setResult(data);
result.setSuccess(true);
return result;
}
@AutoLog(value = "总药耗趋势详情")
@ApiOperation(value = "总药耗趋势详情", notes = "总药耗趋势详情")
@RequestMapping(value = "/drug/consumption/trend/detail", method = RequestMethod.GET)
public Result<Map<String, Object>> drugConsumptionTrendDetail(DrugDto drugDto) {
Result<Map<String, Object>> result = new Result<>();
Map<String, Object> data = drugConsumptionAnalysisService.drugConsumptionTrendDetail(drugDto);
result.setResult(data);
result.setSuccess(true);
return result;
}
@AutoLog(value = "相关性分析药剂明细 type 1.絮凝剂 2.碳源 3.除磷剂")
@ApiOperation(value = "相关性分析药剂明细 type 1.絮凝剂 2.碳源 3.除磷剂", notes = "相关性分析药剂明细 type 1.絮凝剂 2.碳源 3.除磷剂")
@RequestMapping(value = "/correlation/analysis/detail", method = RequestMethod.GET)
public Result<Map<String, Object>> correlationAnalysisDetail(String time,Integer type) {
Result<Map<String, Object>> result = new Result<>();
Map<String, Object> data = drugConsumptionAnalysisService.correlationAnalysisDetail(time,type);
result.setResult(data);
result.setSuccess(true);
return result;
}
}
package com.skua.modules.equipment.controller;
import com.skua.core.api.vo.Result;
import com.skua.core.aspect.annotation.AutoLog;
import com.skua.modules.equipment.service.IPowerConsumptionAnalysisService;
import com.skua.modules.equipment.vo.AnysisParamsVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
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.RestController;
import java.util.Map;
@Slf4j
@Api(tags = "电耗分析")
@RestController
@RequestMapping("/power/consumption/analysis")
public class PowerConsumptionAnalysisController {
@Autowired
private IPowerConsumptionAnalysisService powerConsumptionAnalysisService;
@AutoLog(value = "数据展示")
@ApiOperation(value = "数据展示", notes = "数据展示")
@RequestMapping(value = "/data/display", method = RequestMethod.GET)
public Result<Map<String, Object>> dataDisplay(AnysisParamsVO anysisParamsVO) {
Result<Map<String, Object>> result = new Result<>();
Map<String, Object> data = powerConsumptionAnalysisService.dataDisplay(anysisParamsVO);
result.setResult(data);
result.setSuccess(true);
return result;
}
@AutoLog(value = "电耗趋势")
@ApiOperation(value = "电耗趋势", notes = "电耗趋势")
@RequestMapping(value = "/power/consumption/trend", method = RequestMethod.GET)
public Result<Map<String, Object>> powerConsumptionTrend(AnysisParamsVO anysisParamsVO) {
Result<Map<String, Object>> result = new Result<>();
Map<String, Object> data = powerConsumptionAnalysisService.powerConsumptionTrend(anysisParamsVO);
result.setResult(data);
result.setSuccess(true);
return result;
}
@AutoLog(value = "吨水电耗趋势")
@ApiOperation(value = "吨水电耗趋势", notes = "吨水电耗趋势")
@RequestMapping(value = "/ton/of/water/trend", method = RequestMethod.GET)
public Result<Map<String, Object>> tonOfWaterTrend(AnysisParamsVO anysisParamsVO) {
Result<Map<String, Object>> result = new Result<>();
Map<String, Object> data = powerConsumptionAnalysisService.tonOfWaterTrend(anysisParamsVO);
result.setResult(data);
result.setSuccess(true);
return result;
}
@AutoLog(value = "吨水电耗与负荷率对比")
@ApiOperation(value = "吨水电耗与负荷率对比", notes = "吨水电耗与负荷率对比")
@RequestMapping(value = "/tonOfWaterAndLoadRate", method = RequestMethod.GET)
public Result<Map<String, Object>> tonOfWaterAndLoadRate(AnysisParamsVO anysisParamsVO) throws Exception{
Result<Map<String, Object>> result = new Result<>();
Map<String, Object> data = powerConsumptionAnalysisService.tonOfWaterAndLoadRate(anysisParamsVO);
result.setResult(data);
result.setSuccess(true);
return result;
}
@AutoLog(value = "吨水电耗与污染物浓度")
@ApiOperation(value = "吨水电耗与污染物浓度", notes = "吨水电耗与污染物浓度")
@RequestMapping(value = "/tonOfWaterAndPollutantConcentration", method = RequestMethod.GET)
public Result<Map<String, Object>> tonOfWaterAndPollutantConcentration(AnysisParamsVO anysisParamsVO) throws Exception{
Result<Map<String, Object>> result = new Result<>();
Map<String, Object> data = powerConsumptionAnalysisService.tonOfWaterAndPollutantConcentration(anysisParamsVO);
result.setResult(data);
result.setSuccess(true);
return result;
}
@AutoLog(value = "吨水电耗与污染物去除率对比")
@ApiOperation(value = "吨水电耗与污染物去除率对比", notes = "吨水电耗与污染物去除率对比")
@RequestMapping(value = "/tonOfWaterAndPollutantRemovalRate", method = RequestMethod.GET)
public Result<Map<String, Object>> tonOfWaterAndPollutantRemovalRate(AnysisParamsVO anysisParamsVO) throws Exception{
Result<Map<String, Object>> result = new Result<>();
Map<String, Object> data = powerConsumptionAnalysisService.tonOfWaterAndPollutantRemovalRate(anysisParamsVO);
result.setResult(data);
result.setSuccess(true);
return result;
}
}
package com.skua.modules.equipment.dto;
import lombok.Data;
/**
* 预警统计
*/
@Data
public class AlarmCountDto {
String dateStr;
int count;
}
package com.skua.modules.equipment.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class AlarmDto {
@ApiModelProperty("超标名称")
private String name;
@ApiModelProperty("超标值")
private String v;
@ApiModelProperty("超标时间")
private String time;
@ApiModelProperty("上限")
private String upperLimit;
@ApiModelProperty("下限")
private String lowerLimit;
}
package com.skua.modules.equipment.dto;
import lombok.Data;
@Data
public class ConsumptionDto {
private String time;
private String dh;
private String dsdh;
}
package com.skua.modules.equipment.dto;
import lombok.Data;
@Data
public class DrugConsumptionDto {
private String time;
private String yh;
private String dsyh;
}
package com.skua.modules.equipment.dto;
import lombok.Data;
@Data
public class DrugConsumptionTrendDto {
private String time;
private Double zyh;
private Double tbzyh;
}
package com.skua.modules.equipment.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class DrugDto {
@ApiModelProperty("1.日 2.月 .3自定义")
private Integer type;
@ApiModelProperty("开始时间")
private String startTime;
@ApiModelProperty("结束时间")
private String endTime;
}
package com.skua.modules.equipment.dto;
import lombok.Data;
@Data
public class PollutantConcentrationDto {
private String time;
private String v;
}
package com.skua.modules.equipment.dto;
import lombok.Data;
@Data
public class QualityChangeDto {
private String dateStr;
private String v;
}
package com.skua.modules.equipment.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class ReportItemCustomDetailDto {
@ApiModelProperty(value = "指标编码")
private String itemCode;
@ApiModelProperty(value = "指标名称")
private String itemName;
@ApiModelProperty("吨水耗量")
private Double dshl;
@ApiModelProperty("吨水耗量同比")
private Double dshltb;
@ApiModelProperty("吨水耗量环比")
private Double dshlhb;
@ApiModelProperty("总耗量")
private Double zhl;
@ApiModelProperty("总耗量同比")
private Double zhltb;
@ApiModelProperty("总耗量环比")
private Double zhlhb;
}
package com.skua.modules.equipment.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class ReportItemCustomDto {
private String id;
@ApiModelProperty(value = "父ID")
private String pid;
@ApiModelProperty(value = "节点路径")
private String treePath;
@ApiModelProperty(value = "药剂类型")
private String itemType;
@ApiModelProperty(value = "指标编码")
private String itemCode;
@ApiModelProperty(value = "指标名称")
private String itemName;
private String v;
}
package com.skua.modules.equipment.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class ReportItemCustomValueDetailDto {
@ApiModelProperty(value = "药剂类型")
private String itemType;
@ApiModelProperty(value = "指标编码")
private String itemCode;
@ApiModelProperty(value = "指标名称")
private String itemName;
@ApiModelProperty("时间")
private String time;
@ApiModelProperty("总药耗")
private String zyh;
@ApiModelProperty("吨水药耗")
private String dsyh;
}
package com.skua.modules.equipment.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class ReportItemCustomValueDto {
@ApiModelProperty(value = "药剂类型")
private String itemType;
@ApiModelProperty(value = "指标编码")
private String itemCode;
@ApiModelProperty(value = "指标名称")
private String itemName;
@ApiModelProperty("时间")
private String time;
@ApiModelProperty("数量")
private String v;
}
package com.skua.modules.equipment.dto;
import lombok.Data;
@Data
public class TonOfWaterAndLoadRateDto {
private String time;
private String dsdh;
private String fhl;
}
package com.skua.modules.equipment.dto;
import lombok.Data;
@Data
public class TonOfWaterTrendDto {
private String time;
private String v;
}
package com.skua.modules.equipment.dto;
import lombok.Data;
@Data
public class powerConsumptionTrendDto {
private String time;
private String zdh;
private String tbzdh;
}
package com.skua.modules.equipment.mapper;
import com.skua.modules.equipment.dto.*;
import com.skua.modules.equipment.vo.AlarmVo;
import com.skua.modules.equipment.vo.MetricVo;
import com.skua.modules.equipment.vo.StructDictVo;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
public interface ComprehensiveSupervisionMapper {
String selectDeviceName(@Param("factoryId") String factoryId);
MetricVo selectMetric(@Param("metricUidTag") String metricUidTag,@Param("factoryId") String factoryId);
String selectSJGM(@Param("factoryId") String factoryId);
List<AlarmVo> selectAlarms();
List<AlarmVo> selectInAlarms();
List<AlarmDto> selectDhByMonths(@Param("list") List<String> months, @Param("factoryId") String factoryId);
List<AlarmDto> selectAllDh(@Param("factoryId") String factoryId);
List<AlarmDto> selectDhByStartAndEnd(@Param("startTime") String startTime, @Param("endTime") String endTime,@Param("factoryId") String factoryId);
AlarmDto selectDhByYear(String year);
List<String> selectDataIdsByMonth(String month);
List<ReportItemCustomDto> selectItemCustom();
List<ReportItemCustomDto> selectValueByDataId(@Param("list") List<String> dataIds);
ReportItemCustomDto selectVByDataIdAndPid(@Param("list") List<String> dataIds, @Param("id") String id);
String selectZyhByDataIds(@Param("list") List<String> dataIds);
List<AlarmDto> selectAllYh();
List<AlarmDto> selectYhByStartTimeAndEndTime(@Param("startTime") String startTime, @Param("endTime") String endTime);
List<ReportItemCustomValueDto> selectItemDetail(@Param("list") List<String> dataIds);
String selectXnjByDataIds(@Param("list") List<String> dataIds);
String selectGwnByTime(String s);
String selectTyByDataIds(@Param("list")List<String> dataIds);
String selectBodByTime(String s);
String selectTnByTime(String s);
String selectClByDataIds(@Param("list")List<String> dataIds);
List<String> selectDataIdsByDay(String seven);
List<ReportItemCustomValueDetailDto> selectVByDay(@Param("list") List<String> dataIds);
List<ReportItemCustomValueDetailDto> selectVByMonth(@Param("list") List<String> dataIds);
List<ReportItemCustomValueDto> selectDetailVByMonth(@Param("list")List<String> dataIds, @Param("id") String s);
List<StructDictVo> structDictList();
List<StructDictVo> metricList(String id);
String selectMetricNameById(String id);
/**
* 月度电耗水耗统计
*
* @return
*/
ConsumptionDto selectMonthlyPowerConsumption(@Param("dataStr") String dataStr, @Param("departIds") List<String> departIds);
/**
* 月度药耗统计
*
* @return
*/
DrugConsumptionDto selectMonthlyDrugConsumptionStatistics(@Param("dataStr") String dataStr, @Param("departIds") List<String> departIds);
/**
* 天出水量统计
*
* @return
*/
Integer selectShByDay(@Param("date") String date, @Param("departIds") List<String> departIds);
/**
* 查询某年 每日警告的次数列表
*
* @param year
* @returnt
*/
List<AlarmCountDto> selectCountAlarmByYearForDay(@Param("year") String year, @Param("departIds") List<String> departIds);
/**
* 根据时间查询水质变化
*
* @return
*/
List<QualityChangeDto> qualityChange(List<String> days, String code, @Param("departIds") List<String> departIds);
/**
* 获取月度处理水量
* @param list
* @param factoryId
* @return
*/
List<Map<String, Object>> selectClslByMonths(List<String> list, String factoryId);
/**
* 获取所有月份处理水量
* @param factoryId
* @return
*/
List<AlarmDto> selectAllClsl(String factoryId);
}
package com.skua.modules.equipment.service;
import com.skua.modules.equipment.dto.DrugDto;
import java.util.Map;
public interface IDrugConsumptionAnalysisService {
Map<String, Object> DataDisplay(String time);
Map<String, Object> drugConsumptionTrend(String time);
Map<String, Object> consumptionTonOfWaterTrend(String time);
Map<String, Object> proportionStatistics(String time, Integer type);
Map<String, Object> proportionStatisticsDetail(String time, Integer type);
Map<String, Object> correlationAnalysis(String time, Integer type);
Map<String, Object> drugConsumptionTrendDetail(DrugDto drugDto);
Map<String, Object> correlationAnalysisDetail(String time, Integer type);
}
package com.skua.modules.equipment.service;
import com.skua.modules.equipment.vo.AnysisParamsVO;
import java.util.Map;
public interface IPowerConsumptionAnalysisService {
/**
* 数据展示
* @param anysisParamsVO
* @return
*/
Map<String, Object> dataDisplay(AnysisParamsVO anysisParamsVO);
/**
* 电耗趋势
* @param anysisParamsVO
* @return
*/
Map<String, Object> powerConsumptionTrend(AnysisParamsVO anysisParamsVO);
/**
* 吨水电耗趋势
* @param anysisParamsVO
* @return
*/
Map<String, Object> tonOfWaterTrend(AnysisParamsVO anysisParamsVO);
/**
* 吨水电耗和负荷率对比
* @param anysisParamsVO
* @return
*/
Map<String, Object> tonOfWaterAndLoadRate(AnysisParamsVO anysisParamsVO) throws Exception;
/**
* 吨水电耗与污染物浓度
* @param anysisParamsVO
* @return
*/
Map<String, Object> tonOfWaterAndPollutantConcentration(AnysisParamsVO anysisParamsVO);
/**
* 吨水电耗与污染物去除率对比
* @param anysisParamsVO
* @return
*/
Map<String, Object> tonOfWaterAndPollutantRemovalRate(AnysisParamsVO anysisParamsVO);
}
package com.skua.modules.equipment.vo;
import lombok.Data;
@Data
public class AlarmVo {
private String alarmParamCode;
private String upperLimit;
private String lowerLimit;
}
package com.skua.modules.equipment.vo;
import lombok.Data;
@Data
public class AnysisParamsVO {
private String time;
private String factoryId;
}
package com.skua.modules.equipment.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class MetricVo {
private String id;
private String metricUidTag;
@ApiModelProperty("格式: yyyy-MM-dd")
private String startTIme;
@ApiModelProperty("格式: yyyy-MM-dd")
private String endTime;
}
package com.skua.modules.equipment.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
@Data
public class StructDictVo {
private String id;
private String name;
@ApiModelProperty("指标")
private List<StructDictVo> metrics=new ArrayList<>();
}
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!