This commit is contained in:
linfso 2024-08-21 13:51:27 +08:00
parent 44e8630301
commit d33a88a62b
2 changed files with 74 additions and 42 deletions

View File

@ -9,9 +9,9 @@ export function listEmisSettleSubBill(query) {
})
}
export function listEmisCanInvoiceSettleSubBill(query) {
export function listHasOpenInvoiceMap(query) {
return request({
url: '/emis/emisSettleSubBill/listCanInvoice',
url: '/emis/emisSettleSubBill/listHasOpenInvoiceMap',
method: 'get',
params: query
})

View File

@ -93,12 +93,12 @@
</el-table-column>
<el-table-column prop="canApplyFee" :label="$t('可开票金额')" align="center" width="100">
<template slot-scope="scope">
{{scope.row.billFee}}
{{scope.row.canApplyFee}}
</template>
</el-table-column>
<el-table-column prop="openBillMoney" :label="$t('申请开票金额')" align="center" width="120">
<template slot-scope="scope">
<el-input-number :min="0.00" v-model="scope.row.money" placeholder="" :controls="false" :precision="2" @blur="(val)=>handleCalcFeeItem(scope.row)" @keyup.enter.native="handleCalcFeeItem(scope.row)" >
<el-input-number :min="0.00" :max="scope.row.canApplyFee" v-model="scope.row.money" placeholder="" :controls="false" :precision="2" @blur="(val)=>handleCalcFeeItem(scope.row)" @keyup.enter.native="handleCalcFeeItem(scope.row)" >
<span slot="suffix">(CNY)</span>
</el-input-number>
</template>
@ -198,7 +198,7 @@
</template>
<script>
import {listEmisSettleSubBill,listEmisCanInvoiceSettleSubBill} from "@/api/emis/emisSettleSubBill";
import {listEmisSettleSubBill,listHasOpenInvoiceMap} from "@/api/emis/emisSettleSubBill";
import { addEmisSettleInvoiceRecord } from "@/api/emis/emisSettleInvoiceRecord";
import CustomerInvoiceInfoPicker from '@/views/emis/EmisBaseTools/CustomerInvoiceInfoPicker.vue';
import { parseTime,genJsSeqNo } from "@/utils/custom";
@ -271,7 +271,6 @@ export default {
this.reset();
this.form.openBillScope='1';
this.changeOpenBillScope();
},
async handleCalcFeeItem(row){
let totalFee=Number(0);
@ -293,7 +292,7 @@ export default {
this.form.applyMoney = totalFee.toFixed(2);
},
changeOpenBillScope(){
async changeOpenBillScope(){
let maxFee=0;
// 总可开金额
let totalBillFee=0.0;
@ -303,35 +302,56 @@ export default {
this.form.settleBillName="";
this.form.invoiceRelList=[];
this.billList.forEach(async item=>{
this.form.settleBillNo=this.form.settleBillNo+item.settleBillNo+",";
this.form.settleBillName= this.form.settleBillName+item.settleBillName+",";
totalBillFee=totalBillFee+this.form.openMoneyMax+item.recMoney;
let settleBillNoArr = this.billList.map(item=>item.settleBillNo);
let settleBillNoStr=settleBillNoArr.join(",");
let qParam={
settleBillNo:item.settleBillNo,
pageNum:1,
pageSize:2000
}
let hasOpenMap = {}
let resMap=await listHasOpenInvoiceMap({settleBillNo:settleBillNoStr});
if(resMap.rows&&resMap.rows.length>0){
resMap.rows.forEach(row => {
hasOpenMap[row.billNo] = row.sumMoney
})
}
console.log("===>hasOpenMap==>",hasOpenMap);
// 查询子账单
let res=await listEmisCanInvoiceSettleSubBill(qParam);
console.log("===>=res==>",res)
if(res.code==200){
res.rows.forEach(itemSubBill=>{
for(let i=0;i<this.billList.length;i++){
let item=this.billList[i];
let relItem={...itemSubBill};
relItem.money=itemSubBill.billFee;
this.form.invoiceRelList.push(relItem);
this.form.settleBillNo=this.form.settleBillNo+item.settleBillNo+",";
this.form.settleBillName= this.form.settleBillName+item.settleBillName+",";
let qParam={
settleBillNo:item.settleBillNo,
pageNum:1,
pageSize:2000
}
console.log("===>===>",this.form.invoiceRelList)
});
}
// 查询子账单
let res=await listEmisSettleSubBill(qParam);
console.log("===>=res==>",res)
if(res.code==200){
res.rows.forEach(itemSubBill=>{
let relItem={...itemSubBill};
relItem.money=itemSubBill.billFee;
relItem.canApplyFee=itemSubBill.billFee;
if(itemSubBill.billNo in hasOpenMap){
relItem.canApplyFee=relItem.billFee-hasOpenMap[itemSubBill.billNo];
relItem.money=itemSubBill.billFee-hasOpenMap[itemSubBill.billNo];
}
if(relItem.canApplyFee>0){
this.form.invoiceRelList.push(relItem);
}
});
}
}
this.handleCalcFeeItem();
});
this.form.openMoneyMax=totalBillFee;
this.form.applyMoney=totalBillFee;
}
}else{
this.form.invoiceRelList=[];
@ -342,6 +362,15 @@ export default {
async addBillToApply(){
this.form.invoiceRelList=[];
let hasOpenMap = {}
let resMap=await listHasOpenInvoiceMap({settleBillNo:this.form.settleBillNo});
if(resMap.rows&&resMap.rows.length>0){
resMap.rows.forEach(row => {
hasOpenMap[row.billNo] = row.sumMoney
})
}
console.log("===>hasOpenMap==>",hasOpenMap);
// 总可开金额
let totalBillFee=0.0;
let qParam={
@ -352,23 +381,26 @@ export default {
}
// 查询子账单
let res=await listEmisCanInvoiceSettleSubBill(qParam);
console.log("===>=res==>",res)
let res=await listEmisSettleSubBill(qParam);
// console.log("===>=res==>",res)
if(res.code==200){
res.rows.forEach(itemSubBill=>{
let subBillList = res.rows;
for(let i=0;i<subBillList.length;i++){
let itemSubBill=subBillList[i];
let relItem={...itemSubBill};
relItem.money=itemSubBill.billFee;
this.form.invoiceRelList.push(relItem);
totalBillFee=totalBillFee+itemSubBill.billFee;
console.log("===>===>",this.form.invoiceRelList)
});
relItem.canApplyFee=itemSubBill.billFee;
if(relItem.billNo in hasOpenMap){
relItem.canApplyFee=relItem.billFee-hasOpenMap[itemSubBill.billNo];
relItem.money=relItem.billFee-hasOpenMap[itemSubBill.billNo];
}
if(relItem.canApplyFee>0){
this.form.invoiceRelList.push(relItem);
}
};
this.handleCalcFeeItem();
// this.form.openMoneyMax=totalBillFee;
// this.form.applyMoney=totalBillFee;
}
},
deleteFeeItem(row){