From dc3fb06f6d3253ddebf35fec2d805b1750086b01 Mon Sep 17 00:00:00 2001 From: zhangxiao <898441624@qq.com> Date: 星期三, 14 八月 2024 17:31:51 +0800 Subject: [PATCH] fix: 上传组件新增删除功能,模型管理页面修改 --- src/views/dmx/model/index.vue | 57 ++++++++++++++++++---------- src/components/upload/index.vue | 7 +++ src/views/dmx/model/components/addPageModel.vue | 28 ++++++++++++- 3 files changed, 68 insertions(+), 24 deletions(-) diff --git a/src/components/upload/index.vue b/src/components/upload/index.vue index b58aeaf..3600546 100644 --- a/src/components/upload/index.vue +++ b/src/components/upload/index.vue @@ -5,6 +5,7 @@ :limit="limit" :action="action" @change="handleChange" + @before-remove="beforeRemove" image-preview /> </template> @@ -23,7 +24,7 @@ url: String, //鍥炴樉鐨勬枃浠跺湴鍧� }); - const emit = defineEmits(['update:fileList', 'success']); + const emit = defineEmits(['update:fileList', 'success', 'handleRemove']); const urls = computed(() => props.url); const fileList = ref([]); @@ -62,6 +63,10 @@ }); // console.log(urls.value, 8988); + const beforeRemove = (file) => { + emit('handleRemove'); + fileList.value = []; + }; const handleChange = (fileList) => { emit('update:fileList', fileList); diff --git a/src/views/dmx/model/components/addPageModel.vue b/src/views/dmx/model/components/addPageModel.vue index 92481d4..bafb7b1 100644 --- a/src/views/dmx/model/components/addPageModel.vue +++ b/src/views/dmx/model/components/addPageModel.vue @@ -49,19 +49,27 @@ <a-form-item field="name" label="API-Key"> <a-input v-model="form.name" placeholder="API-Key" /> </a-form-item> - <!-- <a-form-item + <!-- <a-form-item field="describe" label="Base-Url"> + <a-input v-model="form.name" placeholder="Base-Url" /> + </a-form-item> --> + <a-form-item field="raptor" label="鏄惁鏀寔 Vision" v-if="form.model_type === 'chat'" > <a-switch v-model="form.raptor" /> - </a-form-item> --> + </a-form-item> <a-form-item field="logo" label="妯″瀷鍥剧墖"> - <a-space direction="vertical" :style="{ width: '100%' }"> + <a-space + direction="vertical" + v-model="form.logo" + :style="{ width: '100%' }" + > <Upload :action="uploadAction" :limit="1" :url="form.urlS" + @handleRemove="deleteRemove" @update:fileList="updateFileList" @success="handleSuccess" ></Upload> @@ -115,6 +123,7 @@ :action="uploadAction" :limit="1" :url="form.urlS" + @handleRemove="deleteRemove" @update:fileList="updateFileList" @success="handleSuccess" ></Upload> @@ -223,6 +232,12 @@ message: '璇疯緭鍏pi_base', }, ], + logo: [ + { + required: true, + message: '妯″瀷鍥剧墖涓嶈兘涓虹┖', + }, + ], }; const uploadAction = '/api/v1/llm/upload'; // 鏇挎崲涓轰綘鐨勪笂浼燗PI @@ -237,12 +252,19 @@ const handleSuccess = (urls) => { uploadUrl.value = urls; + form.logo = urls[0]; const urlsArr = urls.map((url) => { return httpUrl + url; }); imageUrls.value = urlsArr; // 鎷垮埌涓婁紶鐨勫浘鐗囧湴鍧� }; + const deleteRemove = () => { + form.logo = ''; + uploadUrl.value = []; + imageUrls.value = []; + }; + const emit = defineEmits(['refresh-parent']); const handleSubmit = ({ values, errors }) => { const all_params = form.addFomList.map((item) => { diff --git a/src/views/dmx/model/index.vue b/src/views/dmx/model/index.vue index ef07842..465a8be 100644 --- a/src/views/dmx/model/index.vue +++ b/src/views/dmx/model/index.vue @@ -61,6 +61,9 @@ <div class="arco-btn-group"> <a-space class="btn-group"> <!-- <editModel></editModel> --> + <a-button @click="handleDeleteModel(item, 1)"> + 鍒犻櫎 + </a-button> <a-button type="primary" @click="handleEditModel(item, 1)" @@ -201,6 +204,7 @@ key: { tags: '娣诲姞key', id: 1, + live: 1, }, }); @@ -251,27 +255,31 @@ }; //鍒犻櫎妯″瀷 - const handleDeleteModel = (val) => { - Modal.confirm({ - title: '璀﹀憡', - content: '纭鍒犻櫎鍚�', - okText: '纭畾', - cancelText: '鍙栨秷', - onOk: async () => { - const factory = tabKey.value; - const res = await deleteLlm({ - llm_factory: tabKey.value, - llm_name: val.name, - }); + const handleDeleteModel = (val, type) => { + if (type == 1) { + handleDelete(val); + } else { + Modal.confirm({ + title: '璀﹀憡', + content: '纭鍒犻櫎鍚�', + okText: '纭畾', + cancelText: '鍙栨秷', + onOk: async () => { + const factory = tabKey.value; + const res = await deleteLlm({ + llm_factory: tabKey.value, + llm_name: val.name, + }); - if ((res as any).code == 0) { - queryModel(); - tabKey.value = factory; - } else { - } - }, - onCancel: () => {}, - }); + if ((res as any).code == 0) { + queryModel(); + tabKey.value = factory; + } else { + } + }, + onCancel: () => {}, + }); + } }; //鐖剁骇妯″瀷 @@ -326,6 +334,15 @@ tabData.value = Object.assign({}, tabData.value, res.data); }; queryModel(); + //杩斿洖婊¤冻鏉′欢鐨勫璞� + const filterObject = (obj, threshold) => { + return Object.keys(obj) + .filter((key) => obj[key] > threshold) + .reduce((result, key) => { + result[key] = obj[key]; + return result; + }, {}); + }; const refreshParentMethod = () => { queryModel(); -- Gitblit v1.8.0