feat(ticket): 门票撤单及编辑功能完善
This commit is contained in:
parent
b63155a5ac
commit
3a7d66807f
|
@ -21,3 +21,11 @@ export const buyTicket = data => http.post('/sale/api/ticket/pay-ticket', data)
|
||||||
// 获取门票详情
|
// 获取门票详情
|
||||||
export const getTicketDetail = params =>
|
export const getTicketDetail = params =>
|
||||||
http.get('/sale/api/ticket/detail', { params })
|
http.get('/sale/api/ticket/detail', { params })
|
||||||
|
|
||||||
|
// 撤销门票
|
||||||
|
export const cancelTicket = data =>
|
||||||
|
http.post('/sale/api/ticket/cancel-pay-ticket', data)
|
||||||
|
|
||||||
|
// 更新门票
|
||||||
|
export const updateTicket = data =>
|
||||||
|
http.post('/sale/api/ticket/update-ticket', data)
|
||||||
|
|
|
@ -328,7 +328,6 @@ export default {
|
||||||
menuKey: 'incomeDetail',
|
menuKey: 'incomeDetail',
|
||||||
ifshow: false,
|
ifshow: false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
url: '/pages/market/examineDetail/examineDetail',
|
url: '/pages/market/examineDetail/examineDetail',
|
||||||
name: '考核明细',
|
name: '考核明细',
|
||||||
|
@ -381,6 +380,14 @@ export default {
|
||||||
menuKey: 'pickGoods',
|
menuKey: 'pickGoods',
|
||||||
ifshow: false,
|
ifshow: false,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
url: '/pages/ticket/index',
|
||||||
|
name: '自助购票',
|
||||||
|
imgurl: '../../static/images/tickets.png',
|
||||||
|
menuKey: 'ticket',
|
||||||
|
ifshow: true,
|
||||||
|
alwaysShow: true,
|
||||||
|
},
|
||||||
// {
|
// {
|
||||||
// url: "/pages/memberCard/index",
|
// url: "/pages/memberCard/index",
|
||||||
// name: '电子会员卡',
|
// name: '电子会员卡',
|
||||||
|
@ -594,7 +601,13 @@ export default {
|
||||||
// menuKey: "",
|
// menuKey: "",
|
||||||
// ifshow: false,
|
// ifshow: false,
|
||||||
// },
|
// },
|
||||||
|
{
|
||||||
|
url: '/pages/ticket/index',
|
||||||
|
name: '自助购票',
|
||||||
|
imgurl: '../../static/images/tickets.png',
|
||||||
|
menuKey: 'ticket',
|
||||||
|
ifshow: true,
|
||||||
|
},
|
||||||
{
|
{
|
||||||
url: '/pages/selfService/index',
|
url: '/pages/selfService/index',
|
||||||
name: '自助服务',
|
name: '自助服务',
|
||||||
|
|
|
@ -194,9 +194,10 @@
|
||||||
|
|
||||||
<!-- 撤销确认弹窗 -->
|
<!-- 撤销确认弹窗 -->
|
||||||
<u-modal
|
<u-modal
|
||||||
v-model="showCancelModal"
|
:show="showCancelModal"
|
||||||
title="确认撤销"
|
title="确认撤销"
|
||||||
:content="cancelModalContent"
|
:content="cancelModalContent"
|
||||||
|
:show-cancel-button="true"
|
||||||
confirm-text="确认撤销"
|
confirm-text="确认撤销"
|
||||||
cancel-text="取消"
|
cancel-text="取消"
|
||||||
@confirm="confirmCancel"
|
@confirm="confirmCancel"
|
||||||
|
@ -204,7 +205,7 @@
|
||||||
></u-modal>
|
></u-modal>
|
||||||
|
|
||||||
<!-- 修改信息弹窗 -->
|
<!-- 修改信息弹窗 -->
|
||||||
<u-popup v-model="editModalVisible" mode="center" border-radius="12">
|
<u-popup :show="editModalVisible" mode="center" border-radius="12">
|
||||||
<view class="edit-modal">
|
<view class="edit-modal">
|
||||||
<view class="modal-header">
|
<view class="modal-header">
|
||||||
<text class="modal-title">修改门票信息</text>
|
<text class="modal-title">修改门票信息</text>
|
||||||
|
@ -228,7 +229,7 @@
|
||||||
/>
|
/>
|
||||||
</view>
|
</view>
|
||||||
<view class="form-item">
|
<view class="form-item">
|
||||||
<text class="form-label">姓名 *</text>
|
<text class="form-label">姓名</text>
|
||||||
<input
|
<input
|
||||||
class="form-input"
|
class="form-input"
|
||||||
v-model="editForm.buyName"
|
v-model="editForm.buyName"
|
||||||
|
@ -236,7 +237,7 @@
|
||||||
/>
|
/>
|
||||||
</view>
|
</view>
|
||||||
<view class="form-item">
|
<view class="form-item">
|
||||||
<text class="form-label">手机号 *</text>
|
<text class="form-label">手机号</text>
|
||||||
<input
|
<input
|
||||||
class="form-input"
|
class="form-input"
|
||||||
v-model="editForm.phone"
|
v-model="editForm.phone"
|
||||||
|
@ -244,7 +245,7 @@
|
||||||
/>
|
/>
|
||||||
</view>
|
</view>
|
||||||
<view class="form-item">
|
<view class="form-item">
|
||||||
<text class="form-label">身份证号 *</text>
|
<text class="form-label">身份证号</text>
|
||||||
<input
|
<input
|
||||||
class="form-input"
|
class="form-input"
|
||||||
v-model="editForm.idCard"
|
v-model="editForm.idCard"
|
||||||
|
@ -252,14 +253,14 @@
|
||||||
/>
|
/>
|
||||||
</view>
|
</view>
|
||||||
<view class="form-item">
|
<view class="form-item">
|
||||||
<text class="form-label">性别 *</text>
|
<text class="form-label">性别</text>
|
||||||
<u-radio-group v-model="editForm.sex" direction="row">
|
<u-radio-group v-model="editForm.sex" direction="row">
|
||||||
<u-radio name="1" label="男"></u-radio>
|
<u-radio :name="1" label="男"></u-radio>
|
||||||
<u-radio name="0" label="女"></u-radio>
|
<u-radio :name="0" label="女"></u-radio>
|
||||||
</u-radio-group>
|
</u-radio-group>
|
||||||
</view>
|
</view>
|
||||||
<view class="form-item">
|
<view class="form-item">
|
||||||
<text class="form-label">尺码 *</text>
|
<text class="form-label">尺码</text>
|
||||||
<input
|
<input
|
||||||
class="form-input"
|
class="form-input"
|
||||||
v-model="editForm.clothSize"
|
v-model="editForm.clothSize"
|
||||||
|
@ -292,7 +293,12 @@
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { getTicketActivityList, getMyTicketList } from '@/config/ticket.js'
|
import {
|
||||||
|
getTicketActivityList,
|
||||||
|
getMyTicketList,
|
||||||
|
cancelTicket,
|
||||||
|
updateTicket,
|
||||||
|
} from '@/config/ticket.js'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
|
@ -454,14 +460,28 @@ export default {
|
||||||
this.$set(item, 'expanded', !item.expanded)
|
this.$set(item, 'expanded', !item.expanded)
|
||||||
},
|
},
|
||||||
|
|
||||||
// 判断是否在24小时内
|
// 判断是否为当天购买
|
||||||
isWithin24Hours(creationTime) {
|
isWithin24Hours(creationTime) {
|
||||||
if (!creationTime) return false
|
if (!creationTime) return false
|
||||||
const createDate = new Date(creationTime)
|
const createDate = new Date(creationTime)
|
||||||
const now = new Date()
|
const now = new Date()
|
||||||
const timeDiff = now.getTime() - createDate.getTime()
|
|
||||||
const hoursDiff = timeDiff / (1000 * 3600)
|
// 获取创建日期的年月日
|
||||||
return hoursDiff <= 24
|
const createYear = createDate.getFullYear()
|
||||||
|
const createMonth = createDate.getMonth()
|
||||||
|
const createDay = createDate.getDate()
|
||||||
|
|
||||||
|
// 获取当前日期的年月日
|
||||||
|
const nowYear = now.getFullYear()
|
||||||
|
const nowMonth = now.getMonth()
|
||||||
|
const nowDay = now.getDate()
|
||||||
|
|
||||||
|
// 判断是否为同一天
|
||||||
|
return (
|
||||||
|
createYear === nowYear &&
|
||||||
|
createMonth === nowMonth &&
|
||||||
|
createDay === nowDay
|
||||||
|
)
|
||||||
},
|
},
|
||||||
|
|
||||||
// 显示撤销确认弹窗
|
// 显示撤销确认弹窗
|
||||||
|
@ -476,12 +496,9 @@ export default {
|
||||||
|
|
||||||
try {
|
try {
|
||||||
uni.showLoading({ title: '撤销中...' })
|
uni.showLoading({ title: '撤销中...' })
|
||||||
const res = await this.$http.post(
|
const res = await cancelTicket({
|
||||||
'/sale/api/ticket/cancel-pay-ticket',
|
orderCode: this.selectedTicket.orderCode,
|
||||||
{
|
})
|
||||||
orderCode: this.selectedTicket.orderCode,
|
|
||||||
}
|
|
||||||
)
|
|
||||||
|
|
||||||
if (res.code === 200) {
|
if (res.code === 200) {
|
||||||
uni.$u.toast('撤销成功')
|
uni.$u.toast('撤销成功')
|
||||||
|
@ -580,10 +597,7 @@ export default {
|
||||||
|
|
||||||
try {
|
try {
|
||||||
uni.showLoading({ title: '更新中...' })
|
uni.showLoading({ title: '更新中...' })
|
||||||
const res = await this.$http.post(
|
const res = await updateTicket(this.editForm)
|
||||||
'sale/api/ticket/update-ticket',
|
|
||||||
this.editForm
|
|
||||||
)
|
|
||||||
|
|
||||||
if (res.code === 200) {
|
if (res.code === 200) {
|
||||||
uni.$u.toast('修改成功')
|
uni.$u.toast('修改成功')
|
||||||
|
@ -605,6 +619,9 @@ export default {
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
|
::v-deep(.uni-scroll-view) {
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
.ticket-container {
|
.ticket-container {
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
background: #f8f8f8;
|
background: #f8f8f8;
|
||||||
|
@ -830,7 +847,7 @@ export default {
|
||||||
color: #666;
|
color: #666;
|
||||||
|
|
||||||
&.price {
|
&.price {
|
||||||
color: #005bac;
|
color: #ff4444;
|
||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -927,7 +944,7 @@ export default {
|
||||||
// 修改信息弹窗样式
|
// 修改信息弹窗样式
|
||||||
.edit-modal {
|
.edit-modal {
|
||||||
width: 640rpx;
|
width: 640rpx;
|
||||||
max-height: 80vh;
|
max-height: 90vh;
|
||||||
background: #fff;
|
background: #fff;
|
||||||
border-radius: 24rpx;
|
border-radius: 24rpx;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
|
@ -947,9 +964,11 @@ export default {
|
||||||
}
|
}
|
||||||
|
|
||||||
.modal-content {
|
.modal-content {
|
||||||
max-height: 60vh;
|
max-height: 70vh;
|
||||||
padding: 32rpx;
|
padding: 32rpx;
|
||||||
|
box-sizing: border-box;
|
||||||
|
padding-bottom: 20px;
|
||||||
|
overflow-y: hidden;
|
||||||
.form-item {
|
.form-item {
|
||||||
margin-bottom: 32rpx;
|
margin-bottom: 32rpx;
|
||||||
|
|
||||||
|
|
Binary file not shown.
After Width: | Height: | Size: 3.2 KiB |
Loading…
Reference in New Issue