Commit 8a8305f8 authored by wuchun's avatar wuchun

提交代码

parent fce84cd9
...@@ -86,7 +86,7 @@ ...@@ -86,7 +86,7 @@
</div> </div>
<div style="margin-top:1px">类型: <div style="margin-top:1px">类型:
<template v-if="item.TeamType==1"> <template v-if="item.TeamType==1">
<i style="color:red;font-weight:bold;">{{item.TeamTypeName}}</i> <i style="color:red;font-weight:bold;">{{item.TeamTypeName}}</i>
</template> </template>
<template v-else> <template v-else>
{{item.TeamTypeName}} {{item.TeamTypeName}}
...@@ -103,6 +103,9 @@ ...@@ -103,6 +103,9 @@
class="iconfont icon-richeng"></i> class="iconfont icon-richeng"></i>
<span>{{item.LtName}}</span> <span>{{item.LtName}}</span>
</p> </p>
<p class="Quo_Content" style="padding-right:20px;width:100%;">
<span>出团公司:{{item.OutBranchName}}</span>
</p>
</div> </div>
</div> </div>
<div class="Audit_left" style="width:20%;"> <div class="Audit_left" style="width:20%;">
...@@ -116,6 +119,7 @@ ...@@ -116,6 +119,7 @@
class="iconfont icon-richeng"></i> class="iconfont icon-richeng"></i>
<span>{{item.CustomerName}}</span> <span>{{item.CustomerName}}</span>
</p> </p>
</div> </div>
</div> </div>
<div class="Audian_cent" style="width:260px;"> <div class="Audian_cent" style="width:260px;">
...@@ -212,12 +216,12 @@ ...@@ -212,12 +216,12 @@
<div class="AD_Operation"> <div class="AD_Operation">
<span class="openGroup opbdList"> <span class="openGroup opbdList">
<el-tooltip class="item" effect="dark" content="查看" placement="top-start" popper-class="max-w250"> <el-tooltip class="item" effect="dark" content="查看" placement="top-start" popper-class="max-w250">
<span @click="goUrl('QuotationAduit',item.ID,1)"></span> <span @click="goUrl('QuotationAduit',item,1)"></span>
</el-tooltip> </el-tooltip>
</span> </span>
<span class="openGroup opbdList" v-if="item.TravelState==2"> <span class="openGroup opbdList" v-if="item.TravelState==2">
<el-tooltip class="item" effect="dark" content="审核" placement="top-start" popper-class="max-w250"> <el-tooltip class="item" effect="dark" content="审核" placement="top-start" popper-class="max-w250">
<span @click="goUrl('QuotationAduit',item.ID,2)"></span> <span @click="goUrl('QuotationAduit',item,2)"></span>
</el-tooltip> </el-tooltip>
</span> </span>
<span class="openGroup opbdList"> <span class="openGroup opbdList">
...@@ -361,7 +365,7 @@ ...@@ -361,7 +365,7 @@
getList() { getList() {
this.loading = true; this.loading = true;
this.apipost( this.apipost(
"travel_get_GetTravelOfferAuditPageList", "travel_get_GetTravelOfferAuditPageList_V2",
this.queryData, this.queryData,
res => { res => {
this.loading = false; this.loading = false;
...@@ -390,12 +394,13 @@ ...@@ -390,12 +394,13 @@
} }
); );
}, },
goUrl(path, configId, qType) { goUrl(path, item, qType) {
if (configId > 0) { if (item.ID > 0) {
this.$router.push({ this.$router.push({
name: path, name: path,
query: { query: {
configId: configId, configId: item.ID,
offerid: item.OfferId,
Qtype: qType, Qtype: qType,
blank: 'y', blank: 'y',
tab: '报价单审核' tab: '报价单审核'
......
This diff is collapsed.
...@@ -107,7 +107,7 @@ ...@@ -107,7 +107,7 @@
{{getCurrencySelect(subItem.CurrencyId,Qindex)}} {{getCurrencySelect(subItem.CurrencyId,Qindex)}}
</td> </td>
<td> <td>
<span v-if="QuoItem.OfferCostPrice.isShowHotel">{{subItem.HotelName}}<span v-if="subItem.HotelName!=''">(价格:{{subItem.HotelMoney}})</span></span> <span v-if="QuoItem.OfferCostPrice.isShowHotel">{{subItem.HotelName}}<span v-if="subItem.HotelName!=''">(价格:{{subItem.HotelMoney}})</span></span>
<span v-else>{{subItem.HotelMoney}}</span> <span v-else>{{subItem.HotelMoney}}</span>
</td> </td>
<td> <td>
...@@ -314,7 +314,7 @@ ...@@ -314,7 +314,7 @@
<div class="DrightList Qu_right"> <div class="DrightList Qu_right">
是否支持儿童出游:<span v-if="QuoItem.QuotationPrice.IsSupportChildren==1"></span> 是否支持儿童出游:<span v-if="QuoItem.QuotationPrice.IsSupportChildren==1"></span>
<span v-else></span> <span v-else></span>
<span style="margin-left:20px;">成本人数</span> {{QuoItem.QuotationPrice.PeopleNumber}} <span style="margin-left:20px;">成本人数</span> {{QuoItem.QuotationPrice.PeopleNumber}}
</div> </div>
</div> </div>
<div class="clearfix"> <div class="clearfix">
...@@ -576,7 +576,7 @@ export default { ...@@ -576,7 +576,7 @@ export default {
this.AuditInfo.ID = this.configId; this.AuditInfo.ID = this.configId;
var that=this; var that=this;
this.apipost( this.apipost(
"travel_get_AuditTravelConfig", "travel_get_AuditTravelOffer",
this.AuditInfo, this.AuditInfo,
res => { res => {
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
......
...@@ -473,6 +473,10 @@ ...@@ -473,6 +473,10 @@
<span class="TC_xiajia daiwanshan" v-if="item.TCState==1">{{$t('visa.v_dwanshan')}}</span> <span class="TC_xiajia daiwanshan" v-if="item.TCState==1">{{$t('visa.v_dwanshan')}}</span>
<span class="TC_xiajia" v-if="item.TCState==2">{{$t('visa.v_yxiajia')}}</span> <span class="TC_xiajia" v-if="item.TCState==2">{{$t('visa.v_yxiajia')}}</span>
<span class="TC_xiajia quxiao" v-if="item.TCState==4">{{$t('hotel.hotel_HasBeenCancelled')}}</span> <span class="TC_xiajia quxiao" v-if="item.TCState==4">{{$t('hotel.hotel_HasBeenCancelled')}}</span>
<span class="TC_xiajia daiwanshan"
v-if="item.Config_OfferId>0&&item.Config_OfferStatus&&item.TCState==1">
{{item.Config_OfferStatus}}
</span>
</div> </div>
<div class="TC_TravelSalePlat clearfix" v-if="item.Royalty" <div class="TC_TravelSalePlat clearfix" v-if="item.Royalty"
style="display: flex;flex-wrap: wrap;align-items: baseline;"> style="display: flex;flex-wrap: wrap;align-items: baseline;">
...@@ -1012,18 +1016,18 @@ ...@@ -1012,18 +1016,18 @@
</span> </span>
<el-dropdown-menu slot="dropdown" class="TC-dropdown"> <el-dropdown-menu slot="dropdown" class="TC-dropdown">
<el-dropdown-item v-if="item.TeamType!=3" <el-dropdown-item v-if="item.TeamType!=3"
@click.native="goToOpenTravel('TravelManager2',item.ID,0)"> @click.native="goToOpenTravel('TravelManager2',item.ID,0,item)">
{{$t('Operation.Op_xilieModyfi')}} {{$t('Operation.Op_xilieModyfi')}}
</el-dropdown-item> </el-dropdown-item>
<el-dropdown-item v-else @click.native="goToOpenTravel('TravelManager6',item.ID,0)"> <el-dropdown-item v-else @click.native="goToOpenTravel('TravelManager6',item.ID,0,item)">
{{$t('Operation.Op_xilieModyfi')}} {{$t('Operation.Op_xilieModyfi')}}
</el-dropdown-item> </el-dropdown-item>
<el-dropdown-item v-if="item.TeamType!=3" <el-dropdown-item v-if="item.TeamType!=3"
@click.native="goTonowTeam('TravelManager2',item.ID,item.TCID,item.TCNUM)"> @click.native="goTonowTeam('TravelManager2',item.ID,item.TCID,item.TCNUM,item)">
{{$t('Operation.Op_dangtuanModify')}} {{$t('Operation.Op_dangtuanModify')}}
</el-dropdown-item> </el-dropdown-item>
<el-dropdown-item v-else <el-dropdown-item v-else
@click.native="goTonowTeam('TravelManager6',item.ID,item.TCID,item.TCNUM)"> @click.native="goTonowTeam('TravelManager6',item.ID,item.TCID,item.TCNUM,item)">
{{$t('Operation.Op_dangtuanModify')}} {{$t('Operation.Op_dangtuanModify')}}
</el-dropdown-item> </el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
...@@ -1133,6 +1137,14 @@ ...@@ -1133,6 +1137,14 @@
<el-dropdown-item> <el-dropdown-item>
<div @click='GoToleaderReimbursement(item)' style="color:red">地接成本支出 </div> <div @click='GoToleaderReimbursement(item)' style="color:red">地接成本支出 </div>
</el-dropdown-item> </el-dropdown-item>
<template v-if="item.Config_OfferId==0&&item.TCState==1">
<el-dropdown-item>
<div @click="NewCopyPriceSheet(item,0)">新增报价单 </div>
</el-dropdown-item>
<el-dropdown-item>
<div @click="NewCopyPriceSheet(item,1)">复制报价单 </div>
</el-dropdown-item>
</template>
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
</div> </div>
...@@ -1385,7 +1397,7 @@ ...@@ -1385,7 +1397,7 @@
ApplyMaxNum: "", ApplyMaxNum: "",
DayNum: "", DayNum: "",
OnlyShowOverTeam: false, OnlyShowOverTeam: false,
TCState: [3], //去掉默认显示 TCState: [1,3], //去掉默认显示
GroupState: [], GroupState: [],
SalePlat: [], SalePlat: [],
UnionCityId: 0, UnionCityId: 0,
...@@ -1527,6 +1539,62 @@ ...@@ -1527,6 +1539,62 @@
}, },
}, },
methods: { methods: {
NewCopyPriceSheet(item,type){
if(type){
this.CopyConfigOffer(item)
}else{
this.gotoOffer(item,1)
}
},
//跳转到报价单
gotoOffer(item,type) {
let name = 'QuotationNewPrice'
let query = {
offerid: item.Config_OfferId,
blank: 'y',
tab: '报价单'
}
if(type){//新增报价单
query.TeamType = 0
query.configld = item.ID
query.TCID = item.TCID
query.LineID = item.LineID
query.LineName = item.LineName
query.ltID = item.ltID
query.LtName = item.LtName
query.DayNum = item.DayNum
query.OutDateTime = item.StartCityTime
query.OutBranchId = item.OutBranchId
query.ForbidChange = true
this.$router.push({
path: name,
query
});
}else{
this.$router.push({
path: name,
query
});
}
},
// 复制报价单
CopyConfigOffer(item){
let msg = {
ID: item.ID,
TCID: item.TCID,
}
this.apipost(
"travel_post_CopyConfigOffer", msg,
res => {
if (res.data.resultCode == 1) {
this.Success(res.data.message)
} else {
this.Error(res.data.message);
}
},
err => {}
);
},
//跳转到用款计划 //跳转到用款计划
GoToleaderReimbursement(item) { GoToleaderReimbursement(item) {
var newCombinationNumStr = item.CombinationNum; var newCombinationNumStr = item.CombinationNum;
...@@ -2178,13 +2246,14 @@ ...@@ -2178,13 +2246,14 @@
}); });
}, },
//开团或修改 //开团或修改
goToOpenTravel(path, configId, tcid) { goToOpenTravel(path, configId, tcid,item) {
if (configId > 0) { if (configId > 0) {
this.$store.commit("pageConditionUpdate", this.queryMsg); this.$store.commit("pageConditionUpdate", this.queryMsg);
this.$router.push({ this.$router.push({
name: path, name: path,
query: { query: {
configId: configId, configId: configId,
offerId: item.Config_OfferId,
openState: 1, openState: 1,
tcid: tcid, tcid: tcid,
blank: "y", blank: "y",
...@@ -2199,13 +2268,14 @@ ...@@ -2199,13 +2268,14 @@
}, },
//当团修改 //当团修改
goTonowTeam(path, configId, tcid, TCNUM) { goTonowTeam(path, configId, tcid, TCNUM,item) {
if (configId > 0) { if (configId > 0) {
this.$store.commit("pageConditionUpdate", this.queryMsg); this.$store.commit("pageConditionUpdate", this.queryMsg);
this.$router.push({ this.$router.push({
name: path, name: path,
query: { query: {
configId: configId, configId: configId,
offerId: item.Config_OfferId,
openState: 1, openState: 1,
tcid: tcid, tcid: tcid,
TCNUM: TCNUM, TCNUM: TCNUM,
...@@ -2585,17 +2655,6 @@ ...@@ -2585,17 +2655,6 @@
this.offerQMsg.QStartDate = nowDate; this.offerQMsg.QStartDate = nowDate;
this.offerDataList = []; this.offerDataList = [];
}, },
//跳转到报价单
gotoOffer(item) {
this.$router.push({
path: 'QuotationNewPrice',
query: {
offerid: item.Config_OfferId,
blank: 'y',
tab: '报价单'
}
});
},
//保存报价单 //保存报价单
setIsSetOutOffer(item, IsSetOut) { setIsSetOutOffer(item, IsSetOut) {
var updateMsg = { var updateMsg = {
......
...@@ -396,6 +396,10 @@ ...@@ -396,6 +396,10 @@
<span class="TC_xiajia daiwanshan" v-if="item.TCState==1">{{$t('visa.v_dwanshan')}}</span> <span class="TC_xiajia daiwanshan" v-if="item.TCState==1">{{$t('visa.v_dwanshan')}}</span>
<span class="TC_xiajia" v-if="item.TCState==2">{{$t('visa.v_yxiajia')}}</span> <span class="TC_xiajia" v-if="item.TCState==2">{{$t('visa.v_yxiajia')}}</span>
<span class="TC_xiajia quxiao" v-if="item.TCState==4">{{$t('hotel.hotel_HasBeenCancelled')}}</span> <span class="TC_xiajia quxiao" v-if="item.TCState==4">{{$t('hotel.hotel_HasBeenCancelled')}}</span>
<span class="TC_xiajia daiwanshan"
v-if="item.Config_OfferId>0&&item.Config_OfferStatus&&item.TCState==1">
{{item.Config_OfferStatus}}
</span>
</div> </div>
<div class="TC_TravelSalePlat clearfix" v-if="item.Royalty" <div class="TC_TravelSalePlat clearfix" v-if="item.Royalty"
style="display: flex;flex-wrap: wrap;align-items: baseline;"> style="display: flex;flex-wrap: wrap;align-items: baseline;">
...@@ -735,9 +739,9 @@ ...@@ -735,9 +739,9 @@
<i class="el-icon-arrow-down el-icon--right"></i> <i class="el-icon-arrow-down el-icon--right"></i>
</span> </span>
<el-dropdown-menu slot="dropdown" class="TC-dropdown"> <el-dropdown-menu slot="dropdown" class="TC-dropdown">
<el-dropdown-item @click.native="goToOpenTravel('TravelManager3',item.ID,0)"> <el-dropdown-item @click.native="goToOpenTravel('TravelManager3',item.ID,0,item)">
{{$t('Operation.Op_xilieModyfi')}}</el-dropdown-item> {{$t('Operation.Op_xilieModyfi')}}</el-dropdown-item>
<el-dropdown-item @click.native="goToOpenTravel('TravelManager3',item.ID,item.TCID)"> <el-dropdown-item @click.native="goToOpenTravel('TravelManager3',item.ID,item.TCID,item)">
{{$t('Operation.Op_dangtuanModify')}}</el-dropdown-item> {{$t('Operation.Op_dangtuanModify')}}</el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
...@@ -780,6 +784,14 @@ ...@@ -780,6 +784,14 @@
<el-dropdown-item> <el-dropdown-item>
<div @click='GoToleaderReimbursement(item)' style="color:red">地接成本支出 </div> <div @click='GoToleaderReimbursement(item)' style="color:red">地接成本支出 </div>
</el-dropdown-item> </el-dropdown-item>
<template v-if="item.Config_OfferId==0&&item.TCState==1">
<el-dropdown-item>
<div @click="NewCopyPriceSheet(item,0)">新增报价单 </div>
</el-dropdown-item>
<el-dropdown-item>
<div @click="NewCopyPriceSheet(item,1)">复制报价单 </div>
</el-dropdown-item>
</template>
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
</div> </div>
...@@ -1070,6 +1082,62 @@ ...@@ -1070,6 +1082,62 @@
}; };
}, },
methods: { methods: {
NewCopyPriceSheet(item,type){
if(type){
this.CopyConfigOffer(item)
}else{
this.gotoOffer(item,1)
}
},
//跳转到报价单
gotoOffer(item,type) {
let name = 'QuotationNewPrice'
let query = {
offerid: item.Config_OfferId,
blank: 'y',
tab: '报价单'
}
if(type){//新增报价单
query.TeamType = 1
query.configld = item.ID
query.TCID = item.TCID
query.LineID = item.LineID
query.LineName = item.LineName
query.ltID = item.ltID
query.LtName = item.LtName
query.DayNum = item.DayNum
query.OutDateTime = item.StartCityTime
query.OutBranchId = item.OutBranchId
query.ForbidChange = true
this.$router.push({
path: name,
query
});
}else{
this.$router.push({
path: name,
query
});
}
},
// 复制报价单
CopyConfigOffer(item){
let msg = {
ID: item.ID,
TCID: item.TCID,
}
this.apipost(
"travel_post_CopyConfigOffer", msg,
res => {
if (res.data.resultCode == 1) {
this.Success(res.data.message)
} else {
this.Error(res.data.message);
}
},
err => {}
);
},
//跳转到用款计划 //跳转到用款计划
GoToleaderReimbursement(item) { GoToleaderReimbursement(item) {
var newCombinationNumStr = item.CombinationNum; var newCombinationNumStr = item.CombinationNum;
...@@ -1506,13 +1574,14 @@ ...@@ -1506,13 +1574,14 @@
}); });
}, },
//开团或修改 //开团或修改
goToOpenTravel(path, configId, tcid) { goToOpenTravel(path, configId, tcid,item) {
if (configId > 0) { if (configId > 0) {
this.$store.commit("pageConditionUpdate", this.queryMsg); this.$store.commit("pageConditionUpdate", this.queryMsg);
this.$router.push({ this.$router.push({
name: path, name: path,
query: { query: {
configId: configId, configId: configId,
offerId: item.Config_OfferId,
openState: 1, openState: 1,
tcid: tcid, tcid: tcid,
blank: "y", blank: "y",
...@@ -1776,10 +1845,7 @@ ...@@ -1776,10 +1845,7 @@
this.queryMsg.StartGroupDate = nowDate; this.queryMsg.StartGroupDate = nowDate;
} }
if ( if ( this.queryCommonData.IsParentCompany != 1 && userInfo.RB_Branch_id != 49 && userInfo.RB_Branch_id!=1224) {
this.queryCommonData.IsParentCompany != 1 &&
userInfo.RB_Branch_id != 49
) {
this.queryMsg.OutBranchIds.push(userInfo.RB_Branch_id); this.queryMsg.OutBranchIds.push(userInfo.RB_Branch_id);
} }
//默认查询全部团队状态 //默认查询全部团队状态
......
<template> <template>
<div id="Usersuggest"> <div id="Usersuggest">
<div style="margin:0 auto;width:1200px"> <div style="margin:0 auto;width:1200px">
<div style="font-size:14px;color:#666666;margin:10px 0"> <div style="font-size:14px;color:#666666;margin:10px 0">
<span @click="goUrl('FeedbackChart')" style="cursor:pointer">旅客反馈数据分析 > </span> <span @click="goUrl('FeedbackChart')" style="cursor:pointer">旅客反馈数据分析 > </span>
<span style="color:#3751FE">用户建议</span> <span style="color:#3751FE">用户建议</span>
</div> </div>
<div class="people">
<div class="people"> <p>
<p> <span>用户建议</span>
<span>用户建议</span> </p>
<!-- <span style="float:right;font-size:12px;color:#333333">查看全部</span> --> <ul class="ul">
</p> <li v-for="(item,index) in SuggestList" :key="index">
<ul class="ul"> <img style="width:40px;height:40px" src="../../../assets/img/fk/8.png" alt="">
<li v-for="(item,index) in SuggestList" :key="index"> <div class="Item">
<img style="width:40px;height:40px" src="../../../assets/img/fk/8.png" alt=""> <p style="color:#3751FE">({{item.TCNUM}}){{item.OrderID}}</p>
<div class="Item"> <p>{{item.TextContent}}</p>
<p style="color:#3751FE">({{item.TCNUM}}){{item.OrderID}}</p>
<p>{{item.TextContent}}</p>
</div>
</li>
<div v-if="SuggestList.length==0" style="text-align:center;padding:40px 0;">
<i style="font-size:80px" class="iconfont icon-wushuju"></i>
</div>
</ul>
<div>
<el-pagination
background
@current-change="handleCurrentChange"
:current-page.sync="currentPage"
layout="total,prev, pager, next, jumper"
:page-size="msg.pageSize"
:total="total"
></el-pagination>
</div>
</div> </div>
</li>
<div v-if="SuggestList.length==0" style="text-align:center;padding:40px 0;">
<i style="font-size:80px" class="iconfont icon-wushuju"></i>
</div>
</ul>
<div>
<el-pagination background @current-change="handleCurrentChange" :current-page.sync="currentPage"
layout="total,prev, pager, next, jumper" :page-size="msg.pageSize" :total="total"></el-pagination>
</div>
</div> </div>
</div>
</div> </div>
</template> </template>
<script> <script>
export default {
export default {
name: 'Feedbackchart', name: 'Feedbackchart',
data (){ data() {
return{ return {
msg:{}, msg: {},
currentPage:1, currentPage: 1,
total:0, total: 0,
SuggestList:[], SuggestList: [],
} }
}, },
created(){ created() {
if(this.$route.query.msg){ if (this.$route.query.msg) {
this.msg=JSON.parse(this.$route.query.msg); this.msg = JSON.parse(this.$route.query.msg);
} }
this.getList(); this.getList();
}, },
mounted(){ mounted() {
}, },
methods:{ methods: {
getList(){ getList() {
this.apiJavaPost("/api/erp/survey/getSuggest", this.msg, res => { this.apiJavaPost("/api/erp/survey/getSuggest", this.msg, res => {
if (res.data.resultCode === 1) { if (res.data.resultCode === 1) {
this.SuggestList=res.data.data.pageData; this.SuggestList = res.data.data.pageData;
this.total=res.data.data.count; this.total = res.data.data.count;
} else { } else {
this.Error(res.data.message) this.Error(res.data.message)
} }
}, null); }, null);
}, },
goUrl(path){ goUrl(path) {
this.$router.push({ name:path,query:{"msg":JSON.stringify(this.msg),blank: 'y'} }) this.$router.push({
}, name: path,
handleCurrentChange(val) { query: {
this.msg.pageIndex = val; "msg": JSON.stringify(this.msg),
this.getList(); blank: 'y'
}, }
} })
} },
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getList();
},
}
}
</script> </script>
<style> <style>
#Usersuggest .el-pagination{ #Usersuggest .el-pagination {
border-top:none!important; border-top: none !important;
} }
#Usersuggest .people .ul li{
padding:15px 0; #Usersuggest .people .ul li {
padding: 15px 0;
border-bottom: 1px dashed #DCDCDC; border-bottom: 1px dashed #DCDCDC;
display: flex; display: flex;
align-items: center; align-items: center;
} }
#Usersuggest .people .Item{
#Usersuggest .people .Item {
font-size: 12px; font-size: 12px;
display: inline-block; display: inline-block;
margin-left:10px; margin-left: 10px;
width:90%; width: 90%;
} }
#Usersuggest .people{
background:rgba(255,255,255,1); #Usersuggest .people {
border:2px solid rgba(235, 237, 244, 1); background: rgba(255, 255, 255, 1);
border-radius:8px; border: 2px solid rgba(235, 237, 244, 1);
border-radius: 8px;
margin-top: 20px; margin-top: 20px;
padding: 30px; padding: 30px;
box-sizing: border-box; box-sizing: border-box;
} }
</style> </style>
...@@ -412,6 +412,10 @@ ...@@ -412,6 +412,10 @@
<span class="TC_xiajia daiwanshan" v-if="item.TCState==1">{{$t('visa.v_dwanshan')}}</span> <span class="TC_xiajia daiwanshan" v-if="item.TCState==1">{{$t('visa.v_dwanshan')}}</span>
<span class="TC_xiajia" v-if="item.TCState==2">{{$t('visa.v_yxiajia')}}</span> <span class="TC_xiajia" v-if="item.TCState==2">{{$t('visa.v_yxiajia')}}</span>
<span class="TC_xiajia quxiao" v-if="item.TCState==4">{{$t('hotel.hotel_HasBeenCancelled')}}</span> <span class="TC_xiajia quxiao" v-if="item.TCState==4">{{$t('hotel.hotel_HasBeenCancelled')}}</span>
<span class="TC_xiajia daiwanshan"
v-if="item.Config_OfferId>0&&item.Config_OfferStatus&&item.TCState==1">
{{item.Config_OfferStatus}}
</span>
</div> </div>
<div class="TC_TravelSalePlat clearfix" v-if="item.Royalty" <div class="TC_TravelSalePlat clearfix" v-if="item.Royalty"
style="display: flex;flex-wrap: wrap;align-items: baseline;"> style="display: flex;flex-wrap: wrap;align-items: baseline;">
...@@ -629,10 +633,10 @@ ...@@ -629,10 +633,10 @@
<i class="el-icon-arrow-down el-icon--right"></i> <i class="el-icon-arrow-down el-icon--right"></i>
</span> </span>
<el-dropdown-menu slot="dropdown" class="TC-dropdown"> <el-dropdown-menu slot="dropdown" class="TC-dropdown">
<el-dropdown-item @click.native="goToOpenTravel('TravelManager5',item.ID,0)"> <el-dropdown-item @click.native="goToOpenTravel('TravelManager5',item.ID,0,item)">
{{$t('Operation.Op_xilieModyfi')}} {{$t('Operation.Op_xilieModyfi')}}
</el-dropdown-item> </el-dropdown-item>
<el-dropdown-item @click.native="goTonowTeam('TravelManager5',item.ID,item.TCID,item.TCNUM)"> <el-dropdown-item @click.native="goTonowTeam('TravelManager5',item.ID,item.TCID,item.TCNUM,item)">
{{$t('Operation.Op_dangtuanModify')}} {{$t('Operation.Op_dangtuanModify')}}
</el-dropdown-item> </el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
...@@ -687,6 +691,14 @@ ...@@ -687,6 +691,14 @@
<el-dropdown-item> <el-dropdown-item>
<div @click='GoToleaderReimbursement(item)' style="color:red">地接成本支出 </div> <div @click='GoToleaderReimbursement(item)' style="color:red">地接成本支出 </div>
</el-dropdown-item> </el-dropdown-item>
<template v-if="item.Config_OfferId==0&&item.TCState==1">
<el-dropdown-item>
<div @click="NewCopyPriceSheet(item,0)">新增报价单 </div>
</el-dropdown-item>
<el-dropdown-item>
<div @click="NewCopyPriceSheet(item,1)">复制报价单 </div>
</el-dropdown-item>
</template>
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
</div> </div>
...@@ -982,6 +994,62 @@ ...@@ -982,6 +994,62 @@
} }
}, },
methods: { methods: {
NewCopyPriceSheet(item,type){
if(type){
this.CopyConfigOffer(item)
}else{
this.gotoOffer(item,1)
}
},
//跳转到报价单
gotoOffer(item,type) {
let name = 'QuotationNewPrice'
let query = {
offerid: item.Config_OfferId,
blank: 'y',
tab: '报价单'
}
if(type){//新增报价单
query.TeamType = 2
query.configld = item.ID
query.TCID = item.TCID
query.LineID = item.LineID
query.LineName = item.LineName
query.ltID = item.ltID
query.LtName = item.LtName
query.DayNum = item.DayNum
query.OutDateTime = item.StartCityTime
query.OutBranchId = item.OutBranchId
query.ForbidChange = true
this.$router.push({
path: name,
query
});
}else{
this.$router.push({
path: name,
query
});
}
},
// 复制报价单
CopyConfigOffer(item){
let msg = {
ID: item.ID,
TCID: item.TCID,
}
this.apipost(
"travel_post_CopyConfigOffer", msg,
res => {
if (res.data.resultCode == 1) {
this.Success(res.data.message)
} else {
this.Error(res.data.message);
}
},
err => {}
);
},
//跳转到用款计划 //跳转到用款计划
GoToleaderReimbursement(item) { GoToleaderReimbursement(item) {
var newCombinationNumStr = item.CombinationNum; var newCombinationNumStr = item.CombinationNum;
...@@ -1466,13 +1534,14 @@ ...@@ -1466,13 +1534,14 @@
}) })
}, },
//开团或修改 //开团或修改
goToOpenTravel(path, configId, tcid) { goToOpenTravel(path, configId, tcid,item) {
if (configId > 0) { if (configId > 0) {
this.$store.commit('pageConditionUpdate', this.queryMsg) this.$store.commit('pageConditionUpdate', this.queryMsg)
this.$router.push({ this.$router.push({
name: path, name: path,
query: { query: {
configId: configId, configId: configId,
offerId: item.Config_OfferId,
openState: 1, openState: 1,
tcid: tcid, tcid: tcid,
blank: 'y', blank: 'y',
...@@ -1486,13 +1555,14 @@ ...@@ -1486,13 +1555,14 @@
} }
}, },
//当团修改 //当团修改
goTonowTeam(path, configId, tcid, TCNUM) { goTonowTeam(path, configId, tcid, TCNUM,item) {
if (configId > 0) { if (configId > 0) {
this.$store.commit('pageConditionUpdate', this.queryMsg) this.$store.commit('pageConditionUpdate', this.queryMsg)
this.$router.push({ this.$router.push({
name: path, name: path,
query: { query: {
configId: configId, configId: configId,
offerId: item.Config_OfferId,
openState: 1, openState: 1,
tcid: tcid, tcid: tcid,
TCNUM: TCNUM, TCNUM: TCNUM,
......
...@@ -1109,7 +1109,6 @@ ...@@ -1109,7 +1109,6 @@
</el-input> </el-input>
</td> </td>
</tr> </tr>
<tr> <tr>
<td class="CP_ComTitle2">附件</td> <td class="CP_ComTitle2">附件</td>
<td colspan="13"> <td colspan="13">
...@@ -1138,7 +1137,7 @@ ...@@ -1138,7 +1137,7 @@
<script> <script>
export default { export default {
props: ["postConfig", "OtherPrice", "dayCostPrice", "LineList", "CostNumberList", "CurrencyNumberListExt", props: ["postConfig", "OtherPrice", "dayCostPrice", "LineList", "CostNumberList", "CurrencyNumberListExt",
"CostCurrencyList", "teamPrice","loading" "CostCurrencyList", "teamPrice", "loading"
], ],
data() { data() {
return { return {
...@@ -1726,14 +1725,14 @@ ...@@ -1726,14 +1725,14 @@
var wuPrice = Number(this.getDayXiaoJi(5, 2)); //午餐 var wuPrice = Number(this.getDayXiaoJi(5, 2)); //午餐
var wanPrice = Number(this.getDayXiaoJi(6, 2)); //晚餐 var wanPrice = Number(this.getDayXiaoJi(6, 2)); //晚餐
var otherPrice = Number(this.getDayXiaoJi(9, 2)); //其它费用 var otherPrice = Number(this.getDayXiaoJi(9, 2)); //其它费用
var busFee = Number(this.getDayXiaoJi(2, 2))+ Number(this.getDayXiaoJi(7, 2)); //车费 var busFee = Number(this.getDayXiaoJi(2, 2)) + Number(this.getDayXiaoJi(7, 2)); //车费
totalMoney = busFee + hotelPrice + sencePrice + zaoPrice + wuPrice + wanPrice + otherPrice; totalMoney = busFee + hotelPrice + sencePrice + zaoPrice + wuPrice + wanPrice + otherPrice;
return totalMoney.toFixed(0); return totalMoney.toFixed(0);
}, },
//获取地接项目报价 //获取地接项目报价
getLocalJpyTotalMoney(PeopleNumber) { getLocalJpyTotalMoney(PeopleNumber) {
let totalMoney = 0.0; let totalMoney = 0.0;
var busFee = Number(this.getDayXiaoJi(2, 1))+Number(this.getDayXiaoJi(7, 1)); //车费 var busFee = Number(this.getDayXiaoJi(2, 1)) + Number(this.getDayXiaoJi(7, 1)); //车费
var hotelPrice = Number(this.getDayXiaoJi(1, 1)); //酒店费用 var hotelPrice = Number(this.getDayXiaoJi(1, 1)); //酒店费用
var sencePrice = Number(this.getDayXiaoJi(3, 1)); //景点费用 var sencePrice = Number(this.getDayXiaoJi(3, 1)); //景点费用
var zaoPrice = Number(this.getDayXiaoJi(4, 1)); //早餐 var zaoPrice = Number(this.getDayXiaoJi(4, 1)); //早餐
......
...@@ -167,16 +167,16 @@ ...@@ -167,16 +167,16 @@
<td rowspan="2" class="CP_ComTitle2 CostcomCenter" style="width:80px;">币种</td> <td rowspan="2" class="CP_ComTitle2 CostcomCenter" style="width:80px;">币种</td>
<td rowspan="2" class="CP_ComTitle2 CostcomCenter" style="width:250px;">行程</td> <td rowspan="2" class="CP_ComTitle2 CostcomCenter" style="width:250px;">行程</td>
<td colspan="2" class="CP_ComTitle2 CostcomCenter">酒店</td> <td colspan="2" class="CP_ComTitle2 CostcomCenter">酒店</td>
<td colspan="2" class="CP_ComTitle2 CostcomCenter"></td> <td colspan="2" class="CP_ComTitle2 CostcomCenter">车/天</td>
<td colspan="2" class="CP_ComTitle2 CostcomCenter">门票</td>
<td colspan="2" class="CP_ComTitle2 CostcomCenter"></td> <td colspan="2" class="CP_ComTitle2 CostcomCenter"></td>
<td colspan="2" class="CP_ComTitle2 CostcomCenter">门票</td>
<td colspan="2" class="CP_ComTitle2 CostcomCenter">其它费用<br />(保险、司导杂费等)</td> <td colspan="2" class="CP_ComTitle2 CostcomCenter">其它费用<br />(保险、司导杂费等)</td>
</tr> </tr>
<tr> <tr>
<td class="CP_ComTitle2 CostcomCenter" style="width:150px">酒店名称</td> <td class="CP_ComTitle2 CostcomCenter" style="width:150px">酒店名称</td>
<td class="CP_ComTitle2 CostcomCenter" style="width:50px">价格/</td> <td class="CP_ComTitle2 CostcomCenter" style="width:50px">价格/</td>
<td class="CP_ComTitle2 CostcomCenter" style="width:50px">总车资</td> <td class="CP_ComTitle2 CostcomCenter" style="width:50px">车资/天</td>
<td class="CP_ComTitle2 CostcomCenter" style="width:50px">过路费</td> <td class="CP_ComTitle2 CostcomCenter" style="width:50px">过路费<br />停车费/天</td>
<td class="CP_ComTitle2 CostcomCenter" style="width:110px">餐厅名称</td> <td class="CP_ComTitle2 CostcomCenter" style="width:110px">餐厅名称</td>
<td class="CP_ComTitle2 CostcomCenter" style="width:90px">价格/餐</td> <td class="CP_ComTitle2 CostcomCenter" style="width:90px">价格/餐</td>
<td class="CP_ComTitle2 CostcomCenter" style="width:100px">景点名称</td> <td class="CP_ComTitle2 CostcomCenter" style="width:100px">景点名称</td>
...@@ -187,7 +187,9 @@ ...@@ -187,7 +187,9 @@
<template v-for="(subItem,subIndex) in dayCostPrice"> <template v-for="(subItem,subIndex) in dayCostPrice">
<tr :key="subIndex+100000"> <tr :key="subIndex+100000">
<td align="center"> <td align="center">
{{subItem.DayNum}} {{subItem.DayNum}}
<br />
{{GetDayStr(subItem.DayNum-1)}}
</td> </td>
<td align="center"> <td align="center">
{{getCurrencyName(subItem.CurrencyId)}} {{getCurrencyName(subItem.CurrencyId)}}
...@@ -304,7 +306,7 @@ ...@@ -304,7 +306,7 @@
<tr> <tr>
<td colspan="2"> <td colspan="2">
<el-form-item label="机票"> <el-form-item label="机票">
{{OtherPrice.AirTicketShareMoney}} {{OtherPrice.AirTicketMoeny}}
</el-form-item> </el-form-item>
</td> </td>
<td> <td>
...@@ -322,18 +324,24 @@ ...@@ -322,18 +324,24 @@
{{teamPrice.NightPrice}} {{teamPrice.NightPrice}}
</el-form-item> </el-form-item>
</td> </td>
<td colspan="2"> <td>
<el-form-item label="签证"> <el-form-item label="签证">
{{teamPrice.VisaPrice}} {{teamPrice.VisaPrice}}
</el-form-item> </el-form-item>
</td> </td>
<td colspan="2"> <td>
<el-form-item label="保险"> <el-form-item label="保险">
{{OtherPrice.SafeMoney}} {{OtherPrice.SafeMoney}}
</el-form-item> </el-form-item>
</td> </td>
<td colspan="2"> <td colspan="2">
小计(机票+税金+联运+过夜+签证+保险):{{getCostTotalMoney()}} <el-form-item label="领队导游分摊">
{{OtherPrice.AirTicketShareMoney}}
</el-form-item>
</td>
<td colspan="2">
小计(机票+税金+联运+过夜+签证+保险+领队导游分摊):
<br />{{getCostTotalMoney()}}
</td> </td>
</tr> </tr>
<tr> <tr>
...@@ -401,7 +409,7 @@ ...@@ -401,7 +409,7 @@
<td colspan="2"> <td colspan="2">
地接成本<br />(人民币) 地接成本<br />(人民币)
</td> </td>
<td colspan="4"> <td colspan="2">
成本<br />[地接成本(人民币)+机票+税金+联运+过夜+签证+保险] 成本<br />[地接成本(人民币)+机票+税金+联运+过夜+签证+保险]
</td> </td>
<td colspan="2"> <td colspan="2">
...@@ -414,6 +422,10 @@ ...@@ -414,6 +422,10 @@
<br />(日币) <br />(日币)
</template> </template>
</td> </td>
<td colspan="2">
备注
</td>
</tr> </tr>
<!--已填写人数--> <!--已填写人数-->
<template v-if="CostNumberList&&CostNumberList.length>0"> <template v-if="CostNumberList&&CostNumberList.length>0">
...@@ -434,9 +446,17 @@ ...@@ -434,9 +446,17 @@
{{getLocalJpyTotalMoney(subItem.PeopleNumber)}} {{getLocalJpyTotalMoney(subItem.PeopleNumber)}}
</td> </td>
<td colspan="2"> <td colspan="2">
{{getLocalTotalMoney(subItem.PeopleNumber)}} <template v-if="postConfig.LineId==14">
{{getLocalTotalMoney(subItem.PeopleNumber)}}
</template>
<template v-else-if="postConfig.LineId==168">
{{getLocalTotalMoney(subItem.PeopleNumber)}}
</template>
<template v-else>
{{subItem.SubtotalMoney}}
</template>
</td> </td>
<td colspan="4"> <td colspan="2">
{{subItem.TotalMoney}} {{subItem.TotalMoney}}
</td> </td>
<td colspan="2"> <td colspan="2">
...@@ -447,10 +467,12 @@ ...@@ -447,10 +467,12 @@
{{subItem.JPYSalePrice}} {{subItem.JPYSalePrice}}
</template> </template>
</td> </td>
<td colspan="2">
{{subItem.CostRemark}}
</td>
</tr> </tr>
</template> </template>
</template> </template>
<tr> <tr>
<td colspan="13"></td> <td colspan="13"></td>
</tr> </tr>
...@@ -508,6 +530,19 @@ ...@@ -508,6 +530,19 @@
} }
}, },
methods: { methods: {
GetDayStr(dayNum) {
var str = "";
if (this.postConfig.OutDateTime && this.postConfig.OutDateTime != '') {
var dateFormat = new Date(this.postConfig.OutDateTime);
dateFormat = dateFormat.setDate(dateFormat.getDate() + dayNum);
dateFormat = new Date(dateFormat);
let y = dateFormat.getFullYear()
let m = (dateFormat.getMonth() + 1).toString().padStart(2, '0')
let d = dateFormat.getDate().toString().padStart(2, '0')
str = `${y}-${m}-${d}`;
}
return str;
},
getTeamList() { getTeamList() {
//出团公司 //出团公司
this.apipost( this.apipost(
...@@ -588,13 +623,14 @@ ...@@ -588,13 +623,14 @@
}, },
//其它成本价格 //其它成本价格
getCostTotalMoney() { getCostTotalMoney() {
//机票+税金+联运+过夜+保险 //机票+税金+联运+过夜+保险+领队导游分摊
let totalMoney = this.getConvertMoney(this.OtherPrice.AirTicketShareMoney) + let totalMoney = this.getConvertMoney(this.OtherPrice.AirTicketMoeny) +
this.getConvertMoney(this.teamPrice.TaxPrice) + this.getConvertMoney(this.teamPrice.TaxPrice) +
this.getConvertMoney(this.teamPrice.UnionPrice) + this.getConvertMoney(this.teamPrice.UnionPrice) +
this.getConvertMoney(this.teamPrice.NightPrice) + this.getConvertMoney(this.teamPrice.NightPrice) +
this.getConvertMoney(this.teamPrice.VisaPrice) + this.getConvertMoney(this.teamPrice.VisaPrice) +
this.getConvertMoney(this.teamPrice.SafeMoney) this.getConvertMoney(this.teamPrice.SafeMoney) +
this.getConvertMoney(this.OtherPrice.AirTicketShareMoney)
return totalMoney; return totalMoney;
}, },
//获取汇率 //获取汇率
......
...@@ -74,16 +74,16 @@ ...@@ -74,16 +74,16 @@
<td rowspan="2" class="CP_ComTitle2 CostcomCenter" style="width:80px;">币种</td> <td rowspan="2" class="CP_ComTitle2 CostcomCenter" style="width:80px;">币种</td>
<td rowspan="2" class="CP_ComTitle2 CostcomCenter" style="width:250px;">行程</td> <td rowspan="2" class="CP_ComTitle2 CostcomCenter" style="width:250px;">行程</td>
<td colspan="2" class="CP_ComTitle2 CostcomCenter">酒店</td> <td colspan="2" class="CP_ComTitle2 CostcomCenter">酒店</td>
<td colspan="2" class="CP_ComTitle2 CostcomCenter"></td> <td colspan="2" class="CP_ComTitle2 CostcomCenter">车/天</td>
<td colspan="2" class="CP_ComTitle2 CostcomCenter">门票</td>
<td colspan="2" class="CP_ComTitle2 CostcomCenter"></td> <td colspan="2" class="CP_ComTitle2 CostcomCenter"></td>
<td colspan="2" class="CP_ComTitle2 CostcomCenter">门票</td>
<td colspan="2" class="CP_ComTitle2 CostcomCenter">其它费用<br />(保险、司导杂费等)</td> <td colspan="2" class="CP_ComTitle2 CostcomCenter">其它费用<br />(保险、司导杂费等)</td>
</tr> </tr>
<tr> <tr>
<td class="CP_ComTitle2 CostcomCenter" style="width:150px">酒店名称</td> <td class="CP_ComTitle2 CostcomCenter" style="width:150px">酒店名称</td>
<td class="CP_ComTitle2 CostcomCenter" style="width:50px">价格/</td> <td class="CP_ComTitle2 CostcomCenter" style="width:50px">价格/</td>
<td class="CP_ComTitle2 CostcomCenter" style="width:50px">总车资</td> <td class="CP_ComTitle2 CostcomCenter" style="width:50px">车资/天</td>
<td class="CP_ComTitle2 CostcomCenter" style="width:50px">过路费</td> <td class="CP_ComTitle2 CostcomCenter" style="width:50px">过路费<br />停车费/天</td>
<td class="CP_ComTitle2 CostcomCenter" style="width:110px">餐厅名称</td> <td class="CP_ComTitle2 CostcomCenter" style="width:110px">餐厅名称</td>
<td class="CP_ComTitle2 CostcomCenter" style="width:90px">价格/餐</td> <td class="CP_ComTitle2 CostcomCenter" style="width:90px">价格/餐</td>
<td class="CP_ComTitle2 CostcomCenter" style="width:100px">景点名称</td> <td class="CP_ComTitle2 CostcomCenter" style="width:100px">景点名称</td>
...@@ -94,7 +94,9 @@ ...@@ -94,7 +94,9 @@
<template v-for="(subItem,subIndex) in dayCostPrice"> <template v-for="(subItem,subIndex) in dayCostPrice">
<tr :key="subIndex+100000"> <tr :key="subIndex+100000">
<td align="center"> <td align="center">
{{subItem.DayNum}} {{subItem.DayNum}}
<br />
{{GetDayStr(subItem.DayNum-1)}}
</td> </td>
<td align="center"> <td align="center">
{{getCurrencyName(subItem.CurrencyId)}} {{getCurrencyName(subItem.CurrencyId)}}
...@@ -229,18 +231,23 @@ ...@@ -229,18 +231,23 @@
{{teamPrice.NightPrice}} {{teamPrice.NightPrice}}
</el-form-item> </el-form-item>
</td> </td>
<td colspan="2"> <td>
<el-form-item label="签证"> <el-form-item label="签证">
{{teamPrice.VisaPrice}} {{teamPrice.VisaPrice}}
</el-form-item> </el-form-item>
</td> </td>
<td colspan="2"> <td>
<el-form-item label="保险"> <el-form-item label="保险">
{{OtherPrice.SafeMoney}} {{OtherPrice.SafeMoney}}
</el-form-item> </el-form-item>
</td> </td>
<td colspan="2"> <td colspan="2">
小计(机票+税金+联运+过夜+签证+保险):{{getCostTotalMoney()}} <el-form-item label="领队导游分摊">
{{OtherPrice.AirTicketShareMoney}}
</el-form-item>
</td>
<td colspan="2">
小计(机票+税金+联运+过夜+签证+保险+领队导游分摊):{{getCostTotalMoney()}}
</td> </td>
</tr> </tr>
<tr> <tr>
...@@ -308,7 +315,7 @@ ...@@ -308,7 +315,7 @@
<td colspan="2"> <td colspan="2">
地接成本<br />(人民币) 地接成本<br />(人民币)
</td> </td>
<td colspan="4"> <td colspan="2">
成本<br />[地接成本(人民币)+机票+税金+联运+过夜+签证+保险] 成本<br />[地接成本(人民币)+机票+税金+联运+过夜+签证+保险]
</td> </td>
<td colspan="2"> <td colspan="2">
...@@ -321,6 +328,9 @@ ...@@ -321,6 +328,9 @@
<br />(日币) <br />(日币)
</template> </template>
</td> </td>
<td colspan="2">
备注
</td>
</tr> </tr>
<!--已填写人数--> <!--已填写人数-->
<template v-if="CostNumberList&&CostNumberList.length>0"> <template v-if="CostNumberList&&CostNumberList.length>0">
...@@ -341,9 +351,17 @@ ...@@ -341,9 +351,17 @@
{{getLocalJpyTotalMoney(subItem.PeopleNumber)}} {{getLocalJpyTotalMoney(subItem.PeopleNumber)}}
</td> </td>
<td colspan="2"> <td colspan="2">
{{getLocalTotalMoney(subItem.PeopleNumber)}} <template v-if="postConfig.LineId==14">
{{getLocalTotalMoney(subItem.PeopleNumber)}}
</template>
<template v-else-if="postConfig.LineId==168">
{{getLocalTotalMoney(subItem.PeopleNumber)}}
</template>
<template v-else>
{{subItem.SubtotalMoney}}
</template>
</td> </td>
<td colspan="4"> <td colspan="2">
{{subItem.TotalMoney}} {{subItem.TotalMoney}}
</td> </td>
<td colspan="2"> <td colspan="2">
...@@ -354,6 +372,9 @@ ...@@ -354,6 +372,9 @@
{{subItem.JPYSalePrice}} {{subItem.JPYSalePrice}}
</template> </template>
</td> </td>
<td colspan="2">
{{subItem.CostRemark}}
</td>
</tr> </tr>
</template> </template>
</template> </template>
...@@ -395,6 +416,19 @@ ...@@ -395,6 +416,19 @@
} }
}, },
methods: { methods: {
GetDayStr(dayNum) {
var str = "";
if (this.postConfig.OutDateTime && this.postConfig.OutDateTime != '') {
var dateFormat = new Date(this.postConfig.OutDateTime);
dateFormat = dateFormat.setDate(dateFormat.getDate() + dayNum);
dateFormat = new Date(dateFormat);
let y = dateFormat.getFullYear()
let m = (dateFormat.getMonth() + 1).toString().padStart(2, '0')
let d = dateFormat.getDate().toString().padStart(2, '0')
str = `${y}-${m}-${d}`;
}
return str;
},
//下载文件 //下载文件
downloadFile(fileUrl, fileName) { downloadFile(fileUrl, fileName) {
const link = document.createElement('a'); const link = document.createElement('a');
...@@ -447,13 +481,14 @@ ...@@ -447,13 +481,14 @@
}, },
//其它成本价格 //其它成本价格
getCostTotalMoney() { getCostTotalMoney() {
//机票+税金+联运+过夜+保险 //机票+税金+联运+过夜+保险+领队导游分摊
let totalMoney = this.getConvertMoney(this.OtherPrice.AirTicketShareMoney) + let totalMoney = this.getConvertMoney(this.OtherPrice.AirTicketMoeny) +
this.getConvertMoney(this.teamPrice.TaxPrice) + this.getConvertMoney(this.teamPrice.TaxPrice) +
this.getConvertMoney(this.teamPrice.UnionPrice) + this.getConvertMoney(this.teamPrice.UnionPrice) +
this.getConvertMoney(this.teamPrice.NightPrice) + this.getConvertMoney(this.teamPrice.NightPrice) +
this.getConvertMoney(this.teamPrice.VisaPrice) + this.getConvertMoney(this.teamPrice.VisaPrice) +
this.getConvertMoney(this.teamPrice.SafeMoney) this.getConvertMoney(this.teamPrice.SafeMoney) +
this.getConvertMoney(this.OtherPrice.AirTicketShareMoney)
return totalMoney; return totalMoney;
}, },
//获取汇率 //获取汇率
......
...@@ -136,16 +136,16 @@ ...@@ -136,16 +136,16 @@
<td rowspan="2" style="width:120px" class="CP_ComTitle2 CostcomCenter">币种</td> <td rowspan="2" style="width:120px" class="CP_ComTitle2 CostcomCenter">币种</td>
<td rowspan="2" style="width:180px" class="CP_ComTitle2 CostcomCenter">行程</td> <td rowspan="2" style="width:180px" class="CP_ComTitle2 CostcomCenter">行程</td>
<td colspan="2" style="width:220px;" class="CP_ComTitle2 CostcomCenter">酒店</td> <td colspan="2" style="width:220px;" class="CP_ComTitle2 CostcomCenter">酒店</td>
<td colspan="2" style="width:120px" class="CP_ComTitle2 CostcomCenter"></td> <td colspan="2" style="width:120px" class="CP_ComTitle2 CostcomCenter">/天</td>
<td colspan="2" style="width:200px" class="CP_ComTitle2 CostcomCenter"></td> <td colspan="2" style="width:200px" class="CP_ComTitle2 CostcomCenter"></td>
<td colspan="2" style="width:150px" class="CP_ComTitle2 CostcomCenter">门票</td> <td colspan="2" style="width:150px" class="CP_ComTitle2 CostcomCenter">门票</td>
<td colspan="2" style="width:100px" class="CP_ComTitle2 CostcomCenter">其它费用<br />(保险、司导杂费等)</td> <td colspan="2" style="width:100px" class="CP_ComTitle2 CostcomCenter">其它费用<br />(保险、司导杂费等)</td>
</tr> </tr>
<tr> <tr>
<td style="width:150px" class="CP_ComTitle2 CostcomCenter">酒店名称</td> <td style="width:150px" class="CP_ComTitle2 CostcomCenter">酒店名称</td>
<td style="width:50px" class="CP_ComTitle2 CostcomCenter">价格/</td> <td style="width:50px" class="CP_ComTitle2 CostcomCenter">价格/</td>
<td style="width:50px" class="CP_ComTitle2 CostcomCenter">总车资</td> <td style="width:50px" class="CP_ComTitle2 CostcomCenter">车资/天</td>
<td style="width:50px" class="CP_ComTitle2 CostcomCenter">过路费<br />停车费</td> <td style="width:50px" class="CP_ComTitle2 CostcomCenter">过路费<br />停车费/天</td>
<td style="width:110px" class="CP_ComTitle2 CostcomCenter">餐厅名称</td> <td style="width:110px" class="CP_ComTitle2 CostcomCenter">餐厅名称</td>
<td style="width:90px" class="CP_ComTitle2 CostcomCenter">价格/餐</td> <td style="width:90px" class="CP_ComTitle2 CostcomCenter">价格/餐</td>
<td style="width:100px" class="CP_ComTitle2 CostcomCenter">景点名称</td> <td style="width:100px" class="CP_ComTitle2 CostcomCenter">景点名称</td>
...@@ -156,7 +156,9 @@ ...@@ -156,7 +156,9 @@
<template v-for="(subItem,subIndex) in dayCostPrice"> <template v-for="(subItem,subIndex) in dayCostPrice">
<tr :key="subIndex"> <tr :key="subIndex">
<td align="center"> <td align="center">
{{subItem.DayNum}} {{subItem.DayNum}}
<br />
{{GetDayStr(subItem.DayNum-1)}}
</td> </td>
<td> <td>
<el-form-item> <el-form-item>
...@@ -299,8 +301,8 @@ ...@@ -299,8 +301,8 @@
<tr> <tr>
<td colspan="2"> <td colspan="2">
<el-form-item label="机票"> <el-form-item label="机票">
<el-input type="text" v-model='OtherPrice.AirTicketShareMoney' class="w100" <el-input type="text" v-model='OtherPrice.AirTicketMoeny' class="w100"
@keyup.native="checkPrice(OtherPrice,'AirTicketShareMoney'),getchange()"></el-input> @keyup.native="checkPrice(OtherPrice,'AirTicketMoeny'),getchange()"></el-input>
</el-form-item> </el-form-item>
</td> </td>
<td> <td>
...@@ -321,20 +323,27 @@ ...@@ -321,20 +323,27 @@
@keyup.native="checkPrice(teamPrice,'NightPrice'),getchange()"></el-input> @keyup.native="checkPrice(teamPrice,'NightPrice'),getchange()"></el-input>
</el-form-item> </el-form-item>
</td> </td>
<td colspan="2"> <td>
<el-form-item label="签证"> <el-form-item label="签证">
<el-input type="text" v-model='teamPrice.VisaPrice' class="w100" <el-input type="text" v-model='teamPrice.VisaPrice' class="w100"
@keyup.native="checkPrice(teamPrice,'VisaPrice'),getchange()"></el-input> @keyup.native="checkPrice(teamPrice,'VisaPrice'),getchange()"></el-input>
</el-form-item> </el-form-item>
</td> </td>
<td colspan="2"> <td>
<el-form-item label="保险"> <el-form-item label="保险">
<el-input type='text' class="w70" v-model="OtherPrice.SafeMoney" <el-input type='text' class="w70" v-model="OtherPrice.SafeMoney"
@keyup.native="checkPrice(OtherPrice,'SafeMoney'),getchange()"></el-input> @keyup.native="checkPrice(OtherPrice,'SafeMoney'),getchange()"></el-input>
</el-form-item> </el-form-item>
</td> </td>
<td colspan="2"> <td colspan="2">
小计(机票+税金+联运+过夜+签证+保险):{{getCostTotalMoney()}} <el-form-item label="领队导游分摊">
<el-input type='text' class="w120" v-model="OtherPrice.AirTicketShareMoney"
@keyup.native="checkPrice(OtherPrice,'AirTicketShareMoney'),getchange()"></el-input>
</el-form-item>
</td>
<td colspan="2">
小计(机票+税金+联运+过夜+签证+保险+领队导游分摊):
<br /> {{getCostTotalMoney()}}
</td> </td>
</tr> </tr>
<tr> <tr>
...@@ -416,8 +425,8 @@ ...@@ -416,8 +425,8 @@
<td> <td>
地接成本<br />(人民币) 地接成本<br />(人民币)
</td> </td>
<td colspan="4"> <td colspan="2">
成本<br />[地接成本(人民币)+机票+税金+联运+过夜+签证+保险] 成本<br />[地接成本(人民币)+机票+税金+联运+过夜+签证+保险+领队导游分摊]
</td> </td>
<td colspan="2"> <td colspan="2">
销售价格 销售价格
...@@ -429,6 +438,9 @@ ...@@ -429,6 +438,9 @@
<br />(日币) <br />(日币)
</template> </template>
</td> </td>
<td colspan="2">
备注
</td>
</tr> </tr>
<!--已填写人数--> <!--已填写人数-->
<template v-if="CostNumberList&&CostNumberList.length>0"> <template v-if="CostNumberList&&CostNumberList.length>0">
...@@ -441,6 +453,7 @@ ...@@ -441,6 +453,7 @@
{{subItem.PeopleNumber}} {{subItem.PeopleNumber}}
</td> </td>
<td colspan="2"> <td colspan="2">
{{getDayXiaoJi(1,1)}}(酒)+ {{getDayXiaoJi(1,1)}}(酒)+
{{ (getDayXiaoJi(2,1)/subItem.PeopleNumber).toFixed(2)}}(车=总车资/人数)+{{getDayXiaoJi(4,1)}}(餐)+{{getDayXiaoJi(3,1)}}(门票) {{ (getDayXiaoJi(2,1)/subItem.PeopleNumber).toFixed(2)}}(车=总车资/人数)+{{getDayXiaoJi(4,1)}}(餐)+{{getDayXiaoJi(3,1)}}(门票)
+{{(getDayXiaoJi(9,1)/subItem.PeopleNumber).toFixed(2)}}(杂支=总杂支/人数) +{{(getDayXiaoJi(9,1)/subItem.PeopleNumber).toFixed(2)}}(杂支=总杂支/人数)
...@@ -449,9 +462,19 @@ ...@@ -449,9 +462,19 @@
{{getLocalJpyTotalMoney(subItem.PeopleNumber)}} {{getLocalJpyTotalMoney(subItem.PeopleNumber)}}
</td> </td>
<td> <td>
{{getLocalTotalMoney(subItem.PeopleNumber)}} <template v-if="postConfig.LineId==14">
{{getLocalTotalMoney(subItem.PeopleNumber)}}
</template>
<template v-else-if="postConfig.LineId==168">
{{getLocalTotalMoney(subItem.PeopleNumber)}}
</template>
<template v-else>
<el-input placeholder="" v-model="subItem.SubtotalMoney"
@keyup.native="checkPrice(subItem,'SubtotalMoney')" class="w70">
</el-input>
</template>
</td> </td>
<td colspan="4"> <td colspan="2">
{{subItem.TotalMoney}} {{subItem.TotalMoney}}
</td> </td>
<td colspan="2"> <td colspan="2">
...@@ -462,6 +485,9 @@ ...@@ -462,6 +485,9 @@
<el-input v-if="postConfig.LineId==14" type='text' class="w70" v-model="subItem.JPYSalePrice" <el-input v-if="postConfig.LineId==14" type='text' class="w70" v-model="subItem.JPYSalePrice"
@keyup.native="checkPrice(subItem,'JPYSalePrice')" maxlength="8"></el-input> @keyup.native="checkPrice(subItem,'JPYSalePrice')" maxlength="8"></el-input>
</td> </td>
<td colspan="2">
<el-input type="textarea" v-model="subItem.CostRemark"></el-input>
</td>
</tr> </tr>
</template> </template>
</template> </template>
...@@ -505,6 +531,19 @@ ...@@ -505,6 +531,19 @@
} }
}, },
methods: { methods: {
GetDayStr(dayNum) {
var str = "";
if (this.postConfig.OutDateTime && this.postConfig.OutDateTime != '') {
var dateFormat = new Date(this.postConfig.OutDateTime);
dateFormat = dateFormat.setDate(dateFormat.getDate() + dayNum);
dateFormat = new Date(dateFormat);
let y = dateFormat.getFullYear()
let m = (dateFormat.getMonth() + 1).toString().padStart(2, '0')
let d = dateFormat.getDate().toString().padStart(2, '0')
str = `${y}-${m}-${d}`;
}
return str;
},
// 获取酒店名称 // 获取酒店名称
getHotel(subItem, HotelId) { getHotel(subItem, HotelId) {
subItem.HotelList.forEach(x => { subItem.HotelList.forEach(x => {
...@@ -667,13 +706,14 @@ ...@@ -667,13 +706,14 @@
}, },
//其它成本价格 //其它成本价格
getCostTotalMoney() { getCostTotalMoney() {
//机票+税金+联运+过夜+保险 //机票+税金+联运+过夜+保险+领队导游分摊
let totalMoney = this.getConvertMoney(this.OtherPrice.AirTicketShareMoney) + let totalMoney = this.getConvertMoney(this.OtherPrice.AirTicketMoeny) +
this.getConvertMoney(this.teamPrice.TaxPrice) + this.getConvertMoney(this.teamPrice.TaxPrice) +
this.getConvertMoney(this.teamPrice.UnionPrice) + this.getConvertMoney(this.teamPrice.UnionPrice) +
this.getConvertMoney(this.teamPrice.NightPrice) + this.getConvertMoney(this.teamPrice.NightPrice) +
this.getConvertMoney(this.teamPrice.VisaPrice) + this.getConvertMoney(this.teamPrice.VisaPrice) +
this.getConvertMoney(this.teamPrice.SafeMoney) this.getConvertMoney(this.teamPrice.SafeMoney) +
this.getConvertMoney(this.OtherPrice.AirTicketShareMoney)
return totalMoney; return totalMoney;
}, },
//获取币种对应 的人数报价 //获取币种对应 的人数报价
......
...@@ -218,7 +218,7 @@ ...@@ -218,7 +218,7 @@
LineTeamList: [], //系列下拉列表 LineTeamList: [], //系列下拉列表
companyList: [], //出团公司 companyList: [], //出团公司
teamList: [], teamList: [],//团队类型
payTypeList: [{ payTypeList: [{
value: 1, value: 1,
label: '现金' label: '现金'
...@@ -242,7 +242,7 @@ ...@@ -242,7 +242,7 @@
else if (this.postConfig.TeamType == 1) { else if (this.postConfig.TeamType == 1) {
chooseLineList = this.LineList.filter(qItem => qItem.Is_PacketGroup == 1); chooseLineList = this.LineList.filter(qItem => qItem.Is_PacketGroup == 1);
} }
//当地游 //当地游
else if (this.postConfig.TeamType == 2) { else if (this.postConfig.TeamType == 2) {
chooseLineList = this.LineList.filter(qItem => qItem.LineDirection == 3); chooseLineList = this.LineList.filter(qItem => qItem.LineDirection == 3);
} }
...@@ -468,13 +468,16 @@ ...@@ -468,13 +468,16 @@
IsDefault: Boolean(item.IsDefault), IsDefault: Boolean(item.IsDefault),
//汇率输入 //汇率输入
RateInput: "", RateInput: "",
//人数 //人数
PeopleNumber: "" PeopleNumber: ""
} }
}) })
this.orderList = this.OfferArray this.orderList = this.OfferArray
this.changeTabs() this.changeTabs()
} }
if(this.postConfig.DayNum>0){
this.createDayTripPrice()
}
}, },
created() {}, created() {},
}; };
......
...@@ -148,7 +148,7 @@ ...@@ -148,7 +148,7 @@
//保存数据 //保存数据
SaveData(Type) { SaveData(Type) {
var nObj = { var nObj = {
ID: this.$route.query.configId, ID: this.$route.query.offerid,
AuditContent: this.postData.AuditContent, AuditContent: this.postData.AuditContent,
TravelState: Type, TravelState: Type,
OfferPayType: this.postData.OfferPayType, OfferPayType: this.postData.OfferPayType,
...@@ -156,7 +156,7 @@ ...@@ -156,7 +156,7 @@
}; };
this.loading = true; this.loading = true;
this.apipost( this.apipost(
"travel_get_AuditTravelConfig", nObj, "travel_get_AuditTravelOffer", nObj,
res => { res => {
this.loading = false; this.loading = false;
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
...@@ -192,7 +192,7 @@ ...@@ -192,7 +192,7 @@
}; };
this.loading = true; this.loading = true;
this.apipost( this.apipost(
"travel_get_GetMyTravelInfo_V3", "travel_get_GetMyTravelInfo_V4",
msg, msg,
res => { res => {
this.loading = false; this.loading = false;
...@@ -236,7 +236,6 @@ ...@@ -236,7 +236,6 @@
this.LineList = tempData.LineList; this.LineList = tempData.LineList;
this.postData.LineName = tempData.LineName; this.postData.LineName = tempData.LineName;
this.postData.LtName = tempData.LtName; this.postData.LtName = tempData.LtName;
this.postData.LtName = tempData.LtName;
this.postData.OutBranchName = tempData.OutBranchName; this.postData.OutBranchName = tempData.OutBranchName;
this.postData.TeamTypeName = tempData.TeamTypeName; this.postData.TeamTypeName = tempData.TeamTypeName;
this.postData.TeamType = tempData.TeamType; this.postData.TeamType = tempData.TeamType;
......
This diff is collapsed.
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