2a7aa630 by 李婷婷

预定查询

1 parent 00bdea3a
......@@ -185,4 +185,40 @@ export function queryTicket(qy) {
params: qy
})
}
// 酒店
export function orderRoomList(qy) {
return request({
url: `/ota/orderRoom/getReservationRecordList`,
method: 'get',
params: qy
})
}
// 接送
export function orderCarList(qy) {
return request({
url: `/ota/orderCar/getReservationRecordList`,
method: 'get',
params: qy
})
}
export function orderMealList(qy) {
return request({
url: `/ota/orderMeal/getReservationRecordList`,
method: 'get',
params: qy
})
}
export function orderScenicList(qy) {
return request({
url: `/ota/orderScenic/getReservationRecordList`,
method: 'get',
params: qy
})
}
export function orderTicketList(qy) {
return request({
url: `/ota/orderTicket/getReservationRecordList`,
method: 'get',
params: qy
})
}
......
......@@ -75,7 +75,7 @@ onMounted(() => {
function getList() {
query.value.activityId = route.params.cptId
getActivityRestaurantList(query.value).then(res => {
list.value = res.rows
list.value = res.rows.filter(item => item.viewStatus == '1');
})
}
......
......@@ -75,7 +75,7 @@ onMounted(()=>{
function getList() {
loading.value = true
booking.getMakeUpList(query.value).then(res=>{
list.value = res.rows
list.value = res.rows.filter(item => item.viewStatus == 1)
loading.value = false
}).catch(e=>{
loading.value = false
......
......@@ -75,7 +75,7 @@ onMounted(()=>{
function getList() {
loading.value = true
booking.getShootList(query.value).then(res=>{
list.value = res.rows
list.value = res.rows.filter(item => item.viewStatus == 1)
loading.value = false
}).catch(e=>{
loading.value = false
......
......@@ -159,17 +159,20 @@
</div>
</div>
<div class="select_item_box">
<div class="select_item">
<div class="select_item-tag">
<div
v-for="it in tickList[selectForm.sessionType]"
:key="it.id"
:class="[
it.id == selectForm.latstId ? 'tagActive' : 'tag',
it.isView==0?'forbid':''
]"
@click="selectTick(it)"
>
{{ it.name }}
<span v-if="it.viewStatus === '1'" :class="[
it.id == selectForm.latstId ? 'tagActive' : 'tag',
it.isView==0?'forbid':''
]" >
{{ it.name}}
</span>
</div>
<div class="father">
<el-image
......@@ -665,6 +668,65 @@ getmatchData()
cursor: no-drop;
}
}
.select_item-tag{
display: flex;
flex-wrap: wrap;
// gap: 10px;
user-select: none;
.tag_t {
padding: 1px 15px;
font-weight: 400;
font-size: 14px;
color: #493ceb;
border-radius: 6px;
border: 1px solid #453dea;
margin-left: 5px;
}
.tag {
display: flex;
padding: 12px 18px;
background: #eeeeee;
border-radius: 4px;
border: 1px solid #29343c;
font-size: 14px;
color: #4a4a4a;
margin-right: 10px;
margin-bottom: 10px;
cursor: pointer;
}
.tagActive {
display: flex;
padding: 12px 18px;
background: #fff;
border-radius: 4px;
border: 1px solid #493ceb;
font-size: 14px;
color: #493ceb;
margin-right: 10px;
margin-bottom: 10px;
cursor: pointer;
}
.tao {
border: 1px solid #493ceb;
font-size: 14px;
color: #493ceb;
margin-left: 10px;
}
.tagDisabled {
padding: 12px 18px;
background: #878787;
border-radius: 4px;
border: 1px solid #29343c;
font-size: 14px;
color: #4a4a4a;
cursor: no-drop;
}
}
}
.btn {
......@@ -871,4 +933,11 @@ getmatchData()
}
}
}
.view-status-mark {
color: #493ceb; /* 与票档主题色一致 */
font-size: 12px; /* 小于票型名称字号,避免突兀 */
margin-left: 4px; /* 与名称保持间距 */
font-weight: 500;
}
</style>
......
......@@ -100,7 +100,7 @@ onMounted(() => {
function getList() {
loading.value = true
booking.getScenicList(query.value).then(res => {
list.value = res.rows
list.value = res.rows.filter(item => item.viewStatus == '1');
loading.value = false
console.log(list.value)
}).catch(e => {
......
<template>
<el-dialog
v-model="show"
:append-to-body="true"
:close-on-click-modal="false"
:show-close="showClose"
:title="title"
center
class="pcloginpop"
close-icon="CircleClose"
destroy-on-close
style="max-width: 450px;min-width: 350px"
@close="close"
>
<el-dialog v-model="show" :append-to-body="true" :close-on-click-modal="false" :show-close="showClose" :title="title"
center class="pcloginpop" close-icon="CircleClose" destroy-on-close style="max-width: 450px;min-width: 350px"
@close="close">
<div class="pd10" />
<el-form
v-if="loginStatus==0" ref="loginRef" :model="loginForm"
:rules="language==0?loginRules:loginRules_en" class="login-form"
>
<el-form v-if="loginStatus == 0" ref="loginRef" :model="loginForm" :rules="language == 0 ? loginRules : loginRules_en"
class="login-form">
<el-form-item prop="username">
<el-input
v-model.trim="loginForm.username"
:placeholder="language==0?'账号(注册时使用的邮箱)':'Account (e-mail)'"
auto-complete="off"
size="large"
/>
<el-input v-model.trim="loginForm.username" :placeholder="language == 0 ? '账号(注册时使用的邮箱)' : 'Account (e-mail)'"
auto-complete="off" size="large" />
</el-form-item>
<el-form-item prop="password">
<el-input
v-model.trim="loginForm.password"
:placeholder="language==0?'密码':'Password'"
auto-complete="off" show-password
size="large"
type="password"
@keyup.enter="handleLogin"
/>
<el-input v-model.trim="loginForm.password" :placeholder="language == 0 ? '密码' : 'Password'" auto-complete="off"
show-password size="large" type="password" @keyup.enter="handleLogin" />
</el-form-item>
<el-form-item v-if="captchaEnabled" prop="code">
<el-input
v-model.trim="loginForm.code"
:placeholder="language==0?'验证码':'Code'"
auto-complete="off"
size="large"
@keyup.enter="handleLogin"
>
<el-input v-model.trim="loginForm.code" :placeholder="language == 0 ? '验证码' : 'Code'" auto-complete="off" size="large"
@keyup.enter="handleLogin">
<template #append>
<div class="login-code">
<img :src="codeUrl" class="login-code-img" @click="getCode">
......@@ -54,14 +27,8 @@
</el-form-item>
<el-form-item style="width:100%;">
<el-button
:loading="loading"
class="loginBtn"
size="large"
style="width:100%;"
type="primary"
@click.prevent="handleLogin"
>
<el-button :loading="loading" class="loginBtn" size="large" style="width:100%;" type="primary"
@click.prevent="handleLogin">
<span v-if="!loading">{{ language == 0 ? '登 录' : 'Login' }}</span>
<span v-else>{{ language == 0 ? '登 录 中...' : 'Logging in' }}</span>
</el-button>
......@@ -69,15 +36,12 @@
<el-form-item>
<!-- <span style="color: #999;font-size: 12px;">*默认密码是会员号+证件号后四位+)*%</span>-->
<div style="display: flex;justify-content: space-between;width: 100%;">
<a
class="text-primary"
@click="showChangePassword"
>{{ language == 0 ? '忘记密码' : 'Forgot password' }}?</a>
<a class="text-primary" @click="showChangePassword">{{ language == 0 ? '忘记密码' : 'Forgot password' }}?</a>
<a class="text-primary" @click="showRegister">{{ language == 0 ? '账号注册' : 'Register' }}></a>
</div>
</el-form-item>
<el-form-item>
<div v-if="language==0" class="agreeLine">
<div v-if="language == 0" class="agreeLine">
登录或注册即代表同意
<a target="_blank" @click="goAgreement">《用户协议》</a>
<a target="_blank" @click="goPolicy">《隐私政策》</a>
......@@ -90,7 +54,7 @@
</el-form-item>
</el-form>
<div v-if="loginStatus==1">
<div v-if="loginStatus == 1">
<a class="poLeft" @click="close()">
<el-icon>
<ArrowLeftBold />
......@@ -103,36 +67,25 @@
<h3>{{ language == 0 ? '个人用户' : 'Individual' }}</h3>
</div>
</div>
<div v-if="loginStatus==2">
<div v-if="loginStatus == 2">
<a class="poLeft" @click="close()">
<el-icon>
<ArrowLeftBold />
</el-icon>
</a>
<el-form
ref="changePasswordRef" :model="changePasswordForm"
:rules="language==0?changePasswordRules:changePasswordRules_en" class="login-form"
>
<el-form ref="changePasswordRef" :model="changePasswordForm"
:rules="language == 0 ? changePasswordRules : changePasswordRules_en" class="login-form">
<el-form-item prop="username">
<el-input
v-model.trim="changePasswordForm.username"
:placeholder="language==0?'注册时使用的邮箱':'E-mail'"
auto-complete="off" size="large"
@change="changePasswordFormUsername"
/>
<el-input v-model.trim="changePasswordForm.username" :placeholder="language == 0 ? '注册时使用的邮箱' : 'E-mail'"
auto-complete="off" size="large" @change="changePasswordFormUsername" />
</el-form-item>
<el-form-item>
<el-input
v-model.trim="changePasswordForm.code"
:placeholder="language==0?'验证码':'Code'"
auto-complete="off"
size="large"
@keyup.enter="handleLogin"
>
<el-input v-model.trim="changePasswordForm.code" :placeholder="language == 0 ? '验证码' : 'Code'" auto-complete="off"
size="large" @keyup.enter="handleLogin">
<template #append>
<el-button plain style="width: 110px;" type="primary" @click="sendsmsMsg">
<van-count-down v-if="counting" :time="60000" format="ss" @finish="counting=false">
<van-count-down v-if="counting" :time="60000" format="ss" @finish="counting = false">
<template #default="timeData">
<span class="text-primary">{{ timeData.seconds }}{{ language == 0 ? '秒' : 's' }}</span>
</template>
......@@ -147,42 +100,24 @@
</template>
</el-input>
<!-- <div class="vcodeBox" :style="isShow?'height:240px':'height:0'">-->
<Vcode
:fail-text="failVcode" :show="isShow" :slider-text="sliderText" :success-text="successVcode"
:z-index="9999" @success="codeSuccess"
/>
<Vcode :fail-text="failVcode" :show="isShow" :slider-text="sliderText" :success-text="successVcode"
:z-index="9999" @success="codeSuccess" />
<!-- </div>-->
</el-form-item>
<el-form-item prop="password">
<el-input
v-model.trim="changePasswordForm.password"
:placeholder="language==0?'新密码':'New password'"
auto-complete="off" show-password
size="large"
type="password"
@keyup.enter="handleLogin"
/>
<el-input v-model.trim="changePasswordForm.password" :placeholder="language == 0 ? '新密码' : 'New password'"
auto-complete="off" show-password size="large" type="password" @keyup.enter="handleLogin" />
</el-form-item>
<el-form-item prop="confirmPassword">
<el-input
v-model.trim="changePasswordForm.confirmPassword"
:placeholder="language==0?'确认密码':'Confirm password'"
auto-complete="off" show-password
size="large"
type="password"
/>
<el-input v-model.trim="changePasswordForm.confirmPassword"
:placeholder="language == 0 ? '确认密码' : 'Confirm password'" auto-complete="off" show-password size="large"
type="password" />
</el-form-item>
<el-form-item style="width:100%;">
<el-button
:loading="loading"
class="loginBtn"
size="large"
style="width:100%;"
type="primary"
@click.prevent="handleChangePassword"
>
<span v-if="language==0">确定</span>
<el-button :loading="loading" class="loginBtn" size="large" style="width:100%;" type="primary"
@click.prevent="handleChangePassword">
<span v-if="language == 0">确定</span>
<span v-else>Submit</span>
</el-button>
</el-form-item>
......@@ -624,7 +559,8 @@ const goPolicy = () => {
flex: 1 1 auto;
}
.el-input-group__append button.el-button, .el-input-group__append button.el-button:hover {
.el-input-group__append button.el-button,
.el-input-group__append button.el-button:hover {
color: var(--el-color-primary);
background: #efefff;
border: var(--el-color-primary) solid 1px;
......
......@@ -86,12 +86,12 @@
application of visa invitation letter and purchasing insurance etc.</span>
</div>
</el-form-item>
<el-form-item :label="language==0?'证件号':'Passport number'" required>
<el-input v-model="wdsfData.passportNumber" />
</el-form-item>
<el-form-item :label="language==0?'姓名':'Name'" required>
<el-input v-model.trim="wdsfData.certName" />
</el-form-item>
<el-form-item :label="language==0?'证件号':'Passport number'" required>
<el-input v-model="wdsfData.passportNumber" />
</el-form-item>
<el-form-item :label="language==0?'性别':'Gender'" required>
<el-radio-group v-model="wdsfData.sex">
<el-radio value="0">{{ language == 0 ? '女' : 'female' }}</el-radio>
......@@ -105,6 +105,9 @@
style="width: 100%;" type="date" value-format="YYYY-MM-DD"
/>
</el-form-item>
<el-form-item :label="language==0?'联系方式':'Contact Information'" required>
<el-input v-model.trim="wdsfData.phone" />
</el-form-item>
<div class="h30" />
......@@ -372,6 +375,10 @@ function bigNext() {
ElMessage.warning(language.value == 0 ? '请输入姓名' : 'Please enter your name')
return
}
if (!wdsfData.value.phone) {
ElMessage.warning(language.value == 0 ? '请输入联系方式' : 'Please enter your phone')
return
}
if (user && user.utype == '3') {
const obj = {
card: form.value.card,
......@@ -381,6 +388,7 @@ function bigNext() {
birth: wdsfData.value.birthday,
certName: wdsfData.value.certName,
passportNumber: wdsfData.value.passportNumber,
phone:wdsfData.value.phone,
ocrFlag: '1'
}
if (Array.isArray(wdsfData.value.passportUrl)) {
......@@ -424,6 +432,7 @@ function next() {
certName: wdsfData.value.certName,
birth: wdsfData.value.birthday,
passportNumber: wdsfData.value.passportNumber,
phone:wdsfData.value.phone,
ocrFlag: '1'
}
if (Array.isArray(wdsfData.value.passportUrl)) {
......@@ -449,6 +458,7 @@ function next() {
// personId: wdsfData.value.personId,
username: wdsfData.value.email,
password: form.value.password,
phone:wdsfData.value.phone,
ocrFlag: '1'
}
if (Array.isArray(wdsfData.value.passportUrl)) {
......
......@@ -64,35 +64,40 @@ export default defineConfig(({ mode, command }) => {
proxy: {
// https://cn.vitejs.dev/config/#server-proxy
'/dev-api/ztx-train': {
// target: 'http://192.168.1.118:1896/stage-api',
target: 'https://wdsfwuxicenter.com/stage-api',
target: 'http://192.168.1.22:8081',
// target: 'https://wdsfwuxicenter.com/stage-api',
// target: 'https://jijin.wtwuxicenter.com/stage-api',
changeOrigin: true,
rewrite: (p) => p.replace(/^\/dev-api\/ztx-train/, '')
},
'/dev-api/ztx-match': {
// target: 'http://192.168.1.118:8081',
target: 'https://wdsfwuxicenter.com/stage-api',
target: 'http://192.168.1.22:8081',
// target: 'https://jijin.wtwuxicenter.com/stage-api',
// target: 'https://wdsfwuxicenter.com/stage-api',
// target: 'https://wdsfwuxicenter.com/stage-api/',
changeOrigin: true,
rewrite: (p) => p.replace(/^\/dev-api\/ztx-match/, '')
},
'/dev-api/ztx-webSite': {
// target: 'http://192.168.1.118:8081',
target: 'https://wdsfwuxicenter.com/stage-api',
target: 'http://192.168.1.22:8081',
// target: 'https://wdsfwuxicenter.com/stage-api',
// target: 'https://jijin.wtwuxicenter.com/stage-api',
changeOrigin: true,
rewrite: (p) => p.replace(/^\/dev-api\/ztx-webSite/, '')
},
'/dev-api': {
// target: 'http://192.168.1.213:8081/',
target: 'http://192.168.1.22:8081',
// target: 'http://192.168.1.169:8081',
// target: 'https://jijin.wtwuxicenter.com/stage-api',
target: 'https://wdsfwuxicenter.com/stage-api/',
// target: 'https://wdsfwuxicenter.com/stage-api/',
// target: 'https://jijin.wtwuxicenter.com/stage-api',
changeOrigin: true,
rewrite: (p) => p.replace(/^\/dev-api/, '')
},
'/ticket': {
// target: 'http://192.168.1.242:8081/',
target: 'https://wdsfwuxicenter.com/h5/',
// target: 'https://jijin.wtwuxicenter.com/stage-api',
target: 'http://192.168.1.22:8081',
// target: 'https://wdsfwuxicenter.com/h5/',
// target: 'https://ticketh5.wdsfwuxicenter.com/h5/',
changeOrigin: true,
rewrite: (p) => p.replace(/^\/ticket/, '')
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!