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>
...@@ -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>
......
...@@ -4,6 +4,9 @@ ...@@ -4,6 +4,9 @@
<dataBreadcrumb :breads="breads"></dataBreadcrumb> <dataBreadcrumb :breads="breads"></dataBreadcrumb>
<h3>{{ title }}</h3> <h3>{{ title }}</h3>
<h5>{{ title }}</h5> <h5>{{ title }}</h5>
<div class="abs">
<div>拒绝原因:{{ruleForm.reason}}</div>
</div>
</div> </div>
<div class="content"> <div class="content">
<div class="describe">变更公告</div> <div class="describe">变更公告</div>
...@@ -13,7 +16,11 @@ ...@@ -13,7 +16,11 @@
<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="上传附件" prop="file"> <el-form-item label="上传附件" prop="file">
<singleUpload :fileList="ruleForm.accessoryVOList" tip="支持扩展名:.rar .zip .doc .docx .pdf .jpg..." @input="getfile"></singleUpload> <singleUpload
:fileList="ruleForm.accessoryVOList"
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" />
...@@ -21,7 +28,8 @@ ...@@ -21,7 +28,8 @@
</el-form> </el-form>
<div class="centerButton"> <div class="centerButton">
<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" v-if="!state">提交审核{{id}}</el-button>
<el-button type="primary" @click="change" v-else>提交修改</el-button>
</div> </div>
</div> </div>
</div> </div>
...@@ -29,17 +37,13 @@ ...@@ -29,17 +37,13 @@
</template> </template>
<script> <script>
import { import { createChange, noticeChange,editchange } from '@api/purchaser/bid';
createChange,noticeChange 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'
import 'quill/dist/quill.core.css'
import 'quill/dist/quill.snow.css'
import 'quill/dist/quill.bubble.css'
export default { export default {
components: { components: {
dataBreadcrumb, dataBreadcrumb,
...@@ -48,7 +52,8 @@ export default { ...@@ -48,7 +52,8 @@ export default {
}, },
data() { data() {
return { return {
id:"", state:false,
id: '',
editorOption: {}, editorOption: {},
title: '发布变更公告', title: '发布变更公告',
breads: ['招标管理', '招标项目管理', '工作台'], breads: ['招标管理', '招标项目管理', '工作台'],
...@@ -58,102 +63,128 @@ export default { ...@@ -58,102 +63,128 @@ export default {
accessoryPOList: [] accessoryPOList: []
}, },
rules: { rules: {
title: [{ title: [
{
required: true, required: true,
message: '请输入', message: '请输入',
trigger: 'blue' trigger: 'blue'
}], }
release: [{ ],
release: [
{
required: true, required: true,
message: '请输入', message: '请输入',
trigger: 'blue' trigger: 'blue'
}], }
content: [{ ],
content: [
{
required: true, required: true,
message: '请输入', message: '请输入',
trigger: 'blue' trigger: 'blue'
}]
} }
]
} }
};
}, },
created() { created() {
let id = this.$route.query.id; let id = this.$route.query.id;
this.id=id; this.id = id;
if (id) { if (id) {
this.title = '修改变更公告' this.title = '修改变更公告';
this.changeDetail(id) this.state=true
this.changeDetail(id);
} }
}, },
methods: { methods: {
getfile(val) { getfile(val) {
this.ruleForm.accessoryPOList = val this.ruleForm.accessoryPOList = val;
}, },
cancle() { cancle() {
this.$router.go(-1) this.$router.go(-1);
}, },
//提交表单 //提交表单
async submit() { async submit() {
let ruleForm = this.ruleForm try {
ruleForm.projectId = localStorage.getItem("projectId") const valid = await this.$refs['ruleForm'].validate();
let type = this.$route.query.type if (valid) {
if (type === 'modify') { let ruleForm = this.ruleForm;
ruleForm.changeId = 1 ruleForm.projectId = localStorage.getItem('projectId');
const { code, msg } = await createChange(this.ruleForm);
if (code === 200) {
this.$message({
message: msg,
type: 'success',
duration: 1500
});
setTimeout(() => {
this.$router.go(-1);
}, 1500);
}
} }
} catch (err) {
console.log(err);
}
},
// 修改
async change(){
try { try {
const valid = await this.$refs['ruleForm'].validate() const valid = await this.$refs['ruleForm'].validate();
if (valid) { if (valid) {
let ruleForm=this.ruleForm; let ruleForm = this.ruleForm;
if(this.id){ ruleForm.projectId = localStorage.getItem('projectId');
ruleForm.id=this.id; if (this.id) {
} ruleForm.id = this.id;
const { }
code, const { code, msg } = await editchange(this.ruleForm);
msg
} = await createChange(this.ruleForm)
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);
} }
} }
} catch (err) { } catch (err) {
console.log(err) console.log(err);
} }
}, },
// 详情 // 详情
async changeDetail(id) { async changeDetail(id) {
try { try {
const { const { data, code } = await noticeChange(id);
data,
code
} = await noticeChange(id)
if (code === 200) { if (code === 200) {
for(let item of data.accessoryVOList){ for (let item of data.accessoryVOList) {
console.log(item) console.log(item);
item.name=item.fileName; item.name = item.fileName;
item.fileUrl=item.accessoryUrl item.fileUrl = item.accessoryUrl;
} }
this.ruleForm = data data.accessoryPOList=data.accessoryVOList
this.ruleForm = data;
} }
} catch (e) { } catch (e) {
console.log(e) console.log(e);
} }
} }
} }
};
}
</script> </script>
<style scoped> <style scoped>
.content { .content {
padding: 0; padding: 0;
padding-bottom: 100px; padding-bottom: 100px;
} }
.content-head{
position: relative;
}
.content-head>.abs{
position: absolute;
right:10px;
bottom: 10px;
}
</style> </style>
...@@ -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>
...@@ -35,6 +35,7 @@ export default { ...@@ -35,6 +35,7 @@ export default {
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>
......
...@@ -29,18 +29,14 @@ ...@@ -29,18 +29,14 @@
</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'
import 'quill/dist/quill.snow.css'
import 'quill/dist/quill.bubble.css'
export default {
components: { components: {
dataBreadcrumb, dataBreadcrumb,
singleUpload, singleUpload,
...@@ -57,88 +53,96 @@ ...@@ -57,88 +53,96 @@
accessoryPOList: [] accessoryPOList: []
}, },
rules: { rules: {
title: [{ title: [
{
required: true, required: true,
message: '请输入', message: '请输入',
trigger: 'blue' trigger: 'blue'
}], }
release: [{ ],
release: [
{
required: true, required: true,
message: '请输入', message: '请输入',
trigger: 'blue' trigger: 'blue'
}], }
content: [{ ],
content: [
{
required: true, required: true,
message: '请输入', message: '请输入',
trigger: 'blue' trigger: 'blue'
}]
} }
]
} }
};
}, },
created() { created() {
let type = this.$route.query.type let id = this.$route.query.id;
console.log(type) this.id = id;
if (type === 'modify') { if (id) {
this.ruleForm = { this.title = '修改流标公告';
title: '修改', this.abortiveDetail(id);
content: '大修改'
}
this.title = '修改流标公告'
} }
}, },
methods: { methods: {
getfile(val){ getfile(val) {
this.ruleForm.accessoryPOList=val this.ruleForm.accessoryPOList = val;
}, },
cancle() { cancle() {
this.$router.go(-1) this.$router.go(-1);
}, },
//提交表单 //提交表单
async submit() { async submit() {
let ruleForm = this.ruleForm let ruleForm = this.ruleForm;
ruleForm.projectId = localStorage.getItem("projectId") ruleForm.projectId = localStorage.getItem('projectId');
let type = this.$route.query.type if (this.id) {
if (type === 'modify') { ruleForm.changeId = this.id
ruleForm.changeId = 1
} }
try { try {
const valid = await this.$refs['ruleForm'].validate() const valid = await this.$refs['ruleForm'].validate();
if (valid) { if (valid) {
const { const { code, msg } = await createAbortive(this.ruleForm);
code,
msg
} = await createAbortive(this.ruleForm)
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 (err) { } catch (err) {
console.log(err) console.log(err);
} }
},
async abortiveDetail(id) {
try {
const { data, code } = await noticeAbortive(id);
if (code === 200) {
this.ruleForm = data;
}
} 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>
...@@ -10,13 +10,13 @@ ...@@ -10,13 +10,13 @@
<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>
...@@ -34,18 +34,14 @@ ...@@ -34,18 +34,14 @@
</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'
import 'quill/dist/quill.snow.css'
import 'quill/dist/quill.bubble.css'
export default {
components: { components: {
dataBreadcrumb, dataBreadcrumb,
multiUpload, multiUpload,
...@@ -60,64 +56,68 @@ ...@@ -60,64 +56,68 @@
content: '' content: ''
}, },
rules: { rules: {
title: [{ title: [
{
required: true, required: true,
message: '请输入', message: '请输入',
trigger: 'blue' trigger: 'blue'
}], }
release: [{ ],
release: [
{
required: true, required: true,
message: '请输入', message: '请输入',
trigger: 'blue' trigger: 'blue'
}], }
file: [{ ],
file: [
{
required: true, required: true,
message: '请输入', message: '请输入',
trigger: 'blue' trigger: 'blue'
}], }
content: [{ ],
content: [
{
required: true, required: true,
message: '请输入', message: '请输入',
trigger: 'blue' trigger: 'blue'
}]
} }
]
} }
};
}, },
created() { created() {
let id = this.$route.query.id let id = this.$route.query.id;
this.abortiveDetail(id) this.abortiveDetail(id);
}, },
methods: { methods: {
cancle() { cancle() {
this.$router.go(-1) this.$router.go(-1);
}, },
async abortiveDetail(id) { async abortiveDetail(id) {
try { try {
const { const { data, code } = await noticeAbortive(id);
data,
code
} = await noticeAbortive(id)
if (code === 200) { if (code === 200) {
this.ruleForm = data this.ruleForm = data;
} }
} catch (e) { } catch (e) {
console.log(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)
} // }
}, // },
} }
} }
......
...@@ -6,21 +6,11 @@ ...@@ -6,21 +6,11 @@
<h5>查看应收账款等凭证</h5> <h5>查看应收账款等凭证</h5>
</div> </div>
<div class="content"> <div class="content">
<div class="flex-item"> <div class="flex">
<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> <div>查看图片:</div>
<div class="img-list flex"> <div class="img-list flex">
<div v-for="(item,index) in imgList" :key="index"> <div v-for="(item, index) in imgList" :key="index">
<el-image :src="item" :preview-src-list="srcList" style="width: 100px; height: 100px"> <el-image :src="item.fileUrl" :preview-src-list="srcList" style="width: 100px; height: 100px"> </el-image>
</el-image>
</div> </div>
</div> </div>
</div> </div>
...@@ -32,66 +22,59 @@ ...@@ -32,66 +22,59 @@
</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() { data() {
return { return {
imgList: ['https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg', 'https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg'],
breads: ['应收账款买断管理', '应收账款买断列表'], breads: ['应收账款买断管理', '应收账款买断列表'],
srcList: [ id: '',
'https://fuss10.elemecdn.com/8/27/f01c15bb73e1ef3793e64e6b7bbccjpeg.jpeg', imgList:[],
'https://fuss10.elemecdn.com/1/8e/aeffeb4de74e2fde4bd74fc7b4486jpeg.jpeg' srcList:[]
], };
id:""
}
}, },
methods: { methods: {
back() { back() {
this.$router.go(-1) this.$router.go(-1);
}, },
// 查看详情 // 查看详情
async getevidenceDetail() { async getevidenceDetail() {
let message={} let message = {};
message.projectId = this.id message.projectId = this.id;
message.companyId =localStorage.getItem("companyId") message.companyId = localStorage.getItem('companyId');
const { const { data, code, msg } = await evidenceDetail(message);
data,
code,
msg
} = await evidenceDetail(message)
if (code == 200) { if (code == 200) {
this.detail = data this.imgList = data;
}else{ for(let item of data ){
this.$message.error(msg) this.srcList.push(item.fileUrl)
}
} else {
this.$message.error(msg);
}
} }
}, },
}, created() {
created(){ this.id = this.$route.query.id;
this.id=this.$route.query.id this.getevidenceDetail();
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 {
......
...@@ -6,18 +6,10 @@ ...@@ -6,18 +6,10 @@
<h5>上传应收账款等凭证</h5> <h5>上传应收账款等凭证</h5>
</div> </div>
<div class="content"> <div class="content">
<div class="flex-item"> <div class="flex">
<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> <div>上传图片:</div>
<Upload @input="getfile"></Upload> <!-- <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>
<div class="backButton"> <div class="backButton">
<el-button @click="back">返回</el-button> <el-button @click="back">返回</el-button>
...@@ -28,8 +20,9 @@ ...@@ -28,8 +20,9 @@
</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,
...@@ -37,39 +30,61 @@ export default { ...@@ -37,39 +30,61 @@ export default {
}, },
data() { data() {
return { return {
imgList: ['https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg', 'https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg'], imgList: [
'https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg',
'https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg'
],
breads: ['应收账款买断管理', '应收账款买断列表'], breads: ['应收账款买断管理', '应收账款买断列表'],
srcList: [ fileList: [],
'https://fuss10.elemecdn.com/8/27/f01c15bb73e1ef3793e64e6b7bbccjpeg.jpeg', voucherList: []
'https://fuss10.elemecdn.com/1/8e/aeffeb4de74e2fde4bd74fc7b4486jpeg.jpeg' };
]
}
}, },
methods: { methods: {
back() { back() {
this.$router.go(-1) this.$router.go(-1);
}, },
sure() { 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>
...@@ -6,21 +6,11 @@ ...@@ -6,21 +6,11 @@
<h5>查看应收账款等凭证</h5> <h5>查看应收账款等凭证</h5>
</div> </div>
<div class="content"> <div class="content">
<div class="flex-item"> <div class="flex">
<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> <div>查看图片:</div>
<div class="img-list flex"> <div class="img-list flex">
<div v-for="(item,index) in imgList" :key="index"> <div v-for="(item, index) in imgList" :key="index">
<el-image :src="item" :preview-src-list="srcList" style="width: 100px; height: 100px"> <el-image :src="item.fileUrl" :preview-src-list="srcList" style="width: 100px; height: 100px"> </el-image>
</el-image>
</div> </div>
</div> </div>
</div> </div>
...@@ -32,66 +22,59 @@ ...@@ -32,66 +22,59 @@
</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() { data() {
return { return {
imgList: ['https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg', 'https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg'],
breads: ['应收账款买断管理', '应收账款买断列表'], breads: ['应收账款买断管理', '应收账款买断列表'],
srcList: [ id: '',
'https://fuss10.elemecdn.com/8/27/f01c15bb73e1ef3793e64e6b7bbccjpeg.jpeg', imgList:[],
'https://fuss10.elemecdn.com/1/8e/aeffeb4de74e2fde4bd74fc7b4486jpeg.jpeg' srcList:[]
], };
id:""
}
}, },
methods: { methods: {
back() { back() {
this.$router.go(-1) this.$router.go(-1);
}, },
// 查看详情 // 查看详情
async getevidenceDetail() { async getevidenceDetail() {
let message={} let message = {};
message.projectId = this.id message.projectId = this.id;
message.companyId =localStorage.getItem("companyId") message.companyId = localStorage.getItem('companyId');
const { const { data, code, msg } = await evidenceDetail(message);
data,
code,
msg
} = await evidenceDetail(message)
if (code == 200) { if (code == 200) {
this.detail = data this.imgList = data;
}else{ for(let item of data ){
this.$message.error(msg) this.srcList.push(item.fileUrl)
}
} else {
this.$message.error(msg);
}
} }
}, },
}, created() {
created(){ this.id = this.$route.query.id;
this.id=this.$route.query.id this.getevidenceDetail();
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>
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