feat: 新增工单中心、房间巡查、失物招领等业务模块
- 新增工单中心(ticket_center)与工单工作台(ticket_workbench)页面 - 新增房间巡查(room_inspection)与失物招领发布(lost_found_publish)页面 - 预约看样流程新增房型/楼栋/楼层选择器组件 - 新增工具模块: booking-entry、privacy、reservation-flow - api/index.js 补充楼层列表、看样提交等接口 - locales/messages.js 补充多语言文案 - manifest.json 开启微信小程序隐私检查 - 完善登录、注册、申请详情、账单等相关页面交互
This commit is contained in:
36
utils/booking-entry.js
Normal file
36
utils/booking-entry.js
Normal file
@@ -0,0 +1,36 @@
|
||||
function normalizeUrl(url = '') {
|
||||
return String(url || '').trim()
|
||||
}
|
||||
|
||||
export function isBookingEntryUrl(url = '') {
|
||||
return /^\/pkgBooking\/(book_viewing\/book_viewing|book\/book)(?:\?|$)/.test(normalizeUrl(url))
|
||||
}
|
||||
|
||||
export function resolveExistingBookingNavigationTarget(stayState = {}) {
|
||||
const source = stayState || {}
|
||||
const currentBooking = source.currentBooking || null
|
||||
const hasCheckedIn = source.hasCheckedIn === true
|
||||
|
||||
if (currentBooking && currentBooking.orderNo) {
|
||||
return `/pkgBooking/booking_detail/booking_detail?orderNo=${encodeURIComponent(currentBooking.orderNo)}`
|
||||
}
|
||||
|
||||
if (currentBooking) {
|
||||
return '/pkgBooking/booking_detail/booking_detail'
|
||||
}
|
||||
|
||||
if (hasCheckedIn) {
|
||||
return '/pages/index/index?pageId=stay-service'
|
||||
}
|
||||
|
||||
return ''
|
||||
}
|
||||
|
||||
export function resolveBookingRedirectAfterLogin(targetUrl = '', stayState = {}) {
|
||||
const normalizedTargetUrl = normalizeUrl(targetUrl)
|
||||
if (!isBookingEntryUrl(normalizedTargetUrl)) {
|
||||
return normalizedTargetUrl
|
||||
}
|
||||
|
||||
return resolveExistingBookingNavigationTarget(stayState) || normalizedTargetUrl
|
||||
}
|
||||
Reference in New Issue
Block a user