|  | @@ -120,6 +120,16 @@
 | 
	
		
			
				|  |  |              ></el-input>
 | 
	
		
			
				|  |  |              <span v-else>{{ row.thisAmount }}</span>
 | 
	
		
			
				|  |  |            </template>
 | 
	
		
			
				|  |  | +          <template slot="caseOverPayment">
 | 
	
		
			
				|  |  | +            <el-input
 | 
	
		
			
				|  |  | +              placeholder="请输入"
 | 
	
		
			
				|  |  | +              clearable
 | 
	
		
			
				|  |  | +              v-model="form.caseOverPayment"
 | 
	
		
			
				|  |  | +              @change="caseOverPaymentChange"
 | 
	
		
			
				|  |  | +              v-input-limit="2"
 | 
	
		
			
				|  |  | +              :disabled="dataList.length == 0"
 | 
	
		
			
				|  |  | +            ></el-input>
 | 
	
		
			
				|  |  | +          </template>
 | 
	
		
			
				|  |  |          </avue-crud>
 | 
	
		
			
				|  |  |        </basic-container>
 | 
	
		
			
				|  |  |        <el-dialog
 | 
	
	
		
			
				|  | @@ -153,6 +163,8 @@
 | 
	
		
			
				|  |  |    import  billDetail from "@/components/bill/billDetailList";
 | 
	
		
			
				|  |  |    import { getlistBankBy } from "@/api/financialManagement/paymentRequest";
 | 
	
		
			
				|  |  |    import _ from "lodash";
 | 
	
		
			
				|  |  | +  import {getUserInfo} from "@/api/system/user";
 | 
	
		
			
				|  |  | +  import {getCorpDetail} from "@/api/maintenance/overpayment";
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |    export default {
 | 
	
		
			
				|  |  |      name: "paymentDetailsPage",
 | 
	
	
		
			
				|  | @@ -279,6 +291,33 @@
 | 
	
		
			
				|  |  |                ]
 | 
	
		
			
				|  |  |              },
 | 
	
		
			
				|  |  |              {
 | 
	
		
			
				|  |  | +              label: '使用溢付款',
 | 
	
		
			
				|  |  | +              prop: 'caseOverPayment',
 | 
	
		
			
				|  |  | +              display: false,
 | 
	
		
			
				|  |  | +              span: 8,
 | 
	
		
			
				|  |  | +              rules: [
 | 
	
		
			
				|  |  | +                {
 | 
	
		
			
				|  |  | +                  pattern: /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/,
 | 
	
		
			
				|  |  | +                  message: ' ',
 | 
	
		
			
				|  |  | +                  trigger: 'blur'
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +              ]
 | 
	
		
			
				|  |  | +            },
 | 
	
		
			
				|  |  | +            {
 | 
	
		
			
				|  |  | +              label: '溢付款余额',
 | 
	
		
			
				|  |  | +              prop: 'overPayment',
 | 
	
		
			
				|  |  | +              display: false,
 | 
	
		
			
				|  |  | +              disabled: true,
 | 
	
		
			
				|  |  | +              span: 8,
 | 
	
		
			
				|  |  | +              rules: [
 | 
	
		
			
				|  |  | +                {
 | 
	
		
			
				|  |  | +                  pattern: /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/,
 | 
	
		
			
				|  |  | +                  message: ' ',
 | 
	
		
			
				|  |  | +                  trigger: 'blur'
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +              ]
 | 
	
		
			
				|  |  | +            },
 | 
	
		
			
				|  |  | +            {
 | 
	
		
			
				|  |  |                label: '付款日期',
 | 
	
		
			
				|  |  |                prop: 'settlementDate',
 | 
	
		
			
				|  |  |                format:"yyyy-MM-dd",
 | 
	
	
		
			
				|  | @@ -345,12 +384,31 @@
 | 
	
		
			
				|  |  |          //顶部from数据
 | 
	
		
			
				|  |  |          oldForm:{},
 | 
	
		
			
				|  |  |          oldDataList:[],
 | 
	
		
			
				|  |  | +        category: '',
 | 
	
		
			
				|  |  | +        allAmount: 0,
 | 
	
		
			
				|  |  |        }
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  |      components:{
 | 
	
		
			
				|  |  |        billDetail
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  |      created() {
 | 
	
		
			
				|  |  | +      // 人民币金额默认为0
 | 
	
		
			
				|  |  | +      this.$set(this.form,"amount", 0)
 | 
	
		
			
				|  |  | +      getUserInfo().then(res=>{
 | 
	
		
			
				|  |  | +        this.category = res.data.data.billType
 | 
	
		
			
				|  |  | +        if (this.category == 2) {
 | 
	
		
			
				|  |  | +          this.$set(this.form,"overPayment", 0)
 | 
	
		
			
				|  |  | +          this.$set(this.form,"caseOverPayment", 0)
 | 
	
		
			
				|  |  | +          this.option.column.forEach(item => {
 | 
	
		
			
				|  |  | +            if (item.prop == 'caseOverPayment' || item.prop == 'overPayment') {
 | 
	
		
			
				|  |  | +              item.display = true
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +            if (item.prop == 'foreignAmount') {
 | 
	
		
			
				|  |  | +              item.display = false
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +          })
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +      })
 | 
	
		
			
				|  |  |        //币别
 | 
	
		
			
				|  |  |        this.getWorkDicts("currency").then(res =>{
 | 
	
		
			
				|  |  |          this.currencyDic = res.data.data
 | 
	
	
		
			
				|  | @@ -396,6 +454,12 @@
 | 
	
		
			
				|  |  |          getlistBankBy(corpValue.id).then(res =>{
 | 
	
		
			
				|  |  |            this.$set(this.form,"bankList",res.data)
 | 
	
		
			
				|  |  |          })
 | 
	
		
			
				|  |  | +        // 溢付款余额获取
 | 
	
		
			
				|  |  | +        if (this.category == 2) {
 | 
	
		
			
				|  |  | +          getCorpDetail({corpId:corpValue.id}).then(res => {
 | 
	
		
			
				|  |  | +            this.form.overPayment = res.data.data? res.data.data.balanceOverpaymen: 0
 | 
	
		
			
				|  |  | +          })
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  |        },
 | 
	
		
			
				|  |  |        //选择卡号
 | 
	
		
			
				|  |  |        accountNoChange(value){
 | 
	
	
		
			
				|  | @@ -465,6 +529,23 @@
 | 
	
		
			
				|  |  |                this.buttonLoading = true
 | 
	
		
			
				|  |  |                this.form.billNo = this.dataList.map(item =>{return item.billNo}).join(",")
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +              if (this.category == 2 && this.financeDisabled) {
 | 
	
		
			
				|  |  | +                this.allAmount = 0;
 | 
	
		
			
				|  |  | +                this.form.amount = this.form.amount? this.form.amount: 0
 | 
	
		
			
				|  |  | +                this.dataList.forEach(e => {
 | 
	
		
			
				|  |  | +                  this.allAmount = Number(this.allAmount) + Number(e.thisAmount)
 | 
	
		
			
				|  |  | +                })
 | 
	
		
			
				|  |  | +                if (this.allAmount == 0 && this.form.amount == 0) {
 | 
	
		
			
				|  |  | +                  return this.$message.error('人民币金额不能为空')
 | 
	
		
			
				|  |  | +                } else if (Number(this.allAmount) > 0 && (Number(this.form.amount) > Number(this.allAmount))) {
 | 
	
		
			
				|  |  | +                  this.form.caseOverPayment = 0;
 | 
	
		
			
				|  |  | +                } else if (Number(this.allAmount) > 0 && (Number(this.form.amount) < Number(this.allAmount))) {
 | 
	
		
			
				|  |  | +                  this.form.caseOverPayment = Number(this.allAmount) - Number(this.form.amount)
 | 
	
		
			
				|  |  | +                  if (Number(this.form.caseOverPayment) > Number(this.form.overPayment)) {
 | 
	
		
			
				|  |  | +                    return this.$message.error('溢付款余额不足,无法付费')
 | 
	
		
			
				|  |  | +                  }
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +              }
 | 
	
		
			
				|  |  |                const params = {
 | 
	
		
			
				|  |  |                  ...this.form,
 | 
	
		
			
				|  |  |                  billType:"付费",
 | 
	
	
		
			
				|  | @@ -520,9 +601,16 @@
 | 
	
		
			
				|  |  |              })
 | 
	
		
			
				|  |  |            }})
 | 
	
		
			
				|  |  |        },
 | 
	
		
			
				|  |  | -      afterEcho(data){
 | 
	
		
			
				|  |  | +      async afterEcho(data){
 | 
	
		
			
				|  |  |          this.form = data;
 | 
	
		
			
				|  |  | -        this.oldForm = Object.assign({},data);
 | 
	
		
			
				|  |  | +        if (this.category == 2) {
 | 
	
		
			
				|  |  | +          await getCorpDetail({corpId: this.form.corpId}).then(res => {
 | 
	
		
			
				|  |  | +            if (Number(this.form.overPayment) != (res.data.data? res.data.data.balanceOverpaymen: '0.00')) {
 | 
	
		
			
				|  |  | +              this.form.overPayment = res.data.data? res.data.data.balanceOverpaymen: '0.00'
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +          })
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +        this.oldForm = Object.assign({},this.form);
 | 
	
		
			
				|  |  |          this.financeDisabled =  this.form.financeStatus == "待结算"?true:false;
 | 
	
		
			
				|  |  |          //审核状态为空时  说明为新单进来
 | 
	
		
			
				|  |  |          if(this.financeDisabled){
 | 
	
	
		
			
				|  | @@ -587,6 +675,13 @@
 | 
	
		
			
				|  |  |            this.$emit("goBack");
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |        },
 | 
	
		
			
				|  |  | +      // 溢付款更改时
 | 
	
		
			
				|  |  | +      caseOverPaymentChange() {
 | 
	
		
			
				|  |  | +        if (Number(this.form.caseOverPayment) > Number(this.form.overPayment)) {
 | 
	
		
			
				|  |  | +          this.form.caseOverPayment = 0;
 | 
	
		
			
				|  |  | +          return this.$message.error('本次使用的溢付款不能超过总溢付款')
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +      },
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |    }
 | 
	
		
			
				|  |  |  </script>
 |