Commit 2f02e513 authored by liudong1993's avatar liudong1993
parents 20d3373e bdc892bd
...@@ -798,8 +798,8 @@ ...@@ -798,8 +798,8 @@
<div class="EC_ComTitle" style="margin-bottom:40px;">投诉信息</div> <div class="EC_ComTitle" style="margin-bottom:40px;">投诉信息</div>
<p>出境社监督、投诉电话:<span>{{dataList.companyComplainCall}}</span></p> <p>出境社监督、投诉电话:<span>{{dataList.companyComplainCall}}</span></p>
<p>四川省成都市旅游质监执法机构:<span>{{dataList.regulatorName}}</span></p> <p>四川省成都市旅游质监执法机构:<span>{{dataList.regulatorName}}</span></p>
<p>投诉电话:<span>{{dataList.regulatorComplainCall}}</span></p>
<p>成都市旅游质监执法监督网:<span>{{dataList.regulatorWebsite}}</span></p> <p>成都市旅游质监执法监督网:<span>{{dataList.regulatorWebsite}}</span></p>
<p>投诉电话:<span>{{dataList.regulatorComplainCall}}</span></p>
<p>地址:<span>{{dataList.regulatorAddress}}</span></p> <p>地址:<span>{{dataList.regulatorAddress}}</span></p>
<p>邮编:<span>{{dataList.regulatorPostCode}}</span></p> <p>邮编:<span>{{dataList.regulatorPostCode}}</span></p>
</div> </div>
......
...@@ -22,11 +22,7 @@ ...@@ -22,11 +22,7 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4">
<el-form-item label="团队编号:">
<el-input v-model="msg.TCNUM" class=""></el-input>
</el-form-item>
</el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="结算状态:"> <el-form-item label="结算状态:">
<el-select v-model='msg.IsSelectAduiting'> <el-select v-model='msg.IsSelectAduiting'>
...@@ -93,6 +89,31 @@ ...@@ -93,6 +89,31 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6">
<el-form-item label="制单日期:">
<el-date-picker class="h34"
@change="timeAdd(1)"
v-model="productionDate"
type="daterange"
value-format="yyyy-MM-dd">
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="交易日期:">
<el-date-picker class="h34" v-model="transactionDate" @change="timeAdd(3)" type="daterange"
value-format="yyyy-MM-dd">
</el-date-picker>
</el-form-item>
</el-col>
<template v-if="heightQueryBox">
<el-col :span="4">
<el-form-item label="团队编号:">
<el-input v-model="msg.TCNUM" class=""></el-input>
</el-form-item>
</el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="付款对象:"> <el-form-item label="付款对象:">
<el-select <el-select
...@@ -101,8 +122,7 @@ ...@@ -101,8 +122,7 @@
remote remote
reserve-keyword reserve-keyword
placeholder="请输入关键词" placeholder="请输入关键词"
:remote-method="GetClientAccountListByKeyWord" :remote-method="GetClientAccountListByKeyWord">
>
<el-option value="" :label="$t('pub.unlimitedSel')"></el-option> <el-option value="" :label="$t('pub.unlimitedSel')"></el-option>
<el-option v-for='item in ClientAccountList' <el-option v-for='item in ClientAccountList'
:label='`${item.AccountAlias}(${item.AccountHolder}/${item.CardNum})`' :label='`${item.AccountAlias}(${item.AccountHolder}/${item.CardNum})`'
...@@ -118,18 +138,6 @@ ...@@ -118,18 +138,6 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6">
<el-form-item label="制单日期:">
<el-date-picker class="h34"
@change="timeAdd(1)"
v-model="productionDate"
type="daterange"
value-format="yyyy-MM-dd">
</el-date-picker>
</el-form-item>
</el-col>
<template v-if="heightQueryBox">
<el-col :span="4"> <el-col :span="4">
<el-form-item label="费用部门:"> <el-form-item label="费用部门:">
<el-select filterable v-model='msg.RB_Depart_Id' @change="employeeMsg.DepartmentId=msg.RB_Depart_Id,getEmployee(),msg.UpdateBy=''" class=""> <el-select filterable v-model='msg.RB_Depart_Id' @change="employeeMsg.DepartmentId=msg.RB_Depart_Id,getEmployee(),msg.UpdateBy=''" class="">
...@@ -232,7 +240,7 @@ ...@@ -232,7 +240,7 @@
<span>财务单据信息:</span> <span>财务单据信息:</span>
<template > <template >
<p size="mini" closable <p size="mini" closable
style="margin-right: 5px;margin-bottom: 5px;" style="margin-right: 5px;margin-bottom: 5px;width:99%;"
v-for="(x,index) in financeDataList" v-for="(x,index) in financeDataList"
:key="x.FrID" :key="x.FrID"
:type="danger"> :type="danger">
...@@ -242,15 +250,16 @@ ...@@ -242,15 +250,16 @@
</div> </div>
</div> </div>
<div style="display: flex;flex-wrap: nowrap; padding: 10px;" v-if="allotDataList.length>0"><div style="display: flex;flex-wrap: wrap;color:red;" > <div style="display: flex;flex-wrap: nowrap; padding: 10px;" v-if="allotDataList.length>0">
<div style="display: flex;flex-wrap: wrap;color:red;" >
<span>资金调拨信息:</span> <span>资金调拨信息:</span>
<template > <template >
<p size="mini" closable <p size="mini" closable
style="margin-right: 5px;margin-bottom: 5px;" style="margin-right: 5px;margin-bottom: 5px;width:99%;"
v-for="(x,index) in allotDataList" v-for="(x,index) in allotDataList"
:key="x.FrID" :key="x.FrID"
:type="success"> :type="success">
{{x.CurrencyName}} 总收款:{{x.totalMoneyA}} 总支出金额:{{x.totalMoneyU}},剩余金额:{{x.totalMoneyS}} {{x.CurrencyName}} 总收款:{{x.totalMoneyA}} 总支出金额:{{x.totalMoneyU}},剩余金额:{{x.totalMoneyS}}<br/>
</p> </p>
</template> </template>
</div></div> </div></div>
...@@ -675,6 +684,9 @@ export default { ...@@ -675,6 +684,9 @@ export default {
this.msg.sTradeDate=this.$route.query.StartDate; this.msg.sTradeDate=this.$route.query.StartDate;
this.msg.eTradeDate=this.$route.query.StartDate; this.msg.eTradeDate=this.$route.query.StartDate;
if(this.$route.query.BankID==''){ if(this.$route.query.BankID==''){
// 费用类型:机票折让费 // 费用类型:机票折让费
this.msg.CostTypeID=197; this.msg.CostTypeID=197;
...@@ -697,6 +709,13 @@ export default { ...@@ -697,6 +709,13 @@ export default {
this.msg.FrID = this.$route.query.FrID?this.$route.query.FrID:0; this.msg.FrID = this.$route.query.FrID?this.$route.query.FrID:0;
if(this.$route.query.NewFinanceId){ if(this.$route.query.NewFinanceId){
this.msg.NewFinanceId = this.$route.query.NewFinanceId; this.msg.NewFinanceId = this.$route.query.NewFinanceId;
}
let STime = this.getBeforeDate(31,this.getBeforeDate(0,new Date().Format("yyyy-MM-dd")))
let ETime = this.getBeforeDate(0,this.getBeforeDate(0,new Date().Format("yyyy-MM-dd")))
if(!this.msg.startDate){
this.productionDate = [STime,ETime]
this.msg.sDate = this.productionDate[0];
this.msg.eDate = this.productionDate[1];
} }
//this.financeinfo_post_GetClientAccountList() //this.financeinfo_post_GetClientAccountList()
this.financeinfo_post_GetList(); this.financeinfo_post_GetList();
...@@ -1145,7 +1164,17 @@ export default { ...@@ -1145,7 +1164,17 @@ export default {
} }
this.msg.sDate = this.productionDate[0]; this.msg.sDate = this.productionDate[0];
this.msg.eDate = this.productionDate[1]; this.msg.eDate = this.productionDate[1];
}if(t==4){ //发团日期 }
if (t == 3) { //交易日期
if (!this.transactionDate) {
this.msg.sTradeDate = '';
this.msg.eTradeDate = '';
return
}
this.msg.sTradeDate = this.transactionDate[0];
this.msg.eTradeDate = this.transactionDate[1];
}
if(t==4){ //发团日期
if(!this.missionDate){ if(!this.missionDate){
this.dateStart = ''; this.dateStart = '';
this.dateEnd = ''; this.dateEnd = '';
......
...@@ -3170,12 +3170,14 @@ ...@@ -3170,12 +3170,14 @@
<label id="l4">投诉信息</label> <label id="l4">投诉信息</label>
<p>出境社监督、投诉电话:<font>{{dataList.companyComplainCall}}</font> <p>出境社监督、投诉电话:<font>{{dataList.companyComplainCall}}</font>
</p> </p>
<template v-if="CtObj.SignType==0">
<p>四川省成都市旅游质监执法机构:<font>{{dataList.regulatorName}}</font> <p>四川省成都市旅游质监执法机构:<font>{{dataList.regulatorName}}</font>
</p> </p>
<p>投诉电话:<font>{{dataList.regulatorComplainCall}}</font>
</p>
<p>成都市旅游质监执法监督网:<font>{{dataList.regulatorWebsite}}</font> <p>成都市旅游质监执法监督网:<font>{{dataList.regulatorWebsite}}</font>
</p> </p>
</template>
<p>投诉电话:<font>{{dataList.regulatorComplainCall}}</font>
</p>
<p>地址:<font>{{dataList.regulatorAddress}}</font> <p>地址:<font>{{dataList.regulatorAddress}}</font>
</p> </p>
<p>邮编:<font>{{dataList.regulatorPostCode}}</font> <p>邮编:<font>{{dataList.regulatorPostCode}}</font>
...@@ -4231,7 +4233,7 @@ ...@@ -4231,7 +4233,7 @@
number_chinese(str) { number_chinese(str) {
var num = parseFloat(str); var num = parseFloat(str);
var strUnit = '仟佰拾亿仟佰拾万仟佰拾元角分'; var strUnit = '仟佰拾亿仟佰拾万仟佰拾元角分';
var strOutput=""; var strOutput = "";
if (this.CtObj.SignType == 1) { if (this.CtObj.SignType == 1) {
strUnit = '仟佰拾亿仟佰拾万仟佰拾円角分'; strUnit = '仟佰拾亿仟佰拾万仟佰拾円角分';
} }
......
...@@ -824,10 +824,12 @@ ...@@ -824,10 +824,12 @@
<td>出境社监督、投诉电话:</td> <td>出境社监督、投诉电话:</td>
<td colspan="3">{{dataList.regulatorComplainCall}}</td> <td colspan="3">{{dataList.regulatorComplainCall}}</td>
</tr> </tr>
<template v-if="dataList.signType==0">
<tr> <tr>
<td>四川省 成都市旅游质监执法机构:</td> <td>四川省 成都市旅游质监执法机构:</td>
<td colspan="3">{{dataList.regulatorName}}</td> <td colspan="3">{{dataList.regulatorName}}</td>
</tr> </tr>
</template>
<tr> <tr>
<td>投诉电话:</td> <td>投诉电话:</td>
<td colspan="3">{{dataList.companyComplainCall}}</td> <td colspan="3">{{dataList.companyComplainCall}}</td>
......
...@@ -582,7 +582,8 @@ ...@@ -582,7 +582,8 @@
<tr> <tr>
<td> <td>
<el-form-item label="儿童(不满14岁的)"> <el-form-item label="儿童(不满14岁的)">
<el-input type="text" class="w300" v-model="CtObj.childPrice"></el-input> <template v-if="CtObj.signType==0"> <el-input type="text" class="w300" v-model="CtObj.childPrice"></el-input> <template
v-if="CtObj.signType==0">
</template> </template>
<template v-else> <template v-else>
...@@ -594,7 +595,8 @@ ...@@ -594,7 +595,8 @@
<tr> <tr>
<td> <td>
<el-form-item label="导游服务费" prop="servicePrice"> <el-form-item label="导游服务费" prop="servicePrice">
<el-input type="text" class="w300" v-model="CtObj.servicePrice"></el-input> <template v-if="CtObj.signType==0"> <el-input type="text" class="w300" v-model="CtObj.servicePrice"></el-input> <template
v-if="CtObj.signType==0">
</template> </template>
<template v-else> <template v-else>
...@@ -1476,10 +1478,12 @@ ...@@ -1476,10 +1478,12 @@
this.CtObj.company = "四川和平国际旅行社有限公司"; this.CtObj.company = "四川和平国际旅行社有限公司";
this.CtObj.companyAddress = "成都市锦江区青和里南段55号1栋2310、2311、2312号 " this.CtObj.companyAddress = "成都市锦江区青和里南段55号1栋2310、2311、2312号 "
this.CtObj.businessCertificate = 'L-SC-CJ00015'; this.CtObj.businessCertificate = 'L-SC-CJ00015';
this.CtObj.regulatorName = '四川省成都市旅游质监执法机构';
} else { } else {
this.CtObj.company = "(株)ピースインターナショナル"; this.CtObj.company = "(株)ピースインターナショナル";
this.CtObj.companyAddress = ""; this.CtObj.companyAddress = "";
this.CtObj.businessCertificate = ''; this.CtObj.businessCertificate = '';
this.CtObj.regulatorName = '';
} }
}, },
goContract() { goContract() {
...@@ -1556,7 +1560,7 @@ ...@@ -1556,7 +1560,7 @@
this.CtObj.company = '四川和平国际旅行社有限公司'; this.CtObj.company = '四川和平国际旅行社有限公司';
this.CtObj.businessCertificate = 'L-SC-CJ00015'; this.CtObj.businessCertificate = 'L-SC-CJ00015';
this.CtObj.companyAddress = '成都市锦江区青和里南段55号1栋2310、2311、2312号 '; this.CtObj.companyAddress = '成都市锦江区青和里南段55号1栋2310、2311、2312号 ';
this.CtObj.regulatorName = '四川省成都市旅游质监执法机构';
this.CtObj.regulatorComplainCall = '17708046437'; this.CtObj.regulatorComplainCall = '17708046437';
this.CtObj.companyComplainCall = '028-96927'; this.CtObj.companyComplainCall = '028-96927';
......
<style> <style>
@import url('../assets/css/tripIndex.css');
@import url("../assets/css/UpgradedVersion.css");
@import url("../assets/css/tripIndexNew2.css");
@import url('../assets/css/detail.css');
@import url('../assets/css/tripIndexNewHV.css');
.confirmOrder { .confirmOrder {
width: 950px; width: 950px;
} }
...@@ -14,39 +20,114 @@ ...@@ -14,39 +20,114 @@
top: 55px; top: 55px;
} }
.edit_form_box {
display: flex;
justify-content: space-around;
}
.edit_form_box_tit {
color: #000000;
text-align: left;
margin-top: 0;
border-left: 2px solid #e95252;
padding-left: 25px;
}
.TravelFlightList {
width: 100%;
background-color: #fff;
}
.TravelFlightList table {
width: 100%;
}
.guoneiLine tbody td { .TFTable .el-button.is-circle {
font-size: 17px; padding: 5px;
} }
</style> .TFTable .el-form-item {
margin: 10px;
}
.TFTable i {
font-size: 14px;
}
.TFTable .el-input--prefix .el-input__inner {
padding-right: 0;
}
.TFAddFlight {
width: 100%;
height: 40px;
text-align: center;
line-height: 40px;
color: #333;
margin-top: 5px;
background-color: #f1f1f1;
font-size: 12px;
border: 1px dashed #dcdcdc;
cursor: pointer;
}
.w110 {
width: 110px !important;
}
.w120 {
width: 120px !important;
}
.normalBtn {
color: #fff;
padding: 0 15px;
height: 30px;
background: #E95252;
border: 1px solid #E95252;
cursor: pointer;
border-radius: 15px;
margin-left: 10px;
}
.hollowFixedBtn {
background: #fff;
color: #E95252;
padding: 0 15px;
height: 30px;
border: 1px solid #E95252;
cursor: pointer;
border-radius: 15px;
margin-left: 10px;
}
</style>
<template> <template>
<div class="travelControlTrip" :style="{'width':dataAll&&dataAll.featurePageType==2?'1240px':'1754px'}" <div class="travelControlTrip" :style="{'width':dataAll&&dataAll.featurePageType==2?'1240px':'1754px'}"
:class="[dataAll&& dataAll.feature&& dataAll.feature.featureType==9?'VerticalBjNew':'']"> :class="[dataAll&& dataAll.feature&& dataAll.feature.featureType==9?'VerticalBjNew':'']">
<div class="trip_cover" v-show="pdfLoading" v-loading="pdfLoading"></div> <div class="trip_cover" v-show="pdfLoading" v-loading="pdfLoading" :element-loading-text="loadingText"></div>
<el-row style="padding: 0 0 20px 0;box-shadow: 1px 10px 10px#e6e6e6;"> <el-row style="padding: 0 0 20px 0;box-shadow: 1px 10px 10px#e6e6e6;">
<el-col :span="14" class="row-aic"> <el-col :span="14" class="row-aic">
<a id="pdfDownLoad" style="display:none;" target="_blank" href="http://www.baidu.com" download="xx.pdf">页面跳转</a> <a id="pdfDownLoad" style="display:none;" target="_blank" href="http://www.baidu.com" download="xx.pdf">页面跳转</a>
<template v-if="orderId>0"> <template v-if="orderId>0">
<el-button type="primary" size="medium" @click="toPDF_2023()"> <el-button type="primary" size="medium" @click="toPDF_2023()">
出团通知书下载</el-button> 出团通知书下载</el-button>
<el-button type="primary" size="medium" @click="gernalFeature(1)"> <el-button type="primary" size="medium" @click="ToWord_2023()">
出团通知书下载WROD</el-button> 出团通知书下载WROD</el-button>
</template> </template>
<template v-else> <template v-else>
<el-button type="primary" size="medium" @click="toPDF_2023()"> <el-button type="primary" size="medium" @click="toPDF_2023(1)">
行程下载</el-button> 行程下载</el-button>
<el-button type="primary" size="medium" @click="toPDF_2023(1)" style="margin-left:20px;"> <el-button v-if="isShowAllDownLoad" type="primary" size="medium" @click="toPDF_2023()"
行程下载(云盘)</el-button> style="margin-left:20px;">
<el-button type="primary" size="medium" @click="gernalFeature(1)" style="margin-left:20px;"> 行程下载(N)</el-button>
<el-button type="primary" size="medium" @click="ToWord_2023()" style="margin-left:20px;">
行程下载WORD</el-button> 行程下载WORD</el-button>
</template> </template>
<!-- 可以让销售修改基本信息--> <!-- 可以让销售修改基本信息-->
<el-button v-if="orderId>0" type="primary" size="medium" value="修改信息" @click="editMsgShow=true"> <el-button v-if="orderId>0" type="primary" size="medium" value="修改信息" @click="editMsgShow=true">
修改信息</el-button> 修改信息</el-button>
<el-checkbox class="marginL11" style="display:none;" v-model="isShowTime">显示行程日期</el-checkbox>
</el-col> </el-col>
<el-col v-if="orderId<=0"> <el-col v-if="orderId<=0">
<span style="color:red;padding-left:10px;">温馨提示:OP保存行程后请等待1-2分钟后再下载行程。</span> <span style="color:red;padding-left:10px;">温馨提示:OP保存行程后请等待1-2分钟后再下载行程。</span>
...@@ -197,7 +278,8 @@ ...@@ -197,7 +278,8 @@
import OrderNotice from './LeaveGroupDownload/OrderNotice' import OrderNotice from './LeaveGroupDownload/OrderNotice'
import VisaInformation from './LeaveGroupDownload/VisaInformation' import VisaInformation from './LeaveGroupDownload/VisaInformation'
import { import {
setTimeout setInterval,
clearInterval
} from 'timers'; } from 'timers';
export default { export default {
...@@ -213,14 +295,6 @@ ...@@ -213,14 +295,6 @@
data() { data() {
return { return {
dataAll: null, dataAll: null,
isShowTime: true,
CurrentUserInfo: {}, //当前用户信息
Typevalue: -1,
titleList: [],
listMsg: {
pageSize: 1000,
pageIndex: 1,
},
//微信分享图片 //微信分享图片
WeiXinShareImgSrc: "", WeiXinShareImgSrc: "",
//下拉框默认值 //下拉框默认值
...@@ -229,10 +303,7 @@ ...@@ -229,10 +303,7 @@
airLineList: [], airLineList: [],
//orderId和是否op操作控制按钮显示 //orderId和是否op操作控制按钮显示
orderId: 0, orderId: 0,
isopOperation: '', editForm: {},
editForm: {
},
//团源基础数据 //团源基础数据
SourceData: { SourceData: {
orderId: 0, orderId: 0,
...@@ -246,7 +317,6 @@ ...@@ -246,7 +317,6 @@
travelOrderFlightList: [] travelOrderFlightList: []
}, },
editMsgShow: false, editMsgShow: false,
pdfLoading: true,
vshowA: this.$route.query.vshowA === undefined ? true : this.$route.query.vshowA === 'true', vshowA: this.$route.query.vshowA === undefined ? true : this.$route.query.vshowA === 'true',
vshowB: this.$route.query.vshowB === undefined ? true : this.$route.query.vshowB === 'true', vshowB: this.$route.query.vshowB === undefined ? true : this.$route.query.vshowB === 'true',
vshowC: this.$route.query.vshowC === undefined ? true : this.$route.query.vshowC === 'true', vshowC: this.$route.query.vshowC === undefined ? true : this.$route.query.vshowC === 'true',
...@@ -269,26 +339,27 @@ ...@@ -269,26 +339,27 @@
feature: {}, feature: {},
dataList: {}, dataList: {},
showType: -1, showType: -1,
loadNone: false,
orderMsg: {}, orderMsg: {},
//订单不同数据 //订单不同数据
orderTripdiff: {}, orderTripdiff: {},
title: '', title: '',
isDirect: 1, //是否是直采 0:否,1:是
isClick: this.$route.query.isClick === undefined ? 0 : 1, //不算统计 isClick: this.$route.query.isClick === undefined ? 0 : 1, //不算统计
lineId: 0 lineId: 0,
downLoadUrl: "", //文件下载
pdfLoading: false,
loadingText: "", //加载文字
download_timer: null,
isShowAllDownLoad: false, //是否显示实时下载行程按钮
} }
}, },
mounted() { mounted() {
this.CurrentUserInfo = this.getLocalStorage();;
this.orderId = this.$route.query.orderId; this.orderId = this.$route.query.orderId;
this.isopOperation = this.$route.query.isopOperation; if (this.$route.query.isda && this.$route.query.isda == 1) {
this.isShowAllDownLoad = true;
}
this.getWxCode(); this.getWxCode();
this.init(); this.getTripDetail();
this.initAirlines(); this.getAirlines();
setTimeout(() => {
this.appendParent()
}, 2000)
}, },
methods: { methods: {
//获取微信二维码 //获取微信二维码
...@@ -299,7 +370,7 @@ ...@@ -299,7 +370,7 @@
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
this.WeiXinShareImgSrc = res.data.data; this.WeiXinShareImgSrc = res.data.data;
} }
}, err => {}) })
}, },
//还原表单 //还原表单
backForm() { backForm() {
...@@ -351,9 +422,7 @@ ...@@ -351,9 +422,7 @@
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
item.airportNameList = res.data.data; item.airportNameList = res.data.data;
} }
}, })
err => {}
)
this.$forceUpdate(); this.$forceUpdate();
}, },
flightSelectChange(flightId, item) { flightSelectChange(flightId, item) {
...@@ -368,16 +437,13 @@ ...@@ -368,16 +437,13 @@
}); });
}, },
//初始化航空公司下拉 //初始化航空公司下拉
initAirlines: function () { getAirlines() {
this.apipost( this.apipost('airline_post_GetList', {},
'airline_post_GetList', {},
res => { res => {
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
this.airLineList = res.data.data this.airLineList = res.data.data
} }
}, })
err => {}
)
}, },
addFlight: function () { addFlight: function () {
let obj = { let obj = {
...@@ -419,17 +485,68 @@ ...@@ -419,17 +485,68 @@
} }
} }
}, },
appendParent() { //检查文件是否生成
var lables = document.querySelectorAll('#pdf_2 .zidingyi img'); checkFile(configId, fileName) {
if (lables != null && lables.length > 0) { var that = this;
let parent = lables[0].parentElement; let urlObj = this.domainManager();
lables.forEach(function (lable, index) { var checkUrl = urlObj.ocrUrl + "/Home/CheckFile?configId=" + configId + "&url=" +
var ele = document.createElement('div') encodeURIComponent(this.downLoadUrl);
ele.className = 'u-box'; this.loadingText = "正在生成PDF文件...";
ele.appendChild(lable) this.$http({
parent.appendChild(ele) headers: {
'Content-Type': 'application/json'
},
method: 'get',
url: checkUrl,
data: {}
}).then(res => {
if (res.data == 1) {
clearInterval(this.download_timer);
this.loadingText = "正在下载PDF文件...";
var ocrUrl = "";
ocrUrl = urlObj.ocrUrl + "/Home/DownloadFileForPdfERP?configId=" + configId + "&url=" +
encodeURIComponent(that.downLoadUrl);
that.$http({
headers: {
'Content-Type': 'application/json'
},
method: 'get',
url: ocrUrl,
data: {},
responseType: 'arraybuffer'
}).then(res => {
that.pdfLoading = false;
let blob = new Blob([res.data], {
type: "application/pdf"
})
let fileUrl = URL.createObjectURL(blob);
let link = document.getElementById('pdfDownLoad');
link.href = fileUrl;
link.setAttribute("download", fileName);
link.click();
that.loadingText = "";
//删除缓存的Key
var deleteUrl = urlObj.ocrUrl + "/Home/DeteleKey?configId=" + configId + "&url=" +
encodeURIComponent(this.downLoadUrl);
that.$http({
headers: {
'Content-Type': 'application/json'
},
method: 'get',
url: deleteUrl,
data: {},
}).then(dRes => {
console.log("dRes", dRes);
}); });
}).catch(err => {
that.pdfLoading = false
})
} }
}).catch(err => {
that.loadingText = "";
that.pdfLoading = false;
clearInterval(that.download_timer);
})
}, },
//获取参数 //获取参数
getPostMsg() { getPostMsg() {
...@@ -478,16 +595,10 @@ ...@@ -478,16 +595,10 @@
} }
return postData; return postData;
}, },
gernalFeature(isPc) { ToWord_2023: function (title) {
var title = this.orderMsg.startDate + this.orderMsg.lineteamName + this.orderMsg.dayNum + '日游' var title = this.orderMsg.startDate + this.orderMsg.lineteamName + this.orderMsg.dayNum + '日游'
if (this.showType >= 4) { // 判断是否为行程特色 this.pdfLoading = true;
this.ToWord_2023(title, isPc) this.loadingText = "正在生成Word文件...";
} else {
this.ToWord_2023(title, isPc)
}
},
ToWord_2023: function (title, isPc) {
this.pdfLoading = true
let msg = this.getPostMsg(); let msg = this.getPostMsg();
let urlObj = this.domainManager(); let urlObj = this.domainManager();
this.$http({ this.$http({
...@@ -501,12 +612,14 @@ ...@@ -501,12 +612,14 @@
} }
}).then(res => { }).then(res => {
if (res.data.resultCode === 1) { if (res.data.resultCode === 1) {
let sign = title + "V2" this.loadingText = "正在下载Word文件...";
let sign = title;
const a = document.createElement('a'); const a = document.createElement('a');
a.setAttribute('download', ''); a.setAttribute('download', '');
a.setAttribute('href', urlObj.DomainUrl + '/api/file/DownloadFileForPdf?fileName=' + sign + a.setAttribute('href', urlObj.DomainUrl + '/api/file/DownloadFileForPdf?fileName=' + sign +
'.doc&&fPath=' + res.data.data); '.doc&&fPath=' + res.data.data);
a.click(); a.click();
this.loadingText = "";
} else { } else {
this.Error('WORD获取失败'); this.Error('WORD获取失败');
} }
...@@ -517,9 +630,7 @@ ...@@ -517,9 +630,7 @@
}, },
// 生成pdf // 生成pdf
toPDF_2023: function (command) { toPDF_2023: function (command) {
this.pdfLoading = true;
var that = this; var that = this;
let urlObj = this.domainManager();
let msg = this.getPostMsg(); let msg = this.getPostMsg();
var title = ""; var title = "";
if (this.priceList && this.priceList.length > 0 && this.priceList[0].priceFlight && this.priceList[0] if (this.priceList && this.priceList.length > 0 && this.priceList[0].priceFlight && this.priceList[0]
...@@ -539,37 +650,31 @@ ...@@ -539,37 +650,31 @@
} else { } else {
title += this.orderMsg.lineteamName + this.orderMsg.dayNum + '日游'; title += this.orderMsg.lineteamName + this.orderMsg.dayNum + '日游';
} }
//阿里云行程下载
var objFileKey = "TripDownLoad"
objFileKey += "/" + msg.configId + "_" + msg.tcid;
var fileName = title + ".pdf"; var fileName = title + ".pdf";
if (this.orderId && this.orderId > 0) { if (this.orderId && this.orderId > 0) {
//出团通知书下载 //出团通知书下载
this.pdfDownLoad(fileName, msg); this.pdfDownLoad(fileName, msg);
} else if (urlObj.IsOnline == 0) {
//本地行程下载
this.pdfDownLoad(fileName, msg);
} else if (command && command == 1) { } else if (command && command == 1) {
//阿里云行程下载 this.pdfLoading = true;
var objFileKey = "TripDownLoad"
objFileKey += "/" + msg.configId + "_" + msg.tcid;
objFileKey += "/" + msg.configId + "_" + msg.tcid + "_B2B.pdf"; objFileKey += "/" + msg.configId + "_" + msg.tcid + "_B2B.pdf";
that.downloadChengDuFileRename(objFileKey, fileName, res => { that.downloadChengDuFileRename(objFileKey, fileName, res => {
this.pdfLoading = false;
if (res.resultCode == 0) { if (res.resultCode == 0) {
msg.isShowB2B = 1; msg.isShowB2B = 1;
that.pdfDownLoad(fileName, msg); that.pdfDownLoad(fileName, msg);
} else {
that.pdfLoading = false;
} }
}) })
} else if (command && command == 2) { } else if (command && command == 2) {
//阿里云行程下载
var objFileKey = "TripDownLoad"
objFileKey += "/" + msg.configId + "_" + msg.tcid;
objFileKey += "/" + msg.configId + "_" + msg.tcid + ".pdf"; objFileKey += "/" + msg.configId + "_" + msg.tcid + ".pdf";
this.pdfLoading = true;
that.downloadChengDuFileRename(objFileKey, fileName, res => { that.downloadChengDuFileRename(objFileKey, fileName, res => {
this.pdfLoading = false;
if (res.resultCode == 0) { if (res.resultCode == 0) {
msg.isShowB2B = 0; msg.isShowB2B = 0;
that.pdfDownLoad(fileName, msg); that.pdfDownLoad(fileName, msg);
} else {
that.pdfLoading = false;
} }
}) })
} else { } else {
...@@ -577,6 +682,7 @@ ...@@ -577,6 +682,7 @@
} }
}, },
pdfDownLoad: function (fileName, msg) { pdfDownLoad: function (fileName, msg) {
var that = this;
let urlObj = this.domainManager(); let urlObj = this.domainManager();
this.$http({ this.$http({
headers: { headers: {
...@@ -590,36 +696,14 @@ ...@@ -590,36 +696,14 @@
}).then(res => { }).then(res => {
if (res.data.resultCode === 1 && res.data.data) { if (res.data.resultCode === 1 && res.data.data) {
let path = res.data.data; let path = res.data.data;
this.pdfLoading = false; that.downLoadUrl = path;
this.pdfLoading = true; that.pdfLoading = true;
let urlObj = this.domainManager(); this.download_timer = setInterval(function () {
var ocrUrl = ""; that.checkFile(msg.configId, fileName)
ocrUrl = urlObj.ocrUrl + "/Home/DownloadFileForPdfERP?configId=" + msg.configId + "&url=" + }, 2000);
encodeURIComponent(path);
this.$http({
headers: {
'Content-Type': 'application/json'
},
method: 'get',
url: ocrUrl,
data: {},
responseType: 'arraybuffer'
}).then(res => {
this.pdfLoading = false;
let blob = new Blob([res.data], {
type: "application/pdf"
})
let url = URL.createObjectURL(blob);
let link = document.getElementById('pdfDownLoad');
link.href = url;
link.setAttribute("download", fileName);
link.click();
}).catch(err => {
this.pdfLoading = false
})
} else { } else {
this.pdfLoading = false that.pdfLoading = false
this.$message.error('PDF获取失败'); that.$message.error('PDF获取失败');
} }
}).catch(err => { }).catch(err => {
...@@ -638,13 +722,11 @@ ...@@ -638,13 +722,11 @@
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
this.Success(res.data.message); this.Success(res.data.message);
this.editMsgShow = false; this.editMsgShow = false;
this.init(); this.getTripDetail();
} else { } else {
this.Error(res.data.message); this.Error(res.data.message);
} }
}, });
err => {}
)
}, },
DateDiff(sDate1, sDate2) { //sDate1和sDate2是2002-12-18格式 DateDiff(sDate1, sDate2) { //sDate1和sDate2是2002-12-18格式
var aDate, oDate1, oDate2, iDays var aDate, oDate1, oDate2, iDays
...@@ -655,11 +737,13 @@ ...@@ -655,11 +737,13 @@
iDays = parseInt(Math.abs(oDate1 - oDate2) / 1000 / 60 / 60 / 24) //把相差的毫秒数转换为天数 iDays = parseInt(Math.abs(oDate1 - oDate2) / 1000 / 60 / 60 / 24) //把相差的毫秒数转换为天数
return iDays return iDays
}, },
init() { getTripDetail() {
var unionfid = 0; var unionfid = 0;
if (this.$route.query.unionfid) { if (this.$route.query.unionfid) {
unionfid = this.$route.query.unionfid; unionfid = this.$route.query.unionfid;
} }
this.pdfLoading = true;
this.loadingText = "正在获取行程信息...";
this.apipost('b2b_get_GetB2BTravelInfoNoDes', { this.apipost('b2b_get_GetB2BTravelInfoNoDes', {
configId: this.$route.query.configId, configId: this.$route.query.configId,
cityId: this.$route.query.cityId, cityId: this.$route.query.cityId,
...@@ -668,6 +752,8 @@ ...@@ -668,6 +752,8 @@
isClick: this.isClick, //不算统计 isClick: this.isClick, //不算统计
unionfid: unionfid, unionfid: unionfid,
}, res => { }, res => {
this.pdfLoading = false;
this.loadingText = "";
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
let data = (res.data.data); let data = (res.data.data);
this.dataAll = data; this.dataAll = data;
...@@ -716,7 +802,6 @@ ...@@ -716,7 +802,6 @@
airportNameList: [], airportNameList: [],
}); });
}); });
} }
if (this.orderTripdiff) { if (this.orderTripdiff) {
this.editForm = JSON.parse(JSON.stringify(this.orderTripdiff)); this.editForm = JSON.parse(JSON.stringify(this.orderTripdiff));
...@@ -736,14 +821,7 @@ ...@@ -736,14 +821,7 @@
//初始化行程 //初始化行程
this.initTrip(res, data); this.initTrip(res, data);
} }
this.$nextTick(function () { });
this.pdfLoading = false;
let imgs = document.getElementsByTagName('img');
for (let i = 0; i < imgs.length; i++) {
document.getElementsByTagName('img')[i].removeAttribute('crossOrigin')
}
})
}, err => {})
}, },
//上移下移(IsUp:0上移,1下移) //上移下移(IsUp:0上移,1下移)
MoveItem(item, subIndex, IsUp) { MoveItem(item, subIndex, IsUp) {
...@@ -771,7 +849,6 @@ ...@@ -771,7 +849,6 @@
this.tripList = res.data.data.dayList; this.tripList = res.data.data.dayList;
this.feature = res.data.data.feature this.feature = res.data.data.feature
this.showType = this.feature.featureType; this.showType = this.feature.featureType;
this.isDirect = res.data.data.isDirect;
if (data.priceList.length > 0) { if (data.priceList.length > 0) {
data.priceList[0].priceFlight.forEach((x, i) => { data.priceList[0].priceFlight.forEach((x, i) => {
if (i == 0) { if (i == 0) {
...@@ -1013,135 +1090,3 @@ ...@@ -1013,135 +1090,3 @@
} }
</script> </script>
<style>
@import url('../assets/css/tripIndex.css');
@import url("../assets/css/UpgradedVersion.css");
@import url("../assets/css/tripIndexNew2.css");
@import url('../assets/css/detail.css');
@import url('../assets/css/tripIndexNewHV.css');
.edit_form_box {
display: flex;
justify-content: space-around;
}
.edit_form_box_tit {
color: #000000;
text-align: left;
margin-top: 0;
border-left: 2px solid #e95252;
padding-left: 25px;
}
.TravelFlightList {
width: 100%;
background-color: #fff;
}
.TravelFlightList table {
width: 100%;
}
.TFflightName {
padding: 3px 5px;
display: inline-block;
background-color: #ff9c00;
color: #fff;
border-radius: 4px;
margin-left: 10px;
}
.TFTable .el-button.is-circle {
padding: 5px;
}
.TFTable .el-form-item {
margin: 10px;
}
.TFTable i {
font-size: 14px;
}
.TFTable .el-input--prefix .el-input__inner {
padding-right: 0;
}
.TFAddFlight {
width: 100%;
height: 40px;
text-align: center;
line-height: 40px;
color: #333;
margin-top: 5px;
background-color: #f1f1f1;
font-size: 12px;
border: 1px dashed #dcdcdc;
cursor: pointer;
}
.w110 {
width: 110px !important;
}
.w120 {
width: 120px !important;
}
.normalBtn {
color: #fff;
padding: 0 15px;
height: 30px;
background: #E95252;
border: 1px solid #E95252;
cursor: pointer;
border-radius: 15px;
margin-left: 10px;
}
.hollowFixedBtn {
background: #fff;
color: #E95252;
padding: 0 15px;
height: 30px;
border: 1px solid #E95252;
cursor: pointer;
border-radius: 15px;
margin-left: 10px;
}
@media print {
html,
sbody {
background: none !important;
}
.travelControlTrip {
margin: 0px !important;
padding: 0px !important;
}
.travelControlTripBtn {
display: none !important;
}
.travelControlTripLayer {
display: none !important;
}
#pdfNode {
margin: 0px !important;
}
.trip-block {
border: none !important;
}
@page {
margin: 6.5mm;
}
}
</style>
...@@ -567,6 +567,8 @@ ...@@ -567,6 +567,8 @@
CommissionInfor:{}, CommissionInfor:{},
OrderList: [], OrderList: [],
loading: true, loading: true,
Year: "",
Year2: "",
YearTime:'', YearTime:'',
LastMonthTime: '', LastMonthTime: '',
MonthTime: '', MonthTime: '',
...@@ -611,7 +613,9 @@ ...@@ -611,7 +613,9 @@
} }
let nowdays = new Date() let nowdays = new Date()
this.Year = new Date().getFullYear() this.Year = new Date().getFullYear()
this.Year2 = new Date().getFullYear()-1
this.LastMonthTime = new Date().getMonth() this.LastMonthTime = new Date().getMonth()
this.LastMonthTime = this.LastMonthTime==0?12:this.LastMonthTime
this.MonthTime = new Date().getMonth() + 1 this.MonthTime = new Date().getMonth() + 1
this.msg.Month = this.Year+'-'+(this.MonthTime>=10?this.MonthTime:'0'+this.MonthTime) this.msg.Month = this.Year+'-'+(this.MonthTime>=10?this.MonthTime:'0'+this.MonthTime)
this.MonthList[0].Name = this.MonthList[0].Name+'('+this.LastMonthTime+'月)' this.MonthList[0].Name = this.MonthList[0].Name+'('+this.LastMonthTime+'月)'
...@@ -640,7 +644,8 @@ ...@@ -640,7 +644,8 @@
if(item.Id==1){ if(item.Id==1){
this.msg.Month = this.Year+'-'+(this.MonthTime>=10?this.MonthTime:'0'+this.MonthTime) this.msg.Month = this.Year+'-'+(this.MonthTime>=10?this.MonthTime:'0'+this.MonthTime)
}else{ }else{
this.msg.Month = this.Year+'-'+(this.LastMonthTime>=10?this.LastMonthTime:'0'+this.LastMonthTime) if(this.LastMonthTime==12)this.msg.Month = this.Year2+'-'+(this.LastMonthTime>=10?this.LastMonthTime:'0'+this.LastMonthTime)
else this.msg.Month = this.Year+'-'+(this.LastMonthTime>=10?this.LastMonthTime:'0'+this.LastMonthTime)
} }
this.getList() this.getList()
// this.getData() // this.getData()
......
...@@ -645,6 +645,8 @@ ...@@ -645,6 +645,8 @@
], ],
CommissionInfor: {}, CommissionInfor: {},
OrderList: [], OrderList: [],
Year: "",
Year2: "",
YearTime: '', YearTime: '',
LastMonthTime: '', LastMonthTime: '',
MonthTime: '', MonthTime: '',
...@@ -716,7 +718,8 @@ ...@@ -716,7 +718,8 @@
if (item.Id == 1) { if (item.Id == 1) {
this.msg.Month = this.Year + '-' + (this.MonthTime >= 10 ? this.MonthTime : '0' + this.MonthTime) this.msg.Month = this.Year + '-' + (this.MonthTime >= 10 ? this.MonthTime : '0' + this.MonthTime)
} else { } else {
this.msg.Month = this.Year + '-' + (this.LastMonthTime >= 10 ? this.LastMonthTime : '0' + this.LastMonthTime) if(this.LastMonthTime==12) this.msg.Month = this.Year2 + '-' + (this.LastMonthTime >= 10 ? this.LastMonthTime : '0' + this.LastMonthTime)
else this.msg.Month = this.Year + '-' + (this.LastMonthTime >= 10 ? this.LastMonthTime : '0' + this.LastMonthTime)
} }
this.getList() this.getList()
}, },
...@@ -889,7 +892,9 @@ ...@@ -889,7 +892,9 @@
} }
let nowdays = new Date() let nowdays = new Date()
this.Year = new Date().getFullYear() this.Year = new Date().getFullYear()
this.Year2 = new Date().getFullYear()-1
this.LastMonthTime = new Date().getMonth() this.LastMonthTime = new Date().getMonth()
this.LastMonthTime = this.LastMonthTime==0?12:this.LastMonthTime
this.MonthTime = new Date().getMonth() + 1 this.MonthTime = new Date().getMonth() + 1
this.msg.Month = this.Year + '-' + (this.MonthTime >= 10 ? this.MonthTime : '0' + this.MonthTime) this.msg.Month = this.Year + '-' + (this.MonthTime >= 10 ? this.MonthTime : '0' + this.MonthTime)
this.MonthList[0].Name = this.MonthList[0].Name + '(' + this.LastMonthTime + '月)' this.MonthList[0].Name = this.MonthList[0].Name + '(' + this.LastMonthTime + '月)'
......
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