Commit 3364d78b authored by 张冬's avatar 张冬

上传凭证和查看

parent 1f0100f7
...@@ -159,6 +159,15 @@ export function createChange(data) { ...@@ -159,6 +159,15 @@ export function createChange(data) {
data: data data: data
}) })
} }
// 发布变更公告
export function editchange(data) {
return request({
url: 'tender-notice/edit-change',
method: 'post',
data: data
})
}
// 变更公告详情 // 变更公告详情
export function noticeChange(id) { export function noticeChange(id) {
return request({ return request({
......
import request from '@/utils/request'
// 上传凭证
export function evidenceOperation(data) {
return request({
url:"bidder-payment/evidence-operation",
method: 'post',
data:data
})
}
\ No newline at end of file
...@@ -15,6 +15,7 @@ ...@@ -15,6 +15,7 @@
list-type="picture-card"> list-type="picture-card">
<i class="el-icon-plus"></i> <i class="el-icon-plus"></i>
</el-upload> </el-upload>
<div slot="tip" class="el-upload__tip">{{ tip }}</div>
<el-dialog :visible.sync="dialogVisible"> <el-dialog :visible.sync="dialogVisible">
<img :src="dialogImageUrl" width="100%" alt=""> <img :src="dialogImageUrl" width="100%" alt="">
</el-dialog> </el-dialog>
...@@ -30,6 +31,7 @@ import { ...@@ -30,6 +31,7 @@ import {
} from '@api/ali-oss' } from '@api/ali-oss'
export default { export default {
props: { props: {
tip: { tip: {
type: String, type: String,
default: '上传大小不能超过80M' default: '上传大小不能超过80M'
...@@ -41,13 +43,16 @@ export default { ...@@ -41,13 +43,16 @@ export default {
max: { max: {
type: Number, type: Number,
default: 2 default: 2
} },
fileList:{
type: Array,
default: () => []
},
}, },
data() { data() {
return { return {
dialogImageUrl: '', dialogImageUrl: '',
dialogVisible: false, dialogVisible: false,
fileList: []
} }
}, },
methods: { methods: {
...@@ -61,6 +66,7 @@ export default { ...@@ -61,6 +66,7 @@ export default {
}, },
emitInput(fileList) { emitInput(fileList) {
let value = [] let value = []
console.log(fileList)
for (let i = 0; i < fileList.length; i++) { for (let i = 0; i < fileList.length; i++) {
let message = {} let message = {}
message.fileName = fileList[i].name message.fileName = fileList[i].name
......
...@@ -3,8 +3,8 @@ ...@@ -3,8 +3,8 @@
<div class="content"> <div class="content">
<dataBreadcrumb :breads="breads"></dataBreadcrumb> <dataBreadcrumb :breads="breads"></dataBreadcrumb>
<el-button class="absolute" type="primary" @click="release">发布变更公告</el-button> <el-button class="absolute" type="primary" @click="release">发布变更公告</el-button>
<dataTable :columns="columns" :table-top="60" url="notice/list" :page-obj="pageObj"> <dataTable :columns="columns" :table-top="100" url="tender-notice/list" :page-obj="pageObj">
<el-table-column slot="auditStatus" label="操作" align="center" width="100"> <el-table-column slot="auditStatus" label="状态" align="center" width="100">
<template slot-scope="scope"> <template slot-scope="scope">
<div v-if="scope.row.auditStatus==0">未审核</div> <div v-if="scope.row.auditStatus==0">未审核</div>
<div v-else-if="scope.row.auditStatus==1">审核通过</div> <div v-else-if="scope.row.auditStatus==1">审核通过</div>
...@@ -13,7 +13,7 @@ ...@@ -13,7 +13,7 @@
</el-table-column> </el-table-column>
<el-table-column slot="operate" label="操作" align="center" fixed="right" width="100"> <el-table-column slot="operate" label="操作" align="center" fixed="right" width="100">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button v-if="scope.row.auditStatus===2" type="text" size="small" @click="handleModify(scope.row.id)">修改 </el-button> <el-button v-if="scope.row.auditStatus===2" type="text" size="small" @click="handleModify(scope.row.noticeId)">修改 </el-button>
<el-button v-else type="text" size="small" @click="handleSee(scope.row.noticeId)">查看 </el-button> <el-button v-else type="text" size="small" @click="handleSee(scope.row.noticeId)">查看 </el-button>
</template> </template>
</el-table-column> </el-table-column>
...@@ -76,7 +76,7 @@ export default { ...@@ -76,7 +76,7 @@ export default {
this.$router.push({ this.$router.push({
path: '/purchaser/bid/bidStage/changeList/changeNotice', path: '/purchaser/bid/bidStage/changeList/changeNotice',
query: { query: {
id:id id:id
} }
}) })
}, },
...@@ -86,29 +86,6 @@ export default { ...@@ -86,29 +86,6 @@ export default {
handleSee(id) { handleSee(id) {
this.$router.push(`/purchaser/bid/bidStage/changeList/see?id=${id}`) this.$router.push(`/purchaser/bid/bidStage/changeList/see?id=${id}`)
}, },
/* async getchangeList() {
try {
let projectId=localStorage.getItem("projectId");
const {
data,
code
} = await changeList(projectId)
if (code === 200) {
for (let item of data) {
if (item.auditStatus === 0) {
item.Status = '未审核'
} else if (item.auditStatus === 1) {
item.Status = '审核通过'
} else {
item.Status = '未通过'
}
}
this.tableData = data
}
} catch (e) {
console.log(e)
}
} */
} }
} }
</script> </script>
......
...@@ -3,8 +3,8 @@ ...@@ -3,8 +3,8 @@
<div class="content"> <div class="content">
<dataBreadcrumb :breads="breads"></dataBreadcrumb> <dataBreadcrumb :breads="breads"></dataBreadcrumb>
<el-button class="absolute" type="primary" @click="release">发布流标公告</el-button> <el-button class="absolute" type="primary" @click="release">发布流标公告</el-button>
<dataTable :table-data="tableData" :columns="columns" url="tender-notice/list" :table-top="60" :page-obj="pageObj"> <dataTable :table-data="tableData" :columns="columns" url="tender-notice/list" :table-top="100" :page-obj="pageObj">
<el-table-column slot="auditStatus" label="操作" align="center" width="100"> <el-table-column slot="auditStatus" label="状态" align="center" width="100">
<template slot-scope="scope"> <template slot-scope="scope">
<div v-if="scope.row.auditStatus==0">未审核</div> <div v-if="scope.row.auditStatus==0">未审核</div>
<div v-else-if="scope.row.auditStatus==1">审核通过</div> <div v-else-if="scope.row.auditStatus==1">审核通过</div>
...@@ -34,7 +34,8 @@ export default { ...@@ -34,7 +34,8 @@ export default {
return { return {
pageObj: { pageObj: {
size: 10, size: 10,
currentPage: 1, currentPage: 1,
noticeType:"ABORTIVE",
func: (currentPage) => { func: (currentPage) => {
this.pageTurning(currentPage) this.pageTurning(currentPage)
} }
...@@ -83,22 +84,6 @@ export default { ...@@ -83,22 +84,6 @@ export default {
handleSee(id) { handleSee(id) {
this.$router.push(`/purchaser/bid/bidStage/failList/see?id=${id}`) this.$router.push(`/purchaser/bid/bidStage/failList/see?id=${id}`)
}, },
async getabortiveList() {
try {
let message={};
message.projectId=localStorage.getItem("projectId");
message.type="ABORTIVE"
const {
data,
code
} = await simpleList(message)
if (code === 200) {
this.tableData = data
}
} catch (e) {
console.log(e)
}
}
} }
} }
</script> </script>
......
<template> <template>
<div> <div>
<div class="content-head"> <div class="content-head">
<dataBreadcrumb :breads="breads"></dataBreadcrumb> <dataBreadcrumb :breads="breads"></dataBreadcrumb>
<h3>{{ title }}</h3> <h3>{{ title }}</h3>
<h5>{{ title }}</h5> <h5>{{ title }}</h5>
</div> </div>
<div class="content"> <div class="content">
<div class="describe">流标公告</div> <div class="describe">流标公告</div>
<div class="form"> <div class="form">
<el-form ref="ruleForm" :model="ruleForm" :rules="rules" label-width="120px" class="demo-ruleForm"> <el-form ref="ruleForm" :model="ruleForm" :rules="rules" label-width="120px" class="demo-ruleForm">
<el-form-item label="公告标题" prop="title"> <el-form-item label="公告标题" prop="title">
<el-input v-model.trim="ruleForm.title" placeholder="请输入" maxlength="30"></el-input> <el-input v-model.trim="ruleForm.title" placeholder="请输入" maxlength="30"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="上传附件"> <el-form-item label="上传附件">
<singleUpload tip="支持扩展名:.rar .zip .doc .docx .pdf .jpg..." @input="getfile"></singleUpload> <singleUpload tip="支持扩展名:.rar .zip .doc .docx .pdf .jpg..." @input="getfile"></singleUpload>
</el-form-item> </el-form-item>
<el-form-item label="公告内容" prop="content"> <el-form-item label="公告内容" prop="content">
<quill-editor ref="text" v-model="ruleForm.content" :options="editorOption" class="myQuillEditor" /> <quill-editor ref="text" v-model="ruleForm.content" :options="editorOption" class="myQuillEditor" />
</el-form-item> </el-form-item>
</el-form> </el-form>
<div class="button"> <div class="button">
<el-button @click="cancle">取消</el-button> <el-button @click="cancle">取消</el-button>
<el-button type="primary" @click="submit">提交审核</el-button> <el-button type="primary" @click="submit">提交审核</el-button>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
import { import { createAbortive, noticeAbortive } from '@api/purchaser/bid';
createAbortive import dataBreadcrumb from '@components/dataBreadcrumb.vue';
} from '@api/purchaser/bid' import singleUpload from '@components/Upload/Upload.vue';
import dataBreadcrumb from '@components/dataBreadcrumb.vue' import { quillEditor } from 'vue-quill-editor';
import singleUpload from '@components/Upload/Upload.vue' import 'quill/dist/quill.core.css';
import { import 'quill/dist/quill.snow.css';
quillEditor import 'quill/dist/quill.bubble.css';
} from 'vue-quill-editor' export default {
import 'quill/dist/quill.core.css' components: {
import 'quill/dist/quill.snow.css' dataBreadcrumb,
import 'quill/dist/quill.bubble.css' singleUpload,
export default { quillEditor
components: { },
dataBreadcrumb, data() {
singleUpload, return {
quillEditor editorOption: {},
title: '发布流标公告',
breads: ['招标管理', '招标项目管理', '工作台'],
ruleForm: {
title: '',
content: '',
accessoryPOList: []
},
rules: {
title: [
{
required: true,
message: '请输入',
trigger: 'blue'
}
],
release: [
{
required: true,
message: '请输入',
trigger: 'blue'
}
],
content: [
{
required: true,
message: '请输入',
trigger: 'blue'
}
]
}
};
},
created() {
let id = this.$route.query.id;
this.id = id;
if (id) {
this.title = '修改流标公告';
this.abortiveDetail(id);
}
},
methods: {
getfile(val) {
this.ruleForm.accessoryPOList = val;
},
cancle() {
this.$router.go(-1);
},
//提交表单
async submit() {
let ruleForm = this.ruleForm;
ruleForm.projectId = localStorage.getItem('projectId');
if (this.id) {
ruleForm.changeId = this.id
}
try {
const valid = await this.$refs['ruleForm'].validate();
if (valid) {
const { code, msg } = await createAbortive(this.ruleForm);
if (code === 200) {
this.$message({
message: msg,
type: 'success',
duration: 1500
});
setTimeout(() => {
this.$router.go(-1);
}, 1500);
} else {
this.$message.error(msg);
}
}
} catch (err) {
console.log(err);
}
}, },
data() { async abortiveDetail(id) {
return { try {
editorOption: {}, const { data, code } = await noticeAbortive(id);
title: '发布流标公告', if (code === 200) {
breads: ['招标管理', '招标项目管理', '工作台'], this.ruleForm = data;
ruleForm: { }
title: '', } catch (e) {
content: '', console.log(e);
accessoryPOList: [] }
}, }
rules: { }
title: [{ };
required: true,
message: '请输入',
trigger: 'blue'
}],
release: [{
required: true,
message: '请输入',
trigger: 'blue'
}],
content: [{
required: true,
message: '请输入',
trigger: 'blue'
}]
}
}
},
created() {
let type = this.$route.query.type
console.log(type)
if (type === 'modify') {
this.ruleForm = {
title: '修改',
content: '大修改'
}
this.title = '修改流标公告'
}
},
methods: {
getfile(val){
this.ruleForm.accessoryPOList=val
},
cancle() {
this.$router.go(-1)
},
//提交表单
async submit() {
let ruleForm = this.ruleForm
ruleForm.projectId = localStorage.getItem("projectId")
let type = this.$route.query.type
if (type === 'modify') {
ruleForm.changeId = 1
}
try {
const valid = await this.$refs['ruleForm'].validate()
if (valid) {
const {
code,
msg
} = await createAbortive(this.ruleForm)
if (code === 200) {
this.$message({
message: msg,
type: 'success',
duration: 1500
})
setTimeout(() => {
this.$router.go(-1)
}, 1500)
} else {
this.$message.error(msg)
}
}
} catch (err) {
console.log(err)
}
}
}
}
</script> </script>
<style scoped> <style scoped>
.content { .content {
padding: 0; padding: 0;
padding-bottom: 100px; padding-bottom: 100px;
} }
.button { .button {
width: 200px; width: 200px;
margin: 150px auto 0 margin: 150px auto 0;
} }
</style> </style>
<template> <template>
<div> <div>
<div class="content-head"> <div class="content-head">
<dataBreadcrumb :breads="breads"></dataBreadcrumb> <dataBreadcrumb :breads="breads"></dataBreadcrumb>
<h3>查看流标公告</h3> <h3>查看流标公告</h3>
<h5>查看流标公告</h5> <h5>查看流标公告</h5>
</div> </div>
<div class="content"> <div class="content">
<div class="describe">流标公告</div> <div class="describe">流标公告</div>
<div class="form"> <div class="form">
<el-form ref="ruleForm" :model="ruleForm" label-width="120px" class="demo-ruleForm"> <el-form ref="ruleForm" :model="ruleForm" label-width="120px" class="demo-ruleForm">
<el-form-item label="公告标题"> <el-form-item label="公告标题">
<div>{{ruleForm.title}}</div> <div>{{ ruleForm.title }}</div>
</el-form-item> </el-form-item>
<el-form-item label="上传附件" v-if="ruleForm.accessoryVOList"> <el-form-item label="上传附件" v-if="ruleForm.accessoryVOList">
<div v-if="ruleForm.accessoryVOList.length==0"></div> <div v-if="ruleForm.accessoryVOList.length == 0"></div>
<ul v-else> <ul v-else>
<li v-for="(item,index) in ruleForm.accessoryVOList" :key="index" class="flex"> <li v-for="(item, index) in ruleForm.accessoryVOList" :key="index" class="flex">
<div style="margin-right: 10px;">{{item.fileName}}</div> <div style="margin-right: 10px">{{ item.fileName }}</div>
<el-button size="mini" @click="down(item.accessoryUrl)">下载</el-button> <el-button size="mini" @click="down(item.accessoryUrl)">下载</el-button>
</li> </li>
</ul> </ul>
</el-form-item> </el-form-item>
<el-form-item label="公告内容"> <el-form-item label="公告内容">
<div v-html="ruleForm.content"></div> <div v-html="ruleForm.content"></div>
</el-form-item> </el-form-item>
</el-form> </el-form>
<div class="button"> <div class="button">
<el-button @click="cancle">返回</el-button> <el-button @click="cancle">返回</el-button>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
import { import { noticeAbortive } from '@api/purchaser/bid';
noticeAbortive import dataBreadcrumb from '@components/dataBreadcrumb.vue';
} from '@api/purchaser/bid' import multiUpload from '@components/Upload/multiUpload.vue';
import dataBreadcrumb from '@components/dataBreadcrumb.vue' import { quillEditor } from 'vue-quill-editor';
import multiUpload from '@components/Upload/multiUpload.vue' import 'quill/dist/quill.core.css';
import { import 'quill/dist/quill.snow.css';
quillEditor import 'quill/dist/quill.bubble.css';
} from 'vue-quill-editor' export default {
import 'quill/dist/quill.core.css' components: {
import 'quill/dist/quill.snow.css' dataBreadcrumb,
import 'quill/dist/quill.bubble.css' multiUpload,
export default { quillEditor
components: { },
dataBreadcrumb, data() {
multiUpload, return {
quillEditor editorOption: {},
}, breads: ['招标管理', '招标项目管理', '工作台'],
data() { ruleForm: {
return { title: '',
editorOption: {}, content: ''
breads: ['招标管理', '招标项目管理', '工作台'], },
ruleForm: { rules: {
title: '', title: [
content: '' {
}, required: true,
rules: { message: '请输入',
title: [{ trigger: 'blue'
required: true, }
message: '请输入', ],
trigger: 'blue' release: [
}], {
release: [{ required: true,
required: true, message: '请输入',
message: '请输入', trigger: 'blue'
trigger: 'blue' }
}], ],
file: [{ file: [
required: true, {
message: '请输入', required: true,
trigger: 'blue' message: '请输入',
}], trigger: 'blue'
content: [{ }
required: true, ],
message: '请输入', content: [
trigger: 'blue' {
}] required: true,
} message: '请输入',
} trigger: 'blue'
}, }
created() { ]
let id = this.$route.query.id }
this.abortiveDetail(id) };
}, },
methods: { created() {
cancle() { let id = this.$route.query.id;
this.$router.go(-1) this.abortiveDetail(id);
}, },
async abortiveDetail(id) { methods: {
try { cancle() {
const { this.$router.go(-1);
data, },
code async abortiveDetail(id) {
} = await noticeAbortive(id) try {
if (code === 200) { const { data, code } = await noticeAbortive(id);
this.ruleForm = data if (code === 200) {
} this.ruleForm = data;
} catch (e) { }
console.log(e) } catch (e) {
} console.log(e);
} }
} }
}
} };
</script> </script>
<style scoped> <style scoped>
.content { .content {
padding: 0; padding: 0;
padding-bottom: 100px; padding-bottom: 100px;
} }
.button { .button {
width: 200px; width: 200px;
margin: 150px auto 0 margin: 150px auto 0;
} }
</style> </style>
...@@ -52,7 +52,7 @@ ...@@ -52,7 +52,7 @@
created() { created() {
this.id=this.$route.params.id this.id=this.$route.params.id
this.url=this.$route.params.url this.url=this.$route.params.url
this.getcontract() // this.getcontract()
}, },
methods: { methods: {
back() { back() {
...@@ -71,42 +71,42 @@ ...@@ -71,42 +71,42 @@
down(url){ down(url){
window.open(url) window.open(url)
}, },
// 查看详情 // // 查看详情
async getcontract(){ // async getcontract(){
let projectId=this.id // let projectId=this.id
const { // const {
data, // data,
code // code
} = await contract(projectId) // } = await contract(projectId)
if(code==200){ // if(code==200){
this.detail=data // this.detail=data
} // }
}, // },
// 提出 // 提出
async submitData() { // async submitData() {
try { // try {
let projectId = this.id // let projectId = this.id
const { // const {
msg, // msg,
code // code
} = await signContract(projectId) // } = await signContract(projectId)
if (code == 200) { // if (code == 200) {
this.$message({ // this.$message({
message: msg, // message: msg,
type: 'success', // type: 'success',
duration: 1500 // duration: 1500
}) // })
setTimeout(() => { // setTimeout(() => {
this.$router.go(-1) // this.$router.go(-1)
}, 1500) // }, 1500)
}else{ // }else{
this.$message.error(msg) // this.$message.error(msg)
} // }
} catch (e) { // } catch (e) {
console.log(e) // console.log(e)
} // }
}, // },
} }
} }
......
<template> <template>
<div> <div>
<div class="content-head"> <div class="content-head">
<dataBreadcrumb :breads="breads"></dataBreadcrumb> <dataBreadcrumb :breads="breads"></dataBreadcrumb>
<h3>查看凭证</h3> <h3>查看凭证</h3>
<h5>查看应收账款等凭证</h5> <h5>查看应收账款等凭证</h5>
</div> </div>
<div class="content"> <div class="content">
<div class="flex-item"> <div class="flex">
<div>下载合同:</div> <div>查看图片:</div>
<ul> <div class="img-list flex">
<li class="flex-item"> <div v-for="(item, index) in imgList" :key="index">
<div>合同名字.pdf</div> <el-image :src="item.fileUrl" :preview-src-list="srcList" style="width: 100px; height: 100px"> </el-image>
<el-button size="mini">下载</el-button> </div>
</li> </div>
</ul> </div>
</div> <div class="backButton">
<div class="flex" style="margin-top: 50px;"> <el-button @click="back">返回</el-button>
<div>查看图片:</div> </div>
<div class="img-list flex">
<div v-for="(item,index) in imgList" :key="index">
<el-image :src="item" :preview-src-list="srcList" style="width: 100px; height: 100px">
</el-image>
</div>
</div> </div>
</div>
<div class="backButton">
<el-button @click="back">返回</el-button>
</div>
</div> </div>
</div>
</template> </template>
<script> <script>
import { import { evidenceDetail } from '@api/purchaser/buyOut';
evidenceDetail import dataBreadcrumb from '@components/dataBreadcrumb.vue';
} from '@api/purchaser/buyOut'
import dataBreadcrumb from '@components/dataBreadcrumb.vue'
export default { export default {
components: { components: {
dataBreadcrumb dataBreadcrumb
},
data() {
return {
imgList: ['https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg', 'https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg'],
breads: ['应收账款买断管理', '应收账款买断列表'],
srcList: [
'https://fuss10.elemecdn.com/8/27/f01c15bb73e1ef3793e64e6b7bbccjpeg.jpeg',
'https://fuss10.elemecdn.com/1/8e/aeffeb4de74e2fde4bd74fc7b4486jpeg.jpeg'
],
id:""
}
},
methods: {
back() {
this.$router.go(-1)
}, },
// 查看详情 data() {
async getevidenceDetail() { return {
let message={} breads: ['应收账款买断管理', '应收账款买断列表'],
message.projectId = this.id id: '',
message.companyId =localStorage.getItem("companyId") imgList:[],
const { srcList:[]
data, };
code, },
msg methods: {
} = await evidenceDetail(message) back() {
if (code == 200) { this.$router.go(-1);
this.detail = data },
}else{ // 查看详情
this.$message.error(msg) async getevidenceDetail() {
} let message = {};
}, message.projectId = this.id;
}, message.companyId = localStorage.getItem('companyId');
created(){ const { data, code, msg } = await evidenceDetail(message);
this.id=this.$route.query.id if (code == 200) {
this.getevidenceDetail() this.imgList = data;
} for(let item of data ){
} this.srcList.push(item.fileUrl)
}
} else {
this.$message.error(msg);
}
}
},
created() {
this.id = this.$route.query.id;
this.getevidenceDetail();
}
};
</script> </script>
<style scoped> <style scoped>
.img-list{ .img-list {
flex-wrap: wrap; flex-wrap: wrap;
}
} .img-list > div {
.img-list>div{ margin-right: 20px;
margin-right: 20px; }
} ul > li > div {
ul>li>div{ margin-right: 10px;
margin-right: 10px; }
} .backButton {
.backButton{ width: 100px;
width:100px; margin: 200px auto 30px;
margin: 200px auto 30px; }
} </style>
</style> \ No newline at end of file
...@@ -24,7 +24,7 @@ ...@@ -24,7 +24,7 @@
<el-button type="text" size="small" v-else disabled>合同查看</el-button> <el-button type="text" size="small" v-else disabled>合同查看</el-button>
</div> </div>
<div> <div>
<el-button type="text" size="small" @click="voucherSign(scope.row.projectId)" v-if="scope.row.voucherOperation==1">确认凭证</el-button> <el-button type="text" size="small" @click="upload(scope.row.projectId)" v-if="scope.row.voucherOperation==1">上传凭证</el-button>
<el-button type="text" size="small" @click="voucherSee(scope.row.projectId)" v-else-if="scope.row.voucherOperation==2">查看凭证</el-button> <el-button type="text" size="small" @click="voucherSee(scope.row.projectId)" v-else-if="scope.row.voucherOperation==2">查看凭证</el-button>
<el-button type="text" size="small" v-else disabled>查看凭证</el-button> <el-button type="text" size="small" v-else disabled>查看凭证</el-button>
</div> </div>
...@@ -103,10 +103,10 @@ ...@@ -103,10 +103,10 @@
}) })
}, },
voucherSee(id) { voucherSee(id) {
this.$router.push(`/purchaser/buyOut/voucherSee?id=${id}`) this.$router.push(`/supply/buyOut/voucherSee?id=${id}`)
}, },
voucherSign(id) { upload(id) {
this.$router.push(`/purchaser/buyOut/voucherSign?id=${id}`) this.$router.push(`/supply/buyOut/upload?id=${id}`)
}, },
async getDropList() { async getDropList() {
const { const {
......
<template> <template>
<div> <div>
<div class="content-head"> <div class="content-head">
<dataBreadcrumb :breads="breads"></dataBreadcrumb> <dataBreadcrumb :breads="breads"></dataBreadcrumb>
<h3>上传凭证</h3> <h3>上传凭证</h3>
<h5>上传应收账款等凭证</h5> <h5>上传应收账款等凭证</h5>
</div>
<div class="content">
<div class="flex">
<div>上传图片:</div>
<!-- <singleUpload :limit="1" :max="10" tips="最多上传一份,大小不超过10M." @input="getfile"></singleUpload> -->
<Upload :limit="1" :max="10" :fileList="fileList" tip="支持上传6张图片,单张图片大小不超过10M。" @input="getfile"></Upload>
</div>
<div class="backButton">
<el-button @click="back">返回</el-button>
<el-button @click="sure">确认</el-button>
</div>
</div>
</div> </div>
<div class="content">
<div class="flex-item">
<div>下载合同:</div>
<ul>
<li class="flex-item">
<div>合同名字.pdf</div>
<el-button size="mini">下载</el-button>
</li>
</ul>
</div>
<div class="flex" style="margin-top: 50px;">
<div>上传图片:</div>
<Upload @input="getfile"></Upload>
</div>
<div class="backButton">
<el-button @click="back">返回</el-button>
<el-button @click="sure">确认</el-button>
</div>
</div>
</div>
</template> </template>
<script> <script>
import dataBreadcrumb from '@components/dataBreadcrumb.vue' import { evidenceOperation } from '@api/supply/organization';
import Upload from '@components/Upload/imgUpload.vue' import dataBreadcrumb from '@components/dataBreadcrumb.vue';
import Upload from '@components/Upload/imgUpload.vue';
export default { export default {
components: { components: {
dataBreadcrumb, dataBreadcrumb,
Upload Upload
}, },
data() { data() {
return { return {
imgList: ['https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg', 'https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg'], imgList: [
breads: ['应收账款买断管理', '应收账款买断列表'], 'https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg',
srcList: [ 'https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg'
'https://fuss10.elemecdn.com/8/27/f01c15bb73e1ef3793e64e6b7bbccjpeg.jpeg', ],
'https://fuss10.elemecdn.com/1/8e/aeffeb4de74e2fde4bd74fc7b4486jpeg.jpeg' breads: ['应收账款买断管理', '应收账款买断列表'],
] fileList: [],
} voucherList: []
}, };
methods: {
back() {
this.$router.go(-1)
}, },
sure() { methods: {
back() {
this.$router.go(-1);
},
getfile(val) {
console.log(val)
this.voucherList = val;
},
async sure() {
try {
let message={}
message.projectId=localStorage.getItem("projectId")
message.companyId=localStorage.getItem("companyId")
message.voucherList=this.voucherList
const { code, msg } = await evidenceOperation(message);
if (code == 200) {
this.$message({
message: msg,
type: 'success',
duration: 1500
});
setTimeout(() => {
this.$router.go(-1);
}, 1500);
} else {
this.$message.error(msg);
}
} catch (e) {}
},
} }
} };
}
</script> </script>
<style scoped> <style scoped>
.img-list{ .img-list {
flex-wrap: wrap; flex-wrap: wrap;
} }
.img-list>div{ .img-list > div {
margin-right: 20px; margin-right: 20px;
} }
ul>li>div{ ul > li > div {
margin-right: 10px; margin-right: 10px;
} }
.backButton{ .backButton {
width:200px; width: 200px;
margin: 200px auto 30px; margin: 200px auto 30px;
} }
</style> </style>
<template> <template>
<div> <div>
<div class="content-head"> <div class="content-head">
<dataBreadcrumb :breads="breads"></dataBreadcrumb> <dataBreadcrumb :breads="breads"></dataBreadcrumb>
<h3>查看凭证</h3> <h3>查看凭证</h3>
<h5>查看应收账款等凭证</h5> <h5>查看应收账款等凭证</h5>
</div> </div>
<div class="content"> <div class="content">
<div class="flex-item"> <div class="flex">
<div>下载合同:</div> <div>查看图片:</div>
<ul> <div class="img-list flex">
<li class="flex-item"> <div v-for="(item, index) in imgList" :key="index">
<div>合同名字.pdf</div> <el-image :src="item.fileUrl" :preview-src-list="srcList" style="width: 100px; height: 100px"> </el-image>
<el-button size="mini">下载</el-button> </div>
</li> </div>
</ul> </div>
</div> <div class="backButton">
<div class="flex" style="margin-top: 50px;"> <el-button @click="back">返回</el-button>
<div>查看图片:</div> </div>
<div class="img-list flex">
<div v-for="(item,index) in imgList" :key="index">
<el-image :src="item" :preview-src-list="srcList" style="width: 100px; height: 100px">
</el-image>
</div>
</div> </div>
</div>
<div class="backButton">
<el-button @click="back">返回</el-button>
</div>
</div> </div>
</div>
</template> </template>
<script> <script>
import { import { evidenceDetail } from '@api/purchaser/buyOut';
evidenceDetail import dataBreadcrumb from '@components/dataBreadcrumb.vue';
} from '@api/purchaser/buyOut'
import dataBreadcrumb from '@components/dataBreadcrumb.vue'
export default { export default {
components: { components: {
dataBreadcrumb dataBreadcrumb
},
data() {
return {
imgList: ['https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg', 'https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg'],
breads: ['应收账款买断管理', '应收账款买断列表'],
srcList: [
'https://fuss10.elemecdn.com/8/27/f01c15bb73e1ef3793e64e6b7bbccjpeg.jpeg',
'https://fuss10.elemecdn.com/1/8e/aeffeb4de74e2fde4bd74fc7b4486jpeg.jpeg'
],
id:""
}
},
methods: {
back() {
this.$router.go(-1)
}, },
// 查看详情 data() {
async getevidenceDetail() { return {
let message={} breads: ['应收账款买断管理', '应收账款买断列表'],
message.projectId = this.id id: '',
message.companyId =localStorage.getItem("companyId") imgList:[],
const { srcList:[]
data, };
code, },
msg methods: {
} = await evidenceDetail(message) back() {
if (code == 200) { this.$router.go(-1);
this.detail = data },
}else{ // 查看详情
this.$message.error(msg) async getevidenceDetail() {
} let message = {};
}, message.projectId = this.id;
}, message.companyId = localStorage.getItem('companyId');
created(){ const { data, code, msg } = await evidenceDetail(message);
this.id=this.$route.query.id if (code == 200) {
this.getevidenceDetail() this.imgList = data;
} for(let item of data ){
} this.srcList.push(item.fileUrl)
}
} else {
this.$message.error(msg);
}
}
},
created() {
this.id = this.$route.query.id;
this.getevidenceDetail();
}
};
</script> </script>
<style scoped> <style scoped>
.img-list{ .img-list {
flex-wrap: wrap; flex-wrap: wrap;
}
} .img-list > div {
.img-list>div{ margin-right: 20px;
margin-right: 20px; }
} ul > li > div {
ul>li>div{ margin-right: 10px;
margin-right: 10px; }
} .backButton {
.backButton{ width: 100px;
width:100px; margin: 200px auto 30px;
margin: 200px auto 30px; }
}
</style> </style>
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,7 @@
} }
return obj[key]; return obj[key];
} }
// export let requestUrl = 'http://192.168.3.35:8085'; // export let requestUrl = 'http://192.168.3.35:8085';
export let requestUrl = 'http://60.205.251.80:8082'; export let requestUrl = 'http://60.205.251.80:8082';
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment