docs(addLedger): 添加台账管理API调试文档并优化表单组件

- 新增 add-ledger API 调试文档,包含完整接口说明和使用示例
- 在动态路由中注册 toolAddLedger 和 eventList 模块
- 重构工程表单组件,添加简化/完整模式切换和只读状态支持
- 重构设备表单组件,实现动态表单项显示和表单验证规则
- 扩展台账接口定义,添加字典类型和数据相关接口定义
- 实现字典类型和数据的API调用方法
- 更新波形图接口,添加通道总数和相位数量字段
- 优化台账主界面,集成上下文面板和工具栏功能
- 实现台账字典选项的缓存管理和动态加载机制
This commit is contained in:
2026-05-11 16:29:55 +08:00
parent cd54bb676c
commit 5b3ca264c4
23 changed files with 2929 additions and 253 deletions

View File

@@ -170,3 +170,21 @@ export const getAvailableLineNos = (params: AddLedger.AvailableLineNoParams) =>
export const deleteAddLedgerNode = (params: AddLedger.DeleteNodeParams) => {
return requestAddLedger<boolean>('delete', '/node', params)
}
export const getAddLedgerDictTypeList = (params: AddLedger.DictTypeListParams) => {
return http.post<AddLedger.PageResult<AddLedger.DictTypeRecord> | AddLedger.DictTypeRecord[]>('/dictType/list', params, {
loading: false
})
}
export const getAddLedgerDictDataList = (params: AddLedger.DictDataListParams) => {
return http.post<AddLedger.PageResult<AddLedger.DictDataRecord> | AddLedger.DictDataRecord[]>('/dictData/listByTypeId', params, {
loading: false
})
}
export const getAddLedgerDictDataById = (id: string) => {
return http.post<AddLedger.DictDataRecord>('/dictData/getDicDataById', id, {
loading: false
})
}

View File

@@ -107,4 +107,34 @@ export namespace AddLedger {
label: string
value: T
}
export interface PageResult<T> {
records?: T[]
}
export interface DictTypeListParams {
code: string
pageNum: number
pageSize: number
}
export interface DictTypeRecord {
id?: string
name?: string
code?: string
state?: number
}
export interface DictDataListParams {
typeId: string
pageNum: number
pageSize: number
}
export interface DictDataRecord {
id?: string
name?: string
code?: string
state?: number
}
}

View File

@@ -11,6 +11,7 @@ export const parseComtradeApi = (params: Waveform.ParseComtradeParams) => {
formData.append('cfgFile', params.cfgFile)
formData.append('datFile', params.datFile)
appendFormDataValue(formData, 'parseType', params.parseType)
return http.post<Waveform.WaveComtradeResultVO>(`/wave/parseComtrade`, formData, {
headers: { 'Content-Type': 'multipart/form-data' }

View File

@@ -39,6 +39,8 @@ export namespace Waveform {
c?: string
channelName?: string
unit?: string
totalChannels?: number
phaseCount?: number
isOpen?: boolean
title?: string
colors?: string[]
@@ -68,10 +70,14 @@ export namespace Waveform {
listRmsMinData?: number[][]
iPhasic?: number
ptType?: number
szValueType?: string
pt?: number
ct?: number
time?: string
monitorName?: string
unit?: string
totalChannels?: number
phaseCount?: number
}
export interface EigenvalueDTO {
@@ -141,5 +147,8 @@ export namespace Waveform {
waveData?: WaveDataDTO
waveDataDetails?: WaveDataDetail[]
eigenvalues?: EigenvalueDTO[]
unit?: string
totalChannels?: number
phaseCount?: number
}
}