邓洁: 接口部分对接

This commit is contained in:
邓洁
2023-12-28 16:22:53 +08:00
parent 31428cd640
commit 64b3052348
8 changed files with 479 additions and 279 deletions

View File

@@ -1,10 +1,13 @@
<template>
<div class="tunnel-bgc">
<div class="box-top">
<div class="back-tunnel" @click="router.back(-1)">
<div class="back-tunnel" @click="handleGoSiteOrIndex">
<div class="back-icon"></div>
<span>返回</span>
</div>
<div class="site-name">
{{siteName}}
</div>
<div class="tunnel-title"></div>
<div class="all-del-btn">
<div class="all-btn" style=" margin-right: 40px;" v-if="!showAddIcon" @click="handleAdd">
@@ -72,6 +75,12 @@
<el-form-item label="隧道长度" required>
<el-input type="number" v-model="form.totalLength" placeholder="请输入隧道长度"/>
</el-form-item>
<el-form-item label="是否默认">
<el-radio-group v-model="form.isDefault">
<el-radio :label="true"></el-radio>
<el-radio :label="false"></el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="隧道备注">
<el-input v-model="form.remarks" placeholder="请输入隧道备注"/>
</el-form-item>
@@ -99,6 +108,7 @@
import {ElMessage, ElMessageBox} from "element-plus";
import {getTunnelList,addTunnel, deleteTunnel} from "@/api/tunnelManage";
import {onMounted} from "vue";
import { getSiteDetail} from "@/api/site";
const router = useRouter()
const showAddIcon = ref(true)
@@ -231,11 +241,13 @@ const title = ref('新增隧道')
const isVisited = ref(false);
const tunnelIds = ref([])
const tunnelNameList = ref([])
const siteName = ref('')
const form = ref({
tunnelName: '',
serialNumber: '',
totalLength: '',
remarks: ''
remarks: '',
isDefault:false
});
const isEdit = ref(false)
const pageInfo = reactive({
@@ -244,13 +256,18 @@ const pageInfo = reactive({
});
const total = ref(10);
onMounted(()=>{
console.log('type',type)
if(type==='add'){
restFrom()
title.value = '新增隧道'
isVisited.value = true
}
getSiteDetail(siteId).then((res) => {
siteName.value = res.data.siteName
});
})
const handleGoSiteOrIndex=()=>{
if(type==='s'){
router.push('/site')
}else if(type==='i'){
router.push('/')
}
}
const getList = () => {
getTunnelList({
siteId:siteId,
@@ -294,26 +311,31 @@ const handleSubmit = (instance) => {
}
const handleGoToEditTunnel = (tunnelId) => {
isEdit.value = true
router.push('/edit/' + tunnelId)
if(type==='s'){
router.push('/edit/' + tunnelId+'/s')
}else if(type==='i'){
router.push('/edit/' + tunnelId+'/i')
}
}
const handleChooseAll = () => {
tunnelList.value.map(item => {
item.checked = !item.checked
})
}
const handleEdit = () => {
title.value = '编辑隧道'
// isVisited.value = true
}
const handleEditDevice = (tunnelId) => {
router.push('/device/' + tunnelId)
if(type==='s'){
router.push('/device/' + tunnelId+'/s')
}else if(type==='i'){
router.push('/device/' + tunnelId+'/i')
}
}
const restFrom = () => {
form.value = {
tunnelName: '',
serialNumber: '',
totalLength: '',
remarks: ''
remarks: '',
isDefault:false
}
}
const handleAdd = () => {
@@ -345,29 +367,87 @@ const handleMoreDelete = () => {
if (tunnelIds.value.length === 0) {
ElMessage.warning('请先选择隧道进行删除')
} else {
ElMessageBox.confirm(`是否确定删除该隧道`, '系统提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
customClass: 'delBox'
}).then(() => {
deleteTunnel(tunnelIds.value).then(res => {
if (res.code === 1000) {
ElMessage.success(res.msg)
getList()
tunnelIds.value = []
tunnelNameList.value = []
} else {
ElMessage.error(res.msg)
let flag=false
siteList.value.map(item=>{
siteIds.value.map(siteItem=>{
if(item.siteId===siteItem){
console.log('item.tunnelList',item.tunnelList)
if(item.tunnelList.length!==0){
ElMessage.error('该站点下存在隧道,不能删除!')
flag=false
}else {
flag=true
}
}
})
})
if(flag){
ElMessageBox.confirm(`是否确定删除该隧道`, '系统提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
customClass: 'delBox'
}).then(() => {
deleteTunnel(tunnelIds.value).then(res => {
if (res.code === 1000) {
ElMessage.success(res.msg)
getList()
tunnelIds.value = []
tunnelNameList.value = []
} else {
ElMessage.error(res.msg)
}
})
})
}
}
}
</script>
<style scoped lang="scss">
.site-name {
position: absolute;
left: 250px;
z-index: 2;
margin-left: 120px;
height: 61px;
font-size: 46px;
font-weight: bold;
color: #FFFFFF;
line-height: 61px;
}
:deep(.el-radio-group) {
margin-top: 10px;
}
:deep(.el-radio__label) {
color: #FFFFFF;
font-size: 38px;
}
:deep(.el-radio__inner) {
width: 40px;
height: 40px;
border-radius: 25px;
border: 4px solid #05FEFF;
background-color: transparent;
}
:deep(.el-radio__input.is-checked+.el-radio__label) {
color: #FFFFFF;
}
:deep(.el-radio__input.is-checked .el-radio__inner ) {
background: #064B66;
border-color: #05FEFF !important;
}
:deep(.el-radio__inner::after) {
width: 18px;
height: 18px;
background: #05FEFF;
}
:deep(.el-dialog) {
border: 2px solid #05FEFF;
background: #0D6578;
@@ -508,7 +588,7 @@ const handleMoreDelete = () => {
}
.site-box {
cursor: pointer;
//cursor: pointer;
margin-top: 50px;
margin-right: 1.5%;
padding: 40px 30px;