From d1ce79c837650689ab47bbf587d076743fcb3a5f Mon Sep 17 00:00:00 2001 From: riku <risaku@163.com> Date: 星期一, 19 五月 2025 17:25:38 +0800 Subject: [PATCH] 1. 问题审核界面新增场景信息编辑入口 2. 问题审核界面场景图片查询新增图片类型修改功能 --- src/views/fysp/scene/CompSceneBaseInfo.vue | 116 +++++++++++++++++++++++++++++++++++++++------------------- 1 files changed, 78 insertions(+), 38 deletions(-) diff --git a/src/views/fysp/scene/CompSceneBaseInfo.vue b/src/views/fysp/scene/CompSceneBaseInfo.vue index 8f8b68d..bf4ce56 100644 --- a/src/views/fysp/scene/CompSceneBaseInfo.vue +++ b/src/views/fysp/scene/CompSceneBaseInfo.vue @@ -1,19 +1,26 @@ <!-- 鍦烘櫙鍩烘湰淇℃伅缂栬緫 --> <template> - <FYForm :form-info="formInfo" :rules="rules" :useReset="true" @submit="submit" @cancel="cancel"> + <FYForm + :form-info="formInfo" + :rules="rules" + :useReset="true" + @submit="submit" + @cancel="cancel" + > <template #form-item="{ formObj }"> <el-form-item label="鍦烘櫙鍚嶇О" prop="name"> - <el-input clearable show-word-limit v-model="formObj.name" placeholder="鍦烘櫙鍚嶇О" /> + <el-input + clearable + show-word-limit + v-model="formObj.name" + placeholder="鍦烘櫙鍚嶇О" + /> </el-form-item> - <!-- <el-form-item label="鍦烘櫙绫诲瀷" prop="_scenetype"> - <el-select v-model="formObj._scenetype" placeholder="鍦烘櫙绫诲瀷"> - <el-option v-for="s in sceneTypes" :key="s.value" :label="s.label" :value="s" /> - </el-select> - </el-form-item> --> <!-- 鍦烘櫙绫诲瀷 --> <FYOptionScene :allOption="false" :type="2" + :initValue="false" v-model:value="formObj._scenetype" ></FYOptionScene> <!-- 鍖哄幙 --> @@ -25,10 +32,14 @@ v-model:value="formObj._locations" ></FYOptionLocation> <el-form-item label="鍦板潃" prop="location"> - <el-input show-word-limit clearable v-model="formObj.location" placeholder="鍦板潃" /> + <el-input + show-word-limit + clearable + v-model="formObj.location" + placeholder="鍦板潃" + /> </el-form-item> <el-form-item label="缁忓害" prop="longitude"> - <!-- <el-input type="number" v-model="formObj.longitude" placeholder="缁忓害" /> --> <el-input-number v-model="formObj.longitude" :precision="6" @@ -37,7 +48,6 @@ /> </el-form-item> <el-form-item label="绾害" prop="latitude"> - <!-- <el-input type="number" v-model="formObj.latitude" placeholder="绾害" /> --> <el-input-number v-model="formObj.latitude" :precision="6" @@ -46,7 +56,12 @@ /> </el-form-item> <el-form-item label="鑱旂郴浜�" prop="contacts"> - <el-input show-word-limit clearable v-model="formObj.contacts" placeholder="鑱旂郴浜�" /> + <el-input + show-word-limit + clearable + v-model="formObj.contacts" + placeholder="鑱旂郴浜�" + /> </el-form-item> <el-form-item label="鑱旂郴鐢佃瘽" prop="contactst"> <el-input type="tel" v-model="formObj.contactst" placeholder="鑱旂郴鐢佃瘽"> @@ -59,7 +74,9 @@ </el-form-item> <el-form-item label="鐘舵��" prop="online"> <el-switch v-model="formObj.online" /> - <span style="margin-left: 16px">{{ formObj.online ? '鍦ㄧ嚎' : '涓嬬嚎' }}</span> + <span style="margin-left: 16px">{{ + formObj.online ? '鍦ㄧ嚎' : '涓嬬嚎' + }}</span> </el-form-item> <el-form-item label="缂栧彿" prop="index"> <el-input-number readonly v-model="formObj.index" :step="1" :min="0" /> @@ -69,21 +86,31 @@ </template> <script setup> -import { defineProps, defineEmits, reactive, ref, unref, watch, computed } from 'vue'; +import { + defineProps, + defineEmits, + reactive, + ref, + unref, + watch, + computed +} from 'vue'; import { enumScene } from '@/enum/scene'; import sceneApi from '@/api/fysp/sceneApi'; const props = defineProps({ //鍦烘櫙鍩烘湰淇℃伅 model: { - type: Object, - default: () => { - return {}; - } + type: Object + // default: () => { + // return {}; + // } }, //鏄垱寤烘垨鑰呮洿鏂板満鏅� create: Boolean }); + +// const formInfo = ref(); // 鍦烘櫙鍩烘湰淇℃伅锛屽仛鐩稿簲鐨勬暟鎹牸寮忓寲 const formInfo = computed(() => { @@ -92,7 +119,16 @@ const emit = defineEmits(['onSubmit', 'onCancel']); -const sceneTypes = ref(enumScene(2, false)); +// watch( +// () => props.model, +// (nV, oV) => { +// if (nV != oV && nV) { +// formInfo.value = parseSceneBaseInfo(nV); + +// } +// } +// ); + const rules = reactive({ name: [ { @@ -138,23 +174,25 @@ */ function parseSceneBaseInfo(param) { const s = unref(param); - s._scenetype = { - label: s.type, - value: s.typeid + '' - }; + if (s) { + s._scenetype = { + label: s.type, + value: s.typeid + '' + }; - s._locations = { - pCode: s.provincecode, - pName: s.provincename, - cCode: s.citycode, - cName: s.cityname, - dCode: s.districtcode, - dName: s.districtname, - tCode: s.towncode, - tName: s.townname - }; + s._locations = { + pCode: s.provincecode, + pName: s.provincename, + cCode: s.citycode, + cName: s.cityname, + dCode: s.districtcode, + dName: s.districtname, + tCode: s.towncode, + tName: s.townname + }; - s.online = s.extension1 != '0'; + s.online = s.extension1 != '0'; + } return s; } @@ -187,12 +225,12 @@ const a = v.value._locations; v.value.provincecode = a.pCode; v.value.provincename = a.pName; - v.value.citycode = a.cCode; - v.value.cityname = a.cName; + v.value.citycode = a.cCode; + v.value.cityname = a.cName; v.value.districtcode = a.dCode; v.value.districtname = a.dName; - v.value.towncode = a.tCode; - v.value.townname = a.tName; + v.value.towncode = a.tCode; + v.value.townname = a.tName; // 鍦烘櫙绫诲瀷淇℃伅濉厖 const b = v.value._scenetype; @@ -204,7 +242,9 @@ v.value.updatedate = new Date().toISOString(); - return props.create ? createScene(v.value, success, fail) : updateScene(v.value, success, fail); + return props.create + ? createScene(v.value, success, fail) + : updateScene(v.value, success, fail); } function cancel() { emit('onCancel'); -- Gitblit v1.9.3