|
@@ -229,7 +229,117 @@
|
|
|
</div>
|
|
|
</el-tab-pane>
|
|
|
<el-tab-pane label="会务数据统计" name="third">会务数据统计</el-tab-pane>
|
|
|
- <el-tab-pane label="团组预算/实际成本" name="fourth">团组预算/实际成本</el-tab-pane>
|
|
|
+ <el-tab-pane label="团组预算/实际成本" name="fourth">
|
|
|
+ <div class="fourth-table">
|
|
|
+ <el-table
|
|
|
+ :data="fourthData"
|
|
|
+ border
|
|
|
+ style="width: 100%">
|
|
|
+ <el-table-column
|
|
|
+ prop="rowNumber"
|
|
|
+ label="序号"
|
|
|
+ width="50">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ prop="groupName"
|
|
|
+ label="团组名">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ prop="clientUnit"
|
|
|
+ label="客户单位">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ prop="visitDate"
|
|
|
+ label="出访日期"
|
|
|
+ width="110">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ {{ cltade(scope.row.visitDate) }}
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ prop="visitDays"
|
|
|
+ label="天数"
|
|
|
+ width="50">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ prop="visitPNumber"
|
|
|
+ label="人数"
|
|
|
+ width="50">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ prop="budgetAmount"
|
|
|
+ label="团组预算"
|
|
|
+ width="120">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ {{ townum(scope.row.budgetAmount) }}
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ prop="realityAmount"
|
|
|
+ label="团组实际成本"
|
|
|
+ width="120">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ {{ townum(scope.row.realityAmount) }}
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ prop="excessAmount"
|
|
|
+ label="实际比预算超出金额"
|
|
|
+ width="160">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ {{ townum(scope.row.excessAmount) }}
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ prop="excessPercentage"
|
|
|
+ label="实际比预算超出百分比"
|
|
|
+ width="180">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ label="详细"
|
|
|
+ width="100">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-popover
|
|
|
+ placement="left"
|
|
|
+ width="600"
|
|
|
+ trigger="hover">
|
|
|
+ <el-table
|
|
|
+ :data="scope.row.details"
|
|
|
+ border
|
|
|
+ style="width: 100%;font-size:12px">
|
|
|
+ <el-table-column
|
|
|
+ prop="module"
|
|
|
+ label="模块"
|
|
|
+ width="180">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ prop="budgetAmountDesc"
|
|
|
+ label="该模块预算"
|
|
|
+ width="180">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ prop="realityAmountDesc"
|
|
|
+ label="实际费用的金额 ">
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
+ <span style="display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1; overflow: hidden;cursor: pointer;color: #48a2ff;" slot="reference" type="text">移上查看</span>
|
|
|
+ </el-popover>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
+ <div class="block">
|
|
|
+ <el-pagination
|
|
|
+ @size-change="handleSizeChange"
|
|
|
+ @current-change="handleCurrentChange"
|
|
|
+ :current-page="currentPage4"
|
|
|
+ :page-sizes="[5, 10, 20, 30]"
|
|
|
+ :page-size="fourthPagesize"
|
|
|
+ layout="total, sizes, prev, pager, next, jumper"
|
|
|
+ :total="fourthtotal">
|
|
|
+ </el-pagination>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </el-tab-pane>
|
|
|
<!-- <el-tab-pane label="定时任务补偿" name="fourth">定时任务补偿</el-tab-pane> -->
|
|
|
</el-tabs>
|
|
|
</div>
|
|
@@ -309,9 +419,32 @@ export default {
|
|
|
tableData:[],
|
|
|
tableDatamonth:[],
|
|
|
tableheader:['月份','车费','导游费','司机费','小费','接送机费','餐费','住补费','景点费','翻译费','饮料/零食/水果费','其他费用'],
|
|
|
+ fourthData:[],
|
|
|
+ fourthcurrentPage:1,
|
|
|
+ fourthPagesize:10,
|
|
|
+ fourthtotal:0,
|
|
|
}
|
|
|
},
|
|
|
methods: {
|
|
|
+ handleSizeChange(val) {
|
|
|
+ this.fourthcurrentPage = 1;
|
|
|
+ this.fourthPagesize = val;
|
|
|
+ this.StatisticsGroupCost();
|
|
|
+
|
|
|
+ },
|
|
|
+ handleCurrentChange(val) {
|
|
|
+ this.fourthcurrentPage = val;
|
|
|
+ this.StatisticsGroupCost();
|
|
|
+ },
|
|
|
+ //保留两位小数
|
|
|
+ townum(val){
|
|
|
+ val=Number(val);
|
|
|
+ return val.toFixed(2);
|
|
|
+ },
|
|
|
+ //保留两位小数
|
|
|
+ cltade(val){
|
|
|
+ return val.split(" ")[0];
|
|
|
+ },
|
|
|
//日期处理(年)
|
|
|
TimeProcessingriY(val){
|
|
|
let datetime=new Date(val)
|
|
@@ -332,6 +465,9 @@ export default {
|
|
|
if(this.activeName=='second'){
|
|
|
this.StatisticsAirTicket()
|
|
|
}
|
|
|
+ if (this.activeName=='fourth') {
|
|
|
+ this.StatisticsGroupCost()
|
|
|
+ }
|
|
|
// console.log(tab, event);
|
|
|
},
|
|
|
//处理时间
|
|
@@ -530,6 +666,35 @@ export default {
|
|
|
series: [{ type: 'bar' }]
|
|
|
},true);
|
|
|
},
|
|
|
+ //获取团组预算/实际成本
|
|
|
+ StatisticsGroupCost(){
|
|
|
+ var url = "/api/Statistics/StatisticsGroupCost"
|
|
|
+ var that = this
|
|
|
+ this.$axios({
|
|
|
+ method: 'post',
|
|
|
+ url: url,
|
|
|
+ headers: {
|
|
|
+ Authorization: 'Bearer '
|
|
|
+ },
|
|
|
+ data:{
|
|
|
+ portType:1,
|
|
|
+ pageIndex:that.fourthcurrentPage,
|
|
|
+ pageSize:that.fourthPagesize,
|
|
|
+ year:that.getdate(that.year),
|
|
|
+ search:"",
|
|
|
+ }
|
|
|
+ }).then(function (res) {
|
|
|
+ if(res.data.code==200){
|
|
|
+ that.fourthtotal=res.data.count;
|
|
|
+ that.fourthData=res.data.data;
|
|
|
+ }else{
|
|
|
+ that.$message({
|
|
|
+ message: res.data.msg,
|
|
|
+ type: 'warning'
|
|
|
+ });
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
//团组数量
|
|
|
teamsl(){
|
|
|
var groupnumbox = echarts.init(document.getElementById('groupnumbox'));
|
|
@@ -665,6 +830,9 @@ export default {
|
|
|
if(this.activeName=='second'){
|
|
|
this.countrieschange(this.value);
|
|
|
}
|
|
|
+ if (this.activeName=='fourth') {
|
|
|
+ this.StatisticsGroupCost()
|
|
|
+ }
|
|
|
// this.businessincome=[];
|
|
|
// this.Grossprofit=[];
|
|
|
// this.costing=[];
|
|
@@ -1192,4 +1360,8 @@ export default {
|
|
|
.el-table th.el-table__cell>.cell{
|
|
|
text-align: center !important;
|
|
|
}
|
|
|
+.statistically-all .block{
|
|
|
+ margin-top: 10px;
|
|
|
+ text-align: center;
|
|
|
+}
|
|
|
</style>
|