<template>
    <el-tabs type="border-card">
        <!-- 资产信息-->
        <el-tab-pane label="资产信息">
            <!-- <div class="app-container"> -->
            <el-form ref="form" :model="form" :rules="rules" :inline="true" style="margin-top: 10px" label-width="auto" >
                    <el-row>
                        <el-col :span="8">
                                <el-form-item label="融信编号" prop="zfiNumber">
                                    <el-input v-model="form.zfiNumber" style="width: 200px" disabled/>
                                </el-form-item>
                        </el-col> 
                        <el-col :span="8">
                                <el-form-item label="创建时间" prop="createTime">
                                <el-date-picker disabled size="small" style="width: 200px" v-model="form.createTime" type="datetime" value-format="yyyy-MM-dd HH:mm:ss">
                                    </el-date-picker>
                                </el-form-item>
                        </el-col> 
                        <el-col :span="8">
                                <el-form-item label="创建人" prop="createName">
                                    <el-input v-model="form.createName" style="width: 200px" disabled/>
                                </el-form-item>
                        </el-col> 
                    </el-row>
                    <el-row>
                        <el-divider content-position="left" >资产信息</el-divider>
                    <el-form-item  style="margin-left: 100px">
                    <!--  <el-button size="mini" type="primary" @click="openTicket">选择</el-button>
                        <el-button size="mini" @click="deleteTicekt">清空全部</el-button> -->
                        <el-form-item label="合计金额:"> 
                                <span>{{checkTotalAmt}}</span>
                        </el-form-item>
                        <el-form-item label="金额大写:"> 
                                <span>{{checkTotalBigAmt}}</span>
                        </el-form-item>
                        
                        <el-table :data="ticketList" style="width: 1100px">
                            <el-table-column label="账款名称"  align="center"  prop="zbiName" show-overflow-tooltip />
                            <el-table-column label="应收企业"  align="center"  prop="receiveName"/>
                            <el-table-column label="应付企业"  align="center"  prop="payName"    />
                            <el-table-column label="预计还款期"  align="center"  prop="zbiPayDate" show-overflow-tooltip />
                            <el-table-column label="金额"  align="center"  prop="zbiAmount" />
                            <!-- <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="250">
                                <template slot-scope="scope">
                                <el-button
                                    size="mini"
                                    type="text"
                                    icon="el-icon-delete"
                                    @click="handleDelete(scope.$index, ticketList)"
                                >删除</el-button>
                                </template>
                            </el-table-column> -->
                        </el-table>
                    </el-form-item>
                    <el-col :span="8">
                            <el-form-item label="开立方" prop="openName">
                                <el-input v-model="form.openName" style="width: 200px" disabled />
                            </el-form-item>
                    </el-col> 
                    <el-col :span="8">
                    <el-form-item label="接收方" prop="receiveName">
                        <el-input v-model="form.receiveName" style="width: 200px" disabled />
                    </el-form-item>
                    </el-col>
                    <el-col :span="8">
                        <el-form-item label="签发有效期" prop="zfiEffectiveDate"> 
                            <el-date-picker clearable size="small" style="width: 200px" :disabled="isUpdate"
                                v-model="form.zfiEffectiveDate"
                                type="date"
                                value-format="yyyy-MM-dd"
                                placeholder="选择签发有效期"
                                :picker-options="pickerOptions">
                            </el-date-picker>
                            <el-tooltip class="item" effect="light" content="签发有效期：即指定签发截止日期，对方企业在签发截止日内未处理该笔融信，本次融信操作将自动失效" placement="top">
                                <i class="el-icon-question" style="font-size: 23px;"/>
                            </el-tooltip>
                        </el-form-item>
                    </el-col>
                </el-row>
                <el-row>
                    <el-col :span="8">
                        <el-form-item label="承诺还款日" prop="zfiExpireDate"> 
                            <el-date-picker clearable size="small" style="width: 200px"
                                v-model="form.zfiExpireDate"
                                type="date"
                                value-format="yyyy-MM-dd"
                                placeholder="选择承诺还款日"
                                :picker-options="pickerOptions">
                            </el-date-picker>
                        </el-form-item>
                    </el-col>
                    <el-col :span="8" v-if="this.zfiCreateType == 0">
                        <el-form-item label="授信额度" prop="zfiCoreQuotaId">
                            <el-select style="width:300px" v-model="form.zfiCoreQuotaId" filterable clearable remote>
                                <el-option v-for="item in creditLineList" :key="item.value" :label="item.label+'/'+item.remaining" :value="item.value">
                                </el-option>
                            </el-select>
                        </el-form-item>
                    </el-col>
                    <el-col :span="8" v-if="this.zfiCreateType != 0">
                        <el-form-item label="授信额度" prop="zfpName" >
                        <el-input v-model="form.zfpName" style="width: 300px" disabled/>
                        </el-form-item>
                
                    </el-col>
                    <el-col :span="8" v-if="this.zfiCreateType == 0">
                        <span style="display:none">可用额度:</span>
                        <span style="display:none">{{availableAmt}}</span>
                        <span>有效期:</span>
                        <span>{{validityDate}}</span>
                        <br>
                        <span>最小融资金额:</span>
                        <span>{{zfpMinimumAmount}}</span>  
                    </el-col> 
                </el-row>  
                <el-row>
                    <el-col :span="8">
                        <el-form-item label="签发金额" prop="zfiAmount"> 
                            <el-input v-model="form.zfiAmount" style="width: 200px" @input="getBigSmall"  @input.native="changeRate($event,form.zfiAmount)"/>
                        </el-form-item>
                    </el-col>
                    <!--  <el-col :span="8">
                            <el-form-item label="收款账号" prop="zfiCollectionAccount" v-if="zfpcrLoanType != '0'">
                                <el-input v-model="form.zfiCollectionAccount" style="width: 200px" />
                            </el-form-item>
                    </el-col> -->  
                </el-row>
                <el-row>
                    <el-col :span="8">
                        <el-form-item label="金额大写" prop="issuedAmount"> 
                            {{issuedAmount}}
                        </el-form-item>
                    </el-col>  
                </el-row>  
                <p>请知悉，资产信息仅能接受指定的销售方与购买方的往来账款(含账款基本信息、贸易合同与贸易发票等)；如须使用系统尚未维护的往来账款，请点击新增应付账款
                </p>    
            </el-form>
            <!-- 发票附件 -->
            <el-divider content-position="left">发票附件</el-divider>
            <el-table :data="invoiceFileList"  style="width: 100%">
                    <el-table-column label="文件名称" align="center" prop="pfiFileName" show-overflow-tooltip />
                    <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width='300' fixed="right" >
                        <template slot-scope="scope">
                            <el-button
                                size="mini"
                                type="text"
                                icon="el-icon-view"
                                @click="handleDownload(scope.row)"
                            >下载</el-button>
                            <el-button
                                size="mini"
                                type="text"
                                icon="el-icon-view"
                                @click="handlePreview(scope.row)"
                            >预览</el-button>
                        </template>
                    </el-table-column>
            </el-table>
            <!-- 合同附件 -->
            <el-divider content-position="left">合同附件</el-divider>
            <el-table :data="contractFileList"  style="width: 100%">
                <el-table-column label="文件名称" align="center" prop="pfiFileName" show-overflow-tooltip />
                <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width='300' fixed="right" >
                        <template slot-scope="scope">
                            <el-button
                                size="mini"
                                type="text"
                                icon="el-icon-view"
                                @click="handleDownload(scope.row)"
                            >下载</el-button>
                            <el-button
                                size="mini"
                                type="text"
                                icon="el-icon-view"
                                @click="handlePreview(scope.row)"
                            >预览</el-button>
                        </template>
                    </el-table-column>
            </el-table>
            <!-- 其他附件 -->
            <el-divider content-position="left">其他附件</el-divider>
            <el-table :data="otherFileList"  style="width: 100%">
                    <el-table-column label="文件名称" align="center" prop="pfiFileName" show-overflow-tooltip />
                    <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width='300' fixed="right" >
                        <template slot-scope="scope">
                            <el-button
                                size="mini"
                                type="text"
                                icon="el-icon-view"
                                @click="handleDownload(scope.row)"
                            >下载</el-button>
                            <el-button
                                size="mini"
                                type="text"
                                icon="el-icon-view"
                                @click="handlePreview(scope.row)"
                            >预览</el-button>
                        </template>
                    </el-table-column>
            </el-table>
            <div class="footer" style="float: right;
                margin-bottom:1px;">
                <el-button type="info" @click="submitForm('01')">拒绝</el-button>
                <el-button type="primary" @click="submitForm('00')" v-if="isHas">内部审批</el-button>
                <el-button type="primary" @click="confirmApproval()" v-if="!isHas">确权</el-button>
                <el-button @click="cancel">取 消</el-button>
            </div>
            <!-- 应付账款信息 -->
            <el-dialog :title="payTitle" :visible.sync="open" width="1120px" append-to-body>
            <el-form :model="queryParamsPay"  ref="formQuery"  :inline="true"  label-width="68px"  style="margin-bottom: -21px">
                <el-form-item label="账款名称" prop="zbiName">
                    <el-input
                        v-model="queryParamsPay.zbiName"
                        placeholder="请输入账款名称"
                        clearable
                        size="small"
                        maxlength="11"
                        @keyup.enter.native="handleQuerys"/>
                </el-form-item>
                <el-form-item label="应付企业" prop="payName">
                    <el-input
                        v-model="queryParamsPay.payName"
                        placeholder="请输入应付企业"
                        clearable
                        size="small"
                        maxlength="11"
                        @keyup.enter.native="handleQuerys"/>
                </el-form-item>
                <el-form-item>
                    <el-button
                        type="cyan"
                        icon="el-icon-search"
                        size="mini"
                        @click="handleQuerys"
                        >搜索</el-button>
                    <el-button icon="el-icon-refresh" size="mini" @click="resetQuerys"
                        >重置</el-button>
                </el-form-item>
            </el-form>
            <el-table :data="payList"
                ref="tablePay"
                class="single-select-table"
                @selection-change="handleSelectionChange" 
                :row-key="rowkey">
                <el-table-column
                type="selection"
                :reserve-selection="true"
                width="50"
                align="center"/>
                <el-table-column label="序号" type="index" width="50" align="center">
                <template slot-scope="scope">
                    <span>{{ (queryParamsPay.pageNum - 1) * queryParamsPay.pageSize + scope.$index + 1}}</span>
                </template>
                </el-table-column>
                <el-table-column label="账款名称"  align="center"  prop="zbiName" show-overflow-tooltip />
                <el-table-column label="应收企业"  align="center"  prop="receiveName"/>
                <el-table-column label="应付企业"  align="center"  prop="payName"    />
                <el-table-column label="预计还款期"  align="center"  prop="zbiPayDate" show-overflow-tooltip />
                <el-table-column label="金额"  align="center"  prop="zbiAmount" />
            </el-table>
            <pagination
                v-show="total > 0"
                :total="total"
                :page.sync="queryParamsPay.pageNum"
                :limit.sync="queryParamsPay.pageSize"
                @pagination="getAccountsCollection" />
            <span slot="footer" class="dialog-footer">
                <el-button size="mini" @click="cancelTicket">取消</el-button>
                <el-button size="mini" type="primary" @click="closeTicket">确认</el-button>
            </span>
            </el-dialog>
            <!--预览-->
            <el-dialog  :visible.sync="openFile" width="1000px" append-to-body>
                <img :src="wordUrl" v-if="show" width='450px' height='500px'/>
                <iframe :src="wordUrl" width='800px' height='600px' frameborder='1' v-if="heid"/>
            </el-dialog>
            <el-dialog
            :visible.sync="pdfShowDialog"
            width="70%"
            height = "60%"
            append-to-body>
                <pdf-show :pdfFileList="pdfFileList" :zfiId="this.form.zfiId" :parent="parent">
                </pdf-show>
            </el-dialog>
        </el-tab-pane>
        <!-- 签署合同-->
        <el-tab-pane label="签署合同">
            <el-table :data="creditSealList"  style="width: 100%">
                <el-table-column label="文件名称" align="center" prop="pfiFileName" show-overflow-tooltip>
                    <template slot-scope="scope">
                        <img    style="width:30px;height:30px;"
                            src="../../../assets/images/pdf.png"  
                        />
                        <span>{{scope.row.pfiFileName}}
                        </span>
                    </template>
                </el-table-column>
                <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width='300' fixed="right" >
                    <template slot-scope="scope">
                        <el-button
                            size="mini"
                            type="text"
                            icon="el-icon-view"
                            @click="handleDownload(scope.row)"
                        >下载</el-button>
                        <el-button
                            size="mini"
                            type="text"
                            icon="el-icon-view"
                            @click="handlePreview(scope.row)"
                        >预览</el-button>
                    </template>
                </el-table-column>
            </el-table>
        </el-tab-pane>
        <!-- </div> -->
    </el-tabs>
</template>
<script>
import {listCreditLine,getCreditDetail,getAccountsCollection,getAvailableBalance,getFile} from "@/api/service/credit/credit";
import {approveCredit,getCreditSealFile,getContractFile} from "@/api/service/credit/creditHandle";
import {accAdd} from "@/utils/calculation";
import {isOpenApproval} from "@/api/service/credit/approvalRelatedCredit";
import {getToken} from "@/utils/auth";
import pdfShow from "./pdfShow";
export default {
    name: "addCredit",
    components: {pdfShow},
    data() {
        return {
            // 总条数
            total: 0,
            // 查询参数
            queryParams: {
                pageNum: 1,
                pageSize: 10,
            },
            creditParams: {
                zfsqId:null,
                type: "1",
            },
            supplierCreditParams: {
                 zfsqId:null
            },
            queryParamsPay: {
                pageNum: 1,
                pageSize: 10,
                payName:null,
                zbiName:null
            },
            // 表单参数
            form: {

            },
            // 表单校验
            rules: {
               
              /*   //签发有效期
                zfiEffectiveDate: [
                    {
                        required: true,
                        message: "请选择签发有效期",
                        trigger: ["blur", "change"],
                    },
                ],
                //承诺还款日
                zfiExpireDate: [
                    {
                        required: true,
                        message: "请选择承诺还款日",
                        trigger: ["blur", "change"],
                    },
                ],
                //授信额度
                zfiCoreQuotaId: [
                    {
                        required: true,
                        message: "请选择授信额度",
                        trigger: ["blur", "change"],
                    },
                ],
                //签发金额
                 zfiAmount: [
                    {
                        required: true,
                        message: "请输入签发金额",
                        trigger: ["blur", "change"],
                    },
                ] */
            },
            // 是否显示弹出层
            open: false,
           //授信
           creditLineList:[],
           //接收方
           supplierList:[],
           //应付账款
           payList:[],
           //应付账款表格数据
           ticketList: [],
           //应付标题
           payTitle:"",
           //可用额度
           availableAmt:"0.00",
           //有效期
           validityDate:"",
           //有效期类型
           zfpcrDateType:"" ,
           //合计选中的应付账款的金额
           checkTotalAmt:"0.00",
           //合计选中的应付账款的大写金额
            checkTotalBigAmt:"零元整",
            //签发金额大写
            issuedAmount:"零元整",
            //产品是否可拆分
            zfpSplit:"",
            //融资放款方式
            zfpcrLoanType:"",
            //产品编号
            zfpId:"",
            //利率
            zfpcrRate:'',
            //最小融资金额
            zfpMinimumAmount:"",
            //合同附件
            contractFileList:[],
            //发票附件
            invoiceFileList:[],
            //其他文件
            otherFileList:[],
            //盖章文件
            creditSealList:[],
            //融信类型
            zfiCreateType:"",
            //是否可编辑
            isUpdate:false,
            pickerOptions:{
                disabledDate(v){
                    return v.getTime() < new Date().getTime()-86400000;
                }
            },
            openFile:false,
            wordUrl: "",
            show:false,
            heid:false,
            //控制通过，确权按钮展示或隐藏
            isHas:true,
            //融信编号
            zfiId:"",
            //核心审批状态
            zfiCoreStatus:"",
            pdfFileList : [],
            pdfShowDialog : false,
            parent : this,
        };
    },
    watch:{
        'form.zfiCoreQuotaId':'change'
    },
    activated() {
        const zfiId = this.$route.params && this.$route.params.zfiId;
        this.zfiId = zfiId;
        getCreditDetail(zfiId).then((response) => {
             if(response.data){
                this.form = response.data.financeInf;
                //融信类型
                this.zfiCreateType = response.data.financeInf.zfiCreateType;
                //核心审批状态
                this.zfiCoreStatus = response.data.financeInf.zfiCoreStatus;

                //供应商开立
                if(this.zfiCreateType == '2'){
                        this.isUpdate = true;
                }else{
                      this.isUpdate = false;
                }
                //接收方
                this.form.receiveName = response.data.receiveName;
                //产品
                this.form.zfpName = response.data.zfpName;
                //开立方
                this.form.openName = response.data.openName;
                //创建人
                this.form.createName = response.data.createName;
                //签发金额大写
                this.issuedAmount = this.smallToBig(this.form.zfiAmount);
             }
             if(response.data.payList){
                 this.ticketList = response.data.payList.records;
                 this.getReTotal(this.ticketList);
                //附件
                 this.getFile(this.ticketList);
             }
             //查询有无确权的内部审批
             this.isOpenApproval();
             //盖章合同
             this.getCreditSealFile();
             
        })
        //授信额度
        this.listCreditLine();
    },
    methods: {

        // 取消按钮
        cancel() {
            this.$store.dispatch("tagsView/delView", this.$route);
            this.$router.go(-1);
        },
         /* 多选框跨页 */
        rowkeyCustomer(row) {
            return row.cciId;
        },
        //供应商授信额度    
        listCreditLine(){
                listCreditLine(this.creditParams).then((response) => {
                    this.creditLineList = response.data.map((item) => {
                        return {
                            value: item.zfpcrId,
                            label: item.zfpName,
                            zfpcrDateType: item.zfpcrDateType,
                            zfpcrEndDate: item.zfpcrEndDate,
                            zfpcrLoanType: item.zfpcrLoanType,
                            zfpSplit: item.zfpSplit,
                            zfpId: item.zfpId,
                            zfpcrRate:item.zfpcrRate,
                            zfpAuthType:item.zfpAuthType,
                            remaining:item.remaining,
                            zfpMinimumAmount:item.zfpMinimumAmount
                        };
                    });
              });
        },
        //应收账款查询列表
        getAccountsCollection() {
            getAccountsCollection(this.queryParamsPay).then((response) => {
                this.payList = response.data.records;
                this.selectChecked();
                this.total = response.data.total;
            });
        },
        //文件下载
        handleDownload(row){
            const pfiUrl = row.pfiUrl;
            if(pfiUrl != null && pfiUrl != ''){
            window.open(pfiUrl +"/"+ getToken());
            }else{
                this.$message({
                message: '该附件不存在！',
                type: 'warning'
                });
                return;
            }
        },
        resetQuerys() {
            this.resetForm("formQuery");
            this.handleQuerys();
        },
        handleQuerys() {
            this.queryParamsPay.pageNum = 1;
            this.getAccountsCollection();
        },
        //打开应付账款选择列表
        openTicket() {
            //清空搜索条件
            this.queryParamsPay.zbiName = "";
            this.queryParamsPay.payName = "";
            this.queryParamsPay.pageNum = 1;
            this.getAccountsCollection();
            this.open = true;
            this.payTitle = "应收账款";
        },
        //获取签发金额大写
        getBigSmall(){
            this.issuedAmount = this.smallToBig(this.form.zfiAmount);
        },
        selectChecked() {
            this.ticketList.forEach((item) => {
                this.payList.forEach(row => {
                if (row.zbiId == item.zbiId) {
                    this.$nextTick(() => {
                    this.$refs.tablePay && this.$refs.tablePay.toggleRowSelection(row, true);
                    })
                }
                });
            });
             //合计
            this.getReTotal(this.ticketList);
             //附件
            this.getFile(this.ticketList);
        },
        //获取附件信息
        getFile(datas){
            var queryParamsFile = {};
            queryParamsFile.ticketList = datas;
            getFile(queryParamsFile).then((response) => {
                if(response.data){
                    //获取发票文件
                     this.invoiceFileList = response.data.invoiceFileList;
                    //获取合同文件
                     this.contractFileList = response.data.contractFileList;
                    //获取其他文件
                    this.otherFileList = response.data.otherFileList;
                }
            });
        },
        //获取盖章文件
        getCreditSealFile(){
            getCreditSealFile(this.form).then((response) => {
                if(response.data.list){
                    this.creditSealList = response.data.list;
                }
            });
        },
        /* 多选框跨页 */
        rowkey(row) {
            return row.zbiId;
        },
        // 多选框选中数据
        handleSelectionChange(val) {
            this.chooseTicket = val
        },
        // 确认选择
      closeTicket() {
        if(this.chooseTicket.length > 0){
               var flag = true;
                //获取选中第一个的应付企业
                var payName = this.chooseTicket[0].payName;
                //获取选中第一个的预计还款日期
                var zbiPayDate = this.chooseTicket[0].zbiPayDate;
                for(var i = 0 ;i < this.chooseTicket.length;i++){
                    if(payName != this.chooseTicket[i].payName){
                            flag = false;
                            this.$message({
                                message: '请选择应付企业相同的应付账款',
                                type: 'warning'
                            });
                            break;
                    }else if(zbiPayDate != this.chooseTicket[i].zbiPayDate){
                            flag = false;
                            this.$message({
                                message: '请选择预计还款日期相同的应付账款',
                                type: 'warning'
                            });
                            break;
                    }
                }
                if(flag){
                    //合计
                    this.getReTotal(this.chooseTicket);
                    this.ticketList = this.chooseTicket;
                    //附件
                    this.getFile(this.ticketList);
                    //开立方赋值
                    this.$set(this.form, "openName",this.chooseTicket[0].payName);
                    this.open = false;
                }
        }else{
            this.$message({
            message: '请选择应收账款',
            type: 'warning'
            });
        }
    },

    //重新合计
    getReTotal(chooseTicket){
                 //合计
                this.checkTotalAmt = "0.00";
                for(var i = 0; i < chooseTicket.length;i++){
                        this.checkTotalAmt  = accAdd(this.checkTotalAmt,chooseTicket[i].zbiAmount,2);
                }
                //签发金额
               // this.$set(this.form, "zfiAmount",this.checkTotalAmt);
                //签发金额大写
                //this.issuedAmount = this.smallToBig(this.checkTotalAmt);
                this.checkTotalBigAmt = this.smallToBig(this.checkTotalAmt);
                this.checkTotalAmt = this.amtFormat(this.checkTotalAmt);
    },
    //取消选择按钮
    cancelTicket(){
       /*  this.ticketList = [];
        if(this.$refs.tablePay){
            this.$refs.tablePay.clearSelection();
        } */
        this.open = false;
    },
    /** 清空选择信息 */
    deleteTicekt() {
        this.ticketList = [];
        this.checkTotalAmt = "0.00";
        this.checkTotalBigAmt = this.smallToBig(this.checkTotalAmt);
        //开立方清空
        this.$set(this.form, "openName","");
        if(this.$refs.tablePay){
            this.$refs.tablePay.clearSelection();
        }
        this.getFile(this.ticketList);
    },
    /* 删除按钮 */
    handleDelete(index, rows) {
        rows.splice(index, 1);
        if(this.$refs.tablePay){
            this.$refs.tablePay.clearSelection();
        }
        this.selectChecked();
    },
    onSelectAll() {
        if(this.$refs.tablePay){
            this.$refs.tablePay.clearSelection();
        }
    },
    //选择授信触发
    change(val) {
       if (!val) {
            //可用额度
            this.availableAmt = "0.00";
            //有效期
            this.validityDate ="";
            //产品是否可拆分
            this.zfpSplit= "",
            //融资放款方式
            this.zfpcrLoanType = "";
            //产品
            this.zfpId = "";
            //利率
            this.zfpcrRate = "";
            //有效期类型
            this.zfpcrDateType = "";
            //最小融资金额
            this.zfpMinimumAmount = "";
            return;
        }
        let obj = {};
        obj = this.creditLineList.find(item => {
            return item.value === val;
        });
        //获取有效期的类型
         this.zfpcrDateType = obj.zfpcrDateType;
         //产品是否可拆分
        this.zfpSplit= obj.zfpSplit;
        //放款方式
        this.zfpcrLoanType = obj.zfpcrLoanType;
        //产品
         this.zfpId = obj.zfpId;
         //利率
         this.zfpcrRate = obj.zfpcrRate;
         //最小融资金额
         this.zfpMinimumAmount = obj.zfpMinimumAmount;
        //长期
        if("0"== this.zfpcrDateType){
            this.validityDate = "长期";
        }else{
             this.validityDate = obj.zfpcrEndDate;
        }
        var lineQueryParam = {};
        lineQueryParam.zfpcrId = val;
        //获取可用额度
        getAvailableBalance(lineQueryParam).then((response) => {
            this.availableAmt = response.data.remaining;
        });
    },
    //格式化金额 
    amtFormat(cellValue) {
      if(cellValue == null || cellValue== undefined || cellValue == ''){
      cellValue = '0.00'
      }
      cellValue += '';
            if (!cellValue.includes('.')) {
      cellValue += '.00';
      }
      console.log(cellValue);
            return cellValue.replace(/(\d)(?=(\d{3})+\.)/g, function ($0, $1) {
              return $1 + ',';
            }).replace(/\.$/, '');
    },
     /* //  将数字金额转换为大写金额 */
    smallToBig(money) {
      //  将数字金额转换为大写金额
      var cnNums = new Array(
        "零", "壹", "贰", "叁", "肆", "伍", "陆", "柒", "捌", "玖" ); //汉字的数字
      var cnIntRadice = new Array("", "拾", "佰", "仟"); //基本单位
      var cnIntUnits = new Array("", "万", "亿", "兆"); //对应整数部分扩展单位
      var cnDecUnits = new Array("角", "分", "毫", "厘"); //对应小数部分单位
      var cnInteger = "整"; //整数金额时后面跟的字符
      var cnIntLast = "元"; //整数完以后的单位
      //最大处理的数字
      var maxNum = 999999999999999.9999;
      var integerNum; //金额整数部分
      var decimalNum; //金额小数部分
      //输出的中文金额字符串
      var chineseStr = "";
      var parts; //分离金额后用的数组，预定义
      if (money == "" || money == null || money == undefined) {
        return "零元零角零分";
      }
      money = parseFloat(money);
      if (money >= maxNum) {
        //超出最大处理数字
        return "超出最大处理数字";
      }
      if (money == 0) {
        chineseStr = cnNums[0] + cnIntLast + cnInteger;
        return chineseStr;
      }
      //四舍五入保留两位小数,转换为字符串
      money = Math.round(money * 100).toString();
      integerNum = money.substr(0, money.length - 2);
      decimalNum = money.substr(money.length - 2);
      //获取整型部分转换
      if (parseInt(integerNum, 10) > 0) {
        var zeroCount = 0;
        var IntLen = integerNum.length;
        for (var i = 0; i < IntLen; i++) {
          var n = integerNum.substr(i, 1);
          var p = IntLen - i - 1;
          var q = p / 4;
          var m = p % 4;
          if (n == "0") {
            zeroCount++;
          } else {
            if (zeroCount > 0) {
              chineseStr += cnNums[0];
            }
            //归零
            zeroCount = 0;
            chineseStr += cnNums[parseInt(n)] + cnIntRadice[m];
          }
          if (m == 0 && zeroCount < 4) {
            chineseStr += cnIntUnits[q];
          }
        }
        chineseStr += cnIntLast;
      }
      //小数部分
      if (decimalNum != "") {
        var decLen = decimalNum.length;
        for (var i = 0; i < decLen; i++) {
          var n = decimalNum.substr(i, 1);
          if (n != "0") {
            chineseStr += cnNums[Number(n)] + cnDecUnits[i];
          }
        }
      }
      if (chineseStr == "") {
        chineseStr += cnNums[0] + cnIntLast + cnInteger;
      } else if (decimalNum == "" || /^0*$/.test(decimalNum)) {
        chineseStr += cnInteger;
      }
      return chineseStr;
    },
    //提交
    submitForm(param){
      this.$refs["form"].validate(valid => {
               //通过
              if("00" == param){
                  if(!this.form.zfiCoreQuotaId){
                            this.$message({
                                message: '请选择授信额度',
                                type: 'warning'
                            });
                            return;
                    }

                  if(!this.form.zfiEffectiveDate){
                            this.$message({
                                message: '请选择签发有效期',
                                type: 'warning'
                            });
                            return;
                    }

                  if(!this.form.zfiExpireDate){
                            this.$message({
                                message: '请选择承诺还款日',
                                type: 'warning'
                            });
                            return;
                    }

                    //融信申请
                    if(this.zfiCreateType == '0'){
                          if(parseFloat(this.form.zfiAmount) < parseFloat(this.zfpMinimumAmount)){
                                this.$message({
                                        message: '签发金额不可小于产品的最小融资金额',
                                        type: 'warning'
                                    });
                                    return;
                            }
                        if(parseFloat(this.form.zfiAmount) > parseFloat(this.availableAmt)){
                                    this.$message({
                                            message: '签发金额不可大于可用金额',
                                            type: 'warning'
                                        });
                                        return;
                                }   
                    }
                   
              }
            if (valid) {
               const loading = this.$loading({
                        lock: true,
                        text: 'Loading',
                        background: 'rgba(0, 0, 0,0)'
                    });
                    this.form.flag = param;
                    //产品
                    this.form.zfpId = this.zfpId;
                    //利率
                    this.form.zfiRate = this.zfpcrRate;
                    //最小融资金额
                    this.form.zfpMinimumAmount = this.zfpMinimumAmount;
                    //可用金额
                    this.form.availableAmt = this.availableAmt;
                    approveCredit(this.form).then(response => {
                        loading.close();
                        //通过
                        if("00" == param){
                            this.msgSuccess("融信资料已提交内部审批");
                            this.$store.dispatch("tagsView/delView", this.$route);
                            this.$router.go(-1);
                        }else if("01" == param){//拒绝
                            this.msgSuccess("该笔融信将作废");
                            this.$store.dispatch("tagsView/delView", this.$route);
                            this.$router.go(-1);
                        }
                    }).catch((response)=>{
                        loading.close();
                    });
            }
        });
    },
    //金额去掉千分位
    moneyDelete(num){
            if(num &&num != undefined && num != null){
                let _num = num;
                _num = _num.toString();
                 _num = _num.replace(/,/gi,'');
                 return _num;
            }else{
                return num;
            }
    },
    //预览
    handlePreview(row) {
        const pfiUrl = row.pfiUrl;
        const pfiFileName = row.pfiFileName;
        if (row.pfiUrl) {
            console.log(pfiFileName.substr(-3));
            if (pfiFileName.substr(-3) == "pdf") {
                this.wordUrl = pfiUrl + "/" + getToken();
                this.show=false;
                this.heid=true;
            } else if (
                pfiFileName.substr(-3) == "jpg" ||
                pfiFileName.substr(-3) == "png" ||
                pfiFileName.substr(-3) == "JPG" ||
                pfiFileName.substr(-3) == "PNG" ||
                pfiFileName.substr(-4) == "jpeg" ||
                pfiFileName.substr(-3) == "JPEG" 
            ) {
                this.wordUrl =
                    pfiUrl +
                    "/" +
                    getToken();
                    this.show=true;
                    this.heid=false;
                        console.log("====>",this.wordUrl);
            } else if (
                pfiFileName.substr(-3) == "doc" ||
                pfiFileName.substr(-3) == "DOC"||
                pfiFileName.substr(-4) == "docx" ||
                pfiFileName.substr(-3) == "DOCX"
            ) {
                this.wordUrl =
                    "https://view.officeapps.live.com/op/view.aspx?src=" +
                    pfiUrl +
                    "/" +
                    getToken() +
                    "/" +
                    pfiFileName;
                    this.show=false;
                    this.heid=true;
                    console.log("====>",this.wordUrl);
            } else {
                this.$message({
                    message: "暂不支持该类型文件预览",
                    type: "warning",
                });
                return;
            }
        }
        this.openFile = true;
    },
    changeRate(e,input){
      e.target.value=(e.target.value.match(/^\d*(\.?\d{0,2})/g)[0]) || null
      this.input=e.target.value
      this.form.zfiAmount=this.input
    },
    //查询有无确权内部审批
    isOpenApproval(){
         var confirmParam = {};
         confirmParam.menuId = "1000000007";
         isOpenApproval(confirmParam).then((response) => {
             var result = response.data.isOpen;
            //有确权内部审批
            if(true == result){
                //获取核心审批状态(拒绝或者状态为空时显示内部审批按钮)
                if(this.zfiCoreStatus == "02" || this.zfiCoreStatus == "" || this.zfiCoreStatus == "null" || this.zfiCoreStatus == null ){
                    this.isHas = true;
                }else{
                     this.isHas = false;
                    //调文件
                    this.getContractFile(true);
                }
            }else{//无确权内部审批,显示确权按钮
                this.isHas = false;
                 //调文件
                this.getContractFile(true);

            }
        });
    },
    //确权
    confirmApproval(){
        //核心确权通过,直接盖章
        if(this.form.zfiCoreStatus == '01'){
            //预览文件
            this.getContractFile();
        }else{
                this.$refs["form"].validate(valid => {
                
                if(!this.form.zfiCoreQuotaId){
                        this.$message({
                            message: '请选择授信额度',
                            type: 'warning'
                        });
                        return;
                }

                if(!this.form.zfiEffectiveDate){
                        this.$message({
                            message: '请选择签发有效期',
                            type: 'warning'
                        });
                        return;
                }

                if(!this.form.zfiExpireDate){
                        this.$message({
                            message: '请选择承诺还款日',
                            type: 'warning'
                        });
                        return;
                }

                //融信申请
                if(this.zfiCreateType == '0'){
                        if(parseFloat(this.form.zfiAmount) < parseFloat(this.zfpMinimumAmount)){
                            this.$message({
                                    message: '签发金额不可小于产品的最小融资金额',
                                    type: 'warning'
                                });
                                return;
                        }
                    if(parseFloat(this.form.zfiAmount) > parseFloat(this.availableAmt)){
                                this.$message({
                                        message: '签发金额不可大于可用金额',
                                        type: 'warning'
                                    });
                                    return;
                            }   
                }
                    
                if (valid) {
                const loading = this.$loading({
                            lock: true,
                            text: 'Loading',
                            background: 'rgba(0, 0, 0,0)'
                        });
                        this.form.flag = '00';
                        //产品
                        this.form.zfpId = this.zfpId;
                        //利率
                        this.form.zfiRate = this.zfpcrRate;
                        //最小融资金额
                        this.form.zfpMinimumAmount = this.zfpMinimumAmount;
                        //可用金额
                        this.form.availableAmt = this.availableAmt;
                        approveCredit(this.form).then(response => {
                            loading.close();
                            //预览文件
                            this.getContractFile();
                        }).catch((response)=>{
                            loading.close();
                        });
                }
            });
        }

         
    },
    //获取合同文件
    getContractFile(notSign){
        const loading = this.$loading({
                    lock: true,
                    text: 'Loading',
                    background: 'rgba(0, 0, 0,0)'
                });
         getContractFile(this.form).then((response) => {
                loading.close();
                if(response.data.list){
                    this.pdfFileList = response.data.list;
                }
                 //文件存在
                if(this.pdfFileList.length > 0 ){
                    this.pdfShowDialog = true;

                }else{
                     /*  this.$message({
                        message: '文件不存在！',
                        type: 'warning'
                      }); */
                     //文件不存在并且不是一进去页面调用的直接盖章
                     if (!notSign) {
                        this.contractSigning();
                     }
                }
            }).catch((response)=>{
                        loading.close();
            });
    },
    closePdfShow(){
        this.pdfShowDialog = false;
    },
    //盖章
    contractSigning(){
            const loading = this.$loading({
                        lock: true,
                        text: 'Loading',
                        background: 'rgba(0, 0, 0,0)'
                    });
            contractSigning(this.form).then((response) => {
                loading.close();
                //融资申请
                if(this.zfiCreateType == '0'){
                    this.msgSuccess("确权成功,融信已提交"+this.form.receiveName+"签收");
                    this.$store.dispatch(
                        "tagsView/delView",
                        this.$route
                    );
                    this.$router.go(-1);
                }else if(this.zfiCreateType == '2'){//供应商开立，盖章后改为已生效
                    this.msgSuccess("确权成功,融信已生效");
                    this.$store.dispatch(
                        "tagsView/delView",
                        this.$route
                    );
                    this.$router.go(-1);
                }
            }).catch((response) => {
                loading.close();
            });
    },
    //返回到列表页
    goParent(){
         var self = this
        this.pdfShowDialog = false;
        self.$store.dispatch(
            "tagsView/delView",
            self.$route
            );
         //self.$router.push("/Bill/credit")
         self.$router.push("/Bill/finance/credit")
    }

    }
};
</script>

<style lang="scss">

.uoloadfj .el-upload--picture-card{
  width:110px;
  height:110px;
  line-height:110px;
}
.fjUoloadSty .el-upload--picture-card{
  display:none;   
}

table th.star div::before {
    content: '*';
    color: red;
}

</style>