From 22881a4d6409c7d17867e1d40bf81a13578208df Mon Sep 17 00:00:00 2001
From: doum <doum>
Date: 星期五, 31 十月 2025 15:16:32 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/wuhuyancao' into wuhuyancao
---
admin/src/components/business/OperaJkCabinetWindow.vue | 87 ++++++++++++++++++++++++++++++-------------
1 files changed, 61 insertions(+), 26 deletions(-)
diff --git a/admin/src/components/business/OperaJkCabinetWindow.vue b/admin/src/components/business/OperaJkCabinetWindow.vue
index fe508bb..19370db 100644
--- a/admin/src/components/business/OperaJkCabinetWindow.vue
+++ b/admin/src/components/business/OperaJkCabinetWindow.vue
@@ -32,7 +32,7 @@
v-for="item in memberList"
:key="item.id"
:label="item.name+'-'+item.companyName"
- :value="item.id">
+ :value="Number(item.id)">
</el-option>
</el-select>
</el-form-item>
@@ -60,16 +60,16 @@
v-for="item in memberList"
:key="item.id"
:label="item.name+'-'+item.companyName"
- :value="item.id">
+ :value="Number(item.id)">
</el-option>
</el-select>
</el-form-item>
- <el-form-item label="鎵�鍦ㄤ綅缃�" prop="lacation">
- <el-input v-model="form.lacation" placeholder="璇疯緭鍏ユ墍鍦ㄤ綅缃�" v-trim/>
+ <el-form-item label="鎵�鍦ㄤ綅缃�" prop="location">
+ <el-input v-model="form.location" placeholder="璇疯緭鍏ユ墍鍦ㄤ綅缃�" v-trim/>
</el-form-item>
- <el-form-item label="缁忕含搴�" prop="longitude">
+ <el-form-item label="缁忕含搴�" prop="jwd">
<div style="width: 100%; display: flex; align-items: center;">
- <el-input v-model="form.longitude" placeholder="璇疯緭鍏ョ粡绾害" v-trim/>
+ <el-input v-model="form.jwd" placeholder="璇疯緭鍏ョ粡绾害" v-trim/>
<a style="margin-left: 20px; flex-shrink: 0;" href="https://lbs.amap.com/tools/picker" target="_blank">缁忕含搴﹀湪绾挎嬀鍙栧湴鍧�</a>
</div>
</el-form-item>
@@ -85,32 +85,32 @@
<h3 style="margin: 20px 0;">鏌滅粍淇℃伅</h3>
<el-form-item label="鎺掑垪" prop="rowNum">
<div style="width: 100%; display: flex; align-items: center;">
- <el-input v-model="form.rowNum" :disabled="form.id" type="number" placeholder="璇疯緭鍏ユ帓鏁�" v-trim>
+ <el-input v-model="form.rowNum" :disabled="form.id ? true : false" type="number" placeholder="璇疯緭鍏ユ帓鏁�" v-trim>
<template slot="append">鎺�</template>
</el-input>
<span style="margin: 0 20px;">x</span>
- <el-input v-model="form.columnNum" :disabled="form.id" type="number" placeholder="璇疯緭鍏ュ垪鏁�" v-trim>
+ <el-input v-model="form.columnNum" :disabled="form.id ? true : false" type="number" placeholder="璇疯緭鍏ュ垪鏁�" v-trim>
<template slot="append">鍒�</template>
</el-input>
</div>
</el-form-item>
<el-form-item label="缂栫爜" prop="noType">
- <el-radio-group v-model="form.noType" @change="changeNoType">
+ <el-radio-group v-model="form.noType" :disabled="form.id ? true : false" @change="changeNoType">
<el-radio :label="0">鑷姩缂栫爜</el-radio>
<el-radio :label="1">鎵嬪姩缂栫爜</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="鍓嶇紑" prop="noPrefix" v-if="form.noType === 1">
<div style="width: 100%; display: flex; align-items: center;">
- <el-input style="flex: 1;" v-model="form.noPrefix" placeholder="璇疯緭鍏ユ暟瀛楁垨瀛楁瘝" v-trim/>
+ <el-input style="flex: 1;" v-model="form.noPrefix" :disabled="form.id ? true : false" placeholder="璇疯緭鍏ユ暟瀛楁垨瀛楁瘝" v-trim/>
<span style="margin: 0 20px;">浣嶆暟</span>
- <el-input style="flex: 1;" v-model="form.noLength" placeholder="璇疯緭鍏ユ暟瀛�" v-trim/>
+ <el-input style="flex: 1;" v-model="form.noLength" :disabled="form.id ? true : false" placeholder="璇疯緭鍏ユ暟瀛�" v-trim/>
<span style="margin: 0 20px;">璧峰缂栧彿</span>
- <el-input style="flex: 1;" v-model="form.noIndex" placeholder="璇疯緭鍏ユ暟瀛�" v-trim/>
+ <el-input style="flex: 1;" v-model="form.noIndex" :disabled="form.id ? true : false" placeholder="璇疯緭鍏ユ暟瀛�" v-trim/>
</div>
</el-form-item>
<el-form-item label="鎺掑垪椤哄簭" prop="sortType" v-if="form.noType === 1">
- <el-radio-group v-model="form.sortType" :disabled="form.id">
+ <el-radio-group v-model="form.sortType" :disabled="form.id ? true : false">
<el-radio :label="0">浠庡乏寰�鍙�</el-radio>
<el-radio :label="1">浠庝笂鍚戜笅</el-radio>
</el-radio-group>
@@ -123,11 +123,19 @@
import BaseOpera from '@/components/base/BaseOpera'
import GlobalWindow from '@/components/common/GlobalWindow'
import { allList } from '@/api/business/member'
+import { getInfoById } from '@/api/business/jkCabinet'
export default {
name: 'OperaJkCabinetWindow',
extends: BaseOpera,
components: { GlobalWindow },
data () {
+ var validate = (rule, value, callback) => {
+ if (this.form.noType === 1 && this.form.noLength === '' || this.form.noIndex === '') {
+ callback(new Error('浣嶆暟鍜岃捣濮嬬紪鍙蜂笉鑳戒负绌猴紒'));
+ } else {
+ callback();
+ }
+ };
return {
// 琛ㄥ崟鏁版嵁
form: {
@@ -140,13 +148,13 @@
status: 0,
port: '',
managerIdList: '',
+ location: '',
useTime: '',
doubleAuth: 0,
authMemberIdList: '',
rowNum: '',
columnNum: '',
- lacation: '',
- longitude: '',
+ jwd: '',
latitude: '',
noType: 0,
noPrefix: '',
@@ -184,7 +192,7 @@
{ required: true, message: '璇烽�夋嫨缂栫爜', trigger: 'blur' }
],
noPrefix: [
- { required: true, message: '璇疯緭鍏ュ墠缂�', trigger: 'blur' }
+ { required: true, validator: validate, trigger: 'blur' }
],
sortType: [
{ required: true, message: '璇疯緭鍏ユ帓鍒楅『搴�', trigger: 'blur' }
@@ -203,21 +211,48 @@
open (title, target) {
this.title = title
this.loadMember()
- this.visible = true
- // 鏂板缓
- if (target == null) {
+ if (target) {
+ getInfoById(target.id)
+ .then(res => {
+ res.managerIdList = res.managerIdList.map(item => Number(item))
+ res.authMemberIdList = res.authMemberIdList.map(item => Number(item))
+ this.$nextTick(() => {
+ for (const key in this.form) {
+ this.form[key] = res[key]
+ }
+ this.visible = true
+ })
+ })
+ } else {
this.$nextTick(() => {
+ this.form = {
+ id: null,
+ code: '',
+ name: '',
+ devId: '',
+ serialNo: '',
+ linkAddr: '',
+ status: 0,
+ port: '',
+ managerIdList: '',
+ useTime: '',
+ doubleAuth: 0,
+ authMemberIdList: '',
+ rowNum: '',
+ columnNum: '',
+ jwd: '',
+ latitude: '',
+ noType: 0,
+ noPrefix: '',
+ noLength: '',
+ noIndex: '',
+ sortType: 0
+ }
this.$refs.form.resetFields()
this.form[this.configData['field.id']] = null
})
- return
+ this.visible = true
}
- // 缂栬緫
- this.$nextTick(() => {
- for (const key in this.form) {
- this.form[key] = target[key]
- }
- })
},
loadMember () {
allList({
--
Gitblit v1.9.3