diff --git a/src/views/model/uploadModel.vue b/src/views/model/uploadModel.vue index 4017624..ff1d89c 100644 --- a/src/views/model/uploadModel.vue +++ b/src/views/model/uploadModel.vue @@ -91,7 +91,9 @@ - @@ -148,6 +150,7 @@ import ConstApi from '@/api/const' import ModelApi from '@/api/models' import request from "axios"; +import { TOKEN_KEY } from "@/enums/CacheEnum"; const router = useRouter(); let listOpt = reactive({ modelType: [], @@ -158,7 +161,14 @@ let listOpt = reactive({ modelNetSubType: [], upFiles: [], }) -let fileList = ref([]) +let fileUpload=ref(import.meta.env.VITE_APP_BASE_API+"/models/upload"); +let uploadHeaders=ref({ + Authorization: localStorage.getItem(TOKEN_KEY) +}) +let upModelData=reactive({ + file_name:'', + file_content:null +}); const uploadRef1 = ref() let jsonDlg = ref() @@ -178,6 +188,7 @@ const doSave = () => { const doBack = () => { router.push({ path: "/modelMgr/index" }) } + const uploadForm = ref(ElForm) let upForm = reactive({ model_name: '', @@ -206,6 +217,7 @@ const logList = reactive([{ }, { date: '2024-05-06 18:34:36', log: '系统正在分割目标文件' }, { date: '2024-05-06 18:34:36', log: '运行时异常,系统编译已终止' }]) + const upRules = computed(() => { return { model_name: [{ required: true, trigger: "blur", message: "请输入模型名称", },], @@ -224,6 +236,37 @@ const upRules = computed(() => { const handleFileRemoveCfg = (a, b) => { upForm.model_parameters = null; } +function handleBeforeUploadModel(file,b,c){ + if (file.size > 500 * 1024 * 1024) { + ElMessage.warning("文件大小不能超500M"); + file.onError("文件大小不能超500M") + return false; + } + let ext = file.name.split(".").pop().toLowerCase(); + if (["onnx", "ts"].indexOf(ext) == -1) { + ElMessage.warning("请上传onnx/ts格式文件"); + file.onError("请上传onnx/ts格式文件") + return false; + } + upModelData.file_name=file.name; + upModelData.file_content=file; +} + +function handleUploadModelSuccess(res){ + if(res.code==0){ + listOpt.upFiles.push({ + name: res.data.file_name, + serverName: res.data.file_name + }) + upForm.model_file_list = listOpt.upFiles.map(it => it.serverName); + }else{ + ElMessage.error("上传失败,"+res.message); + uploadRef1.value.clearFiles(); + } +} +function handleUploadModelFail(res){ + uploadRef1.value.clearFiles(); +} const handleUploadCfg = (file) => { if (file.file.size > 10 * 1024 * 1024) { ElMessage.warning("文件大小不能超10M");