This commit is contained in:
2026-04-01 14:27:35 +08:00
parent 9272a0162a
commit f88e9bedc2
18 changed files with 2264 additions and 353 deletions

View File

@ -8,6 +8,14 @@ export function getDzjkHomeView(siteId) {
})
}
//获取单个站点总累计运行数据(基于日表)
export function getDzjkHomeTotalView(siteId) {
return request({
url: `/ems/siteMonitor/homeTotalView?siteId=${siteId}`,
method: 'get'
})
}
// 单站监控项目点位配置(供单站监控功能查询)
export function getProjectPointMapping(siteId) {
return request({
@ -738,88 +746,25 @@ export function getLoadNameList(siteId) {
// 电表报表
export function getAmmeterData({siteId, startTime, endTime, pageSize, pageNum}) {
const kind = 'day'
const aliasMap = {
activePeakKwh: 'activePeakKwh',
activeHighKwh: 'activeHighKwh',
activeFlatKwh: 'activeFlatKwh',
activeValleyKwh: 'activeValleyKwh',
activeTotalKwh: 'activeTotalKwh',
reActivePeakKwh: 'reActivePeakKwh',
reActiveHighKwh: 'reActiveHighKwh',
reActiveFlatKwh: 'reActiveFlatKwh',
reActiveValleyKwh: 'reActiveValleyKwh',
reActiveTotalKwh: 'reActiveTotalKwh',
effect: 'effect',
}
return queryMenuPointCurves({
siteId,
menuCode: 'TJBB_DBBB',
startDate: startTime,
endDate: endTime,
}).then((records) => {
const rowMap = new Map()
records.forEach((record) => {
const alias = aliasMap[record.fieldName]
if (!alias) return
;(record.curve || []).forEach((point) => {
const time = point?.dataTime ? new Date(point.dataTime) : null
if (!time || isNaN(time.getTime())) return
const label = formatTimeLabelByKind(time, kind)
if (!rowMap.has(label)) rowMap.set(label, {dataTime: label})
rowMap.get(label)[alias] = normalizePointValue(point?.pointValue)
})
})
const labels = buildSortedLabels(new Set(Array.from(rowMap.keys())), kind)
const fullRows = labels.map(label => rowMap.get(label))
return {
rows: paginateRows(fullRows, pageNum, pageSize),
total: fullRows.length,
return request({
url: `/ems/statsReport/getAmmeterDataFromDaily`,
method: 'get',
params: {
siteId,
startTime,
endTime,
pageSize,
pageNum,
}
})
}
// 电价报表
export function getAmmeterRevenueData(data) {
const {siteId, startTime, endTime, pageNum, pageSize} = data || {}
const kind = 'day'
const aliasMap = {
activePeakPrice: 'activePeakPrice',
activeHighPrice: 'activeHighPrice',
activeFlatPrice: 'activeFlatPrice',
activeValleyPrice: 'activeValleyPrice',
activeTotalPrice: 'activeTotalPrice',
reActivePeakPrice: 'reActivePeakPrice',
reActiveHighPrice: 'reActiveHighPrice',
reActiveFlatPrice: 'reActiveFlatPrice',
reActiveValleyPrice: 'reActiveValleyPrice',
reActiveTotalPrice: 'reActiveTotalPrice',
actualRevenue: 'actualRevenue',
}
return queryMenuPointCurves({
siteId,
menuCode: 'TJBB_SYBB',
startDate: startTime,
endDate: endTime,
}).then((records) => {
const rowMap = new Map()
records.forEach((record) => {
const alias = aliasMap[record.fieldName]
if (!alias) return
;(record.curve || []).forEach((point) => {
const time = point?.dataTime ? new Date(point.dataTime) : null
if (!time || isNaN(time.getTime())) return
const label = formatTimeLabelByKind(time, kind)
if (!rowMap.has(label)) rowMap.set(label, {dataTime: label})
rowMap.get(label)[alias] = normalizePointValue(point?.pointValue)
})
})
const labels = buildSortedLabels(new Set(Array.from(rowMap.keys())), kind)
const fullRows = labels.map(label => rowMap.get(label))
return {
rows: paginateRows(fullRows, pageNum, pageSize),
total: fullRows.length,
}
return request({
url: `/ems/statsReport/getAmmeterRevenueData`,
method: 'get',
params: data
})
}

View File

@ -8,6 +8,15 @@ export function getSiteInfoList({siteName, startTime, endTime, pageSize, pageNum
})
}
// 手动同步站点天气(收益报表)
export function syncSiteWeatherByDateRange({siteId, startTime, endTime}) {
return request({
url: `/ems/statsReport/syncWeatherByDateRange`,
method: 'post',
params: {siteId, startTime, endTime}
})
}
// 新增站点
export function addSite(data) {
return request({
@ -309,6 +318,18 @@ export function getPointConfigCurve(data) {
})
}
// 点位配置-生成最近7天数据
export function generatePointConfigRecent7Days(data) {
return request({
url: `/ems/pointConfig/generateRecent7Days`,
method: 'post',
data,
headers: {
repeatSubmit: false
}
})
}
// 计算点配置列表
export function getPointCalcConfigList(params) {
return request({
@ -352,6 +373,92 @@ export function deletePointCalcConfig(ids) {
})
}
// 数据修正列表ems_daily_energy_data
export function getDailyEnergyDataList(params) {
return request({
url: `/ems/dailyEnergyData/list`,
method: 'get',
params
})
}
// 数据修正详情
export function getDailyEnergyDataDetail(id) {
return request({
url: `/ems/dailyEnergyData/${id}`,
method: 'get',
})
}
// 新增数据修正
export function addDailyEnergyData(data) {
return request({
url: `/ems/dailyEnergyData`,
method: 'post',
data
})
}
// 编辑数据修正
export function updateDailyEnergyData(data) {
return request({
url: `/ems/dailyEnergyData`,
method: 'put',
data
})
}
// 删除数据修正
export function deleteDailyEnergyData(ids) {
return request({
url: `/ems/dailyEnergyData/${ids}`,
method: 'delete',
})
}
// 充放电修正列表ems_daily_charge_data
export function getDailyChargeDataList(params) {
return request({
url: `/ems/dailyChargeData/list`,
method: 'get',
params
})
}
// 充放电修正详情
export function getDailyChargeDataDetail(id) {
return request({
url: `/ems/dailyChargeData/${id}`,
method: 'get',
})
}
// 新增充放电修正
export function addDailyChargeData(data) {
return request({
url: `/ems/dailyChargeData`,
method: 'post',
data
})
}
// 编辑充放电修正
export function updateDailyChargeData(data) {
return request({
url: `/ems/dailyChargeData`,
method: 'put',
data
})
}
// 删除充放电修正
export function deleteDailyChargeData(ids) {
return request({
url: `/ems/dailyChargeData/${ids}`,
method: 'delete',
})
}
//mqtt
export function getMqttList({pageSize, pageNum, mqttTopic, topicName, siteId}) {
return request({