Commit 13d54973 authored by 张冬's avatar 张冬

保证金,标书费查看编辑

parent 6b1656ac
...@@ -167,6 +167,7 @@ export default { ...@@ -167,6 +167,7 @@ export default {
let form = this.form; let form = this.form;
form.aduit = 2; form.aduit = 2;
form.id = this.feeId; form.id = this.feeId;
form.projectId = localStorage.getItem("projectId")
const { code, msg } = await aduit(form); const { code, msg } = await aduit(form);
if (code === 200) { if (code === 200) {
this.$message({ this.$message({
...@@ -191,6 +192,7 @@ export default { ...@@ -191,6 +192,7 @@ export default {
let form = {}; let form = {};
form.aduit = 1; form.aduit = 1;
form.id = this.feeId; form.id = this.feeId;
form.projectId = localStorage.getItem("projectId")
const { code, msg } = await aduit(form); const { code, msg } = await aduit(form);
if (code === 200) { if (code === 200) {
this.$message({ this.$message({
......
...@@ -198,6 +198,7 @@ export default { ...@@ -198,6 +198,7 @@ export default {
let form = this.form; let form = this.form;
form.aduit = 2; form.aduit = 2;
form.id = this.feeId; form.id = this.feeId;
form.projectId = localStorage.getItem("projectId")
const { code, msg } = await operationAduit(form); const { code, msg } = await operationAduit(form);
if (code === 200) { if (code === 200) {
this.$message({ this.$message({
...@@ -222,6 +223,7 @@ export default { ...@@ -222,6 +223,7 @@ export default {
let form = {}; let form = {};
form.aduit = 1; form.aduit = 1;
form.id = this.feeId; form.id = this.feeId;
form.projectId = localStorage.getItem("projectId")
const { code, msg } = await operationAduit(form); const { code, msg } = await operationAduit(form);
if (code === 200) { if (code === 200) {
this.$message({ this.$message({
......
...@@ -114,7 +114,7 @@ export default { ...@@ -114,7 +114,7 @@ export default {
type: 'date', type: 'date',
required: true, required: true,
message: '请选择时间', message: '请选择时间',
trigger: 'blur' trigger: 'change'
}, },
{ {
validator: checkTime validator: checkTime
...@@ -125,7 +125,7 @@ export default { ...@@ -125,7 +125,7 @@ export default {
type: 'date', type: 'date',
required: true, required: true,
message: '请选择时间', message: '请选择时间',
trigger: 'blur' trigger: 'change'
}, },
{ {
validator: checkTime1 validator: checkTime1
...@@ -136,7 +136,7 @@ export default { ...@@ -136,7 +136,7 @@ export default {
type: 'date', type: 'date',
required: true, required: true,
message: '请选择时间', message: '请选择时间',
trigger: 'blur' trigger: 'change'
}, },
{ {
validator: checkTime2 validator: checkTime2
...@@ -147,7 +147,7 @@ export default { ...@@ -147,7 +147,7 @@ export default {
type: 'date', type: 'date',
required: true, required: true,
message: '请选择时间', message: '请选择时间',
trigger: 'blur' trigger: 'change'
}, },
{ {
validator: checkTime3 validator: checkTime3
...@@ -158,7 +158,7 @@ export default { ...@@ -158,7 +158,7 @@ export default {
type: 'date', type: 'date',
required: true, required: true,
message: '请选择时间', message: '请选择时间',
trigger: 'blur' trigger: 'change'
}, },
{ {
validator: checkTime4 validator: checkTime4
......
...@@ -64,7 +64,7 @@ export default { ...@@ -64,7 +64,7 @@ export default {
{ {
id: 3, id: 3,
label: '项目信息', label: '项目信息',
url: '/purchaser/bid/bidStage/projectInformation', url: '/purchaser/bid/seeProject',
bright: false bright: false
}, },
{ {
......
<template> <template>
<div> <div>
<div class="content-head"> <div class="content-head">
<dataBreadcrumb :breads="breads"></dataBreadcrumb> <dataBreadcrumb :breads="breads"></dataBreadcrumb>
<h3>提交</h3> <h3>{{ type == 1 ? '编辑' : '提交' }}</h3>
<h5>提交保证金缴纳信息</h5> <h5>{{ type == 1 ? '编辑' : '提交' }}保证金缴纳信息</h5>
</div> <div class="abs">
<div class="othercontent"> <div v-if="type == 1">拒绝原因:{{ ruleForm.reason }}</div>
<el-form ref="ruleForm" :model="ruleForm" :rules="formrules" label-width="200px" class="demo-ruleForm"> </div>
<div class="message"> </div>
<div> <div class="othercontent">
<div class="describe">单位信息</div> <el-form ref="ruleForm" :model="ruleForm" :rules="formrules" label-width="200px" class="demo-ruleForm">
<div class="message-form"> <div class="message">
<div> <div>
<el-form-item label="单位名称" prop="companyName"> <div class="describe">单位信息</div>
<el-input v-model="ruleForm.companyName" disabled></el-input> <div class="message-form">
</el-form-item> <div>
</div> <el-form-item label="单位名称" prop="companyName">
<div class="flex-between"> <el-input v-model="ruleForm.companyName" disabled></el-input>
<el-form-item label="联系人:" prop="contacts"> </el-form-item>
<el-input v-model="ruleForm.contacts" placeholder="请输入" maxlength="30"></el-input> </div>
</el-form-item> <div class="flex-between">
<el-form-item label="固定电话:" prop="companyTel"> <el-form-item label="联系人:" prop="contacts">
<el-input v-model="ruleForm.companyTel" placeholder="请输入" maxlength="30"></el-input> <el-input v-model="ruleForm.contacts" placeholder="请输入" maxlength="30"></el-input>
</el-form-item> </el-form-item>
</div> <el-form-item label="固定电话:" prop="companyTel">
<div class="flex-between"> <el-input v-model="ruleForm.companyTel" placeholder="请输入" maxlength="30"></el-input>
<el-form-item label="手机:" prop="companyPhone"> </el-form-item>
<el-input v-model="ruleForm.companyPhone" placeholder="请输入" maxlength="30"></el-input> </div>
</el-form-item> <div class="flex-between">
<el-form-item label="传真:" prop="companyFacsimile"> <el-form-item label="手机:" prop="companyPhone">
<el-input v-model="ruleForm.companyFacsimile" placeholder="请输入" maxlength="30"></el-input> <el-input v-model="ruleForm.companyPhone" placeholder="请输入" maxlength="30"></el-input>
</el-form-item> </el-form-item>
</div> <el-form-item label="传真:" prop="companyFacsimile">
<div> <el-input v-model="ruleForm.companyFacsimile" placeholder="请输入" maxlength="30"></el-input>
<el-form-item label="邮箱:" prop="companyEmail"> </el-form-item>
<el-input v-model="ruleForm.companyEmail" placeholder="请输入" maxlength="30"></el-input> </div>
</el-form-item> <div>
</div> <el-form-item label="邮箱:" prop="companyEmail">
</div> <el-input v-model="ruleForm.companyEmail" placeholder="请输入" maxlength="30"></el-input>
</div> </el-form-item>
<div> </div>
<div class="describe">邮寄信息</div> </div>
<div class="message-form"> </div>
<div class="flex-between"> <div>
<el-form-item label="收件人名称:"> <div class="describe">邮寄信息</div>
<el-input v-model="ruleForm.recipientsName" placeholder="请输入" maxlength="30"></el-input> <div class="message-form">
</el-form-item> <div class="flex-between">
<el-form-item label="收件人单位:"> <el-form-item label="收件人名称:">
<el-input v-model="ruleForm.recipientsCompany" placeholder="请输入" maxlength="30"></el-input> <el-input v-model="ruleForm.recipientsName" placeholder="请输入" maxlength="30"></el-input>
</el-form-item> </el-form-item>
</div> <el-form-item label="收件人单位:">
<div class="flex-between"> <el-input v-model="ruleForm.recipientsCompany" placeholder="请输入" maxlength="30"></el-input>
<el-form-item label="联系方式:"> </el-form-item>
<el-input v-model="ruleForm.recipientsPhone" placeholder="请输入" maxlength="30"></el-input> </div>
</el-form-item> <div class="flex-between">
<el-form-item label="邮政编码:"> <el-form-item label="联系方式:">
<el-input v-model="ruleForm.recipientsMail" placeholder="请输入" maxlength="10"></el-input> <el-input v-model="ruleForm.recipientsPhone" placeholder="请输入" maxlength="30"></el-input>
</el-form-item> </el-form-item>
</div> <el-form-item label="邮政编码:">
<div> <el-input v-model="ruleForm.recipientsMail" placeholder="请输入" maxlength="10"></el-input>
<el-form-item label="邮寄地址:"> </el-form-item>
<el-input v-model="ruleForm.recipientsAddress " placeholder="请输入" maxlength="30"></el-input> </div>
</el-form-item> <div>
</div> <el-form-item label="邮寄地址:">
</div> <el-input v-model="ruleForm.recipientsAddress" placeholder="请输入" maxlength="30"></el-input>
</div> </el-form-item>
<div> </div>
<div class="describe">缴费信息</div> </div>
<div class="message-form"> </div>
<el-form-item label="付款方式:" prop="feeWay"> <div>
<el-input v-model="ruleForm.feeWay" placeholder="请输入" maxlength="30"> <div class="describe">缴费信息</div>
</el-input> <div class="message-form">
</el-form-item> <el-form-item label="付款方式:" prop="feeWay">
<el-form-item label="备注:" prop="remark"> <el-input v-model="ruleForm.feeWay" placeholder="请输入" maxlength="30"> </el-input>
<el-input :rows="5" v-model="ruleForm.remark" type="textarea" placeholder="请输入内容" maxlength="300"> </el-form-item>
</el-input> <el-form-item label="备注:" prop="remark">
</el-form-item> <el-input :rows="5" v-model="ruleForm.remark" type="textarea" placeholder="请输入内容" maxlength="300">
<el-form-item label="上传缴费凭证:" prop="voucherList"> </el-input>
<Upload :limit="5" :max="5" tip="完成上传5份文件,每份不超过10M" @input="getfile"></Upload> </el-form-item>
</el-form-item> <el-form-item label="上传缴费凭证:" prop="voucherList">
</div> <Upload :limit="5" :max="5" tip="完成上传5份文件,每份不超过10M" @input="getfile" :fileList="ruleForm.voucherList"></Upload>
</div> </el-form-item>
</div> </div>
</el-form> </div>
</div> </div>
<div class="bottomButton"> </el-form>
<el-button @click="back">取消</el-button> </div>
<el-button type="primary" @click="submitData">提交</el-button> <div class="bottomButton">
</div> <el-button @click="back">取消</el-button>
</div> <el-button type="primary" @click="submitData">提交</el-button>
</div>
</div>
</template> </template>
<script> <script>
import { import { bidderEarnestpayment, earnestDetail, earnestEdit } from '@api/supply/bid';
bidderEarnestpayment import dataBreadcrumb from '@components/dataBreadcrumb.vue';
} from '@api/supply/bid' import Upload from '@components/Upload/Upload.vue';
import dataBreadcrumb from '@components/dataBreadcrumb.vue' export default {
import Upload from '@components/Upload/Upload.vue' components: {
export default { dataBreadcrumb,
components: { Upload
dataBreadcrumb, },
Upload data() {
}, let checkPhone = async (rule, value, callback) => {
data() { if (!value) {
let checkPhone = async (rule, value, callback) => { return callback(new Error('手机号不能为空'));
if (!value) { } else {
return callback(new Error('手机号不能为空')); const reg = /^1[3|4|5|7|8][0-9]\d{8}$/;
} else { console.log(reg.test(value));
const reg = /^1[3|4|5|7|8][0-9]\d{8}$/ if (reg.test(value)) {
console.log(reg.test(value)); callback();
if (reg.test(value)) { } else {
callback(); return callback(new Error('请输入正确的手机号'));
} else { }
return callback(new Error('请输入正确的手机号')); }
} };
} // 测试图片
}; let checkimg = (rule, value, callback) => {
// 测试图片 if (this.ruleForm.voucherList.length === 0) {
let checkimg = (rule, value, callback) => { callback(new Error('请上传凭证'));
if (this.ruleForm.voucherList.length === 0) { } else {
callback(new Error('请上传凭证')); callback();
} else { }
callback(); };
} return {
}; type: '',
return { breads: ['招标管理', '招标项目管理', '工作台'],
breads: ['招标管理', '招标项目管理', '工作台'], ruleForm: {
ruleForm: { companyName: '',
companyName: '', companyTel: '',
companyTel: '', companyPhone: '',
companyPhone: '', companyFacsimile: '',
companyFacsimile: '', recipientsName: '',
recipientsName: "", recipientsCompany: '',
recipientsCompany: "", recipientsPhone: '',
recipientsPhone: "", recipientsMail: '',
recipientsMail: "", recipientsAddress: '',
recipientsAddress: "", feeWay: '',
feeWay: '', remark: '',
remark: "", companyEmail: '',
companyEmail: "", voucherList: [],
voucherList: [], contacts: ''
contacts:"" },
}, formrules: {
formrules: { companyName: [
companyName: [{ {
required: true, required: true,
message: '请输入', message: '请输入',
trigger: 'blur' trigger: 'blur'
}], }
companyPhone: [{ ],
required: true, companyPhone: [
validator: checkPhone, {
trigger: 'blur' required: true,
}], validator: checkPhone,
trigger: 'blur'
feeWay: [{ }
required: true, ],
message: '请输入',
trigger: 'blur' feeWay: [
}], {
voucherList: [{ required: true,
required: true, message: '请输入',
validator: checkimg, trigger: 'blur'
trigger: 'blur' }
}] ],
} voucherList: [
} {
}, required: true,
methods: { validator: checkimg,
getfile(val) { trigger: 'blur'
this.ruleForm.voucherList= val }
}, ]
back(){ }
this.$router.go(-1) };
}, },
async submitData() { methods: {
try { getfile(val) {
const valid = await this.$refs['ruleForm'].validate() this.ruleForm.voucherList = val;
if (valid) { },
let message = this.ruleForm back() {
message.companyId =localStorage.getItem("companyId") this.$router.go(-1);
message.projectId =localStorage.getItem("projectId") },
const { async submitData() {
code, try {
msg const valid = await this.$refs['ruleForm'].validate();
} = await bidderEarnestpayment(message) if (valid) {
if (code ==200) { let message = this.ruleForm;
this.$message({ message.companyId = localStorage.getItem('companyId');
message: msg, message.projectId = localStorage.getItem('projectId');
type: 'success', let type = this.type;
duration: 1500 if (type == 1) {
}) var { code, msg } = await earnestEdit(message);
setTimeout(() => { } else {
this.$router.go(-1) var { code, msg } = await bidderEarnestpayment(message);
}, 1500) }
}else{
this.$message.error(msg) if (code == 200) {
} this.$message({
} message: msg,
} catch (e) { type: 'success',
console.log(e) duration: 1500
} });
} setTimeout(() => {
}, this.$router.go(-1);
created() { }, 1500);
this.ruleForm.companyName = JSON.parse(localStorage.getItem("userInfo")).companyName } else {
} this.$message.error(msg);
} }
}
} catch (e) {
console.log(e);
}
},
async getearnestDetail() {
let projectId = localStorage.getItem('projectId');
try {
const { data, code } = await earnestDetail(projectId);
if (code == 200) {
data.companyName = JSON.parse(localStorage.getItem('userInfo')).companyName;
for (let item of data.voucherList) {
item.name = item.fileName;
item.url = item.fileUrl;
}
this.ruleForm = data;
}
} catch (e) {
console.log(e);
}
}
},
created() {
let type = this.$route.query.type;
this.type = type;
if (type == 1) {
this.getearnestDetail();
} else {
this.ruleForm.companyName = JSON.parse(localStorage.getItem('userInfo')).companyName;
}
}
};
</script> </script>
<style scoped> <style scoped>
.message {} .message {
}
.message>div { .message > div {
background: #fff; background: #fff;
margin-bottom: 20px; margin-bottom: 20px;
padding-bottom: 20px; padding-bottom: 20px;
} }
.message-form { .message-form {
width: 70%; width: 70%;
margin: 0 auto margin: 0 auto;
} }
</style> </style>
\ No newline at end of file
...@@ -2,12 +2,8 @@ ...@@ -2,12 +2,8 @@
<div> <div>
<div class="content-head"> <div class="content-head">
<dataBreadcrumb :breads="breads"></dataBreadcrumb> <dataBreadcrumb :breads="breads"></dataBreadcrumb>
<h3>{{ title }}</h3> <h3>查看</h3>
<h5>{{ title }}保证金缴费信息</h5> <h5>查看保证金缴费信息</h5>
<div class="flex state">
<div style="margin-right: 30px">状态:{{ state }}</div>
<div v-if="ruleForm.reason">拒绝原因:{{ ruleForm.reason }}</div>
</div>
</div> </div>
<div class="othercontent"> <div class="othercontent">
<el-form ref="ruleForm" :model="ruleForm" label-width="200px" class="demo-ruleForm" :rules="formrules"> <el-form ref="ruleForm" :model="ruleForm" label-width="200px" class="demo-ruleForm" :rules="formrules">
...@@ -80,16 +76,7 @@ ...@@ -80,16 +76,7 @@
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item label="上传缴费凭证:" prop="voucherList"> <el-form-item label="上传缴费凭证:" prop="voucherList">
<div v-if="ruleForm.auditStatus == 2"> <ul>
<Upload
:limit="5"
:max="10"
tip="完成上传5份文件,每份不超过10M"
:fileList="ruleForm.voucherList"
@input="getfile"
></Upload>
</div>
<ul v-else>
<li v-for="(item, index) in ruleForm.voucherList" :key="index"> <li v-for="(item, index) in ruleForm.voucherList" :key="index">
<a :href="item.fileUrl">{{ item.fileName }}</a> <a :href="item.fileUrl">{{ item.fileName }}</a>
</li> </li>
...@@ -102,13 +89,12 @@ ...@@ -102,13 +89,12 @@
</div> </div>
<div class="bottomButton"> <div class="bottomButton">
<el-button @click="back">返回</el-button> <el-button @click="back">返回</el-button>
<el-button type="primary" v-if="ruleForm.auditStatus == 2" @click="submitData">提交</el-button>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
import { earnestDetail, earnestEdit } from '@api/supply/bid'; import { earnestDetail } from '@api/supply/bid';
import dataBreadcrumb from '@components/dataBreadcrumb.vue'; import dataBreadcrumb from '@components/dataBreadcrumb.vue';
import Upload from '@components/Upload/Upload.vue'; import Upload from '@components/Upload/Upload.vue';
export default { export default {
...@@ -140,7 +126,6 @@ export default { ...@@ -140,7 +126,6 @@ export default {
}; };
return { return {
isdisabled: true, isdisabled: true,
title: '查看',
state: '', state: '',
breads: ['招标管理', '招标项目管理', '工作台'], breads: ['招标管理', '招标项目管理', '工作台'],
ruleForm: {}, ruleForm: {},
...@@ -188,15 +173,8 @@ export default { ...@@ -188,15 +173,8 @@ export default {
let projectId = localStorage.getItem('projectId'); let projectId = localStorage.getItem('projectId');
try { try {
const { data, code } = await earnestDetail(projectId); const { data, code } = await earnestDetail(projectId);
data.companyName = JSON.parse(localStorage.getItem('userInfo')).companyName;
if (code == 200) { if (code == 200) {
if (data.auditStatus == 2) {
this.isdisabled = false;
(this.title = '编辑'), (this.state = '审核拒绝');
} else if (data.auditStatus == 1) {
this.state = '审核通过';
} else {
this.state = '未审核';
}
for (let item of data.voucherList) { for (let item of data.voucherList) {
item.name = item.fileName; item.name = item.fileName;
item.url = item.fileUrl; item.url = item.fileUrl;
...@@ -207,31 +185,6 @@ export default { ...@@ -207,31 +185,6 @@ export default {
console.log(e); console.log(e);
} }
}, },
async submitData() {
try {
const valid = await this.$refs['ruleForm'].validate();
if (valid) {
let message = this.ruleForm;
message.companyId = localStorage.getItem('companyId');
message.projectId = localStorage.getItem('projectId');
const { code, msg } = await earnestEdit(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) {
console.log(e);
}
}
}, },
created() { created() {
this.getearnestDetail(); this.getearnestDetail();
......
...@@ -4,10 +4,6 @@ ...@@ -4,10 +4,6 @@
<dataBreadcrumb :breads="breads"></dataBreadcrumb> <dataBreadcrumb :breads="breads"></dataBreadcrumb>
<h3>{{ title }}</h3> <h3>{{ title }}</h3>
<h5>{{ title }}购标信息、邮寄信息、发票信息、缴费信息</h5> <h5>{{ title }}购标信息、邮寄信息、发票信息、缴费信息</h5>
<div class="flex state">
<div style="margin-right: 30px">状态:{{ state }}</div>
<div v-if="ruleForm.reason">拒绝原因:{{ ruleForm.reason }}</div>
</div>
</div> </div>
<div class="othercontent"> <div class="othercontent">
<el-form ref="ruleForm" :model="ruleForm" label-width="200px" class="demo-ruleForm"> <el-form ref="ruleForm" :model="ruleForm" label-width="200px" class="demo-ruleForm">
...@@ -111,16 +107,7 @@ ...@@ -111,16 +107,7 @@
<el-input :rows="5" v-model="ruleForm.remark" type="textarea" :disabled="isdisabled"> </el-input> <el-input :rows="5" v-model="ruleForm.remark" type="textarea" :disabled="isdisabled"> </el-input>
</el-form-item> </el-form-item>
<el-form-item label="上传缴费凭证:" prop="voucherList"> <el-form-item label="上传缴费凭证:" prop="voucherList">
<div v-if="ruleForm.auditStatus == 2"> <ul>
<Upload
:limit="5"
:max="10"
tip="完成上传5份文件,每份不超过10M"
:fileList="ruleForm.voucherList"
@input="getfile"
></Upload>
</div>
<ul v-else>
<li v-for="(item, index) in ruleForm.voucherList" :key="index"> <li v-for="(item, index) in ruleForm.voucherList" :key="index">
<a :href="item.fileUrl">{{ item.fileName }}</a> <a :href="item.fileUrl">{{ item.fileName }}</a>
</li> </li>
...@@ -134,13 +121,12 @@ ...@@ -134,13 +121,12 @@
<div class="bottomButton"> <div class="bottomButton">
<el-button @click="back">返回</el-button> <el-button @click="back">返回</el-button>
<el-button type="primary" v-if="ruleForm.auditStatus == 2" @click="submitData">提交</el-button>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
import { bidbookDetail, editBidBook } from '@api/supply/bid'; import { bidbookDetail} from '@api/supply/bid';
import dataBreadcrumb from '@components/dataBreadcrumb.vue'; import dataBreadcrumb from '@components/dataBreadcrumb.vue';
import Upload from '@components/Upload/Upload.vue'; import Upload from '@components/Upload/Upload.vue';
export default { export default {
...@@ -221,14 +207,7 @@ export default { ...@@ -221,14 +207,7 @@ export default {
try { try {
const { data, code } = await bidbookDetail(projectId); const { data, code } = await bidbookDetail(projectId);
if (code == 200) { if (code == 200) {
if (data.auditStatus == 2) { data.companyName = JSON.parse(localStorage.getItem('userInfo')).companyName;
this.isdisabled = false;
(this.title = '编辑'), (this.state = '审核拒绝');
} else if (data.auditStatus == 1) {
this.state = '审核通过';
} else {
this.state = '未审核';
}
for (let item of data.voucherList) { for (let item of data.voucherList) {
item.name = item.fileName; item.name = item.fileName;
item.url = item.fileUrl; item.url = item.fileUrl;
...@@ -239,31 +218,6 @@ export default { ...@@ -239,31 +218,6 @@ export default {
console.log(e); console.log(e);
} }
}, },
async submitData() {
try {
const valid = await this.$refs['ruleForm'].validate();
if (valid) {
let message = this.ruleForm;
message.companyId = localStorage.getItem('companyId');
message.projectId = localStorage.getItem('projectId');
const { code, msg } = await editBidBook(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) {
console.log(e);
}
}
}, },
created() { created() {
this.getbidbookDetail(); this.getbidbookDetail();
......
<!-- 标书费缴纳 --> <!-- 标书费缴纳 -->
<template> <template>
<div> <div>
<div class="content-head"> <div class="content-head">
<dataBreadcrumb :breads="breads"></dataBreadcrumb> <dataBreadcrumb :breads="breads"></dataBreadcrumb>
<h3>提交</h3> <h3>{{ type == 1 ? '编辑' : '提交' }}</h3>
<h5>提交购标信息、邮寄信息、发票信息、缴费信息</h5> <h5>{{ type == 1 ? '编辑' : '提交' }}购标信息、邮寄信息、发票信息、缴费信息</h5>
</div> <div class="abs">
<div class="othercontent"> <div v-if="type == 1">拒绝原因:{{ ruleForm.reason }}</div>
<el-form ref="ruleForm" :model="ruleForm" :rules="formrules" label-width="200px" class="demo-ruleForm"> </div>
<div class="message"> </div>
<div> <div class="othercontent">
<div class="describe">确认购标信息</div> <el-form ref="ruleForm" :model="ruleForm" :rules="formrules" label-width="200px" class="demo-ruleForm">
<div class="message-form"> <div class="message">
<div> <div>
<el-form-item label="单位名称" prop="companyName"> <div class="describe">确认购标信息</div>
<el-input v-model.trim="ruleForm.companyName" disabled></el-input> <div class="message-form">
</el-form-item> <div>
</div> <el-form-item label="单位名称" prop="companyName">
<div class="flex-between"> <el-input v-model.trim="ruleForm.companyName" disabled></el-input>
<el-form-item label="联系人:" prop="contacts"> </el-form-item>
<el-input v-model.trim="ruleForm.contacts" placeholder="请输入" maxlength="30"></el-input> </div>
</el-form-item> <div class="flex-between">
<el-form-item label="固定电话:" prop="companyTel"> <el-form-item label="联系人:" prop="contacts">
<el-input v-model.trim="ruleForm.companyTel" placeholder="请输入" maxlength="30"></el-input> <el-input v-model.trim="ruleForm.contacts" placeholder="请输入" maxlength="30"></el-input>
</el-form-item> </el-form-item>
</div> <el-form-item label="固定电话:" prop="companyTel">
<div class="flex-between"> <el-input v-model.trim="ruleForm.companyTel" placeholder="请输入" maxlength="30"></el-input>
<el-form-item label="手机:" prop="companyPhone"> </el-form-item>
<el-input v-model.trim="ruleForm.companyPhone" placeholder="请输入" maxlength="30"></el-input> </div>
</el-form-item> <div class="flex-between">
<el-form-item label="传真:" prop="companyFacsimile"> <el-form-item label="手机:" prop="companyPhone">
<el-input v-model.trim="ruleForm.companyFacsimile" placeholder="请输入" maxlength="30"></el-input> <el-input v-model.trim="ruleForm.companyPhone" placeholder="请输入" maxlength="30"></el-input>
</el-form-item> </el-form-item>
</div> <el-form-item label="传真:" prop="companyFacsimile">
<div> <el-input v-model.trim="ruleForm.companyFacsimile" placeholder="请输入" maxlength="30"></el-input>
<el-form-item label="邮箱:" prop="companyEmail"> </el-form-item>
<el-input v-model.trim="ruleForm.companyEmail" placeholder="请输入" maxlength="30"></el-input> </div>
</el-form-item> <div>
</div> <el-form-item label="邮箱:" prop="companyEmail">
</div> <el-input v-model.trim="ruleForm.companyEmail" placeholder="请输入" maxlength="30"></el-input>
</div> </el-form-item>
<div> </div>
<div class="describe">邮寄信息</div> </div>
<div class="message-form"> </div>
<div class="flex-between"> <div>
<el-form-item label="收件人名称:"> <div class="describe">邮寄信息</div>
<el-input v-model.trim="ruleForm.recipientsName" placeholder="请输入" maxlength="30"></el-input> <div class="message-form">
</el-form-item> <div class="flex-between">
<el-form-item label="收件人单位:"> <el-form-item label="收件人名称:">
<el-input v-model.trim="ruleForm.recipientsCompany" placeholder="请输入" maxlength="30"></el-input> <el-input v-model.trim="ruleForm.recipientsName" placeholder="请输入" maxlength="30"></el-input>
</el-form-item> </el-form-item>
</div> <el-form-item label="收件人单位:">
<div class="flex-between"> <el-input v-model.trim="ruleForm.recipientsCompany" placeholder="请输入" maxlength="30"></el-input>
<el-form-item label="联系方式:"> </el-form-item>
<el-input v-model.trim="ruleForm.recipientsPhone" placeholder="请输入" maxlength="30"></el-input> </div>
</el-form-item> <div class="flex-between">
<el-form-item label="邮政编码:"> <el-form-item label="联系方式:">
<el-input v-model.trim="ruleForm.recipientsMail" placeholder="请输入" maxlength="10"></el-input> <el-input v-model.trim="ruleForm.recipientsPhone" placeholder="请输入" maxlength="30"></el-input>
</el-form-item> </el-form-item>
</div> <el-form-item label="邮政编码:">
<div> <el-input v-model.trim="ruleForm.recipientsMail" placeholder="请输入" maxlength="10"></el-input>
<el-form-item label="邮寄地址:"> </el-form-item>
<el-input v-model.trim="ruleForm.recipientsAddress " placeholder="请输入" maxlength="30"></el-input> </div>
</el-form-item> <div>
</div> <el-form-item label="邮寄地址:">
<el-input v-model.trim="ruleForm.recipientsAddress" placeholder="请输入" maxlength="30"></el-input>
</div> </el-form-item>
</div> </div>
<div> </div>
<div class="describe">发票信息</div> </div>
<div class="message-form"> <div>
<div class="describe">发票信息</div>
<div class="flex-between"> <div class="message-form">
<el-form-item label="发票类型:" prop="invoiceType"> <div class="flex-between">
<el-radio-group v-model="ruleForm.invoiceType"> <el-form-item label="发票类型:" prop="invoiceType">
<el-radio :label="1">增值税普通发票</el-radio> <el-radio-group v-model="ruleForm.invoiceType">
<el-radio :label="2">增值税专用发票</el-radio> <el-radio :label="1">增值税普通发票</el-radio>
</el-radio-group> <el-radio :label="2">增值税专用发票</el-radio>
</el-form-item> </el-radio-group>
<el-form-item label="发票抬头:" prop="invoiceHead"> </el-form-item>
<el-input v-model.trim="ruleForm.invoiceHead" placeholder="请输入" maxlength="30"></el-input> <el-form-item label="发票抬头:" prop="invoiceHead">
</el-form-item> <el-input v-model.trim="ruleForm.invoiceHead" placeholder="请输入" maxlength="30"></el-input>
</div> </el-form-item>
<div class="flex-between"> </div>
<el-form-item label="纳税人识别号:" prop="invoiceTaxNumber "> <div class="flex-between">
<el-input v-model.trim="ruleForm.invoiceTaxNumber " placeholder="请输入" maxlength="30"></el-input> <el-form-item label="纳税人识别号:" prop="invoiceTaxNumber ">
</el-form-item> <el-input v-model.trim="ruleForm.invoiceTaxNumber" placeholder="请输入" maxlength="30"></el-input>
<el-form-item label="地址:" prop="invoiceAddress"> </el-form-item>
<el-input v-model.trim="ruleForm.invoiceAddress" placeholder="请输入" maxlength="30"></el-input> <el-form-item label="地址:" prop="invoiceAddress">
</el-form-item> <el-input v-model.trim="ruleForm.invoiceAddress" placeholder="请输入" maxlength="30"></el-input>
</div> </el-form-item>
<div class="flex-between"> </div>
<el-form-item label="电话:" prop="invoiceTel"> <div class="flex-between">
<el-input v-model.trim="ruleForm.invoiceTel" placeholder="请输入" maxlength="30"></el-input> <el-form-item label="电话:" prop="invoiceTel">
</el-form-item> <el-input v-model.trim="ruleForm.invoiceTel" placeholder="请输入" maxlength="30"></el-input>
<el-form-item label="开户行及账号:" prop="invoiceAccount"> </el-form-item>
<el-input v-model.trim="ruleForm.invoiceAccount" placeholder="请输入" maxlength="30"></el-input> <el-form-item label="开户行及账号:" prop="invoiceAccount">
</el-form-item> <el-input v-model.trim="ruleForm.invoiceAccount" placeholder="请输入" maxlength="30"></el-input>
</div> </el-form-item>
</div> </div>
</div> </div>
<div> </div>
<div class="describe">缴费信息</div> <div>
<div class="message-form"> <div class="describe">缴费信息</div>
<el-form-item label="付款方式:" prop="feeWay"> <div class="message-form">
<el-input v-model="ruleForm.feeWay" placeholder="请输入"> <el-form-item label="付款方式:" prop="feeWay">
</el-input> <el-input v-model="ruleForm.feeWay" placeholder="请输入"> </el-input>
</el-form-item> </el-form-item>
<el-form-item label="备注:" prop="remark"> <el-form-item label="备注:" prop="remark">
<el-input :rows="5" v-model.trim="ruleForm.remark" type="textarea" placeholder="请输入内容" maxlength="300"> <el-input :rows="5" v-model.trim="ruleForm.remark" type="textarea" placeholder="请输入内容" maxlength="300">
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item label="上传缴费凭证:" prop="voucherList"> <el-form-item label="上传缴费凭证:" prop="voucherList">
<Upload :limit="5" :max="10" tip="完成上传5份文件,每份不超过10M" @input="getfile"></Upload> <Upload :limit="5" :max="10" tip="完成上传5份文件,每份不超过10M" @input="getfile" :fileList="ruleForm.voucherList"></Upload>
</el-form-item> </el-form-item>
</div> </div>
</div> </div>
</div> </div>
</el-form> </el-form>
</div> </div>
<div class="bottomButton"> <div class="bottomButton">
<el-button @click="back">取消</el-button> <el-button @click="back">取消</el-button>
<el-button type="primary" @click="submitData">提交</el-button> <el-button type="primary" @click="submitData">提交</el-button>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
import { import { bidBookpayment, bidbookDetail, editBidBook } from '@api/supply/bid';
bidBookpayment import dataBreadcrumb from '@components/dataBreadcrumb.vue';
} from '@api/supply/bid' import Upload from '@components/Upload/Upload.vue';
import dataBreadcrumb from '@components/dataBreadcrumb.vue' export default {
import Upload from '@components/Upload/Upload.vue' components: {
export default { dataBreadcrumb,
components: { Upload
dataBreadcrumb, },
Upload data() {
}, let checkPhone = async (rule, value, callback) => {
data() { if (!value) {
let checkPhone = async (rule, value, callback) => { return callback(new Error('手机号不能为空'));
if (!value) { } else {
return callback(new Error('手机号不能为空')); const reg = /^1[3|4|5|7|8][0-9]\d{8}$/;
} else { console.log(reg.test(value));
const reg = /^1[3|4|5|7|8][0-9]\d{8}$/ if (reg.test(value)) {
console.log(reg.test(value)); callback();
if (reg.test(value)) { } else {
callback(); return callback(new Error('请输入正确的手机号'));
} else { }
return callback(new Error('请输入正确的手机号')); }
} };
} // 测试图片
}; let checkimg = (rule, value, callback) => {
// 测试图片 if (this.ruleForm.voucherList.length === 0) {
let checkimg = (rule, value, callback) => { callback(new Error('请上传凭证'));
if (this.ruleForm.voucherList.length === 0) { } else {
callback(new Error('请上传凭证')); callback();
} else { }
callback(); };
} return {
}; type: '',
return { breads: ['招标管理', '招标项目管理', '工作台'],
breads: ['招标管理', '招标项目管理', '工作台'], ruleForm: {
ruleForm: { companyName: '',
companyName: '', companyTel: '',
companyTel: '', companyPhone: '',
companyPhone: '', companyFacsimile: '',
companyFacsimile: '', recipientsName: '',
recipientsName: "", recipientsCompany: '',
recipientsCompany: "", recipientsPhone: '',
recipientsPhone: "", recipientsMail: '',
recipientsMail: "", recipientsAddress: '',
recipientsAddress: "", invoiceType: '',
invoiceType: '', invoiceHead: '',
invoiceHead: "", invoiceTaxNumber: '',
invoiceTaxNumber: "", invoiceAddress: '',
invoiceAddress: "", invoiceTel: '',
invoiceTel: "", invoiceAccount: '',
invoiceAccount: '', feeWay: '',
feeWay: '', remark: '',
remark: "", companyEmail: '',
companyEmail: "", contacts: '',
contacts:"", voucherList: []
voucherList: [] },
}, formrules: {
formrules: { companyName: [
companyName: [{ {
required: true, required: true,
message: '请输入', message: '请输入',
trigger: 'blur' trigger: 'blur'
}], }
companyPhone: [{ ],
required: true, companyPhone: [
validator: checkPhone, {
trigger: 'blur' required: true,
}], validator: checkPhone,
invoiceType: [{ trigger: 'blur'
required: true, }
message: '请输入', ],
trigger: 'blur' invoiceType: [
}], {
invoiceTaxNumber: [{ required: true,
required: true, message: '请输入',
message: '请输入', trigger: 'blur'
trigger: 'blur' }
}], ],
invoiceAddress: [{ invoiceTaxNumber: [
required: true, {
message: '请输入', required: true,
trigger: 'blur' message: '请输入',
}], trigger: 'blur'
invoiceTel: [{ }
required: true, ],
message: '请输入', invoiceAddress: [
trigger: 'blur' {
}], required: true,
invoiceAccount: [{ message: '请输入',
required: true, trigger: 'blur'
message: '请输入', }
trigger: 'blur' ],
}], invoiceTel: [
feeWay: [{ {
required: true, required: true,
message: '请输入', message: '请输入',
trigger: 'blur' trigger: 'blur'
}], }
voucherList: [{ ],
required: true, invoiceAccount: [
validator: checkimg, {
trigger: 'blur' required: true,
}] message: '请输入',
} trigger: 'blur'
} }
}, ],
methods: { feeWay: [
getfile(val) { {
this.ruleForm.voucherList = val required: true,
}, message: '请输入',
back(){ trigger: 'blur'
this.$router.go(-1) }
}, ],
async submitData() { voucherList: [
try { {
const valid = await this.$refs['ruleForm'].validate() required: true,
if (valid) { validator: checkimg,
let message = this.ruleForm trigger: 'blur'
message.companyId = localStorage.getItem("companyId") }
message.projectId = localStorage.getItem("projectId") ]
const { }
code, };
msg },
} = await bidBookpayment(message) methods: {
if (code == 200) { getfile(val) {
this.$message({ this.ruleForm.voucherList = val;
message: msg, },
type: 'success', back() {
duration: 1500 this.$router.go(-1);
}) },
setTimeout(() => { async submitData() {
this.$router.go(-1) try {
}, 1500) const valid = await this.$refs['ruleForm'].validate();
}else{ if (valid) {
this.$message.error(msg) let message = this.ruleForm;
} message.companyId = localStorage.getItem('companyId');
} message.projectId = localStorage.getItem('projectId');
} catch (e) { let type = this.type;
console.log(e) if (type == 1) {
} var { code, msg } = await editBidBook(message);
} }
}, var { code, msg } = await bidBookpayment(message);
created() { if (code == 200) {
this.ruleForm.companyName = JSON.parse(localStorage.getItem("userInfo")).companyName this.$message({
} message: msg,
} type: 'success',
duration: 1500
});
setTimeout(() => {
this.$router.go(-1);
}, 1500);
} else {
this.$message.error(msg);
}
}
} catch (e) {
console.log(e);
}
},
async getbidbookDetail() {
let projectId = localStorage.getItem('projectId');
try {
const { data, code } = await bidbookDetail(projectId);
if (code == 200) {
data.companyName = JSON.parse(localStorage.getItem('userInfo')).companyName;
for (let item of data.voucherList) {
item.name = item.fileName;
item.url = item.fileUrl;
}
this.ruleForm = data;
}
} catch (e) {
console.log(e);
}
}
},
created() {
let type = this.$route.query.type;
this.type = type;
if (type == 1) {
this.getbidbookDetail();
} else {
this.ruleForm.companyName = JSON.parse(localStorage.getItem('userInfo')).companyName;
}
}
};
</script> </script>
<style scoped> <style scoped>
.message {} .message {
}
.message>div { .message > div {
background: #fff; background: #fff;
margin-bottom: 20px; margin-bottom: 20px;
padding-bottom: 20px; padding-bottom: 20px;
} }
.message-form { .message-form {
width: 70%; width: 70%;
margin: 0 auto margin: 0 auto;
} }
</style> </style>
...@@ -179,14 +179,14 @@ export default { ...@@ -179,14 +179,14 @@ export default {
modulars: [ modulars: [
{ {
id: 66, id: 66,
label: '标书费缴纳', label: '递交标书费',
url: '/supply/bid/joinProject/bidStage/tenderFee/detail', url: '/supply/bid/joinProject/bidStage/tenderFee',
bright: false bright: false
}, },
{ {
id: 67, id: 67,
label: '保证金缴纳', label: '递交保证金',
url: '/supply/bid/joinProject/bidStage/bond/detail', url: '/supply/bid/joinProject/bidStage/bond',
bright: false bright: false
} }
] ]
...@@ -239,8 +239,16 @@ export default { ...@@ -239,8 +239,16 @@ export default {
for (let item2 of data) { for (let item2 of data) {
if (item1.id == item2.buttonId) { if (item1.id == item2.buttonId) {
item1.bright = true; item1.bright = true;
item1.url = this.geturl(item1.url, item2.status); if (item2.buttonId == 66 && item2.status == 2) {
item1.label = this.getlabel(item1.label, item2.status); item1.url = '/supply/bid/joinProject/bidStage/tenderFee/detail';
item1.label = '查看标书费缴纳';
} else if (item2.buttonId == 67 && item2.status == 2) {
item1.url = '/supply/bid/joinProject/bidStage/bond/detail';
item1.label = '查看保证金缴纳';
} else {
item1.url = this.geturl(item1.url, item2.status);
item1.label = this.getlabel(item1.label, item2.status);
}
} }
} }
} }
......
...@@ -11,16 +11,15 @@ ...@@ -11,16 +11,15 @@
</li> </li>
</ul> </ul>
<h2>项目信息</h2> <h2>项目信息</h2>
<dataTable :table-data="tabledata" :columns="columns"> <dataTable :table-data="tabledata" :columns="columns"> </dataTable>
</dataTable> <!-- <h2 class="se-h2">待办事项</h2>
<h2 class="se-h2">待办事项</h2>
<ul class="project-list flex"> <ul class="project-list flex">
<li v-for="item in projectlist" :key="item.id"> <li v-for="item in projectlist" :key="item.id">
<img :src="item.src" alt="" /> <img :src="item.src" alt="" />
<div>{{ item.project }}</div> <div>{{ item.project }}</div>
<div>{{ item.account }}</div> <div>{{ item.account }}</div>
</li> </li>
</ul> </ul> -->
</div> </div>
</div> </div>
</template> </template>
...@@ -190,8 +189,7 @@ export default { ...@@ -190,8 +189,7 @@ export default {
}; };
}, },
methods: { methods: {
handlesee() {}, async gethome() {
async gethome() {
const { data, code } = await home(); const { data, code } = await home();
this.detail = data; this.detail = data;
this.tableData[0].number = data.prePublic; this.tableData[0].number = data.prePublic;
...@@ -202,19 +200,18 @@ export default { ...@@ -202,19 +200,18 @@ export default {
this.tableData[5].number = data.bidOevaluating; this.tableData[5].number = data.bidOevaluating;
} }
}, },
created() { created() {
this.gethome();
let token = getSearchString('token'); let token = getSearchString('token');
if (token !== 'undefined') { if (token !== 'undefined') {
localStorage.setItem('token', token); localStorage.setItem('token', token);
} }
this.gethome(); }
},
}; };
</script> </script>
<style scoped> <style scoped>
.home { .home {
padding: 30px;
box-sizing: border-box; box-sizing: border-box;
} }
.home > .user { .home > .user {
......
...@@ -18,9 +18,8 @@ export function getSearchString(key) { ...@@ -18,9 +18,8 @@ export function getSearchString(key) {
export function down(url) { export function down(url) {
window.open(url) window.open(url)
} }
// 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';
// export let homeUrl = 'http://localhost:3000'; // export let homeUrl = 'http://localhost:3000';
export let homeUrl = 'http://60.205.251.80:8081'; export let homeUrl = 'http://60.205.251.80:8081';
......
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