Commit 8a0c9f68 authored by youjie's avatar youjie

Merge branch 'master' of http://gitlab.oytour.com/luochao/bigwood

parents 461e7b2b b211c236
......@@ -13,12 +13,16 @@ class travelService {
}
// 获取包机结算列表
static async payList(params:any):Promise<HttpResponse>{
return request('travelteam_GetTravelTeamPartnerPage',params)
return request('sellorder_post_GetTravelTeamSettlePicList',params)
}
// 获取包机订单分页列表
static async getOrderList(params:any):Promise<HttpResponse>{
return request('sellorder_post_GetTravelTeamOrderPicList',params)
}
// 获取订单状态列表
static async getOrderStateList(params:any):Promise<HttpResponse>{
return request('sellorder_post_GetSellOrderStatusEnumList',params)
}
}
export default travelService
......@@ -358,7 +358,7 @@ export default {
travel: {
first: '包机',
second: '包机服务',
three: '包机结算'
three: '包机订单'
}
},
login: {
......
<style>
<style scoped>
.none {
text-align: center;
margin: 20px;
color: #666;
font-size: 16px;
}
</style>
<template>
<div>
<div class="q-pa-md">
<div class="rounded-borders bg-white row items-center q-pa-md">
<q-field :class="$q.platform.is.desktop ? '' : 'q-mb-md'" stack-label :label="$t('daterange')" standout class="q-ml-lg col-2" style="min-width: 190px" dense>
......@@ -15,7 +21,7 @@
<div class="col"></div>
<q-btn color="primary" unelevated :label="$t('query')" @click="setQueryHandler"/>
</div>
<div v-for="item in orders" :key="item.id">
<!-- <div class="row">
<div>合作伙伴:<span>{{item.ContactName}}</span></div>
<div>已入名单人数:<span>{{item.EntGuestNum}}</span></div>
......@@ -29,7 +35,38 @@
<div>折扣金额:<span>{{item.DiscountMoney}}</span></div>
<div>大红包抵扣金额:<span>{{item.RedEnvelopeMoney}}</span></div>
<div>代收总金额:<span>{{item.DueInMoney}}</span></div>
<div>利润(先给这个字段,规则还没有):<span>{{item.CommissionRate}}</span></div></div>
<div>利润:<span>{{item.CommissionRate}}</span></div></div>
</div> -->
<div class="row q-py-md">
<div class="col-1">合作伙伴</div>
<div class="col-1">已入名单人数</div>
<div class="col-1">报名总人数</div>
<div class="col-1">应收总金额</div>
<div class="col-1">退款金额</div>
<div class="col-1">平台税金</div>
<div class="col-1">实收</div>
<div class="col-1">在途金额</div>
<div class="col-1">折扣金额</div>
<div class="col-1">大红包抵扣金额</div>
<div class="col-1">代收总金额</div>
<div class="col-1">利润</div>
</div>
<div class="row q-py-md" v-for="item in orders" :key="item.id">
<div class="col-1"><span>{{item.ContactName}}</span></div>
<div class="col-1 text-center"><span>{{item.EntGuestNum}}</span></div>
<div class="col-1"><span>{{item.GuestNum}}</span></div>
<div class="col-1"><span>{{item.PreferPrice}}</span></div>
<div class="col-1"><span>{{item.Refund}}</span></div>
<div class="col-1"><span>{{item.PlatformTax}}</span></div>
<div class="col-1"><span>{{item.Income}}</span></div>
<div class="col-1"><span>{{item.ZaiTuMoney}}</span></div>
<div class="col-1"><span>{{item.DiscountMoney}}</span></div>
<div class="col-1"><span>{{item.RedEnvelopeMoney}}</span></div>
<div class="col-1"><span>{{item.DueInMoney}}</span></div>
<div class="col-1"><span>{{item.CommissionRate}}</span></div>
</div>
<div v-if="!orders.length" class="none">暂无数据</div>
</div>
</template>
<script lang="ts">
......@@ -48,9 +85,10 @@ export default defineComponent({
const dateRangeFormat = ref(`${dateRange.from} - ${dateRange.to}`)
const {query, params} = useRoute()
const search = {
GTeamName: '',
SelectEndDate: '',
SelectStartDate: '',
TCID: query.id,
// GTeamName: '',
// SelectEndDate: '',
// SelectStartDate: '',
}
const data = reactive({
......@@ -69,19 +107,19 @@ export default defineComponent({
loading: false,
});
search.SelectStartDate = dateRange.from
search.SelectEndDate = dateRange.to
// search.SelectStartDate = dateRange.from
// search.SelectEndDate = dateRange.to
const methods = {
setQueryHandler() {
data.pages.pageIndex = 1
this.initOrders()
},
dateRangeHandler(e: any) {
search.SelectStartDate = `${e.from.year}/${e.from.month}/${e.from.day}`
search.SelectEndDate = `${e.to.year}/${e.to.month}/${e.to.day} `
dateRangeFormat.value = `${search.SelectStartDate} - ${search.SelectEndDate} `
if (qDateProxy.value) qDateProxy.value.hide()
},
// dateRangeHandler(e: any) {
// search.SelectStartDate = `${e.from.year}/${e.from.month}/${e.from.day}`
// search.SelectEndDate = `${e.to.year}/${e.to.month}/${e.to.day} `
// dateRangeFormat.value = `${search.SelectStartDate} - ${search.SelectEndDate} `
// if (qDateProxy.value) qDateProxy.value.hide()
// },
optionsFn(cd: any) {
return cd >= date.formatDate(date.addToDate(new Date(), { days: 20 }), 'YYYY/MM/DD')
},
......
......@@ -12,34 +12,248 @@
<i class="iconfont icon-biaoti1"></i><span>包机信息</span>
</div>
<div>
<span>{{ x.orderId }}</span>
订单编号<span>{{ x.orderId }}</span>
</div>
<div>
<span>{{ x.orderId }}</span>
团号:<span>{{ x.tcnum }}</span>
</div>
<!-- <div>
<span>{{ x.tcid }}</span>
</div> -->
<!-- <div>
状态id:<span>{{ x.status }}</span>
</div>
<div>
订单状态:<span>{{ x.orderState }}</span>
</div> -->
<div>
订单状态:<span>{{ x.statsstr }}</span>
</div>
<!-- <div>
<span>{{ x.isEnd }}</span>
</div> -->
<div>
是否入定金单 1是 2否:<span>{{ x.isHaveFinance }}</span>
</div>
<!-- <div>
<span>{{ x.zaiTuMoney }}</span>
</div>
<div>
<span>{{ x.discountMoney }}</span>
</div>
<div>
<span>{{ x.redEnvelopeMoney }}</span>
</div>
<div>
<span>{{ x.couponAllotIds }}</span>
</div>
<div>
<span>{{ x.couponAllotList }}</span>
</div>
<div>
<span>{{ x.dueInMoney }}</span>
</div>
<div>
<span>{{ x.compensationMoney }}</span>
</div> -->
<!-- <div>
<span>{{ x.airConfirm }}</span>
</div>
<div>
<span>{{ x.createByName }}</span>
</div> -->
<div>
下单时间:<span>{{ x.createDate }}</span>
</div>
<div>
订单来源:<span>{{ x.orderSource }}</span>
</div>
<!-- <div>
<span>{{ x.leaveStr }}</span>
</div>
<div>
<span>{{ x.lureEmpName }}</span>
</div> -->
<!-- <div>
<span>{{ x.orderTypeName }}</span>
</div>
<div>
<span>{{ x.orderId }}</span>
<span>{{ x.receivableMoney }}</span>
</div>
<div>
<span>{{ x.orderId }}</span>
<span>{{ x.guestList }}</span>
</div>
<div>
<span>{{ x.cancelGuestList }}</span>
</div>
<div>
<span>{{ x.photoNum }}</span>
</div>
<div>
<span>{{ x.remarksName }}</span>
</div>
<div>
<span>{{ x.rematksTime }}</span>
</div>
<div>
<span>{{ x.remarksList }}</span>
</div>
<div>
<span>{{ x.ySeatNum }}</span>
</div>
<div>
<span>{{ x.eSeatNum }}</span>
</div>
<div>
<span>{{ x.fSeatNum }}</span>
</div>
<div>
<span>{{ x.waitingESeatNum }}</span>
</div>
<div>
<span>{{ x.waitingFSeatNum }}</span>
</div>
<div>
<span>{{ x.waitingYSeatNum }}</span>
</div>
<div>
<span>{{ x.waitENum }}</span>
</div>
<div>
<span>{{ x.waitFNum }}</span>
</div>
<div>
<span>{{ x.waitYNum }}</span>
</div>
<div>
<span>{{ x.confirmFileList }}</span>
</div>
<div>
<span>{{ x.oP_Remarks }}</span>
</div>
<div>
<span>{{ x.opSetLossPeople }}</span>
</div>
<div>
<span>{{ x.opSetLossMoney }}</span>
</div>
<div>
<span>{{ x.isChargeLossOrders }}</span>
</div>
<div>
<span>{{ x.tipMoney }}</span>
</div>
<div>
<span>{{ x.opTipMoney }}</span>
</div>
<div>
<span>{{ x.latestCommissionMoney }}</span>
</div>
<div>
<span>{{ x.tsId }}</span>
</div>
<div>
<span>{{ x.tsIdList }}</span>
</div>
<div>
<span>{{ x.platformAccount }}</span>
</div>
<div>
<span>{{ x.platformAccountTypeId }}</span>
</div>
<div>
<span>{{ x.teamType }}</span>
</div>
<div>
<span>{{ x.orderForm }}</span>
</div>
<div>
<span>{{ x.isCanClear }}</span>
</div>
<div>
<span>{{ x.orderGuestHouseStr }}</span>
</div>
<div>
<span>{{ x.refuseVisaNum }}</span>
</div> -->
<!-- <div>
<span>{{ x.orderSourceName }}</span>
</div>
<div>
<span>{{ x.operationState }}</span>
</div>
<div>
<span>{{ x.scoreNum }}</span>
</div>
<div>
<span>{{ x.oneSex }}</span>
</div>
<div>
<span>{{ x.contractNum }}</span>
</div>
<div>
<span>{{ x.isFormB2B }}</span>
</div>
<div>
<span>{{ x.quotationUrl }}</span>
</div>
<div>
<span>{{ x.standardCurrencyName }}</span>
</div> -->
</div>
<div class="col-4">
<div class="mb-title"><i class="iconfont icon-hangban1"></i><span>航班信息</span></div>
<div class="mb-title"><i class="iconfont icon-hangban1"></i><span>包团信息</span></div>
<div>
出团公司id:<span>{{ x.outBranchId }}</span>
</div>
<!-- <div>
<span>{{ x.clientSource }}</span>
</div> -->
<div>
发团日期:<span>{{ x.startDate }}</span>
</div>
<div>
团返程日期:<span>{{ x.backDate }}</span>
</div>
<div>
备注:<span>{{ x.remarks }}</span>
</div>
</div>
<div class="col-2">
<div>
<div class="mb-title">
<i class="iconfont icon-jiage"></i><span>团位信息</span>
<i class="iconfont icon-jiage"></i><span>旅客信息</span>
</div>
<div>
客人名称:<span>{{ x.contactName }}</span>
</div>
<div>
客人联系电话:<span>{{ x.contactMobile }}</span>
</div>
<div>
旅客录入人数:<span>{{ x.entGuestNum }}</span>
</div>
<div class="mb">
<span>经济舱: {{ x.YSeat }}</span>
<div>
<!-- 1录入完毕 2录入部门 3没有录入 -->
人数状态:<span>{{ ['','录入完毕','录入部分','没有录入',][x.guestNumStatus] }}</span>
</div>
<div class="mb">
<span>商务舱: {{ x.CSeat }}</span>
<div>
老人:<span>{{ x.oldPeopleNum }}</span>
</div>
<div class="mb">
<span>头等舱: {{ x.FSeat }}</span>
<div>
成年人:<span>{{ x.manNum }}</span>
</div>
<div>
婴儿:<span>{{ x.babyNum }}</span>
</div>
<div>
儿童:<span>{{ x.chirdNum }}</span>
</div>
<div>
机票:<span>{{ x.airticketNum }}</span>
</div>
<div>
顾客数量:<span>{{ x.guestNum }}</span>
</div>
</div>
</div>
......@@ -47,31 +261,41 @@
<div class="mb-title">
<i class="iconfont icon-jiage"></i><span>价格信息</span>
</div>
<div class="mb">
<span>中心价: {{ x.B2BMemberPrice }}</span>
<div>
成交单价:<span>{{ x.unit_Price }}</span>
</div>
<div class="mb">
<span
>小孩占床: {{ x.ChildNeedPrice }}&nbsp;不占床:
{{ x.ChildNoNeedPrice }}</span
>
<div>
本团单价:<span>{{ x.tC_Price }}</span>
</div>
<div class="mb">
<span
>婴儿: {{ x.BabyPrice }}&nbsp; 婴儿附加费: {{ x.BabyChargePrice }}</span
>
<div>
支付方式:<span>{{ ['','线上','-线下'][x.tradeWay] }}</span>
</div>
<div class="mb">
<span
>老人附加费: {{ x.OldManChargePrice }} &nbsp;签证:
{{ x.VisaPrice }}</span
>
<!-- <div>
平台单号:<span>{{ x.platformOrder }}</span>
</div> -->
<!-- <div>
<span>{{ x.brandName }}</span>
</div> -->
<div>
应收总额:<span>{{ x.preferPrice }}</span>
</div>
<!-- <div>
<span>{{ x.configId }}</span>
</div>
<div>
<span>{{ x.refund }}</span>
</div>
<div>
<span>{{ x.platformTax }}</span>
</div> -->
<div>
已收金额:<span>{{ x.income }}</span>
</div>
<div class="col-1">
</div>
<!-- <div class="col-1">
<q-btn color="primary" unelevated @click="ViewPayment(x)">下单</q-btn>
<q-btn color="primary" unelevated @click="gotoUrl(x)">包机结算</q-btn>
</div>
</div> -->
</q-card>
<q-card
class="light-shadow q-pa-md bg-white rounded-borders q-mb-md"
......
......@@ -8,30 +8,29 @@
-->
<div class="rounded-borders bg-white row items-center q-pa-md">
<div>
<span>订单状态</span>
<q-select v-model="search.OrderState"></q-select>
<div class="q-mr-md" :class="$q.platform.is.desktop ? '' : 'q-mb-md'">
<!-- <span>订单状态</span> -->
<q-select style="min-width: 190px;" unelevated dense label="订单状态" standout v-model="search.OrderState" :options="orderStateList" option-value="Id" option-label="Name"></q-select>
</div>
<div>
<!-- <div class=" q-pa-md">
<span>参团类型</span>
<q-select v-model="search.GroupType"></q-select>
</div>
<div>
<div class=" q-pa-md">
<span>订单来源</span>
<q-select v-model="search.OrderSource"></q-select>
</div> -->
<div :class="$q.platform.is.desktop ? '' : 'q-mb-md'">
<q-select style="min-width: 190px;" unelevated dense label="支付状态" standout v-model="search.PayStatus" :options="payStateList" option-value="value" option-label="label"></q-select>
</div>
<div>
<span>支付状态</span>
<q-select v-model="search.PayStatus"></q-select>
</div>
<q-field :class="$q.platform.is.desktop ? '' : 'q-mb-md'" stack-label :label="$t('daterange')" standout class="q-ml-lg col-2" style="min-width: 190px" dense>
<div class="self-center full-width no-outline" tabindex="0">{{ dateRangeFormat }}</div>
<q-field :class="$q.platform.is.desktop ? 'q-ml-lg' : 'q-mb-md'" stack-label label="创建日期" standout class=" col-2" style="min-width: 190px" dense>
<div class="self-center full-width no-outline" tabindex="0">{{ dateRangeFormatC }}</div>
<q-popup-proxy :offset="[0, 10]" ref="qDateProxy">
<q-date v-model="dateRange" :options="optionsFn" range mask="YYYY/MM/DD" landscape
@range-end="dateRangeHandler"></q-date>
<q-date v-model="dateRangeC" :options="optionsFn" range mask="YYYY/MM/DD" landscape
@range-end="dateRangeHandlerC"></q-date>
</q-popup-proxy>
</q-field>
<q-field :class="$q.platform.is.desktop ? '' : 'q-mb-md'" stack-label :label="$t('daterange')" standout class="q-ml-lg col-2" style="min-width: 190px" dense>
<q-field :class="$q.platform.is.desktop ? 'q-ml-lg' : 'q-mb-md'" stack-label label="发团日期" standout class=" col-2" style="min-width: 190px" dense>
<div class="self-center full-width no-outline" tabindex="0">{{ dateRangeFormat }}</div>
<q-popup-proxy :offset="[0, 10]" ref="qDateProxy">
<q-date v-model="dateRange" :options="optionsFn" range mask="YYYY/MM/DD" landscape
......@@ -48,9 +47,14 @@
import { DirtionmaryHelper } from '../../../config/dictionary'
import { defineComponent, inject, reactive, ref } from 'vue'
import { date } from 'quasar'
import travelService from "../../../api/travel";
import { ApiResult } from "../../../@types/enumHelper";
import message from "../../../utils/message";
export default defineComponent({
setup(props) {
const orderStateList = ref([{Name: '不限', Id: 0}])
const payStateList = reactive([{label: '不限', value: -1},{label: '待收定金', value: 1},{label: '待收尾款', value: 2},])
const qDateProxy = ref(null) as any
const realSearch = inject(DirtionmaryHelper.TRAVEL_ORDER_OBJ) as any
const search = reactive(JSON.parse(JSON.stringify(realSearch)))
......@@ -58,29 +62,61 @@ export default defineComponent({
dateRange.to = date.formatDate(date.addToDate(new Date(), { days: 50 }), 'YYYY/MM/DD')
dateRange.from = date.formatDate(date.addToDate(new Date(), { days: 20 }), 'YYYY/MM/DD')
const dateRangeFormat = ref(`${dateRange.from} - ${dateRange.to}`)
search.StartTime = dateRange.from
search.EndTime = dateRange.to
search.QStartDate = dateRange.from
search.QEndDate = dateRange.to
const dateRangeC = reactive({from: '', to: ''})
dateRangeC.to = date.formatDate(date.addToDate(new Date(), { days: 50 }), 'YYYY/MM/DD')
dateRangeC.from = date.formatDate(date.addToDate(new Date(), { days: 20 }), 'YYYY/MM/DD')
const dateRangeFormatC = ref(`${dateRange.from} - ${dateRange.to}`)
search.CStartDate = dateRangeC.from
search.CEndDate = dateRangeC.to
const methods = {
setQueryHandler(){
realSearch.StartTime=search.StartTime
realSearch.EndTime=search.EndTime
realSearch.QStartDate=search.QStartDate
realSearch.QEndDate=search.QEndDate
realSearch.CStartDate=search.CStartDate
realSearch.CEndDate=search.CEndDate
realSearch.TCNUM=search.TCNUM
realSearch.OrderState=search.OrderState
realSearch.PayStatus=search.PayStatus
},
dateRangeHandler(e: any) {
search.StartTime = `${e.from.year}/${e.from.month}/${e.from.day}`
search.EndTime = `${e.to.year}/${e.to.month}/${e.to.day} `
dateRangeFormat.value = `${search.StartTime} - ${search.EndTime} `
search.QStartDate = `${e.from.year}/${e.from.month}/${e.from.day}`
search.QEndDate = `${e.to.year}/${e.to.month}/${e.to.day} `
dateRangeFormat.value = `${search.QStartDate} - ${search.QEndDate} `
if (qDateProxy.value) qDateProxy.value.hide()
},
dateRangeHandlerC(e: any) {
search.CStartDate = `${e.from.year}/${e.from.month}/${e.from.day}`
search.CEndDate = `${e.to.year}/${e.to.month}/${e.to.day} `
dateRangeFormat.value = `${search.CStartDate} - ${search.CEndDate} `
if (qDateProxy.value) qDateProxy.value.hide()
},
optionsFn(cd: any) {
return cd >= date.formatDate(date.addToDate(new Date(), { days: 20 }), 'YYYY/MM/DD')
},
initOrders() {
travelService
.getOrderStateList({})
.then((r) => {
if (r.data.resultCode == ApiResult.SUCCESS) {
orderStateList.value = orderStateList.value.concat(r.data.data)
} else {
message.errorMsg(r.data.message);
}
})
.catch((e) => {
message.errorMsg(e.message);
});
},
}
methods.initOrders()
return {
...methods,
search,
dateRange,
dateRangeFormat
orderStateList,payStateList,dateRange,
dateRangeFormat,dateRangeC,
dateRangeFormatC
}
}
......
......@@ -79,7 +79,7 @@
</div>
<div class="col-1">
<q-btn color="primary" unelevated @click="ViewPayment(x)">下单</q-btn>
<q-btn color="primary" unelevated @click="gotoUrl(x)">包机结算</q-btn>
<q-btn :class="$q.platform.is.desktop ? 'q-mt-md' : 'q-ml-md'" color="primary" unelevated @click="gotoUrl(x)">包机结算</q-btn>
</div>
</q-card>
<q-card
......
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