Commit 48c0abf6 authored by youjie's avatar youjie

no message

parent 073611ae
...@@ -428,6 +428,7 @@ ...@@ -428,6 +428,7 @@
<script> <script>
import TicketCard from './components/OrderDetails.vue' import TicketCard from './components/OrderDetails.vue'
export default { export default {
components: { TicketCard },
data() { data() {
return { return {
isCheck:true, isCheck:true,
...@@ -454,7 +455,7 @@ ...@@ -454,7 +455,7 @@
detailsObj: {}, detailsObj: {},
beforeCheck: { beforeCheck: {
disabledDate: time => { disabledDate: time => {
let endTime = new Date(this.getBeforeDate(-1,new Date().Format("yyyy-MM-dd"))); let endTime = new Date(this.getBeforeDate(0,new Date().Format("yyyy-MM-dd")));
return time && endTime.getTime() >= time.getTime(); return time && endTime.getTime() >= time.getTime();
} }
}, },
...@@ -559,19 +560,17 @@ ...@@ -559,19 +560,17 @@
} }
}, },
getInfo(value){ getInfo(value){
console.log(value,'----')
let time let time
if(this.OpenTime!=this.msg.UseDate){ if(this.OpenTime!=this.msg.UseDate){
time = this.msg.UseDate time = this.msg.UseDate
}else{ }else{
time = this.OpenTime time = this.OpenTime
} }
console.log(time,'----222')
if(time){ if(time){
this.apipost( this.apipost(
"ticket_post_GetTicketCouponsInfo", "ticket_post_GetTicketCouponsInfo",
{ {
CouponsId: this.CouponsId, CouponsId: this.msg.CouponsId,
OpenTime: time, OpenTime: time,
}, },
res => { res => {
...@@ -631,12 +630,13 @@ ...@@ -631,12 +630,13 @@
}, },
mounted() { mounted() {
this.getInfo()
}, },
created() { created() {
this.msg.CouponsId = this.$route.query.id this.msg.CouponsId = this.$route.query.id
this.OpenTime = this.$route.query.OpenTime this.OpenTime = this.$route.query.OpenTime
this.msg.UseDate = this.$route.query.OpenTime this.msg.UseDate = this.$route.query.OpenTime
this.getInfo()
} }
}; };
......
...@@ -222,7 +222,7 @@ ...@@ -222,7 +222,7 @@
</el-image> </el-image>
</div> </div>
<div class="card-centent"> <div class="card-centent">
<h6 @click="showCardHandler(x)">{{x.Name}}}</h6> <h6 @click="showCardHandler(x)">{{x.Name}}</h6>
<p>地址: 日本 {{x.ProvinceName}} {{x.CityName}} {{x.Address}}</p> <p>地址: 日本 {{x.ProvinceName}} {{x.CityName}} {{x.Address}}</p>
<div class="card-text"> <div class="card-text">
<b>{{x.TicketPriceList.length}}种票型</b> <b>{{x.TicketPriceList.length}}种票型</b>
......
<style> <style>
.domesticScenic .clearfix:after {
content: "\0020";
display: block;
height: 0;
clear: both;
}
.domesticScenic .hotelResource {
width: 100%;
min-height: 500px;
margin-top: 20px;
}
.domesticScenic .resourceList { </style>
width: 215px;
background-color: #fff;
border: 1px dashed #ededed;
border-radius: 4px;
margin: 0 20px 20px 0;
font-size: 12px;
color: #333333;
float: left;
}
.domesticScenic .resourceList:hover { <template>
box-shadow: 0px 0px 20px rgba(191, 191, 191, 1);
transition: all linear 0.5s;
}
.domesticScenic .reTopInfo {
width: 100%;
height: 123px;
position: relative;
}
.domesticScenic .reTopInfo img {
position: absolute;
width: 100%;
height: 100%;
top: 0;
border-top-left-radius: 4px;
border-top-right-radius: 4px;
}
.domesticScenic .resTypeList {
position: absolute;
top: 10px;
left: 10px;
}
.domesticScenic .resTypeList span {
display: inline-block;
padding: 1px 5px;
border-radius: 10px;
color: #fff;
margin-right: 10px;
}
.domesticScenic .L1 {
background-color: #e95252;
}
.domesticScenic .L2 {
background-color: #47bf8c;
}
.domesticScenic .L3 {
background-color: #2aaef2;
}
.domesticScenic .L4 {
background-color: #9cf;
}
.domesticScenic .L5 {
background-color: #00c6ff;
margin-top: 5px;
}
.domesticScenic .starSu {
position: absolute;
bottom: 8px;
right: 10px;
display: flex;
}
.domesticScenic .starSu .star {
margin-left: 5px;
}
.domesticScenic .sushe {
background-color: #ffc800;
display: inline-block;
padding: 1px 5px;
border-radius: 10px;
color: #fff;
}
.domesticScenic .hotelTitle {
margin: 20px 16px 0 16px;
font-size: 14px;
color: #333333;
height: 20px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.domesticScenic .brandList i {
position: relative;
top: 2px;
}
.domesticScenic .brand {
float: left;
width: 49%;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
text-align: center;
}
.domesticScenic .dayNum {
float: right;
text-align: center;
width: 50%;
}
.domesticScenic .dieline {
color: #2aaef2;
font-size: 14px;
top: 1px !important;
}
.domesticScenic .AddressInner {
float: right;
width: 160px;
height: 18px;
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp: 1;
-webkit-box-orient: vertical;
}
.domesticScenic .btnList {
padding: 10px 0 20px 0;
text-align: center;
}
.domesticScenic .hotelBtn {
width: 60px;
height: 28px;
background: #f76f6f;
border-radius: 14px;
color: #fff;
cursor: pointer;
}
.domesticScenic .w150 .el-input {
width: 150px !important;
}
.domesticScenic .SupportCount {
color: #4bca81;
font-size: 18px;
font-weight: bold;
margin: 0 5px 5px 0;
display: inline-block;
}
.domesticScenic .dayNumber {
color: #2aaef2;
font-size: 18px;
font-weight: bold;
margin: 0 5px 5px 5px;
display: inline-block;
}
.domesticScenic .line {
float: left;
width: 1px;
height: 35px;
background-color: #ededed;
margin-top: 6px;
}
.domesticScenic .foodList {
display: inline-block;
padding: 1px 5px;
background-color: #ff9c00;
color: #fff;
margin-right: 6px;
border-radius: 2px;
}
.domesticScenic .foodList:last-child {
margin-right: 0;
}
.domesticScenic .delScien {
position: absolute;
right: 10px;
top: 10px;
display: none;
}
.domesticScenic .delScien:hover {
color: #f76f6f;
cursor: pointer;
}
.domesticScenic .resourceList:hover .delScien {
display: block;
}
.domesticScenic .comCursorUrl {
cursor: pointer;
}
/* 景区列表 */
</style>
<template>
<div class="flexOne domesticScenic">
<div class="query-box">
<ul>
<li>
<span>
<em>{{$t('system.quety_area')}}</em>
<el-select v-model="msg.QProvince" filterable @change="getProvinceList(msg.Province,2)"
:placeholder="$t('hotel.hotel_province')">
<el-option :key="0" :value="0" label="请选择"></el-option>
<el-option v-for="item in provinceList" :key="item.ID" :label="item.Name" :value="item.ID"></el-option>
</el-select>
<el-select v-model="msg.City" filterable :placeholder="$t('hotel.hotel_city')">
<el-option :key="0" :value="0" label="请选择"></el-option>
<el-option v-for="item in cityList" :key="item.ID" :label="item.Name" :value="item.ID"></el-option>
</el-select>
</span>
</li>
<li>
<span class="hotel_name">
<em>{{$t('scen.sc_resName')}}</em>
<el-input maxlength="50" @keyup.native.enter="resetPageIndex(),selectResource()" v-model="msg.Name">
</el-input>
</span>
</li>
<li>
<span>
<em>{{$t('system.quety_area')}}</em>
<el-select v-model="msg.QProvince" class="w150" clearable filterable
@change="getProvinceList(msg.QProvince,2)" :placeholder="$t('hotel.hotel_province')">
<el-option v-for="item in provinceList" :key="item.ID" :label="item.Name" :value="item.ID"></el-option>
</el-select>
<el-select v-model="msg.QCity" class="w150" clearable filterable @change="getProvinceList(msg.QCity,3)"
:placeholder="$t('hotel.hotel_city')">
<el-option v-for="item in cityList" :key="item.ID" :label="item.Name" :value="item.ID"></el-option>
</el-select>
<!-- <el-select v-model="msg.QDistrict" class="w150" clearable filterable :placeholder="$t('hotel.hotel_area')">
<el-option v-for="item in district" :key="item.ID" :label="item.Name" :value="item.ID"></el-option>
</el-select> -->
</span>
</li>
<li>
<span>
<em>{{$t('hotel.hotel_status')}}</em>
<el-select v-model="msg.Status" class="w210" :placeholder="$t('pub.unlimitedSel')">
<el-option :label="$t('pub.unlimitedSel')" value="-1"></el-option>
<el-option v-for="item in status" :key="item.value" :label="item.label" :value="item.value"></el-option>
</el-select>
</span>
</li>
<li style="display:none;">
<span>
<em>{{$t('ground.menpiaozhongl')}}</em>
<el-select v-model="msg.IsFree" class='multiple_input w210' :placeholder="$t('pub.pleaseSel')">
<el-option v-for="item in IsFreeList" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
</span>
</li>
<li>
<span><em>{{$t('visa.v_czuser')}}</em></span>
<el-select class="w150" v-model="msg.UpdateBy" filterable :placeholder="$t('pub.pleaseSel')">
<el-option :label="$t('pub.unlimitedSel')" :value="0">
</el-option>
<el-option v-for="item in EmployeeList" :label="item.EmName" :value="item.EmployeeId"
:key="item.EmployeeId"></el-option>
</el-select>
</li>
<li>
<button class="hollowFixedBtn" type="button"
@click="resetPageIndex(),selectResource()">{{$t('pub.searchBtn')}}</button>
<button class="normalBtn" type="button"
@click="$router.push('domesticScenicSpotInfoManage')">{{$t('pub.addBtn')}}</button>
<!-- <button class="hollowFixedBtn" type="button" @click="DownLoadFile()">{{$t('adm.adm_download')}}</button> -->
</li>
</ul>
</div>
<el-table :data="tableData" tooltip-effect="dark" style="width: 100%;min-height:450px;" v-loading="loading">
<!-- <el-table-column prop="Name" label="景点名称">
<template slot-scope="scope">
<div style="display:flex;align-items:center;">
<div> <div>
<img v-if="!scope.row.PicPath" src="../../assets/img/bg_c3@3x.png" style="width:60px;height:45px;"> <ReservationOrder :pagesTitle="pagesTitle"></ReservationOrder>
<img v-else :src="scope.row.PicPath" style="width:60px;height:45px;" />
</div>
<div style="margin-left:5px;">{{scope.row.Name}}</div>
</div>
</template>
</el-table-column> -->
</el-table>
<el-pagination background @current-change="handleCurrentChange" :current-page.sync="msg.currentPage"
:page-size="msg.pageSize" layout="total,prev, pager, next, jumper" :total="msg.total"></el-pagination>
</div> </div>
</template> </template>
<script> <script>
import ReservationOrder from '../reservation/ReservationOrder.vue';
export default { export default {
components: { ReservationOrder },
data() { data() {
return { return {
countryList: "", pagesTitle:'销售',
provinceList: "",
cityList: "",
district: "",
Ids: [],
tableData: [],
noData: false,
deleteID: "",
status: [{
value: "0",
label: this.$t('pub.normalSel')
},
{
value: "1",
label: this.$t('system.table_delete')
}
],
IsFreeList: [{
value: "-1",
label: this.$t('pub.unlimitedSel')
}, {
value: "0",
label: this.$t('advmanager.v_free')
},
{
value: "1",
label: this.$t('ground.youjia')
}
],
loading: true,
EmployeeList: [],
defaultImg: 'this.src="' + require("../../../assets/img/bg_z1@2x.png") + '"',
msg: {
pageIndex: 1,
pageSize: 14,
Name: "",
IsFree: "-1",
QCountry: "",
QProvince: "",
QCity: "",
QDistrict: "",
Status: "0",
total: 0,
currentPage: 1,
ID: 0,
UpdateBy: 0,
},
provinceList:[],
cityList:[]
}; };
}, },
methods: { methods: {
getProvinceList(ID, type) {
//根据省份获取城市
let msg = {
Id: ID
};
if (type == 1) {
this.msg.QProvince = 0;
this.msg.QCity = 0;
this.provinceList = [];
this.cityList = [];
} else if (type == 2) {
this.msg.City = 0;
this.cityList = [];
}
this.apipost(
"dict_post_Destination_GetChildList",
msg,
res => {
if (type == 1) {
this.provinceList = res.data.data;
} else if (type == 2) {
this.cityList = res.data.data;
}
},
err => {}
);
},
}, },
mounted() { mounted() {
}, },
created() {
if (this.$route.query) {
}
}
}; };
</script> </script>
<style>
</style>
...@@ -126,7 +126,9 @@ ...@@ -126,7 +126,9 @@
watch: { watch: {
ticket: { ticket: {
handler: function (val, oldVal) { handler: function (val, oldVal) {
this.t = JSON.parse(JSON.stringify(this.ticket))
this.images = this.t.PicPathList
this.initMap(this.t.Lng,this.t.Lat,this.t.Name)
}, },
deep: true deep: true
}, },
......
...@@ -61,6 +61,7 @@ ...@@ -61,6 +61,7 @@
.cff9800 { .cff9800 {
color: #ff9800; color: #ff9800;
} }
.cF1416C { .cF1416C {
color: #f1416c; color: #f1416c;
} }
...@@ -186,6 +187,9 @@ ...@@ -186,6 +187,9 @@
.bj { .bj {
background: #ffffff; background: #ffffff;
} }
.bjFFF3E0 {
background: #FFF3E0;
}
.radius5 { .radius5 {
border-radius: 5px; border-radius: 5px;
} }
...@@ -306,6 +310,73 @@ ...@@ -306,6 +310,73 @@
.shezhifrom:hover .shebox { .shezhifrom:hover .shebox {
display: block; display: block;
} }
.flexOne-form-bj h3{
font-size: 18px;
color: black;
padding: 0 0 20px 0;
font-weight: 400;
}
.flexOne-type{
display: flex;
align-items: center;
padding: 0 0 20px 0;
}
.flexOne-type b{
font-size: 13px;
width: 100px;
flex-shrink: 0;
}
.flexOne-type div{
display: flex;
}
.flexOne-description{
padding: 15px 15px;
border-radius: 5px;
background: #E1F5FE;
margin-bottom: 20px;
}
.flexOne-description b{
font-size: 14px;
}
.flexOne-description p{
font-size: 12px;
color: #4C5759;
padding: 10px 0 0 0;
}
.flexOne-infor-box b{
font-size: 13px;
}
.infor-list{
display: flex;
flex-direction: column;
}
.list-title{
padding: 20px 0;
border-bottom: 1px dashed #eeeeee;
color: #7E8299;
font-size: 13px;
}
.list-title,.list-centent{
display: flex;
flex-wrap: wrap;
margin-top: 20px;
}
.infor-list li{
width: 25%;
}
.list-centent li {
width: 33.33%;
}
.list-centent.active li {
width: 25%;
}
/deep/.el-table tr td:first-child{
border-bottom: 0;
}
/deep/.el-table tr td{
border-bottom: 1px solid #EBEEF5;
}
</style> </style>
<template> <template>
...@@ -319,9 +390,10 @@ ...@@ -319,9 +390,10 @@
<div> <div>
<div <div
class="orderType cf fz12" class="orderType cf fz12"
:class="{ active: item.OrderType == 1 }" :class="{ active: item.MailingState == 1 }"
> >
{{ item.OrderType == 1 ? "散拼订房" : "团队订房" }} <template v-if="item.MailingState==1">自行取件</template>
<template v-if="item.MailingState>1">邮寄票券</template>
</div> </div>
</div> </div>
<div class="c9e fz12"> <div class="c9e fz12">
...@@ -339,10 +411,7 @@ ...@@ -339,10 +411,7 @@
</div> </div>
</div> </div>
<div class="c9e fz12"> <div class="c9e fz12">
<span v-if="item.OrderType == 1" <span>客人信息:{{ item.Name }}({{ item.EName }})/{{ item.Mobile }}</span>
>联系人信息:{{ item.ContactName }}/{{ item.ContactNumber }}</span
>
<span v-else>组团号:{{ item.TCNum }}</span>
</div> </div>
<div class="row c9e fz12"> <div class="row c9e fz12">
<span>销售:</span> <span>销售:</span>
...@@ -384,72 +453,24 @@ ...@@ -384,72 +453,24 @@
<div class="mb"> <div class="mb">
<el-table :data="item.DetailList" style="width:100%" border> <el-table :data="item.DetailList" style="width:100%" border>
<el-table-column <el-table-column
label="入住日期" label="景区名称(日期)"
min-width="100" min-width="100"
style="background:#EAEAEA" style="background:#EAEAEA"
> >
<template slot-scope="scope"> <template slot-scope="scope" v-if="scope.$index==0" :row="item.DetailList.length">
{{ scope.row.Date }} <template>
</template> <div>{{ item.CouponsName }}<span style="color: gray;">{{item.UseDate}}</span></div>
</el-table-column>
<el-table-column label="酒店名称" style="background:#EAEAEA">
<template slot-scope="scope">
{{ scope.row.HotelName }}
</template>
</el-table-column>
<el-table-column min-width="240">
<template slot="header" slot-scope="scope">
<span>入驻信息</span>
<el-tooltip
class="item"
effect="dark"
content="按照入住人数*房型单价=房型总价小计(不含稅)"
placement="bottom"
>
<i class="el-icon-question c059FF6 cursor-pointer"></i>
</el-tooltip>
</template>
<template slot-scope="scope">
<div class="RoomList">
<div class="fz12 c9e" v-for="(x, i) in scope.row.RoomList">
<span class="mr"
>{{ x.RoomTypeName }}{{ x.Number }} 人间</span
>
<span class="ml mr">人数:{{ x.PeopleNumber }}</span>
<span class="ml mr">单价:{{ x.Unit_Price }}</span>
<span class="ml"
>小计:{{ x.Money }} {{ scope.row.CurrencyName }}</span
>
</div>
</div>
</template>
</el-table-column>
<el-table-column label="订房号" min-width="100">
<template slot-scope="scope">
<span
v-if="!scope.row.ReserveRoomNo"
class="radius5 bgFAEAED cF1416C px5 fz12"
>未确认</span
>
<template v-else>
<span class="radius5 bgE8F5E9 c20C997 px5 fz12">{{
scope.row.ReserveRoomNo
}}</span>
</template> </template>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="城市税" min-width="60"> <el-table-column label="票券名称" style="background:#EAEAEA">
<template slot-scope="scope"> <template slot-scope="scope">
{{ scope.row.Tax > 0 ? scope.row.Tax.toFixed(2) : "-" }} {{ scope.row.TicketName }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column label="数量" style="background:#EAEAEA">
label="入汤税"
min-width="60"
style="background:#EAEAEA"
>
<template slot-scope="scope"> <template slot-scope="scope">
{{ scope.row.Tax2 > 0 ? scope.row.Tax2.toFixed(2) : "-" }} {{ scope.row.Num }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
...@@ -458,25 +479,7 @@ ...@@ -458,25 +479,7 @@
style="background:#EAEAEA" style="background:#EAEAEA"
> >
<template slot-scope="scope"> <template slot-scope="scope">
{{ scope.row.HotelMoeny.toFixed(2) }} {{ scope.row.Money.toFixed(2) }}
</template>
</el-table-column>
<el-table-column
label="付款方式"
min-width="80"
style="background:#EAEAEA"
>
<template slot-scope="scope">
{{ scope.row.CustomerPayType == 1 ? "到店自付" : "出发前付款" }}
</template>
</el-table-column>
<el-table-column
label="手配費"
min-width="80"
style="background:#EAEAEA"
>
<template slot-scope="scope">
{{ item.HandFittingFee ? item.HandFittingFee : "-" }}
</template> </template>
</el-table-column> </el-table-column>
<template v-slot:append v-if="item.Remark"> <template v-slot:append v-if="item.Remark">
...@@ -484,7 +487,7 @@ ...@@ -484,7 +487,7 @@
</template> </template>
</el-table> </el-table>
</div> </div>
<el-table :data="item.list" style="width:100%" border v-if="item.OrderStatus!=3"> <!-- <el-table :data="item.list" style="width:100%" border v-if="item.OrderStatus!=3">
<el-table-column label="实收" min-width="100"> <el-table-column label="实收" min-width="100">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ scope.row.Income ? scope.row.Income : "-" }}</span> <span>{{ scope.row.Income ? scope.row.Income : "-" }}</span>
...@@ -507,70 +510,30 @@ ...@@ -507,70 +510,30 @@
<span>{{ scope.row.Refund ? scope.row.Refund : "-" }}</span> <span>{{ scope.row.Refund ? scope.row.Refund : "-" }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="手配费应收" min-width="100"> </el-table> -->
<template slot-scope="scope"> <div class="row justify-sb mt mb20">
<span>{{ <div class="column px15 bjFFF3E0 radius5 flex-g pa relative">
scope.row.HandFittingIncome ? scope.row.HandFittingIncome : "-" <div class="fz12 row justify-sb">
}}</span> <span>{{item.MailingState>1?'收货地址:':'自取地址:'}}</span>
<div :class="{'cF1416C':item.MailingState==2,'c02C854':item.MailingState==3}">
<template v-if="item.MailingState==2">
等待配送
</template> </template>
</el-table-column> <template v-if="item.MailingState==3">
<el-table-column label="手配费平台税金" min-width="100"> 已配送
<template slot-scope="scope">
<span>{{
scope.row.HandFittingTax ? scope.row.HandFittingTax : "-"
}}</span>
</template> </template>
</el-table-column>
</el-table>
<div class="row justify-sb mt mb20" v-if="item.OrderStatus!=3">
<div class="row pt20" style="margin-right: 10px;" v-if="item.GuestFileList.length > 0||((item.CustomerPayType==1 || item.CustomerPayType==3)&&pagesTitle)">
<!-- <i class="el-icon-warning cF57A98 fz15 mr"></i> -->
<div class="column">
<!-- <div class="wrap fz12 c9e" v-if="x.CustomerPayType == 2 || x.CustomerPayType == 3">
出发前收款酒店,请您于
<span class="cff9800">{{item.PaymentDate}}</span>
前支付定金,并且于
<span class="cF1416C">{{item.FinalPaymentDate}}</span>
日前支付尾款
</div> -->
<template v-if="item.GuestFileList.length > 0">
<div class="wrap fz12 c9e">
旅客名单
</div> </div>
<div class="row fz12 see-rec mt">
<div class="text-accent q-mr-md c">
{{ item.GuestFileList[0].split("/").at(-1) }}
</div>
<div class="cursor-pointer ml mr rec cf">
<a
class="cf"
style="text-decoration:none"
:href="item.GuestFileList[0]"
>下载</a
>
</div>
<!-- <div class="cursor-pointer see c04C8C8">查看支付方式</div>
<div class="cursor-pointer ml rec cf">提交付费凭证</div> -->
</div> </div>
<div class="row wrap orderNo fz12 py c9e">
<template v-if="item.MailingState==2||item.MailingState==3">
{{ item.MailingAddress}}
</template> </template>
<template v-if="(item.CustomerPayType==1 || item.CustomerPayType==3)&&pagesTitle"> <template v-else>
<div class="fz12 mt c9e"> {{ item.SelffetchAddress?item.SelffetchAddress:'等待客服确认后,才能看到自取地址,我们将会第一时间通过邮件告知您' }}
到店自付酒店,需要您于
<span class="cff9800">{{item.UploadGuestDate}}</span>
</div>
<div class="row fz12 see-rec mt">
<el-upload ref="my-upload" :http-request="uploadFileBtn" v-loading="loading"
:multiple="true"
:show-file-list="false" action="">
<div :class="{'cursor-pointer seeLK c059FF6':!loading,
'cursor-pointer see c04C8C8':loading}"
@click="uploadOrderId=item.OrderId">上车旅客名单</div>
</el-upload>
</div>
</template> </template>
</div> </div>
</div> </div>
<div class="column px15 bgf5 radius5 flex-g pa relative"> <div class="column px15 bgf5 radius5 ml flex-g pa relative">
<div class="fz12">收款单据</div> <div class="fz12">收款单据</div>
<div class="row wrap orderNo fz12 py c3FC4FF"> <div class="row wrap orderNo fz12 py c3FC4FF">
<span <span
...@@ -648,75 +611,19 @@ ...@@ -648,75 +611,19 @@
></i> ></i>
</el-tooltip> </el-tooltip>
</div> </div>
<div class="column px15 bgf5 radius5 ml flex-g pa relative">
<div class="fz12">手配费单据</div>
<div class="row wrap orderNo fz12 py c3FC4FF">
<span
class="cursor-pointer radius5 bgD9F3FF mr px5"
v-for="(x, i) in item.HandFittingFinanceList"
@click="openDetails(x)"
>{{ x.FrID }}</span
>
<span
v-if="item.HandFittingFinanceList.length == 0"
class="c9e fz12"
>
暂无手配费单据
</span>
</div>
<el-tooltip
v-if="item.OrderStatus == 2&&pagesTitle!='销售'"
class="item"
effect="dark"
content="制单"
placement="top"
>
<i
class="absolute right20 bottom20 el-icon-circle-plus cursor-pointer c059FF6"
@click="makeAdocument(item, index, 1, 'Hand')"
></i>
</el-tooltip>
</div>
<div class="column justify-c px15 bgf5 radius5 ml flex-g pa20"> <div class="column justify-c px15 bgf5 radius5 ml flex-g pa20">
<div class="row-c justify-sb borderD pb5"> <div class="row-c justify-sb pb5">
<span class="fz12 c9e">订单总金额</span> <span class="fz12 c9e">订单总金额</span>
<div class="ml"> <div class="ml">
<span class="fz12 ml"> <span class="fz12 ml">
<!-- ¥ --> <!-- ¥ -->
</span> </span>
<span class="fz15 fbold">{{ item.Money.toFixed(2) }}</span> <span class="fz15 fbold">{{ item.Money.toFixed(2) }}</span>
<!-- <span class="fz15">{{ item.CurrencyName }}</span> -->
</div>
</div>
<div
class="row-c justify-sb borderD py5"
v-if="(item.CustomerPayType == 1 || item.CustomerPayType == 3)&&pagesTitle!='销售'"
>
<span class="fz12 c9e">到店自付</span>
<div class="ml">
<span class="fz10 ml">
<!-- ¥ -->
</span>
<span class="fz14">{{ item.SelfPayMoney.toFixed(2) }}</span>
<!-- <span class="fz14">{{ item.CurrencyName }}</span> -->
</div>
</div>
<div
class="row-c justify-sb py5"
v-if="item.CustomerPayType == 2 || item.CustomerPayType == 3"
>
<span class="fz12 c9e">出发前付款</span>
<div class="ml">
<span class="fz10 ml">
<!-- ¥ -->
</span>
<span class="fz14">{{ item.BeforeMoney.toFixed(2) }}</span>
<!-- <span class="fz14">{{ item.CurrencyName }}</span> -->
</div> </div>
</div> </div>
</div> </div>
<div <div
v-if="item.OrderStatus > 3 || item.OrderStatus < 3" v-if="item.OrderStatus > 0 && item.OrderStatus < 4"
class="column justify-c px15 bgE8F5E9 radius5 ml fz12 orderop pa20 flex-s" class="column justify-c px15 bgE8F5E9 radius5 ml fz12 orderop pa20 flex-s"
> >
<div <div
...@@ -724,8 +631,7 @@ ...@@ -724,8 +631,7 @@
item.OrderStatus == 1 && item.OrderStatus == 1 &&
item.IncomeList.length == 0 && item.IncomeList.length == 0 &&
item.RefundList.length == 0 && item.RefundList.length == 0 &&
item.CostList.length == 0 && item.CostList.length == 0
item.HandFittingFinanceList.length == 0
" "
class="row-c cursor-pointer radius5 cancel py5" class="row-c cursor-pointer radius5 cancel py5"
@click="clickRightButtom(item, 0)" @click="clickRightButtom(item, 0)"
...@@ -742,40 +648,44 @@ ...@@ -742,40 +648,44 @@
<span class="c20C997">确认订单</span> <span class="c20C997">确认订单</span>
</div> </div>
<div <div
v-if="item.OrderStatus == 2&&item.MailingState == 2&&pagesTitle!='销售'"
class="row-c cursor-pointer radius5 cancel py5"
@click="clickRightButtom(item, 2)"
>
<i v-loading="loading1"></i>
<span class="cF1416C">邮寄</span>
</div>
<div
v-if="item.OrderStatus == 2&&item.MailingState == 1&&pagesTitle!='销售'"
class="row-c cursor-pointer radius5 cancel py5"
@click="clickRightButtom(item, 3)"
>
<i v-loading="loading1"></i>
<span class="cF1416C">设置自提地址</span>
</div>
<!-- <div
v-if="item.OrderStatus == 2 || item.OrderStatus == 4" v-if="item.OrderStatus == 2 || item.OrderStatus == 4"
class="row-c cursor-pointer radius5 change py5" class="row-c cursor-pointer radius5 change py5"
@click="goRoomDetails(item, '订房详情')" @click="goRoomDetails(item, '订房详情')"
> >
<span class="c059FF6">明细/编辑</span> <span class="c059FF6">明细/编辑</span>
</div> </div> -->
<div <div
v-if="item.OrderStatus == 1&&pagesTitle=='销售'" v-if="item.OrderStatus == 1&&pagesTitle=='销售'"
class="row-c cursor-pointer radius5 change py5" class="row-c cursor-pointer radius5 change py5"
@click="goRoomDetails(item, '酒店预定变更')" @click="goRoomDetails(item, '门票预定变更')"
> >
<span class="c059FF6">订单变更</span> <span class="c059FF6">订单变更</span>
</div> </div>
<div <div
v-if="item.OrderStatus == 2" v-if="item.OrderStatus > 1"
class="row-c cursor-pointer radius5 change1 py5" class="row-c cursor-pointer radius5 change1 py5"
@click="clickRightButtom(item, 2)" @click="clickRightButtom(item, 4)"
> >
<i v-loading="loading2"></i> <i v-loading="loading2"></i>
<span class="c20C997">收损</span> <span class="c20C997">收损</span>
</div> </div>
</div> </div>
<!-- <div v-if="item.OrderStatus==2" class="column-jac px15 bgE8F5E9 radius5 ml fz12 pa20 flex-s c20C997">
<div class="mb5">已支付</div>
<div>
<span class="fbold fz14">{{item.Income}}</span>
<span>{{item.CurrencyName}}</span>
</div>
<div v-if="item.OrderStatus==2" class="orderop">
<div class="row-c cursor-pointer radius5 change mt mb" @click="goRoomDetails(item,'订房详情')">
<span class="c059FF6">明细/编辑</span>
</div>
</div>
</div> -->
</div> </div>
<div class="mt mb20 bgf5 pa15 row-c" v-if="item.CancelRemark"> <div class="mt mb20 bgf5 pa15 row-c" v-if="item.CancelRemark">
<div style="font-size:16px;font-weight:bold;font-family: pingfangR;">取消理由:</div> <div style="font-size:16px;font-weight:bold;font-family: pingfangR;">取消理由:</div>
...@@ -788,7 +698,7 @@ ...@@ -788,7 +698,7 @@
<el-dialog <el-dialog
custom-class="w400" custom-class="w400"
title="修改收损金额" :title="typeState==3?'设置自提地址':'设置收损金额'"
:visible.sync="outerVisible" :visible.sync="outerVisible"
> >
<div <div
...@@ -797,7 +707,19 @@ ...@@ -797,7 +707,19 @@
> >
<el-form label-width="80px" :model="msg" :rules="rules" ref="msg"> <el-form label-width="80px" :model="msg" :rules="rules" ref="msg">
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="20"> <!-- <el-col :span="20">
<el-form-item label="订单状态" prop="State">
<el-select v-model="msg.State" class="w110 HworkInput">
<el-option v-for="item in OrderStatusType" :key="item.ID" :label="item.Name" :value="item.ID"></el-option>
</el-select>
</el-form-item>
</el-col> -->
<el-col :span="20" v-if="typeState==3">
<el-form-item label="自提地址" prop="SelffetchAddress">
<el-input class="w200" v-model="msg.SelffetchAddress"></el-input>
</el-form-item>
</el-col>
<el-col :span="20" v-if="typeState==4">
<el-form-item label="收损金额" prop="LossMoney"> <el-form-item label="收损金额" prop="LossMoney">
<el-input-number <el-input-number
class="w200" class="w200"
...@@ -859,6 +781,93 @@ ...@@ -859,6 +781,93 @@
</el-row> </el-row>
</div> </div>
</el-dialog> </el-dialog>
<!-- 变更订单 -->
<el-dialog
custom-class="w800"
title="变更订单"
:visible.sync="ChangeOrderDialog"
>
<div style="padding-bottom:20px">
<div class="flexOne-form-bj">
<h3>取票方式</h3>
<div class="flexOne-type">
<b>取票方式:</b>
<div>
<el-radio v-model="msgParameter.MailingState" label="1">自行取票</el-radio>
<el-radio v-model="msgParameter.MailingState" label="2" >邮寄票券</el-radio>
</div>
</div>
<div class="flexOne-description">
<b>自行取票说明</b>
<p>自行前往指定位置取票,當您完成付款後我們將通過郵件通知您取票的門票訊息</p>
</div>
<div class="flexOne-infor-box">
<b>客人讯息 邮寄讯息</b>
<el-form label-width="80px" :model="msgParameter" :rules="rules2" ref="msgParameter">
<div class="infor-list">
<!-- <div class="list-title">
<li>中文姓名</li>
<li>英文姓名</li>
<li>性别</li>
<li>联络电话</li>
<li>收件地址</li>
</div> -->
</span>
<div class="list-centent" :class="{'active':msg.MailingState==1}">
<li>
<el-form-item label="中文名" prop="Name">
<el-input v-model="msgParameter.Name" placeholder="请输入名称"/>
</el-form-item>
</li>
<li>
<el-form-item label="英文名" prop="EName">
<el-input v-model="msgParameter.EName" placeholder="请输入英文名"/>
</el-form-item>
</li>
<li>
<el-form-item label="电话" prop="Mobile">
<el-input type="Number" v-model="msgParameter.Mobile" placeholder="请输入电话"/>
</el-form-item>
</li>
<li v-if="msgParameter.MailingState==2">
<el-form-item label="地址" prop="MailingAddress">
<el-input style="border-radius: 3px;" v-model="msgParameter.MailingAddress" placeholder="请输入邮寄地址"/>
</el-form-item>
</li>
<li class="bottom">
<el-form-item label="性别" prop="Sex">
<el-radio v-model="msgParameter.Sex" label="1"></el-radio>
<el-radio v-model="msgParameter.Sex" label="2" ></el-radio>
</el-form-item>
</li>
</div>
</div>
</el-form>
<div style="margin-top: 20px;">
<el-input style="width: 100%;" type="textarea" :autosize="{ minRows: 2, maxRows: 4}"
v-model="msgParameter.Remark" placeholder="订单备注"/>
</div>
</div>
</div>
<el-row :gutter="20" style="margin-top: 20px;">
<el-col :span="24" style="text-align: right;">
<input
type="button"
class="normalBtn"
value="取消"
@click="ChangeOrderDialog=false"
/>
<input
type="button"
class="hollowFixedBtn"
value="确定"
@click="submit2"
/>
</el-col>
</el-row>
</div>
</el-dialog>
<!-- <div class="shezhi column"> <!-- <div class="shezhi column">
<el-input v-model="msg.LossMoney":placeholder="$t('pub.pleaseImport')"></el-input> <el-input v-model="msg.LossMoney":placeholder="$t('pub.pleaseImport')"></el-input>
<div> <div>
...@@ -876,6 +885,7 @@ ...@@ -876,6 +885,7 @@
loading0: false, loading0: false,
loading1: false, loading1: false,
loading2: false, loading2: false,
loading3: false,
BillMakingMsg: { BillMakingMsg: {
// PeroidsId: null, // PeroidsId: null,
// Type: null, // Type: null,
...@@ -887,10 +897,66 @@ ...@@ -887,10 +897,66 @@
userInfo: {}, userInfo: {},
msg: { msg: {
OrderId: "", OrderId: "",
LossMoney: 0 LossMoney: 0,
State: '',//状态 1确认 2已邮寄 3设置自提 4收损
SelffetchAddress: ''
},
msgParameter: {
IsUpdateMailing: 1,
OrderId: 0,
Money: 0.0,
Remark: '',
MailingState: '1',//邮寄状态 1自取 2邮寄
MailingAddress: '',//MailingState =2 填写邮寄
UseDate:'',//门票日期
Name:'',
EName:'',
Sex: '1',//1男2女
Birthday: '',
Mobile:'',
CouponsId:'',//景点id
DetailList:[],
},
rules2:{
Name: [{
required: true,
message: '请输入中文名',
trigger: 'blur'
}],
EName: [{
required: true,
message: '请输入英文名',
trigger: 'blur'
}],
Mobile: [
{ required: true, message: "请输入联系电话", trigger: "blur" },
{
pattern: this.$commonUtils.Regex.el_ISphone,
message: "请输入正确的电话"
}
],
MailingAddress: [{
required: true,
message: '请输入邮寄地址',
trigger: 'blur'
}],
}, },
outerVisible: false, outerVisible: false,
rules: { rules: {
State: [
{
required: true,
message: "请选择订单状态",
trigger: "change"
}
],
SelffetchAddress: [
{
required: true,
message: "请输入自提地址",
trigger: "blur"
}
],
LossMoney: [ LossMoney: [
{ {
required: true, required: true,
...@@ -905,7 +971,17 @@ ...@@ -905,7 +971,17 @@
uploadOrderId: 0, uploadOrderId: 0,
loading: false, loading: false,
fileList:[], fileList:[],
GuestFile: '' GuestFile: '',
ChangeOrderDialog: false,
types: [],
OrderStatusType:[
{Name: this.$t('OrderList.orderStatus.apply'),ID:'1'},
{Name: this.$t('OrderList.orderStatus.check'),ID:'2'},
{Name: this.$t('OrderList.orderStatus.cancel'),ID:'3'},
{Name: this.$t('OrderList.orderStatus.sun'),ID:'4'},
],
items: null,
typeState: ''
}; };
}, },
watch: { watch: {
...@@ -919,6 +995,66 @@ ...@@ -919,6 +995,66 @@
} }
}, },
methods: { methods: {
submit2(){
if(this.loading3) return
this.$refs['msgParameter'].validate((valid) => {
if (valid) {
this.setFormMsg2()
} else {
return false;
}
});
},
setFormMsg2(){
if(this.msgParameter.MailingState=='1'){
this.msgParameter.MailingAddress = ''
}
this.msgParameter.DetailList = []
this.types.forEach(x=>{
let y = {
TicketType: x.TicketCouponsType,
TicketName: x.TicketName,
Unit_Price: x.B2BPrice,
Num: x.num,
Money: x.B2BPrice*x.num,
TicketId: x.TicketID
}
this.msgParameter.DetailList.push(y)
})
let m = {
IsUpdateMailing: 1,
OrderId: this.msgParameter.OrderId,
CouponsId: this.msgParameter.CouponsId,
Money: this.msgParameter.Money,
UseDate: this.msgParameter.UseDate,
Birthday: this.msgParameter.Birthday,
DetailList: this.msgParameter.DetailList,
MailingState: this.msgParameter.MailingState,//邮寄状态 1自取 2邮寄
MailingAddress: this.msgParameter.MailingAddress,//MailingState =2 填写邮寄
Name: this.msgParameter.Name,
EName: this.msgParameter.EName,
Sex: this.msgParameter.Sex,//1男2女
Mobile: this.msgParameter.Mobile,
Remark: this.msgParameter.Remark,
}
this.loading3 = true
this.apipost("ticket_post_SetSaleTicketOrder", m,
res => {
this.loading3 = false
if (res.data.resultCode == 1) {
this.Success('变更成功');
this.$emit('success')
this.ChangeOrderDialog = false
} else {
this.Error('下单失败')
}
},
err => {
this.loading3 = false
this.Error(err.message)
});
},
uploadFileBtn(file){ uploadFileBtn(file){
let ft = file.file.name.substring(file.file.name.lastIndexOf('.') + 1, file.file.name.length).toUpperCase(); let ft = file.file.name.substring(file.file.name.lastIndexOf('.') + 1, file.file.name.length).toUpperCase();
let typeOk = false; let typeOk = false;
...@@ -975,7 +1111,7 @@ ...@@ -975,7 +1111,7 @@
if (name == "Hand") { if (name == "Hand") {
this.BillMakingMsg.OtherType = 62; this.BillMakingMsg.OtherType = 62;
} else { } else {
this.BillMakingMsg.OtherType = 61; this.BillMakingMsg.OtherType = 66;
} }
let text = ""; let text = "";
let query = {}; let query = {};
...@@ -1013,40 +1149,42 @@ ...@@ -1013,40 +1149,42 @@
tab: title tab: title
} }
}); });
}else{//变更酒店预定 }else{//变更门票预定
path = "singleProductModifyHotelOrder"; this.msgParameter = JSON.parse(JSON.stringify(obj))
this.$router.push({ this.msgParameter.MailingState = JSON.stringify(this.msgParameter.MailingState)
name: path, this.msgParameter.Sex = JSON.stringify(this.msgParameter.Sex)
query: { this.types = JSON.parse(JSON.stringify(obj.DetailList))
id: obj.OrderId, this.ChangeOrderDialog = true
pagesTitle: this.pagesTitle,
blank: "y",
tab: title
}
});
} }
}, },
clickRightButtom(item, type) { clickRightButtom(item, type) {
// 0取消订单 1确认订单 // 0取消订单 1确认订单 2已邮寄 3设置自提地址 4收损
this.msg.OrderId = item.OrderId;
this.items = item
this.typeState = type
if (type == 0) { if (type == 0) {
if (!this.loading0) { if (!this.loading0) {
this.cancelOrderId = item.OrderId this.cancelOrderId = item.OrderId
// 地接 销售 OP // 销售 OP
if(this.pagesTitle!='销售'){
this.cancelOrderDialog = true; this.cancelOrderDialog = true;
}else{
this.cancelOrder()
}
} }
} else if (type == 1) { } else if (type == 1) {
if (!this.loading1) { if (!this.loading1) {
this.confirmFun(item); this.confirmFun(item, type);
} }
} else if (type == 2) { } else if (type == 2) {
if (!this.loading1) {
this.confirmFun(item, type);
}
} else if (type == 3) {
if (!this.loading1) {
this.outerVisible = true;
// this.confirmFun(item, type);
}
} else if (type == 4) {
if (!this.loading2) { if (!this.loading2) {
this.outerVisible = true; this.outerVisible = true;
this.msg.OrderId = item.OrderId; // this.msg.OrderId = item.OrderId;
this.msg.LossMoney = item.LossMoney ? item.LossMoney : 0; this.msg.LossMoney = item.LossMoney ? item.LossMoney : 0;
} }
} }
...@@ -1061,8 +1199,10 @@ ...@@ -1061,8 +1199,10 @@
type: 'warning' type: 'warning'
}).then(() => { }).then(() => {
this.loading0 = true this.loading0 = true
this.apipost("dict_post_CancelSaleCustomerOrder", { this.apipost("ticket_post_CancelSaleTicketOrder", {
OrderId: this.cancelOrderId OrderId: this.cancelOrderId,
IsOPCancel: this.pagesTitle!='销售'?1:0,
Remark: this.cancelRemark
}, },
res => { res => {
this.loading0= false this.loading0= false
...@@ -1102,10 +1242,11 @@ ...@@ -1102,10 +1242,11 @@
if (this.loading0) return; if (this.loading0) return;
this.loading0 = true this.loading0 = true
this.apipost( this.apipost(
"dict_post_CancelAdminCustomerOrder", "ticket_post_CancelSaleTicketOrder",
{ {
OrderId: this.cancelOrderId, OrderId: this.cancelOrderId,
CancelRemark: this.cancelRemark IsOPCancel: this.pagesTitle!='销售'?1:0,
Remark: this.cancelRemark
}, },
res => { res => {
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
...@@ -1127,7 +1268,14 @@ ...@@ -1127,7 +1268,14 @@
}, },
saveUpdate() { saveUpdate() {
this.$confirm("是否确认设置收损?", "提示", { let text
if(this.typeState==3){
text = '是否确认设置自取地址?'
}
if(this.typeState==4){
text = '是否确认设置收损?'
}
this.$confirm(text, "提示", {
confirmButtonText: "确定", confirmButtonText: "确定",
cancelButtonText: "取消", cancelButtonText: "取消",
type: "warning" type: "warning"
...@@ -1135,8 +1283,13 @@ ...@@ -1135,8 +1283,13 @@
.then(() => { .then(() => {
this.loading2 = true; this.loading2 = true;
this.apipost( this.apipost(
"dict_post_SetCustomerOrderLoss", "ticket_post_SetSaleTicketOrderState",
this.msg, {
OrderId: this.msg.OrderId,
State: this.typeState,
SelffetchAddress: this.typeState==3?this.msg.SelffetchAddress:'',
LossMoney: this.typeState==4?this.msg.LossMoney:'',
},
res => { res => {
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
this.Success(res.data.message); this.Success(res.data.message);
...@@ -1154,8 +1307,15 @@ ...@@ -1154,8 +1307,15 @@
}) })
.catch(() => {}); .catch(() => {});
}, },
confirmFun(item) { confirmFun(item,type) {
this.$confirm("是否确认订单?", "提示", { let text
if(type==1){
text = '是否确认订单?'
}
if(type==2){
text = '是否确认邮寄?'
}
this.$confirm(text, "提示", {
confirmButtonText: "确定", confirmButtonText: "确定",
cancelButtonText: "取消", cancelButtonText: "取消",
type: "warning" type: "warning"
...@@ -1163,9 +1323,12 @@ ...@@ -1163,9 +1323,12 @@
.then(() => { .then(() => {
this.loading1 = true; this.loading1 = true;
this.apipost( this.apipost(
"dict_post_ConfirmAdminCustomerOrder", "ticket_post_SetSaleTicketOrderState",
{ {
OrderId: item.OrderId OrderId: item.OrderId,
State: type,
SelffetchAddress: type==3?this.msg.SelffetchAddress:'',
LossMoney: type==4?this.msg.LossMoney:'',
}, },
res => { res => {
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
......
...@@ -43,25 +43,39 @@ ...@@ -43,25 +43,39 @@
</li> </li>
<li> <li>
<span><em>{{$t('OrderList.search.orderNum')}}</em> <span><em>{{$t('OrderList.search.orderNum')}}</em>
<el-input type="Number" v-model="msg.OrderNo" :placeholder="$t('OrderList.search.orderNum')" class="w200"/> <el-input clearable type="Number" v-model="msg.OrderNo" :placeholder="$t('OrderList.search.orderNum')" class="w200"/>
</span> </span>
</li> </li>
<li> <li>
<span><em>订单ID</em> <span><em>订单ID</em>
<el-input type="Number" v-model="msg.OrderId" placeholder="订单ID" class="w200"/> <el-input clearable type="Number" v-model="msg.OrderId" placeholder="订单ID" class="w200"/>
</span> </span>
</li> </li>
<li> <li>
<span><em>客人名称</em>
<el-input clearable v-model="msg.Name" placeholder="客人名称" class="w200"/>
</span>
</li>
<li>
<span><em>景区名称</em>
<el-input clearable v-model="msg.CouponsName" placeholder="景区名称" class="w200"/>
</span>
</li>
<li>
<span><em>电话</em>
<el-input clearable v-model="msg.ContactNumber" placeholder="电话" class="w200"/>
</span>
</li>
<!-- <li>
<span> <span>
<em>{{$t('hotel.hotel')}}</em> <em>{{$t('hotel.hotel')}}</em>
<!-- multiple_input w300 multiple collapse-tags-->
<el-select v-model="msg.HotelId" :placeholder="$t('pub.pleaseSel')" style="height: 34px;" <el-select v-model="msg.HotelId" :placeholder="$t('pub.pleaseSel')" style="height: 34px;"
filterable> filterable>
<el-option :key="0" :value="0" :label="$t('OrderList.search.allHotel')"></el-option> <el-option :key="0" :value="0" :label="$t('OrderList.search.allHotel')"></el-option>
<el-option v-for="item in HotelList" :key="item.ID" :label="item.Name" :value="item.ID"></el-option> <el-option v-for="item in HotelList" :key="item.ID" :label="item.Name" :value="item.ID"></el-option>
</el-select> </el-select>
</span> </span>
</li> </li> -->
<li> <li>
<span> <span>
<em>{{$t('OrderList.search.daterange')}}</em> <em>{{$t('OrderList.search.daterange')}}</em>
...@@ -76,32 +90,31 @@ ...@@ -76,32 +90,31 @@
</el-date-picker> </el-date-picker>
</span> </span>
</li> </li>
<!-- <li>
<span><em>{{$t('OrderList.search.orderId')}}</em>
<el-input type="Number" v-model="msg.orderId" :placeholder="$t('OrderList.search.orderId')" class="w200"/>
</span>
</li> -->
<li> <li>
<span> <span>
<em>{{$t('OrderList.search.roomType')}}</em> <em>门票时间</em>
<el-select v-model="msg.RoomType" :placeholder="$t('OrderList.rooms.roomType')" class="w110 HworkInput"> <el-date-picker
<el-option :key="0" :value="0" :label="$t('OrderList.rooms.default')"></el-option> style="height: 34px;"
<el-option v-for="item in roomType" :key="item.ID" :label="item.Name" :value="item.ID"></el-option> value-format="yyyy-MM-dd"
</el-select> v-model="DatelistUse"
type="daterange"
:range-separator="$t('OrderList.zhi')"
:start-placeholder="$t('OrderList.star')"
:end-placeholder="$t('OrderList.end')" @change="getDates">
</el-date-picker>
</span> </span>
</li> </li>
<!-- <li> <li>
<span> <span>
<em>{{$t('OrderList.search.orderType')}}</em> <em>取券方式</em>
<el-select v-model="msg.orderType" :placeholder="$t('OrderList.search.orderType')" class="w110 HworkInput"> <el-select v-model="msg.MailingState" placeholder="取券方式" class="w110 HworkInput">
<el-option :key="0" :value="0" :label="$t('OrderList.orderType.default')"></el-option> <el-option :key="-1" :value="-1" label="所有类型"></el-option>
<el-option v-for="item in orderType" :key="item.ID" :label="item.Name" :value="item.ID"></el-option> <el-option v-for="item in MailingStateType" :key="item.ID" :label="item.Name" :value="item.ID"></el-option>
</el-select> </el-select>
</span> </span>
</li> --> </li>
<li> <li>
<input type="button" class="normalBtn" :value="$t('pub.searchBtn')" @click="msg.pageIndex=1,currentPage=1,GetList()" /> <input type="button" class="normalBtn" :value="$t('pub.searchBtn')" @click="msg.pageIndex=1,currentPage=1,GetList()" />
<!-- <input type="button" class="normalBtn" :value="$t('adm.adm_download')" @click="DownLoadHotelWork()" /> -->
</li> </li>
</ul> </ul>
</div> </div>
...@@ -132,15 +145,17 @@ ...@@ -132,15 +145,17 @@
msg:{ msg:{
pageIndex: 1, pageIndex: 1,
pageSize: 5, pageSize: 5,
HotelId: 0, Name: '',
RoomType: 0,
StartTime: '',//new Date().Format("yyyy-MM-dd") StartTime: '',//new Date().Format("yyyy-MM-dd")
EndTime: '',//this.setEdate() EndTime: '',//this.setEdate()
UseSTime: '',
UseETime: '',
OrderStatus: 0, OrderStatus: 0,
OrderNo: '', OrderNo: '',
OrderId: '' OrderId: '',
// RoomType: 0, MailingState: -1,
// orderType: 0 CouponsName: '',//景区名称
ContactNumber: '',//电话
}, },
total: 0, total: 0,
currentPage: 1, currentPage: 1,
...@@ -150,18 +165,16 @@ ...@@ -150,18 +165,16 @@
{Name: this.$t('OrderList.orderStatus.cancel'),ID:'3'}, {Name: this.$t('OrderList.orderStatus.cancel'),ID:'3'},
{Name: this.$t('OrderList.orderStatus.sun'),ID:'4'}, {Name: this.$t('OrderList.orderStatus.sun'),ID:'4'},
], ],
roomType:[ MailingStateType:[
{Name: this.$t('OrderList.rooms.normal'),ID:'1'}, {Name: '自行取票',ID:'1'},
{Name: this.$t('OrderList.rooms.big'),ID:'2'}, {Name: '邮寄票券',ID:'2'},
{Name: this.$t('OrderList.rooms.sing'),ID:'3'},
{Name: this.$t('OrderList.rooms.three'),ID:'4'},
{Name: this.$t('OrderList.rooms.driver'),ID:'5'},
], ],
orderType:[ orderType:[
{Name: this.$t('OrderList.orderType.tour'),ID:'1'}, {Name: this.$t('OrderList.orderType.tour'),ID:'1'},
{Name: this.$t('OrderList.orderType.guest'),ID:'2'}, {Name: this.$t('OrderList.orderType.guest'),ID:'2'},
], ],
Datelist:'' Datelist:'',
DatelistUse:'',
}; };
}, },
watch: { watch: {
...@@ -170,6 +183,14 @@ ...@@ -170,6 +183,14 @@
} }
}, },
methods: { methods: {
getDatesUse(){
console.log(this.Datelist)
if(this.DatelistUse[0]){
this.msg.UseSTime = this.DatelistUse[0]
}if(this.DatelistUse[1]){
this.msg.UseETime = this.DatelistUse[1]
}
},
getDates(){ getDates(){
console.log(this.Datelist) console.log(this.Datelist)
if(this.Datelist[0]){ if(this.Datelist[0]){
...@@ -224,58 +245,26 @@ ...@@ -224,58 +245,26 @@
}, },
//获取酒店订单列表 //获取酒店订单列表
GetList() { GetList() {
// if(this.msg.StartTime==''){
// this.msg.StartTime = this.getyMDOne()
// }
// if(this.msg.EndTime==''){
// this.msg.EndTime = this.getyMDTwo()
// }
this.loading = true this.loading = true
let url let url
// 销售 OP // 销售 OP
if(this.pagesTitle=='销售'){ if(this.pagesTitle=='销售'){
url = "dict_post_GetMySaleCustomerOrderPageList" url = "ticket_post_GetMySaleTicketOrderPageList"
}else{ }else{
url = "dict_post_GetAdminCustomerOrderPageList" url = "ticket_post_GetAdminTicketOrderPageList"
} }
this.apipost(url, this.msg, this.apipost(url, this.msg,
res => { res => {
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
let data = res.data.data.pageData let data = res.data.data.pageData
let addList = function(arr){ data.forEach((x) => {
arr.forEach(x=>{ x.Money = 0
x.list = [] x.DetailList.forEach((y)=>{
// x.Tax = 0 x.Money+=y.Money
// x.Tax2 = 0
})
}
addList(data)
data.forEach(item => {
item.DetailList.forEach(x=>{
x.Number = 0
x.PeopleNumber = 0
x.RoomList.forEach(r=>{
x.Number+=r.Number
x.PeopleNumber+=r.PeopleNumber
})
x.Tax = x.TaxesPrice*x.Number
x.Tax2 = x.PriceInTangTax*x.PeopleNumber
x.Money = x.HotelMoeny+x.TaxesPrice
}) })
}) })
this.OrderList = data; this.OrderList = data;
this.OrderList.forEach(item=>{
let datas = {
Income: item.Income,
CostMoney: item.CostMoney,
PlatformTax: item.PlatformTax,
Refund: item.Refund,
HandFittingIncome: item.HandFittingIncome,
HandFittingTax: item.HandFittingTax
}
item.list.push(datas)
})
this.total = res.data.data.count; this.total = res.data.data.count;
}else { }else {
this.Error(res.data.message); this.Error(res.data.message);
......
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