修改用户台账管理接口

This commit is contained in:
guanj
2026-03-05 11:08:36 +08:00
parent 15bd1ac6d2
commit 30eddd0572
6 changed files with 325 additions and 228 deletions

View File

@@ -26,3 +26,78 @@ export function deleteUser(data: any) {
data: data data: data
}) })
} }
/**
* 干扰源接入功能删除流程
*/
export const deleteUserReport = (data: any) => {
return request({
url: '/device-boot/userReport/deleteUserReport',
method: 'POST',
data
})
}
/**
* 提交表单数据
*/
export const submitFormData = (data: any) => {
return request({
url: '/device-boot/userReport/add',
method: 'POST',
data: data
})
}
// 根据id获取用户档案录入的详细数据
export const getById = (data: any) => {
return request({
url: '/device-boot/userReport/getById',
method: 'get',
params: data
})
}
/**
* 提交表单数据
*/
export const addEditor = (data: any) => {
return request({
url: '/device-boot/userReportRenewal/addEditor',
method: 'POST',
data: data
})
}
// 根据id获取用户档案录入的详细数据
export const getByDeptDevLine = (params: any) => {
return request({
url: '/device-boot/line/getByDeptDevLine',
method: 'get',
params
})
}
/**
* 根据id获取用户档案录入的详细数据
*/
export const getUserReportUpdateById = (id: any) => {
return request({
url: '/device-boot/userReportRenewal/getUserReportUpdateById?businessId='+id,
method: 'POST',
})
}
// 根据id获取用户档案录入的详细数据
export const getUserReportById = (id: any) => {
return request({
url: '/device-boot/userReport/getUserReportById?id='+id,
method: 'get'
})
}
// 根据id查询文件信息集合
export const getFileById = (params: any) => {
return request({
url: '/device-boot/fileUrl/getFileById',
method: 'get',
params
})
}

View File

@@ -400,13 +400,12 @@ import { uploadFile } from '@/api/system-boot/file'
import { import {
submitFormData, submitFormData,
getById, getById,
updateFormData,
addEditor, addEditor,
resend, getByDeptDevLine,
getByDeptDevLine getUserReportUpdateById
} from '@/api/supervision-boot/interfere/index' } from '@/api/device-boot/sensitiveLoadMange'
import { getSubstationSelect } from '@/api/device-boot/line' import { getSubstationSelect } from '@/api/device-boot/line'
import { getUserReportUpdateById } from '@/api/supervision-boot/userReport/form' // import { getUserReportUpdateById } from '@/api/supervision-boot/userReport/form'
import { useRoute } from 'vue-router' import { useRoute } from 'vue-router'
const route = useRoute() const route = useRoute()

View File

@@ -4,7 +4,7 @@
<el-spin description="加载中..." /> <el-spin description="加载中..." />
</div> </div>
<div v-else> <div v-else>
<el-descriptions :column="2" border> <el-descriptions :column="2" border label-width="200px">
<el-descriptions-item label="所在地市"> <el-descriptions-item label="所在地市">
{{ detailData.city }} {{ detailData.city }}
</el-descriptions-item> </el-descriptions-item>
@@ -46,7 +46,10 @@
})?.name })?.name
}} }}
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label="非线性终端类型" v-if="detailData.userType == 0 || detailData.userType == 1"> <el-descriptions-item
label="非线性终端类型"
v-if="detailData.userType == 0 || detailData.userType == 1"
>
{{ proviteData.nonlinearDeviceType ? proviteData.nonlinearDeviceType : '-' }} {{ proviteData.nonlinearDeviceType ? proviteData.nonlinearDeviceType : '-' }}
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label="预测评估单位"> <el-descriptions-item label="预测评估单位">
@@ -57,7 +60,9 @@
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item <el-descriptions-item
:label=" :label="
detailData.userType == '4' || detailData.userType == '5' ? '非线性设备类型: ' : '非线性负荷类型:' detailData.userType == '4' || detailData.userType == '5'
? '非线性设备类型: '
: '非线性负荷类型:'
" "
v-if=" v-if="
detailData.userType == '2' || detailData.userType == '2' ||
@@ -171,7 +176,10 @@
})?.name })?.name
}} }}
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label="预测评估评审单位" v-if="detailData.userType != 0 && detailData.userType != 1"> <el-descriptions-item
label="预测评估评审单位"
v-if="detailData.userType != 0 && detailData.userType != 1"
>
{{ proviteData?.evaluationChekDept }} {{ proviteData?.evaluationChekDept }}
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label="行业" v-if="detailData.userType == 6"> <el-descriptions-item label="行业" v-if="detailData.userType == 6">
@@ -220,14 +228,13 @@ import { onMounted, ref, reactive, watch } from 'vue'
import { useRoute, useRouter } from 'vue-router' import { useRoute, useRouter } from 'vue-router'
import { formatDate } from '@/utils/formatTime' import { formatDate } from '@/utils/formatTime'
import { propTypes } from '@/utils/propTypes' import { propTypes } from '@/utils/propTypes'
import { getUserReportById, getUserReportUpdateById } from '@/api/supervision-boot/userReport/form' import { getById, getUserReportUpdateById, getByDeptDevLine, getFileById } from '@/api/device-boot/sensitiveLoadMange'
import { getDictTreeById } from '@/api/system-boot/dictTree' import { getDictTreeById } from '@/api/system-boot/dictTree'
import { useDictData } from '@/stores/dictData' import { useDictData } from '@/stores/dictData'
import { getFileNameAndFilePath } from '@/api/system-boot/file' import { getFileNameAndFilePath } from '@/api/system-boot/file'
import { Link, View } from '@element-plus/icons-vue' import { Link, View } from '@element-plus/icons-vue'
import PreviewFile from '@/components/PreviewFile/index.vue' import PreviewFile from '@/components/PreviewFile/index.vue'
import { getByDeptDevLine } from '@/api/supervision-boot/interfere/index' // import { addOrUpdateFile, getFileById } from '@/api/supervision-boot/interfere/index'
import { addOrUpdateFile, getFileById } from '@/api/supervision-boot/interfere/index'
defineOptions({ name: 'BpmUserReportDetail' }) defineOptions({ name: 'BpmUserReportDetail' })
const { query } = useRoute() // 查询参数 const { query } = useRoute() // 查询参数
@@ -340,7 +347,7 @@ const getInfo = async () => {
getProviteData() getProviteData()
}) })
} else { } else {
await getUserReportById(props.id || queryId).then(res => { await getById({ id: props.id || queryId }).then(res => {
detailData.value = res.data detailData.value = res.data
getProviteData() getProviteData()
@@ -385,7 +392,6 @@ const preview = (val: any, url: any) => {
} }
//预测评估报告 //预测评估报告
if (val == 'predictionEvaluationReport') { if (val == 'predictionEvaluationReport') {
predictionEvaluationReportRef?.value.open(url) predictionEvaluationReportRef?.value.open(url)
} }
//预测评估评审意见报告 //预测评估评审意见报告
@@ -416,11 +422,11 @@ const preview = (val: any, url: any) => {
} }
const queryFiles = () => { const queryFiles = () => {
getFileById({ id: props.id }).then(res => { // getFileById({ id: props.id }).then(res => {
res.data.forEach((item: any) => { // res.data.forEach((item: any) => {
if (item.url.length > 0) getFileNamePaths(item.url, item.name) // if (item.url.length > 0) getFileNamePaths(item.url, item.name)
}) // })
}) // })
} }
//判断userType选择取用的对象 //判断userType选择取用的对象
const getProviteData = async () => { const getProviteData = async () => {

View File

@@ -34,11 +34,11 @@
</TableHeader> </TableHeader>
<Table ref="tableRef" /> <Table ref="tableRef" />
<el-dialog title="详情" width="60%" v-model="dialogShow" v-if="dialogShow"> <el-dialog title="详情" width="1000px" v-model="dialogShow" v-if="dialogShow">
<DetailInfo :id="userId" :openType="'sourcesOfInterference'"></DetailInfo> <DetailInfo :id="userId" :openType="'sourcesOfInterference'"></DetailInfo>
</el-dialog> </el-dialog>
<!-- 批量导入 --> <!-- 批量导入
<sensitive-user-popup ref="sensitiveUserPopup" /> <sensitive-user-popup ref="sensitiveUserPopup" /> -->
<!-- 查看详情 detail 新增/修改 create--> <!-- 查看详情 detail 新增/修改 create-->
<addForm ref="addForms" @onSubmit="tableStore.index()" :openType="'sourcesOfInterference'"></addForm> <addForm ref="addForms" @onSubmit="tableStore.index()" :openType="'sourcesOfInterference'"></addForm>
@@ -57,7 +57,7 @@ import { useRouter } from 'vue-router'
import { downloadSensitiveReportTemplate } from '@/api/supervision-boot/userReport/form' import { downloadSensitiveReportTemplate } from '@/api/supervision-boot/userReport/form'
import DetailInfo from './components/detail.vue' import DetailInfo from './components/detail.vue'
import { cancelFormData, getUserReportById } from '@/api/supervision-boot/interfere/index' import { cancelFormData, getUserReportById } from '@/api/supervision-boot/interfere/index'
import { deleteUserReport } from '@/api/supervision-boot/delete/index' import { deleteUserReport } from '@/api/device-boot/sensitiveLoadMange'
const addForms = ref() const addForms = ref()
const dictData = useDictData() const dictData = useDictData()
const sensitiveUserPopup = ref() const sensitiveUserPopup = ref()
@@ -73,7 +73,7 @@ defineOptions({
//获取登陆用户姓名和部门 //获取登陆用户姓名和部门
const adminInfo = useAdminInfo() const adminInfo = useAdminInfo()
const tableStore = new TableStore({ const tableStore = new TableStore({
url: '/supervision-boot/userReport/getUserLedgerPage', url: '/device-boot/userReport/getUserLedgerPage',
// publicHeight: 65, // publicHeight: 65,
method: 'POST', method: 'POST',
column: [ column: [

View File

@@ -745,7 +745,7 @@ const initEcharts = (color: string, key: number, name: string) => {
//渲染echarts //渲染echarts
const init = () => { const init = () => {
loading.value = true loading.value = true
const url = localStorage.getItem('WebSocketUrl') || 'ws://192.168.1.67:10407/api/pushMessage/' const url = localStorage.getItem('WebSocketUrl') || 'ws://192.168.1.68:10407/api/pushMessage/'
echartsDataV1.value = initEcharts('#DAA520', 0, 'A相') echartsDataV1.value = initEcharts('#DAA520', 0, 'A相')
echartsDataV2.value = initEcharts('#2E8B57', 0, 'B相') echartsDataV2.value = initEcharts('#2E8B57', 0, 'B相')
echartsDataV3.value = initEcharts('#A52a2a', 0, 'C相') echartsDataV3.value = initEcharts('#A52a2a', 0, 'C相')
@@ -868,6 +868,22 @@ const setRealData = () => {
// webMsgSend.value[0].vRmsB == 0 ? 1 : Math.ceil(webMsgSend.value[0].vRmsB) // webMsgSend.value[0].vRmsB == 0 ? 1 : Math.ceil(webMsgSend.value[0].vRmsB)
// echartsDataV3.value.options.series[0].max = // echartsDataV3.value.options.series[0].max =
// webMsgSend.value[0].vRmsC == 0 ? 1 : Math.ceil(webMsgSend.value[0].vRmsC) // webMsgSend.value[0].vRmsC == 0 ? 1 : Math.ceil(webMsgSend.value[0].vRmsC)
let numData =
Math.ceil(
(Math.max(
...[
Math.floor(webMsgSend.value[0].vRmsA * 100) / 100 || 10,
Math.floor(webMsgSend.value[0].vRmsB * 100) / 100 || 10,
Math.floor(webMsgSend.value[0].vRmsC * 100) / 100 || 10
]
) *
1.2) /
10
) * 10
echartsDataV1.value.options.series[0].max = numData
echartsDataV2.value.options.series[0].max = numData
echartsDataV3.value.options.series[0].max = numData
echartsDataV1.value.options.series[0].data = [ echartsDataV1.value.options.series[0].data = [
{ {
name: ptName.value == 'star' ? 'A相' : 'AB相', //A相 name: ptName.value == 'star' ? 'A相' : 'AB相', //A相
@@ -920,14 +936,12 @@ const setRealData = () => {
} }
defineExpose({ setRealData }) defineExpose({ setRealData })
onMounted(() => { onMounted(() => {
init() init()
initRadioCharts() initRadioCharts()
getLineDetail({ id: monitoringPoint.state.lineId }).then(res => { getLineDetail({ id: monitoringPoint.state.lineId }).then(res => {
ptName.value = connection.filter(item => item.value == res.data.ptType)[0].code || '' ptName.value = connection.filter(item => item.value == res.data.ptType)[0].code || ''
}) })
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
dataSocket.socketServe?.closeWs() dataSocket.socketServe?.closeWs()

View File

@@ -25,7 +25,11 @@
<vxe-column type="seq" title="序号" width="70px"></vxe-column> <vxe-column type="seq" title="序号" width="70px"></vxe-column>
<vxe-column field="startTime" title="发生时刻" width="200"></vxe-column> <vxe-column field="startTime" title="发生时刻" width="200"></vxe-column>
<vxe-column field="lineName" title="监测点" width="120"></vxe-column> <vxe-column field="lineName" title="监测点" width="120"></vxe-column>
<vxe-column field="featureAmplitude" title="暂降(骤升)幅值(%)"></vxe-column> <vxe-column field="featureAmplitude" title="暂降(骤升)幅值(%)">
<template #default="{ row }">
{{ (row.featureAmplitude * 100).toFixed(2) }}
</template>
</vxe-column>
<vxe-column field="duration" title="持续时间(s)"></vxe-column> <vxe-column field="duration" title="持续时间(s)"></vxe-column>
</vxe-table> </vxe-table>
</div> </div>
@@ -49,7 +53,6 @@ const props = defineProps({
const tableData = ref([]) const tableData = ref([])
const tableData1 = ref([]) const tableData1 = ref([])
getNoDealEvents(props.params).then(res => { getNoDealEvents(props.params).then(res => {
tableData.value = res.data tableData.value = res.data
}) })
getAreaOffDev(props.params).then(res => { getAreaOffDev(props.params).then(res => {