Commit 8873e835 authored by youjie's avatar youjie
parents 5e451a9c 2cc7c41e
......@@ -645,6 +645,9 @@
<el-dropdown-item @click.native="gotoOrder(item)">
报名清单
</el-dropdown-item>
<el-dropdown-item @click.native="gotoPay(item)">
包机结算
</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</div>
......@@ -663,7 +666,8 @@
layout="total,prev, pager, next, jumper" :page-size="msg.pageSize" :total="total">
</el-pagination>
<div class="buy-box" v-show="isShowTeamOrder">
<orderForm @success="reSearchPage" @close="closeForm" :priceObj="teamInfo"></orderForm>
<orderForm @success="reSearchPage" @close="closeForm" :PTCID="teamInfo.TCID" :POrderId="0" :PBranchId="0" :PProductType="2">
</orderForm>
</div>
</div>
</template>
......@@ -699,25 +703,23 @@
},
dataList: [],
isShowTeamOrder: false, //是否显示订单弹窗
teamInfo: {},//团队信息
teamInfo: {}, //团队信息
};
},
components: {
orderForm: orderForm
},
methods: {
//刷新页面
reSearchPage() {
this.isShowTeamOrder = false;
this.teamInfo={};
this.teamInfo = {};
this.getList();
},
//关闭窗口
closeForm()
{
this.isShowTeamOrder=false;
this.teamInfo={};
closeForm() {
this.isShowTeamOrder = false;
this.teamInfo = {};
},
//跳转到报名清单
gotoOrder(item) {
......@@ -726,6 +728,13 @@
tcmun: item.TCNUM
});
},
//跳转到报名清单
gotoPay(item) {
this.OpenNewPage('/TravelPay', {
id: item.TCID,
tcmun: item.TCNUM
});
},
// 结束日期不能大于开始日期
dataDui() {
if (this.msg.StartTime > this.msg.EndTime && this.msg.EndTime !== "") {
......@@ -734,8 +743,8 @@
}
},
goBuy(obj) {
this.isShowTeamOrder = true;
this.teamInfo = obj;
this.isShowTeamOrder = true;
},
getList() {
this.loading = true;
......
<style scoped>
@import "../../../assets/css/newTravelManager.css";
.w_20 {
width: 20%;
}
.w_10 {
width: 10%;
}
.mb {
margin-bottom: 10px;
}
.title {
font-weight: 600;
}
.p20 {
padding: 20px;
}
</style>
<template>
<div class="TC_Content">
<div class="TC-MyList">
<div class="TravelTclList" v-loading="queryMsg.loading">
<el-pagination background @current-change="handleCurrentChange" :current-page.sync="queryMsg.currentPage"
layout="total,prev, pager, next, jumper" :page-size="queryMsg.pageSize" :total="queryMsg.total">
</el-pagination>
<ul>
<li v-for="(item,index) in queryDataObj.dataList" :key="item.GTeamId"
:class="{'TC_hasContent':item.OPInnerRemark==''&&item.OPRemark==''}">
<div class="TC_remarkContent">
<div class="el-col w_20">
<div class="p20">
<div class="mb title"><i class="iconfont icon-biaoti1"></i><span>包机信息</span></div>
<div>合作伙伴:<span>{{item.ContactName}}</span></div>
<div>已入名单人数:<span>{{item.EntGuestNum}}</span></div>
<div>已入名单人数:<span>{{item.IsHaveFinance}}</span></div>
<div>报名总人数:<span>{{item.GuestNum}}</span></div>
<div>应收总金额:<span>{{item.PreferPrice}}</span></div>
<div>退款金额:<span>{{item.Refund}}</span></div>
<div>平台税金:<span>{{item.PlatformTax}}</span></div>
<div>实收:<span>{{item.Income}}</span></div>
<div>在途金额:<span>{{item.ZaiTuMoney}}</span></div>
<div>折扣金额:<span>{{item.DiscountMoney}}</span></div>
<div>大红包抵扣金额:<span>{{item.RedEnvelopeMoney}}</span></div>
<div>代收总金额:<span>{{item.DueInMoney}}</span></div>
<div>利润(先给这个字段,规则还没有):<span>{{item.CommissionRate}}</span></div>
</div>
</div>
<div class="el-col w_20">
<div class="p20">
<div class="mb title"><i class="iconfont icon-hangban1"></i><span>航班信息</span></div>
</div>
</div>
<div class="el-col w_10">
<div class="p20">
<div class="mb title"><i class="iconfont icon-jiage"></i><span>机位信息</span></div>
</div>
</div>
<div class="el-col w_10">
<div class="p20">
<div class="mb title"><i class="iconfont icon-jiage"></i><span>价格信息</span></div>
</div>
</div>
<div class="el-col w_20">
<div class="p20">
<div class="mb title"><i class="iconfont icon-tuandui"></i><span>合作伙伴</span></div>
</div>
</div>
<div class="el-col w_10">
<div class="p20">
<div class="mb title"><i class="iconfont icon-yuangong"></i><span>发起信息</span></div>
</div>
</div>
<div class="el-col w_10">
<div class="p20">
</div>
</div>
</div>
</li>
</ul>
<div class="noData" v-show="queryMsg.noData">{{$t('system.content_noData')}}</div>
<el-pagination background @current-change="handleCurrentChange" :current-page.sync="queryMsg.currentPage"
layout="total,prev, pager, next, jumper" :page-size="queryMsg.pageSize" :total="queryMsg.total">
</el-pagination>
</div>
</div>
<el-dialog class="app-attachment-dialog" width="900" :title="dialogTitle" :visible.sync="isShowEditTeamDialog"
:close-on-click-modal="false">
<editTeamInfo v-if="isShowEditTeamDialog" :Q_GTeamId="GTeamId" @success="refreshPage"></editTeamInfo>
</el-dialog>
</div>
</template>
<script>
import editTeamInfo from "../TravelTeam/editTeamInfo"; //新增修改包机团
export default {
provide() {
return {
reload: this.reload
}
},
components: {
editTeamInfo
},
data() {
return {
isShowEditTeamDialog: false, //是否显示新增修改包机团弹窗
dialogTitle: "添加包机信息", //弹窗名称
GTeamId: 0, //包机团队Id
//查询参数
queryMsg: {
pageIndex: 1,
pageSize: 10,
total: 0,
TCID: '',
//是否有数据
noData: false,
currentPage: 1,
loading: false, //加载层
},
queryDataObj: {
dataList: [], //数据列表
},
};
},
//监听器
watch: {
// 方法1
'$route'(to, from) { //监听路由是否变化
location.reload()
},
},
methods: {
//刷新页面
refreshPage() {
this.isShowEditTeamDialog = false;
this.getTravelTeamList();
},
//翻页
handleCurrentChange(val) {
this.queryMsg.pageIndex = val;
this.getTravelTeamList();
},
//重新查询
resetQuery() {
this.queryMsg.pageIndex = 1;
this.getTravelTeamList();
},
//获取包机列表
getTravelTeamList() {
this.queryMsg.loading = true;
this.apipost(
"sellorder_post_GetTravelTeamOrderList",
this.queryMsg,
res => {
this.queryMsg.loading = false;
if (res.data.resultCode == 1) {
this.queryDataObj.dataList = res.data.data;
this.queryMsg.total = res.data.data.count;
}
}
);
},
},
mounted() {
console.log('mounted', this.$route)
this.queryMsg.TCID = this.$route.query.id
this.getTravelTeamList();
},
created() {
}
};
</script>
......@@ -2,7 +2,6 @@
@import "../../assets/css/trip/index.css";
</style>
<template>
<div class="trip-box-commonTeam" v-loading="loading">
<div class="item-title">
......@@ -15,7 +14,8 @@
<div class="trip-block-commonTeam" v-for="(item,i) in tripList" :key="i">
<div class="trip-title">
<div>
<p class="day">{{$t('tips.di')}}<span v-if='item.dayNum<10'>0</span>{{item.dayNum}}{{$t('hotel.hotel_day')}}</p>
<p class="day">{{$t('tips.di')}}<span v-if='item.dayNum<10'>0</span>{{item.dayNum}}{{$t('hotel.hotel_day')}}
</p>
<template v-if="startDate&&startDate!=''">
<p>{{GetDayStr(startDate,item.dayNum-1)}}</p>
</template>
......@@ -68,7 +68,7 @@
var msg = {
configId: id,
tcid: nTCID,
isClick:1//不算统计
isClick: 1 //不算统计
};
if (id !== undefined) {
//根据ID 获取行程内容
......@@ -392,11 +392,7 @@
x.jiu2 = jiu2
if (jin.length > 0) {
details = jin
}
// else if (jiu.length > 0) {
// // details = jiu
// }
else if (dadian.length > 0) {
} else if (dadian.length > 0) {
details = dadian
} else if (jiao.length > 0) {
if (j == this.tripList.length - 1) {
......
......@@ -489,13 +489,14 @@
</style>
<template>
<!--财务单据显示团队信息-->
<div class="flexOne">
<div class="_teamProductModule" v-loading='loading'>
<template v-if="list.length!=0">
<dir class="_new_item" v-for="(item,index) in list" :key="index"
:class="index!=list.length-1?'_border_bottom':''">
<p class="_tit">
<span class="_tcid_num">团号:{{item.TCID}}</span>
<span class="_tcid_num">团号:{{item.TCNUM}} ({{item.TCID}})</span>
</p>
<div class="_new_item_i">
<p class="_new_item_i_line">
......@@ -643,195 +644,30 @@
暂无数据
</div>
</div>
<el-dialog custom-class='ComTeamPlan_info_box' :title="tripTitle" :visible.sync="outerVisible" center>
<el-dialog custom-class='ComTeamPlan_info_box' :title="tripTitle" :visible.sync="outerVisible" center
:modal="false">
<commonTeamInfo1 ref="comTeam"></commonTeamInfo1>
</el-dialog>
</div>
</template>
<script>
import commonTeamInfo from "./commonTeamInfo.vue";
import carousel from "./carouselT.vue";
export default {
props: ["ID"],
data() {
return {
pickerOptions0: {
disabledDate: (time) => {
let starTime = new Date(this.starTime)
return time.getTime() > starTime.getTime()
}
},
pickerOptions1: {
disabledDate: (time) => {
let endTime = new Date(this.endTime)
return time.getTime() < endTime.getTime() - 5.64e7
}
},
userId: '',
customerId: '',
createByInfo: '',
isUpdateSharePeople: false,
starTime: '',
endTime: '',
stratPrice: '',
stratPriceShow: false,
returnPrice: '',
returnPriceShow: false,
minPrice: 0,
loading: true,
loading2: false,
isShowLayer: false,
outerVisible: false,
loading: true, //数据加载
outerVisible: false, //是否显示行程
tripTitle: '',
currentPage: 1,
total: 0,
addObj: {},
addMsg: {
OrderId: '0',
TCID: '0',
CustomerType: '',
GroupType: '',
ContactName: '',
ContactMobile: '',
CustomerId: '',
DepartureCityId: '',
ReturnArriveCityId: '',
IsIntermodal: '2',
IsReturnIntermodal: '2',
Unit_Price: '0',
TC_Price: '0',
ManNum: '0',
ChirdNum: '0',
ChirdNeedBedNum: '0',
BabyNum: '0',
OldPeopleNum: '0',
SingleRoomNum: '0',
PreferPrice: 0,
YSeatNum: '0',
ESeatNum: '0',
FSeatNum: '0',
Commission: '0',
ClientSource: '',
BrandId: '',
TradeWay: '2',
PlatformOrder: '',
GuestNum: 0,
IsChildrenTour: '0',
IsBirdDiscount: '0',
PredictRoomNum: '0',
BigRoomNum: '0',
TripleRoomNum: '0',
TradeDate: '',
CostType: '',
Remarks: '',
VisaNum: '0',
SafeNum: '0',
AirticketNum: '0',
ScenicRefundArr: [],
GoCityTime: '',
BackCityTime: '',
CommissionSharePeople: '-1',
CommissionShareMoney: '0',
},
employeeMsg: {
BranchId: '-1',
IsLeave: 0
},
employeeList: [],
rules: {
CustomerType: [{
required: true,
message: '请选择客户类型',
trigger: 'change'
}],
CustomerId: [{
required: false,
message: '请选择客户门店',
trigger: 'change'
}],
DepartureCityId: [{
required: true,
message: '请选择出发城市',
trigger: 'change'
}],
GroupType: [{
required: true,
message: '请选择参团类型',
trigger: 'change'
}],
ClientSource: [{
required: true,
message: '请选择客人来源',
trigger: 'change'
}],
TradeWay: [{
required: true,
message: '请选择交易方式',
trigger: 'change'
}],
ContactName: [{
required: true,
message: '请输入联系人姓名',
trigger: 'blur'
}],
ContactMobile: [{
required: true,
message: '请输入联系人电话',
trigger: 'blur'
},
{
pattern: /^(0|86|17951)?(13[0-9]|15[012356789]|17[012356789]|18[0-9]|19[0-9]|14[57])[0-9]{8}$/,
message: '请输入正确的手机'
}
],
},
msg: {
pageIndex: 1,
pageSize: 10,
LineId: '-1',
LineTeamId: '-1',
TCID: '',
StartTime: '',
EndTime: '',
BranchId: '-1',
CityId: '-1',
DaysTrip: '',
SalePlat: [],
minGroupSize: '',
maxGroupSize: '',
minApplySize: '',
maxApplySize: '',
FlightID: '-1'
},
defaultImg: 'this.src="' + require("../../assets/img/bg_z1@2x.png") + '"',
list: [],
LineList: [],
LineTeamList: [],
airlineList: [],
companyList: [],
salePlace: [],
startCityList: [],
startCityList1: [],
tripDetails: [],
khlxList: [],
ctlxList: [],
ddlyList: [],
ddztList: [],
khmdList: [],
ssptList: [],
jyfsList: [],
fylxList: [],
ScenicRefundList: [],
ScenicRefundMoney: 0,
TCIDList: [],
}
},
components: {
commonTeamInfo1: commonTeamInfo,
carousel: carousel
},
filters: {
//价格格式化
priceFormat(value) {
if (value == null) {
return 0.00;
......@@ -849,269 +685,11 @@
},
},
methods: {
//获取航班信息
getDetails(index) {
this.tripDetails = this.list[index].flightList;
},
getUnionTravelPrice(obj, type) {
let msg = {}
msg.TCID = obj.TCID
msg.Type = type
if (type == 1) {
msg.StartCityId = this.addMsg.DepartureCityId
msg.CityTime = this.addMsg.GoCityTime
if (this.addMsg.IsIntermodal == 2) {
this.stratPrice = '0'
this.stratPriceShow = false
this.getTotalPrice()
} else {
this.apipost('sellorder_get_GetUnionTravelPrice', msg, res => {
if (res.data.resultCode == 1) {
this.stratPrice = res.data.data.Price
if (this.stratPrice == 0) {
this.stratPriceShow = false
} else {
this.stratPriceShow = true
}
this.getTotalPrice()
}
}, err => {})
}
} else {
msg.StartCityId = this.addMsg.ReturnArriveCityId
msg.CityTime = this.addMsg.BackCityTime
if (this.addMsg.IsReturnIntermodal == 2) {
this.returnPrice = '0'
this.returnPriceShow = true
this.getTotalPrice()
} else {
this.apipost('sellorder_get_GetUnionTravelPrice', msg, res => {
if (res.data.resultCode == 1) {
this.returnPrice = res.data.data.Price
if (this.returnPrice == 0) {
this.returnPriceShow = false
} else {
this.returnPriceShow = true
}
this.getTotalPrice()
}
}, err => {})
}
}
},
getTicheng() { //提成
let num = Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.OldPeopleNum)
let yh = 0
if (num > 0) {
this.apipost('sellorder_get_GetOrderMinPrice', {
ltID: this.addObj.ltID,
Num: num
}, res => {
yh = res.data.data
}, err => {})
}
// let cj='成交单价-最低成交价格(标准单价-符合人数[成人,儿童,老人]条件的最高少价)'
let chajia = Number(this.addMsg.Unit_Price) - (this.addMsg.TC_Price - yh)
let ewtc = chajia > 0 ? chajia * 0.5 * num : chajia * num //额外提成
this.addMsg.Commission = (Number(this.addMsg.PreferPrice) * 0.01 + ewtc).toFixed(2)
this.addMsg.CommissionShareMoney = '0'
if ((this.addMsg.CustomerType == 1 || this.addMsg.CustomerType == 2) && this.addMsg.CommissionSharePeople !=
'') {
if (this.addMsg.CommissionSharePeople != '-1') {
if (this.addMsg.Commission > 0) {
this.addMsg.CommissionShareMoney = this.addMsg.Commission / 2
this.addMsg.Commission = this.addMsg.Commission - this.addMsg.CommissionShareMoney
} else {
this.addMsg.CommissionShareMoney = '0'
}
}
}
},
getTotalPrice() {
if (this.addObj.IsBirdDiscount == 1) { //早鸟优惠
//this.addMsg.Unit_Price //成交单价
//BabyPrice 婴儿价
//BabyChargePrice 儿童附加费
//OldManChargePrice 老人 附加费
//DiscountPrice 早鸟优惠
let chengren = Number(this.addMsg.ManNum) * (Number(this.addMsg.Unit_Price) - this.addObj.DiscountPrice)
let ertong = Number(this.addMsg.ChirdNum) * (Number(this.addMsg.Unit_Price) - this.addObj.DiscountPrice + this
.addObj.BabyChargePrice)
let yinger = Number(this.addMsg.BabyNum) * this.addObj.BabyPrice
let laoren = Number(this.addMsg.OldPeopleNum) * (Number(this.addMsg.Unit_Price) - this.addObj.DiscountPrice +
this.addObj.OldManChargePrice)
let zafeiqianzhen = this.addObj.OtherPrice * (Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) +
Number(this.addMsg.OldPeopleNum)) + this.addObj.VisaPrice * (Number(this.addMsg.AirticketNum) + Number(
this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.OldPeopleNum)) - this.addObj
.BackVisaPrice * ((Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + Number(this.addMsg
.ChirdNum) + Number(this.addMsg.BabyNum) + Number(this.addMsg.OldPeopleNum)) - Number(this.addMsg
.VisaNum))
let danfang = Number(this.addMsg.SingleRoomNum) * this.addObj.SingleRoomPrice
let ertongbed = this.addObj.ChildNeedPrice * Number(this.addMsg.ChirdNeedBedNum) + this.addObj
.ChildNoNeedPrice * (Number(this.addMsg.ChirdNum) - Number(this.addMsg.ChirdNeedBedNum))
let lianyun = (Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.OldPeopleNum)) *
(Number(this.stratPrice) + Number(this.returnPrice))
let dandijie = this.addObj.SingleDMCPrice * Number(this.addMsg.AirticketNum)
this.addMsg.PreferPrice = dandijie + lianyun + chengren + ertong + yinger + laoren + zafeiqianzhen + danfang +
ertongbed - this.ScenicRefundMoney * (Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(
this.addMsg.OldPeopleNum));
} else {
let chengren = Number(this.addMsg.ManNum) * (Number(this.addMsg.Unit_Price))
let ertong = Number(this.addMsg.ChirdNum) * (Number(this.addMsg.Unit_Price) + this.addObj.BabyChargePrice)
let yinger = Number(this.addMsg.BabyNum) * this.addObj.BabyPrice
let laoren = Number(this.addMsg.OldPeopleNum) * (Number(this.addMsg.Unit_Price) + this.addObj
.OldManChargePrice)
let zafeiqianzhen = this.addObj.OtherPrice * (Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) +
Number(this.addMsg.OldPeopleNum)) + this.addObj.VisaPrice * (Number(this.addMsg.AirticketNum) + Number(
this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.OldPeopleNum)) - this.addObj
.BackVisaPrice * ((Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + Number(this.addMsg
.ChirdNum) + Number(this.addMsg.BabyNum) + Number(this.addMsg.OldPeopleNum)) - Number(this.addMsg
.VisaNum))
let danfang = Number(this.addMsg.SingleRoomNum) * this.addObj.SingleRoomPrice
let ertongbed = this.addObj.ChildNeedPrice * Number(this.addMsg.ChirdNeedBedNum) + this.addObj
.ChildNoNeedPrice * (Number(this.addMsg.ChirdNum) - Number(this.addMsg.ChirdNeedBedNum))
let lianyun = (Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.OldPeopleNum)) *
(Number(this.stratPrice) + Number(this.returnPrice))
let dandijie = this.addObj.SingleDMCPrice * Number(this.addMsg.AirticketNum)
this.addMsg.PreferPrice = dandijie + lianyun + chengren + ertong + yinger + laoren + zafeiqianzhen + danfang +
ertongbed - this.ScenicRefundMoney * (Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(
this.addMsg.OldPeopleNum));
}
this.getTicheng()
},
submitForm(addMsg) { //提交创建、修改表单
this.$refs[addMsg].validate((valid) => {
if (valid) {
this.saveOrder()
} else {
return false;
}
});
},
cancelSubmit() {
this.isShowLayer = false
this.$refs['addMsg'].resetFields();
this.clearMsg()
},
clearMsg() {
this.addMsg.OrderId = '0'
this.addMsg.TCID = '0'
this.addMsg.IsIntermodal = '2'
this.addMsg.IsReturnIntermodal = '2'
this.addMsg.Unit_Price = '0'
this.addMsg.TC_Price = '0'
this.addMsg.ManNum = '0'
this.addMsg.ChirdNum = '0'
this.addMsg.ChirdNeedBedNum = '0'
this.addMsg.BabyNum = '0'
this.addMsg.OldPeopleNum = '0'
this.addMsg.SingleRoomNum = '0'
this.addMsg.PreferPrice = '0'
this.addMsg.YSeatNum = '0'
this.addMsg.ESeatNum = '0'
this.addMsg.FSeatNum = '0'
this.addMsg.Commission = '0'
this.addMsg.BrandId = ''
this.addMsg.TradeWay = '2'
this.addMsg.GuestNum = '0'
this.addMsg.IsChildrenTour = '0'
this.addMsg.OrderId = '0'
this.addMsg.IsBirdDiscount = '0'
this.addMsg.PredictRoomNum = '0'
this.addMsg.BigRoomNum = '0'
this.addMsg.TripleRoomNum = '0'
this.addMsg.TradeDate = ''
this.addMsg.CostType = ''
this.addMsg.PlatformOrder = ''
this.ddlyList = []
this.addMsg.Remarks = ''
this.addMsg.MinOrderPrice = ''
this.addMsg.VisaNum = '0';
this.addMsg.SafeNum = '0';
this.addMsg.AirticketNum = '0';
this.addMsg.ScenicRefundArr = [];
this.ScenicRefundMoney = 0;
this.addMsg.CommissionSharePeople = '-1'
this.addMsg.CommissionShareMoney = '0'
},
saveOrder() {
//验证人数和机位数
if ((Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.OldPeopleNum)) != Number(
this.addMsg.YSeatNum) + Number(this.addMsg.ESeatNum) + Number(this.addMsg.FSeatNum)) {
this.$message.warning('人数和机位数不相等!')
return
}
if ((Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this
.addMsg.OldPeopleNum) + Number(this.addMsg.BabyNum)) < Number(this.addMsg.VisaNum)) {
this.$message.warning('签证数量不能大于人数总和!')
return
}
if ((Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this
.addMsg.OldPeopleNum) + Number(this.addMsg.BabyNum)) < Number(this.addMsg.SafeNum)) {
this.$message.warning('保险数量不能大于人数总和!')
return
}
// if((Number(this.addMsg.ManNum)+Number(this.addMsg.ChirdNum)+Number(this.addMsg.OldPeopleNum)+Number(this.addMsg.BabyNum))<Number(this.addMsg.AirticketNum))
// {
// this.$message.warning('机票数量不能大于人数总和!')
// return
// }
if (Number(this.addMsg.ChirdNeedBedNum) > Number(this.addMsg.ChirdNum)) {
this.$message.warning('儿童占床不能大于儿童数!')
return
}
if (Number(this.addMsg.ChirdNum) - Number(this.addMsg.ChirdNeedBedNum) + Number(this.addMsg.BabyNum) > Number(
this.addMsg.ManNum) + Number(this.addMsg.OldPeopleNum) + Number(this.addMsg.ChirdNeedBedNum)) {
this.$message.warning('儿童占床数量不足!')
return
}
if (this.userId == this.createByInfo) {
if (this.addMsg.CommissionSharePeople == '-1') {
this.addMsg.CommissionShareMoney = '0'
}
}
this.addMsg.TCID = this.addObj.TCID
this.addMsg.GuestNum = Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg
.OldPeopleNum) + Number(this.addMsg.BabyNum) + Number(this.addMsg.AirticketNum)
this.addMsg.IsChildrenTour = this.addObj.IsSupportChildren
this.addMsg.IsBirdDiscount = this.addObj.IsBirdDiscount
this.apipost('sellorder_post_SetOrderInfo_02', this.addMsg, res => {
if (res.data.resultCode == 1) {
this.$message.success(res.data.message)
this.$refs['addMsg'].resetFields();
this.getList()
this.clearMsg()
this.isShowLayer = false
} else {
this.$message.error(res.data.message)
}
}, err => {})
},
getScenicRefund(TCID) {
this.apipost('sellorder_get_GetScenicRefundList', {
TCID
}, res => {
if (res.data.resultCode == 1) {
this.ScenicRefundList = res.data.data
this.ScenicRefundList.forEach(item => {
item['ScenicName'] = item.CouponsName + ' -¥' + this.moneyFormat(item.RefundMoney);
})
}
}, err => {})
},
//获取行程信息
getJourney(id, title) {
var that = this;
this.tripTitle = title;
......@@ -1120,6 +698,7 @@
});
that.outerVisible = true;
},
//获取团队详情
getList(ID) {
this.loading = true
this.apipost('TaskManagemnet_get_GetSellProductCenterForFinance', {
......@@ -1127,21 +706,17 @@
}, res => {
if (res.data.resultCode == 1) {
this.loading = false;
this.total = res.data.data.count;
let data = res.data.data;
data.forEach(x => {
x.tableShowTeam = false;
})
this.list = data
} else {
this.$message.error(res.data.message)
}
}, err => {})
})
},
},
mounted() {
this.userId = this.getLocalStorage().EmployeeId
this.msg.BranchId = this.getLocalStorage().RB_Branch_id.toString()
this.getList(this.ID)
}
}
......
......@@ -282,7 +282,6 @@
<el-input v-model="addMsg.VisaNum" @keyup.native="checkInteger(addMsg, 'VisaNum')" @input="
yzVisaNum();
getTotalPrice();
autoRemarks2('VisaNum', '不要签证数量');
autoRemarks('VisaNum', '不要签证数量');
"></el-input>
</el-form-item>
......@@ -292,7 +291,6 @@
<el-input v-model="addMsg.SafeNum" @keyup.native="checkInteger(addMsg, 'SafeNum')" @input="
yzSafeNum();
getTotalPrice();
autoRemarks2('SafeNum', '不要保险数量');
"></el-input>
</el-form-item>
</el-col>
......@@ -445,8 +443,25 @@
</template>
<script>
export default {
//priceObj:团期价格信息
props: ["priceObj"],
//团期编号,订单编号(新增传0),下单人选择的公司
props: {
PTCID: {
type: Number,
default: 0, //团期编号(必须传)
},
POrderId: {
type: Number,
default: 0, //订单编号(新增传0)
},
PBranchId: {
type: Number,
default: 0, //销售公司/联运公司
},
PProductType: {
type: Number,
default: 0, //产品类型(1-常规团,2-包机团)
}
},
data() {
return {
pickerOptions0: {
......@@ -608,8 +623,27 @@
SingleDMCPricex: 0, // 单地接;
SingleDMCPrice: 0, // 单地接;
TotalNumber: 0, //总人数
priceObj: {}, //团期价格信息
};
},
filters: {
//价格格式化
priceFormat(value) {
if (value == null) {
return 0.00;
}
let nStr = value.toFixed(2)
nStr += '';
let x = nStr.split('.');
let x1 = x[0];
let x2 = x.length > 1 ? '.' + x[1] : '';
var rgx = /(\d+)(\d{3})/;
while (rgx.test(x1)) {
x1 = x1.replace(rgx, '$1' + ',' + '$2');
}
return x1 + x2;
},
},
methods: {
//参团类型切换
changeGroupType(type) {
......@@ -669,39 +703,62 @@
if (this.addMsg.GroupType == 4) {
ChirdNum = 0;
}
let count = Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + ChirdNum +
Number(this.addMsg.BabyNum) + Number(this.addMsg.OldPeopleNum);
let count = Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + ChirdNum + Number(this.addMsg
.BabyNum) + Number(this.addMsg.OldPeopleNum);
this.TotalNumber = count;
if (count < this.addMsg.SafeNum) {
this.addMsg.SafeNum = count;
this.Error("保险人数不能大于总人数");
}
},
//验证单房数量
yzSingleBed() {
let x = Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNeedBedNum) +
Number(this.addMsg.OldPeopleNum) - Number(this.addMsg.SingleRoomNum);
let y = x - Number(this.addMsg.TripleRoomNum) * 3 - Number(this.addMsg.BigRoomNum) * 2;
if (y < 0) {
this.addMsg.SingleRoomNum = 0;
}
this.getHouseNo();
this.autoRemarks("SingleRoomNum", "单房数量");
},
//验证大床房
yzBigBed() {
let x = Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNeedBedNum) +
Number(this.addMsg.OldPeopleNum) - Number(this.addMsg.SingleRoomNum);
let y = x - Number(this.addMsg.TripleRoomNum) * 3 - Number(this.addMsg.BigRoomNum) * 2;
if (y <= -1) {
this.addMsg.BigRoomNum = 0;
}
this.getHouseNo();
this.autoRemarks("BigRoomNum", "大床房");
},
//验证三人房
yzThreeBed() {
let x = Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNeedBedNum) +
Number(this.addMsg.OldPeopleNum) - Number(this.addMsg.SingleRoomNum);
let y = x - Number(this.addMsg.TripleRoomNum) * 3 - Number(this.addMsg.BigRoomNum) * 2;
if (y <= -1) {
this.addMsg.TripleRoomNum = 0;
}
this.getHouseNo();
this.autoRemarks("TripleRoomNum", "三人房");
},
// 自动添加备注
autoRemarks: function (key, text) {
let count = Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) +
Number(this.addMsg.BabyNum) + Number(this.addMsg.OldPeopleNum);
this.remarkMsg.qz = "";
if (this.addMsg[key].toString() !== "0" && this.addMsg[key].toString() !== "") {
if (
this.addMsg[key].toString() !== count.toString() &&
this.addMsg[key].toString() !== ""
) {
if (this.addMsg[key].toString() !== count.toString() && this.addMsg[key].toString() !== "") {
if (text === "不要签证数量") {
this.remarkMsg.qz = text + ":" + (count - this.addMsg[key]) + ";";
if (this.priceObj.VisaPrice) {
this.remarkMsg.qzf = "签证费" + this.priceObj.VisaPrice + "/人;";
}
if (this.priceObj.BackVisaPrice) {
this.remarkMsg.qz =
text +
":" +
(count - this.addMsg[key]) +
";" +
"退签证费" +
this.priceObj.BackVisaPrice +
"/人;";
this.remarkMsg.qz = text + ":" + (count - this.addMsg[key]) + ";" +
"退签证费" + this.priceObj.BackVisaPrice + "/人;";
}
}
if (text === "不要保险数量") {
......@@ -717,24 +774,19 @@
if (this.remarkMsg.bzc === "") {
this.remarkMsg.bzc = "儿童不占床:" + this.addMsg[key] + ";";
if (this.priceObj.ChildNoNeedPrice) {
this.remarkMsg.bzc +=
"儿童不占床减免" + this.priceObj.ChildNoNeedPrice + "/人;";
this.remarkMsg.bzc += "儿童不占床减免" + this.priceObj.ChildNoNeedPrice + "/人;";
}
} else {
this.remarkMsg.bzc = "";
this.remarkMsg.bzc = "儿童不占床:" + this.addMsg[key] + ";";
if (this.priceObj.ChildNoNeedPrice) {
this.remarkMsg.bzc +=
"儿童不占床减免" + this.priceObj.ChildNoNeedPrice + "/人;";
this.remarkMsg.bzc += "儿童不占床减免" + this.priceObj.ChildNoNeedPrice + "/人;";
}
}
if (this.remarkMsg.fjf === "") {
if (
this.priceObj["BabyChargePrice"] > 0 &&
this.priceObj["BabyChargePrice"]
) {
this.remarkMsg.fjf =
"儿童附加费:" + this.priceObj["BabyChargePrice"] + "/人;";
this.priceObj["BabyChargePrice"] > 0 && this.priceObj["BabyChargePrice"]) {
this.remarkMsg.fjf = "儿童附加费:" + this.priceObj["BabyChargePrice"] + "/人;";
} else {
this.remarkMsg.fjf = "";
}
......@@ -744,63 +796,40 @@
if (this.remarkMsg.zc === "") {
this.remarkMsg.zc = "儿童占床:" + this.addMsg[key] + ";";
if (this.priceObj.ChildNeedPrice) {
this.remarkMsg.zc =
this.remarkMsg.zc +
"儿童占床附加费" +
this.priceObj.ChildNeedPrice +
"/人;";
this.remarkMsg.zc = this.remarkMsg.zc + "儿童占床附加费" + this.priceObj.ChildNeedPrice + "/人;";
}
} else {
this.remarkMsg.zc = "";
this.remarkMsg.zc = "儿童占床:" + this.addMsg[key] + ";";
if (this.priceObj.ChildNeedPrice) {
this.remarkMsg.zc =
this.remarkMsg.zc +
"儿童占床附加费" +
this.priceObj.ChildNeedPrice +
"/人;";
this.remarkMsg.zc = this.remarkMsg.zc + "儿童占床附加费" + this.priceObj.ChildNeedPrice + "/人;";
}
}
if (this.remarkMsg.fjf === "") {
this.remarkMsg.fjf = this.priceObj["BabyChargePrice"] ?
"儿童附加费:" + this.priceObj["BabyChargePrice"] + "/人;" :
"";
this.remarkMsg.fjf = this.priceObj["BabyChargePrice"] ? "儿童附加费:" + this.priceObj["BabyChargePrice"] +
"/人;" : "";
}
}
if (text === "老人人数") {
if (this.remarkMsg.lr === "") {
this.remarkMsg.lr = "老人人数:" + this.addMsg[key] + ";";
if (this.priceObj.OldManChargePrice) {
this.remarkMsg.lr =
this.remarkMsg.lr + this.priceObj.OldManChargePrice + "/人;";
this.remarkMsg.lr = this.remarkMsg.lr + this.priceObj.OldManChargePrice + "/人;";
}
} else {
this.remarkMsg.lr = "";
this.remarkMsg.lr = "老人人数:" + this.addMsg[key] + ";";
if (this.priceObj.OldManChargePrice) {
this.remarkMsg.lr =
this.remarkMsg.lr + this.priceObj.OldManChargePrice + "/人;";
this.remarkMsg.lr = this.remarkMsg.lr + this.priceObj.OldManChargePrice + "/人;";
}
}
}
if (text === "婴儿人数") {
if (this.remarkMsg.ye === "") {
this.remarkMsg.ye =
"婴儿人数:" +
this.addMsg[key] +
";" +
"婴儿价格:" +
this.priceObj.BabyPrice +
"/人;";
this.remarkMsg.ye = "婴儿人数:" + this.addMsg[key] + ";" + "婴儿价格:" + this.priceObj.BabyPrice + "/人;";
} else {
this.remarkMsg.ye = "";
this.remarkMsg.ye =
"婴儿人数:" +
this.addMsg[key] +
";" +
"婴儿价格:" +
this.priceObj.BabyPrice +
"/人;";
this.remarkMsg.ye = "婴儿人数:" + this.addMsg[key] + ";" + "婴儿价格:" + this.priceObj.BabyPrice + "/人;";
}
}
if (text === "单地接数量") {
......@@ -813,22 +842,10 @@
}
if (text === "单房数量") {
if (this.remarkMsg.df === "") {
this.remarkMsg.df =
"单房数量:" +
this.addMsg[key] +
";" +
"单房差价" +
this.priceObj.SingleRoomPrice +
"/人;";
this.remarkMsg.df = "单房数量:" + this.addMsg[key] + ";" + "单房差价" + this.priceObj.SingleRoomPrice + "/人;";
} else {
this.remarkMsg.df = "";
this.remarkMsg.df =
"单房数量:" +
this.addMsg[key] +
";" +
"单房差价" +
this.priceObj.SingleRoomPrice +
"/人;";
this.remarkMsg.df = "单房数量:" + this.addMsg[key] + ";" + "单房差价" + this.priceObj.SingleRoomPrice + "/人;";
}
}
if (text === "大床房") {
......@@ -896,13 +913,6 @@
});
_this.addMsg.Remarks = newRemark;
},
//自动添加备注
autoRemarks2: function (key, text) {
// let count = (Number(this.addMsg.AirticketNum)+Number(this.addMsg.ManNum)+Number(this.addMsg.ChirdNum)+Number(this.addMsg.BabyNum)+Number(this.addMsg.OldPeopleNum))
// if (this.addMsg[key].toString() !== count.toString() && this.addMsg[key].toString() !== '') {
// this.addMsg.Remarks = this.addMsg.Remarks + text + ':' + (count-this.addMsg[key]) + ';'
// }
},
//获取联运价格
getUnionTravelPrice(obj, type) {
let msg = {};
......@@ -930,7 +940,6 @@
this.getTotalPrice();
}
},
(err) => {}
);
}
} else {
......@@ -955,7 +964,6 @@
this.getTotalPrice();
}
},
(err) => {}
);
}
}
......@@ -996,18 +1004,13 @@
},
//获取平台订单
platformOrderMethods() {
return;
if (this.addMsg.PlatformOrder == "") {
this.addMsg.MinOrderPrice = 0;
this.addMsg.CostType = "";
this.addMsg.TradeDate = "";
} else {
this.addMsg.MinOrderPrice =
this.minPrice *
(Number(this.addMsg.AirticketNum) +
Number(this.addMsg.ManNum) +
Number(this.addMsg.ChirdNum) +
Number(this.addMsg.OldPeopleNum));
this.addMsg.MinOrderPrice = this.minPrice * (Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) +
Number(this.addMsg.ChirdNum) + Number(this.addMsg.OldPeopleNum));
}
},
//获取线路最低定金金额
......@@ -1132,15 +1135,12 @@
let ewtc = chajia > 0 ? chajia * 0.5 * num : chajia * num; //额外提成
this.addMsg.Commission = (Number(this.addMsg.PreferPrice) * 0.01 + ewtc).toFixed(2);
this.addMsg.CommissionShareMoney = "0";
if (
(this.addMsg.CustomerType == 1 || this.addMsg.CustomerType == 2) &&
this.addMsg.CommissionSharePeople != ""
) {
if ((this.addMsg.CustomerType == 1 || this.addMsg.CustomerType == 2) &&
this.addMsg.CommissionSharePeople != "") {
if (this.addMsg.CommissionSharePeople != "-1") {
if (this.addMsg.Commission > 0) {
this.addMsg.CommissionShareMoney = this.addMsg.Commission / 2;
this.addMsg.Commission =
this.addMsg.Commission - this.addMsg.CommissionShareMoney;
this.addMsg.Commission = this.addMsg.Commission - this.addMsg.CommissionShareMoney;
} else {
this.addMsg.CommissionShareMoney = "0";
}
......@@ -1152,9 +1152,7 @@
//算法:((成人+儿童占床数+老人-(三人房数量*3))-单房数)/2+单房数+三人房数量 8.7新增单地接儿童不占床 减去 儿童不占床
let etbzc = 0;
if (this.addMsg.GroupType == 4) {
etbzc = this.addMsg.ChirdNoNeedBedNum ?
Number(this.addMsg.ChirdNoNeedBedNum) :
0;
etbzc = this.addMsg.ChirdNoNeedBedNum ? Number(this.addMsg.ChirdNoNeedBedNum) : 0;
}
this.addMsg.PredictRoomNum =
(Number(this.addMsg.AirticketNum) +
......@@ -1280,60 +1278,7 @@
this.getTypePrice();
}
},
//验证单房数量
yzSingleBed() {
let x =
Number(this.addMsg.AirticketNum) +
Number(this.addMsg.ManNum) +
Number(this.addMsg.ChirdNeedBedNum) +
Number(this.addMsg.OldPeopleNum) -
Number(this.addMsg.SingleRoomNum);
let y =
x -
Number(this.addMsg.TripleRoomNum) * 3 -
Number(this.addMsg.BigRoomNum) * 2;
if (y < 0) {
this.addMsg.SingleRoomNum = 0;
}
this.getHouseNo();
this.autoRemarks("SingleRoomNum", "单房数量");
},
//验证大床房
yzBigBed() {
let x =
Number(this.addMsg.AirticketNum) +
Number(this.addMsg.ManNum) +
Number(this.addMsg.ChirdNeedBedNum) +
Number(this.addMsg.OldPeopleNum) -
Number(this.addMsg.SingleRoomNum);
let y =
x -
Number(this.addMsg.TripleRoomNum) * 3 -
Number(this.addMsg.BigRoomNum) * 2;
if (y <= -1) {
this.addMsg.BigRoomNum = 0;
}
this.getHouseNo();
this.autoRemarks("BigRoomNum", "大床房");
},
//验证三人房
yzThreeBed() {
let x =
Number(this.addMsg.AirticketNum) +
Number(this.addMsg.ManNum) +
Number(this.addMsg.ChirdNeedBedNum) +
Number(this.addMsg.OldPeopleNum) -
Number(this.addMsg.SingleRoomNum);
let y =
x -
Number(this.addMsg.TripleRoomNum) * 3 -
Number(this.addMsg.BigRoomNum) * 2;
if (y <= -1) {
this.addMsg.TripleRoomNum = 0;
}
this.getHouseNo();
this.autoRemarks("TripleRoomNum", "三人房");
},
//提交表单验证
submitForm(addMsg) {
if (this.TotalNumber == 0) {
......@@ -1740,6 +1685,36 @@
if (this.addMsg.ClientSource == 4 && this.addMsg.Remarks.indexOf(text) == -1) {
this.addMsg.Remarks = '飞猪订单;' + this.addMsg.Remarks
}
},
//获取团期价格信息
getTravelPirceInfo() {
var cmdStr = "";
//常规团
if (this.PProductType == 1) {
cmdStr = "TaskManagemnet_get_GetSellProductCenter";
}
//包机团
else if (this.PProductType == 2) {
cmdStr = "sellorder_post_GetTravelTeamProductCenter";
}
var priceMsg = {
pageIndex: 1,
pageSize: 10,
TCID: this.PTCID,
BranchId: this.PBranchId,
};
this.apipost(
cmdStr,
priceMsg,
(res) => {
if (res.data.resultCode == 1) {
var tempData = res.data.data.pageData;
if (tempData && tempData.length > 0) {
this.priceObj = tempData[0];
}
}
}
);
}
},
mounted() {
......@@ -1755,6 +1730,14 @@
//获取交易方式
this.getTradeWay();
},
watch: {
//监听TCID变化
PTCID: function (oldValue, newVal) {
if (oldValue != newVal) {
this.clearMsg();
this.getTravelPirceInfo()
}
}
}
};
</script>
\ No newline at end of file
......@@ -2317,7 +2317,7 @@ export default {
name: 'priceGroup',
component: resolve => require(['@/components/TravelManager/TravelTeam/priceGroup'], resolve),
meta: {
title: '包机列表'
title: '包机产品'
},
}, {
path: '/TravelTeam', //包机列表
......@@ -2326,6 +2326,13 @@ export default {
meta: {
title: '包机列表'
},
}, {
path: '/TravelPay', // 包机结算
name: 'TravelPay',
component: resolve => require(['@/components/TravelManager/TravelTeam/travelPayList'], resolve),
meta: {
title: '包机结算'
},
}, {
path: '/TravelSupplier', //供应商列表
name: 'TravelSupplier',
......
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