From f848280fe3ed8841147fcc8f26a788580b82ae0c Mon Sep 17 00:00:00 2001 From: liudong <liudong> Date: 星期六, 17 八月 2024 10:37:46 +0800 Subject: [PATCH] 首页页面bug修改 --- src/views/authority/resource/index.vue | 100 ++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 97 insertions(+), 3 deletions(-) diff --git a/src/views/authority/resource/index.vue b/src/views/authority/resource/index.vue index 9c7a161..b95142c 100644 --- a/src/views/authority/resource/index.vue +++ b/src/views/authority/resource/index.vue @@ -8,7 +8,6 @@ :bordered="false" style=" 'width': '100%'; height: calc(100vh - 250px); 'overflow-y': 'auto' " > - <a-button @click="() => onIconClick(null)">鏂板鐖剁骇鑿滃崟</a-button> <a-tree class="tree-demo" draggable @@ -68,6 +67,15 @@ <a-form-item field="menuName" label="璧勬簮鍚嶇О"> <a-input v-model="resourceform.menuName" /> </a-form-item> + <a-form-item field="menuName" label="璧勬簮鍥炬爣"> + <Upload + :action="uploadAction" + :limit="1" + :url="resourceform.icon" + @update:fileList="updateFileList" + @success="handleSuccess" + ></Upload> + </a-form-item> <a-form-item field="menuType" label="璧勬簮绫诲瀷"> <a-select v-model="resourceform.menuType" @@ -75,6 +83,12 @@ :field-names="fieldNames" :style="{ width: '320px' }" placeholder="璇烽�夋嫨" + /> + </a-form-item> + <a-form-item field="description" label="鎻愮ず璇�"> + <a-input + v-model="resourceform.description" + placeholder="璇疯緭鍏ユ彁绀鸿瘝" /> </a-form-item> <a-form-item field="perms" label="璧勬簮鎺у埗鏉冮檺瀛楃"> @@ -104,7 +118,7 @@ @cancel="handleCancel" @ok="addresource" > - <a-form :model="resourceform" layout="horizontal"> + <a-form :rules="rules" :model="resourceform" layout="horizontal"> <a-form-item field="parentName" label="涓婄骇璧勬簮" disabled> <a-input v-model="resourceform.parentName" /> </a-form-item> @@ -118,6 +132,15 @@ <a-form-item field="menuName" label="璧勬簮鍚嶇О"> <a-input v-model="resourceform.menuName" /> </a-form-item> + <a-form-item field="icon" label="璧勬簮鍥炬爣"> + <Upload + :action="uploadAction" + :limit="1" + :url="resourceform.icon" + @update:fileList="updateFileList" + @success="handleSuccess" + ></Upload> + </a-form-item> <a-form-item field="menuType" label="璧勬簮绫诲瀷"> <a-select v-model="resourceform.menuType" @@ -125,6 +148,12 @@ :field-names="fieldNames" :style="{ width: '320px' }" placeholder="璇烽�夋嫨" + /> + </a-form-item> + <a-form-item field="description" label="鎻愮ず璇�"> + <a-input + v-model="resourceform.description" + placeholder="璇疯緭鍏ユ彁绀鸿瘝" /> </a-form-item> <a-form-item field="perms" label="璧勬簮鎺у埗鏉冮檺瀛楃"> @@ -151,6 +180,9 @@ } from '@/api/authority'; import Authheader from '@/views/authority/components/authheader.vue'; import { Modal } from '@arco-design/web-vue'; + import { userModelState } from '@/store'; + + const modelStore = userModelState(); let visible = ref(false); let treeData = ref([]); @@ -191,6 +223,38 @@ target: '', updateTime: '', }); + const rules = { + // parentName: [ + // { + // required: true, + // message: '璇疯緭鍏ヤ笂绾ц祫婧�', + // }, + // ], + // menuName: [ + // { + // required: true, + // message: '璇疯緭鍏ヨ祫婧愬悕绉�', + // }, + // ], + // menuType: [ + // { + // required: true, + // message: '璇烽�夋嫨璧勬簮绫诲瀷', + // }, + // ], + // description: [ + // { + // required: true, + // message: '璇疯緭鍏ユ彁绀鸿瘝', + // }, + // ], + // perms: [ + // { + // required: true, + // message: '璇疯緭鍏ヨ祫婧愭帶鍒舵潈闄愬瓧绗�', + // }, + // ], + }; const onIconClick = (nodeData) => { if (nodeData) { @@ -212,8 +276,34 @@ visible.value = true; }; + const formRef = ref(); + //鍥剧墖涓婁紶 + const uploadAction = '/api/v1/llm/upload'; // 鏇挎崲涓轰綘鐨勪笂浼燗PI + const fileList = ref([]); + const imageUrls = ref([]); + const uploadUrl = ref([]); + const httpUrl = modelStore.hrefUrl; + const updateFileList = (newFileList) => { + fileList.value = newFileList; + }; - const addresource = async () => { + const handleSuccess = (urls) => { + uploadUrl.value = urls; + + const urlsArr = urls.map((url) => { + return httpUrl + url; + }); + imageUrls.value = urlsArr; // 鎷垮埌涓婁紶鐨勫浘鐗囧湴鍧� + }; + + const addresource = async (done) => { + // formRef.value.validate().then(async (res) => { + // if (!res) { + // } + // done(false); + // }); + + resourceform.value.icon = uploadUrl.value[0] || ''; await ResourceAdd({ ...resourceform.value, } as unknown as Resource).then((res) => { @@ -230,9 +320,13 @@ const showDetail = (id) => { ResourceById(id).then((res) => { resourceform.value = { ...res.data }; + resourceform.value.icon = res.data.icon; + + imageUrls.value.push(httpUrl + res.data.icon); }); }; const editresource = () => { + resourceform.value.icon = uploadUrl.value[0] || ''; ResourceUpdate({ ...resourceform.value, } as unknown as Resource).then((res) => { -- Gitblit v1.8.0