Commit 95ee3b79 authored by chenzhao's avatar chenzhao

电站整体发电历史及功率曲线增加每日

parent ff2f3ca6
package com.yeejoin.amos.api.householdapi.face.orm.houseapi.entity.tdeingine;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
/**
* @author DELL
*/
@Data
@TableName(value = "td_hygf_station_generate_day" ,autoResultMap = true)
public class TdHYGFStationDayGenerate implements Serializable {
/**
* 创建时间
*/
private Long createdTime;
/**
* 第三方场站id
*/
private String thirdStationId;
/**
*日 yyyy-MM-dd
*/
private String dayTime;
/**
*月 yyyy-MM
*/
private String yearMonth;
/**
*时分 HH:mm
*/
private String hour;
/**
* 发电量
*/
private Double generate;
/**
* 满发小时数
*/
private Double fullhour;
/**
* 收益
*/
private Double income;
private String stationName; //名称
private String regionalCompaniesCode; //区域公司code
private String amosCompanyCode; //经销商code
private String stationState;//电站状态
}
package com.yeejoin.amos.api.householdapi.face.orm.mapper.tdengine;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.api.householdapi.face.orm.houseapi.entity.tdeingine.TdHYGFStationDayGenerate;
public interface TdHYGFStationDayGenerateMapper extends BaseMapper<TdHYGFStationDayGenerate> {
}
......@@ -104,7 +104,8 @@ public class GoLangDataAcquisitionServiceImpl implements GoLangDataAcquisitionSe
private TdHYGFStationYearGenerateMapper TdHYGFStationYearGenerateMapper;
@Autowired
private TdHYGFStationAllGenerateMapper TdHYGFStationAllGenerateMapper;
@Autowired
private HouseholdPvApiServiceImpl householdPvApiService;
@Autowired
private TdHYGFInverterTotalGenerateMapper tdHYGFInverterTotalGenerateMapper;
@Autowired
......@@ -145,6 +146,7 @@ public class GoLangDataAcquisitionServiceImpl implements GoLangDataAcquisitionSe
List<String> stationIds = getStationIds();
String today = DateUtil.today();
String hour = new Date().getHours() + ":00";
String currentTime = DateUtil.format(new Date(), "HH:mm");
for (int i = 0; i < stationIds.size(); i++) {
try {
TimeUnit.SECONDS.sleep(1);
......@@ -293,6 +295,7 @@ public class GoLangDataAcquisitionServiceImpl implements GoLangDataAcquisitionSe
if (ObjectUtils.isEmpty(TdHYGFStationMonthGenerate)) {
TdHYGFStationMonthGenerate = new TdHYGFStationMonthGenerate();
}
householdPvApiService.addTdHYGFStationDayGenerate(TdHYGFStationMonthGenerate,hour);
TdHYGFStationMonthGenerate.setThirdStationId(stationIds.get(i));
TdHYGFStationMonthGenerate.setDayTime(DateUtil.format(today1, "yyyy-MM-dd"));
TdHYGFStationMonthGenerate.setYearMonth(DateUtil.format(today1, "yyyy-MM"));
......
......@@ -91,6 +91,8 @@ public class GoodWeDataAcquisitionServiceImpl implements GoodWeDataAcquisitionSe
@Autowired
private TdHYGFInverterTotalGenerateMapper tdHYGFInverterTotalGenerateMapper;
@Autowired
private HouseholdPvApiServiceImpl householdPvApiService;
@Autowired
TdJpStationMapper tdJpStationMapper;
final static Logger logger = LoggerFactory.getLogger(GoodWeDataAcquisitionServiceImpl.class);
......@@ -109,6 +111,7 @@ public class GoodWeDataAcquisitionServiceImpl implements GoodWeDataAcquisitionSe
// requestInfo.put("key", "龙虎山北区");
String today = DateUtil.today();
String hour = new Date().getHours() + ":00";
String currentTime = DateUtil.format(new Date(), "HH:mm");
List<GoodWeStationMonitorDto> goodWeStationLists = goodWeRequestUtil.getResPonseList(
GoodWeConstant.stationListStatusUrl, GoodWeConstant.requestPost, requestInfo,
GoodWeConstant.resovleRule_data_list, GoodWeStationMonitorDto.class);
......@@ -247,7 +250,7 @@ public class GoodWeDataAcquisitionServiceImpl implements GoodWeDataAcquisitionSe
TdHYGFStationMonthGenerate.setRegionalCompaniesCode(jpStation.getRegionalCompaniesCode());
TdHYGFStationMonthGenerate.setStationName(jpStation.getName());
TdHYGFStationMonthGenerate.setStationState(jpStation.getState());
householdPvApiService.addTdHYGFStationDayGenerate(TdHYGFStationMonthGenerate,hour);
if (org.springframework.util.ObjectUtils.isEmpty(TdHYGFStationMonthGenerate.getCreatedTime())) {
TdHYGFStationMonthGenerate.setCreatedTime(System.currentTimeMillis());
TdHYGFStationMonthGenerateMapper.insert(TdHYGFStationMonthGenerate);
......
package com.yeejoin.amos.api.householdapi.face.service.impl;
import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.yeejoin.amos.api.householdapi.face.model.HouseholdPvApiDto;
import com.yeejoin.amos.api.householdapi.face.orm.houseapi.entity.tdeingine.TdHYGFStationDayGenerate;
import com.yeejoin.amos.api.householdapi.face.orm.houseapi.entity.tdeingine.TdHYGFStationMonthGenerate;
import com.yeejoin.amos.api.householdapi.face.orm.mapper.houseapi.HouseholdPvApiMapper;
import com.yeejoin.amos.api.householdapi.face.orm.houseapi.entity.houseapi.HouseholdPvApi;
import com.yeejoin.amos.api.householdapi.face.orm.mapper.tdengine.TdHYGFStationDayGenerateMapper;
import com.yeejoin.amos.api.householdapi.face.service.IHouseholdPvApiService;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.ObjectUtils;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import java.util.Date;
import java.util.List;
/**
......@@ -17,6 +27,10 @@ import java.util.List;
*/
@Service
public class HouseholdPvApiServiceImpl extends BaseService<HouseholdPvApiDto, HouseholdPvApi, HouseholdPvApiMapper> implements IHouseholdPvApiService {
@Autowired
public TdHYGFStationDayGenerateMapper TdHYGFStationDayGenerateMapper;
/**
* 分页查询
*/
......@@ -30,4 +44,20 @@ public class HouseholdPvApiServiceImpl extends BaseService<HouseholdPvApiDto, Ho
public List<HouseholdPvApiDto> queryForHouseholdPvApiList() {
return this.queryForList("" , false);
}
public void addTdHYGFStationDayGenerate(TdHYGFStationMonthGenerate tdHYGFStationMonthGenerate,String currentTime){
TdHYGFStationDayGenerate tdHYGFStationDayGenerate = TdHYGFStationDayGenerateMapper.selectOne(
new QueryWrapper<TdHYGFStationDayGenerate>().eq("third_station_id", tdHYGFStationMonthGenerate.getThirdStationId())
.eq("day_time", DateUtil.format(new Date(), "yyyy-MM-dd"))
.eq("hour", currentTime)
.eq("year_month", DateUtil.format(new Date(), "yyyy-MM")));
if (ObjectUtils.isEmpty(tdHYGFStationDayGenerate)) {
tdHYGFStationDayGenerate = new TdHYGFStationDayGenerate();
}
BeanUtils.copyProperties(tdHYGFStationMonthGenerate,tdHYGFStationDayGenerate);
tdHYGFStationDayGenerate.setHour(currentTime);
tdHYGFStationDayGenerate.setCreatedTime(System.currentTimeMillis());
TdHYGFStationDayGenerateMapper.insert(tdHYGFStationDayGenerate);
}
}
\ No newline at end of file
......@@ -120,7 +120,8 @@ public class ImasterDataServiceImpl implements ImasterDataService {
private TdHYGFInverterTotalGenerateMapper tdHYGFInverterTotalGenerateMapper;
@Autowired
TdJpStationMapper tdJpStationMapper;
@Autowired
private HouseholdPvApiServiceImpl householdPvApiService;
final static Logger logger = LoggerFactory.getLogger(GoLangDataAcquisitionServiceImpl.class);
final static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
......@@ -398,6 +399,7 @@ public class ImasterDataServiceImpl implements ImasterDataService {
if (ObjectUtils.isEmpty(TdHYGFStationMonthGenerate)) {
TdHYGFStationMonthGenerate = new TdHYGFStationMonthGenerate();
}
TdHYGFStationMonthGenerate.setThirdStationId(jpStation.getThirdStationId());
TdHYGFStationMonthGenerate.setDayTime(DateUtil.format(today1, "yyyy-MM-dd"));
TdHYGFStationMonthGenerate.setYearMonth(DateUtil.format(today1, "yyyy-MM"));
......@@ -409,7 +411,7 @@ public class ImasterDataServiceImpl implements ImasterDataService {
TdHYGFStationMonthGenerate.setRegionalCompaniesCode(jpStation.getRegionalCompaniesCode());
TdHYGFStationMonthGenerate.setStationName(jpStation.getName());
TdHYGFStationMonthGenerate.setStationState(jpStation.getState());
householdPvApiService.addTdHYGFStationDayGenerate(TdHYGFStationMonthGenerate,hour);
if (ObjectUtils.isEmpty(TdHYGFStationMonthGenerate.getCreatedTime())) {
TdHYGFStationMonthGenerate.setCreatedTime(System.currentTimeMillis());
TdHYGFStationMonthGenerateMapper.insert(TdHYGFStationMonthGenerate);
......
......@@ -114,7 +114,8 @@ public class KsolarDataAcquisitionServiceImpl implements KSolarDataAcquisitionSe
private TdHYGFInverterTotalGenerateMapper tdHYGFInverterTotalGenerateMapper;
@Autowired
TdJpStationMapper tdJpStationMapper;
@Autowired
private HouseholdPvApiServiceImpl householdPvApiService;
final static Logger logger = LoggerFactory.getLogger(SofarDataAcquisitionServiceImpl.class);
final static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
......@@ -145,7 +146,7 @@ public class KsolarDataAcquisitionServiceImpl implements KSolarDataAcquisitionSe
List<String> stationIds = kSolarStationMapper.getStationIds();
String today = DateUtil.today();
String hour = new Date().getHours() + ":00";
String currentTime = DateUtil.format(new Date(), "HH:mm");
for (String stationId : stationIds) {
LambdaQueryWrapper<KsolarStationList> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(KsolarStationList::getStationId, stationId);
......@@ -332,7 +333,7 @@ public class KsolarDataAcquisitionServiceImpl implements KSolarDataAcquisitionSe
TdHYGFStationMonthGenerate.setRegionalCompaniesCode(jpStation.getRegionalCompaniesCode());
TdHYGFStationMonthGenerate.setStationName(jpStation.getName());
TdHYGFStationMonthGenerate.setStationState(jpStation.getState());
householdPvApiService.addTdHYGFStationDayGenerate(TdHYGFStationMonthGenerate,hour);
if (ObjectUtils.isEmpty(TdHYGFStationMonthGenerate.getCreatedTime())) {
TdHYGFStationMonthGenerate.setCreatedTime(System.currentTimeMillis());
TdHYGFStationMonthGenerateMapper.insert(TdHYGFStationMonthGenerate);
......
......@@ -110,7 +110,8 @@ public class SofarDataAcquisitionServiceImpl implements SofarDataAcquisitionServ
private HYGFJPStationPowerHistoryMapper hygfjpStationPowerHistoryMapper;
@Autowired
private HYGFJPDayPowerMapper hygfjpDayPowerMapper;
@Autowired
private HouseholdPvApiServiceImpl householdPvApiService;
@Override
@Scheduled(cron = "${dataRequstScheduled.Sofar}")
public void stationList() {
......@@ -178,8 +179,7 @@ public class SofarDataAcquisitionServiceImpl implements SofarDataAcquisitionServ
@Override
public void stationDetail(List<SofarStationList> list) {
// 业务表场站
String hour = new Date().getHours() + ":00"; // 业务表场站
List<JpStation> jpStations = jpStationMapper
.selectList(new QueryWrapper<JpStation>().eq("third_code", PVProducerInfoEnum.SH.getCode()));
......@@ -488,7 +488,7 @@ public class SofarDataAcquisitionServiceImpl implements SofarDataAcquisitionServ
}
String today = DateUtil.today();
String hour = new Date().getHours() + ":00";
HYGFJPDayPower hygfjpDayPower = hygfjpDayPowerMapper.selectOne(
new QueryWrapper<HYGFJPDayPower>().eq("third_station_id", sunlightDto.getId().toString())
.eq("year_month_day", today).eq("hour", hour));
......@@ -604,6 +604,7 @@ public class SofarDataAcquisitionServiceImpl implements SofarDataAcquisitionServ
);
TdHYGFStationMonthGenerate.setIncome(jpStation.getDayIncome());
householdPvApiService.addTdHYGFStationDayGenerate(TdHYGFStationMonthGenerate,hour);
if (ObjectUtils.isEmpty(TdHYGFStationMonthGenerate.getCreatedTime())) {
TdHYGFStationMonthGenerate.setCreatedTime(System.currentTimeMillis());
TdHYGFStationMonthGenerateMapper.insert(TdHYGFStationMonthGenerate);
......
......@@ -94,7 +94,8 @@ public class SunlightServiceImpl implements SunlightService {
final static Logger logger = LoggerFactory.getLogger(SofarDataAcquisitionServiceImpl.class);
final static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
@Autowired
private HouseholdPvApiServiceImpl householdPvApiService;
// td电站信息存储
@Override
@Scheduled(cron = "${dataRequstScheduled.Sunlight}")
......@@ -169,6 +170,7 @@ public class SunlightServiceImpl implements SunlightService {
// 电站数据如库,电站统计数据入库
public void stationDetail(JSONObject data) {
String hour = new Date().getHours() + ":00";
// 所有场站信息
List<SunlightDto> list = JSONArray.parseArray(JSON.toJSONString(data.get("pageList")), SunlightDto.class);
......@@ -389,7 +391,7 @@ public class SunlightServiceImpl implements SunlightService {
jpStation.setYearIncome(js != null ? Double.valueOf(js.get(0).get("4") + "") / 1000 : null);
String today = DateUtil.today();
String hour = new Date().getHours() + ":00";
HYGFJPDayPower hygfjpDayPower = hygfjpDayPowerMapper.selectOne(
new QueryWrapper<HYGFJPDayPower>().eq("third_station_id", sunlightDto.getPs_id().toString())
.eq("year_month_day", today).eq("hour", hour));
......@@ -497,7 +499,7 @@ public class SunlightServiceImpl implements SunlightService {
TdHYGFStationMonthGenerate.setRegionalCompaniesCode(jpStation.getRegionalCompaniesCode());
TdHYGFStationMonthGenerate.setStationName(jpStation.getName());
TdHYGFStationMonthGenerate.setStationState(jpStation.getState());
householdPvApiService.addTdHYGFStationDayGenerate(TdHYGFStationMonthGenerate,hour);
if (ObjectUtils.isEmpty(TdHYGFStationMonthGenerate.getCreatedTime())) {
TdHYGFStationMonthGenerate.setCreatedTime(System.currentTimeMillis());
TdHYGFStationMonthGenerateMapper.insert(TdHYGFStationMonthGenerate);
......
......@@ -162,7 +162,8 @@ public class TanYinDataAcquisitionServiceImpl implements TanYinDataAcquisitionSe
private final static String pageNo = "1";
private final static String pageSize = "999";
@Autowired
private HouseholdPvApiServiceImpl householdPvApiService;
/**
* 每隔 10分钟通过并网时间段同步碳银对应范围内的项目信息
*
......@@ -368,7 +369,7 @@ public class TanYinDataAcquisitionServiceImpl implements TanYinDataAcquisitionSe
TdHYGFStationMonthGenerate.setRegionalCompaniesCode(jpStation.getRegionalCompaniesCode());
TdHYGFStationMonthGenerate.setStationName(jpStation.getName());
TdHYGFStationMonthGenerate.setStationState(jpStation.getState());
householdPvApiService.addTdHYGFStationDayGenerate(TdHYGFStationMonthGenerate,hour);
if (ObjectUtils.isEmpty(TdHYGFStationMonthGenerate.getCreatedTime())) {
TdHYGFStationMonthGenerate.setCreatedTime(System.currentTimeMillis());
TdHYGFStationMonthGenerateMapper.insert(TdHYGFStationMonthGenerate);
......
package com.yeejoin.amos.boot.module.hygf.api.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.experimental.Accessors;
import org.springframework.data.annotation.Id;
/**
* @description:
* @author: tw
* @createDate: 2023/11/8
*/
@Data
@Accessors(chain = true)
@TableName("td_hygf_station_generate_day")
public class HourGenerate {
@Id
private Long createdTime;
/**
* 第三方电站id
*/
@TableField("third_station_id")
private String thirdStationId;
/**
* 天
*/
@TableField("day_time")
private String dayTime;
/**
* 时分
*/
@TableField("hour")
private String hour;
/**
* 月份
*/
@TableField("year_month")
private String yearMonth;
/**
* 发电量
*/
@TableField("generate")
private Double generate;
/**
* 满发小时数
*
* */
@TableField("fullhour")
private Double fullhour;
@TableField("income")
// 日收益
private Double income;
@TableField("regional_companies_code")
private String regionalCompaniesCode;
@TableField("amos_company_code")
private String amosCompanyCode;
@TableField("station_name")
private String stationName;
@TableField("station_state")
private String stationState;
}
package com.yeejoin.amos.boot.module.hygf.api.tdenginemapper;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yeejoin.amos.boot.module.hygf.api.config.UserEmpower;
import com.yeejoin.amos.boot.module.hygf.api.dto.PowerCurveDto;
import com.yeejoin.amos.boot.module.hygf.api.entity.DayGenerate;
import com.yeejoin.amos.boot.module.hygf.api.entity.JpStation;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* @description:
* @author: tw
* @createDate: 2023/11/8
*/
public interface HourGenerateMapper extends BaseMapper<DayGenerate> {
@UserEmpower(field ={"regional_companies_code"},dealerField ={"amos_company_code","regional_companies_code"} ,fieldConditions ={"eq","in"} ,relationship="and")
List<PowerCurveDto> getHourGeneratqx(@Param("date") String date,@Param("regionalCompaniesCode") String regionalCompaniesCode, @Param("amosCompanyCode") String amosCompanyCode, @Param("stationType") String stationType, @Param("thirdStationId") String thirdStationId,@Param("dto")List<String> statioId);
}
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yeejoin.amos.boot.module.hygf.api.tdenginemapper.HourGenerateMapper">
<select id="getHourGeneratqx" resultType="com.yeejoin.amos.boot.module.hygf.api.dto.PowerCurveDto">
SELECT
sum(generate)num,
`hour` date
FROM house_pv_data.td_hygf_station_generate_day
<where>
<if test="dto!=null">
third_station_id in
<foreach collection="dto" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</if>
<if test="regionalCompaniesCode!=null and regionalCompaniesCode != ''">
and regional_companies_code = #{regionalCompaniesCode}
</if>
<if test="amosCompanyCode!=null and amosCompanyCode != ''">
and amos_company_code = #{amosCompanyCode}
</if>
<if test="stationType!=null and stationType != ''">
and stationType = #{stationType}
</if>
<if test="thirdStationId!=null and thirdStationId != ''">
and third_station_id = #{thirdStationId}
</if>
and day_time = #{date}
</where>
GROUP BY `hour`
</select>
</mapper>
......@@ -21,10 +21,7 @@ import com.yeejoin.amos.boot.module.hygf.api.mapper.JpInverterMapper;
import com.yeejoin.amos.boot.module.hygf.api.mapper.JpStationMapper;
import com.yeejoin.amos.boot.module.hygf.api.mapper.RegionalCompaniesMapper;
import com.yeejoin.amos.boot.module.hygf.api.service.IJpStationService;
import com.yeejoin.amos.boot.module.hygf.api.tdenginemapper.DayGenerateMapper;
import com.yeejoin.amos.boot.module.hygf.api.tdenginemapper.MonthGenerateMapper;
import com.yeejoin.amos.boot.module.hygf.api.tdenginemapper.MonthPowerMapper;
import com.yeejoin.amos.boot.module.hygf.api.tdenginemapper.YearGenerateMapper;
import com.yeejoin.amos.boot.module.hygf.api.tdenginemapper.*;
import org.apache.activemq.util.MapHelper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Async;
......@@ -67,6 +64,8 @@ public class JpStationServiceImpl extends BaseService<JpStationDto, JpStation, J
@Autowired
DayGenerateMapper dayGenerateMapper;
@Autowired
HourGenerateMapper hourGenerateMapper;
@Autowired
MonthGenerateMapper monthGenerateMapper;
@Autowired
YearGenerateMapper yearGenerateMapper;
......@@ -245,7 +244,7 @@ public class JpStationServiceImpl extends BaseService<JpStationDto, JpStation, J
if(type.equals("day")){
map= gethourList();
listx =map.get("x");
data =monthPowerMapper.getDayPowercount(date,reviewDto.getRegionalCompaniesCode(), reviewDto.getAmosCompanyCode(), null,reviewDto.getThirdStationId());
data =hourGenerateMapper.getHourGeneratqx(date,reviewDto.getRegionalCompaniesCode(), reviewDto.getAmosCompanyCode(), reviewDto.getStationType(),reviewDto.getThirdStationId(), null);
// }
}else if(type.equals("month")){
map= getDayListOfMonth(reviewDto.getTimeDateMonth());
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment