diff --git a/src/components/UploadAffix/index.vue b/src/components/UploadAffix/index.vue index fa24ba7..47915cb 100644 --- a/src/components/UploadAffix/index.vue +++ b/src/components/UploadAffix/index.vue @@ -3,7 +3,7 @@ -import { getToken } from "@/utils/auth" -import { download, GetFileList, deletefile } from "@/api/public/file" -import { timestampToTime } from "@/utils/index" - +import { getToken } from "@/utils/auth"; +import { GetFileList, deletefile } from "@/api/public/file"; +import { timestampToTime } from "@/utils/index"; +import download from '@/utils/download' export default { name: "UploadAffix", data() { @@ -52,19 +52,19 @@ export default { token: { auth: getToken() }, - listLoading: false - } + listLoading: false, + baseUrl:`${process.env.BASE_API}file/upload` + }; }, props: { Params: { - type: Object + type: Object // IsDetail true则 只显示文件list以及download button } - }, methods: { exportfile(id) { - download(id) + download(id); }, delete_file(id) { this.$confirm("确认删除?", "提示", { @@ -73,41 +73,35 @@ export default { type: "warning" }).then(() => { deletefile(id).then(res => { - this.fetchData_File(id) - }) - }) + this.fetchData_File(id); + }); + }); }, - uploadSuccess(response, file, fileList){ - console.log(response) - console.log(file) - console.log(fileList) - - this.$refs.upload.clearFiles() - + uploadSuccess(response, file, fileList) { + this.fetchData_File(this.Params.Param.MasterID); + this.$refs.upload.clearFiles(); }, fetchData_File(id) { - this.listLoading = true + this.listLoading = true; GetFileList(id).then(response => { - this.filelist = response.data.list - this.listLoading = false - }) + this.filelist = response.data.list; + this.listLoading = false; + }); }, timestampToTime }, watch: { "Params.Param.MasterID": { handler: function(id) { - console.log(id) this.$nextTick(() => { - this.fetchData_File(id) - }) + this.fetchData_File(id); + }); }, - immediate: true - + immediate: true } } -} +}; diff --git a/src/router/index.js b/src/router/index.js index dd551bf..5d4f631 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -41,13 +41,15 @@ export default new Router({ { path: '/Archive', component: Layout, - redirect: '/Archive/person', + redirect: '/Archive/person_edit', name:"Archive", title:"廉政档案", icon:'yonghuming', children: [ - { path: 'person', name: 'person',title:"廉政档案编辑", component: ()=>import('@/views/Archive/person'),meta:{title:"廉政档案编辑"}}, - { path: 'person_detail', name: 'person_detail',title:"廉政档案查看", component: ()=>import('@/views/Archive/person_detail'),meta:{title:"廉政档案查看"}} + { path: 'person_edit', name: 'person_edit',title:"档案编辑", component: ()=>import('@/views/Archive/person_edit'),meta:{title:"廉政档案编辑"}}, + { path: 'person_detail', name: 'person_detail',title:"档案查看", component: ()=>import('@/views/Archive/person_detail'),meta:{title:"廉政档案查看"}}, + { path: 'person_count', name: 'person_count',title:"数据统计", component: ()=>import('@/views/Archive/person_count'),meta:{title:"廉政档案统计"}} + ] }, { diff --git a/src/utils/download.js b/src/utils/download.js new file mode 100644 index 0000000..aa1f5de --- /dev/null +++ b/src/utils/download.js @@ -0,0 +1,43 @@ +import axios from 'axios' +import {getToken} from '@/utils/auth' + +export default function (AffixID){ + + console.log(AffixID) + return new Promise((resolve,reject)=>{ + axios.get(`${process.env.BASE_API}file/download`, + { + headers:{ + auth:getToken() + }, + + responseType: 'blob', // 表明返回服务器返回的数据类型, 没有会乱码 + + params: { + AffixID, + } + + } + ).then((response)=>{ + let date = new Date(); +         let filefix = date.getFullYear() + '-' + date.getMonth() + '-' + date.getDate() + ' ' + date.getHours() + ':' + date.getMinutes() + ':' + date.getSeconds(); +         let blob = new Blob([response.data],{ + + type: response.headers['Content-Type'] + + }); //创建一个blob对象 +         let a = document.createElement('a'); //创建一个标签 +          a.href = URL.createObjectURL(blob); // response is a blob +         a.download = filefix + "下载文件.docx"; //文件名称 +         a.style.display = 'none'; +         document.body.appendChild(a); +         a.click(); +         a.remove(); + + resolve() + + }).catch(e=>{ + reject(e) + }) + }) +} \ No newline at end of file diff --git a/src/utils/fetch.js b/src/utils/fetch.js index 0230f87..b484401 100644 --- a/src/utils/fetch.js +++ b/src/utils/fetch.js @@ -38,16 +38,17 @@ service.interceptors.response.use( const res = response.data if(response.headers["content-type"]=="application/octet-stream") { -  let date = new Date(); -         let filefix = date.getFullYear() + '-' + date.getMonth() + '-' + date.getDate() + ' ' + date.getHours() + ':' + date.getMinutes() + ':' + date.getSeconds(); -         let blob = new Blob([response.data]); //创建一个blob对象 -         let a = document.createElement('a'); //创建一个标签 -          a.href = URL.createObjectURL(blob); // response is a blob -         a.download = filefix + "下载文件.docx"; //文件名称 -         a.style.display = 'none'; -         document.body.appendChild(a); -         a.click(); -         a.remove(); + //  let date = new Date(); + //         let filefix = date.getFullYear() + '-' + date.getMonth() + '-' + date.getDate() + ' ' + date.getHours() + ':' + date.getMinutes() + ':' + date.getSeconds(); + //         let blob = new Blob([response.data]); //创建一个blob对象 + //         let a = document.createElement('a'); //创建一个标签 + //          a.href = URL.createObjectURL(blob); // response is a blob + //         a.download = filefix + "下载文件.docx"; //文件名称 + //         a.style.display = 'none'; + //         document.body.appendChild(a); + //         a.click(); + //         a.remove(); + return res } // 401 403 :帐号信息与token不匹配 需要重新拉取token if (res.code === 401 || res.code === 403) { diff --git a/src/views/Archive/person_count.vue b/src/views/Archive/person_count.vue new file mode 100644 index 0000000..60b4946 --- /dev/null +++ b/src/views/Archive/person_count.vue @@ -0,0 +1,28 @@ + + + + + diff --git a/src/views/Archive/person_detail.vue b/src/views/Archive/person_detail.vue index d1dd5bc..7541458 100644 --- a/src/views/Archive/person_detail.vue +++ b/src/views/Archive/person_detail.vue @@ -97,7 +97,7 @@ import { GetFormDetail } from "@/api/system/form" import { GenerateForm } from "form-making"; export default { - name:"Person_Detail", + name:"person_detail", data() { return { jsonData: null, diff --git a/src/views/Archive/person.vue b/src/views/Archive/person_edit.vue similarity index 98% rename from src/views/Archive/person.vue rename to src/views/Archive/person_edit.vue index 29e4cda..5909ae0 100644 --- a/src/views/Archive/person.vue +++ b/src/views/Archive/person_edit.vue @@ -104,7 +104,7 @@ import { GenerateForm } from "form-making"; import { GetFormDetail } from "@/api/system/form"; import { newGuid } from "@/utils/index"; export default { - // + name:"person_edit", data() { return { jsonData: null, @@ -125,8 +125,7 @@ export default { Param: { MasterID: "" }, - IsDetail: false, - Url: "http://localhost:8089/file/Upload" + IsDetail: false }, dialogFormVisible: false, diff --git a/src/views/DouBan/book.vue b/src/views/DouBan/book.vue index bd124af..0761172 100644 --- a/src/views/DouBan/book.vue +++ b/src/views/DouBan/book.vue @@ -56,6 +56,7 @@