Commit 88dfe484 authored by liudong1993's avatar liudong1993

1

parent d686a602
...@@ -4442,6 +4442,7 @@ export const obj = { ...@@ -4442,6 +4442,7 @@ export const obj = {
zuijinlgy: '最近六个月', zuijinlgy: '最近六个月',
ribenxborcg: '日本小包OR常规', ribenxborcg: '日本小包OR常规',
gouwuyjqk: '购物佣金情况', gouwuyjqk: '购物佣金情况',
yushiduibiqk: '预实对比情况',
jiduhuiz: '季度汇总', jiduhuiz: '季度汇总',
yongjtj: '佣金统计', yongjtj: '佣金统计',
xuanzheyf: '选择月份', xuanzheyf: '选择月份',
......
...@@ -4442,6 +4442,7 @@ export const obj = { ...@@ -4442,6 +4442,7 @@ export const obj = {
zuijinlgy: '最近六個月', zuijinlgy: '最近六個月',
ribenxborcg: '日本小包OR常規', ribenxborcg: '日本小包OR常規',
gouwuyjqk: '購物佣金情況', gouwuyjqk: '購物佣金情況',
yushiduibiqk: '預實對比情況',
jiduhuiz: '季度彙總', jiduhuiz: '季度彙總',
yongjtj: '佣金統計', yongjtj: '佣金統計',
xuanzheyf: '選擇月份', xuanzheyf: '選擇月份',
......
<template>
<div style="margin-bottom: 20px;">
<div class="shopingRow">
<div class="shopingcolumn">
<h3 class="text-center" style="margin-top: 15px;margin-bottom: 5px;">全部费用</h3>
<el-table
height="410"
:data="AllStat"
style="width: 100%;"
class="LineAnalysisDataBJ LineAnalysisDataBJ2" border>
<el-table-column prop="" label="线路" align="center">
<template slot-scope="scope">
{{scope.row.LineName}}
</template>
</el-table-column>
<el-table-column prop="" label="出团公司" align="center" width="80">
<template slot-scope="scope">
{{scope.row.BName}}
</template>
</el-table-column>
<el-table-column prop="" label="团队编号" align="center" width="80">
<template slot-scope="scope">
{{scope.row.TCID}}
</template>
</el-table-column>
<el-table-column prop="" label="团号" align="center" width="145">
<template slot-scope="scope">
{{scope.row.TCNUM}}
</template>
</el-table-column>
<el-table-column prop="" label="操作OP" align="center" width="75">
<template slot-scope="scope">
{{scope.row.OpName}}
</template>
</el-table-column>
<el-table-column prop="" label="全部费用" align="center">
<template slot-scope="scope">
{{scope.row.CostFee.toFixed(2)}}
</template>
</el-table-column>
<el-table-column prop="" label="预估金额" align="center">
<template slot-scope="scope">
{{scope.row.ExpectedFee.toFixed(2)}}
</template>
</el-table-column>
<el-table-column prop="" label="超预算%" align="center" width="75">
<template slot-scope="scope">
{{scope.row.MaoLiRate}}%
</template>
</el-table-column>
<el-table-column prop="" label="Top" align="center" width="45">
<template slot-scope="scope">
{{scope.row.Sort}}
</template>
</el-table-column>
</el-table>
</div>
<div class="shopingcolumn">
<h3 class="text-center" style="margin-top: 15px;margin-bottom: 5px;">房费</h3>
<el-table
height="410"
:data="RoomStat"
style="width: 100%;"
class="LineAnalysisDataBJ LineAnalysisDataBJ2" border>
<el-table-column prop="" label="线路" align="center">
<template slot-scope="scope">
{{scope.row.LineName}}
</template>
</el-table-column>
<el-table-column prop="" label="出团公司" align="center" width="80">
<template slot-scope="scope">
{{scope.row.BName}}
</template>
</el-table-column>
<el-table-column prop="" label="团队编号" align="center" width="80">
<template slot-scope="scope">
{{scope.row.TCID}}
</template>
</el-table-column>
<el-table-column prop="" label="团号" align="center" width="145">
<template slot-scope="scope">
{{scope.row.TCNUM}}
</template>
</el-table-column>
<el-table-column prop="" label="操作OP" align="center" width="75">
<template slot-scope="scope">
{{scope.row.OpName}}
</template>
</el-table-column>
<el-table-column prop="" label="房费" align="center">
<template slot-scope="scope">
{{scope.row.CostFee.toFixed(2)}}
</template>
</el-table-column>
<el-table-column prop="" label="预估金额" align="center">
<template slot-scope="scope">
{{scope.row.ExpectedFee.toFixed(2)}}
</template>
</el-table-column>
<el-table-column prop="" label="超预算%" align="center" width="75">
<template slot-scope="scope">
{{scope.row.MaoLiRate}}%
</template>
</el-table-column>
<el-table-column prop="" label="Top" align="center" width="45">
<template slot-scope="scope">
{{scope.row.Sort}}
</template>
</el-table-column>
</el-table>
</div>
</div>
<div class="shopingRow">
<div class="shopingcolumn">
<h3 class="text-center" style="margin-top: 15px;margin-bottom: 5px;">车资</h3>
<el-table
height="410"
:data="CarStat"
style="width: 100%;"
class="LineAnalysisDataBJ LineAnalysisDataBJ2" border>
<el-table-column prop="" label="线路" align="center">
<template slot-scope="scope">
{{scope.row.LineName}}
</template>
</el-table-column>
<el-table-column prop="" label="出团公司" align="center" width="80">
<template slot-scope="scope">
{{scope.row.BName}}
</template>
</el-table-column>
<el-table-column prop="" label="团队编号" align="center" width="80">
<template slot-scope="scope">
{{scope.row.TCID}}
</template>
</el-table-column>
<el-table-column prop="" label="团号" align="center" width="145">
<template slot-scope="scope">
{{scope.row.TCNUM}}
</template>
</el-table-column>
<el-table-column prop="" label="操作OP" align="center" width="75">
<template slot-scope="scope">
{{scope.row.OpName}}
</template>
</el-table-column>
<el-table-column prop="" label="车资" align="center">
<template slot-scope="scope">
{{scope.row.CostFee.toFixed(2)}}
</template>
</el-table-column>
<el-table-column prop="" label="预估金额" align="center">
<template slot-scope="scope">
{{scope.row.ExpectedFee.toFixed(2)}}
</template>
</el-table-column>
<el-table-column prop="" label="超预算%" align="center" width="75">
<template slot-scope="scope">
{{scope.row.MaoLiRate}}%
</template>
</el-table-column>
<el-table-column prop="" label="Top" align="center" width="45">
<template slot-scope="scope">
{{scope.row.Sort}}
</template>
</el-table-column>
</el-table>
</div>
<div class="shopingcolumn">
<h3 class="text-center" style="margin-top: 15px;margin-bottom: 5px;">机票</h3>
<el-table
height="410"
:data="AirStat"
style="width: 100%;"
class="LineAnalysisDataBJ LineAnalysisDataBJ2" border>
<el-table-column prop="" label="线路" align="center">
<template slot-scope="scope">
{{scope.row.LineName}}
</template>
</el-table-column>
<el-table-column prop="" label="出团公司" align="center" width="80">
<template slot-scope="scope">
{{scope.row.BName}}
</template>
</el-table-column>
<el-table-column prop="" label="团队编号" align="center" width="80">
<template slot-scope="scope">
{{scope.row.TCID}}
</template>
</el-table-column>
<el-table-column prop="" label="团号" align="center" width="145">
<template slot-scope="scope">
{{scope.row.TCNUM}}
</template>
</el-table-column>
<el-table-column prop="" label="操作OP" align="center" width="75">
<template slot-scope="scope">
{{scope.row.OpName}}
</template>
</el-table-column>
<el-table-column prop="" label="机票款" align="center">
<template slot-scope="scope">
{{scope.row.CostFee.toFixed(2)}}
</template>
</el-table-column>
<el-table-column prop="" label="预估金额" align="center">
<template slot-scope="scope">
{{scope.row.ExpectedFee.toFixed(2)}}
</template>
</el-table-column>
<el-table-column prop="" label="超预算%" align="center" width="75">
<template slot-scope="scope">
{{scope.row.MaoLiRate}}%
</template>
</el-table-column>
<el-table-column prop="" label="Top" align="center" width="45">
<template slot-scope="scope">
{{scope.row.Sort}}
</template>
</el-table-column>
</el-table>
</div>
</div>
<div class="shopingRow">
<div class="shopingcolumn">
<h3 class="text-center" style="margin-top: 15px;margin-bottom: 5px;">餐费</h3>
<el-table
height="410"
:data="MealStat"
style="width: 100%;"
class="LineAnalysisDataBJ LineAnalysisDataBJ2" border>
<el-table-column prop="" label="线路" align="center">
<template slot-scope="scope">
{{scope.row.LineName}}
</template>
</el-table-column>
<el-table-column prop="" label="出团公司" align="center" width="80">
<template slot-scope="scope">
{{scope.row.BName}}
</template>
</el-table-column>
<el-table-column prop="" label="团队编号" align="center" width="80">
<template slot-scope="scope">
{{scope.row.TCID}}
</template>
</el-table-column>
<el-table-column prop="" label="团号" align="center" width="145">
<template slot-scope="scope">
{{scope.row.TCNUM}}
</template>
</el-table-column>
<el-table-column prop="" label="操作OP" align="center" width="75">
<template slot-scope="scope">
{{scope.row.OpName}}
</template>
</el-table-column>
<el-table-column prop="" label="餐费" align="center">
<template slot-scope="scope">
{{scope.row.CostFee.toFixed(2)}}
</template>
</el-table-column>
<el-table-column prop="" label="预估金额" align="center">
<template slot-scope="scope">
{{scope.row.ExpectedFee.toFixed(2)}}
</template>
</el-table-column>
<el-table-column prop="" label="超预算%" align="center" width="75">
<template slot-scope="scope">
{{scope.row.MaoLiRate}}%
</template>
</el-table-column>
<el-table-column prop="" label="Top" align="center" width="45">
<template slot-scope="scope">
{{scope.row.Sort}}
</template>
</el-table-column>
</el-table>
</div>
<div class="shopingcolumn">
<h3 class="text-center" style="margin-top: 15px;margin-bottom: 5px;">门票</h3>
<el-table
height="410"
:data="TicketStat"
style="width: 100%;"
class="LineAnalysisDataBJ LineAnalysisDataBJ2" border>
<el-table-column prop="" label="线路" align="center">
<template slot-scope="scope">
{{scope.row.LineName}}
</template>
</el-table-column>
<el-table-column prop="" label="出团公司" align="center" width="80">
<template slot-scope="scope">
{{scope.row.BName}}
</template>
</el-table-column>
<el-table-column prop="" label="团队编号" align="center" width="80">
<template slot-scope="scope">
{{scope.row.TCID}}
</template>
</el-table-column>
<el-table-column prop="" label="团号" align="center" width="145">
<template slot-scope="scope">
{{scope.row.TCNUM}}
</template>
</el-table-column>
<el-table-column prop="" label="操作OP" align="center" width="75">
<template slot-scope="scope">
{{scope.row.OpName}}
</template>
</el-table-column>
<el-table-column prop="" label="门票费用" align="center">
<template slot-scope="scope">
{{scope.row.CostFee.toFixed(2)}}
</template>
</el-table-column>
<el-table-column prop="" label="预估金额" align="center">
<template slot-scope="scope">
{{scope.row.ExpectedFee.toFixed(2)}}
</template>
</el-table-column>
<el-table-column prop="" label="超预算%" align="center" width="75">
<template slot-scope="scope">
{{scope.row.MaoLiRate}}%
</template>
</el-table-column>
<el-table-column prop="" label="Top" align="center" width="45">
<template slot-scope="scope">
{{scope.row.Sort}}
</template>
</el-table-column>
</el-table>
</div>
</div>
</div>
</template>
<script>
export default {
props:['StatisticalData'],
data() {
return {
RoomStat:[],
MealStat:[],
CarStat:[],
TicketStat:[],
AirStat:[],
AllStat:[]
}
},
mounted() {
},
methods: {
},
watch: {
StatisticalData:{
handler(n,o){
this.RoomStat = n.RoomStat
this.MealStat = n.MealStat
this.CarStat = n.CarStat
this.TicketStat = n.TicketStat
this.AirStat = n.AirStat
this.AllStat = n.AllStat
},
deep: true,
immediate: false,
}
},
}
</script>
<style scoped>
/deep/.LineAnalysisDataBJ tr td:nth-child(1n){
background: #F5F7FA;
}
/deep/.LineAnalysisDataBJ tr td:nth-child(2n){
background: #fff;
}
/deep/.LineAnalysisDataBJ tr th{
background: #F5F7FA;
}
/deep/.el-table.LineAnalysisDataBJ tr:first-child th:first-child{
background: #F5F7FA;
}
/deep/.el-table.LineAnalysisDataBJ tr:nth-child(2) th:nth-child(1n){
/* background: #fff; */
}
/deep/.el-table.LineAnalysisDataBJ tr:nth-child(2) th:nth-child(2n){
background: #F5F7FA;
}
/deep/.el-table.LineAnalysisDataBJ tr:first-child th{
background: #fff;
}
/deep/.el-table.LineAnalysisDataBJ2 tr:first-child th:nth-child(1n){
background: #F5F7FA;
}
/deep/.el-table.LineAnalysisDataBJ2 tr:first-child th:nth-child(2n){
/* background: #fff; */
}
/deep/.el-table.LineAnalysisDataBJ tr th{
height: 20px;
line-height: 20px;
padding: 5px 0;
}
/deep/.el-table.LineAnalysisDataBJ tr td{
height: 20px;
line-height: 20px;
padding: 5px 0;
}
.shopingRow{
height: 400px;
display: flex;
flex-direction: row;
overflow: hidden;
}
.shopingcolumn{
flex: 1;
display: flex;
flex-direction: column;
}
/* /deep/.el-table.LineAnalysisDataBJ tr:first-child th{
border-right: 3px solid #ddd;
}
/deep/.el-table.LineAnalysisDataBJ tr:first-child th:first-child{
border-right: 0;
}
/deep/.el-table.LineAnalysisDataBJ tr:nth-child(2) th:nth-child(9n){
border-right: 3px solid #ddd;
}
/deep/.el-table.LineAnalysisDataBJ-R>div:nth-child(3) td:nth-child(9n){
border-right: 3px solid #ddd;
#EBEEF5
} */
</style>
...@@ -5,6 +5,7 @@ ...@@ -5,6 +5,7 @@
<el-tab-pane v-if="PermissionState!=3" :label="$t('objFill.v101.FinancialModule.gongsjyqk')" name="2"></el-tab-pane> <el-tab-pane v-if="PermissionState!=3" :label="$t('objFill.v101.FinancialModule.gongsjyqk')" name="2"></el-tab-pane>
<el-tab-pane v-if="PermissionState!=3" :label="$t('objFill.v101.FinancialModule.ribenxborcg')" name="3"></el-tab-pane> <el-tab-pane v-if="PermissionState!=3" :label="$t('objFill.v101.FinancialModule.ribenxborcg')" name="3"></el-tab-pane>
<el-tab-pane v-if="PermissionState!=2" :label="$t('objFill.v101.FinancialModule.gouwuyjqk')" name="4"></el-tab-pane> <el-tab-pane v-if="PermissionState!=2" :label="$t('objFill.v101.FinancialModule.gouwuyjqk')" name="4"></el-tab-pane>
<el-tab-pane v-if="PermissionState!=3" :label="$t('objFill.v101.FinancialModule.yushiduibiqk')" name="5"></el-tab-pane>
</el-tabs> </el-tabs>
<div class="query-box"> <div class="query-box">
<el-form class="_info_box clearfix" label-width="90px"> <el-form class="_info_box clearfix" label-width="90px">
...@@ -73,7 +74,7 @@ ...@@ -73,7 +74,7 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
</template> </template>
<el-col :span="4"> <el-col :span="4" v-if="activeName!=5">
<el-form-item :label="$t('fnc.bweibi')"> <el-form-item :label="$t('fnc.bweibi')">
<el-select :disabled="coinGetShow" filterable v-model="msg.StandardCurrencyId" @change="getChange"> <el-select :disabled="coinGetShow" filterable v-model="msg.StandardCurrencyId" @change="getChange">
<el-option :value="-1" :label="$t('pub.unlimitedSel')"></el-option> <el-option :value="-1" :label="$t('pub.unlimitedSel')"></el-option>
...@@ -146,7 +147,7 @@ ...@@ -146,7 +147,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="2" v-if="activeName!=3"> <el-col :span="2" v-if="activeName!=3 && activeName!=5">
<el-form-item :label="$t('objFill.v101.FinancialModule.jiduhuiz')"> <el-form-item :label="$t('objFill.v101.FinancialModule.jiduhuiz')">
<el-checkbox v-model="msg.LossType" true-label="1" false-label="0" @change="getStatement"></el-checkbox> <el-checkbox v-model="msg.LossType" true-label="1" false-label="0" @change="getStatement"></el-checkbox>
</el-form-item> </el-form-item>
...@@ -158,12 +159,15 @@ ...@@ -158,12 +159,15 @@
<button class="hollowFixedBtn" @click="getStatement"> <button class="hollowFixedBtn" @click="getStatement">
{{ $t("pub.searchBtn") }} {{ $t("pub.searchBtn") }}
</button> </button>
<button v-if="activeName!=4" class="normalBtn" @click="exportExcel"> <button v-if="activeName!=4 && activeName!=5" class="normalBtn" @click="exportExcel">
{{$t('visa.v_daochu')}} {{$t('visa.v_daochu')}}
</button> </button>
<button v-if="activeName==4" class="normalBtn" @click="exportExcel2"> <button v-if="activeName==4" class="normalBtn" @click="exportExcel2">
{{$t('visa.v_daochu')}} {{$t('visa.v_daochu')}}
</button> </button>
<button v-if="activeName==5" class="normalBtn" @click="exportExcel3">
{{$t('visa.v_daochu')}}
</button>
</li> </li>
</ul> </ul>
</div> </div>
...@@ -172,6 +176,7 @@ ...@@ -172,6 +176,7 @@
<Corporations v-if="activeName=='2'" :StatisticalData="StatisticalData"></Corporations> <Corporations v-if="activeName=='2'" :StatisticalData="StatisticalData"></Corporations>
<Packets v-if="activeName=='3'" :StatisticalData="StatisticalData"></Packets> <Packets v-if="activeName=='3'" :StatisticalData="StatisticalData"></Packets>
<ShoppingCommission v-if="activeName=='4'" :StatisticalData="StatisticalData"></ShoppingCommission> <ShoppingCommission v-if="activeName=='4'" :StatisticalData="StatisticalData"></ShoppingCommission>
<PrerealContrast v-if="activeName=='5'" :StatisticalData="StatisticalData"></PrerealContrast>
</div> </div>
</div> </div>
</template> </template>
...@@ -182,9 +187,10 @@ import Lines from "./components/line.vue"; ...@@ -182,9 +187,10 @@ import Lines from "./components/line.vue";
import Corporations from "./components/corporation.vue"; import Corporations from "./components/corporation.vue";
import Packets from "./components/packet.vue"; import Packets from "./components/packet.vue";
import ShoppingCommission from "./components/ShoppingCommission.vue"; import ShoppingCommission from "./components/ShoppingCommission.vue";
import PrerealContrast from "./components/PrerealContrast.vue";
import StartYMDateLimit from '../../public/StartYMDateLimit.vue'; import StartYMDateLimit from '../../public/StartYMDateLimit.vue';
export default { export default {
components: {Lines,Corporations,Packets,ShoppingCommission,StartYMDateLimit}, components: {Lines,Corporations,Packets,ShoppingCommission,PrerealContrast,StartYMDateLimit},
data() { data() {
return { return {
coinGetShow: false, coinGetShow: false,
...@@ -336,6 +342,9 @@ export default { ...@@ -336,6 +342,9 @@ export default {
msg = this.shopMsg msg = this.shopMsg
url = 'financestatistics_post_GetCommissionAnalysisStat' url = 'financestatistics_post_GetCommissionAnalysisStat'
} }
if(this.activeName=='5'){
url = 'financestatistics_post_GetExpectedCostAnalysisStat'
}
this.loading = true this.loading = true
this.apipost( this.apipost(
url, url,
...@@ -364,6 +373,25 @@ export default { ...@@ -364,6 +373,25 @@ export default {
this.msg.startDate = sDate this.msg.startDate = sDate
this.msg.endDate = eDate this.msg.endDate = eDate
} }
if(this.activeName=='5'){
let sDate = moment().subtract(2, 'months').format('YYYY-MM');
let eDate = moment().subtract(2, 'months').format('YYYY-MM');
this.dateTime = [sDate,eDate]
this.msg.startDate = sDate
this.msg.endDate = eDate
}else{
let eDate = moment().subtract(1, 'months').format('YYYY-MM');
if(this.msg.startDate == this.msg.endDate && this.msg.startDate== eDate){
let sDate = moment().subtract(7, 'months').format('YYYY-MM');
let eDate = moment().subtract(1, 'months').format('YYYY-MM');
this.dateTime = [sDate,eDate]
this.msg.startDate = sDate
this.msg.endDate = eDate
}
}
this.getStatement() this.getStatement()
}, },
getDateTime(){ getDateTime(){
...@@ -401,6 +429,13 @@ export default { ...@@ -401,6 +429,13 @@ export default {
} }
this.GetLocalFile("financestatistics_post_GetCommissionAnalysisStatToExcel", msg, this.$t('objFill.v101.FinancialModule.yongjtj')+this.$commonUtils.getCurrentDate() + ".xls"); this.GetLocalFile("financestatistics_post_GetCommissionAnalysisStatToExcel", msg, this.$t('objFill.v101.FinancialModule.yongjtj')+this.$commonUtils.getCurrentDate() + ".xls");
}, },
exportExcel3(){//导出报表
let msg = {
EmployeeId: this.getLocalStorage().EmployeeId,
...this.msg
}
this.GetLocalFile("financestatistics_post_GetExpectedCostAnalysisStatToExcel", msg, '预实对比'+ this.$commonUtils.getCurrentDate() + ".xls");
},
getQueryData() { getQueryData() {
//获取公司列表 //获取公司列表
this.apipost( 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