Commit 8120bb76 authored by ZWT's avatar ZWT

feat(零碳): 长庆

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

BREAKING CHANGE: 无

Closes 无

[skip ci]
parent ecda5133
package pps.core.prediction.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import xstartup.annotation.XText;
import java.io.Serializable;
......@@ -15,6 +18,9 @@ import java.util.Date;
* @date 2024/03/19
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class ThirdActivePowerDailyUpdateView implements Serializable {
@XText("ID")
@TableField
......
package pps.core.prediction.mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import pps.core.prediction.entity.ThirdActivePowerDailyUpdateView;
import java.util.Date;
import java.util.List;
/**
......@@ -16,4 +18,22 @@ public interface ThirdActivePowerDailyUpdateViewMapper {
ThirdActivePowerDailyUpdateView selectOne(ThirdActivePowerDailyUpdateView record);
List<ThirdActivePowerDailyUpdateView> selectList(ThirdActivePowerDailyUpdateView record);
/**
* 删除当日最新数据
*
* @param list 列表
* @param currentDay 当前日期
* @return int
*/
int deleteByCurrentDayData(@Param(value = "list") List<ThirdActivePowerDailyUpdateView> list,
@Param(value = "currentDay") Date currentDay);
/**
* 批量新增
*
* @param list 列表
* @return int
*/
int batchInsertList(@Param(value = "list") List<ThirdActivePowerDailyUpdateView> list);
}
package pps.core.prediction.service;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson2.JSON;
import pps.cloud.prediction.service.IThirdDataAccessCloudService;
import pps.core.prediction.constant.ThirdPartyApiConstant;
import pps.core.prediction.entity.ThirdActivePowerDailyUpdateView;
import pps.core.prediction.entity.ThirdActivePowerView;
import pps.core.prediction.entity.ThirdCurrentWellConditionView;
import pps.core.prediction.entity.ThirdPhotovoltaicPowerView;
import pps.core.prediction.mapper.ThirdActivePowerDailyUpdateViewMapper;
import pps.core.prediction.mapper.ThirdActivePowerViewMapper;
import pps.core.prediction.mapper.ThirdCurrentWellConditionViewMapper;
import pps.core.prediction.mapper.ThirdPhotovoltaicPowerViewMapper;
......@@ -52,6 +55,8 @@ public class ThirdDataAccessCloudServiceImpl implements IThirdDataAccessCloudSer
return XServiceResult.OK;
}
List<ThirdActivePowerView> dtoList = new ArrayList<>(outputs.size());
List<ThirdActivePowerDailyUpdateView> dtoDailyList = new ArrayList<>(outputs.size());
DateTime currentDay = DateUtil.beginOfDay(DateTime.now());
for (GetThirdActivePowerViewOutput o : outputs) {
dtoList.add(
ThirdActivePowerView.builder()
......@@ -62,10 +67,26 @@ public class ThirdDataAccessCloudServiceImpl implements IThirdDataAccessCloudSer
.systemSource(ThirdPartyApiConstant.CQ_SOURCE)
.build()
);
dtoDailyList.add(
ThirdActivePowerDailyUpdateView.builder()
.stationName(o.getStationName())
.createDate(o.getCreateDate())
.photovoltaicPower(o.getPhotovoltaicPower())
.meterPower(o.getMeterPower())
.systemSource(ThirdPartyApiConstant.CQ_SOURCE)
.saveDate(currentDay)
.build()
);
}
return XTransactionHelper.begin(context, () -> {
ThirdActivePowerViewMapper mapper = context.getBean(ThirdActivePowerViewMapper.class);
//保存历史数据
mapper.batchInsertList(dtoList);
ThirdActivePowerDailyUpdateViewMapper dailyMapper = context.getBean(ThirdActivePowerDailyUpdateViewMapper.class);
//删除当日最新数据
dailyMapper.deleteByCurrentDayData(dtoDailyList, currentDay);
//保存当日最新数据
dailyMapper.batchInsertList(dtoDailyList);
return XServiceResult.OK;
});
}
......
......@@ -36,4 +36,30 @@
where
id=#{id}
</select>
<delete id="deleteByCurrentDayData" parameterType="java.util.List">
delete
from third_active_power_daily_update
where save_date = #{currentDay}
and station_name IN
<foreach collection="list" item="item" open="(" separator="," close=")">
#{item.stationName}
</foreach>
</delete>
<insert id="batchInsertList" parameterType="java.util.List">
insert into third_active_power_daily_update (station_name, create_date, photovoltaic_power, meter_power,
system_source, save_date)
values
<foreach collection="list" item="item" separator=",">
(
#{item.stationName},
#{item.createDate},
#{item.photovoltaicPower},
#{item.meterPower},
#{item.systemSource},
#{item.saveDate}
)
</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