刘翔宇-旅管家 3 years ago
commit 6ef67f2164

@ -2,8 +2,8 @@
ENV = 'development'
# base api
#VUE_APP_DOMIAN=http://192.168.60.99:9003/
VUE_APP_DOMIAN=http://hdcontract.ali251.langye.net/
VUE_APP_DOMIAN=http://192.168.60.99:9003/
#VUE_APP_DOMIAN=http://hdcontract.ali251.langye.net/
VUE_APP_BASE_API = ''

@ -66,11 +66,11 @@
<div class="related-processes">
<div class="related-processes-title">相关流程</div>
<div class="related-processes-item">
<div @click="seeBuyProcess"></div>
<div @click="seeSignProcess"></div>
<div @click="seeBidding"></div>
<div @click="seeBuyProcess" :style="{'color':detail.purchase_last_flow_id ? 'green' : 'red'}">采购流程查</div>
<div @click="seeSignProcess" :style="{'color':detail.join_last_flow_id ? 'green' : 'red'}">合同会签流</div>
<div @click="seeBidding" :style="{'color':detail.invite_last_flow_id ? 'green' : 'red'}">招标审批流</div>
<template v-if="detail.is_plan != 1">
<div @click="seeAskProcess"></div>
<div @click="seeAskProcess" :style="{'color':detail.req_last_flow_id ? 'green' : 'red'}">请示流程查</div>
</template>
</div>
</div>
@ -455,7 +455,7 @@ export default {
@extend .link-budget-plan-title;
}
&-item{
color: red;
//color: red;
display: flex;

@ -502,6 +502,15 @@ export default {
}
},
{
label:'已申请金额(元)',
prop:'apply_money_total',
width:180,
align:'right',
formatter:(cell,data,value)=>{
return Number(value).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, '$1,')
}
},
{
label:'已付金额(元)',
prop:'fund_log_total',
@ -518,7 +527,7 @@ export default {
let per = ((((row.fund_log_total)/row.money)||0)*100)?.toFixed(2) || 0
return (
<div style={{'color':per > 110 ? 'red' : 'green'}}>
{per.padStart(5,'0')}%
{per}%
</div>
)
}
@ -806,8 +815,8 @@ export default {
showPaymentPlan(row, column, cell){
if(column.property === 'sign_plan_count'){
this.$refs['contractPaymentRegistration'].getSignPlan(row.id)
row.status === 2 ? this.$refs['contractPaymentRegistration'].isSign = true : this.$refs['contractPaymentRegistration'].isSign = false
this.$refs['contractPaymentRegistration'].isShow = true
row.id === 2 ? this.$refs['contractPaymentRegistration'].isSign = true : this.$refs['contractPaymentRegistration'].isSign = false
}
if(column.property === 'fund_log_total'){
this.$router.push(`/contract/paymentRegistrationList?contractId=${row.id}`)

@ -1,6 +1,6 @@
<template>
<div style="padding: 0 20px;" ref="contractList">
<lx-header icon="md-apps" text="合同列表" style="margin-bottom: 10px; border: 0px; margin-top: 15px">
<div ref="contractList" style="padding: 0 20px;">
<lx-header icon="md-apps" style="margin-bottom: 10px; border: 0px; margin-top: 15px" text="合同列表">
<div slot="content"></div>
<slot>
<div class="selects">
@ -14,7 +14,8 @@
<div>
<span style="padding: 0 6px;word-break: keep-all;">创建日期</span>
<span>
<DatePicker v-model="select.showDatePicker" clearable placeholder="请选择日期" type="daterange" placement="bottom-start" style="width: 200px" @on-change="datePick"></DatePicker>
<DatePicker v-model="select.showDatePicker" clearable placeholder="请选择日期" placement="bottom-start"
style="width: 200px" type="daterange" @on-change="datePick"></DatePicker>
</span>
</div>
@ -22,8 +23,8 @@
<span style="padding: 0 6px;word-break: keep-all;">
项目类型
</span>
<Select placeholder="请选择项目类型" v-model="select.type" style="width:140px;" clearable>
<Option v-for="item in type" :value="item.value" :key="item.value">{{ item.label }}</Option>
<Select v-model="select.type" clearable placeholder="请选择项目类型" style="width:140px;">
<Option v-for="item in type" :key="item.value" :value="item.value">{{ item.label }}</Option>
</Select>
</div>
@ -31,8 +32,8 @@
<span style="padding: 0 6px;word-break: keep-all;">
业务科室
</span>
<el-select placeholder="业务科室选择" clearable size="small" v-model="select.department" style="width: 160px;">
<el-option v-for="item in departments" :label="item.name" :value="item.id" :key="item.id">
<el-select v-model="select.department" clearable placeholder="业务科室选择" size="small" style="width: 160px;">
<el-option v-for="item in departments" :key="item.id" :label="item.name" :value="item.id">
</el-option>
</el-select>
</div>
@ -41,8 +42,8 @@
<span style="padding: 0 6px;word-break: keep-all;">
采购形式
</span>
<Select clearable placeholder="请选择采购形式" v-model="select.purchaseModality" style="width:200px;">
<Option v-for="item in purchaseType" :value="item.id" :key="item.id">{{ item.value }}</Option>
<Select v-model="select.purchaseModality" clearable placeholder="请选择采购形式" style="width:200px;">
<Option v-for="item in purchaseType" :key="item.id" :value="item.id">{{ item.value }}</Option>
</Select>
</div>
@ -50,8 +51,8 @@
<span style="padding: 0 6px;word-break: keep-all;">
采购方式
</span>
<Select clearable placeholder="请选择采购方式" v-model="select.purchaseMethods" style="width:200px;">
<Option v-for="item in purchaseWay" :value="item.id" :key="item.id">{{ item.value }}</Option>
<Select v-model="select.purchaseMethods" clearable placeholder="请选择采购方式" style="width:200px;">
<Option v-for="item in purchaseWay" :key="item.id" :value="item.id">{{ item.value }}</Option>
</Select>
</div>
@ -60,41 +61,49 @@
预算金额
</span>
<InputNumber
style="width: 100px;"
placeholder="最小金额"
v-model="select.priceMin"
:min="0"
v-model="select.priceMin"/>
placeholder="最小金额"
style="width: 100px;"/>
<span style="padding: 0 5px;">-</span>
<InputNumber
style="width: 100px;"
placeholder="最大金额"
v-model="select.priceMax"
:min="0"
v-model="select.priceMax"/>
placeholder="最大金额"
style="width: 100px;"/>
</div>
<div>
<span style="padding: 0 6px;word-break: keep-all;">
状态
</span>
<Select clearable placeholder="请选择合同状态" v-model="select.status" style="width:200px;">
<Option v-for="item in [{label:'待签订',value:1},{label:'已签订',value:2}]" :value="item.value" :key="item.value">{{ item.label }}</Option>
<Select v-model="select.status" clearable placeholder="请选择合同状态" style="width:200px;">
<Option v-for="item in [{label:'',value:1},{label:'',value:2}]" :key="item.value"
:value="item.value">{{ item.label }}
</Option>
</Select>
</div>
<Button type="primary" style="margin-left: 10px" @click="getContracts"></Button>
<Button type="primary" style="margin-left: 10px" ghost
@click=" select = {showDatePicker:'',ageIndex:1,startDate:'',endDate:'',type:'',department:'',purchaseModality:'',purchaseMethods:'',priceMin:null,priceMax:null,status:''}">重置</Button>
<Button style="margin-left: 10px" type="primary" @click="getContracts"></Button>
<Button ghost style="margin-left: 10px" type="primary"
@click=" select = {showDatePicker:'',ageIndex:1,startDate:'',endDate:'',type:'',department:'',purchaseModality:'',purchaseMethods:'',priceMin:null,priceMax:null,status:''}">
重置
</Button>
<!-- <Button type="primary" style="margin-left: 10px">导出</Button>-->
</div>
</slot>
</lx-header>
<xy-table ref="xyTable" :table-item="table" :list="list" @editor="" @delete="(row)=>deleteContract(row.id)" @cellClick="showPaymentPlan" :cell-style="cellStyle" :show-summary="true" :summary-method="summary">
<xy-table ref="xyTable" :cell-style="cellStyle" :list="list" :show-summary="true" :summary-method="summary"
:table-item="table" @cellClick="showPaymentPlan" @delete="(row)=>deleteContract(row.id)" @editor="">
<template v-slot:btns>
<el-table-column label="操作" fixed="right" width="100" header-align="center" align="center">
<el-table-column align="center" fixed="right" header-align="center" label="操作" width="100">
<template slot-scope="scope">
<div class="slot-btns">
<Button class="slot-btns-item" type="primary" size="small" @click="$refs['detailContract'].getDetail(scope.row.id),$refs['detailContract'].isShowDetail = true">查看</Button>
<Button class="slot-btns-item" size="small" type="primary"
@click="$refs['detailContract'].getDetail(scope.row.id),$refs['detailContract'].isShowDetail = true">
查看
</Button>
</div>
</template>
</el-table-column>
@ -128,6 +137,7 @@ import paymentRegistration from "./components/paymentRegistration";
import contractSign from "@/views/contract/components/contractSign";
import contractPaymentRegistration from "@/views/contract/components/contractPaymentRegistration";
import {login} from "@/api/user";
export default {
components: {
editor,
@ -197,6 +207,7 @@ export default {
width: 120,
prop: 'type',
formatter: (cell, data, value) => {
switch (value) {
case 1:
return "服务"
@ -321,21 +332,39 @@ export default {
}
},
{
label: '已申请金额(元)',
prop: 'apply_money_total',
width: 180,
align: 'right',
formatter: (cell, data, value) => {
return Number(value).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, '$1,')
}
},
{
label: '已付金额(元)',
prop: 'fund_log_total',
width:120,
width: 180,
align: 'right',
formatter: (cell, data, value) => {
if(!value){
return '0.00'
return Number(value).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, '$1,')
}
return value
},
{
label: '支付占比',
width: 180,
customFn: (row) => {
let per = ((((row.fund_log_total) / row.money) || 0) * 100)?.toFixed(2) || 0
return (
<div style={{'color': per > 110 ? 'red' : 'green'}}>
{per}%
</div>
)
}
},
{
label: "合同预算价(元)",
width: 160,
width: 180,
prop: "plan_price",
align: 'right',
formatter: (v1, v2, value) => {
@ -346,7 +375,10 @@ export default {
label: '合同签订价(元)',
width: 180,
prop: 'money',
align:'right'
align: 'right',
formatter: (cell, data, value) => {
return Number(value).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, '$1,')
}
},
{
label: "合同状态",
@ -804,7 +836,7 @@ export default {
}
</script>
<style scoped lang="scss">
<style lang="scss" scoped>
.selects {
display: flex;
flex-wrap: wrap;
@ -813,6 +845,7 @@ export default {
margin-bottom: 6px;
}
}
.selectTop {
margin-top: 10px;
}
@ -827,6 +860,7 @@ export default {
align-content: center;
padding: 0 8px;
&-no-plan {
height: 30px;
line-height: 30px;
@ -835,7 +869,6 @@ export default {
}
.slot-btns {
display: flex;
flex-wrap: wrap;
@ -850,8 +883,10 @@ export default {
.xy-table-item-label {
width: 140px;
}
.xy-table-item-price {
position: relative;
&::after {
position: absolute;
right: 0;

@ -99,19 +99,25 @@ export default {
minWidth:300
},
{
prop:'rate',
label:'进展率',
width: 120,
formatter:(cell,data,value)=>{
return value + '%'
}
prop:'money',
width: 180,
label:'项目金额(元)',
align:'right'
},
{
prop:'use_money_total',
label:'使用金额',
align:'right',
width: 180
},
{
prop:'rate',
label:'进展率',
width: 120,
formatter:(cell,data,value)=>{
return value + '%'
}
},
]
}
},

Loading…
Cancel
Save