Commit d45a7f70 authored by 黄媛媛's avatar 黄媛媛
parents 23105f31 3a0f2f83
<template>
<div class="Feedback">
<ul style="overflow: initial!important">
<li style="float:right;margin-bottom:10px">
<input type="button" class="hollowFixedBtn" value="新增" @click="addRule">
</li>
</ul>
<table class="singeRowTable" border="0" cellspacing="0" cellpadding="0" v-loading="loading">
<tr>
<th style="width:30%">线路名称</th>
<th>人员</th>
<th>占比</th>
<th>设置</th>
</tr>
<tr>
<td>全部</td>
<td>地接账户基金</td>
<td>{{allzb}}%</td>
<td>
<!-- <el-button @click="SetRules(item)" style="padding:4px" type="primary" icon="el-icon-edit" circle></el-button>
<el-button @click="Delete(item)" style="padding:4px" type="danger" icon="el-icon-delete" circle></el-button> -->
</td>
</tr>
<tbody v-for="(item,i) in dataList" :key="i">
<tr v-for="(com,index) in item.OPCommissionList" :key="index">
<td :rowspan="item.OPCommissionList.length" v-if="index==0">{{item.LineName}}</td>
<td>{{com.EmployeeName}}</td>
<td>{{com.CommissionPercent}}%</td>
<td>
<el-button @click="SetRules(com)" style="padding:4px" type="primary" icon="el-icon-edit" circle></el-button>
<el-button @click="Delete(com)" style="padding:4px" type="danger" icon="el-icon-delete" circle></el-button>
</td>
</tr>
</tbody>
<tr v-if="dataList.length==0">
<td colspan="12" align="center">暂无数据</td>
</tr>
</table>
<el-dialog title="提成规则" :visible.sync="ruleVisible" width="400px">
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
<el-form-item label="人员" prop="EmployeeId">
<el-select class="multiple_input" filterable v-model="form.EmployeeId">
<el-option v-for="item in EmployeeList" :label="item.EmName" :value="item.EmployeeId"
:key="item.EmployeeId"></el-option>
</el-select>
</el-form-item>
<el-form-item label="占比" prop="CommissionPercent">
<el-input class="w220" @keyup.native="checkPrice(form,'CommissionPercent')" v-model="form.CommissionPercent">
</el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button size="small" @click="ruleVisible = false">取 消</el-button>
<el-button size="small" type="danger" @click="RulesOk('form')">确 定</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
import moment from "moment"
import {
constants
} from 'fs';
export default {
name: 'Feedback',
data() {
return {
allzb: 100,
dataList: [],
loading: false,
ruleVisible: false,
form: {
LineName: '出境日本线',
LineID: 14,
EmployeeId: '',
CommissionPercent: 0,
},
EmployeeList: [],
rules: {
EmployeeId: [{
required: true,
message: '请选择参与人员',
trigger: 'change'
}],
CommissionPercent: [{
required: true,
message: "请输入占比",
trigger: "blur"
}],
},
}
},
created() {},
mounted() {
this.getList();
this.getEmployeeList();
},
methods: {
Delete(item) {
this.$confirm("是否删除? 删除后不可恢复", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
})
.then(() => {
this.apipost('OPCommission_RemoveOPCommission', {
ID: item.Id
}, res => {
if (res.data.resultCode == 1) {
this.Success(res.data.message)
this.getList()
} else {
this.Error(res.data.message)
}
})
})
.catch(() => {});
},
addRule() {
this.ruleVisible = true;
this.form = {
LineName: '出境日本线',
LineID: 14,
EmployeeId: '',
CommissionPercent: 0,
}
},
SetRules(item) {
this.ruleVisible = true;
this.form = {
LineName: '出境日本线',
LineID: 14,
EmployeeId: item.EmployeeId,
CommissionPercent: item.CommissionPercent,
Id: item.Id
}
},
RulesOk(formName) {
this.$refs[formName].validate((valid) => {
if (valid) {
let num = 0;
let newnum = 0;
if (this.form.Id) {
this.dataList.forEach(item => {
item.OPCommissionList.forEach(com => {
if (com.Id != this.form.Id) {
num += com.CommissionPercent;
}
})
})
newnum = 100 - num;
} else {
newnum = this.allzb;
}
if (Number(this.form.CommissionPercent) > newnum || Number(this.form.CommissionPercent) == 0) {
this.Error("请输入正确的占比!");
return;
}
this.apipost(
'OPCommission_SetOPCommission', this.form,
res => {
if (res.data.resultCode == 1) {
this.getList();
this.ruleVisible = false;
this.Success(res.data.message)
} else {
this.Error(res.data.message)
}
},
err => {}
)
} else {}
});
},
getEmployeeList() {
let userInfo = this.getLocalStorage()
let msg = {
GroupId: userInfo.RB_Group_id,
BranchId: '-1',
DepartmentId: '-1',
PostId: '-1',
IsLeave: '0'
}
this.apipost(
'admin_get_EmployeeGetList', {},
res => {
if (res.data.resultCode == 1) {
this.EmployeeList = res.data.data
}
},
err => {}
)
},
getList() {
this.loading = true;
this.apipost("OPCommission_GetPageList", {}, res => {
this.loading = false;
if (res.data.resultCode == 1) {
this.dataList = res.data.data;
// allzb
let num = 0;
this.dataList.forEach(item => {
item.OPCommissionList.forEach(com => {
num += com.CommissionPercent;
})
})
this.allzb = 100 - num;
}
});
},
}
}
</script>
<style>
.Feedback ul>li {
display: inline-block;
font-size: 12px;
color: #666;
margin: 20px 30px 0px 0;
}
.Feedback .singeRowTable {
margin-top: 20px;
}
</style>
...@@ -526,11 +526,7 @@ export default { ...@@ -526,11 +526,7 @@ export default {
if(item.FinanceId==0){ if(item.FinanceId==0){
this.customerListAll.push(item) this.customerListAll.push(item)
} }
}) })
console.log("this.customerListAll",this.customerListAll)
} }
}); });
}, },
......
...@@ -1666,7 +1666,6 @@ ...@@ -1666,7 +1666,6 @@
res => { res => {
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
var tempObj = res.data.data; var tempObj = res.data.data;
console.log("temp", tempObj);
this.CtObj.ID = tempObj.ID; this.CtObj.ID = tempObj.ID;
this.CtObj.CType = tempObj.CType; this.CtObj.CType = tempObj.CType;
this.CtObj.T_ContractNum = tempObj.T_ContractNum; this.CtObj.T_ContractNum = tempObj.T_ContractNum;
......
...@@ -954,6 +954,11 @@ ...@@ -954,6 +954,11 @@
<script> <script>
import commonHotelInfo from "../../commonPage/commonHotelInfo.vue"; import commonHotelInfo from "../../commonPage/commonHotelInfo.vue";
export default { export default {
provide(){
return{
reload:this.reload
}
},
data() { data() {
return { return {
//查询数据列表 //查询数据列表
...@@ -1150,6 +1155,13 @@ export default { ...@@ -1150,6 +1155,13 @@ export default {
components: { components: {
commonHotelInfo commonHotelInfo
}, },
//监听器
watch: {
// 方法1
'$route' (to, from) { //监听路由是否变化
location.reload()
},
},
methods: { methods: {
//获取TCID //获取TCID
clickAirticket(item) { clickAirticket(item) {
...@@ -2119,7 +2131,6 @@ export default { ...@@ -2119,7 +2131,6 @@ export default {
if (routeName == 'TravelControlList2') { if (routeName == 'TravelControlList2') {
this.queryMsg.TeamType = 3; this.queryMsg.TeamType = 3;
} }
this.getControlList(); this.getControlList();
} }
}; };
......
...@@ -25,12 +25,16 @@ ...@@ -25,12 +25,16 @@
<td>{{item.TotalPersion}}</td> <td>{{item.TotalPersion}}</td>
<td>{{item.CommissionMoney}}</td> <td>{{item.CommissionMoney}}</td>
<td>{{item.Periods}}</td> <td>{{item.Periods}}</td>
<td><a @click="goUrl(item)" style="color:blue;text-decoration:underline;cursor:pointer;">详情</a></td> <td>
<a @click="goUrl(item)" style="color:blue;text-decoration:underline;cursor:pointer;">详情</a>&nbsp;&nbsp;
<a
@click="DownLoadAirticketCommission(item)"
style="color:blue;text-decoration:underline;cursor:pointer; display:none;">下载差异</a>
</td>
</tr> </tr>
</table> </table>
</div> </div>
</template> </template>
<script> <script>
export default { export default {
data() { data() {
...@@ -41,14 +45,30 @@ ...@@ -41,14 +45,30 @@
loading: false, loading: false,
//数据源 //数据源
dataList: [], dataList: [],
CurrentUserInfo: {}, //当前登录对象
} }
}, },
mounted() { mounted() {
let userInfo = this.getLocalStorage()
this.CurrentUserInfo = userInfo;
this.msg.MainId = this.$route.query.ID; this.msg.MainId = this.$route.query.ID;
this.getList(); this.getList();
}, },
methods: { methods: {
//下载票务提成差异
DownLoadAirticketCommission(item) {
this.loading = true;
//导出报表
let msg = {
UserId: item.UserId,
Periods: item.Periods
};
var fileName = item.UName + "【" + item.Periods + "】" + "提成差异.xls";
this.GetLocalFile("airticket_get_DownloadAirticketCommission", msg, fileName,
res => {
this.loading = false;
});
},
//获取数据 //获取数据
getList() { getList() {
this.loading = true; this.loading = true;
...@@ -70,8 +90,8 @@ ...@@ -70,8 +90,8 @@
this.$router.push({ this.$router.push({
path: "flightPerformance", path: "flightPerformance",
query: { query: {
UserId:item.UserId, UserId: item.UserId,
Periods:item.Periods, Periods: item.Periods,
blank: 'y', blank: 'y',
tab: '票务业绩详情' tab: '票务业绩详情'
} }
...@@ -79,4 +99,5 @@ ...@@ -79,4 +99,5 @@
} }
}, },
} }
</script> </script>
...@@ -435,7 +435,6 @@ ...@@ -435,7 +435,6 @@
this.apipost("travelcontract_post_GetContractPageListService",this.msgOut,res => { this.apipost("travelcontract_post_GetContractPageListService",this.msgOut,res => {
this.loadingOut = false; this.loadingOut = false;
if (res.data.resultCode === 1) { if (res.data.resultCode === 1) {
console.log(res,'ressss');
this.dataListOut = res.data.data.pageData; this.dataListOut = res.data.data.pageData;
this.total2=res.data.data.count; this.total2=res.data.data.count;
} else { } else {
......
...@@ -404,7 +404,6 @@ ...@@ -404,7 +404,6 @@
font-size: 12px; font-size: 12px;
border: 1px solid #E5E5E5; border: 1px solid #E5E5E5;
} }
</style> </style>
<template> <template>
<div> <div>
...@@ -466,7 +465,8 @@ ...@@ -466,7 +465,8 @@
</li> </li>
<li> <li>
<button class="hollowFixedBtn" @click="getControlList(),resetPageIndex()">{{$t('pub.searchBtn')}}</button> <button class="hollowFixedBtn" @click="getControlList(),resetPageIndex()">{{$t('pub.searchBtn')}}</button>
<input type="button" class="hollowFixedBtn" :value="$t('op.TDHT')" @click="heTuan" v-show="this.ArrList.length>1" /> <input type="button" class="hollowFixedBtn" :value="$t('op.TDHT')" @click="heTuan"
v-show="this.ArrList.length>1" />
</li> </li>
</ul> </ul>
</div> </div>
...@@ -555,10 +555,19 @@ ...@@ -555,10 +555,19 @@
<span>{{$t('Airticket.Air_StartTime')}}</span> <span>{{$t('Airticket.Air_StartTime')}}</span>
{{item.StartDate}} {{item.StartDate}}
</p> </p>
<p>
<span>{{$t('leader.leader_Leader')}}</span>
<span v-if="item.LeaderName" class="TCL-greenType">{{item.LeaderName}}</span>
<span v-else class="TCL-redType">{{$t('Operation.Op_nozhipai')}}</span>
</p>
<p>
<span>{{$t('leader.leader_Guide')}}</span>
<span v-if="item.GuideName" class="TCL-greenType">{{item.GuideName}}</span>
<span v-else class="TCL-redType">{{$t('Operation.Op_nozhipai')}}</span>
</p>
</div> </div>
</td> </td>
<td> <td style="width:20%">
<div class="d5"> <div class="d5">
<p> <p>
<i class="iconfont icon-tuanwei"></i>{{$t('visa.v_tuanweiinfo')}} <i class="iconfont icon-tuanwei"></i>{{$t('visa.v_tuanweiinfo')}}
...@@ -576,6 +585,18 @@ ...@@ -576,6 +585,18 @@
<span v-if="item.IsSubstitution==1">{{$t('visa.v_yxhoubu')}}</span> <span v-if="item.IsSubstitution==1">{{$t('visa.v_yxhoubu')}}</span>
<span v-else class="TCL-redType">{{$t('visa.v_byxhoubu')}}</span> <span v-else class="TCL-redType">{{$t('visa.v_byxhoubu')}}</span>
</p> </p>
<p>
<span>参团</span>
<span>{{item.JoinNum+item.SingleGroupNum}}</span> <span class="TCL-redType" v-if="item.OrderLeaderGuestNum>=1">+{{item.OrderLeaderGuestNum}}</span>{{$t('Operation.Op_people')}}
</p>
<p>
<span>自由行</span>
<span>{{item.IndependentTravelNum}}</span>
<span>单机票</span>
<span>{{item.SingleAirTicketNum}}</span>
<span>单地接</span>
<span>{{item.SingleDMNum}}</span>
</p>
</div> </div>
</td> </td>
<td width="240"> <td width="240">
......
...@@ -85,7 +85,8 @@ ...@@ -85,7 +85,8 @@
export default { export default {
provide() { provide() {
return { return {
loadConfigInfo: this.firstLoadConfigInfo loadConfigInfo: this.firstLoadConfigInfo,
reload:this.reload
} }
}, },
data() { data() {
...@@ -821,7 +822,12 @@ ...@@ -821,7 +822,12 @@
updated: function () { updated: function () {
this.MsgBus.$emit('FeatureDataFlag'); this.MsgBus.$emit('FeatureDataFlag');
}, },
watch: {}, watch: {
// 方法1
'$route' (to, from) { //监听路由是否变化
location.reload()
},
},
mounted() { mounted() {
this.ScrollMethod(); this.ScrollMethod();
}, },
......
...@@ -455,13 +455,13 @@ ...@@ -455,13 +455,13 @@
<input type="button" class="normalBtn" :value="$t('op.HotelUse')" @click="outerVisible=true" <input type="button" class="normalBtn" :value="$t('op.HotelUse')" @click="outerVisible=true"
v-if="PostConfig.LineId==14 && priceData.PriceHotelList&&priceData.PriceHotelList.length>0" /> v-if="PostConfig.LineId==14 && priceData.PriceHotelList&&priceData.PriceHotelList.length>0" />
</div> </div>
<el-form-item prop="B2BMemberPrice" :class="{'showOther':TeamType==3}"> <el-form-item prop="B2BMemberPrice" >
<el-input :placeholder="$t('pub.pleaseImport')" class="w190 ComSeat" v-model="priceData.B2BMemberPrice" <el-input :placeholder="$t('pub.pleaseImport')" class="w190 ComSeat" v-model="priceData.B2BMemberPrice"
@keyup.native="checkPrice(priceData,'B2BMemberPrice')"> @keyup.native="checkPrice(priceData,'B2BMemberPrice')">
<template slot="prepend">{{$t('Operation.Op_fellowMember')}}</template> <template slot="prepend">{{$t('Operation.Op_fellowMember')}}</template>
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item prop="B2BPrice" :class="{'showOther':TeamType==3}"> <el-form-item prop="B2BPrice" >
<el-input :placeholder="$t('pub.pleaseImport')" class="w190 ComSeat" v-model="priceData.B2BPrice" <el-input :placeholder="$t('pub.pleaseImport')" class="w190 ComSeat" v-model="priceData.B2BPrice"
@keyup.native="checkPrice(priceData,'B2BPrice')"> @keyup.native="checkPrice(priceData,'B2BPrice')">
<template slot="prepend">{{$t('Operation.Op_fellow')}}</template> <template slot="prepend">{{$t('Operation.Op_fellow')}}</template>
...@@ -870,7 +870,7 @@ ...@@ -870,7 +870,7 @@
<div class="TPNotice">{{$t('sm.ysbjchajiacl')}}</div> <div class="TPNotice">{{$t('sm.ysbjchajiacl')}}</div>
</div> </div>
</div> </div>
<TravelPriceFlightList :class="{'showOther':TeamType==3}" @headCallBack="setDisDirectFlight" ref="TravelFlightList" :priceData="priceData" <TravelPriceFlightList @headCallBack="setDisDirectFlight" ref="TravelFlightList" :priceData="priceData"
:AirTicketId="priceData.AirTicketId" :DeleteAirticketIds="priceData.DeleteAirticketIds" :AirTicketId="priceData.AirTicketId" :DeleteAirticketIds="priceData.DeleteAirticketIds"
:selectFilghtList="selectFilghtList"></TravelPriceFlightList> :selectFilghtList="selectFilghtList"></TravelPriceFlightList>
</div> </div>
......
...@@ -9,7 +9,8 @@ ...@@ -9,7 +9,8 @@
</template> </template>
<template v-else> <template v-else>
<span style="color:red;font-size:14px;">已制单,不能在修改!</span> <span style="color:red;font-size:14px;">已制单,不能在修改!</span>
<input v-if="CurrentUserInfo.EmployeeId == 615" type="button" class="fr normalBtn mb30" value="保存" @click="saveList(1)" /> <input v-if="CurrentUserInfo.EmployeeId == 615" type="button" class="fr normalBtn mb30" value="保存"
@click="saveList(1)" />
</template> </template>
</li> </li>
</ul> </ul>
...@@ -49,7 +50,9 @@ ...@@ -49,7 +50,9 @@
<table class="scenicTable"> <table class="scenicTable">
<tr> <tr>
<td colspan="2" style="text-align:left;padding-left:8px;"> <td colspan="2" style="text-align:left;padding-left:8px;">
<span class="spanlink" @click="goUrl('ticketManagement',subItem,'门票管理')">
{{subItem.ScenicName}} {{subItem.ScenicName}}
</span>
</td> </td>
</tr> </tr>
<tr> <tr>
...@@ -88,24 +91,31 @@ ...@@ -88,24 +91,31 @@
@input='calculationPrice(subItem)' @keyup.native="checkInteger(childItem,'Discount')"></el-input> @input='calculationPrice(subItem)' @keyup.native="checkInteger(childItem,'Discount')"></el-input>
</td> </td>
<td> <td>
<span class="spanlink" v-if='childItem.PeoplePrice==0'
@click="goUrl('ticketManagement',subItem,'门票管理')">设置</span>
<span v-else>
<template v-if="CurrentUserInfo.EmployeeId==615"> <template v-if="CurrentUserInfo.EmployeeId==615">
<el-input class='w135' v-model='childItem.PeoplePrice' @keyup.native="checkPrice(childItem,'PeoplePrice')" type="text"></el-input> <el-input class='w135' v-model='childItem.PeoplePrice'
@keyup.native="checkPrice(childItem,'PeoplePrice')" type="text"></el-input>
</template> </template>
<template v-else> <template v-else>
<span class="spanlink" v-if='childItem.PeoplePrice==0'
@click="goUrl('ticketManagement',subItem,'门票管理')">设置</span>
<span v-else>
{{childItem.PeoplePrice}} {{childItem.PeoplePrice}}
</template>
</span> </span>
</template>
</td> </td>
<td> <td>
{{(childItem.UsePeopleNum-childItem.Discount)*childItem.PeoplePrice}} {{(childItem.UsePeopleNum-childItem.Discount)*childItem.PeoplePrice}}
</td> </td>
<td> <td>
<template v-if="CurrentUserInfo.EmployeeId==615">
<el-input class='w135' v-model='childItem.DiscountPrice'
@keyup.native="checkPrice(childItem,'DiscountPrice')" type="text"></el-input>
</template>
<template v-else>
<span class="spanlink" v-if='childItem.DiscountPrice==0' <span class="spanlink" v-if='childItem.DiscountPrice==0'
@click="goUrl('scenicSpotInfoManage',subItem,'景区列表')">设置</span> @click="goUrl('scenicSpotInfoManage',subItem,'景区列表')">设置</span>
<span v-if='childItem.DiscountPrice!=0'>{{childItem.DiscountPrice}}%</span> <span v-if='childItem.DiscountPrice!=0'>{{childItem.DiscountPrice}}%</span>
</template>
</td> </td>
<td v-if="childIndex==0" :rowspan="3"> <td v-if="childIndex==0" :rowspan="3">
{{subItem.TotalPrice}} {{subItem.TotalPrice}}
...@@ -160,9 +170,9 @@ ...@@ -160,9 +170,9 @@
loading: false, loading: false,
IsOperation: '', IsOperation: '',
//当前登录人信息 //当前登录人信息
CurrentUserInfo:{}, CurrentUserInfo: {},
//是否禁用按钮 //是否禁用按钮
IsDisabled:false, IsDisabled: false,
} }
}, },
methods: { methods: {
...@@ -215,7 +225,7 @@ ...@@ -215,7 +225,7 @@
}, err => {}) }, err => {})
}, },
saveList(type) { saveList(type) {
this.IsDisabled=true; this.IsDisabled = true;
if (type == 0) { if (type == 0) {
this.DataList.forEach(item => { this.DataList.forEach(item => {
item.ScenicStatisticsList.forEach(insideItem => { item.ScenicStatisticsList.forEach(insideItem => {
...@@ -250,9 +260,9 @@ ...@@ -250,9 +260,9 @@
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
this.$message.success(res.data.message); this.$message.success(res.data.message);
this.getList(); this.getList();
this.IsDisabled=false; this.IsDisabled = false;
} else { } else {
this.IsDisabled=false; this.IsDisabled = false;
this.$message.error(res.data.message); this.$message.error(res.data.message);
} }
}, err => {}) }, err => {})
......
...@@ -3893,6 +3893,15 @@ export default { ...@@ -3893,6 +3893,15 @@ export default {
title: '地接提成规则' title: '地接提成规则'
} }
}, },
{
path: '/viittoCommissions',
name: 'viittoCommissions',
component: resolve => require(['@/components/FinancialModule/viittoCommissions'], resolve),
meta: {
title: '微途提成规则'
}
},
{ {
path: '/Qzcommissions', path: '/Qzcommissions',
name: 'Qzcommissions', name: 'Qzcommissions',
......
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