优化暂存

main
Lufaneng 1 year ago
parent 42d1397e4d
commit 42916f45ec

@ -12,14 +12,17 @@ declare module 'vue' {
ElCheckbox: typeof import('element-plus/es')['ElCheckbox']
ElCheckboxGroup: typeof import('element-plus/es')['ElCheckboxGroup']
ElConfigProvider: typeof import('element-plus/es')['ElConfigProvider']
ElDatePicker: typeof import('element-plus/es')['ElDatePicker']
ElDialog: typeof import('element-plus/es')['ElDialog']
ElIcon: typeof import('element-plus/es')['ElIcon']
ElInput: typeof import('element-plus/es')['ElInput']
ElInputNumber: typeof import('element-plus/es')['ElInputNumber']
ElOption: typeof import('element-plus/es')['ElOption']
ElPagination: typeof import('element-plus/es')['ElPagination']
ElRadio: typeof import('element-plus/es')['ElRadio']
ElRadioGroup: typeof import('element-plus/es')['ElRadioGroup']
ElScrollbar: typeof import('element-plus/es')['ElScrollbar']
ElSelect: typeof import('element-plus/es')['ElSelect']
ElSlider: typeof import('element-plus/es')['ElSlider']
ElTable: typeof import('element-plus/es')['ElTable']
ElTableColumn: typeof import('element-plus/es')['ElTableColumn']

@ -17,7 +17,16 @@
<!-- 主体区域 -->
<div class="control-content">
<el-table :data="tableData" style="width: 100%" height="400" stripe v-loading="loading">
<div style="width: 100%;">
<el-button @click="handleDel" class="delBtn" type="danger">
<el-icon>
<Delete />
</el-icon>
批量删除
</el-button>
</div>
<el-table :data="tableData" style="width: 100%" height="366" stripe v-loading="loading" @selection-change="handleSelectionChange" row-key="id" ref="multipleTableRef">
<el-table-column type="selection" :selectable="selectable" width="55" />
<el-table-column align="center" prop="id" label="序号" />
<el-table-column align="center" prop="loop_idx" label="回路地址" />
<el-table-column align="center" prop="fault_msg" label="故障信息" />
@ -75,7 +84,7 @@ const commit_uid = localStorage.getItem('central_control_comm_uid')
const loading = ref(false)
const total = ref(0)
const pageSize = ref(9)
const pageSize = ref(8)
const currentPage = ref(1)
const handleSizeChange = () => {
currentPage.value = 1
@ -87,6 +96,20 @@ const handleCurrentChange = () => {
const tableData = ref([])
const multipleTableRef = ref(null)
const multipleSelection = ref([])
const selectable = (row) => true
const handleSelectionChange = (val) => {
multipleSelection.value = val
}
const handleDel = () => {
console.log(multipleSelection.value)
if (multipleSelection.value.length === 0) {
return ElMessage.warning('请至少选择一项!')
}
}
const getData = () => {
const params = {
"limit": pageSize.value,
@ -219,7 +242,7 @@ onUnmounted(() => {
display: flex;
flex-direction: column;
align-items: center;
gap: 20px;
gap: 10px;
:deep(.el-table__header) {
.el-table__cell {
@ -285,4 +308,9 @@ onUnmounted(() => {
}
}
}
.delBtn {
background-color: #f12323;
border-color: #f12323;
}
</style>

@ -47,10 +47,10 @@
<div class="energy-card">
<div class="energy-name"><span></span><span></span><span></span><span></span></div>
<div class="param-list">
<div class="param-item">
<!-- <div class="param-item">
<span class="param-label">DC电压:</span>
<span class="param-value">{{ energyParams.dcVoltage }}</span>
</div>
</div> -->
<div class="param-item">
<span class="param-label">有功电能:</span>
<span class="param-value">{{ energyParams.activeEnergy }}</span>
@ -133,7 +133,7 @@
</el-icon>
切换模式
</div>
<el-button class="mode-button active" @click="info.disable = !info.disable">{{ info.disable ? '手动' : '自动' }}</el-button>
<el-button class="mode-button active" @click="changeMode">{{ info.disable ? '' : '' }}</el-button>
</div>
<!-- 灯控设置 -->
@ -175,12 +175,12 @@
设备号{{ commit_uid }}
</div>
<div class="bottom_item">
<el-button class="restart-button" @click="restartSystem">
<!-- <el-button class="restart-button" @click="restartSystem">
<el-icon>
<RefreshRight />
</el-icon>
远程重启
</el-button>
</el-button> -->
<el-button class="back-button" @click="goBack">
<el-icon>
<HomeFilled />
@ -229,17 +229,17 @@ const weekDays = ['星期日', '星期一', '星期二', '星期三', '星期四
RPC.post('/adl400/readPhaseData', { comm_uid: commit_uid }).then(res => {
powerPhases.value[0].voltage = res.aVoltage + 'V'
powerPhases.value[0].current = res.aElectricCurrent + 'A'
powerPhases.value[0].power = res.aPower + 'Kw'
powerPhases.value[0].power = res.aPower + 'kW'
powerPhases.value[0].factor = res.aPowerFactor
powerPhases.value[1].voltage = res.bVoltage + 'V'
powerPhases.value[1].current = res.bElectricCurrent + 'A'
powerPhases.value[1].power = res.bPower + 'Kw'
powerPhases.value[1].power = res.bPower + 'kW'
powerPhases.value[1].factor = res.bPowerFactor
powerPhases.value[2].voltage = res.cVoltage + 'V'
powerPhases.value[2].current = res.cElectricCurrent + 'A'
powerPhases.value[2].power = res.cPower + 'Kw'
powerPhases.value[2].power = res.cPower + 'kW'
powerPhases.value[2].factor = res.cPowerFactor
energyParams.value.activeEnergy = res.activeEnergy + 'A'
@ -252,21 +252,21 @@ const powerPhases = ref([
name: 'A',
voltage: '0V',
current: '0A',
power: '20.88kw',
power: '0kW',
factor: '0'
},
{
name: 'B',
voltage: '0V',
current: '0A',
power: '0kw',
power: '0kW',
factor: '0'
},
{
name: 'C',
voltage: '0V',
current: '0A',
power: '0kw',
power: '0kW',
factor: '0'
}
])
@ -274,7 +274,7 @@ const powerPhases = ref([
const energyParams = ref({
dcVoltage: '0.0V',
activeEnergy: '0kwh',
activePower: '0kw',
activePower: '0kW',
powerFactor: '0'
})
@ -498,10 +498,39 @@ const goBack = () => {
//
const restartSystem = () => {
ElMessageBox.confirm(
`此操作将远程重启,是否继续?`,
'提示',
{
confirmButtonText: '确认',
cancelButtonText: '取消',
type: 'warning',
}
).then(() => {
RPC.post('/m9z/setRestart', { comm_uid: commit_uid }).then(res => {
ElMessage.success('远程重启成功')
getInfo()
})
})
}
const changeMode = () => {
ElMessageBox.confirm(
`此操作将切换到${info.value.disable ? '自动' : '手动'}模式,是否继续?`,
'提示',
{
confirmButtonText: '确认',
cancelButtonText: '取消',
type: 'warning',
}
)
.then(() => {
info.value.disable = !info.value.disable
// ElMessage({
// type: 'success',
// message: `${info.value.disable ? '' : ''}`,
// })
})
}
let timeInterval = null
@ -622,6 +651,7 @@ onUnmounted(() => {
padding: 10px;
flex: 1;
gap: 8px;
justify-content: space-between;
}
.param-item {

@ -218,21 +218,21 @@ const powerPhases = ref([
name: 'A',
voltage: '0V',
current: '0A',
power: '20.88kw',
power: '0kW',
factor: '0'
},
{
name: 'B',
voltage: '0V',
current: '0A',
power: '0kw',
power: '0kW',
factor: '0'
},
{
name: 'C',
voltage: '0V',
current: '0A',
power: '0kw',
power: '0kW',
factor: '0'
}
])
@ -240,7 +240,7 @@ const powerPhases = ref([
const energyParams = ref({
dcVoltage: '0.0V',
activeEnergy: '0kwh',
activePower: '0kw',
activePower: '0kW',
powerFactor: '0'
})
@ -350,17 +350,17 @@ const getInfo = () => {
RPC.post('/adl400/readPhaseData', { comm_uid: commit_uid }).then(res => {
powerPhases.value[0].voltage = res.aVoltage + 'V'
powerPhases.value[0].current = res.aElectricCurrent + 'A'
powerPhases.value[0].power = res.aPower + 'Kw'
powerPhases.value[0].power = res.aPower + 'kW'
powerPhases.value[0].factor = res.aPowerFactor
powerPhases.value[1].voltage = res.bVoltage + 'V'
powerPhases.value[1].current = res.bElectricCurrent + 'A'
powerPhases.value[1].power = res.bPower + 'Kw'
powerPhases.value[1].power = res.bPower + 'kW'
powerPhases.value[1].factor = res.bPowerFactor
powerPhases.value[2].voltage = res.cVoltage + 'V'
powerPhases.value[2].current = res.cElectricCurrent + 'A'
powerPhases.value[2].power = res.cPower + 'Kw'
powerPhases.value[2].power = res.cPower + 'kW'
powerPhases.value[2].factor = res.cPowerFactor
energyParams.value.activeEnergy = res.activeEnergy + 'A'

@ -24,33 +24,54 @@
<div class="main_content">
<div class="line">
<div class="item">
<div class="key">经度</div>
<el-input v-model="formField.lat" style="width: 100px" placeholder="请输入" :formatter="(value) => `${value}˚`" :parser="(value) => value.replace(/˚/g, '')" />
<div class="key">设备时间</div>
<el-date-picker value-format="YYYY-MM-DD HH:mm:ss" style="flex: 1;" v-model="formField.deviceTime" type="datetime" placeholder="请选择时间" />
</div>
</div>
<div class="line">
<div class="item">
<div class="key">大地经度</div>
<!-- <el-input v-model="formField.lat" style="width: 100px" placeholder="请输入" :formatter="(value) => `${value}˚`" :parser="(value) => value.replace(/˚/g, '')" /> -->
<el-input-number :min="0" :max="180" v-model="formField.lat" style="width: 100px" placeholder="请输入" :controls="false" />
</div>
<div class="item">
<div class="key">纬度</div>
<el-input v-model="formField.lgn" style="width: 100px" placeholder="请输入" :formatter="(value) => `${value}˚`" :parser="(value) => value.replace(/˚/g, '')" />
<div class="key">大地纬度</div>
<!-- <el-input v-model="formField.lgn" style="width: 100px" placeholder="请输入" :formatter="(value) => `${value}˚`" :parser="(value) => value.replace(/˚/g, '')" /> -->
<el-input-number :min="0" :max="90" v-model="formField.lgn" style="width: 100px" placeholder="请输入" :controls="false" />
</div>
</div>
<div class="line">
<div class="item">
<div class="key">经纬开灯偏差</div>
<el-input v-model="formField.rise" style="width: 100px" placeholder="请输入" :formatter="(value) => `${value}分`" :parser="(value) => value.replace(/分/g, '')" />
<!-- <el-input readonly v-model="formField.rise" style="width: 100px" placeholder="请输入" :formatter="(value) => `${value}分`" :parser="(value) => value.replace(/分/g, '')" /> -->
<el-select v-model="formField.rise" placeholder="请选择">
<el-option v-for="item in RiseSetOption" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</div>
</div>
<div class="line">
<div class="item">
<div class="key">经纬关灯偏差</div>
<el-input v-model="formField.set" style="width: 100px" placeholder="请输入" :formatter="(value) => `${value}分`" :parser="(value) => value.replace(/分/g, '')" />
<!-- <el-input readonly v-model="formField.set" style="width: 100px" placeholder="请输入" :formatter="(value) => `${value}分`" :parser="(value) => value.replace(/分/g, '')" /> -->
<el-select v-model="formField.set" placeholder="请选择">
<el-option v-for="item in RiseSetOption" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</div>
<!-- <div class="item"></div> -->
</div>
<div class="line">
<div class="item">
<div class="key">PWM频率</div>
<div class="value">0HZ</div>
<div class="key">控制回路数</div>
<div class="value" style="min-width: 100px;"></div>
</div>
<div class="item"></div>
</div>
<div class="line">
<div class="item">
<div class="key">扩展外设</div>
<div class="key">在线升级固件</div>
<div class="button disabled">禁用</div>
</div>
<div class="item"></div>
</div>
<div class="buttonBox">
<div class="button save" @click="save"></div>
@ -60,28 +81,35 @@
</div>
<div class="main_item">
<div class="main_title">
电能表设置
稳压分控器
</div>
<div class="main_content energy_meter" style="width:300px">
<div class="line">
<div class="main_content energy_meter" style="width:235px">
</div>
</div>
<div class="main_item">
<div class="main_title">
电能表
</div>
<div class="main_content energy_meter" style="width:235px">
<!-- <div class="line">
<div class="item">
<div class="key">主控器地址</div>
<div class="value"> </div>
<!-- <el-input v-model="formField.e" style="width: 100px" placeholder="请输入" /> -->
</div>
</div>
</div> -->
<div class="line">
<div class="item">
<div class="key">电能表地址</div>
<div class="value">{{ address }}</div>
<!-- <el-input v-model="formField.f" style="width: 100px" placeholder="请输入" /> -->
<div class="key">电能表型号</div>
<div class="value"> </div>
<!-- <el-input v-model="formField.g" style="width: 100px" placeholder="请输入" /> -->
</div>
</div>
<div class="line">
<div class="item">
<div class="key">电能表型号</div>
<div class="value"> </div>
<!-- <el-input v-model="formField.g" style="width: 100px" placeholder="请输入" /> -->
<div class="key">电能表地址</div>
<div class="value">{{ address }}</div>
<!-- <el-input v-model="formField.f" style="width: 100px" placeholder="请输入" /> -->
</div>
</div>
</div>
@ -130,6 +158,22 @@ const systemRuntime = ref('38分钟')
const formField = ref({})
const commit_uid = localStorage.getItem('central_control_comm_uid')
const RiseSetOption = [
{ label: '0', value: 0 },
{ label: '提前60分钟', value: 60 },
{ label: '提前50分钟', value: 50 },
{ label: '提前40分钟', value: 40 },
{ label: '提前30分钟', value: 30 },
{ label: '提前20分钟', value: 20 },
{ label: '提前10分钟', value: 10 },
{ label: '延后10分钟', value: -10 },
{ label: '延后20分钟', value: -20 },
{ label: '延后30分钟', value: -30 },
{ label: '延后40分钟', value: -40 },
{ label: '延后50分钟', value: -50 },
{ label: '延后60分钟', value: -60 },
]
RPC.post('/m9z/getLgnLatData', { comm_uid: commit_uid }).then(res => {
formField.value.lat = res.lat
formField.value.lgn = res.lgn
@ -162,22 +206,44 @@ const updateTime = () => {
}
const restartSystem = () => {
ElMessageBox.confirm(
`此操作将远程重启,是否继续?`,
'提示',
{
confirmButtonText: '确认',
cancelButtonText: '取消',
type: 'warning',
}
).then(() => {
RPC.post('/m9z/setRestart', { comm_uid: commit_uid }).then(res => {
ElMessage.success('重启成功')
ElMessage.success('远程重启成功')
getInfo()
})
})
}
const save = () => {
ElMessageBox.confirm(
`此操作将保存配置,是否继续?`,
'提示',
{
confirmButtonText: '确认',
cancelButtonText: '取消',
type: 'warning',
}
).then(() => {
const params = {
"comm_uid": commit_uid,
"lat": Number(formField.value.lat),
"lgn": Number(formField.value.lgn),
"loc_str": formField.value.loc_str,
"loc_str": formField.value.loc,
"rise": Number(formField.value.rise),
"set": Number(formField.value.set)
}
RPC.post('/m9z/setDeviceLgnLatAndSunRsTime', params).then(res => {
ElMessage.success('操作成功')
console.log(params, formField.value)
// RPC.post('/m9z/setDeviceLgnLatAndSunRsTime', params).then(res => {
// ElMessage.success('')
// })
})
}
@ -253,7 +319,8 @@ onUnmounted(() => {
.control-content {
display: flex;
width: 100%;
gap: 30px;
gap: 20px;
overflow: hidden;
box-sizing: border-box;
.main_item {
@ -287,6 +354,7 @@ onUnmounted(() => {
.key {
color: #fff;
margin-right: 10px;
flex-shrink: 0;
}
.value {
@ -297,7 +365,7 @@ onUnmounted(() => {
min-height: 32px;
box-sizing: border-box;
border-radius: 5px;
border: 1px solid #ccc;
// border: 1px solid #ccc;
}
.line {
@ -393,14 +461,25 @@ onUnmounted(() => {
.el-input {
background-color: #21232A;
:deep(.el-input__wrapper) {
background-color: #212329;
}
:deep(.el-input__wrapper) {
background-color: #212329 !important;
box-shadow: none;
border: 1px soild #3B3D45;
input {
color: #8088AA;
}
}
:deep(.el-select__wrapper) {
background-color: #212329 !important;
box-shadow: none;
border: 1px soild #3B3D45;
.el-select__placeholder {
color: #8088AA;
}
}
</style>

Loading…
Cancel
Save