Commit 990f40ef authored by 吴春's avatar 吴春

代收代付往来代码提交

parent 82c4ba2c
......@@ -875,6 +875,12 @@
<span v-if="GetDetail.OtherType==71 && GetDetail.DetailList[0].Remark.indexOf('未体现的返佣')==-1" style="cursor: pointer;float: right;color: #000;font-size: 12px;">
<span style="text-decoration: underline;" @click="goHand(3,GetDetail)">查看手配详情</span>
</span>
<span v-if="GetDetail.IsRelevanceStatus==1" style="cursor: pointer;float: right;color: #000;font-size: 12px;">
<span style="text-decoration: underline;" @click="openDetails(GetDetail.FrID,1)">查看代收/代付详情</span>
</span>
<span v-if="GetDetail.NewFinanceId>0 " style="cursor: pointer;float: right;color: #000;font-size: 12px;">
<span style="text-decoration: underline;" @click="openDetails(GetDetail.NewFinanceId,2)">查看往来结算详情</span>
</span>
<!-- <span v-if="GetDetail.OtherType==75" style="cursor: pointer;float: right;color: #000;font-size: 12px;">
<span style="text-decoration: underline;" @click="goHand(4,GetDetail)">查看月结详情</span>
</span> -->
......@@ -2083,6 +2089,9 @@
<!--供应商信息-->
<ClientBankAccount v-if="isClientBankAccount"
:clientBankAccountData="clientBankAccountData" @ClosePopup="isClientBankAccount=false"></ClientBankAccount>
<!--代收/代付公司-->
<HelpBranch v-if="GetDetail.HelpBranchId>-1"
:helpBranchData="helpBranchData" ></HelpBranch>
</div>
</template>
<script>
......@@ -2109,6 +2118,7 @@
import RollCall from './components/RollCall'
import OrderReceivablesAccount from "./components/OrderReceivablesAccount.vue";
import ClientBankAccount from "./components/ClientBankAccount.vue";
import HelpBranch from "./components/HelpBranch.vue";
export default {
data() {
return {
......@@ -2292,6 +2302,7 @@
InvoiceLoading: false,
isClientBankAccount:false,
clientBankAccountData:{},
helpBranchData:{},
}
},
components: {
......@@ -2316,9 +2327,37 @@
UserCredit,
RollCall,
OrderReceivablesAccount,
ClientBankAccount
ClientBankAccount,
HelpBranch
},
methods: {
// 单据详情
openDetails(FrID,Type) {
if (Type==1) {
let query = {
NewFinanceId: FrID,
blank: "y",
};
this.$router.push({
path: "/HelpBranch",
query
});
}
else if (Type==2) {
let query = {
id: FrID,
blank: "y",
};
this.$router.push({
path: "/CapitalAllocationDetail",
query
});
}
},
// 发票审核
AuditInvoice(){
this.InvoiceLoading = true
......@@ -3686,6 +3725,10 @@
AccountTypeStr:data.AccountTypeStr,
AccountCreateTime:data.AccountCreateTime
}
this.helpBranchData={
Type:data.Type,
HelpBranchName:data.HelpBranchName,
}
this.benMoney = 0
this.AuditOrRefundMsg.KingdeeInvoice=data.KingdeeInvoice+"";
data.DetailList.forEach(x => {
......
......@@ -406,6 +406,7 @@
</tr>
</table>
<div class="clearfix Ca_comLinediv">
<span class="Ca_remarkSpan">{{$t('hotel.hotel_remark')}}</span>
<div class="Ca_description">{{item.Description}}</div>
......@@ -585,18 +586,24 @@
</p>
</template>
</div>
</div>
</div>
</div>
<viewer :images="images" :options='imageOptions' @inited="inited" class="viewer" ref="viewer">
<img v-for="src in images" :src="src" :key="src.subCode">
</viewer>
<div class="_tit w830px" v-if="dataList.IsRelevanceStatus==1" style="padding: 10px;background-color: white; border-top: 1px dashed #BFBFBF;">
<p style="margin-left: 700px;font-size:12px;color:#000;cursor:pointer;text-decoration:underline;" @click="openDetails(dataList.FrID)">查看代收/代付详情</p>
</div>
<div class="_tit _tit2 w830px">
<p>
<span class="_text">{{$t('fnc.shliucheng')}}</span>
<span class="_btn" v-if="tableShow" @click="tableShow=false">{{$t('fnc.shouqi')}} <i class="iconfont icon-gengduo _rotate"></i> </span>
<span class="_btn" v-else @click="tableShow=true">{{$t('fnc.zhankai')}} <i class="iconfont icon-gengduo"></i> </span>
</p>
<div v-show="tableShow">
<div class="w600px">
<my-FlowChartModule :data="AuditListData"></my-FlowChartModule>
......@@ -824,6 +831,19 @@ export default {
}
},
methods:{
// 单据详情
openDetails(FrID) {
let query = {
NewFinanceId: FrID,
blank: "y",
};
this.$router.push({
path: "/HelpBranch",
query
});
},
goPrintPageNew(type,id,Merge,OrderSource){
if(type===1){
let routeData = this.$router.resolve({
......
......@@ -788,8 +788,17 @@
:remote-method="GetClientAccountListByKeyWord"
>
<el-option value="" :label="$t('pub.unlimitedSel')"></el-option>
<el-option v-for='item in ClientAccountList' :label='item.Name' :value='item.ID' :key='item.ID'>
</el-option>
<el-option v-for='item in ClientAccountList'
:label='`${item.AccountAlias}(${item.AccountHolder}/${item.CardNum})`'
:value='item.ID'
:key='item.ID'>
<div>
<span>{{`${item.AccountAlias}(${item.AccountHolder}/${item.CardNum})`}}</span>
<span style="margin-left: 15px;">
<el-tag size="mini" v-if="item.Status==1">冻结</el-tag>
</span>
</div>
</el-option>
</el-select>
<!-- <el-select filterable v-model='msg.ClientID' class="w150">
<el-option value="" :label="$t('pub.unlimitedSel')"></el-option>
......@@ -2444,6 +2453,7 @@
Type: this.msg.ClientType,
ObjID: 0,
CardNum: "",
IsAll:true,
KeyWord:query,
};
this.apipost(
......@@ -2452,16 +2462,16 @@
res => {
if (res.data.resultCode == 1) {
let data = res.data.data;
let ClientAccountList = [];
data.forEach(x => {
let obj = {
ID: x.ID,
Name: x.AccountAlias,
Nom: x.CardNum
};
ClientAccountList.push(obj);
});
this.ClientAccountList = ClientAccountList;
// let ClientAccountList = [];
// data.forEach(x => {
// let obj = {
// ID: x.ID,
// Name: x.AccountAlias,
// Nom: x.CardNum
// };
// ClientAccountList.push(obj);
// });
this.ClientAccountList = data;
}
},
err => {}
......
......@@ -899,6 +899,9 @@
<span v-if="GetDetail.OtherType==71 && GetDetail.DetailList[0].Remark.indexOf('未体现的返佣')==-1" style="cursor: pointer;float: right;color: #000;font-size: 12px;">
<span style="text-decoration: underline;" @click="goHand(3,GetDetail)">查看手配详情</span>
</span>
<span v-if="GetDetail.NewFinanceId>0 " style="cursor: pointer;float: right;color: #000;font-size: 12px;">
<span style="text-decoration: underline;" @click="openDetails(GetDetail.NewFinanceId)">查看往来结算详情</span>
</span>
<!-- <span v-if="GetDetail.OtherType==75" style="cursor: pointer;float: right;color: #000;font-size: 12px;">
<span style="text-decoration: underline;" @click="goHand(4,GetDetail)">查看月结详情</span>
</span> -->
......@@ -1538,6 +1541,9 @@
<!--供应商信息-->
<ClientBankAccount v-if="isClientBankAccount"
:clientBankAccountData="clientBankAccountData" @ClosePopup="isClientBankAccount=false"></ClientBankAccount>
<!--代收/代付公司-->
<HelpBranch v-if="GetDetail.HelpBranchId>-1"
:helpBranchData="helpBranchData" ></HelpBranch>
</div>
</template>
<script>
......@@ -1567,6 +1573,7 @@
import RollCall from './components/RollCall';
import OrderReceivablesAccount from "./components/OrderReceivablesAccount.vue";
import ClientBankAccount from "./components/ClientBankAccount.vue";
import HelpBranch from "./components/HelpBranch.vue";
export default {
data() {
return {
......@@ -1651,6 +1658,7 @@
huijiShow: false,
clientData: {},
clientBankAccountData:{},
helpBranchData:{},
isReceivablesAccount: false,
isClientBankAccount:false,
ActionMenuCode: ''
......@@ -1681,7 +1689,8 @@
UserCredit,
RollCall,
OrderReceivablesAccount,
ClientBankAccount
ClientBankAccount,
HelpBranch
},
created() {
// // crm自动登陆传过来的参数
......@@ -1705,6 +1714,20 @@
}
},
methods: {
// 单据详情
openDetails(FrID) {
let query = {
id: FrID,
blank: "y",
};
this.$router.push({
path: "/CapitalAllocationDetail",
query
});
},
// 获取订单客户收款账号
getReceivablesAccount(OrderID){
this.apipost('Financial_post_GetCanActivityContractInfo', {
......@@ -2646,7 +2669,10 @@
AccountTypeStr:data.AccountTypeStr,
AccountCreateTime:data.AccountCreateTime
}
this.helpBranchData={
Type:data.Type,
HelpBranchName:data.HelpBranchName,
}
//2023-11-23 add by:W
if(data.InvoiceVoucherInfo){
this.InvoiceVoucherList=data.InvoiceVoucherInfo;
......
<template>
<div>
<el-dialog :title="`已选数据${dataList.length}条`"
:visible.sync="showDialog" center @close="close"
width="1000px">
<div style="max-height: 400px;overflow: auto;">
<el-table
:data="dataList"
tooltip-effect="dark"
style="width: 100%;"
>
<el-table-column
label="单号"
width="120">
<template slot-scope="scope">
<span>{{ scope.row.FrID }}</span>
</template>
</el-table-column>
<el-table-column
label="单据类型"
width="120">
<template slot-scope="scope">
<span v-if="scope.row.Type==2" style="display: inline-block;
padding: 2px 8px;
color: white;
background-color: #E95252;
line-height: 16px;
border-radius: 4px;">
支出
</span>
<span v-if="scope.row.Type==1" style="display: inline-block;
padding: 2px 8px;
color: white;
background-color: #2BB87C;
line-height: 16px;
border-radius: 4px;">
收入
</span>
</template>
</el-table-column>
<el-table-column
prop=""
label="原币金额"
show-overflow-tooltip width="150">
<template slot-scope="scope">
{{scope.row.WBMoney?scope.row.WBMoney+'/'+scope.row.CurrencyName:''}}
</template>
</el-table-column>
<el-table-column
prop=""
label="本位币金额"
show-overflow-tooltip width="150">
<template slot-scope="scope">
{{scope.row.Money}}
</template>
</el-table-column>
<el-table-column
prop=""
label="明细"
show-overflow-tooltip>
<template slot-scope="scope">
<div v-for="(x,index) in scope.row.DetailList" class="DetailList-box">
<p><span>费用:</span>{{x.CostTypeName}} &nbsp;</p>
<p><span>原币:</span>{{x.OriginalMoney}}&nbsp;</p>
<p><span>汇率:</span>{{x.Rate}} &nbsp;</p>
<p><span>本位币:</span>{{x.Money}}</p>
</div>
</template>
</el-table-column>
</el-table>
</div>
<div class="totalMoney-box" v-if="OriginalMoneyThe!=0">
<div>
<span style="display: inline-block;
padding: 2px 8px;
color: white;
background-color: #E95252;
line-height: 16px;
border-radius: 4px;">
支出
</span>
</div>
<div>
<span>原币合计:</span>
<span style="color: red;">{{OriginalMoneyThe}}</span>
</div>
<template v-if="isHandlingChargeThe">
<div v-if="HandlingChargeMoneyThe">
<span>手续费合计:</span>
<span style="color: red;">{{HandlingChargeMoneyThe}}</span>
</div>
</template>
</div>
<div class="totalMoney-box" v-if="OriginalMoneyClosed!=0" :style="{padding: OriginalMoneyThe!=0&&isHandlingChargeThe?'0':'10px 0'}">
<div>
<span style="display: inline-block;
padding: 2px 8px;
color: white;
background-color: #2BB87C;
line-height: 16px;
border-radius: 4px;">
收入
</span>
</div>
<div>
<span>原币合计:</span>
<span style="color: red;">{{OriginalMoneyClosed}}</span>
</div>
<template v-if="isHandlingChargeClosed">
<div v-if="HandlingChargeMoneyClosed">
<span>手续费合计:</span>
<span style="color: red;">{{HandlingChargeMoneyClosed}}</span>
</div>
</template>
</div>
<div class="totalMoney-box" v-if="isHandlingChargeThe">
<div>
<span>手续费差额:</span>
<div>
<el-input v-model="balanceMoney" type="Number" placeholder="请输入手续费差额"></el-input>
</div>
</div>
</div>
<div slot="footer" class="dialog-footer">
<el-button class="hollowFixedBtn" @click="close">{{$t('pub.cancelBtn')}}</el-button>
<input type="button" class="normalBtn" value="日本资金调拨" @click="goAddurl('addCapitalAllocation',1)"/>
<input type="button" class="normalBtn" value="台湾资金调拨" @click="goAddurl('addCapitalAllocation',2)"/>
<input type="button" class="normalBtn" value="通用资金调拨" @click="goURL('addCapitalAllocation')"/>
<!-- <el-button class="normalBtn" type="primary" @click="clicksubmit">{{$t('pub.sureBtn')}}生成</el-button> -->
</div>
</el-dialog>
</div>
</template>
<script>
export default {
name:'selectListData',
props: ['multipleSelection'],
data() {
return {
showDialog: true,
dataList: [],
frIds:'',
OriginalMoney: 0,//原币合计
OriginalMoneyThe: 0,//原币合计支
OriginalMoneyClosed: 0,//原币合计付
balanceMoney: null,//差额
isHandlingCharge: false,//是否有手续费
isHandlingChargeThe: false,//是否有手续费支
isHandlingChargeClosed: false,//是否有手续费付
HandlingChargeMoney: null,//手续费
HandlingChargeMoneyThe: null,//手续费支
HandlingChargeMoneyClosed: null,//手续费付
};
},
watch: {
multipleSelection:{
handler(val, oldval) {
this.dataList = JSON.parse(JSON.stringify(val))
this.OriginalMoney = 0
let OriginalMoney = 0
let HandlingChargeMoney = 0
this.OriginalMoneyThe = 0
let OriginalMoneyThe = 0
let HandlingChargeMoneyThe = 0
this.OriginalMoneyClosed = 0
let OriginalMoneyClosed = 0
let HandlingChargeMoneyClosed = 0
this.frIds= this.dataList.map(row => row.FrID).join(',')
console.log(" this.frIds",this.frIds);
this.dataList.forEach(x=>{
if(x.Type==2){
x.DetailList.forEach(y=>{
if(y.CostTypeId==114){
this.isHandlingChargeThe = true
HandlingChargeMoneyThe += (y.OriginalMoney*100)
}if(y.CostTypeId!=114){
OriginalMoneyThe += (y.OriginalMoney*100)
}
})
}
if(x.Type==1){
x.DetailList.forEach(y=>{
if(y.CostTypeId==114){
this.isHandlingChargeClosed = true
HandlingChargeMoneyClosed += (y.OriginalMoney*100)
}if(y.CostTypeId!=114){
OriginalMoneyClosed += (y.OriginalMoney*100)
}
})
}
})
this.OriginalMoney = (OriginalMoneyThe-OriginalMoneyClosed)/100
this.HandlingChargeMoney = (HandlingChargeMoneyThe-HandlingChargeMoneyClosed)/100
//支出
this.OriginalMoneyThe = OriginalMoneyThe/100
this.HandlingChargeMoneyThe = HandlingChargeMoneyThe/100
// 收入
this.OriginalMoneyClosed = OriginalMoneyClosed/100
this.HandlingChargeMoneyClosed = HandlingChargeMoneyClosed/100
},
deep: true,
immediate: true
}
},
methods: {
goAddurl(url,type){
this.isCapitalAllocation = false
if(type==1){
this.$router.push({ name: url,query:{fengs: 1,blank: 'y', frIds:this.frIds,tab: '新增资金调拨'}})
}else{
this.$router.push({ name: url,query:{fengs: 2,blank: 'y', frIds:this.frIds,tab: '新增资金调拨'}})
}
},
goURL: function (url, edit, id) {
this.isCapitalAllocation = false
this.$router.push({ name: url,query:{edit: edit, id: id, blank: 'y',frIds:this.frIds, tab: '新增资金调拨'}})
},
clicksubmit(){
let ids
ids = this.dataList.map(x=>{ return x.FrID})
let orderObj = {
CostType: this.OriginalMoneyThe!=0?1547:null,
CostType2: this.isHandlingChargeThe?1547:null,
CostType3: this.isHandlingChargeThe&&this.balanceMoney?114:null,//114转账手续费
HandlingChargeMoney: this.isHandlingChargeThe?this.HandlingChargeMoneyThe:null,//手续费
balanceMoney: this.isHandlingChargeThe&&this.balanceMoney?this.balanceMoney:null,//差额
OtherType: 75,
Money: this.OriginalMoneyThe!=0?this.OriginalMoneyThe:null,
MoneyClosed: this.OriginalMoneyClosed!=0?Number(`-${this.OriginalMoneyClosed}`):null,
isVerifyMoney: true,
ReFinanceIds: ids.join(','),//单号
ReFinanceId2: 3,//成本
}
this.$emit('close')
this.$router.push({
name: 'ChoiceAddFinancialDocuments',
query: {
'Type': 2,
'searchTitle': '月结付款',
'blank': 'y',
'orderObj': JSON.stringify(orderObj),
}
});
// this.$emit('success')
},
close(){
this.$emit('close')
},
},
mounted() {
}
};
</script>
<style scoped>
.DetailList-box{
display: flex;
}
.DetailList-box p{
color: black;
margin-right: 20px;
}
.DetailList-box p:last-child{
margin-right: 0;
}
.DetailList-box p span{
margin-right: 3px;
color: #666666;
}
.totalMoney-box{
display: flex;
justify-content: end;
align-items: center;
padding: 10px 0;
}
.totalMoney-box>div{
display: flex;
align-items: center;
margin-left: 20px;
}
.totalMoney-box>div>span{
flex-shrink: 0;
}
</style>
<style scoped>
/deep/.el-table th.el-table__cell{
background-color: #E6E6E6;
}
</style>
<template >
<div class="page_fnDm page_RecPayQuery" @keyup.enter="resetPageIndex()">
<div class="query-box" style="margin-bottom: 0px;">
<el-form class="_info_box clearfix" label-width="110px">
<el-row style="padding:15px 20px 0 0;">
<el-col :span="4">
<el-form-item label="单号:">
<el-input placeholder="" class="" v-model="msg.FrID" @keyup.native="checkInteger(msg,'FrID')" maxlength="8"></el-input>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="调拨单号:">
<el-input placeholder="" class="" v-model="msg.NewFinanceId" @keyup.native="checkInteger(msg,'NewFinanceId')" maxlength="8"></el-input>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="团队编号:">
<el-input v-model="msg.TCNUM" class=""></el-input>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="结算状态:">
<el-select v-model='msg.IsSelectAduiting'>
<el-option v-for='item in SelectAduitingList'
:label='item.Name'
:value='item.Id'
:key='item.Id'>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="所属公司:">
<el-select filterable v-model='msg.RB_Branch_Id' @change="getDepartmentMsg.RB_Branch_Id=msg.RB_Branch_Id,msg.RB_Depart_Id='',msg.UpdateBy='',getDepartment()" class="">
<el-option :value="-1" label="不限"></el-option>
<el-option v-for='item in CompanyList'
:label='item.BName'
:value='item.Id'
:key='item.Id'>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="代收/付公司:">
<el-select filterable v-model='msg.HelpBranchId' class="">
<el-option :value="-1" label="不限"></el-option>
<el-option v-for='item in CompanyList'
:label='item.BName'
:value='item.Id'
:key='item.Id'>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="费用部门:">
<el-select filterable v-model='msg.RB_Depart_Id' @change="employeeMsg.DepartmentId=msg.RB_Depart_Id,getEmployee(),msg.UpdateBy=''" class="">
<el-option :value="0" label="不限"></el-option>
<el-option v-for='item in DepartmentList'
:label='item.DepartmentName'
:value='item.DepartmentID'
:key='item.DepartmentID'>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="制单人员:">
<el-select filterable v-model='msg.UpdateBy' class="">
<el-option :value="0" label="不限"></el-option>
<el-option v-for='item in EmployeeList'
:label='item.EmName'
:value='item.EmployeeId'
:key='item.EmployeeId'>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="单据类型:">
<el-select filterable v-model='msg.Type' class="">
<el-option key="-1" value="-1" label="不限"></el-option>
<el-option key="1" value="1" label="收入"></el-option>
<el-option key="2" value="2" label="支出"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="费用类型:">
<el-select filterable v-model='msg.CostTypeID' >
<el-option :value="0" label="不限"></el-option>
<el-option v-for="item in GetCostTypeList" :key="item.ID" :value="item.ID" :label="item.Name"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="付款对象:">
<el-select
v-model="msg.ClientID" class="w150"
filterable
remote
reserve-keyword
placeholder="请输入关键词"
:remote-method="GetClientAccountListByKeyWord"
>
<el-option value="" :label="$t('pub.unlimitedSel')"></el-option>
<el-option v-for='item in ClientAccountList'
:label='`${item.AccountAlias}(${item.AccountHolder}/${item.CardNum})`'
:value='item.ID'
:key='item.ID'>
<div>
<span>{{`${item.AccountAlias}(${item.AccountHolder}/${item.CardNum})`}}</span>
<span style="margin-left: 15px;">
<el-tag size="mini" v-if="item.Status==1">冻结</el-tag>
</span>
</div>
</el-option>
</el-select>
<!-- <el-select filterable v-model='msg.ClientID' >
<el-option value="" label="不限"></el-option>
<el-option v-for='item in ClientAccountList'
:label='`${item.AccountAlias}(${item.AccountHolder}/${item.CardNum})`'
:value='item.ID'
:key='item.ID'>
</el-option>
</el-select> -->
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="金额:">
<div style="display: flex;flex-direction: row;flex-wrap: nowrap;">
<div>
<el-input v-model="msg.sMoney"
@keyup.native="checkPrice(msg,'sMoney')" style="width: 100%;"></el-input>
</div>
<span style="padding: 0 10px;">-</span>
<div>
<el-input v-model="msg.eMoney" @keyup.native="checkPrice(msg,'eMoney')" style="width: 100%;"></el-input>
</div>
</div>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="制单日期:">
<el-date-picker class="h34"
@change="timeAdd(1)"
v-model="productionDate"
type="daterange"
value-format="yyyy-MM-dd">
</el-date-picker>
</el-form-item>
</el-col>
<template v-if="heightQueryBox">
<el-col :span="6">
<el-form-item label="发团日期:">
<el-date-picker class="h34"
v-model="missionDate"
@change="timeAdd(4)"
type="daterange"
value-format="yyyy-MM-dd">
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="排序:">
<el-select filterable v-model='msg.Sort' >
<el-option key="-1" value="-1" label="不限"></el-option>
<el-option key="0" value="0" label="团期"></el-option>
<el-option key="1" value="1" label="汇款日期"></el-option>
<el-option key="2" value="2" label="单号"></el-option>
<el-option key="3" value="3" label="交易流水号"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="模板类型:">
<el-select v-model="msg.TemplateIds" filterable >
<el-option value="" label="不限"></el-option>
<el-option v-for='item in TemplateGetList'
:label='item.Name'
:value='item.Id'
:key='item.Id'>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="审核状态:">
<el-select filterable v-model='msg.Status' class="">
<el-option key="-1" value="-1" label="不限"></el-option>
<el-option key="0" value="0" label="暂存"></el-option>
<el-option key="1" value="1" label="审核中"></el-option>
<el-option key="2" value="2" label="通过"></el-option>
<el-option key="3" value="3" label="驳回"></el-option>
<el-option key="4" value="4" label="作废"></el-option>
<el-option key="5" value="5" label="出纳暂存"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="订单编号:">
<el-input v-model="msg.OrderID"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="备注查询:">
<el-input v-model="msg.Remark"></el-input>
</el-form-item>
</el-col>
</template>
</el-row>
</el-form>
<ul class="clearfix">
<li class="hight_query">
<span style="font-size: 13px;color: red;cursor: pointer;">
<em @click.stop="heightQueryBox=!heightQueryBox">高级查询 <i class="iconfont icon-gengduo" style="font-size: 12px;"></i></em>
</span>
<button class="hollowFixedBtn" @click="resetPageIndex()">{{$t('pub.searchBtn')}}</button>
<button class="normalBtn" @click="method5()">导出</button>
<button class="normalBtn" @click="GenerateDocuments()">生成调拨单</button>
</li>
</ul>
</div>
<div style="display: flex;flex-wrap: nowrap; padding: 10px;">
<div style="display: flex;flex-wrap: wrap;">
<span>已选数据:</span>
<template v-if="multipleSelection.length>0">
<el-tag size="mini" closable
style="margin-right: 5px;margin-bottom: 5px;"
v-for="(x,index) in multipleSelection"
:key="x.FrID" @close="handleClose([multipleSelection[index]])"
:type="x.Type==2?'danger':'success'">
{{x.FrID}}/
<template v-for="(y,i) in x.DetailList">
{{y.CostTypeName}}:{{y.OriginalMoney}} {{i!=(x.DetailList.length-1)?',':''}}
</template>
</el-tag>
</template>
<template v-else>
</template>
</div>
<div style="margin-left: 20px;flex-shrink: 0;">
总金额:{{getMoney()}}
</div>
</div>
<div class="_fnDm_content" v-loading='loading'>
<el-table
ref="multipleTable"
:data="DataList"
tooltip-effect="dark"
style="width: 100%"
row-key="FrID"
@selection-change="handleSelectionChange"
>
<el-table-column
type="selection"
:selectable="selectable"
width="55"
:reserve-selection="true"/>
</el-table-column>
<el-table-column
label="单号"
width="120">
<template slot-scope="scope">
<span style="cursor: pointer;color: #00C6FF;"
@click="openDetails(scope.row.FrID,1)">{{ scope.row.FrID }}</span>
</template>
</el-table-column>
<el-table-column
prop="name"
label="单据类型"
width="120">
<template slot-scope="scope">
<span v-if="scope.row.Type==2" style="display: inline-block;
padding: 2px 8px;
color: white;
background-color: #E95252;
line-height: 16px;
border-radius: 4px;">
支出
</span>
<span v-if="scope.row.Type==1" style="display: inline-block;
padding: 2px 8px;
color: white;
background-color: #2BB87C;
line-height: 16px;
border-radius: 4px;">
收入
</span>
<span v-if="scope.row.Type==5" style="display: inline-block;
padding: 2px 8px;
color: white;
background-color: #2BB87C;
line-height: 16px;
border-radius: 4px;">
应收
</span>
<span v-if="scope.row.Type==6" style="display: inline-block;
padding: 2px 8px;
color: white;
background-color: #E95252;
line-height: 16px;
border-radius: 4px;">
应付
</span>
<el-tooltip class="item" effect="dark" content="追加团款" placement="top">
<span v-if="scope.row.OtherType == 1" style="width: 20px;
height: 20px;
display: inline-block;
border-radius: 50%;
text-align: center;
line-height: 20px;
color: #E95252;
border: 1px solid #E95252;
font-size: 12px;" class="zhuiClass"></span>
</el-tooltip>
</template>
</el-table-column>
<el-table-column
label="代收/代付公司"
width="140">
<template slot-scope="scope">
<span style="cursor: pointer;color: #00C6FF;"
>{{ scope.row.HelpBranchName }}</span>
</template>
</el-table-column>
<el-table-column
prop=""
label="关联信息"
show-overflow-tooltip width="200">
<template slot-scope="scope">
<template v-if="scope.row.TCIDAndTCNUMList.length>0">
<p class="_TCIDAndTCNUMList" style="display: flex;">
<span>团号:</span>
<template v-if="scope.row.TCIDAndTCNUMList&&scope.row.TCIDAndTCNUMList.length>0">
<p><span v-for="(i,ix) in scope.row.TCIDAndTCNUMList">{{i.TCNUM}}{{i.TCID}} <span v-if="ix!=scope.row.TCIDAndTCNUMList.length-1">,</br></span></span></p>
</template>
<template v-else>
<span></span>
</template>
</p>
<p v-if="scope.row.OrderID>0 && scope.row.OrderSource==8">单号:<span class="">{{scope.row.OrderID}}</span></p>
</template>
<template v-else-if="scope.row.OrderSource==8 && scope.row.TCIDAndTCNUMList.length==0">
<p class="_TCIDAndTCNUMList">暂无团期信息</p>
</template>
<template v-else-if="scope.row.OrderSource==4 && scope.row.TCIDAndTCNUMList.length==0">
<p class="_TCIDAndTCNUMList" style="text-decoration: underline;cursor: pointer;" @click="goTicketPage(rowData)">机票编号:{{scope.row.SourceID}}</p>
<p style="margin-top: 5px;">线路:<span>{{scope.row.LineName?scope.row.LineName:'机票尚未选择线路'}}</span></p>
</template>
<template v-else-if="scope.row.OrderSource==9 && scope.row.TCIDAndTCNUMList.length==0">
<p class="_TCIDAndTCNUMList">国内票务期数:{{scope.row.Term}}</p>
</template>
<template v-else-if="scope.row.OrderSource==10 && scope.row.TCIDAndTCNUMList.length==0">
<p class="_TCIDAndTCNUMList">签证产品编号:{{scope.row.SourceID}}</p>
</template>
<template v-else-if="scope.row.OrderSource==0 || scope.row.OrderSource==null">
<p class="_TCIDAndTCNUMList">{{ scope.row.BranchName }}-{{scope.row.DepartName}} </p>
</template>
<template v-else>
<p class="_TCIDAndTCNUMList">暂无</p>
</template>
</template>
</el-table-column>
<el-table-column
prop=""
label="费用类型"
show-overflow-tooltip width="150">
<template slot-scope="scope">
<template v-for="(s,si) in scope.row.CostTypeList">
<span style="background-color: rgba(64,158,255,.1);display: inline-block;padding: 0 5px;height: 22px;line-height: 20px;font-size: 12px;color: #646464;border-radius: 4px;box-sizing: border-box;border: 1px solid rgba(64,158,255,.2);white-space: nowrap;margin-bottom: 4px;">{{s}}</span></br>
</template>
</template>
</el-table-column>
<el-table-column
prop=""
label="原币金额"
show-overflow-tooltip width="150">
<template slot-scope="scope">
{{scope.row.WBMoney?scope.row.WBMoney+'/'+scope.row.CurrencyName:''}}
</template>
</el-table-column>
<el-table-column
prop=""
label="本位币金额"
show-overflow-tooltip width="150">
<template slot-scope="scope">
{{scope.row.Money}}
<!-- <p style="line-height:20px" v-if="scope.row.Money>0">{{scope.row.Type==1?'应收':'应付'}}<span>{{scope.row.Money}}</span></p>
<p style="line-height:20px" v-if="scope.row.PayMoney>0">{{scope.row.Type==1?'实收':'实付'}}<span>{{scope.row.PayMoney}}</span></p>
<p v-if="scope.row.IsAdvanceFinance==1&&scope.row.MatchMoney>0" style="line-height:20px">冲抵:<span>{{scope.row.MatchMoney}}</span></p> -->
</template>
</el-table-column>
<el-table-column
prop=""
label="付款对象"
show-overflow-tooltip>
<template slot-scope="scope">
<span style="color: gray">{{scope.row.Type==2?scope.row.ClientTypeName+':':'汇款人:'}}</span><span>{{scope.row.RemitterName}}</span>
</template>
</el-table-column>
<el-table-column
prop=""
label="制单人员"
show-overflow-tooltip width="170">
<template slot-scope="scope">
<div>{{scope.row.EmName}}</div>
<div>{{scope.row.CreateDate}}</div>
</template>
</el-table-column>
<el-table-column
prop=""
label="当前状态"
show-overflow-tooltip width="120">
<template slot-scope="scope">
<i v-if="scope.row.Status==1" class="iconfont icon-daiqueren" style="color: #4BCA81"></i>
<i v-if="scope.row.Status==4" class="iconfont icon-yiquxiao" style="color: #4BCA81"></i>
<i v-if="scope.row.Status==2" class="iconfont icon-yiqueren" style="color: #959595"></i>
<i v-if="scope.row.Status==3" class="iconfont icon-shenhebohui" style="color: #E95252"></i>
<i v-if="scope.row.Status==0" class="iconfont icon-zancun" style="color: #FF9C01"></i>
<el-popover
popper-class="detailsIT_Journal"
width="250"
trigger="click">
<div style="height: auto;max-height: 220px;background-color: #FFFFFF;">
<div class="changLog">
<p class="_log_t">流程日志</p>
<ul style="padding-left: 20px;max-height: 180px;overflow: auto;" v-if="GetFinancLogList" v-loading='LogLoading'>
<li style="border-left: 1px solid #E9E9E9;position: relative;padding-bottom: 10px;padding-left: 20px;padding-top: 10px;" v-for="(log,li) in GetFinancLogList">
<span style="background-color: #47BF8C;width: 7px;height: 7px;border-radius: 50%;display: inline-block;position: absolute;left: -4px;top: 19px;"></span>
<p> <span class="_color_blue">{{log.EmName}}</span> <span class="fr changLog_time">{{log.UpdateDate}}</span> </p>
<p class="_dtel">{{log.StartValue}}</p>
</li>
</ul>
<ul v-else>
<li>暂无修改日志</li>
</ul>
</div>
</div>
<span slot="reference" class="text_d _font_init" @click="Financial_post_GetFinancLogList(scope.row.FrID)">{{scope.row.StatusStr}}</span>
</el-popover>
</template>
</el-table-column>
<el-table-column
prop=""
label="关联调拨单付款单"
show-overflow-tooltip width="140">
<template slot-scope="scope">
<span v-if="scope.row.ReFinanceId" style="cursor: pointer;color: #00C6FF;"
@click="openDetails(scope.row.ReFinanceId,2)">{{ scope.row.ReFinanceId }}</span>
<template v-else>-</template>
</template>
</el-table-column>
</el-table>
<div style="padding-bottom:15px">
<el-pagination background
@size-change="handleSizeChange"
@current-change="handleCurrentChanges"
layout="total,sizes,prev, pager, next, jumper"
:page-sizes="[8,20,50,70,100,200]"
:page-size="msg.pageSize"
:current-page.sync="currentPage" :total='total'>
</el-pagination>
</div>
</div>
<template v-if="showDialog">
<selectListData
:multipleSelection="multipleSelection"
@close="showDialog=false"></selectListData>
</template>
</div>
</template>
<script>
import Vue from 'vue'
import selectListData from "./components/selectListData";
export default {
components:{
selectListData
},
data(){
return{
showDialog: false,
multipleSelection: [],
SelectAduitingList:[
{Name:'不限',Id:'0'},
{Name:'已结算',Id:'1'},
{Name:'未结算',Id:'2'},
],
msg:{
pageIndex:1,
pageSize: 8,
FrID:'',
NewFinanceId:'',
sDate:'',
eDate:'',
Status:'-1',
TemplateIds:'0',
RB_Branch_Id:'',
HelpBranchId:-1,
RB_Depart_Id:'',
sTradeDate:'',
eTradeDate:'',
ClientType:'0',
RemitterName:'',
ClientID:'',
sMoney:'',
eMoney:'',
CurrencyId:'0',
CostTypeID:'',
Conditon:'',
TCNUM:'',
TradeWay:'',
Type:'-1',
AccountType:'',
QEndDate:'',
QStartDate:'',
UpdateBy:'',
IsFormRecPayQuery:'1',
KJCostTypeId:0,
IsSelectKJSetCostType:0,
Remark:'', //备注查询
Sort:'2',
EmployeeId:'',
IsSelectAduiting: '0',
},
getCompanyMsg:{ // 公司
RB_Group_Id:'0',
Status:'0',
},
getDepartmentMsg:{// 部门
RB_Group_Id:'',
RB_Branch_Id:'',
Status:0,
ParentId:-1,
Tier:0,
},
employeeMsg:{ // 员工
GroupId:'',
BranchId:-1,
DepartmentId:0,
PostId:0,
IsLeave:0,
},
DataList:[],
GetFinancLogList:[],
StatusList:[],
ClientAccountList:[],
ClientTypeList:[],
accountList:[],
BranchAccountList:[],
DepartmentList:[],
EmployeeList:[],
ConditionList:[],
CompanyList:[],
productionDate:[],
transactionDate:[],
missionDate:[],
currencyTypeList:[],
GetCostTypeList:[],
TemplateGetList:[],
AccList:[],
dateStart:'',
dateEnd:'',
loading:false,
LogLoading:false,
currentPage:1,
total:0,
ChineseStr:'',
DepartIDs:'',
heightQueryBox:false,
}
},
created(){
if(this.$route.query.pageIndex){
this.msg.pageIndex = this.$route.query.pageIndex;
}
if(this.$route.query.FrID){
this.msg.FrID = this.$route.query.FrID;
}
if(this.$route.query.NewFinanceId){
this.msg.NewFinanceId = this.$route.query.NewFinanceId;
}
if(this.$route.query.Type){
this.msg.Type = this.$route.query.Type+'';
}
if(this.$route.query.rec){
this.msg.AccountType=15;
this.msg.TradeWay=4;
this.getAccountList(this.msg.AccountType,this.msg.TradeWay)
this.msg.BankID=this.$route.query.BankID;
this.transactionDate[0]=this.$route.query.StartDate;
this.transactionDate[1]=this.$route.query.StartDate;
this.msg.sTradeDate=this.$route.query.StartDate;
this.msg.eTradeDate=this.$route.query.StartDate;
if(this.$route.query.BankID==''){
// 费用类型:机票折让费
this.msg.CostTypeID=197;
}
}
if(this.$route.query.air){
this.msg.AccountType=17;
this.msg.TradeWay=4;
this.getAccountList(this.msg.AccountType,this.msg.TradeWay)
this.msg.BankID=20;
this.transactionDate[0]=this.$route.query.StartDate;
this.transactionDate[1]=this.$route.query.StartDate;
}
},
mounted(){
let userInfo=this.getLocalStorage();
this.getCompanyMsg.RB_Group_Id= this.employeeMsg.GroupId = this.getDepartmentMsg.RB_Group_Id = userInfo.RB_Group_id; //集团ID
this.DepartIDs = userInfo.RB_Department_Id;
this.msg.EmployeeId= userInfo.EmployeeId;
this.msg.FrID = this.$route.query.FrID?this.$route.query.FrID:0;
if(this.$route.query.NewFinanceId){
this.msg.NewFinanceId = this.$route.query.NewFinanceId;
}
//this.financeinfo_post_GetClientAccountList()
this.financeinfo_post_GetList();
this.financeinfo_post_GetCostTypeList();
this.FinancialFlowTemplate_post_GetList();
this.getCompanyList();
this.Financial_post_GetConditionList();
this.getEmployee();
this.getDepartment();
this.Financial_post_GetBranchAccountList();
this.financeinfo_post_GetClientTypeList();
this.FinancialFlowTemplate_post_GetStatusList();
this.getPageList();
this.AccountType_post_GetList();
var that = this;
},
methods:{
GetClientAccountListByKeyWord(query) {
if (query !== '') {
// 获取对象类型
let msg = {
Type: 0,
ObjID: 0,
CardNum: "",
IsAll:true,
KeyWord:query,
};
this.apipost(
"financeinfo_post_GetClientAccountList",
msg,
res => {
if (res.data.resultCode == 1) {
let data = res.data.data;
// let ClientAccountList = [];
// data.forEach(x => {
// let obj = {
// ID: x.ID,
// Name: x.AccountAlias,
// Nom: x.CardNum
// };
// ClientAccountList.push(obj);
// });
this.ClientAccountList = data;
}
},
err => {}
);
}
},
handleClose(rows){
if (rows) {
rows.forEach(row => {
this.$refs.multipleTable.toggleRowSelection(row);
});
}
// this.multipleSelection.splice(index,1)
},
// 单据详情
openDetails(FrID,type) {
let query = {
id: FrID,
blank: "y",
};
if(type==1){
this.$router.push({
path: "/FinancialDocumentsDetail",
query
});
}else if(type==2){
this.$router.push({
path: "/CapitalAllocationDetail",
query
});
}
},
selectable(row, index){
if (!this.DataList[index].ReFinanceId) {
return true;
} else {
return false;
}
},
handleSelectionChange(val) {
this.multipleSelection = val;
},
// 数据筛选
filterMethod(filters){
},
handleSizeChange(val) {
this.msg.pageSize = val
this.msg.pageIndex = 1;
this.getPageList();
},
handleCurrentChanges(val){
this.msg.pageIndex = val;
this.getPageList();
},
AccountType_post_GetList(){ //获取账户类型下拉
this.apipost('AccountType_post_GetList',this.queryAccMsg,res=>{
if(res.data.resultCode==1){
this.AccList = res.data.data;
}else{
this.$message.error(res.data.message);
}
},err=>{})
},
getPageList(){ // 获取列表数据
if(!this.msg.ClientID)this.msg.ClientID="";
if(!this.msg.ClientType)this.msg.ClientType=0;
if(!this.msg.CurrencyId)this.msg.CurrencyId=0;
if(!this.msg.CostTypeID)this.msg.CostTypeID=0;
if(this.msg.TemplateIds=='0')this.msg.TemplateIds='';
if(this.msg.RB_Branch_Id === '')this.msg.RB_Branch_Id=-1;
if(this.msg.HelpBranchId === '')this.msg.HelpBranchId=-1;
if(!this.msg.RB_Depart_Id)this.msg.RB_Depart_Id=0;
if(!this.msg.UpdateBy)this.msg.UpdateBy=0;
if(!this.msg.TCID)this.msg.TCID=0;
if(!this.msg.OrderID)this.msg.OrderID=0;
if(!this.msg.Status)this.msg.Status=0;
if(!this.msg.FrID)this.msg.FrID=0;
if(!this.msg.NewFinanceId)this.msg.NewFinanceId=0;
if(!this.msg.Conditon)this.msg.Conditon=1;
if(!this.msg.TradeWay)this.msg.TradeWay=0;
if(!this.msg.AccountType)this.msg.AccountType=0;
if(!this.msg.KJCostTypeId)this.msg.KJCostTypeId=0;
if(!this.msg.IsSelectKJSetCostType)this.msg.IsSelectKJSetCostType=0;
this.loading= true;
this.apipost('Financial_post_GetHelpBranchALLPageList',this.msg,res=>{
if(res.data.resultCode == 1) {
let data = res.data.data.pageData;
let arrList = function(arr){
arr.forEach(x=>{
x._checked = true
x._disabled = false
})
}
arrList(data)
let userInfo=this.getLocalStorage();
data.forEach(x=>{
if((","+userInfo.ActionMenuCode+",").indexOf(',Finance_CreateByCareOf,')!=-1){
x.isExchange = true
} else{
x.isExchange = false
}
})
this.total = res.data.data.count;
if(this.total==0){
this.DataList=[];
}else{
this.DataList = data;
}
this.loading=false;
}else{
this.loading= false;
this.$message.error(res.data.message);
}
// this.msg.TCID= this.msg.TCID==0?this.msg.TCID:'';
// this.queryInfoInit();
this.currentPage = parseInt(this.msg.pageIndex);
},err=>{})
},
method5: function() {
if(!this.msg.ClientID)this.msg.ClientID="";
if(!this.msg.ClientType)this.msg.ClientType=0;
if(!this.msg.CurrencyId)this.msg.CurrencyId=0;
if(!this.msg.CostTypeID)this.msg.CostTypeID=0;
if(this.msg.TemplateIds=='0')this.msg.TemplateIds='';
if(this.msg.RB_Branch_Id === '')this.msg.RB_Branch_Id=-1;
if(!this.msg.RB_Depart_Id)this.msg.RB_Depart_Id=0;
if(!this.msg.UpdateBy)this.msg.UpdateBy=0;
if(!this.msg.TCID)this.msg.TCID=0;
if(!this.msg.OrderID)this.msg.OrderID=0;
if(!this.msg.Status)this.msg.Status=0;
if(!this.msg.FrID)this.msg.FrID=0;
if(!this.msg.NewFinanceId)this.msg.NewFinanceId=0;
if(!this.msg.Conditon)this.msg.Conditon=1;
if(!this.msg.TradeWay)this.msg.TradeWay=0;
if(!this.msg.AccountType)this.msg.AccountType=0;
if(!this.msg.KJCostTypeId)this.msg.KJCostTypeId=0;
if(!this.msg.IsSelectKJSetCostType)this.msg.IsSelectKJSetCostType=0;
let time = this.getBeforeDate(0,new Date().Format("yyyy-MM-dd"))
var fileName = `成本月结表${time}.xls`;
this.GetLocalFile("Financial_get_GetCostMonthALLExport", this.msg,fileName);
} ,
financeRemove(id){//作废
this.$confirm('是否对申请单进行作废操作?作废后不可恢复!', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.deletFinance(id)
}).catch(() => {
this.$message({
type: 'info',
message: '已取消'
});
});
},
deletFinance(id){
this.apipost('Financial_post_Cancel',{ID:id},res=>{
if(res.data.resultCode == 1) {
this.$message.success(res.data.message)
}else{
this.$message.error(res.data.message)
}
this.getPageList();
},err=>{})
},
Financial_post_GetFinancLogList(id){ // 获取单据日志
this.LogLoading = true;
this.apipost('Financial_post_GetFinancLogList',{ID:id,Type:2}, res => {
if(res.data.resultCode == 1) {
let data = res.data.data;
data.forEach(x=>{
x.UpdateDate = this.$commonUtils.formatMsgTime(x.UpdateDate)
})
this.LogLoading = false;
this.GetFinancLogList = data;
}
}, err => {})
},
mathMoney(n){ // 数字转中文大写 1
this.ChineseStr = this.$commonUtils.changeMoneyToChinese(n)
},
FinancialFlowTemplate_post_GetStatusList(){ // 获取审核状态枚举
this.apipost('FinancialFlowTemplate_post_GetStatusList',{}, res => {
if(res.data.resultCode == 1) {
this.StatusList = res.data.data;
}
}, err => {})
},
financeinfo_post_GetClientTypeList(){ // 获取对象类型
this.apipost('financeinfo_post_GetClientTypeList',{}, res => {
if(res.data.resultCode == 1) {
this.ClientTypeList = res.data.data;
}
}, err => {})
},
getAccountList(i,t){ //收款账户
let accountList = [];
if(t==1){ // 银行
this.apipost('bankaccount_post_GetList',{TypeId:i}, res => {
if(res.data.resultCode == 1) {
let data = res.data.data;
data.forEach(x=>{
let obj = {
ID:x.ID,
Name:x.Alias,
Nom:0,
}
accountList.push(obj)
})
this.accountList = accountList;
}
}, err => {})
}
if(t==2){ //平台账户
let msg = {
BackId:0,
TypeId:i,
BranchId:-1,
Alias:''
}
this.apipost('BankAccount_post_GetPlatformList',msg, res => {
if(res.data.resultCode == 1) {
let data = res.data.data;
data.forEach(x=>{
let obj = {
ID:x.ID,
Name:x.Alias,
Nom:x.PlatformNo
}
accountList.push(obj)
})
this.accountList = accountList;
}
}, err => {})
}
if(t==3){ //现金账户
let msg = {
TypeId:i,
BranchId:-1,
Alias:''
}
this.apipost('BankAccount_post_GetCashAccountList',msg, res => {
if(res.data.resultCode == 1) {
let data = res.data.data;
data.forEach(x=>{
let obj = {
ID:x.ID,
Name:x.Alias,
Nom:0
}
accountList.push(obj)
})
this.accountList = accountList
}
}, err => {})
}
if(t==4){ //资金池账户
let msg = {
TypeId:i,
BranchId:-1,
Alias:''
}
this.apipost('BankAccount_post_GetCashPoolList',msg, res => {
if(res.data.resultCode == 1) {
let data = res.data.data;
data.forEach(x=>{
let obj = {
ID:x.ID,
Name:x.Alias,
Nom:0
}
accountList.push(obj)
})
this.accountList = accountList
}
}, err => {})
}
},
Financial_post_GetBranchAccountList(){ //获取交易方式列表
this.apipost('Financial_post_GetBranchAccountList',{}, res => {
if(res.data.resultCode == 1) {
this.BranchAccountList = res.data.data;
}
}, err => {})
},
getDepartment(){ //部门
this.apipost('admin_get_DepartmentGetList', this.getDepartmentMsg, res => {
if(res.data.resultCode == 1) {
this.DepartmentList = res.data.data;
}
}, err => {})
},
getEmployee() { //员工
this.apipost('admin_get_EmployeeGetList', this.employeeMsg, res => {
if(res.data.resultCode == 1) {
this.EmployeeList = res.data.data;
}
}, err => {})
},
getCompanyList(){ //获取公司列表
this.apipost('admin_get_BranchGetList',this.getCompanyMsg,res=>{
if(res.data.resultCode==1){
this.CompanyList=res.data.data;
}else{}
},err=>{})
},
Financial_post_GetConditionList(){ //获取财务单据枚举列表
this.apipost('Financial_post_GetConditionList',{},res=>{
if(res.data.resultCode==1){
this.ConditionList=res.data.data;
}else{}
},err=>{})
},
financeinfo_post_GetList(){ // 币种类型
this.apipost('financeinfo_post_GetList',{Name:''},res=>{
if(res.data.resultCode==1){
this.currencyTypeList = res.data.data;
}else{
}
},err=>{})
},
financeinfo_post_GetCostTypeList(){ // 费用类型
this.apipost('financeinfo_post_GetCostTypeList',{Name:'',type:0,DepartIDs:this.DepartIDs,IsBalanceOfTheQuery:1},res=>{
if(res.data.resultCode==1){
this.GetCostTypeList = res.data.data;
}else{
}
},err=>{})
},
FinancialFlowTemplate_post_GetList(){ // 单据类型
this.apipost('Financial_post_GetList',{},res=>{
if(res.data.resultCode==1){
this.TemplateGetList = res.data.data;
}else{
}
},err=>{})
},
timeAdd(t){ // 日期格式
if(t==1){ //制单日期
if(!this.productionDate){
this.msg.sDate = '';
this.msg.eDate = '';
return
}
this.msg.sDate = this.productionDate[0];
this.msg.eDate = this.productionDate[1];
}if(t==4){ //发团日期
if(!this.missionDate){
this.dateStart = '';
this.dateEnd = '';
return
}
this.msg.QStartDate = this.missionDate[0];
this.msg.QEndDate = this.missionDate[1];
}
},
queryInfoInit(){ // 初始化msg
let msg = {
pageIndex:this.msg.pageIndex,
pageSize:6,
FrID:this.msg.FrID==0?'':this.msg.FrID,
NewFinanceId:this.msg.NewFinanceId==0?'':this.msg.NewFinanceId,
sDate:this.msg.sDate,
eDate:this.msg.eDate,
Status:this.msg.Status,
TemplateIds:this.msg.TemplateIds,
RB_Branch_Id:this.msg.RB_Branch_Id,
RB_Depart_Id:this.msg.RB_Depart_Id,
UpdateBy:this.msg.UpdateBy,
sTradeDate:this.msg.sTradeDate,
eTradeDate:this.msg.eTradeDate,
ClientType:this.msg.ClientType,
RemitterName:this.msg.RemitterName,
ClientID:this.msg.ClientID,
sMoney:this.msg.sMoney,
eMoney:this.msg.eMoney,
CurrencyId:this.msg.CurrencyId,
CostTypeID:this.msg.CostTypeID,
Conditon:this.msg.Conditon,
TCNUM:this.msg.TCNUM==0?"":this.msg.TCNUM,
TradeWay:this.msg.TradeWay==0?"":this.msg.TradeWay,
Type:this.msg.Type,
AccountType:this.msg.AccountType==0?'':this.msg.AccountType,
QEndDate:this.msg.QEndDate,
QStartDate:this.msg.QStartDate,
OrderID:this.msg.OrderID==0?'':this.msg.OrderID,
Sort:this.msg.Sort,
EmployeeId:this.msg.EmployeeId,
KJCostTypeId:this.msg.KJCostTypeId==0?'':this.msg.KJCostTypeId,
IsSelectKJSetCostType:this.msg.IsSelectKJSetCostType==0?'':this.msg.IsSelectKJSetCostType,
}
this.msg = msg;
},
handleCurrentChange(val) { //翻页
this.msg.pageIndex = val;
this.getPageList();
},
resetPageIndex(){ // 重置页码
this.msg.pageIndex=1;
this.currentPage = 1;
this.getPageList()
},
getMoney(){
let Money = 0
this.multipleSelection.forEach(x=>{
x.DetailList.forEach(y=>{
if(y.CostTypeId!=114){
Money += (y.OriginalMoney*100)
}
})
})
return Money/100
},
GenerateDocuments(){
if(this.multipleSelection.length==0){
this.Error('请选择需要制单的数据');
return;
}
this.showDialog = true
return
let ids
ids = this.multipleSelection.map(x=>{ return x.FrID})
let orderObj = {
CostType: 1547,
OtherType: 75,
Money: this.getMoney(),
isVerifyMoney: true,
ReFinanceIds: ids.join(','),//单号
ReFinanceId2: 3,//成本
}
this.$confirm(`已选单号:${ids.join(',')},总金额:${orderObj.Money},是否继续生成财务单据`, "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
})
.then(() => {
this.$refs.multipleTable.clearSelection();
this.$router.push({
name: 'ChoiceAddFinancialDocuments',
query: {
'Type': 2,
'searchTitle': '资金调拨单',
'blank': 'y',
'orderObj': JSON.stringify(orderObj),
}
});
})
}
}
}
</script>
......@@ -84,67 +84,30 @@
</el-select>
</el-form-item>
</el-col>
<!--
<el-col :span="4">
<el-form-item label="账户类型:">
<el-select filterable v-model='msg.AccountType' >
<el-option value="" label="不限"></el-option>
<el-option v-for='item in AccList'
:label='item.Name'
:value='item.ID'
:key='item.ID'>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="交易方式:">
<el-select filterable v-model='msg.TradeWay' @change="getAccountList(msg.AccountType,msg.TradeWay),msg.ClientID=''" >
<el-option value="0" label="不限"></el-option>
<el-option v-for='item in BranchAccountList'
:label='item.Name'
:value='item.ID'
:key='item.ID'>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="收付款账户:">
<el-select filterable v-model='msg.BankID'>
<el-option value="" label="不限"></el-option>
<el-option v-for='item in accountList'
:label='item.Name'
:value='item.ID'
:key='item.ID'>
</el-option>
</el-select>
</el-form-item>
</el-col> -->
<!--
<el-col :span="4">
<el-form-item label="客户类型:">
<el-select filterable v-model='msg.ClientType'
@change="financeinfo_post_GetClientAccountList(msg.ClientType)">
<el-option value="0" label="不限"></el-option>
<el-option v-for='item in ClientTypeList'
:label='item.Name'
:value='item.ID'
:key='item.ID'>
</el-option>
</el-select>
</el-form-item>
</el-col> -->
<el-col :span="4">
<el-form-item label="付款对象:">
<el-select filterable v-model='msg.ClientID' >
<el-option value="" label="不限"></el-option>
<el-option v-for='item in ClientAccountList'
:label='`${item.AccountAlias}(${item.AccountHolder}/${item.CardNum})`'
:value='item.ID'
:key='item.ID'>
</el-option>
</el-select>
<el-select
v-model="msg.ClientID" class="w150"
filterable
remote
reserve-keyword
placeholder="请输入关键词"
:remote-method="GetClientAccountListByKeyWord"
>
<el-option value="" :label="$t('pub.unlimitedSel')"></el-option>
<el-option v-for='item in ClientAccountList'
:label='`${item.AccountAlias}(${item.AccountHolder}/${item.CardNum})`'
:value='item.ID'
:key='item.ID'>
<div>
<span>{{`${item.AccountAlias}(${item.AccountHolder}/${item.CardNum})`}}</span>
<span style="margin-left: 15px;">
<el-tag size="mini" v-if="item.Status==1">冻结</el-tag>
</span>
</div>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
......@@ -622,7 +585,6 @@ export default {
this.DepartIDs = userInfo.RB_Department_Id;
this.msg.EmployeeId= userInfo.EmployeeId;
this.msg.FrID = this.$route.query.FrID?this.$route.query.FrID:0
this.financeinfo_post_GetClientAccountList()
this.financeinfo_post_GetList();
this.financeinfo_post_GetCostTypeList();
this.FinancialFlowTemplate_post_GetList();
......@@ -818,23 +780,32 @@ export default {
}
}, err => {})
},
financeinfo_post_GetClientAccountList(t){ // 获取对象类型
let msg = {
// Type:t,
// ObjID:0,
// CardNum:''
ID:0,
Type:0,
ObjID:0,
CardNum:''
}
this.apipost('financeinfo_post_GetClientAccountList',msg, res => {
if(res.data.resultCode == 1) {
let data = res.data.data;
this.ClientAccountList = data
}
}, err => {})
GetClientAccountListByKeyWord(query) {
if (query !== '') {
// 获取对象类型
let msg = {
Type: 0,
ObjID: 0,
CardNum: "",
IsAll:true,
KeyWord:query,
};
this.apipost(
"financeinfo_post_GetClientAccountList",
msg,
res => {
if (res.data.resultCode == 1) {
let data = res.data.data;
this.ClientAccountList = data;
}
},
err => {}
);
}
},
getAccountList(i,t){ //收款账户
let accountList = [];
if(t==1){ // 银行
......
......@@ -112,8 +112,20 @@
:remote-method="GetClientAccountListByKeyWord"
>
<el-option value="" :label="$t('pub.unlimitedSel')"></el-option>
<el-option v-for='item in ClientAccountList'
:label='`${item.AccountAlias}(${item.AccountHolder}/${item.CardNum})`'
:value='item.ID'
:key='item.ID'>
<div>
<span>{{`${item.AccountAlias}(${item.AccountHolder}/${item.CardNum})`}}</span>
<span style="margin-left: 15px;">
<el-tag size="mini" v-if="item.Status==1">冻结</el-tag>
</span>
</div>
</el-option>
<!-- <el-option value="" :label="$t('pub.unlimitedSel')"></el-option>
<el-option v-for='item in ClientAccountList' :label='item.Name' :value='item.ID' :key='item.ID'>
</el-option>
</el-option> -->
</el-select>
</el-form-item>
</el-col>
......@@ -1042,6 +1054,7 @@
Type: this.msg.ClientType,
ObjID: 0,
CardNum: "",
IsAll:true,
KeyWord:query,
};
this.apipost(
......@@ -1050,16 +1063,7 @@
res => {
if (res.data.resultCode == 1) {
let data = res.data.data;
let ClientAccountList = [];
data.forEach(x => {
let obj = {
ID: x.ID,
Name: x.AccountAlias,
Nom: x.CardNum
};
ClientAccountList.push(obj);
});
this.ClientAccountList = ClientAccountList;
this.ClientAccountList = data;
}
},
err => {}
......
......@@ -384,7 +384,8 @@ export default {
Description: '',
IsHave: 1,
emList: [],
BankList: []
BankList: [],
FrIDs:''
},
queryAccMsg: {
pageIndex: 1,
......@@ -492,7 +493,7 @@ export default {
this.msg.BankList.forEach(x=>{
delete x.shouAccNumList
})
this.msg.FrIDs=this.$route.query.frIds;
// return;
this.apipost('Financial_post_SetFundTransfer', this.msg, res=>{
if(res.data.resultCode==1){
......
......@@ -747,6 +747,7 @@
</el-select>
</span>
</p>
<p v-if="StoredCustomerList&&StoredCustomerList.length" style="margin-left: 15px;">预收抵用:<span>
<el-select clearable v-model='msg.DepositCustomerId' class="w135 _border_b_1"
@change="getSigningCustomerId(2)" :disabled="isDepositCustomer">
......@@ -781,6 +782,24 @@
</el-switch>
</el-tooltip>
</div>
<template v-if="!BillSonName.includes('分摊')&&!BillSonName.includes('预付')">
<div>
<p>
{{this.$route.query.Type==1?'帮代收':'帮代付'}}公司:
<span>
<el-select filterable v-model='msg.HelpBranchId' class="w120 _border_b_1">
<el-option label='请选择' :value='-1' :key='-1'></el-option>
<el-option v-for='item in companyList' :label='item.BName' :value='item.Id' :key='item.Id'
:disabled="item.Id===msg.RB_Branch_Id" >
</el-option>
</el-select>
</span>
<span style="margin-left: 20px;color: red;">注:只有帮其他公司{{this.$route.query.Type==1?'代收':'代付'}}的需选择此项,如是本公司款则忽略此项</span>
</p>
</div>
</template>
<template v-if="(isHandFee&&is_HandFee)||(is_HandFee&&this.GetDetail.Status==0)">
<div>
<p>
......@@ -1027,6 +1046,7 @@
Description: '132356',
detailList: [],
RB_Branch_Id: '',
HelpBranchId:-1,
RB_Depart_Id: '',
Status: 1,
URL: this.$route.query.path,
......@@ -1854,7 +1874,27 @@
that.loading = true;
that.FinancialPostSet()
}).catch(() => {})
}else{
}
else if(this.msg.HelpBranchId>-1){
let that = this
let brandName='确认是帮';
this.companyList.forEach(item => {
if(item.Id==this.msg.HelpBranchId){
brandName+=item.BName;
}
});
brandName+= (this.$route.query.Type==1?'代收':'代付')+'此笔款项,请正确选择,避免驳回';
this.$confirm(brandName, this.$t('tips.tips'), {
confirmButtonText: '确认提交',
cancelButtonText: '取消提交',
type: 'warning'
}).then(() => {
that.FinancialPostSet()
}).catch(() => {
})
}
else{
that.loading = true;
that.FinancialPostSet()
}
......@@ -2313,11 +2353,23 @@
this.msg.RB_Branch_Id = this.msg.RB_Branch_Id
} else {
this.msg.RB_Branch_Id = this.getLocalStorage().RB_Branch_id
if ((this.$route.query.id == 245 ||
this.$route.query.id == 246 ||
this.$route.query.id == 247 ||
this.$route.query.id == 248 ||
this.$route.query.id == 267)&&(!this.BillSonName.includes('分摊')&&!this.BillSonName.includes('预付'))) {
this.msg.HelpBranchId=1218;
} else{
this.msg.HelpBranchId=-1;
}
}
} else {
this.msg.RB_Branch_Id = this.msg.RB_Branch_Id == 0 ? this.getLocalStorage().RB_Branch_id : this.msg
.RB_Branch_Id;
}
if (this.orderObj && this.orderObj.companyIDList && this.orderObj.companyIDList.length > 0) {
this.msg.RB_Branch_Id = this.orderObj.companyIDList[0];
} else if (this.orderObj && (this.orderObj.RB_Branch_Id != '' && this.orderObj.RB_Branch_Id != null &&
......@@ -2767,6 +2819,8 @@
}
}
if (this.orderObj && this.orderObj.OtherType) {
this.ZhuiJiaTK = true
}
......@@ -2815,7 +2869,14 @@
this.EmployeeId = userInfo.EmployeeId;
this.emplyeeName = userInfo.emName;
this.DepartIDs = this.msg.RB_Depart_Id = userInfo.RB_Department_Id;
if (this.$route.query.id == 245 ||
this.$route.query.id == 246 ||
this.$route.query.id == 247 ||
this.$route.query.id == 248 ||
this.$route.query.id == 267) {
this.msg.HelpBranchId=1218;
}
if (this.orderObj && this.orderObj.RB_Branch_Id != '' && this.orderObj.RB_Branch_Id != null && this.orderObj
.RB_Branch_Id != undefined) {
this.RB_Branch_id = this.departmentMsg.RB_Branch_Id = this.msg.RB_Branch_Id = this.orderObj.RB_Branch_Id;
......
......@@ -599,7 +599,8 @@
:key='item.DepartmentID'>
</el-option>
</el-select>
</span></p>
</span> </p>
<!-- msg.TemplateId==27&&msg.CourseId&&orderObj&&orderObj.OrderID&&orderObj.OrderSource==8 -->
<template v-if="isReceivablesAccount">
<!--
......@@ -643,6 +644,7 @@
</span>
</p>
</template>
<template v-if="(orderObj&&!orderObj.isPrestore)||msg.SigningCustomerId||msg.DepositCustomerId||RB_Branch_Id==1218">
<template v-if="!msg.DepositCustomerId||RB_Branch_Id==1218">
<p v-if="CustomerIdList&&CustomerIdList.length" style="margin-left: 15px;">签约客户:<span>
......@@ -669,6 +671,23 @@
</template>
</div>
<template v-if="!BillSonName.includes('分摊')&&!BillSonName.includes('预付')">
<div>
<p>
{{this.$route.query.Type==1?'帮代收':'帮代付'}}公司:
<span>
<el-select filterable v-model='msg.HelpBranchId' class="w120 _border_b_1">
<el-option label='请选择' :value='-1' :key='-1'></el-option>
<el-option v-for='item in companyList' :label='item.BName' :value='item.Id' :key='item.Id'
:disabled="item.Id===msg.RB_Branch_Id">
</el-option>
</el-select>
</span>
<span style="margin-left: 20px;color: red;">注:只有帮其他公司{{this.$route.query.Type==1?'代收':'代付'}}的需选择此项,如是本公司款则忽略此项</span>
</p>
</div>
</template>
<table v-if="ContractCustomer" class="Receipt_table" border="1" bordercolor="#c94052"
style="border-collapse:collapse;margin-top: 10px;">
<tr>
......@@ -824,6 +843,7 @@
detailList: [],
RB_Depart_Id: '',
RB_Branch_Id: '',
HelpBranchId:-1,
Status: 1,
OriginalFee: 0,
emList: [],
......@@ -1602,7 +1622,27 @@
}).catch(() => {
})
}else{
}
else if(this.msg.HelpBranchId>-1){
let that = this
let brandName='确认是帮';
this.companyList.forEach(item => {
if(item.Id==this.msg.HelpBranchId){
brandName+=item.BName;
}
});
brandName+= (this.$route.query.Type==1?'代收':'代付')+'此笔款项,请正确选择,避免驳回';
this.$confirm(brandName, this.$t('tips.tips'), {
confirmButtonText: '确认提交',
cancelButtonText: '取消提交',
type: 'warning'
}).then(() => {
that.Financial_post_Set()
}).catch(() => {
})
}
else{
this.Financial_post_Set()
}
......@@ -1950,8 +1990,9 @@
if(!this.$route.query.edit){
this.msg.RB_Branch_Id = this.msg.RB_Branch_Id == 0 || this.msg.RB_Branch_Id == ParentCompanyId ? this
.getLocalStorage().RB_Branch_id : this.msg.RB_Branch_Id;
}
if (this.orderObj && this.orderObj.companyIDList && this.orderObj.companyIDList.length > 0) {
this.msg.RB_Branch_Id = this.orderObj.companyIDList[0];
} else if (this.$route.query.companyID) {
......
<style scoped>
.OrderReceivablesAccount-form{
width: 330px;
position: fixed;
z-index: 2;
right: 16px;
top: 100px;
background: #fff;
padding: 14px 26px 14px 13px;
border-radius: 8px;
}
.OrderReceivablesAccount-title{
font-size: 18px;
font-weight: bold;
padding: 0 0 10px 0;
}
.OrderReceivablesAccount-center>div{
/* display: flex;
flex-wrap: nowrap; */
padding: 0 0 10px 0;
font-size: 14px;
}
.OrderReceivablesAccount-center>div:last-child{
padding: 0;
}
.OrderReceivablesAccount-center>div>span{
/* color: #949695; */
width: 70px;
display: inline-block;
margin-right: 10px;
text-align: right;
/* flex-shrink: 0; */
}
.OrderReceivablesAccount-contract{
display: flex;
flex-wrap: wrap;
}
.OrderReceivablesAccount-imgBox{
width: 50px;
height: 50px;
margin-right: 5px;
margin-bottom: 3px;
overflow: hidden;
position: relative;
border: 1px dashed #d1d1d1;
border-radius: 6px;
}
.imgBox-imgs img{
width: 100%;
height: 100%;
display: block;
}
.ClosePopup{
position: fixed;
right: 30px;
top: 110px;
z-index: 3;
font-size: 20px;
cursor: pointer;
}
.OrderReceivablesAccount-imgBox{
cursor: pointer;
}
.OrderReceivablesAccount-imgBox ._see_img{
opacity: 0;
}
.OrderReceivablesAccount-imgBox ._see_img {
position: absolute;
top: 0;
width: 50px;
height: 50px;
padding-top: 0;
line-height: 34px;
text-align: center;
background-color: rgba(2, 2, 2, 0.3);
display: inherit;
opacity: 0;
transition: all linear .5s
}
.OrderReceivablesAccount-imgBox:hover ._see_img {
opacity: 1;
}
.OrderReceivablesAccount-imgBox ._see_img .icon-sousuo{
margin-top: 8px;
}
.OrderReceivablesAccount-imgBox ._see_img i.iconfont {
display: inline-block;
width: 32px;
height: 32px;
border-radius: 50%;
color: #FFFFFF !important;
background-color: rgba(255, 255, 255, 0.5);
}
</style>
<template>
<div class="OrderReceivablesAccount-form" v-if="helpBranchData">
<!-- <div class="OrderReceivablesAccount-title">{{helpBranchData.Type==1?'代收':'代付'}}公司</div> -->
<div class="OrderReceivablesAccount-center">
<div v-if="helpBranchData.Type==2"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;付:</span><span style="color:red;width:auto;">{{helpBranchData.HelpBranchName}}{{helpBranchData.Type==1?'代收':'代付'}}</span> </div>
<div v-else-if="helpBranchData.Type==1"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;收:</span><span style="color:red;width:auto;">{{helpBranchData.HelpBranchName}}{{helpBranchData.Type==1?'代收':'代付'}} </span></div>
</div>
</div>
</template>
<script>
export default {
props:['helpBranchData'],
data() {
return {
}
},
created() {
},
methods: {
},
mounted() {
}
}
</script>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment