Browse Source

Merge branch 'prod-5.1.3' of http://175.6.40.68:8081/Jone/hzims-back into prod-5.1.3

zhongwei
luyie 3 months ago
parent
commit
8e030462cc
  1. 59
      hzims-service-api/big-model-api/src/main/java/com/hnac/hzims/bigmodel/maintenance/entity/ControlEntity.java
  2. 72
      hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/Hydroelectric/vo/HydroelectricDeviceVo.java
  3. 22
      hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/Hydroelectric/vo/HydroelectricPowerRainVo.java
  4. 0
      hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/hydroelectric/constant/HydroelectricConstant.java
  5. 0
      hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/hydroelectric/vo/HydroelectricAreaStationVo.java
  6. 2
      hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/hydroelectric/vo/HydroelectricAreaVo.java
  7. 0
      hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/hydroelectric/vo/HydroelectricDeviceGenerateVo.java
  8. 0
      hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/hydroelectric/vo/HydroelectricDevicePowerVo.java
  9. 0
      hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/hydroelectric/vo/HydroelectricGenerateMonVo.java
  10. 0
      hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/hydroelectric/vo/HydroelectricGenerateYearVo.java
  11. 0
      hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/hydroelectric/vo/HydroelectricGroupAreaVo.java
  12. 0
      hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/hydroelectric/vo/HydroelectricGroupVo.java
  13. 4
      hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/hydroelectric/vo/HydroelectricStationVo.java
  14. 6
      hzims-service/hzims-big-model/src/main/java/com/hnac/hzims/bigmodel/configuration/BigModelInvokeApi.java
  15. 6
      hzims-service/hzims-big-model/src/main/java/com/hnac/hzims/bigmodel/interactive/service/IHznlmInvokeService.java
  16. 7
      hzims-service/hzims-big-model/src/main/java/com/hnac/hzims/bigmodel/interactive/service/impl/HznlmInvokeServiceImpl.java
  17. 74
      hzims-service/hzims-big-model/src/main/java/com/hnac/hzims/bigmodel/maintenance/controller/ControlController.java
  18. 12
      hzims-service/hzims-big-model/src/main/java/com/hnac/hzims/bigmodel/maintenance/mapper/ControlMapper.java
  19. 21
      hzims-service/hzims-big-model/src/main/java/com/hnac/hzims/bigmodel/maintenance/service/ControlService.java
  20. 1
      hzims-service/hzims-big-model/src/main/resources/template/template.yml
  21. 2
      hzims-service/operational/src/main/java/com/hnac/hzims/operational/homePage/service/impl/HydroelectricServiceImpl.java

59
hzims-service-api/big-model-api/src/main/java/com/hnac/hzims/bigmodel/maintenance/entity/ControlEntity.java

@ -0,0 +1,59 @@
package com.hnac.hzims.bigmodel.maintenance.entity;
import com.alibaba.fastjson.annotation.JSONField;
import com.baomidou.mybatisplus.annotation.SqlCondition;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.core.mp.support.QueryField;
import org.springblade.core.tenant.mp.TenantEntity;
import java.io.Serializable;
/**
* @Author: huangxing
* @Date: 2024/08/19 18:33
*/
@Data
@EqualsAndHashCode
@ApiModel("设备控制实体类")
@TableName("data_yk")
public class ControlEntity extends TenantEntity implements Serializable {
@ApiModelProperty(value = "itemId",required = true)
private String itemId;
@ApiModelProperty(value = "站点名称",required = true)
@QueryField(condition = SqlCondition.LIKE)
private String stationName;
@ApiModelProperty(value = "站点ID")
@QueryField(condition = SqlCondition.EQUAL)
private String stationId;
@ApiModelProperty(value = "遥控的设备名称")
@QueryField(condition = SqlCondition.LIKE)
private String deviceName;
@ApiModelProperty(value = "遥控的设备ID")
@QueryField(condition = SqlCondition.EQUAL)
private String deviceId;
@TableField("yk_name")
@JSONField(name = "yk_name")
@ApiModelProperty(value = "遥控名称(不包含站点)",required = true)
@QueryField(condition = SqlCondition.LIKE)
private String remoteName;
@ApiModelProperty(value = "用于展示和匹配的全称,一般可设为 站点名称-遥控名称",required = true)
@QueryField(condition = SqlCondition.LIKE)
private String itemName;
@ApiModelProperty(value = "类型,可为平台、业务",required = true)
@QueryField(condition = SqlCondition.LIKE)
private String type;
}

72
hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/Hydroelectric/vo/HydroelectricDeviceVo.java

@ -1,72 +0,0 @@
package com.hnac.hzims.operational.homePage.Hydroelectric.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @author ysj
*/
@Data
@ApiModel(value = "站点首页-设备信息")
public class HydroelectricDeviceVo {
@ApiModelProperty(value = "设备编号")
private String deivceCode;
@ApiModelProperty(value = "设备名称")
private String deivceName;
@ApiModelProperty(value = "开关机状态: 0 - 关机 1 - 开机")
private Boolean state;
@ApiModelProperty(value = "总装机容量")
private Double installedCapacity;
@ApiModelProperty(value = "有功功率")
private Double activePower;
@ApiModelProperty(value = "容量利用率")
private Double capacityRate;
@ApiModelProperty(value = "无功功率")
private Double reactivePower;
@ApiModelProperty(value = "导叶开度")
private Double guideOpen;
@ApiModelProperty(value = "今日发电量")
private Float powerDay;
@ApiModelProperty(value = "昨日发电量")
private Float powerYesterDay;
@ApiModelProperty(value = "当年发电量")
private Float powerYear;
@ApiModelProperty(value = "去年发电量")
private Float powerYesterYear;
@ApiModelProperty(value = "当月发电量")
private Float powerMon;
@ApiModelProperty(value = "本次开机时间")
private String startDownTime;
@ApiModelProperty(value = "本次开机时长")
private Double startupDownDuration;
@ApiModelProperty(value = "年停机时长")
private Double shutDownDurationYear;
@ApiModelProperty(value = "年开机时长")
private Double startupDurationYear;
@ApiModelProperty(value = "设备近24小时有功功率")
private List<HydroelectricDevicePowerVo> powers;
@ApiModelProperty(value = "设备近30日发电量")
private List<HydroelectricDeviceGenerateVo> generates;
}

22
hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/Hydroelectric/vo/HydroelectricPowerRainVo.java

@ -1,22 +0,0 @@
package com.hnac.hzims.operational.homePage.Hydroelectric.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author ysj
*/
@Data
@ApiModel(value = "站点首页-最近30日发电量/降雨量")
public class HydroelectricPowerRainVo {
@ApiModelProperty(value = "日期")
private String date;
@ApiModelProperty(value = "发电量")
private Double generate;
@ApiModelProperty(value = "降雨")
private Double rain;
}

0
hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/Hydroelectric/constant/HydroelectricConstant.java → hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/hydroelectric/constant/HydroelectricConstant.java

0
hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/Hydroelectric/vo/HydroelectricAreaStationVo.java → hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/hydroelectric/vo/HydroelectricAreaStationVo.java

2
hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/Hydroelectric/vo/HydroelectricAreaVo.java → hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/hydroelectric/vo/HydroelectricAreaVo.java

@ -54,7 +54,7 @@ public class HydroelectricAreaVo {
@JsonSerialize(nullsUsing = NullSerializer.class)
private Double generatePlanYear;
@ApiModelProperty(value = "电量完成")
@ApiModelProperty(value = "电量完成")
@JsonSerialize(nullsUsing = NullSerializer.class)
private Double generateRate;

0
hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/Hydroelectric/vo/HydroelectricDeviceGenerateVo.java → hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/hydroelectric/vo/HydroelectricDeviceGenerateVo.java

0
hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/Hydroelectric/vo/HydroelectricDevicePowerVo.java → hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/hydroelectric/vo/HydroelectricDevicePowerVo.java

0
hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/Hydroelectric/vo/HydroelectricGenerateMonVo.java → hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/hydroelectric/vo/HydroelectricGenerateMonVo.java

0
hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/Hydroelectric/vo/HydroelectricGenerateYearVo.java → hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/hydroelectric/vo/HydroelectricGenerateYearVo.java

0
hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/Hydroelectric/vo/HydroelectricGroupAreaVo.java → hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/hydroelectric/vo/HydroelectricGroupAreaVo.java

0
hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/Hydroelectric/vo/HydroelectricGroupVo.java → hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/hydroelectric/vo/HydroelectricGroupVo.java

4
hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/Hydroelectric/vo/HydroelectricStationVo.java → hzims-service-api/hzims-operational-api/src/main/java/com/hnac/hzims/operational/homePage/hydroelectric/vo/HydroelectricStationVo.java

@ -60,9 +60,9 @@ public class HydroelectricStationVo {
@ApiModelProperty(value = "设备集合")
private List<HydroelectricDeviceVo> devices;
@ApiModelProperty(value = "降雨/发电量曲线")
@ApiModelProperty(value = "降雨曲线")
private List<HydroelectricPowerRainVo> powerRains;
@ApiModelProperty(value = "降雨/发电量曲线")
@ApiModelProperty(value = "发电量曲线")
private List<HydroelectricGenerateMonVo> generateMons;
}

6
hzims-service/hzims-big-model/src/main/java/com/hnac/hzims/bigmodel/configuration/BigModelInvokeApi.java

@ -56,4 +56,10 @@ public class BigModelInvokeApi {
* 起数据分析问答
*/
private String assistantAnalyseAsk;
/**
* 更新数据
*/
private String updateKnowledge;
}

6
hzims-service/hzims-big-model/src/main/java/com/hnac/hzims/bigmodel/interactive/service/IHznlmInvokeService.java

@ -87,4 +87,10 @@ public interface IHznlmInvokeService {
*/
void smartReportGeneratePower(RunReportAnalyseRequest req);
/**
* 更新数据
* @param name 数据名
*/
void updateKnowledge(String name);
}

7
hzims-service/hzims-big-model/src/main/java/com/hnac/hzims/bigmodel/interactive/service/impl/HznlmInvokeServiceImpl.java

@ -145,6 +145,13 @@ public class HznlmInvokeServiceImpl implements IHznlmInvokeService {
}
@Override
public void updateKnowledge(String name) {
Map<String,Object> params = new HashMap<>();
params.put("name",name);
RequestClientUtil.postCall(gglmUrl + bigModelInvokeApi.getUpdateKnowledge(), params);
}
@Override
public List hotQuestions() {
try {
return RequestClientUtil.postCall(gglmUrl + bigModelInvokeApi.getHotQuestion(), null, new TypeReference<List<String>>(){});

74
hzims-service/hzims-big-model/src/main/java/com/hnac/hzims/bigmodel/maintenance/controller/ControlController.java

@ -0,0 +1,74 @@
package com.hnac.hzims.bigmodel.maintenance.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import com.hnac.hzims.bigmodel.interactive.service.IHznlmInvokeService;
import com.hnac.hzims.bigmodel.maintenance.entity.ControlEntity;
import com.hnac.hzims.bigmodel.maintenance.entity.DatasourceEntity;
import com.hnac.hzims.bigmodel.maintenance.service.ControlService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.AllArgsConstructor;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.mp.support.Query;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.Func;
import org.springframework.web.bind.annotation.*;
/**
* @Author: huangxing
* @Date: 2024/08/19 18:50
*/
@RestController
@RequestMapping("/control")
@Api(tags = "设备控制指令管理",value = "设备控制指令管理")
@AllArgsConstructor
public class ControlController {
private final ControlService service;
private final IHznlmInvokeService invokeService;
@GetMapping("/listPage")
@ApiOperation(value = "分页查询")
@ApiOperationSupport(order = 1)
public R<IPage<ControlEntity>> listPage(Query query, ControlEntity req) {
return R.data(service.page(Condition.getPage(query),Condition.getQueryWrapper(req).lambda()));
}
@GetMapping("/detail")
@ApiOperation(value = "查看详情")
@ApiOperationSupport(order = 2)
public R<ControlEntity> detail(@RequestParam @ApiParam("主键ID") Long id) {
return R.data(service.getById(id));
}
@PostMapping("/save")
@ApiOperation(value = "保存设备控制指令配置")
@ApiOperationSupport(order = 3)
public R save(@RequestBody ControlEntity req) {
return R.status(service.save(req));
}
@DeleteMapping("/remove")
@ApiOperation(value = "删除设备控制指令配置")
@ApiOperationSupport(order = 4)
public R remove(@RequestParam @ApiParam("主键ID,按逗号分隔") String ids) {
return R.status(service.removeByIds(Func.toLongList(",",ids)));
}
@PutMapping("/updateById")
@ApiOperation(value = "编辑设备控制指令")
@ApiOperationSupport(order = 5)
public R updateById(@RequestBody ControlEntity req) {
return R.status(service.updateById(req));
}
@PutMapping("/updateKnowledge")
@ApiOperation(value = "更新设备控制知识库")
@ApiOperationSupport(order = 6)
public R updateKnowledge() {
invokeService.updateKnowledge("yk");
return R.success("操作成功!");
}
}

12
hzims-service/hzims-big-model/src/main/java/com/hnac/hzims/bigmodel/maintenance/mapper/ControlMapper.java

@ -0,0 +1,12 @@
package com.hnac.hzims.bigmodel.maintenance.mapper;
import com.hnac.hzims.bigmodel.maintenance.entity.ControlEntity;
import org.springblade.core.datascope.mapper.UserDataScopeBaseMapper;
/**
* @Author: huangxing
* @Date: 2024/08/19 18:42
*/
public interface ControlMapper extends UserDataScopeBaseMapper<ControlEntity> {
}

21
hzims-service/hzims-big-model/src/main/java/com/hnac/hzims/bigmodel/maintenance/service/ControlService.java

@ -0,0 +1,21 @@
package com.hnac.hzims.bigmodel.maintenance.service;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.hnac.hzims.bigmodel.maintenance.entity.ControlEntity;
import com.hnac.hzims.bigmodel.maintenance.mapper.ControlMapper;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
/**
* @Author: huangxing
* @Date: 2024/08/19 18:48
*/
@Service
@DS("hznlm")
@AllArgsConstructor
@Slf4j
public class ControlService extends ServiceImpl<ControlMapper, ControlEntity> {
}

1
hzims-service/hzims-big-model/src/main/resources/template/template.yml

@ -61,6 +61,7 @@ gglm:
hotQuestion: "/qa/question_recommand"
smartReportGeneratePower: "/custom/smart_report_generate_power"
assistantAnalyseAsk: "/qa/assistant_analyse_ask"
updateKnowledge: "/kn/update_knowledge"
swagger:
base-packages: com.hnac.hzims.bigmodel

2
hzims-service/operational/src/main/java/com/hnac/hzims/operational/homePage/service/impl/HydroelectricServiceImpl.java

@ -254,7 +254,7 @@ public class HydroelectricServiceImpl implements HydroelectricService {
// 日发电量
area.setGenerateDay(targets.stream().mapToDouble(HydropowerUnitTargetVo::getPowerDay).sum());
// 年计划发电量
area.setGeneratePlanYear(planClient.getPlanPowerYear(stations.stream().map(StationEntity::getCode).collect(Collectors.toList()), DateUtil.format(new Date(),"yyyy")));
area.setGeneratePlanYear(plans.stream().mapToDouble(PlanGenerationEntity::getPlanGeneration).sum());
if(area.getGeneratePlanYear() <= 0 || area.getGenerateYear() <= 0){
area.setGenerateRate(0.0);
}else{

Loading…
Cancel
Save