|
|
|
@ -310,7 +310,8 @@
|
|
|
|
<span>已有附件</span>
|
|
|
|
<span>已有附件</span>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div v-for="(item,index) in uploadFJ.fileList" :key="item.url" class="yy_fj_list">
|
|
|
|
<div v-for="(item,index) in uploadFJ.fileList" :key="item.url" class="yy_fj_list">
|
|
|
|
<a :href="item.url" :download="item.name" target="_blank">{{ item.name }}</a>
|
|
|
|
<!-- <a :href="item.url" :download="item.name" target="_blank">{{ item.name }}</a>-->
|
|
|
|
|
|
|
|
<el-link type="primary" @click="downloadFJ(item)">{{ item.name }}</el-link>
|
|
|
|
<i class="el-icon-close" @click="uploadFJListRemove(index)"></i>
|
|
|
|
<i class="el-icon-close" @click="uploadFJListRemove(index)"></i>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</el-card>
|
|
|
|
</el-card>
|
|
|
|
@ -348,7 +349,8 @@
|
|
|
|
<span>附件</span>
|
|
|
|
<span>附件</span>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div v-for="(item,index) in viewUploadFJ.fileList" :key="item.url" class="yy_fj_list1">
|
|
|
|
<div v-for="(item,index) in viewUploadFJ.fileList" :key="item.url" class="yy_fj_list1">
|
|
|
|
<a :href="item.url" :download="item.name" target="_blank">{{ item.name }}</a>
|
|
|
|
<!-- <a :href="item.url" :download="item.name" target="_blank">{{ item.name }}</a>-->
|
|
|
|
|
|
|
|
<el-link type="primary" @click="downloadFJ(item)">{{ item.name }}</el-link>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</el-card>
|
|
|
|
</el-card>
|
|
|
|
<div slot="footer" class="dialog-footer">
|
|
|
|
<div slot="footer" class="dialog-footer">
|
|
|
|
@ -365,6 +367,7 @@ import { getToken } from "@/utils/auth"
|
|
|
|
import { deptTreeSelect } from "@/api/system/user";
|
|
|
|
import { deptTreeSelect } from "@/api/system/user";
|
|
|
|
import Treeselect from "@riophae/vue-treeselect";
|
|
|
|
import Treeselect from "@riophae/vue-treeselect";
|
|
|
|
import "@riophae/vue-treeselect/dist/vue-treeselect.css";
|
|
|
|
import "@riophae/vue-treeselect/dist/vue-treeselect.css";
|
|
|
|
|
|
|
|
import axios from "axios";
|
|
|
|
|
|
|
|
|
|
|
|
export default {
|
|
|
|
export default {
|
|
|
|
name: "Employee",
|
|
|
|
name: "Employee",
|
|
|
|
@ -715,6 +718,26 @@ export default {
|
|
|
|
this.getList();
|
|
|
|
this.getList();
|
|
|
|
})
|
|
|
|
})
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 下载
|
|
|
|
|
|
|
|
downloadFJ(row){
|
|
|
|
|
|
|
|
axios({
|
|
|
|
|
|
|
|
url: row.url,
|
|
|
|
|
|
|
|
method: 'get',
|
|
|
|
|
|
|
|
responseType: 'blob'
|
|
|
|
|
|
|
|
}).then(res => {
|
|
|
|
|
|
|
|
const blob = new Blob([res.data], { type: res.headers['content-type'] });
|
|
|
|
|
|
|
|
const fileName = row.name; // 根据实际需求动态生成
|
|
|
|
|
|
|
|
const link = document.createElement('a');
|
|
|
|
|
|
|
|
link.href = URL.createObjectURL(blob);
|
|
|
|
|
|
|
|
link.download = fileName;
|
|
|
|
|
|
|
|
document.body.appendChild(link);
|
|
|
|
|
|
|
|
link.click();
|
|
|
|
|
|
|
|
URL.revokeObjectURL(link.href);
|
|
|
|
|
|
|
|
document.body.removeChild(link);
|
|
|
|
|
|
|
|
}).catch(err => {
|
|
|
|
|
|
|
|
console.error('下载失败', err);
|
|
|
|
|
|
|
|
});
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|