diff --git a/src/views/system/base/massifForm.vue b/src/views/system/base/massifForm.vue
index f4f47a3..ece8072 100644
--- a/src/views/system/base/massifForm.vue
+++ b/src/views/system/base/massifForm.vue
@@ -28,7 +28,12 @@ const selectOptions = reactive({
})
let emit = defineEmits(['beforeSubmit','submitSuccess']);
const loading = ref(false)
+// 显示表单抽屉
const showDrawer = ref(false)
+const dataLoading = ref(false)
+// 页面状态 1添加 2修改 3查看
+const formStatus = ref(1)
+// 表单数据
const formData = ref({})
const resetForm = (params) => {
formData.value = {
@@ -44,10 +49,19 @@ const resetForm = (params) => {
}
}
const toAdd = (params = {}) => {
+ formStatus.value = 1
resetForm(deepClone(params))
uploadJsonData.value = []
showDrawer.value = true
}
+const toUpdate = (row) => {
+ formStatus.value = 2
+ showDrawer.value = true
+}
+const toView = (row) => {
+ formStatus.value = 3
+ showDrawer.value = true
+}
// 计算地块面积(亩)
const calculateArea = () => {
let value = [];
@@ -104,7 +118,9 @@ const saveMassif = () => {
},2000)
}
defineExpose({
- toAdd
+ toAdd,
+ toUpdate,
+ toView
})
@@ -112,39 +128,44 @@ defineExpose({
- 新增地块
+
新增地块
+
编辑地块
+
地块详情
- 保存
+ 保存
取消
diff --git a/src/views/system/base/massifMap.vue b/src/views/system/base/massifMap.vue
index 79be0d8..3b29248 100644
--- a/src/views/system/base/massifMap.vue
+++ b/src/views/system/base/massifMap.vue
@@ -108,7 +108,7 @@ const polygonList = reactive([
],
fillColor: undefined
},
- {
+ {
id: 3,
title: '测试地块1',
cropType: '甘蔗',
@@ -164,10 +164,10 @@ const polygonList = reactive([
// 垄列表
const ridgeList = ref([
{
- id:1,
- polygonId:1,
- title:'测试垄1',
- path:[
+ id: 1,
+ polygonId: 1,
+ title: '测试垄1',
+ path: [
[
116.337386,
39.979027
@@ -179,10 +179,10 @@ const ridgeList = ref([
]
},
{
- id:2,
- polygonId:1,
- title:'测试垄2',
- path:[
+ id: 2,
+ polygonId: 1,
+ title: '测试垄2',
+ path: [
[
116.337528,
39.979023
@@ -194,10 +194,10 @@ const ridgeList = ref([
]
},
{
- id:3,
- polygonId:2,
- title:'测试垄3',
- path:[
+ id: 3,
+ polygonId: 2,
+ title: '测试垄3',
+ path: [
[
116.338439,
39.978878
@@ -209,10 +209,10 @@ const ridgeList = ref([
]
},
{
- id:1,
- polygonId:1,
- title:'垄1',
- path:[
+ id: 1,
+ polygonId: 1,
+ title: '垄1',
+ path: [
[
107.585681,
22.481152
@@ -224,10 +224,10 @@ const ridgeList = ref([
]
},
{
- id:2,
- polygonId:1,
- title:'垄28',
- path:[
+ id: 2,
+ polygonId: 1,
+ title: '垄28',
+ path: [
[
107.585536,
22.481152
@@ -239,10 +239,10 @@ const ridgeList = ref([
]
},
{
- id:3,
- polygonId:2,
- title:'垄1',
- path:[
+ id: 3,
+ polygonId: 2,
+ title: '垄1',
+ path: [
[
107.585526,
22.481149
@@ -254,10 +254,10 @@ const ridgeList = ref([
]
},
{
- id:3,
- polygonId:2,
- title:'垄43',
- path:[
+ id: 3,
+ polygonId: 2,
+ title: '垄43',
+ path: [
[
107.585274,
22.481137
@@ -272,9 +272,9 @@ const ridgeList = ref([
// 植株列表
const plantList = ref([
{
- id:1,
- polygonId:1,
- title:'001',
+ id: 1,
+ polygonId: 1,
+ title: '001',
path:
[
116.337387,
@@ -282,9 +282,9 @@ const plantList = ref([
]
},
{
- id:2,
- polygonId:1,
- title:'002',
+ id: 2,
+ polygonId: 1,
+ title: '002',
path:
[
116.337388,
@@ -292,9 +292,9 @@ const plantList = ref([
]
},
{
- id:3,
- polygonId:1,
- title:'003',
+ id: 3,
+ polygonId: 1,
+ title: '003',
path:
[
116.337387,
@@ -302,9 +302,9 @@ const plantList = ref([
]
},
{
- id:4,
- polygonId:1,
- title:'004',
+ id: 4,
+ polygonId: 1,
+ title: '004',
path:
[
116.33739,
@@ -312,9 +312,9 @@ const plantList = ref([
]
},
{
- id:5,
- polygonId:1,
- title:'005',
+ id: 5,
+ polygonId: 1,
+ title: '005',
path:
[
116.337395,
@@ -322,9 +322,9 @@ const plantList = ref([
]
},
{
- id:6,
- polygonId:1,
- title:'006',
+ id: 6,
+ polygonId: 1,
+ title: '006',
path:
[
116.33739,
@@ -332,9 +332,9 @@ const plantList = ref([
]
},
{
- id:7,
- polygonId:1,
- title:'007',
+ id: 7,
+ polygonId: 1,
+ title: '007',
path:
[
116.337529,
@@ -342,9 +342,9 @@ const plantList = ref([
]
},
{
- id:8,
- polygonId:1,
- title:'008',
+ id: 8,
+ polygonId: 1,
+ title: '008',
path:
[
116.337531,
@@ -352,9 +352,9 @@ const plantList = ref([
]
},
{
- id:9,
- polygonId:2,
- title:'002',
+ id: 9,
+ polygonId: 2,
+ title: '002',
path:
[
116.338442,
@@ -362,9 +362,9 @@ const plantList = ref([
]
},
{
- id:10,
- polygonId:2,
- title:'003',
+ id: 10,
+ polygonId: 2,
+ title: '003',
path:
[
116.338445,
@@ -516,7 +516,7 @@ const clickCurrentMassif = (item) => {
center.value = turf.center(points).geometry.coordinates
}
// 删除地块
-const delMassif = (item,index) => {
+const delMassif = (item, index) => {
ElMessageBox.confirm(
'地块删除后,将无法被找回,是否人要删除该地块?',
'删除地块',
@@ -525,19 +525,25 @@ const delMassif = (item,index) => {
cancelButtonText: '不,我再想想',
customClass: 'message-box'
}
- ).then(()=>{
- polygonList.splice(index,1)
+ ).then(() => {
+ polygonList.splice(index, 1)
ElMessage.success(`${item.label || '地块'}删除成功`)
})
}
-const updMassifStatus = (item,enabled) => {
+const updMassifStatus = (item, enabled) => {
item.enabled = enabled
- ElMessage.success(`${item.title || '地块'}状态已更新为${enabled?'启用':'禁用'}`)
+ ElMessage.success(`${item.title || '地块'}状态已更新为${enabled ? '启用' : '禁用'}`)
}
// 打开添加弹窗
const toAddMassif = () => {
massifFormRef.value.toAdd()
}
+const toUpdateMassif = (row) => {
+ massifFormRef.value.toUpdate(row)
+}
+const toViewMassif = (row) => {
+ massifFormRef.value.toView(row)
+}
@@ -634,7 +640,8 @@ const toAddMassif = () => {
:visible="true"
:zooms="[16,20]"
:label="{content:`${plant.title}`,offset:[0,0]}">
-
+
@@ -649,7 +656,8 @@ const toAddMassif = () => {
- 新增地块
+ 新增地块
+
@@ -701,17 +709,17 @@ const toAddMassif = () => {
-
+
地块详情
-
+
编辑地块
删除地块
- {{ item.enabled?'禁用':'启用' }}地块
+ {{ item.enabled ? '禁用' : '启用' }}地块
@@ -799,6 +807,8 @@ const toAddMassif = () => {
//地块列表
.massif-list {
max-height: 650px;
+ overflow: auto;
+
.title-icon {
padding: 6px 5px 4px 5px;
display: inline-block;
@@ -825,7 +835,6 @@ const toAddMassif = () => {
border-radius: 5px;
border-bottom: 1px solid rgba(0, 0, 0, 0.08);
padding: 10px;
- margin: 0 -5px;
.massif-item-right {
display: flex;
@@ -861,16 +870,19 @@ const toAddMassif = () => {
background: none;
color: #FFFFFF;
}
+
.more-item {
text-align: center;
//鼠标悬浮变成点击
cursor: pointer;
padding: 5px 0;
+
&:hover {
background-color: var(--el-color-primary-light-9);
color: var(--el-color-primary);
}
}
+
//绘制操作区
.protract-control {
position: absolute;
@@ -879,18 +891,21 @@ const toAddMassif = () => {
}