Lufaneng 7 months ago
parent c3255a3671
commit 9b839f8060

@ -17,12 +17,9 @@ declare module 'vue' {
ElIcon: typeof import('element-plus/es')['ElIcon'] ElIcon: typeof import('element-plus/es')['ElIcon']
ElInput: typeof import('element-plus/es')['ElInput'] ElInput: typeof import('element-plus/es')['ElInput']
ElInputNumber: typeof import('element-plus/es')['ElInputNumber'] ElInputNumber: typeof import('element-plus/es')['ElInputNumber']
ElOption: typeof import('element-plus/es')['ElOption']
ElPagination: typeof import('element-plus/es')['ElPagination'] ElPagination: typeof import('element-plus/es')['ElPagination']
ElRadio: typeof import('element-plus/es')['ElRadio'] ElRadio: typeof import('element-plus/es')['ElRadio']
ElRadioGroup: typeof import('element-plus/es')['ElRadioGroup'] 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'] ElSlider: typeof import('element-plus/es')['ElSlider']
ElTable: typeof import('element-plus/es')['ElTable'] ElTable: typeof import('element-plus/es')['ElTable']
ElTableColumn: typeof import('element-plus/es')['ElTableColumn'] ElTableColumn: typeof import('element-plus/es')['ElTableColumn']

@ -18,14 +18,12 @@
<!-- 主体区域 --> <!-- 主体区域 -->
<div class="control-content"> <div class="control-content">
<div class="main_item"> <div class="main_item">
<div class="main_title"> <div class="main_title">主控器设置</div>
主控器设置
</div>
<div class="main_content"> <div class="main_content">
<div class="line"> <div class="line">
<div class="item"> <div class="item">
<div class="key">设备时间</div> <div class="key">设备时间</div>
<el-date-picker value-format="YYYY-MM-DD HH:mm:ss" style="flex: 1;" v-model="deviceTime" type="datetime" placeholder="请选择时间" /> <el-date-picker value-format="YYYY-MM-DD HH:mm:ss" style="flex: 1" v-model="deviceTime" type="datetime" placeholder="请选择时间" />
</div> </div>
</div> </div>
<div class="line"> <div class="line">
@ -43,26 +41,34 @@
<div class="line"> <div class="line">
<div class="item"> <div class="item">
<div class="key">经纬开灯偏差</div> <div class="key">经纬开灯偏差</div>
<!-- <el-input readonly v-model="formField.rise" style="width: 100px" placeholder="请输入" :formatter="(value) => `${value}分`" :parser="(value) => value.replace(/分/g, '')" /> --> <div>
<el-select v-model="formField.rise" placeholder="请选择"> <el-input-number :controls="false" v-model="formField.rise" style="width: 100px" placeholder="请输入" />
<span style="color: #fff; margin-left: 8px"></span>
</div>
<!-- <el-select v-model="formField.rise" placeholder="请选择">
<el-option v-for="item in RiseSetOption" :key="item.value" :label="item.label" :value="item.value" /> <el-option v-for="item in RiseSetOption" :key="item.value" :label="item.label" :value="item.value" />
</el-select> </el-select> -->
</div> </div>
</div> </div>
<div class="line"> <div class="line">
<div class="item"> <div class="item">
<div class="key">经纬关灯偏差</div> <div class="key">经纬关灯偏差</div>
<!-- <el-input readonly v-model="formField.set" style="width: 100px" placeholder="请输入" :formatter="(value) => `${value}分`" :parser="(value) => value.replace(/分/g, '')" /> --> <div>
<el-select v-model="formField.set" placeholder="请选择"> <el-input-number :controls="false" v-model="formField.set" style="width: 100px" placeholder="请输入" />
<span style="color: #fff; margin-left: 8px"></span>
</div>
<!-- <el-select v-model="formField.set" placeholder="请选择">
<el-option v-for="item in RiseSetOption" :key="item.value" :label="item.label" :value="item.value" /> <el-option v-for="item in RiseSetOption" :key="item.value" :label="item.label" :value="item.value" />
</el-select> </el-select> -->
</div> </div>
<!-- <div class="item"></div> --> <!-- <div class="item"></div> -->
</div> </div>
<div class="line"> <div class="line">
<div class="item"> <div class="item">
<div class="key">控制回路数</div> <div class="key">控制回路数</div>
<div class="value" style="min-width: 100px;">{{ subLoopParameter.subLoopData?.length || 0 }}</div> <div class="value" style="min-width: 100px">
{{ subLoopParameter.subLoopData?.length || 0 }}
</div>
</div> </div>
<div class="item"></div> <div class="item"></div>
</div> </div>
@ -80,10 +86,8 @@
</div> </div>
</div> </div>
<div class="main_item"> <div class="main_item">
<div class="main_title"> <div class="main_title">稳压分控器</div>
稳压分控器 <div class="main_content energy_meter subLoopParame" style="width: 235px">
</div>
<div class="main_content energy_meter subLoopParame" style="width:235px">
<div class="subLoopParameter_item" v-for="item in subLoopParameter.subLoopData"> <div class="subLoopParameter_item" v-for="item in subLoopParameter.subLoopData">
<div class="item"> <div class="item">
<div class="key">回路地址</div> <div class="key">回路地址</div>
@ -95,19 +99,21 @@
</div> </div>
<div class="item"> <div class="item">
<div class="key">调光幅度</div> <div class="key">调光幅度</div>
<div class="value">{{ item.DimmingValue ? item.DimmingValue + '%' : item.DimmingValue }}</div> <div class="value">
{{ item.DimmingValue ? item.DimmingValue + '%' : item.DimmingValue }}
</div>
</div> </div>
<div class="buttonBox" v-if="item.Modules?.length"> <div class="buttonBox" v-if="item.Modules?.length">
<div class="button save" style="width: 100px;" @click="openDialog(item)"></div> <div class="button save" style="width: 100px" @click="openDialog(item)">
查看子模块
</div>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<div class="main_item"> <div class="main_item">
<div class="main_title"> <div class="main_title">电能表</div>
电能表 <div class="main_content energy_meter" style="width: 235px">
</div>
<div class="main_content energy_meter" style="width:235px">
<!-- <div class="line"> <!-- <div class="line">
<div class="item"> <div class="item">
<div class="key">主控器地址</div> <div class="key">主控器地址</div>
@ -134,12 +140,8 @@
</div> </div>
<!-- 底部信息 --> <!-- 底部信息 -->
<div class="bottom-info"> <div class="bottom-info">
<div style="color:#fff"> <div style="color: #fff">设备号{{ commit_uid }}</div>
设备号{{ commit_uid }} <div style="color: #fff">设备名称{{ device_name }}</div>
</div>
<div style="color:#fff">
设备名称{{ device_name }}
</div>
<div class="bottom_item"> <div class="bottom_item">
<!-- <div class="time-item"> <!-- <div class="time-item">
<span>日出时间{{ sunriseTime }}</span> <span>日出时间{{ sunriseTime }}</span>
@ -170,8 +172,8 @@
<script setup> <script setup>
import { ref, onMounted, onUnmounted } from 'vue' import { ref, onMounted, onUnmounted } from 'vue'
import { useRouter } from 'vue-router' import { useRouter } from 'vue-router'
import RPC from '@/utils/rpc'; import RPC from '@/utils/rpc'
import TableDialog from './TableDialog.vue'; import TableDialog from './TableDialog.vue'
const router = useRouter() const router = useRouter()
const currentTime = ref('') const currentTime = ref('')
@ -198,19 +200,19 @@ const RiseSetOption = [
{ label: '延后60分钟', value: -60 }, { label: '延后60分钟', value: -60 },
] ]
RPC.post('/m9z/getLgnLatData', { comm_uid: commit_uid }).then(res => { RPC.post('/m9z/getLgnLatData', { comm_uid: commit_uid }).then((res) => {
formField.value.lat = res.lat formField.value.lat = res.lat
formField.value.lgn = res.lgn formField.value.lgn = res.lgn
formField.value.loc = res.loc formField.value.loc = res.loc
}) })
RPC.post('/m9z/getSunRiseSet', { comm_uid: commit_uid }).then(res => { RPC.post('/m9z/getSunRiseSet', { comm_uid: commit_uid }).then((res) => {
formField.value.rise = res.rise formField.value.rise = res.rise
formField.value.set = res.set formField.value.set = res.set
}) })
RPC.post('/m9z/getDeviceTime', { comm_uid: commit_uid }).then(res => { RPC.post('/m9z/getDeviceTime', { comm_uid: commit_uid }).then((res) => {
deviceTime.value = res.deviceTime deviceTime.value = res.deviceTime
}) })
RPC.post('/m9z/getAllSubLoopParameter', { comm_uid: commit_uid }).then(res => { RPC.post('/m9z/getAllSubLoopParameter', { comm_uid: commit_uid }).then((res) => {
subLoopParameter.value = res subLoopParameter.value = res
// subLoopParameter.value = { // subLoopParameter.value = {
// "subLoopData": [ // "subLoopData": [
@ -506,12 +508,12 @@ RPC.post('/m9z/getAllSubLoopParameter', { comm_uid: commit_uid }).then(res => {
}) })
const address = ref('') const address = ref('')
RPC.post('/adl400/getMsgAddress', { comm_uid: commit_uid }).then(res => { RPC.post('/adl400/getMsgAddress', { comm_uid: commit_uid }).then((res) => {
address.value = res address.value = res
}) })
const week = ref('') const week = ref('')
const weekDays = ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六']; const weekDays = ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六']
// //
const updateTime = () => { const updateTime = () => {
const now = new Date() const now = new Date()
@ -527,16 +529,12 @@ const updateTime = () => {
} }
const restartSystem = () => { const restartSystem = () => {
ElMessageBox.confirm( ElMessageBox.confirm(`此操作将远程重启,是否继续?`, '提示', {
`此操作将远程重启,是否继续?`, confirmButtonText: '确认',
'提示', cancelButtonText: '取消',
{ type: 'warning',
confirmButtonText: '确认', }).then(() => {
cancelButtonText: '取消', RPC.post('/m9z/setRestart', { comm_uid: commit_uid }).then((res) => {
type: 'warning',
}
).then(() => {
RPC.post('/m9z/setRestart', { comm_uid: commit_uid }).then(res => {
ElMessage.success('远程重启成功') ElMessage.success('远程重启成功')
getInfo() getInfo()
}) })
@ -544,24 +542,23 @@ const restartSystem = () => {
} }
const save = () => { const save = () => {
ElMessageBox.confirm( ElMessageBox.confirm(`此操作将保存配置,是否继续?`, '提示', {
`此操作将保存配置,是否继续?`, confirmButtonText: '确认',
'提示', cancelButtonText: '取消',
{ type: 'warning',
confirmButtonText: '确认', }).then(() => {
cancelButtonText: '取消',
type: 'warning',
}
).then(() => {
const params = { const params = {
"comm_uid": commit_uid, comm_uid: commit_uid,
"lat": Number(formField.value.lat), lat: Number(formField.value.lat),
"lgn": Number(formField.value.lgn), lgn: Number(formField.value.lgn),
"loc_str": formField.value.loc, loc_str: formField.value.loc,
"rise": Number(formField.value.rise), rise: Number(formField.value.rise),
"set": Number(formField.value.set) set: Number(formField.value.set),
} }
Promise.all(RPC.post('/m9z/setDeviceLgnLatAndSunRsTime', params), RPC.post('/m9z/setDeviceTime', { "comm_uid": commit_uid, device_time: deviceTime.value })).then(res => { Promise.all(
RPC.post('/m9z/setDeviceLgnLatAndSunRsTime', params),
RPC.post('/m9z/setDeviceTime', { comm_uid: commit_uid, device_time: deviceTime.value }),
).then((res) => {
ElMessage.success('操作成功') ElMessage.success('操作成功')
}) })
}) })
@ -569,7 +566,7 @@ const save = () => {
const currentTableData = ref([]) const currentTableData = ref([])
const currentTitle = ref('') const currentTitle = ref('')
const isShowDialog = ref(false) const isShowDialog = ref(false)
const openDialog = item => { const openDialog = (item) => {
isShowDialog.value = true isShowDialog.value = true
currentTableData.value = item.Modules currentTableData.value = item.Modules
currentTitle.value = item.LoopAddress currentTitle.value = item.LoopAddress
@ -650,7 +647,7 @@ onUnmounted(() => {
box-sizing: border-box; box-sizing: border-box;
.main_item { .main_item {
border: .5px solid #ddd; border: 0.5px solid #ddd;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
height: 450px; height: 450px;
@ -661,9 +658,9 @@ onUnmounted(() => {
align-items: center; align-items: center;
height: 50px; height: 50px;
font-size: 16px; font-size: 16px;
background-color: #21232A; background-color: #21232a;
color: #8088AA; color: #8088aa;
border-bottom: .5px solid #ddd; border-bottom: 0.5px solid #ddd;
} }
.main_content { .main_content {
@ -690,8 +687,8 @@ onUnmounted(() => {
.value { .value {
text-align: center; text-align: center;
background-color: #21232A; background-color: #21232a;
color: #8088AA; color: #8088aa;
padding: 5px 10px; padding: 5px 10px;
min-height: 32px; min-height: 32px;
box-sizing: border-box; box-sizing: border-box;
@ -762,7 +759,6 @@ onUnmounted(() => {
} }
} }
.bottom-info { .bottom-info {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
@ -806,27 +802,26 @@ onUnmounted(() => {
} }
.el-input { .el-input {
background-color: #21232A; background-color: #21232a;
} }
:deep(.el-input__wrapper) { :deep(.el-input__wrapper) {
background-color: #212329 !important; background-color: #212329 !important;
box-shadow: none; box-shadow: none;
border: 1px soild #3B3D45; border: 1px soild #3b3d45;
input { input {
color: #8088AA; color: #8088aa;
} }
} }
:deep(.el-select__wrapper) { :deep(.el-select__wrapper) {
background-color: #212329 !important; background-color: #212329 !important;
box-shadow: none; box-shadow: none;
border: 1px soild #3B3D45; border: 1px soild #3b3d45;
.el-select__placeholder { .el-select__placeholder {
color: #8088AA; color: #8088aa;
} }
} }
</style> </style>

Loading…
Cancel
Save