Commit b4b917fd authored by 华国豪's avatar 华国豪 🙄
parents 37aeb76b 700a6a0f
......@@ -43,11 +43,6 @@
<div style="width: 100%; overflow-x: auto;padding-bottom: 10px; ">
<table border="0" cellspacing="1" cellpadding="0" class="ShoppingTable"
style="border: 1px solid rgb(230, 230, 230);min-width: 1600px" v-loading="loading">
<!-- <tr>
<th colspan="2">公司通用信息</th>
<th colspan="6">导游操作</th>
<th colspan="9">地接OP</th>
</tr> -->
<tr>
<th width="115">序号</th>
<th width="100">出发地</th>
......@@ -131,7 +126,7 @@
</td>
<td :rowspan="item.ShopDetailsList.length" v-if='subIndex==0'>
<div>
<p style="cursor: pointer;color:blue;" @click="CreateBill(item.ShopDetailsList)">生成单据</p>
<p style="cursor: pointer;color:blue;" @click="isShowFinaceDailog=true,CurrentOutItem=outItem">生成单据</p>
</div>
</td>
</tr>
......@@ -167,6 +162,22 @@
<el-pagination background @current-change="handleCurrentChange" :current-page.sync="msg.currentPage"
layout="total,prev, pager, next, jumper" :page-size="msg.pageSize" :total="msg.total"></el-pagination>
</div>
<el-dialog title="生成财务单据" :visible.sync="isShowFinaceDailog" custom-class='w400' center>
<template>
<el-form label-width="100px">
<el-form-item label="付款方式">
<el-select v-model="PayType">
<el-option label="常规付款" :value="1" :key="1"></el-option>
<el-option label="资金池付款" :value="2" :key="2"></el-option>
</el-select>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<button class="hollowFixedBtn" @click="isShowFinaceDailog=false,CurrentOutItem={}">{{$t('pub.cancelBtn')}}</button>
<button class="normalBtn" type="primary" @click="CreateBill()">{{$t('pub.sureBtn')}}</button>
</div>
</template>
</el-dialog>
<a id='blankLink1' target="_blank" style="display:none">1</a>
</div>
</template>
......@@ -183,13 +194,19 @@
LineId: 0,
LineteamId: 0,
StartDate: '',
TCNUM:"",
EndDate: '',
currentPage: 1,
total: 0,
},
PayType:1,//付款方式
LineList: [],
LineTeamList: [],
shopDataList: [],
//是否显示
isShowFinaceDailog:false,
//当前点击的对象
CurrentOutItem:{},
}
},
methods: {
......@@ -300,37 +317,50 @@
}
}, err => {})
},
//生成单据
CreateBill(ShopDetailsList, outItem) {
//生成单据
CreateBill() {
var that = this;
this.Confirm('是否生成财务单据?', function () {
that.loading = true;
var array = [];
ShopDetailsList.forEach(subItem => {
var obj = {
LeaderId: subItem.LeaderId != null ? subItem.LeaderId : 0,
LeaderName: subItem.LeaderName != null ? subItem.LeaderName : "",
TCID: subItem.TCID,
GuideId: subItem.GuideId != null ? subItem.GuideId : 0,
GuideName: subItem.GuideName != null ? subItem.GuideName : "",
TCNUM: subItem.TCNUMS,
}
array.push(obj)
});
var billMsg = {
ShopDetailsList: ShopDetailsList,
LeaderGuide: array
// var array = [];
// ShopDetailsList.forEach(subItem => {
// var obj = {
// LeaderId: subItem.LeaderId != null ? subItem.LeaderId : 0,
// LeaderName: subItem.LeaderName != null ? subItem.LeaderName : "",
// TCID: subItem.TCID,
// GuideId: subItem.GuideId != null ? subItem.GuideId : 0,
// GuideName: subItem.GuideName != null ? subItem.GuideName : "",
// TCNUM: subItem.TCNUMS,
// }
// array.push(obj)
// });
// var billMsg = {
// ShopDetailsList: ShopDetailsList,
// LeaderGuide: array
// };
// that.apipost('dmcstatistics_post_ShopCreateBill', billMsg, res => {
// that.loading = false;
// if (res.data.resultCode == 1) {
// that.Success(res.data.message);
// } else {
// that.Error(res.data.message);
// }
// }, err => {})
var nMsg = {
TCIDs: that.CurrentOutItem.TCIDs,
PayType:that.PayType,
uid: that.getLocalStorage().EmployeeId
};
that.apipost('dmcstatistics_post_ShopCreateBill', billMsg, res => {
that.loading = false;
if (res.data.resultCode == 1) {
that.Success(res.data.message);
} else {
that.Error(res.data.message);
}
}, err => {})
let fileName = "生成[" + that.CurrentOutItem.NewCombinationNum + "]购物店数据.xls";
that.GetLocalFile("dmcstatistics_post_ShopCreateBillAndExport", nMsg, fileName,
res => {
that.loading = false;
this.isShowFinaceDailog=false;
that.Success("导入成功!");
that.getList();
});
});
},
},
mounted() {
......@@ -341,7 +371,8 @@
parseInt(myDate.getMonth() + 1) +
"-" +
myDate.getDate();
this.msg.StartDate = nowDate;
//this.msg.StartDate = nowDate;
this.msg.TCNUM="NRTMU07190702A";
this.getLineList();
this.getList();
},
......
<style>
.fpTable th {
.flightPerformance .fpTable th {
border-bottom: 1px solid #d1d1d1;
border-right: 1px solid #d1d1d1;
background: #E6E6E6;
height:40px;
font-size: 14px;
color: #333;
}
.flightPerformance .fpTable{
width:1000px;
margin-bottom:30px;
border-collapse:collapse;
}
.flightPerformance .creatName{
color:green;
font-weight: bold;
margin-right:10px;
}
.flightPerformance .fpTable tr{background: #fff;text-align: center; height: 40px;}
.flightPerformance .fpTable tr:nth-child(2n+1){background:#fafafa; }
.flightPerformance .fpTable tr td{font-size: 12px;border: 1px solid #E5E5E5;}
.flightPerformance .fpTable tbody tr:last-child {
border-bottom: 2px solid #333;
}
</style>
<template>
<div class="flexOne">
<div class="flexOne flightPerformance">
<div class="query-box">
<ul>
<li>
......@@ -32,29 +51,66 @@
</li>
</ul>
</div>
<table class="singeRowTable fpTable" border="0" cellspacing="0" cellpadding="0" v-loading="loading">
<tr>
<th>团期</th>
<th>出团公司</th>
<th>线路</th>
<th>人数</th>
<th>操作人员</th>
</tr>
<tr v-for="item in dataList">
<td>
<template v-if="item.TCID>0">
<a style="color:blue;cursor:pointer" @click='goUrlT("RegistrationList",item.TCID,"报名清单")'>
({{item.TCID}}){{item.TCNUM}} </a>
</template>
<template v-else>
{{item.TCNUM}}
</template>
</td>
<td>{{item.OutBranchName}}</td>
<td>{{item.LineName}}</td>
<td>{{item.TicketNum}}</td>
<td>{{item.CreateByName}}</td>
</tr>
<table class="fpTable" border="0" cellspacing="0" cellpadding="0" v-loading="loading" v-for="(item,index) in dataList.resultList">
<tbody v-for="(subItem,subIndex) in item.TicketList">
<tr v-if="subIndex==0">
<td colspan="6">
<span class="creatName">{{item.CreateByName}}</span>
{{msg.QMonth}}
提成数据</td>
</tr>
<tr v-if="index==0&&subIndex==0">
<th>序号</th>
<th>公司</th>
<th>团号</th>
<th>人数</th>
<th>金额</th>
<th>小计</th>
</tr>
<template v-for="(childItem,childIndex) in subItem.SubList">
<tr>
<td width="10%">
{{childIndex+1}}
</td>
<td width="20%" :rowspan="subItem.SubList.length+1" style="border-bottom:2px solid black" v-if="childIndex==0">
{{subItem.OutBranchName}}
</td>
<td width="30%">
<template v-if="childItem.TCID>0">
<a style="color:blue;cursor:pointer" @click='goUrlT("RegistrationList",childItem.TCID,"报名清单")'>
({{childItem.TCID}}){{childItem.TCNUM}}
</a>
</template>
<template v-else>
{{childItem.TCNUM}}
</template>
</td>
<td width="10%">{{childItem.TicketNum}}</td>
<td width="10%" :rowspan="subItem.SubList.length+1" style="border-bottom:2px solid black" v-if="childIndex==0">{{dataList.UnitPrice}}</td>
<td width="10%">{{childItem.TicketNum*dataList.UnitPrice}}</td>
</tr>
<tr v-if="childIndex==subItem.SubList.length-1">
<td></td>
<td style="font-weight:bold;">合计</td>
<td style="color:red;">
{{getPeopleCount(subItem.SubList)}}
</td>
<td style="color:red;">
{{getCount(subItem.SubList)}}
</td>
</tr>
</template>
<tr v-if="subIndex==item.TicketList.length-1">
<td></td>
<td></td>
<td style="font-weight:bold;">总计</td>
<td>
<span style="color:red;">{{getTotalNum(item.TicketList)}}</span>
</td>
<td>{{dataList.UnitPrice}}</td>
<td><span style="color:red;">{{getTotalCount(item.TicketList)}}</span></td>
</tr>
</tbody>
</table>
</div>
</template>
......@@ -70,7 +126,7 @@
QMonth: '', //月份
},
loading: false,
dataList: [],
dataList: {},
//航空公司下拉
airlineList: [],
//操作人下拉
......@@ -116,6 +172,42 @@
}
});
},
//获取没个的人数
getPeopleCount(subList){
let count=0;
subList.forEach(x => {
count+=x.TicketNum;
});
return count;
},
//计算小计
getCount(list){
let count=0;
list.forEach(x => {
count+=x.TicketNum;
});
return count*this.dataList.UnitPrice;
},
//计算总计
getTotalCount(list){
let count=0;
list.forEach(x=>{
x.SubList.forEach(y=>{
count+=y.TicketNum
})
})
return count*this.dataList.UnitPrice;
},
//获取总计人数
getTotalNum(list){
let count=0;
list.forEach(x=>{
x.SubList.forEach(y=>{
count+=y.TicketNum
})
})
return count;
},
//初始化航空公司下拉
initAirlines() {
this.apipost(
......
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