|
|
|
|
@ -1,5 +1,5 @@
|
|
|
|
|
<template>
|
|
|
|
|
<div style="padding: 0 20px;">
|
|
|
|
|
<div style="padding: 0 20px;" ref="contractList">
|
|
|
|
|
<lx-header icon="md-apps" text="合同列表" style="margin-bottom: 10px; border: 0px; margin-top: 15px">
|
|
|
|
|
<div slot="content"></div>
|
|
|
|
|
<slot>
|
|
|
|
|
@ -81,16 +81,20 @@
|
|
|
|
|
|
|
|
|
|
<xy-table :table-item="table" :list="list" @editor="" @delete="(row)=>deleteContract(row.id)">
|
|
|
|
|
<template v-slot:btns>
|
|
|
|
|
<el-table-column label="操作" fixed="right" width="200" header-align="center">
|
|
|
|
|
<el-table-column label="操作" fixed="right" width="220" header-align="center">
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<div class="slot-btns">
|
|
|
|
|
<Button class="slot-btns-item" type="primary" size="small" @click="$refs['paymentRegistration'].isShowPaymentRegistration = true,$refs['paymentRegistration'].getContract(scope.row)">付款登记</Button>
|
|
|
|
|
<template v-if="scope.row.status === 1">
|
|
|
|
|
<Button class="slot-btns-item" type="primary" size="small" @click="$refs['contractSign'].isShow = true,$refs['contractSign'].contractId = scope.row.id">签订合同</Button>
|
|
|
|
|
</template>
|
|
|
|
|
<Button class="slot-btns-item" type="primary" size="small">招标文件审查</Button>
|
|
|
|
|
<template v-if="scope.row.invite_status === 1">
|
|
|
|
|
<Button class="slot-btns-item" type="primary" size="small" @click="bidding(scope.row)">招标文件审查</Button>
|
|
|
|
|
</template>
|
|
|
|
|
<Button class="slot-btns-item" type="primary" size="small">附件管理</Button>
|
|
|
|
|
<Button class="slot-btns-item" type="primary" size="small" @click="askProcess(scope.row)">请示流程</Button>
|
|
|
|
|
<template v-if="scope.row.req_status === 1">
|
|
|
|
|
<Button class="slot-btns-item" type="primary" size="small" @click="askProcess(scope.row)">请示流程</Button>
|
|
|
|
|
</template>
|
|
|
|
|
<template v-if="scope.row.join_status === 1">
|
|
|
|
|
<Button class="slot-btns-item" type="primary" size="small" @click="signProcess(scope.row)">合同会签流程申请</Button>
|
|
|
|
|
</template>
|
|
|
|
|
@ -178,16 +182,6 @@
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</template>
|
|
|
|
|
<template v-slot:money>
|
|
|
|
|
<div class="xy-table-item">
|
|
|
|
|
<div class="xy-table-item-label">
|
|
|
|
|
<span style="color: red;font-weight: 600;padding-right: 4px;">*</span>合同金额
|
|
|
|
|
</div>
|
|
|
|
|
<div class="xy-table-item-content xy-table-item-price">
|
|
|
|
|
<el-input placeholder="请填写合同金额" :value="form.money" style="width: 300px;" @input="e=>form.money = e"/>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</template>
|
|
|
|
|
<template v-slot:fundingChannels>
|
|
|
|
|
<div class="xy-table-item">
|
|
|
|
|
<div class="xy-table-item-label">
|
|
|
|
|
@ -200,26 +194,6 @@
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</template>
|
|
|
|
|
<template v-slot:supply>
|
|
|
|
|
<div class="xy-table-item">
|
|
|
|
|
<div class="xy-table-item-label">
|
|
|
|
|
<span style="color: red;font-weight: 600;padding-right: 4px;">*</span>供应商
|
|
|
|
|
</div>
|
|
|
|
|
<div class="xy-table-item-content">
|
|
|
|
|
<el-input placeholder="请填写供应商" v-model="form.supply" style="width: 300px;"/>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</template>
|
|
|
|
|
<template v-slot:carryDepartment>
|
|
|
|
|
<div class="xy-table-item">
|
|
|
|
|
<div class="xy-table-item-label">
|
|
|
|
|
<span style="color: red;font-weight: 600;padding-right: 4px;">*</span>执行部门
|
|
|
|
|
</div>
|
|
|
|
|
<div class="xy-table-item-content">
|
|
|
|
|
<el-input placeholder="请填写执行部门" v-model="form.carryDepartment" style="width: 300px;"/>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</template>
|
|
|
|
|
<template v-slot:isBudget>
|
|
|
|
|
<div class="xy-table-item">
|
|
|
|
|
<div class="xy-table-item-label">
|
|
|
|
|
@ -286,7 +260,7 @@
|
|
|
|
|
<paymentRegistration ref="paymentRegistration"></paymentRegistration>
|
|
|
|
|
|
|
|
|
|
<!-- 合同签订-->
|
|
|
|
|
<contractSign ref="contractSign"></contractSign>
|
|
|
|
|
<contractSign ref="contractSign" @signSuccess="getContracts"></contractSign>
|
|
|
|
|
</div>
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
@ -303,6 +277,7 @@ import editor from "./components/editorContract"
|
|
|
|
|
import detail from "./components/detailContract"
|
|
|
|
|
import paymentRegistration from "./components/paymentRegistration";
|
|
|
|
|
import contractSign from "@/views/contract/components/contractSign";
|
|
|
|
|
import {set} from "@/api/system/role";
|
|
|
|
|
export default {
|
|
|
|
|
components:{
|
|
|
|
|
editor,
|
|
|
|
|
@ -387,7 +362,7 @@ export default {
|
|
|
|
|
prop:"money_way.value"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
label:"项目预算(元)",
|
|
|
|
|
label:"项目预算(万元)",
|
|
|
|
|
width: 200,
|
|
|
|
|
prop:"plan_price",
|
|
|
|
|
align:'right',
|
|
|
|
|
@ -417,19 +392,87 @@ export default {
|
|
|
|
|
multiHd:[
|
|
|
|
|
{
|
|
|
|
|
label:"请示流程",
|
|
|
|
|
width: 200
|
|
|
|
|
width: 200,
|
|
|
|
|
prop:'req_status',
|
|
|
|
|
formatter:(cell,data,value)=>{
|
|
|
|
|
switch (value){
|
|
|
|
|
case 1:
|
|
|
|
|
return "待申请"
|
|
|
|
|
break;
|
|
|
|
|
case 2:
|
|
|
|
|
return "流转中"
|
|
|
|
|
break;
|
|
|
|
|
case 3:
|
|
|
|
|
return "已结办"
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
return "异常"
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
label:"采购业务审批流程",
|
|
|
|
|
width: 200
|
|
|
|
|
width: 200,
|
|
|
|
|
prop:'purchase_status',
|
|
|
|
|
formatter:(cell,data,value)=>{
|
|
|
|
|
switch (value){
|
|
|
|
|
case 1:
|
|
|
|
|
return "待申请"
|
|
|
|
|
break;
|
|
|
|
|
case 2:
|
|
|
|
|
return "流转中"
|
|
|
|
|
break;
|
|
|
|
|
case 3:
|
|
|
|
|
return "已结办"
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
return "异常"
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
label:"招标审核流程",
|
|
|
|
|
width: 200
|
|
|
|
|
width: 200,
|
|
|
|
|
prop:'invite_status',
|
|
|
|
|
formatter:(cell,data,value)=>{
|
|
|
|
|
switch (value){
|
|
|
|
|
case 1:
|
|
|
|
|
return "待申请"
|
|
|
|
|
break;
|
|
|
|
|
case 2:
|
|
|
|
|
return "流转中"
|
|
|
|
|
break;
|
|
|
|
|
case 3:
|
|
|
|
|
return "已结办"
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
return "异常"
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
label:"合同会签流程",
|
|
|
|
|
width: 200
|
|
|
|
|
width: 200,
|
|
|
|
|
prop:'join_status',
|
|
|
|
|
formatter:(cell,data,value)=>{
|
|
|
|
|
switch (value){
|
|
|
|
|
case 1:
|
|
|
|
|
return "待申请"
|
|
|
|
|
break;
|
|
|
|
|
case 2:
|
|
|
|
|
return "流转中"
|
|
|
|
|
break;
|
|
|
|
|
case 3:
|
|
|
|
|
return "已结办"
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
return "异常"
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
]
|
|
|
|
|
},
|
|
|
|
|
@ -438,11 +481,6 @@ export default {
|
|
|
|
|
width: 200,
|
|
|
|
|
prop:'department.name'
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
label:"创建人",
|
|
|
|
|
width: 200,
|
|
|
|
|
prop:''
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
label:"创建信息",
|
|
|
|
|
width: 200,
|
|
|
|
|
@ -502,10 +540,7 @@ export default {
|
|
|
|
|
methods:"",
|
|
|
|
|
modality:"",
|
|
|
|
|
price:"",
|
|
|
|
|
money:'',
|
|
|
|
|
fundingChannels:"",
|
|
|
|
|
supply:'',
|
|
|
|
|
carryDepartment:"",
|
|
|
|
|
isBudget:true,
|
|
|
|
|
plan:[]
|
|
|
|
|
},
|
|
|
|
|
@ -547,22 +582,32 @@ export default {
|
|
|
|
|
planTotal:0,
|
|
|
|
|
plansPageIndex:1,
|
|
|
|
|
|
|
|
|
|
isShowEditor:false
|
|
|
|
|
isShowEditor:false,
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
methods: {
|
|
|
|
|
//招标文件审查
|
|
|
|
|
async bidding(row){
|
|
|
|
|
let baseInfo = {
|
|
|
|
|
"项目名称":row?.name,
|
|
|
|
|
"项目预算(万元)":row?.plan_price
|
|
|
|
|
}
|
|
|
|
|
let res = await getOatoken()
|
|
|
|
|
let url =`${process.env.VUE_APP_OUT_URL}/admin/flow/create/27?oatoken=${res.oatoken}&out_contract_id=${row.id}&contract_json=${JSON.stringify(baseInfo)}`
|
|
|
|
|
let bidding = window.open(url,'bidding','top=100,left=100,width=1000,height=600')
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
//采购流程
|
|
|
|
|
async buyProcess(row){
|
|
|
|
|
console.log(row)
|
|
|
|
|
let baseInfo = {
|
|
|
|
|
"项目名称":row.name,
|
|
|
|
|
"采购形式":row.purchase_type.value,
|
|
|
|
|
"采购方式":row.purchase_way.value,
|
|
|
|
|
"项目名称":row?.name,
|
|
|
|
|
"采购形式":row?.purchase_type?.value,
|
|
|
|
|
"采购方式":row?.purchase_way?.value,
|
|
|
|
|
"项目类型":this.type.filter(item => {
|
|
|
|
|
return item.value === row.type
|
|
|
|
|
})[0].label,
|
|
|
|
|
"项目预算(万元)":row.plan_price/10000,
|
|
|
|
|
"资金渠道":row.money_way.value
|
|
|
|
|
})[0]?.label,
|
|
|
|
|
"项目预算(万元)":row?.plan_price,
|
|
|
|
|
"资金渠道":row?.money_way?.value
|
|
|
|
|
}
|
|
|
|
|
let res = await getOatoken()
|
|
|
|
|
let url = `${process.env.VUE_APP_OUT_URL}/admin/flow/create/2?oatoken=${res.oatoken}&out_contract_id=${row.id}&contract_json=${JSON.stringify(baseInfo)}`
|
|
|
|
|
@ -571,9 +616,9 @@ export default {
|
|
|
|
|
//会签流程
|
|
|
|
|
async signProcess(row){
|
|
|
|
|
let baseInfo = {
|
|
|
|
|
"合同名称":row.name,
|
|
|
|
|
"执行部门":row.carry_department,
|
|
|
|
|
"合同金额(万元)":row.money,
|
|
|
|
|
"合同名称":row?.name,
|
|
|
|
|
"执行部门":row?.carry_department,
|
|
|
|
|
"合同金额(万元)":row?.money,
|
|
|
|
|
//"承包商\\供应商":row.supply
|
|
|
|
|
}
|
|
|
|
|
let res = await getOatoken()
|
|
|
|
|
@ -692,9 +737,6 @@ export default {
|
|
|
|
|
money_way_id:this.form.fundingChannels,
|
|
|
|
|
plan_price:this.form.price,
|
|
|
|
|
name:this.form.name,
|
|
|
|
|
supply:this.form.supply,
|
|
|
|
|
carry_department:this.form.carryDepartment,
|
|
|
|
|
money:this.form.money,
|
|
|
|
|
contract_plan_links:this.form.plan.map(item=>{
|
|
|
|
|
return item.value
|
|
|
|
|
})
|
|
|
|
|
@ -782,7 +824,7 @@ export default {
|
|
|
|
|
position: absolute;
|
|
|
|
|
right: 0;
|
|
|
|
|
top: 0;
|
|
|
|
|
content:'(元)'
|
|
|
|
|
content:'(万元)'
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
</style>
|
|
|
|
|
|