Commit 1328ecea authored by ZWT's avatar ZWT

feat(零碳): 长庆

1.对接第三方接口,接入第三方数据,完成Token接口验证,抽取公用方法封装调用工具类;
2.对接第三方接口,完成获取日耗电日产液等信息接口调用,创建数据表,同时生成对应代码,开发定时任务及对外接口,完成第三方数据接入及系统展示功能,添加线上接口文档并完成接口及定时任务冒烟测试;
3.对接第三方接口,完成获取有功功率数据信息接口调用,创建数据表,同时生成对应代码,开发定时任务及对外接口,完成第三方数据接入及系统展示功能,添加线上接口文档并完成接口及定时任务冒烟测试;
4.对接第三方接口,完成获取甘特图数据接口调用,创建数据表,同时生成对应代码,开发定时任务及对外接口,完成第三方数据接入及系统展示功能,添加线上接口文档并完成接口及定时任务冒烟测试;
5.对接第三方接口,完成本日累计数据接口调用,创建数据表,同时生成对应代码,开发定时任务及对外接口,完成第三方数据接入及系统展示功能,添加线上接口文档并完成接口及定时任务冒烟测试;
6.对接第三方接口,完成光伏发电量接口调用,创建数据表,同时生成对应代码,开发定时任务及对外接口,完成第三方数据接入及系统展示功能,添加线上接口文档并完成接口及定时任务冒烟测试;

BREAKING CHANGE: 无

Closes 无

[skip ci]
parent 3743d206
package pps.core.prediction.mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import pps.core.prediction.entity.ThirdPhotovoltaicPowerView;
......@@ -16,4 +17,12 @@ public interface ThirdPhotovoltaicPowerViewMapper {
ThirdPhotovoltaicPowerView selectOne(ThirdPhotovoltaicPowerView record);
List<ThirdPhotovoltaicPowerView> selectList(ThirdPhotovoltaicPowerView record);
/**
* 批量新增
*
* @param list 列表
* @return int
*/
int batchInsertList(@Param(value = "list") List<ThirdPhotovoltaicPowerView> list);
}
......@@ -6,8 +6,11 @@ import com.alibaba.fastjson2.JSON;
import pps.cloud.prediction.service.IThirdDataAccessCloudService;
import pps.core.prediction.constant.ThirdPartyApiConstant;
import pps.core.prediction.entity.ThirdActivePowerView;
import pps.core.prediction.entity.ThirdPhotovoltaicPowerView;
import pps.core.prediction.mapper.ThirdActivePowerViewMapper;
import pps.core.prediction.mapper.ThirdPhotovoltaicPowerViewMapper;
import pps.core.prediction.service.data.third_active_power.GetThirdActivePowerViewOutput;
import pps.core.prediction.service.data.third_photovoltaic_power.GetThirdPhotovoltaicPowerViewOutput;
import pps.core.prediction.utils.ServiceUtil;
import xstartup.annotation.XService;
import xstartup.annotation.XText;
......@@ -92,7 +95,25 @@ public class ThirdDataAccessCloudServiceImpl implements IThirdDataAccessCloudSer
String resultStr = ServiceUtil.doPostFormCq(context,
ThirdPartyApiConstant.CQ_STATION_DAILY_PV_DATA,
param);
List<GetThirdPhotovoltaicPowerViewOutput> outputs = JSON.parseArray(resultStr, GetThirdPhotovoltaicPowerViewOutput.class);
if (CollUtil.isEmpty(outputs)) {
return XServiceResult.OK;
}
List<ThirdPhotovoltaicPowerView> dtoList = new ArrayList<>(outputs.size());
for (GetThirdPhotovoltaicPowerViewOutput output : outputs) {
dtoList.add(
ThirdPhotovoltaicPowerView.builder()
.stationName(output.getStationName())
.createDate(output.getCreateDate())
.photovoltaicPower(output.getPhotovoltaicPower())
.systemSource(ThirdPartyApiConstant.CQ_SOURCE)
.build()
);
}
return XTransactionHelper.begin(context, () -> {
ThirdPhotovoltaicPowerViewMapper mapper = context.getBean(ThirdPhotovoltaicPowerViewMapper.class);
mapper.batchInsertList(dtoList);
return XServiceResult.OK;
});
}
}
package pps.core.prediction.service.data.third_photovoltaic_power;
import com.alibaba.fastjson2.annotation.JSONField;
import lombok.Data;
import xstartup.annotation.XText;
import java.util.Date;
import java.math.BigDecimal;
import java.util.Date;
/**
* 第三方光伏日发电量
*
* @author ZWT
* @date 2024/03/19
*/
@Data
public class GetThirdPhotovoltaicPowerViewOutput {
@XText("ID")
private Long id;
@XText("井组名称(线路/光伏电站)")
@JSONField(name = "stationname")
private String stationName;
@XText("创建时间")
@JSONField(name = "calC_DATE")
private Date createDate;
@XText("光伏发电量(KW·h)")
@JSONField(name = "pV_DAY_ELECTRIC_POWER")
private BigDecimal photovoltaicPower;
@XText("来源系统")
private String systemSource;
public Long getId() {
return this.id;
}
public void setId(Long value) {
this.id = value;
}
public String getStationName() {
return this.stationName;
}
public void setStationName(String value) {
this.stationName = value;
}
public Date getCreateDate() {
return this.createDate;
}
public void setCreateDate(Date value) {
this.createDate = value;
}
public BigDecimal getPhotovoltaicPower() {
return this.photovoltaicPower;
}
public void setPhotovoltaicPower(BigDecimal value) {
this.photovoltaicPower = value;
}
public String getSystemSource() {
return this.systemSource;
}
public void setSystemSource(String value) {
this.systemSource = value;
}
}
......@@ -2,31 +2,47 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="pps.core.prediction.mapper.ThirdPhotovoltaicPowerViewMapper">
<resultMap id="BaseResultMap" type="pps.core.prediction.entity.ThirdPhotovoltaicPowerView">
<id column="id" property="id" jdbcType="BIGINT" />
<result column="station_name" property="stationName" jdbcType="VARCHAR" />
<result column="create_date" property="createDate" jdbcType="DATE" />
<result column="photovoltaic_power" property="photovoltaicPower" jdbcType="DECIMAL" />
<result column="system_source" property="systemSource" jdbcType="VARCHAR" />
<id column="id" property="id" jdbcType="BIGINT"/>
<result column="station_name" property="stationName" jdbcType="VARCHAR"/>
<result column="create_date" property="createDate" jdbcType="DATE"/>
<result column="photovoltaic_power" property="photovoltaicPower" jdbcType="DECIMAL"/>
<result column="system_source" property="systemSource" jdbcType="VARCHAR"/>
</resultMap>
<sql id="Base_Column_List">
id,
id
,
station_name,
create_date,
photovoltaic_power,
system_source
</sql>
<select id="selectOne" parameterType="pps.core.prediction.entity.ThirdPhotovoltaicPowerView" resultMap="BaseResultMap">
<select id="selectOne" parameterType="pps.core.prediction.entity.ThirdPhotovoltaicPowerView"
resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
<include refid="Base_Column_List"/>
from third_photovoltaic_power
where
id=#{id}
</select>
<select id="selectList" parameterType="pps.core.prediction.entity.ThirdPhotovoltaicPowerView" resultMap="BaseResultMap">
<select id="selectList" parameterType="pps.core.prediction.entity.ThirdPhotovoltaicPowerView"
resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
<include refid="Base_Column_List"/>
from third_photovoltaic_power
where
id=#{id}
</select>
<insert id="batchInsertList" parameterType="list">
INSERT INTO third_photovoltaic_power (station_name, create_date, photovoltaic_power, system_source)
VALUES
<foreach collection="list" item="item" separator=",">
(
#{item.stationName},
#{item.createDate},
#{item.photovoltaicPower},
#{item.systemSource}
)
</foreach>
</insert>
</mapper>
\ No newline at end of file
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