diff --git a/src/api/project-demand/index.js b/src/api/project-demand/index.js
index 2d236b5..928514b 100644
--- a/src/api/project-demand/index.js
+++ b/src/api/project-demand/index.js
@@ -60,9 +60,25 @@ export const deleteFile = (fileId) => {
method: "delete"
});
};
+export const downloadFile = (fileId) => {
+ return request({
+ url: '/workflow/process/file/download',
+ method: "get",
+ responseType:'blob',
+ params:{
+ fileId:fileId
+ }
+ });
+};
export const getCompanyOption = () => {
return request({
url: '/admin/mosr/sub/company/companyOption',
method: "get"
});
};
+export const deleteDemand = (id) => {
+ return request({
+ url: `/workflow/mosr/requirement/${id}`,
+ method: "delete"
+ });
+};
diff --git a/src/components/PopoverDelete.vue b/src/components/PopoverDelete.vue
index 3dfe4aa..8dbd829 100644
--- a/src/components/PopoverDelete.vue
+++ b/src/components/PopoverDelete.vue
@@ -9,7 +9,7 @@
@cancel="handleCancel"
>
-
+
{{ btnText }}
@@ -30,6 +30,10 @@ const props = defineProps({
type: String,
default: ''
},
+ link: {
+ type: Boolean,
+ default: true
+ },
btnIcon: {
type: String,
default: ''
@@ -61,6 +65,7 @@ const handleCancel = () => {
visible.value = false
}
const handleDelete = () => {
+ console.log('确认')
emit("delete")
}
diff --git a/src/views/project-demand/collection/detail.vue b/src/views/project-demand/collection/detail.vue
index 4bc541f..6a708f2 100644
--- a/src/views/project-demand/collection/detail.vue
+++ b/src/views/project-demand/collection/detail.vue
@@ -77,7 +77,7 @@
import OperationRender from '@/views/workflow/common/OperationRender.vue'
import ProcessDiagramViewer from '@/views/workflow/common/ProcessDiagramViewer.vue'
import {useProcessStore} from '@/stores/processStore.js';
-import {getInfo, agreeTask, rejectTask} from "@/api/project-demand/index.js";
+import {getInfo, agreeTask, rejectTask,downloadFile} from "@/api/project-demand/index.js";
import {getSubCompOpt} from '@/api/user/user.js'
import {ElMessage} from "element-plus";
import {useRouter} from "vue-router";
@@ -129,7 +129,9 @@ const tableConfig = reactive({
label: '操作',
align: 'center',
currentRender: ({row, index}) => {
- return (下载)
+ return (
+ handleDownload(row)}>下载
+ )
}
}
]
@@ -200,6 +202,16 @@ const getDataSourceOptionItem = (val) => {
}
return companyNameArray.value.join(',');
}
+
+const handleDownload = (row) => {
+ downloadFile(row.fileId).then(res => {
+ const blob = new Blob([res])
+ let a = document.createElement('a')
+ a.href=URL.createObjectURL(blob)
+ a.download = row.originalFileName
+ a.click()
+ })
+}
const init = async () => {
if (!route.query.id) return;
await getCompanyOption()
diff --git a/src/views/project-demand/collection/index.vue b/src/views/project-demand/collection/index.vue
index bf9575c..a8ede61 100644
--- a/src/views/project-demand/collection/index.vue
+++ b/src/views/project-demand/collection/index.vue
@@ -10,6 +10,8 @@