<template> 
 | 
    <GlobalWindow :title="title" :withFooter="false" :visible.sync="visible" :confirm-working="isWorking" @close="close" 
 | 
        @confirm="confirm"> 
 | 
        <div style="position: sticky; top: 0; left: 0; width: 100%; background: #ffffff;"> 
 | 
            <div class="home_title"> 
 | 
                <div class="left"> 
 | 
                    <span class="mr10">对方单位名称:{{info.customerName}}</span> 
 | 
                    <el-tag type="success" v-if="info.status === 0">开启</el-tag> 
 | 
                    <el-tag type="info" v-if="info.status === 1">关闭</el-tag> 
 | 
                </div> 
 | 
                <el-button type="danger" v-if="isShow(info.status, info.contractStatus)" @click="closeDW()">关闭流水</el-button> 
 | 
            </div> 
 | 
            <div class="line"></div> 
 | 
            <div class="main"> 
 | 
                <div class="list" style="background: rgba(0,0,0,0); padding: 0; margin-bottom: 0;"> 
 | 
                    <div class="item" style="flex: 1;"> 
 | 
                        <div class="la">结清状态</div> 
 | 
                        <div class="val" style="margin-top: 10px;" v-if="info1.payStatus === 0">待收款</div> 
 | 
                        <div class="val" style="margin-top: 10px;" v-if="info1.payStatus === 1">已结清</div> 
 | 
                        <div class="val" style="margin-top: 10px;" v-if="info1.payStatus === 2">部分结清</div> 
 | 
                        <div class="val" style="margin-top: 10px;" v-if="info1.payStatus === 3">待付款</div> 
 | 
                        <div class="val" style="margin-top: 10px;" v-if="info1.payStatus === 4">待退款</div> 
 | 
                        <div class="val" style="margin-top: 10px;" v-if="info1.payStatus === 5">已关闭</div> 
 | 
                    </div> 
 | 
                    <div class="item" style="flex: 1;"> 
 | 
                        <div class="la">应{{info.revenueType === 0 ? '收' : '付'}}金额(元)</div> 
 | 
                        <div class="val" style="margin-top: 10px;">{{info1.receivableFee}}</div> 
 | 
                    </div> 
 | 
                    <div class="item" style="flex: 1;"> 
 | 
                        <div class="la">实{{info.revenueType === 0 ? '收' : '付'}}金额(元)</div> 
 | 
                        <div class="val" style="margin-top: 10px;">{{info1.actReceivableFee}}</div> 
 | 
                    </div> 
 | 
                    <div class="item" style="flex: 1;"> 
 | 
                        <div class="la">需{{info.revenueType === 0 ? '收' : '付'}}金额(元)</div> 
 | 
                        <div class="val" style="margin-top: 10px;">{{info1.needReceivableFee}}</div> 
 | 
                    </div> 
 | 
                    <div class="item" style="flex: 1;"> 
 | 
                        <div class="la">应{{info.revenueType === 0 ? '收' : '付'}}日期</div> 
 | 
                        <div class="val" style="margin-top: 10px;">{{info1.planPayDate}}</div> 
 | 
                    </div> 
 | 
                </div> 
 | 
            </div> 
 | 
        </div> 
 | 
        <div class="tabs"> 
 | 
            <div class="tab" :class="{ active: activeTabs == 0 }" @click="tabsClick(0)">流水信息</div> 
 | 
            <div class="tab" :class="{ active: activeTabs == 1 }" @click="tabsClick(1)">关联账单</div> 
 | 
        </div> 
 | 
        <div class="main"> 
 | 
            <div class="title">流水信息</div> 
 | 
            <div class="list" style="background: rgba(0,0,0,0); padding: 0;"> 
 | 
                <div class="item"> 
 | 
                    <div class="la">收支类型</div> 
 | 
                    <div class="val" v-if="info.revenueType === 0">收入</div> 
 | 
                    <div class="val" v-if="info.revenueType === 1">支出</div> 
 | 
                </div> 
 | 
                <div class="item"> 
 | 
                    <div class="la">入账日期</div> 
 | 
                    <div class="val">{{info.actPayDate}}</div> 
 | 
                </div> 
 | 
                <div class="item"> 
 | 
                    <div class="la">发生额(元)</div> 
 | 
                    <div class="val">{{info.actReceivableFee}}</div> 
 | 
                </div> 
 | 
                <div class="item"> 
 | 
                    <div class="la">账单编号</div> 
 | 
                    <div class="val">{{info.billCode}}</div> 
 | 
                </div> 
 | 
                <div class="item"> 
 | 
                    <div class="la">合同编号</div> 
 | 
                    <div class="val">{{info.contractCode}}</div> 
 | 
                </div> 
 | 
                <div class="item"> 
 | 
                    <div class="la">创建时间</div> 
 | 
                    <div class="val">{{info.createDate}}</div> 
 | 
                </div> 
 | 
                <div class="item"> 
 | 
                    <div class="la">对方公司</div> 
 | 
                    <div class="val">{{info.customerName}}</div> 
 | 
                </div> 
 | 
                <div class="item"> 
 | 
                    <div class="la">经办人</div> 
 | 
                    <div class="val">{{info.realname}}</div> 
 | 
                </div> 
 | 
                <div class="item"> 
 | 
                    <div class="la">流水账户</div> 
 | 
                    <div class="val">{{info.accountTitle}}</div> 
 | 
                </div> 
 | 
                <div class="item"> 
 | 
                    <div class="la">备注</div> 
 | 
                    <div class="val">{{info.remark}}</div> 
 | 
                </div> 
 | 
                <div class="item"></div> 
 | 
                <div class="item"></div> 
 | 
            </div> 
 | 
            <div class="title">关联账单</div> 
 | 
            <div class="list" style="background: rgba(0,0,0,0); padding: 0;"> 
 | 
                <el-table 
 | 
                    :data="[info1]" 
 | 
                    border 
 | 
                    style="width: 100%"> 
 | 
                    <el-table-column 
 | 
                        label="费用类型"> 
 | 
                        <template slot-scope="{row}"> 
 | 
                            <span v-if="row.costType === 0">租赁费</span> 
 | 
                            <span v-if="row.costType === 1">物业费</span> 
 | 
                            <span v-if="row.costType === 2">租赁押金</span> 
 | 
                            <span v-if="row.costType === 3">物业押金</span> 
 | 
                            <span v-if="row.costType === 4">水电费</span> 
 | 
                            <span v-if="row.costType === 5">杂项费</span> 
 | 
                            <span v-if="row.costType === 6">其它</span> 
 | 
                            <span v-if="row.costType === 7">保证金</span> 
 | 
                        </template> 
 | 
                    </el-table-column> 
 | 
                    <el-table-column 
 | 
                        prop="receivableFee" 
 | 
                        label="应收/付金额"> 
 | 
                    </el-table-column> 
 | 
                    <el-table-column 
 | 
                        prop="actReceivableFee" 
 | 
                        label="实收金额"> 
 | 
                    </el-table-column> 
 | 
                    <el-table-column 
 | 
                        prop="needReceivableFee" 
 | 
                        label="需收金额"> 
 | 
                    </el-table-column> 
 | 
                    <el-table-column 
 | 
                        label="计费周期"> 
 | 
                        <template slot-scope="{row}"> 
 | 
                            {{row.startDate}} ~ {{row.endDate}} 
 | 
                        </template> 
 | 
                    </el-table-column> 
 | 
                    <el-table-column 
 | 
                        prop="planPayDate" 
 | 
                        label="应收/付日期"> 
 | 
                    </el-table-column> 
 | 
                    <el-table-column 
 | 
                        prop="remark" 
 | 
                        label="备注"> 
 | 
                    </el-table-column> 
 | 
                </el-table> 
 | 
            </div> 
 | 
            <div class="title">流水附件</div> 
 | 
            <div class="list" style="background: rgba(0,0,0,0); padding: 0;"> 
 | 
                <el-table 
 | 
                    :data="info.multifileList" 
 | 
                    border 
 | 
                    style="width: 100%"> 
 | 
                    <el-table-column 
 | 
                        prop="name" 
 | 
                        label="附件名称"> 
 | 
                    </el-table-column> 
 | 
                    <el-table-column 
 | 
                        prop="userName" 
 | 
                        label="操作人"> 
 | 
                    </el-table-column> 
 | 
                    <el-table-column 
 | 
                        prop="createDate" 
 | 
                        label="操作时间"> 
 | 
                    </el-table-column> 
 | 
                </el-table> 
 | 
            </div> 
 | 
            <div class="title">操作记录</div> 
 | 
            <div class="list" style="background: rgba(0,0,0,0); padding: 0;"> 
 | 
                <el-table 
 | 
                    :data="info.editRecordDataVOList" 
 | 
                    border 
 | 
                    style="width: 100%"> 
 | 
                    <el-table-column 
 | 
                        width="200" 
 | 
                        prop="editUserName" 
 | 
                        label="操作人"> 
 | 
                    </el-table-column> 
 | 
                    <el-table-column 
 | 
                        width="200" 
 | 
                        prop="editTime" 
 | 
                        label="操作时间"> 
 | 
                    </el-table-column> 
 | 
                    <el-table-column 
 | 
                        prop="editRemark" 
 | 
                        label="操作内容"> 
 | 
                    </el-table-column> 
 | 
                </el-table> 
 | 
            </div> 
 | 
        </div> 
 | 
    </GlobalWindow> 
 | 
</template> 
 | 
  
 | 
<script> 
 | 
  import GlobalWindow from '@/components/common/GlobalWindow' 
 | 
  import BaseOpera from '@/components/base/BaseOpera' 
 | 
  import { close, getById } from '@/api/ywContractRevenue' 
 | 
  import { getYwContractBillById } from '@/api/contract' 
 | 
  export default { 
 | 
    name: 'details', 
 | 
    components: { 
 | 
      GlobalWindow 
 | 
    }, 
 | 
    extends: BaseOpera, 
 | 
    data() { 
 | 
      return { 
 | 
        id: '', 
 | 
        activeTabs: '', 
 | 
        info: {}, 
 | 
        info1: {} 
 | 
      } 
 | 
    }, 
 | 
    methods: { 
 | 
      open (title, id) { 
 | 
        this.title = title 
 | 
        this.id = id 
 | 
        this.getDetails() 
 | 
      }, 
 | 
      getDetails () { 
 | 
        getById(this.id) 
 | 
          .then(res => { 
 | 
            this.info = res 
 | 
            this.getDetails1() 
 | 
          }) 
 | 
      }, 
 | 
      getDetails1 () { 
 | 
        getYwContractBillById(this.info.billId) 
 | 
          .then(res => { 
 | 
            this.info1 = res 
 | 
            this.visible = true 
 | 
          }) 
 | 
      }, 
 | 
      tabsClick(val) { 
 | 
        this.activeTabs = val 
 | 
      }, 
 | 
      isShow (status, contractStatus) { 
 | 
        if (status === 1) return false 
 | 
        if (contractStatus === '3' || contractStatus === '4') return false 
 | 
        return true 
 | 
      }, 
 | 
      closeDW () { 
 | 
        this.$confirm('确认关闭此流水吗?', '提示', { 
 | 
          confirmButtonText: '确定', 
 | 
          cancelButtonText: '取消', 
 | 
          type: 'warning' 
 | 
        }).then(() => { 
 | 
          close(this.info.id) 
 | 
            .then(res => { 
 | 
              this.getDetails() 
 | 
            }) 
 | 
        }).catch(() => { 
 | 
  
 | 
        }); 
 | 
      }, 
 | 
    } 
 | 
  } 
 | 
</script> 
 | 
  
 | 
<style lang="scss" scoped> 
 | 
    @import '@/assets/style/variables.scss'; 
 | 
    .home_title { 
 | 
        display: flex; 
 | 
        justify-content: space-between; 
 | 
        align-items: center; 
 | 
         
 | 
        .left { 
 | 
            font-weight: 500; 
 | 
            font-size: 16px; 
 | 
            margin-right: 10px; 
 | 
            display: flex; 
 | 
            align-items: center; 
 | 
             
 | 
            .status { 
 | 
                padding: 0 6px; 
 | 
                height: 22px; 
 | 
                line-height: 22px; 
 | 
                border-radius: 2px; 
 | 
                border: 1px solid #00BA92; 
 | 
                color: #00BA92; 
 | 
                font-weight: 400; 
 | 
                font-size: 12px; 
 | 
                color: #00BA92; 
 | 
            } 
 | 
        } 
 | 
    } 
 | 
     
 | 
    .remark { 
 | 
        background: #E8EBF7; 
 | 
        border-radius: 2px; 
 | 
        padding: 10px 20px; 
 | 
        font-size: 16px; 
 | 
        margin: 20px 0 
 | 
    } 
 | 
     
 | 
    .tabs { 
 | 
        border-bottom: 1px solid #DFE2E8; 
 | 
        display: flex; 
 | 
        margin-bottom: 20px; 
 | 
        .tab { 
 | 
            height: 58px; 
 | 
            line-height: 58px; 
 | 
            font-size: 16px; 
 | 
            color: #666666; 
 | 
            margin-right: 30px; 
 | 
            cursor: pointer; 
 | 
        } 
 | 
         
 | 
        .active { 
 | 
            font-weight: 500; 
 | 
            color: $primary-color; 
 | 
            border-bottom: 2px solid $primary-color; 
 | 
        } 
 | 
    } 
 | 
     
 | 
    .line { 
 | 
        width: 100%; 
 | 
        margin: 15px 0; 
 | 
        border-bottom: 1px dashed #eaeaea; 
 | 
    } 
 | 
     
 | 
    .main { 
 | 
        .title { 
 | 
            font-weight: 500; 
 | 
            font-size: 18px; 
 | 
            color: $primary-color; 
 | 
            margin-bottom: 15px; 
 | 
        } 
 | 
         
 | 
        .list { 
 | 
            display: flex; 
 | 
            flex-wrap: wrap; 
 | 
            /*background: #F7F7F7;*/ 
 | 
            border-radius: 2px; 
 | 
            padding: 0 20px; 
 | 
            margin-bottom: 20px; 
 | 
             
 | 
            .item { 
 | 
                flex: 25%; 
 | 
                margin-bottom: 20px; 
 | 
                 
 | 
                .la { 
 | 
                    color: #7f7f7f; 
 | 
                    margin-bottom: 5px; 
 | 
                } 
 | 
            } 
 | 
        } 
 | 
    } 
 | 
</style> 
 |