Commit 8fdde185 authored by 华国豪's avatar 华国豪 🙄
parents f27cc590 19ccc79a
This diff is collapsed.
This diff is collapsed.
...@@ -696,8 +696,10 @@ export default { ...@@ -696,8 +696,10 @@ export default {
if (this.msg.QStartDate == "") this.msg.QStartDatetartDate = "2019-01-01"; if (this.msg.QStartDate == "") this.msg.QStartDatetartDate = "2019-01-01";
this.apipost('financestatistics_post_GetYearReportList', this.msg, res=>{ this.apipost('financestatistics_post_GetYearReportList', this.msg, res=>{
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
// console.log(res);
let allDataList = res.data.data let allDataList = res.data.data
this.DataList = res.data.data.list this.DataList = res.data.data.list
// console.log("this.DataList111",this.DataList);
this.columns = [ this.columns = [
// 团队编号、团号 点击跳转团控列表 // 团队编号、团号 点击跳转团控列表
{ {
...@@ -780,7 +782,7 @@ export default { ...@@ -780,7 +782,7 @@ export default {
componentName: "fontColor2" componentName: "fontColor2"
}, },
] ]
console.log(this.DataList);
this.loading = false; this.loading = false;
this.$message.success(res.data.message) this.$message.success(res.data.message)
} else {this.loading = false; } else {this.loading = false;
......
...@@ -63,6 +63,7 @@ ...@@ -63,6 +63,7 @@
border-left: 0; border-left: 0;
/* overflow: hidden; */ /* overflow: hidden; */
position: relative; position: relative;
padding-top:10px;
} }
.PlaneTicket ._ol_list > li:hover { .PlaneTicket ._ol_list > li:hover {
box-shadow: 0px 0px 20px rgba(191, 191, 191, 1); box-shadow: 0px 0px 20px rgba(191, 191, 191, 1);
...@@ -232,7 +233,7 @@ ...@@ -232,7 +233,7 @@
/* width: 245px; */ /* width: 245px; */
height: 60px; height: 60px;
background-color: #f9f9f9; background-color: #f9f9f9;
margin-top: 9px; /* margin-top: 9px; */
padding-right: 10px; padding-right: 10px;
} }
.TK_SeatList > ul > li:nth-child(1) { .TK_SeatList > ul > li:nth-child(1) {
...@@ -942,7 +943,7 @@ ...@@ -942,7 +943,7 @@
.vmiddle { .vmiddle {
display: flex; display: flex;
align-items: Center; align-items: Center;
height: 78px; /* height: 78px; */
} }
.Plan_Query .el-button--primary { .Plan_Query .el-button--primary {
background-color: #fff !important; background-color: #fff !important;
...@@ -998,7 +999,7 @@ ...@@ -998,7 +999,7 @@
/*航班详情*/ /*航班详情*/
.PlaneTicket .FlightDivDetails { .PlaneTicket .FlightDivDetails {
width: 100%; width: 100%;
height: 65px; /* height: 65px; */
overflow: auto; overflow: auto;
} }
.PlaneTicket ._flightList { .PlaneTicket ._flightList {
......
...@@ -117,8 +117,10 @@ export default { ...@@ -117,8 +117,10 @@ export default {
methods:{ methods:{
// 订单拆分 // 订单拆分
OrderSplit(){ OrderSplit(){
this.loading = true;
this.orderSplitInfo.GuestIdStr=this.checkList; this.orderSplitInfo.GuestIdStr=this.checkList;
this.apipost('dmc_post_SetGuestSplitVisaInfo',this.orderSplitInfo,res=>{ this.apipost('dmc_post_SetGuestSplitVisaInfo',this.orderSplitInfo,res=>{
this.loading = false;
if(res.data.resultCode==1){ if(res.data.resultCode==1){
this.$message.success(res.data.message) this.$message.success(res.data.message)
this.getData() this.getData()
......
...@@ -188,7 +188,7 @@ ...@@ -188,7 +188,7 @@
<tr> <tr>
<td colspan="12" class="RL_Order" style="height:40px;"> <td colspan="12" class="RL_Order" style="height:40px;">
<span class="VO-remarkTitle">名单:</span> <span class="VO-remarkTitle">名单:</span>
<span class="VO-redType VO-remarkCon" v-if="item.GuestList.length>0"> <span class="VO-redType VO-remarkCon" v-if="item.GuestList.length>0" style="cursor:pointer">
<span v-for="(childItem) in item.GuestList" style="margin-right:10px;" @click="goUrl2('VisapassengerList',item.Id,'旅客名单')">{{childItem.userName}}</span> <span v-for="(childItem) in item.GuestList" style="margin-right:10px;" @click="goUrl2('VisapassengerList',item.Id,'旅客名单')">{{childItem.userName}}</span>
</span> </span>
<span class="VO-redType VO-remarkCon" v-else> <span class="VO-redType VO-remarkCon" v-else>
......
...@@ -116,8 +116,8 @@ ...@@ -116,8 +116,8 @@
</table> </table>
</li> </li>
<li> <li>
<input type="button" class="normalBtn" value="导出报表" @click="getFlightInfo(),getCombinTeam()" /> <input type="button" class="normalBtn" value="导出报表" @click="getFlightInfo(),getCombinTeam()" style="display:none;"/>
<input type="button" class="normalBtn" value="导出报表" @click="exportExcel()" style="display:none" /> <input type="button" class="normalBtn" value="导出报表" @click="exportExcel()"/>
</li> </li>
</ul> </ul>
</div> </div>
...@@ -227,7 +227,7 @@ ...@@ -227,7 +227,7 @@
</tbody> </tbody>
</table> </table>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<button class="normalBtn" type="primary" @click="getCheckInfo()">确认航班信息</button> &nbsp; <button class="normalBtn" type="primary" @click="getIsSure()">确认航班信息</button> &nbsp;
<button class="hollowFixedBtn" @click="outerVisible = false">{{$t('pub.cancelBtn')}}</button> <button class="hollowFixedBtn" @click="outerVisible = false">{{$t('pub.cancelBtn')}}</button>
</div> </div>
</el-dialog> </el-dialog>
...@@ -313,6 +313,20 @@ ...@@ -313,6 +313,20 @@
} }
}, err => {}); }, err => {});
}, },
//是否确定
getIsSure(){
this.$confirm("是否确认航班信息?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
})
.then(() => {
this.getCheckInfo();
})
.catch(() => {
this.$message.info("已取消!");
});
},
//确定 //确定
getCheckInfo() { getCheckInfo() {
let FlightList = [] let FlightList = []
......
This diff is collapsed.
...@@ -341,6 +341,22 @@ ...@@ -341,6 +341,22 @@
<script> <script>
export default { export default {
data() { data() {
let validateFlightNum = (rule, value, callback) => {
var reg = /^[a-zA-Z]+$/;
var reg2 = /^[0-9]+$/;
var reg3 = /^[0-9a-zA-Z]*$/g;
if (value === "") {
callback(new Error("请输入航班号"));
} else if (!reg3.test(value)) {
callback(new Error("请输入数字或字母"));
} else if (!reg.test(value.slice(0,1))) {
callback(new Error("首字母必须为字母"));
} else if(!reg2.test(value.charAt(value.length - 1))){
callback(new Error("尾数必须为数字"));
} else {
callback();
}
}
return { return {
checked: false, checked: false,
outerVisible: false, outerVisible: false,
...@@ -406,9 +422,8 @@ ...@@ -406,9 +422,8 @@
trigger: "change" trigger: "change"
}], }],
Flight_number: [{ Flight_number: [{
required: true, validator: validateFlightNum,
message: "请输入航班号", trigger: "blur",
trigger: "blur"
}], }],
Type: [{ Type: [{
required: true, required: true,
...@@ -830,14 +845,14 @@ ...@@ -830,14 +845,14 @@
tab: "航班有效期维护" tab: "航班有效期维护"
} }
}) })
} },
}, },
mounted() { mounted() {
this.getSeasonTypeList() this.getSeasonTypeList()
this.getList(); this.getList();
this.getAirlineList(); this.getAirlineList();
this.getDepartureCityList(); this.getDepartureCityList();
} },
}; };
</script> </script>
...@@ -1448,6 +1448,7 @@ ...@@ -1448,6 +1448,7 @@
<div class="RL_rightBtn" v-if="isShow===true"> <div class="RL_rightBtn" v-if="isShow===true">
<!--item.TCID,item.OutBranchId--> <!--item.TCID,item.OutBranchId-->
<input type="button" class="normalBtn" @click="goTeamBalance(ConfigData.Config.TCID,ConfigData.Config.OutBranchId)" value="团报" /> <input type="button" class="normalBtn" @click="goTeamBalance(ConfigData.Config.TCID,ConfigData.Config.OutBranchId)" value="团报" />
<input type="button" class="normalBtn" @click="getOrderInfo()" :value="'出团通知书('+(SetNoticeMsg.OutNotice==1?'OK':'暂定')+')'" style="display:none;"/>
<input type="button" class="normalBtn" @click="SetOutNotice()" :value="'出团通知书('+(SetNoticeMsg.OutNotice==1?'OK':'暂定')+')'" /> <input type="button" class="normalBtn" @click="SetOutNotice()" :value="'出团通知书('+(SetNoticeMsg.OutNotice==1?'OK':'暂定')+')'" />
<input type="button" @click="CancelLeader" v-if="ConfigData.Leader!=null&&ConfigData.Leader.LeaderId>0" class="normalBtn" <input type="button" @click="CancelLeader" v-if="ConfigData.Leader!=null&&ConfigData.Leader.LeaderId>0" class="normalBtn"
value="重选领队" /> value="重选领队" />
...@@ -2225,6 +2226,74 @@ ...@@ -2225,6 +2226,74 @@
<button class="hollowFixedBtn" @click="initTCMsg">{{$t('pub.cancelBtn')}}</button> <button class="hollowFixedBtn" @click="initTCMsg">{{$t('pub.cancelBtn')}}</button>
</div> </div>
</el-dialog> </el-dialog>
<el-dialog custom-class='passgenrDialog' title="航班列表" :visible.sync="outerVisible" center>
<table border="0" cellspacing="0" cellpadding="0" class="singeRowTable">
<tr>
<td colspan="6" style="text-align:left;font-weight:bold;padding-left:5px">票务航班信息</td>
</tr>
<tr>
<th>航班号</th>
<th>开始时间</th>
<th>结束时间</th>
<th>出发时间</th>
<th>起飞机场</th>
<th>到达机场</th>
</tr>
<tr v-for="item in flightList">
<td>{{item.Flight_number}}</td>
<td>{{item.TicketDepartureTime}}</td>
<td>{{item.TicketArrivalTime}}</td>
<td>{{item.FlightDate}}</td>
<td>{{item.dName}}</td>
<td>{{item.aName}}</td>
</tr>
</table>
<table border="0" cellspacing="0" cellpadding="0" class="singeRowTable" style="margin-top:20px;" v-if="combineTeamList.length>0">
<tr>
<td colspan="9" style="text-align:left;font-weight:bold;padding-left:5px">联运航班信息</td>
</tr>
<tr>
<th>团号</th>
<th>公司/城市</th>
<th>航段</th>
<th>日期</th>
<th>航班号</th>
<th>出发时间</th>
<th>到达时间</th>
<th>起飞机场</th>
<th>到达机场</th>
</tr>
<tbody v-for="subItem in combineTeamList">
<tr>
<td rowspan="2">{{subItem.TCNUM}}({{subItem.TCID}})</td>
<td rowspan="2">{{subItem.UnionBranchName}}({{subItem.UnionCityName}})</td>
<td width="50">去程</td>
<td>{{subItem.GoFlightDateStr}}</td>
<td>{{subItem.GoFlight_number}}</td>
<td>{{subItem.GoDepartTime}}</td>
<td>{{subItem.GoArriveTime}}</td>
<td>{{subItem.GoDepartAirportName}}</td>
<td>{{subItem.GoArrivalAirportName}}</td>
</tr>
<tr>
<td width="50">回程</td>
<td>{{subItem.BackFlightDateStr}}</td>
<td>{{subItem.BackFlight_number}}</td>
<td>{{subItem.BackDepartTime}}</td>
<td>{{subItem.BackArriveTime}}</td>
<td>{{subItem.BackDepartAirportName}}</td>
<td>{{subItem.BackArrivalAirportName}}</td>
</tr>
</tbody>
</table>
<div slot="footer" class="dialog-footer">
<input type="button" class="normalBtn" @click="SetOutNotice()" :value="'出团通知书('+(SetNoticeMsg.OutNotice==1?'OK':'暂定')+')'" />
<button class="hollowFixedBtn" @click="outerVisible = false">{{$t('pub.cancelBtn')}}</button>
</div>
</el-dialog>
</div> </div>
</template> </template>
...@@ -2238,6 +2307,8 @@ import updateSalesMan from "../../commonPage/updateSalesMan.vue"; ...@@ -2238,6 +2307,8 @@ import updateSalesMan from "../../commonPage/updateSalesMan.vue";
Ysze:false, Ysze:false,
addMsg_form:{}, addMsg_form:{},
IsUpdateOrderMoney:false, IsUpdateOrderMoney:false,
outerVisible:false,
//弹窗
OrderLoading:false, OrderLoading:false,
OrderLossMsg:{ OrderLossMsg:{
...@@ -2600,8 +2671,9 @@ import updateSalesMan from "../../commonPage/updateSalesMan.vue"; ...@@ -2600,8 +2671,9 @@ import updateSalesMan from "../../commonPage/updateSalesMan.vue";
subInfo:{ subInfo:{
CreateBy:'', CreateBy:'',
OrderId:0 OrderId:0
} },
flightList:[],
combineTeamList:[],
}; };
}, },
components: { components: {
...@@ -3838,7 +3910,6 @@ submitYSZEForm(){ ...@@ -3838,7 +3910,6 @@ submitYSZEForm(){
}, },
err => {} err => {}
); );
}, },
handleCurrentChange(val) { handleCurrentChange(val) {
this.msg.pageIndex = val; this.msg.pageIndex = val;
...@@ -3873,10 +3944,38 @@ submitYSZEForm(){ ...@@ -3873,10 +3944,38 @@ submitYSZEForm(){
this.ConfigData.Config = res.data.data.config; this.ConfigData.Config = res.data.data.config;
this.SetNoticeMsg.OutNotice = res.data.data.config.OutNotice; this.SetNoticeMsg.OutNotice = res.data.data.config.OutNotice;
this.ConfigData.Leader = res.data.data.leader; this.ConfigData.Leader = res.data.data.leader;
console.log(this.ConfigData,'ConfigData');
} }
} }
); );
}, },
//获取
getFlightInfo() {
let msg = {
ID: this.ConfigData.Config.AirTicketId
}
this.apipost("ticket_get_GetEntityExtend", msg, res => {
if (res.data.resultCode == 1) {
this.flightList = res.data.data.flightList;
} else {
this.Error(res.data.message);
}
}, err => {});
this.outerVisible = true;
},
//获取联运团信息
getCombinTeam() {
let msg = {
AirTicketId: this.ConfigData.Config.AirTicketId
}
this.apipost("ticket_get_GetUnionFlightAllInfo", msg, res => {
if (res.data.resultCode == 1) {
this.combineTeamList = res.data.data;
} else {
this.Error(res.data.message);
}
}, err => {});
},
//获取国家 //获取国家
getCountry() { getCountry() {
this.apipost( this.apipost(
...@@ -4105,45 +4204,45 @@ submitYSZEForm(){ ...@@ -4105,45 +4204,45 @@ submitYSZEForm(){
} }
}, },
//出团通知书 //出团通知书
SetOutNotice() { getOrderInfo() {
if (this.SetNoticeMsg.OutNotice == 0) { this.$confirm("是否确认出团通知书?", "提示", {
this.SetNoticeMsg.OutNotice = 1; confirmButtonText: "确定",
} else if (this.SetNoticeMsg.OutNotice == 1) { cancelButtonText: "取消",
this.SetNoticeMsg.OutNotice = 0; type: "warning"
} })
this.apipost('travel_post_SetOutNotice', this.SetNoticeMsg, res => { .then(() => {
if (res.data.resultCode === 1) { this.getFlightInfo();
this.getList(); this.getCombinTeam();
this.getConfig(); })
this.Success(res.data.message); .catch(() => {
} else { this.$message.info("已取消!");
this.Error(res.data.message);
}
}, err => {})
},
//新窗口打开
goScheduleUrl(id) {
let routeData = this.$router.resolve({
name: "leaderScheduleManager",
query: {
TCID: id,
blank: 'y'
}
}); });
window.open(routeData.href, "_blank");
}, },
//点击修改业务员 SetOutNotice(){
getSalerInfo(item){ if (this.SetNoticeMsg.OutNotice == 0) {
this.subInfo.CreateBy = item.CreateBy; this.SetNoticeMsg.OutNotice = 1;
this.subInfo.OrderId = item.OrderId; } else if (this.SetNoticeMsg.OutNotice == 1) {
this.showChangeSales = true; this.SetNoticeMsg.OutNotice = 0;
}
this.apipost('travel_post_SetOutNotice', this.SetNoticeMsg, res => {
if (res.data.resultCode === 1) {
this.getList();
this.getConfig();
this.Success(res.data.message);
this.outerVisible=false;
} else {
this.Error(res.data.message);
}
}, err => {
})
}, },
//关闭修改业务员 //关闭修改业务员
closeSalseDiv(){ closeSalseDiv(){
this.showChangeSales=false; this.showChangeSales=false;
}, },
//跳转到团报 //跳转到团报
goTeamBalance(id, OutBranchId) { goTeamBalance(id, OutBranchId) {
this.$router.push({ this.$router.push({
name: "TeamBalancePayment", name: "TeamBalancePayment",
query: { query: {
......
...@@ -153,7 +153,7 @@ ...@@ -153,7 +153,7 @@
<div class="_br _pr30 _pl30 _font12 ta_l _vlc_info w305"> <div class="_br _pr30 _pl30 _font12 ta_l _vlc_info w305">
<div class="_mr_20"> <div class="_mr_20">
<p class="_OrderRemarks" style="width: 130px;"><span>{{$t('visa.v_tuanhao')}}</span> <p class="_OrderRemarks" style="width: 130px;"><span>{{$t('visa.v_tuanhao')}}</span>
<el-tooltip class="item" effect="dark" :content="item.OrderId" placement="top-start" popper-class="max-w250"> <el-tooltip class="item" effect="dark" :content="`${item.OrderId}`" placement="top-start" popper-class="max-w250">
<i class="iconfont"> {{item.OrderId}}</i> <i class="iconfont"> {{item.OrderId}}</i>
</el-tooltip> </el-tooltip>
</p> </p>
......
...@@ -1021,7 +1021,8 @@ ...@@ -1021,7 +1021,8 @@
let msg = { let msg = {
QFlightDateStart: this.QFlightDateStart, QFlightDateStart: this.QFlightDateStart,
QFlightDateEnd: this.QFlightDateEnd, QFlightDateEnd: this.QFlightDateEnd,
CreateBy: createBy CreateBy: createBy,
AirTicketId:this.priceData.AirTicketId
}; };
let that = this; let that = this;
......
...@@ -1103,7 +1103,8 @@ ...@@ -1103,7 +1103,8 @@
return; return;
let msg = { let msg = {
QFlightDateStart: date, QFlightDateStart: date,
CreateBy: this.PostConfig.CreateBy?this.PostConfig.CreateBy:this.userID CreateBy: this.PostConfig.CreateBy?this.PostConfig.CreateBy:this.userID,
AirTicketId:this.priceData.AirTicketId
}; };
let that = this; let that = this;
this.apipost( this.apipost(
......
...@@ -142,7 +142,8 @@ const i18n = new VueI18n({ ...@@ -142,7 +142,8 @@ const i18n = new VueI18n({
messages: { messages: {
'zh-CN': require('./assets/common/lang/zh'), // 中文语言包 'zh-CN': require('./assets/common/lang/zh'), // 中文语言包
'en-US': require('./assets/common/lang/en'), // 英文语言包 'en-US': require('./assets/common/lang/en'), // 英文语言包
'zh-TW': require('./assets/common/lang/zh-tw') // 台湾语言包 'zh-TW': require('./assets/common/lang/zh-tw'), // 台湾语言包
'Japanese' : require('./assets/common/lang/jp') // 日本语言包
} }
}) })
......
...@@ -2403,6 +2403,14 @@ export default { ...@@ -2403,6 +2403,14 @@ export default {
meta: { meta: {
title: '年度营收报表' title: '年度营收报表'
}, },
},
{ //财务 报表 月度营收报表
path: '/MonthReport',
name: 'MonthReport',
component: resolve => require(['@/components/FinancialModule/ReportForm/MonthReport'], resolve),
meta: {
title: '月度营收报表'
},
}, { }, {
path: '/JumpReport', path: '/JumpReport',
name: 'JumpReport', name: 'JumpReport',
......
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