Commit 96b199b3 authored by 张冬's avatar 张冬

招标公告编辑

parent 8a41f77b
...@@ -43,9 +43,9 @@ export default { ...@@ -43,9 +43,9 @@ export default {
async getbiddingProjectId() { async getbiddingProjectId() {
let projectId = localStorage.getItem('projectId'); let projectId = localStorage.getItem('projectId');
const { data, code,msg } = await biddingProjectId(projectId); const { data, code,msg } = await biddingProjectId(projectId);
this.$emit("getmsg",code)
if (code == 200) { if (code == 200) {
this.detail = data; this.detail = data;
this.$emit("getstate",data.auditStatus)
} else if (code == 500) { } else if (code == 500) {
this.state = false; this.state = false;
this.msg = msg; this.msg = msg;
......
<template>
<div>
<div class="content-head">
<dataBreadcrumb :breads="breads"></dataBreadcrumb>
<h3>编辑招标公告</h3>
<h5>编辑招标公告</h5>
</div>
<div class="content">
<div class="describe">招标公告</div>
<div class="form">
<el-form ref="ruleForm" :model="ruleForm" :rules="rules" label-width="100px" class="demo-ruleForm">
<el-form-item label="公告标题" prop="title"
><strong></strong>
<el-input v-model.trim="ruleForm.title" maxlength="30"></el-input>
</el-form-item>
<el-form-item label="上传附件"
><strong></strong>
<singleUpload tip="支持扩展名:.rar .zip .doc .docx .pdf .jpg..." @input="getfile" :fileList="ruleForm.accessoryVOList"></singleUpload>
</el-form-item>
<el-form-item label="公告内容" prop="content">
<quill-editor ref="text" v-model="ruleForm.content" :options="editorOption" class="myQuillEditor" />
</el-form-item>
</el-form>
</div>
</div>
<div class="bottomButton">
<el-button @click="back">取消</el-button>
<el-button type="primary" @click="submit">编辑</el-button>
</div>
</div>
</template>
<script>
import { editBidding} from '@api/purchaser/bid';
import { biddingProjectId } from '@api/common/list';
import { quillEditor } from 'vue-quill-editor';
import 'quill/dist/quill.core.css';
import 'quill/dist/quill.snow.css';
import 'quill/dist/quill.bubble.css';
import dataBreadcrumb from '@components/dataBreadcrumb.vue';
import singleUpload from '@components/Upload/Upload.vue';
export default {
components: {
dataBreadcrumb,
singleUpload,
quillEditor
},
data() {
// 检测文件是否上传
let checkupload = (rule, value, callback) => {
if (this.justimg.length === 0) {
callback(new Error('请上传正面照片'));
} else {
callback();
}
};
return {
accessoryPOList: [],
editorOption: {},
breads: ['招标管理', '招标项目管理', '工作台'],
ruleForm: {
title: '',
content: ''
},
rules: {
title: [
{
required: true,
message: '请填写',
trigger: 'blue'
}
],
content: [
{
required: true,
message: '请填写',
trigger: 'blue'
}
]
}
};
},
created() {
this.getbiddingProjectId();
},
methods: {
back() {
this.$router.go(-1);
},
cancel() {
this.$router.go(-1);
},
getfile(val) {
for (let item of val) {
item.accessoryUrl = item.fileUrl;
}
this.accessoryPOList = val;
},
//提交表单
async submit() {
let ruleForm = this.ruleForm;
ruleForm.projectId = localStorage.getItem('projectId');
ruleForm.accessoryPOList = this.accessoryPOList;
try {
const valid = await this.$refs['ruleForm'].validate();
if (valid) {
const { code, msg } = await editBidding(this.ruleForm);
if (code === 200) {
this.$message({
message: msg,
type: 'success',
duration: 1500
});
setTimeout(() => {
this.$router.go(-1);
}, 1500);
} else if (code == 500) {
this.$message.error(msg);
}
}
} catch (err) {
console.log(err);
}
},
// 获取详情
async getbiddingProjectId() {
let projectId = localStorage.getItem('projectId');
const { data, code, msg } = await biddingProjectId(projectId);
if (code == 200) {
for(let item of data.accessoryVOList){
item.url=item.accessoryUrl
item.name=item.fileName
}
this.ruleForm= data;
}
}
}
};
</script>
<style scoped>
.ql-editor {
height: 400px;
}
.bottomButton {
margin-top: 20px;
}
.form {
padding-bottom: 80px;
}
</style>
\ No newline at end of file
...@@ -44,26 +44,26 @@ ...@@ -44,26 +44,26 @@
<dataTable :table-data="review" :columns="reviewTitle" :is-index="true"> <dataTable :table-data="review" :columns="reviewTitle" :is-index="true">
<el-table-column slot="operate" label="资格审查" align="center" fixed="right"> <el-table-column slot="operate" label="资格审查" align="center" fixed="right">
<template slot-scope="scope"> <template slot-scope="scope">
<div v-if="scope.row.qualification == true">通过</div> <div v-if="scope.row.qualification">通过</div>
<div v-if="scope.row.qualification == false">未通过</div> <div v-if="!scope.row.qualification">未通过</div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column slot="operate" label="符合性审查" align="center" fixed="right"> <el-table-column slot="operate" label="符合性审查" align="center" fixed="right">
<template slot-scope="scope"> <template slot-scope="scope">
<div v-if="scope.row.conformity == true">通过</div> <div v-if="scope.row.conformity">通过</div>
<div v-if="scope.row.conformity == false">未通过</div> <div v-if="!scope.row.conformity">未通过</div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column slot="operate" label="手动废标" align="center" fixed="right"> <el-table-column slot="operate" label="手动废标" align="center" fixed="right">
<template slot-scope="scope"> <template slot-scope="scope">
<div v-if="scope.row.bidRejection == true">通过</div> <div v-if="scope.row.bidRejection">通过</div>
<div v-if="scope.row.bidRejection == false">未通过</div> <div v-if="!scope.row.bidRejection">未通过</div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column slot="operate" label="结论" align="center" fixed="right"> <el-table-column slot="operate" label="结论" align="center" fixed="right">
<template slot-scope="scope"> <template slot-scope="scope">
<div v-if="scope.row.conclusion == true">通过</div> <div v-if="scope.row.conclusion">通过</div>
<div v-if="scope.row.conclusion == false">未通过</div> <div v-if="!scope.row.conclusion">未通过</div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column slot="operate" label="操作" align="center" fixed="right"> <el-table-column slot="operate" label="操作" align="center" fixed="right">
...@@ -79,8 +79,8 @@ ...@@ -79,8 +79,8 @@
<dataTable :table-data="rank" :columns="rankTitle" :is-index="true"> <dataTable :table-data="rank" :columns="rankTitle" :is-index="true">
<el-table-column slot="operate" label="是否中标候选人" align="center" fixed="right"> <el-table-column slot="operate" label="是否中标候选人" align="center" fixed="right">
<template slot-scope="scope"> <template slot-scope="scope">
<div v-if="scope.row.winPerson == 'true'"></div> <div v-if="scope.row.winPerson"></div>
<div v-if="scope.row.winPerson == 'false'"></div> <div v-if="!scope.row.winPerson"></div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column slot="operate" label="排名" align="center" fixed="right"> <el-table-column slot="operate" label="排名" align="center" fixed="right">
...@@ -175,8 +175,8 @@ ...@@ -175,8 +175,8 @@
></el-input-number> ></el-input-number>
</el-form-item> </el-form-item>
<el-form-item label="是否中标候选人" prop="winPerson"> <el-form-item label="是否中标候选人" prop="winPerson">
<el-radio v-model="rankForm.winPerson" label="true"></el-radio> <el-radio v-model="rankForm.winPerson" :label="true"></el-radio>
<el-radio v-model="rankForm.winPerson" label="false"></el-radio> <el-radio v-model="rankForm.winPerson" :label="false"></el-radio>
</el-form-item> </el-form-item>
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
...@@ -596,13 +596,13 @@ export default { ...@@ -596,13 +596,13 @@ export default {
let projectId = localStorage.getItem('projectId'); let projectId = localStorage.getItem('projectId');
const { data, code } = await companyRank(projectId); const { data, code } = await companyRank(projectId);
if (code === 200) { if (code === 200) {
for(let item of data){ // for(let item of data){
if(item.winPerson){ // if(item.winPerson){
item.winPerson="true" // item.winPerson="true"
}else{ // }else{
item.winPerson="false" // item.winPerson="false"
} // }
} // }
let data1 = data.sort(this.compare('finalScore')); let data1 = data.sort(this.compare('finalScore'));
this.rank = data1; this.rank = data1;
} }
......
...@@ -41,7 +41,7 @@ ...@@ -41,7 +41,7 @@
} from '@api/purchaser/bid' } from '@api/purchaser/bid'
import dataBreadcrumb from '@components/dataBreadcrumb.vue' import dataBreadcrumb from '@components/dataBreadcrumb.vue'
import dataTable from '@components/dataTable.vue' import dataTable from '@components/dataTable.vue'
import singleUpload from '@components/Upload/singleUpload.vue' import singleUpload from '@components/Upload/Upload.vue'
export default { export default {
name: 'bidingList', name: 'bidingList',
components: { components: {
...@@ -132,9 +132,7 @@ ...@@ -132,9 +132,7 @@
<style scoped> <style scoped>
.message {
/* width:60%; */
}
.message>div { .message>div {
margin-bottom: 30px; margin-bottom: 30px;
......
...@@ -84,12 +84,8 @@ export default { ...@@ -84,12 +84,8 @@ export default {
} = await resultBookList(projectId) } = await resultBookList(projectId)
if (code === 200) { if (code === 200) {
for (let item of data) { for (let item of data) {
if (item.status == 0) { if (item.status == 1) {
item.state = "未审核" item.state = "已发送"
} else if (item.status == 1) {
item.state = "通过审核"
} else if (item.status == 2) {
item.state = "未通过审核"
} else if (item.status == -1) { } else if (item.status == -1) {
item.state = "暂存本地" item.state = "暂存本地"
} }
......
...@@ -150,6 +150,8 @@ ...@@ -150,6 +150,8 @@
setTimeout(() => { setTimeout(() => {
this.$router.go(-1) this.$router.go(-1)
}, 1500) }, 1500)
}else{
this.$message.error(msg);
} }
} catch (e) { } catch (e) {
console.log(e) console.log(e)
......
...@@ -71,22 +71,32 @@ ...@@ -71,22 +71,32 @@
<!-- 排名信息 --> <!-- 排名信息 -->
<div> <div>
<h5>排名信息</h5> <h5>排名信息</h5>
<dataTable :table-data="rank" :columns="rankTitle" :is-pageobj="false" :is-index="true"> </dataTable> <dataTable :table-data="rank" :columns="rankTitle" :is-pageobj="false" :is-index="true">
<el-table-column slot="operate" label="是否中标候选人" align="center" fixed="right">
<template slot-scope="scope">
<div v-if="scope.row.winPerson"></div>
<div v-if="!scope.row.winPerson"></div>
</template>
</el-table-column>
<el-table-column slot="operate" label="排名" align="center" fixed="right">
<template slot-scope="scope">
<div v-if="scope.row.finalScore">{{ scope.$index + 1 }}</div>
</template>
</el-table-column>
</dataTable>
</div> </div>
<div class="flex"> <div class="flex">
<div>评标附件:</div> <div>评标附件:</div>
<ul class="upload"> <ul class="upload">
<li class="flex"> <li class="flex" v-for="(item, index) in downloadList" :key="index">
<div>评价附件.pdf</div> <div>{{ item.fileName }}</div>
<button>下载</button> <button @click="down(item.fileUrl)">下载</button>
</li> </li>
</ul> </ul>
</div> </div>
<!-- <div class="button"> <div class="centerButton">
<el-button @click="back">返回</el-button> <el-button @click="back">返回</el-button>
<el-button @click="fail">流标</el-button> </div>
<el-button type="primary">评标结束</el-button>
</div> -->
</div> </div>
<!-- 开标一览表 --> <!-- 开标一览表 -->
<el-dialog title="开标一览表" :visible.sync="isOpenInfo"> <el-dialog title="开标一览表" :visible.sync="isOpenInfo">
...@@ -96,15 +106,19 @@ ...@@ -96,15 +106,19 @@
</div> </div>
</el-dialog> </el-dialog>
</div> </div>
<div class="bottomButton">
<el-button @click="back">返回</el-button>
<el-button type="primary" v-if="ruleForm.auditStatus == 2" @click="submitData">提交</el-button>
</div>
</div> </div>
</template> </template>
<script> <script>
import { companyRank, CompanyEvaluatec, bidBookDownload, openInfo ,accessorydownload,bidFilelist,changeNoticelist} from '@api/purchaser/bid'; import {
companyRank,
CompanyEvaluatec,
bidBookDownload,
openInfo,
accessorydownload,
bidFilelist,
changeNoticelist
} from '@api/purchaser/bid';
import dataTable from '@components/nopageTable.vue'; import dataTable from '@components/nopageTable.vue';
import dataBreadcrumb from '@components/dataBreadcrumb.vue'; import dataBreadcrumb from '@components/dataBreadcrumb.vue';
export default { export default {
...@@ -114,6 +128,7 @@ export default { ...@@ -114,6 +128,7 @@ export default {
}, },
data() { data() {
return { return {
changeList: [],
isOpenInfo: false, isOpenInfo: false,
tableData: [], tableData: [],
nopagecolumns: [ nopagecolumns: [
...@@ -157,10 +172,6 @@ export default { ...@@ -157,10 +172,6 @@ export default {
label: '评标价(元)', label: '评标价(元)',
prop: 'evaluationPrice' prop: 'evaluationPrice'
}, },
{
label: '排名',
prop: 'rank'
},
{ {
label: '最终得分', label: '最终得分',
prop: 'finalScore' prop: 'finalScore'
...@@ -173,7 +184,7 @@ export default { ...@@ -173,7 +184,7 @@ export default {
bidTitle: [ bidTitle: [
{ {
label: '投标人', label: '投标人',
prop: 'name' prop: 'companyName'
}, },
{ {
slot: 'operate' slot: 'operate'
...@@ -202,8 +213,14 @@ export default { ...@@ -202,8 +213,14 @@ export default {
this.getcompanyRank(); this.getcompanyRank();
this.getCompanyEvaluatec(); this.getCompanyEvaluatec();
this.getbidBookDownload(); this.getbidBookDownload();
this.getchangeNoticelist();
this.getaccessorydownload();
this.getbidFilelist()
}, },
methods: { methods: {
down(url) {
window.open(url);
},
back() { back() {
this.$router.go(-1); this.$router.go(-1);
}, },
...@@ -289,53 +306,43 @@ export default { ...@@ -289,53 +306,43 @@ export default {
} }
}, },
// 查看评标附件 // 查看评标附件
async getaccessorydownload() { async getaccessorydownload() {
let projectId = localStorage.getItem("projectId"); let projectId = localStorage.getItem('projectId');
const { const { data, code } = await accessorydownload(projectId);
data, if (code === 200) {
code this.downloadList = data;
} = await accessorydownload(projectId) }
if (code === 200) { },
this.downloadList = data // 查看投标文件
} async getbidFilelist() {
}, let projectId = localStorage.getItem('projectId');
// 查看投标文件 const { data, code } = await bidFilelist(projectId);
async getbidFilelist() { if (code === 200) {
let projectId = localStorage.getItem("projectId"); this.bids = data;
const { }
data, },
code // 查看变更信息
} = await bidFilelist(projectId) async getchangeNoticelist() {
if (code === 200) { let projectId = localStorage.getItem('projectId');
this.bids = data const { data, code } = await changeNoticelist(projectId);
} if (code === 200) {
}, this.changeList = data;
// 查看变更信息 }
async getchangeNoticelist() { }
let projectId = localStorage.getItem("projectId");
const {
data,
code
} = await changeNoticelist(projectId)
if (code === 200) {
this.changeList = data;
}
},
// //
} }
}; };
</script> </script>
<style scoped> <style scoped>
.bond span{ .bond span {
cursor:pointer; cursor: pointer;
} }
.file>div{ .file > div {
margin-right: 10px; margin-right: 10px;
color: #113DEE; color: #113dee;
cursor:pointer; cursor: pointer;
}
}
.message { .message {
margin-left: 50px; margin-left: 50px;
......
...@@ -85,13 +85,9 @@ ...@@ -85,13 +85,9 @@
} = await sentBookList(projectId) } = await sentBookList(projectId)
if (code === 200) { if (code === 200) {
for (let item of data) { for (let item of data) {
if (item.status == 0) { if (item.status == 1) {
item.state = "未审核" item.state = "已发送"
} else if (item.status == 1) { } else if (item.status == -1) {
item.state = "通过审核"
} else if (item.status == 2) {
item.state = "未通过审核"
} else if (item.status == -1) {
item.state = "暂存本地" item.state = "暂存本地"
} }
} }
......
<template> <template>
<div class="info"> <div class="info">
<div class="content"> <div class="content">
<div class="title_info"> <editTenderAnnouncement v-if="auditStatus == 2"></editTenderAnnouncement>
<dataBreadcrumb :breads="breads"></dataBreadcrumb> <div v-if="auditStatus == 0||auditStatus == 1">
</div> <div class="title_info">
<div class="info_box"> <dataBreadcrumb :breads="breads"></dataBreadcrumb>
<noticeDetail></noticeDetail> </div>
<el-row> <div class="info_box">
<el-button @click="back">返回</el-button> <noticeDetail @getstate="getstate"></noticeDetail>
</el-row> <el-row>
</div> <el-button @click="back">返回</el-button>
</el-row>
</div>
</div>
</div>
</div> </div>
</div>
</template> </template>
<script> <script>
import noticeDetail from '@components/detail/noticeDetail.vue' import noticeDetail from '@components/detail/noticeDetail.vue';
import dataBreadcrumb from '@components/dataBreadcrumb.vue' import editTenderAnnouncement from '@components/edit/editTenderAnnouncement.vue';
import dataBreadcrumb from '@components/dataBreadcrumb.vue';
export default { export default {
components: { components: {
dataBreadcrumb, dataBreadcrumb,
noticeDetail noticeDetail,
}, editTenderAnnouncement
data() { },
return { data() {
breads: ['投标管理', '在线报名', '招标公告'], return {
breads: ['投标管理', '在线报名', '招标公告'],
auditStatus: ''
};
},
methods: {
getstate(val) {
this.auditStatus = val;
},
back() {
this.$router.go(-1);
}
} }
}, };
methods: {
back() {
this.$router.go(-1)
},
},
}
</script> </script>
<style scoped> <style scoped>
.info { .info {
box-sizing: border-box; box-sizing: border-box;
padding: 30px; padding: 30px;
background: rgb(240, 242, 245); background: rgb(240, 242, 245);
width: 100%; width: 100%;
} }
.info>.info_prev { .info > .info_prev {
box-sizing: border-box; box-sizing: border-box;
padding-left: 30px; padding-left: 30px;
padding-top: 30px; padding-top: 30px;
background: #fff; background: #fff;
} }
.content_list { .content_list {
margin-top: 50px; margin-top: 50px;
} }
.content_list h3 {
margin-top: 30px;
font-weight: bold;
padding-bottom: 10px;
}
.content_list p { .content_list h3 {
margin-top: 10px; margin-top: 30px;
margin-bottom: 10px; font-weight: bold;
} padding-bottom: 10px;
}
.content_list p {
.message>p{ margin-top: 10px;
font-weight: bold; margin-bottom: 10px;
} }
.el-row {
display: flex; .message > p {
justify-content: center; font-weight: bold;
margin-top: 50px; }
.el-row {
} display: flex;
justify-content: center;
margin-top: 50px;
}
</style> </style>
...@@ -24,8 +24,8 @@ ...@@ -24,8 +24,8 @@
<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="voucherSign(scope.row)" 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)" 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>
</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(`/purchaser/buyOut/voucherSee?projectId=${row.projectId}&companyId=${row.bidCompanyId}`)
}, },
voucherSign(id) { voucherSign(row) {
this.$router.push(`/purchaser/buyOut/voucherSign?id=${id}`) this.$router.push(`/purchaser/buyOut/voucherSign?projectId=${row.projectId}&companyId=${row.bidCompanyId}`)
}, },
async getDropList() { async getDropList() {
const { const {
......
...@@ -31,7 +31,8 @@ export default { ...@@ -31,7 +31,8 @@ export default {
data() { data() {
return { return {
breads: ['应收账款买断管理', '应收账款买断列表'], breads: ['应收账款买断管理', '应收账款买断列表'],
id: '', projectId: '',
companyId: '',
imgList:[], imgList:[],
srcList:[] srcList:[]
}; };
...@@ -43,8 +44,8 @@ export default { ...@@ -43,8 +44,8 @@ export default {
// 查看详情 // 查看详情
async getevidenceDetail() { async getevidenceDetail() {
let message = {}; let message = {};
message.projectId = this.id; message.projectId = this.projectId
message.companyId = localStorage.getItem('companyId'); message.companyId = this.companyId
const { data, code, msg } = await evidenceDetail(message); const { data, code, msg } = await evidenceDetail(message);
if (code == 200) { if (code == 200) {
this.imgList = data; this.imgList = data;
...@@ -57,7 +58,8 @@ export default { ...@@ -57,7 +58,8 @@ export default {
} }
}, },
created() { created() {
this.id = this.$route.query.id; this.projectId = this.$route.query.projectId;
this.companyId = this.$route.query.companyId;
this.getevidenceDetail(); this.getevidenceDetail();
} }
}; };
......
<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" style="margin-top: 50px">
<div>下载合同:</div> <div>查看图片:</div>
<ul> <div class="img-list flex">
<li class="flex-item"> <div v-for="(item, index) in imgList" :key="index">
<div>{{detail.fileName}}f</div> <el-image :src="item" :preview-src-list="srcList" style="width: 100px; height: 100px"> </el-image>
<!-- <el-button size="mini">下载</el-button> --> </div>
<a :href="detail.fileUrl">下载</a> </div>
</li> </div>
</ul> <div class="backButton">
</div> <el-button @click="back">返回</el-button>
<div class="flex" style="margin-top: 50px;"> <el-button @click="submitData()">确认</el-button>
<div>查看图片:</div> </div>
<div class="img-list flex"> </div>
<div v-for="(item,index) in imgList" :key="index"> </div>
<el-image :src="item" :preview-src-list="srcList" style="width: 100px; height: 100px">
</el-image>
</div>
</div>
</div>
<div class="backButton">
<el-button @click="back">返回</el-button>
<el-button @click="submitData()">确认</el-button>
</div>
</div>
</div>
</template> </template>
<script> <script>
import { import { confirmvoucher, evidenceDetail } from '@api/purchaser/buyOut';
confirmvoucher, import dataBreadcrumb from '@components/dataBreadcrumb.vue';
evidenceDetail export default {
} from '@api/purchaser/buyOut' components: {
import dataBreadcrumb from '@components/dataBreadcrumb.vue' dataBreadcrumb
export default { },
components: { data() {
dataBreadcrumb return {
}, breads: ['应收账款买断管理', '应收账款买断列表'],
data() { projectId: '',
return { companyId: '',
imgList: ['https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg', imgList: [],
'https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg' srcList: []
], };
breads: ['应收账款买断管理', '应收账款买断列表'], },
srcList: [ created() {
'https://fuss10.elemecdn.com/8/27/f01c15bb73e1ef3793e64e6b7bbccjpeg.jpeg', this.getevidenceDetail();
'https://fuss10.elemecdn.com/1/8e/aeffeb4de74e2fde4bd74fc7b4486jpeg.jpeg' },
], methods: {
id:"", back() {
detail:"" this.$router.go(-1);
} },
}, // 查看详情
created() { async getevidenceDetail() {
this.getevidenceDetail() let message = {};
}, message.projectId = this.projectId;
methods: { message.companyId = this.companyId;
back() { const { data, code } = await evidenceDetail(message);
this.$router.go(-1) if (code == 200) {
}, this.imgList = data;
// 查看详情 for (let item of data) {
async getevidenceDetail() { this.srcList.push(item.fileUrl);
let message={} }
message.projectId = this.id } else {
message.companyId =localStorage.getItem("companyId") this.$message.error(msg);
const { }
data, },
code // 提出
} = await evidenceDetail(message) async submitData() {
if (code == 200) { try {
this.detail = data let projectId = this.projectId;
} const { msg, code } = await confirmvoucher(projectId);
}, if (code == 200) {
// 提出 this.$message({
async submitData() { message: msg,
try { type: 'success',
let projectId = this.id duration: 1500
const { });
msg, setTimeout(() => {
code this.$router.go(-1);
} = await confirmvoucher(projectId) }, 1500);
if (code == 200) { } else {
this.$message({ this.$message.error(msg);
message: msg, }
type: 'success', } catch (e) {
duration: 1500 console.log(e);
}) }
setTimeout(() => { }
this.$router.go(-1) },
}, 1500) created() {
this.projectId = this.$route.query.projectId;
}else{ this.companyId = this.$route.query.companyId;
this.$message.error(msg) this.getevidenceDetail();
} }
} catch (e) { };
console.log(e)
}
},
},
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: 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-arround"> <div class="flex-arround">
<div>项目编号:{{projectCode}}</div> <div>项目编号:{{ projectCode }}</div>
<div>项目名称:{{projectName}}</div> <div>项目名称:{{ projectName }}</div>
<div v-if="state">发布时间:{{detail.createTime}}</div> <div v-if="state">发布时间:{{ detail.createTime }}</div>
</div> </div>
<div class='detail1' v-if="state"> <div class="detail1" v-if="state">
<div v-html="detail.content"></div> <div v-html="detail.content"></div>
<div class="enclosure" v-if="detail.accessoryDOList"> <div class="enclosure flex-item">
<ul> <div style="margin-right: 30px">相关附件</div>
<li v-for="(item,i) in detail.accessoryDOList" :key="i"> <ul v-if="detail.accessoryDOList.length>0">
<a href="item.accessoryUrl">item.fileName</a> <li v-for="(item, i) in detail.accessoryDOList" :key="i">
</li> <a href="item.accessoryUrl">{{ item.fileName }}</a>
</ul> </li>
</div> </ul>
<div class="enclosure">相关附件:空</div> <div v-else></div>
</div> </div>
<div v-else class="detail1"> </div>
未找到该公告详情! <div v-else class="detail1">未找到该公告详情!</div>
</div> <div class="centerButton">
<div class="centerButton"> <el-button @click="back">返回</el-button>
<el-button @click="back">返回</el-button> </div>
</div> </div>
</div> </div>
</div>
</template> </template>
<script> <script>
import { import { noticeWin } from '@api/supply/bid';
noticeWin import dataBreadcrumb from '@components/dataBreadcrumb.vue';
} from '@api/supply/bid' export default {
import dataBreadcrumb from '@components/dataBreadcrumb.vue' components: {
export default { dataBreadcrumb
components: { },
dataBreadcrumb data() {
}, return {
data() { breads: ['投标管理 ', '我参加的项目', '工作台'],
return { projectCode: '',
breads: ['投标管理 ', '我参加的项目', '工作台'], projectName: '',
projectCode: "", state: true,
projectName: "", detail: ''
state: true, };
detail: "" },
} methods: {
}, back() {
methods: { this.$router.go(-1);
back() { },
this.$router.go(-1) async getnoticeWin() {
}, try {
async getnoticeWin() { let projectId = localStorage.getItem('projectId');
try { const { data, code } = await noticeWin(projectId);
let projectId = localStorage.getItem("projectId") if (code == 200) {
const { console.log(data);
data, this.detail = data;
code } else {
} = await noticeWin(projectId) this.state = false;
if (code == 200) { }
console.log(data) } catch (err) {
this.detail = data console.log(err);
} else { }
this.state = false }
} },
} catch (err) { created() {
console.log(err) this.projectCode = localStorage.getItem('projectCode');
} this.projectName = localStorage.getItem('projectName');
} this.getnoticeWin();
}, }
created() { };
this.projectCode = localStorage.getItem("projectCode")
this.projectName = localStorage.getItem("projectName")
this.getnoticeWin()
}
}
</script> </script>
<style scoped> <style scoped>
.detail1 { .detail1 {
background: #fff; background: #fff;
margin-top: 30px;
}
.content>h1 { margin-top: 30px;
text-align: center; }
margin-top: 20px;
margin-bottom: 40px;
font-weight: bold;
}
.content>.img { .content > h1 {
width: 600px; text-align: center;
margin: 0 auto margin-top: 20px;
} margin-bottom: 40px;
font-weight: bold;
}
.enclosure { .content > .img {
margin: 50px 0; width: 600px;
} margin: 0 auto;
}
.enclosure {
margin: 50px 0;
}
</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