feat: 重构核心租住流程页面与交互体验

统一注册、看房、申请与入住等核心页面的视觉和流程衔接,补齐支付、签约与状态流转闭环,提升移动端操作连贯性。
This commit is contained in:
liangjian
2026-07-29 09:05:38 +08:00
parent da6bdc6a02
commit 1111ac148b
34 changed files with 8734 additions and 2801 deletions

View File

@@ -116,7 +116,7 @@
:class="{ 'danger-btn--loading': canceling }"
@click.stop="handleCancelOrder"
>
<text class="tn-text-bold">{{ canceling ? $tr('取消中...') : $tr('取消订单') }}</text>
<text class="tn-text-bold">{{ canceling ? $tr('取消中...') : $tr('取消申请') }}</text>
</view>
<view
v-if="currentStepActionText"
@@ -344,12 +344,14 @@ export default {
&& this.detail.detailCode
&& this.statusType === 'pending'
},
canCancelOrder() {
return this.shouldPayDeposit(this.detail)
&& !this.isViewingApplication
&& this.detail
canCancelApplication() {
return !!(this.detail
&& this.detail.detailCode
&& !this.canceling
&& Number(this.detail.status) === 0
&& (this.isViewingApplication || Number(this.detail.payStatus) !== 10))
},
canCancelOrder() {
return this.canCancelApplication && !this.canceling
}
},
onLoad(options = {}) {
@@ -601,11 +603,16 @@ export default {
}
})
},
getCancelOrderContent() {
return this.isViewingApplication
? this.$tr('取消后将关闭当前预约看房申请,是否继续?')
: this.$tr('取消后将关闭当前申请单,是否继续?')
},
confirmCancelOrder() {
return new Promise((resolve) => {
uni.showModal({
title: this.$tr('取消订单'),
content: this.$tr('取消后将关闭当前未支付的定金订单,是否继续?'),
title: this.$tr('取消申请'),
content: this.getCancelOrderContent(),
confirmColor: '#ef4444',
success: (res) => resolve(!!(res && res.confirm)),
fail: () => resolve(false)
@@ -640,9 +647,7 @@ export default {
}
this.canceling = true
return userDetailCancel({
detailCode: this.detail.detailCode,
code: this.detail.detailCode,
referenceTypeNo: this.detail.detailCode
detailCode: this.detail.detailCode
}, this.language)
.then(() => {
this.detail = {
@@ -652,14 +657,14 @@ export default {
}
this.syncCanceledDetailToCache()
uni.showToast({
title: this.$tr('订单已取消'),
title: this.$tr('申请已取消'),
icon: 'success'
})
})
})
.catch((error) => {
uni.showToast({
title: (error && (error.message || error.msg)) || this.$tr('取消订单失败'),
title: (error && (error.message || error.msg)) || this.$tr('取消申请失败'),
icon: 'none'
})
})