From 04dba6a17f836b5fbdf0eedff8a129c6785fd8a2 Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期五, 28 二月 2025 18:25:00 +0800
Subject: [PATCH] 111
---
admin/src/views/operation/site.vue | 71 +++++++++++++++++++----------------
1 files changed, 39 insertions(+), 32 deletions(-)
diff --git a/admin/src/views/operation/site.vue b/admin/src/views/operation/site.vue
index 5a67726..512cfdb 100644
--- a/admin/src/views/operation/site.vue
+++ b/admin/src/views/operation/site.vue
@@ -17,43 +17,33 @@
<!-- 琛ㄦ牸鍜屽垎椤� -->
<template v-slot:table-wrap>
<ul class="toolbar" v-permissions="['business:sites:create']">
- <li><el-button type="primary" @click="$refs.operaSitesWindow.open('鏂板缓绔欑偣')" icon="el-icon-plus" v-permissions="['business:sites:create']">鏂板缓</el-button></li>
+ <li><el-button type="primary" @click="$refs.operaSitesWindow.open('鏂板缓绔欑偣')" icon="el-icon-plus"
+ v-permissions="['business:sites:create']">鏂板缓</el-button></li>
</ul>
- <el-table
- v-loading="isWorking.search"
- :data="tableData.list"
- stripe
- border
- >
- <el-table-column prop="code" label="绔欑偣缂栧彿" :sort-method="(a,b)=>{ return a.code-b.code}" sortable min-width="100px" align="center"></el-table-column>
+ <el-table v-loading="isWorking.search" :data="tableData.list" stripe border>
+ <el-table-column prop="code" label="绔欑偣缂栧彿" :sort-method="(a, b) => { return a.code - b.code }" sortable
+ min-width="100px" align="center"></el-table-column>
<el-table-column prop="name" label="绔欑偣鍚嶇О" sortable min-width="100px" align="center"></el-table-column>
-
- <el-table-column prop="createTime" label="鍒涘缓鏃堕棿" sortable min-width="100px" align="center"></el-table-column>
- <el-table-column
- v-if="containPermissions(['business:sites:update', 'business:sites:delete'])"
- label="鎿嶄綔"
- min-width="120"
- align="center"
- fixed="right"
- >
+
+ <el-table-column prop="createDate" label="鍒涘缓鏃堕棿" sortable min-width="100px" align="center"></el-table-column>
+ <el-table-column v-if="containPermissions(['business:sites:update', 'business:sites:delete'])" label="鎿嶄綔"
+ min-width="120" align="center" fixed="right">
<template slot-scope="{row}">
<el-button type="text" @click="handleDraw(row)">缁樺埗鍦板浘鍖哄煙</el-button>
- <el-button type="text" @click="$refs.operaSitesWindow.open('缂栬緫绔欑偣', row)" icon="el-icon-edit" v-permissions="['business:sites:update']">缂栬緫</el-button>
- <el-button type="text" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:sites:delete']">鍒犻櫎</el-button>
+ <el-button type="text" @click="$refs.operaSitesWindow.open('缂栬緫绔欑偣', row)" icon="el-icon-edit"
+ v-permissions="['business:sites:update']">缂栬緫</el-button>
+ <el-button type="text" @click="deleteById(row)" icon="el-icon-delete"
+ v-permissions="['business:sites:delete']">鍒犻櫎</el-button>
</template>
</el-table-column>
</el-table>
- <pagination
- @size-change="handleSizeChange"
- @current-change="handlePageChange"
- :pagination="tableData.pagination"
- >
+ <pagination @size-change="handleSizeChange" @current-change="handlePageChange" :pagination="tableData.pagination">
</pagination>
</template>
<!-- 鏂板缓/淇敼 -->
<OperaSitesWindow ref="operaSitesWindow" @success="handlePageChange" />
<!-- 鏌ョ湅浜岀淮鐮� -->
- <AMap v-if="isShowMap" ref="MapRef" />
+ <AMap @change="changeMap" ref="MapRef" />
</TableLayout>
</template>
@@ -62,12 +52,14 @@
import TableLayout from '@/layouts/TableLayout'
import Pagination from '@/components/common/Pagination'
import OperaSitesWindow from './components/SitesWindow'
-import AMap from './components/Map.vue'
+import AMap from './components/AMap.vue'
+import { Message } from 'element-ui'
+import { updateById } from '@/api/business/sites.js'
export default {
name: 'Sites',
extends: BaseTable,
components: { TableLayout, Pagination, OperaSitesWindow, AMap },
- data () {
+ data() {
return {
// 鎼滅储
searchForm: {
@@ -83,12 +75,13 @@
status: '',
lockNum: '',
ip: '',
- clientVersion: ''
+ clientVersion: '',
+ type: 1
},
isShowMap: false
}
},
- created () {
+ created() {
this.config({
module: '绔欑偣淇℃伅琛�',
api: '/business/sites',
@@ -98,10 +91,24 @@
this.search()
},
methods: {
- handleDraw() {
- this.isShowMap = true
+ changeMap(e, row) {
+ console.log(e);
+ updateById({ ...row, electronicFence: JSON.stringify(e) }).then(res => {
+ if (res) {
+ Message.success('璁剧疆鎴愬姛')
+ this.search()
+ }
+ })
+ },
+ handleDraw(row) {
+ this.$refs.MapRef.isShowModal = true
this.$nextTick(() => {
- this.$refs.MapRef.isShowModal = true
+ this.$refs.MapRef.row = row
+ if (row.electronicFence) {
+ this.$refs.MapRef.polygons = JSON.parse(row.electronicFence)
+ }
+
+ this.$refs.MapRef.initMap()
})
}
}
--
Gitblit v1.9.3