初次提交被驳回逻辑优化
This commit is contained in:
parent
5ac5be413b
commit
181a93e314
|
|
@ -1,29 +1,18 @@
|
|||
<template>
|
||||
<view class="service-code-modal" v-if="show" :style="{bottom:`${popBotom}px`}">
|
||||
<view class="service-code-modal" v-if="show" :style="{ bottom: `${popBotom}px` }">
|
||||
<view class="modal-mask" @touchmove.stop.prevent></view>
|
||||
<view class="modal-content">
|
||||
<view class="modal-title">开始服务</view>
|
||||
<view class="modal-subtitle">请输入服务码</view>
|
||||
<view class="code-box">
|
||||
<view
|
||||
v-for="(item, idx) in codeLength"
|
||||
:key="idx"
|
||||
<view v-for="(item, idx) in codeLength" :key="idx"
|
||||
:class="['code-cell', idx === currentIndex ? 'active' : '', code[idx] ? 'filled' : '']">
|
||||
<text v-if="code[idx]">{{ code[idx] }}</text>
|
||||
</view>
|
||||
<!-- 隐藏真实输入框 -->
|
||||
<input
|
||||
:adjust-position="false"
|
||||
class="real-input"
|
||||
type="number"
|
||||
:maxlength="codeLength"
|
||||
v-model="inputValue"
|
||||
:focus="true"
|
||||
@input="onInput"
|
||||
@focus="onFocus"
|
||||
@keyboardheightchange="onkeyboardheightchange"
|
||||
@blur="onBlur"
|
||||
cursor-spacing="100"
|
||||
<input :adjust-position="false" class="real-input" type="number" :maxlength="codeLength"
|
||||
v-model="inputValue" :focus="true" @input="onInput" @focus="onFocus"
|
||||
@keyboardheightchange="onkeyboardheightchange" @blur="onBlur" cursor-spacing="100"
|
||||
ref="realInput" />
|
||||
</view>
|
||||
<button class="confirm-btn" :disabled="code.length < codeLength" @click="onConfirm">确定</button>
|
||||
|
|
@ -33,7 +22,7 @@
|
|||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
export default {
|
||||
name: 'serviceCodeInput',
|
||||
props: {
|
||||
show: {
|
||||
|
|
@ -50,7 +39,7 @@
|
|||
inputValue: '',
|
||||
isFocus: true,
|
||||
keyboardHeight: 0,
|
||||
popBotom:0,
|
||||
popBotom: 0,
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
|
|
@ -88,7 +77,7 @@
|
|||
this.isFocus = true
|
||||
this.inputValue = ''
|
||||
},
|
||||
onkeyboardheightchange(e){
|
||||
onkeyboardheightchange(e) {
|
||||
this.popBotom = e.target.height || 0
|
||||
},
|
||||
onBlur() {
|
||||
|
|
@ -104,11 +93,11 @@
|
|||
this.$emit('close')
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.service-code-modal {
|
||||
.service-code-modal {
|
||||
position: fixed;
|
||||
left: 0;
|
||||
top: 0;
|
||||
|
|
@ -117,12 +106,13 @@
|
|||
z-index: 999999;
|
||||
|
||||
.modal-mask {
|
||||
position: absolute;
|
||||
position: fixed;
|
||||
left: 0;
|
||||
top: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
background: rgba(0, 0, 0, 0.15);
|
||||
background: rgba(0, 0, 0, 0.5);
|
||||
z-index: -1;
|
||||
}
|
||||
|
||||
.modal-content {
|
||||
|
|
@ -228,9 +218,9 @@
|
|||
font-weight: bold;
|
||||
line-height: 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes modalUp {
|
||||
@keyframes modalUp {
|
||||
from {
|
||||
transform: translateY(100%);
|
||||
}
|
||||
|
|
@ -238,5 +228,5 @@
|
|||
to {
|
||||
transform: translateY(0);
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
|
@ -32,7 +32,7 @@
|
|||
<cover-view class="slider-track">
|
||||
<cover-view class="slider-bg"></cover-view>
|
||||
<cover-view class="slider-active" :style="activeStyle"></cover-view>
|
||||
<cover-view class="slider-thumb" :style="thumbStyle"></cover-view>
|
||||
<cover-view class="slider-thumb" v-if="currentTime > 0" :style="thumbStyle"></cover-view>
|
||||
</cover-view>
|
||||
|
||||
<cover-view class="time-text">{{ formatTime(duration) }}</cover-view>
|
||||
|
|
@ -143,7 +143,8 @@ export default {
|
|||
iconFullscreen: 'https://mrrplus.oss-cn-beijing.aliyuncs.com/photo/system/4286ef33-6849-4851-8866-4230d2523a33.png',
|
||||
|
||||
article: {},
|
||||
recommendList: []
|
||||
recommendList: [],
|
||||
recommendPage: 1
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
|
|
@ -301,9 +302,7 @@ export default {
|
|||
this.isFavorite = data.collect_state === 1;
|
||||
request.post("/sj/skill/list", {
|
||||
page: 1,
|
||||
limit: 10,
|
||||
link_type: data.link_type,
|
||||
link_id: data.link_id,
|
||||
limit: 3,
|
||||
skill_id: data.id
|
||||
}).then((listRes) => {
|
||||
if (listRes.code == 200 && listRes.data && listRes.data.list) {
|
||||
|
|
@ -376,11 +375,58 @@ export default {
|
|||
if (this.isRefreshing) return;
|
||||
this.isRefreshing = true;
|
||||
uni.showLoading({ title: '加载中' });
|
||||
setTimeout(() => {
|
||||
this.recommendList = this.recommendList.sort(() => Math.random() - 0.5);
|
||||
|
||||
// 页码逻辑:到达10重置为1,否则+1
|
||||
if (this.recommendPage >= 10) {
|
||||
this.recommendPage = 1;
|
||||
} else {
|
||||
this.recommendPage++;
|
||||
}
|
||||
|
||||
request.post("/sj/skill/list", {
|
||||
page: this.recommendPage,
|
||||
limit: 3,
|
||||
skill_id: this.article.id
|
||||
}).then((res) => {
|
||||
if (res.code == 200 && res.data && res.data.list && res.data.list.length > 0) {
|
||||
this.recommendList = res.data.list.map(item => ({
|
||||
id: item.id,
|
||||
title: item.name || '暂无标题',
|
||||
coverSrc: item.cover_img || '',
|
||||
type: item.link_name || '平台课程',
|
||||
views: item.browse_num || 0,
|
||||
time: item.create_time ? item.create_time.split(' ')[0] : '',
|
||||
typeIcon: item.link_logo || '',
|
||||
video: item.video || ''
|
||||
}));
|
||||
} else {
|
||||
// 下一页没有数据,重置为1重新请求
|
||||
this.recommendPage = 1;
|
||||
request.post("/sj/skill/list", {
|
||||
page: 1,
|
||||
limit: 3,
|
||||
skill_id: this.article.id
|
||||
}).then((res2) => {
|
||||
if (res2.code == 200 && res2.data && res2.data.list) {
|
||||
this.recommendList = res2.data.list.map(item => ({
|
||||
id: item.id,
|
||||
title: item.name || '暂无标题',
|
||||
coverSrc: item.cover_img || '',
|
||||
type: item.link_name || '平台课程',
|
||||
views: item.browse_num || 0,
|
||||
time: item.create_time ? item.create_time.split(' ')[0] : '',
|
||||
typeIcon: item.link_logo || '',
|
||||
video: item.video || ''
|
||||
}));
|
||||
}
|
||||
});
|
||||
}
|
||||
this.isRefreshing = false;
|
||||
uni.hideLoading();
|
||||
}, 600);
|
||||
}).catch(() => {
|
||||
this.isRefreshing = false;
|
||||
uni.hideLoading();
|
||||
});
|
||||
},
|
||||
|
||||
injectMockData() {
|
||||
|
|
|
|||
|
|
@ -909,8 +909,8 @@ export default {
|
|||
toruzhu() {
|
||||
const idType = this.userInfo.id_type;
|
||||
const credentialsState = this.userInfo.credentials_state;
|
||||
|
||||
if (idType === 0 && credentialsState === 0) {
|
||||
console.log(idType, credentialsState)
|
||||
if (idType <= 0 && credentialsState === 0) {
|
||||
// 从未入驻
|
||||
uni.navigateTo({
|
||||
url: '/pages/ruzhu/ruzhu'
|
||||
|
|
|
|||
|
|
@ -123,8 +123,9 @@ export default {
|
|||
},
|
||||
computed: {
|
||||
filterIcon() {
|
||||
// 这里的图标链接可以统一成一个,配合CSS的旋转动画更好看
|
||||
return 'https://mrrplus.oss-cn-beijing.aliyuncs.com/photo/system/e00ab2ac-bccf-42d8-820c-65727327e279.png'
|
||||
return this.filterVisible
|
||||
? 'https://mrrplus.oss-cn-beijing.aliyuncs.com/photo/system/e00ab2ac-bccf-42d8-820c-65727327e279.png'
|
||||
: 'https://mrrplus.oss-cn-beijing.aliyuncs.com/photo/system/bfe7a104-bef8-4432-9487-42f05e3e9035.png'
|
||||
}
|
||||
},
|
||||
onLoad() {
|
||||
|
|
@ -466,13 +467,13 @@ export default {
|
|||
}
|
||||
|
||||
.filter-icon {
|
||||
width: 16rpx;
|
||||
height: 10rpx;
|
||||
transition: transform 0.3s ease;
|
||||
width: 24rpx;
|
||||
height: 24rpx;
|
||||
|
||||
/* 展开时图标倒转 */
|
||||
/* 展开时切换为上下箭头图标,调整大小 */
|
||||
&.rotate {
|
||||
transform: rotate(180deg);
|
||||
width: 18rpx;
|
||||
height: 12rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -574,7 +575,6 @@ export default {
|
|||
justify-content: center;
|
||||
|
||||
border-radius: 12rpx;
|
||||
transition: all 0.3s;
|
||||
box-sizing: border-box;
|
||||
/* 防止 padding 会撑大盒子 */
|
||||
|
||||
|
|
|
|||
|
|
@ -4,13 +4,8 @@
|
|||
<view class="status" v-if="isLogin">
|
||||
<scroll-view scroll-x class="status-tabs" :show-scrollbar="false">
|
||||
<view style="padding-left: 20rpx">
|
||||
<view
|
||||
class="tab-item"
|
||||
v-for="(item, index) in firstTabs"
|
||||
:key="index"
|
||||
:class="{ active: activeFirstId === item.id }"
|
||||
@click="handleFirstTabClick(item)"
|
||||
>
|
||||
<view class="tab-item" v-for="(item, index) in firstTabs" :key="index"
|
||||
:class="{ active: activeFirstId === item.id }" @click="handleFirstTabClick(item)">
|
||||
{{ item.title }}
|
||||
</view>
|
||||
</view>
|
||||
|
|
@ -18,51 +13,26 @@
|
|||
|
||||
<scroll-view scroll-x class="status-tabs2" :show-scrollbar="false">
|
||||
<view style="padding-left: 20rpx; white-space: nowrap; padding-bottom: 20rpx;">
|
||||
<view
|
||||
class="tab-item2"
|
||||
v-for="(item, index) in secondTabs"
|
||||
:key="index"
|
||||
<view class="tab-item2" v-for="(item, index) in secondTabs" :key="index"
|
||||
:class="{ active: activeSecondId === item.id }"
|
||||
@click="handleSecondTabClick(item.id, item.title)"
|
||||
>
|
||||
@click="handleSecondTabClick(item.id, item.title)">
|
||||
{{ item.title }}
|
||||
</view>
|
||||
</view>
|
||||
</scroll-view>
|
||||
</view>
|
||||
|
||||
<CommonList
|
||||
ref="groupRef"
|
||||
:isLogin="isLogin"
|
||||
:apiUrl="apiUrl"
|
||||
:listScrollHeight="`calc(100vh - 280rpx - 100rpx)`"
|
||||
@load-success="loadSuccess"
|
||||
>
|
||||
<CommonList ref="groupRef" :isLogin="isLogin" :apiUrl="apiUrl"
|
||||
:listScrollHeight="`calc(100vh - 280rpx - 100rpx)`" @load-success="loadSuccess">
|
||||
<template #listData="{ list }">
|
||||
<view class="order-item-wrap" v-for="item in popList" :key="item.id">
|
||||
<OrderCard
|
||||
v-if="activeFirstId != 3"
|
||||
:haveButton="haveButton"
|
||||
:showState="false"
|
||||
:dataItem="item"
|
||||
:typeId="activeFirstId"
|
||||
@cancel="cancelOrder($event, item)"
|
||||
@start="startOrder($event, item)"
|
||||
@done="endOrder($event, item)"
|
||||
@goOrderDetail="goOrderDetail"
|
||||
/>
|
||||
<OrderCard v-if="activeFirstId != 3" :haveButton="haveButton" :dataItem="item"
|
||||
:typeId="activeFirstId" @cancel="cancelOrder($event, item)" @start="startOrder($event, item)"
|
||||
@done="endOrder($event, item)" @goOrderDetail="goOrderDetail" />
|
||||
|
||||
<WorkHourOrderCard
|
||||
v-else
|
||||
:showState="false"
|
||||
:dataItem="item"
|
||||
:typeId="activeFirstId"
|
||||
@cancel="cancelOrder($event, item)"
|
||||
@accept="confirmOrder($event, item)"
|
||||
@start="startOrder($event, item)"
|
||||
@done="endOrder($event, item)"
|
||||
@goOrderDetail="goOrderDetail"
|
||||
>
|
||||
<WorkHourOrderCard v-else :dataItem="item" :typeId="activeFirstId"
|
||||
@cancel="cancelOrder($event, item)" @accept="confirmOrder($event, item)"
|
||||
@start="startOrder($event, item)" @done="endOrder($event, item)" @goOrderDetail="goOrderDetail">
|
||||
</WorkHourOrderCard>
|
||||
</view>
|
||||
</template>
|
||||
|
|
@ -87,15 +57,15 @@
|
|||
</template>
|
||||
|
||||
<script>
|
||||
import OrderCard from "@/pages/home/components/orderCard2.vue";
|
||||
import WorkHourOrderCard from "@/pages/home/components/workOrderCard.vue";
|
||||
import CommonList from "@/components/common/CommonList.vue";
|
||||
import noLogin from "@/components/noData/noLogin.vue";
|
||||
import request from "@/utils/request";
|
||||
import serviceCodeInput from "@/components/service-code-input/service-code-input.vue";
|
||||
import TabBar from "@/components/tabbar/tabbar.vue";
|
||||
import OrderCard from "@/pages/shop/components/orderCard.vue";
|
||||
import WorkHourOrderCard from "@/pages/home/components/workOrderCard.vue";
|
||||
import CommonList from "@/components/common/CommonList.vue";
|
||||
import noLogin from "@/components/noData/noLogin.vue";
|
||||
import request from "@/utils/request";
|
||||
import serviceCodeInput from "@/components/service-code-input/service-code-input.vue";
|
||||
import TabBar from "@/components/tabbar/tabbar.vue";
|
||||
|
||||
export default {
|
||||
export default {
|
||||
name: "filters",
|
||||
props: {
|
||||
title: {
|
||||
|
|
@ -123,7 +93,7 @@
|
|||
data() {
|
||||
return {
|
||||
isLogin: false, // 将isLogin移至data内管理
|
||||
popList:[],
|
||||
popList: [],
|
||||
haveButton: true,
|
||||
statusBarHeight: 0,
|
||||
tabs: [{
|
||||
|
|
@ -191,7 +161,7 @@
|
|||
weChatRefund: "/sj/workSeatOrder/weChatRefund",
|
||||
aliRefund: "/sj/workSeatOrder/aliRefund",
|
||||
startOrder: "/sj/workSeatOrder/start",
|
||||
sureOrder:"/sj/workSeatOrder/sure",
|
||||
sureOrder: "/sj/workSeatOrder/sure",
|
||||
endOrder: "/sj/workSeatOrder/end",
|
||||
ordernum: "/sj/workSeatOrder/orderNum",
|
||||
list: "/sj/workSeatOrder/list",
|
||||
|
|
@ -209,7 +179,7 @@
|
|||
},
|
||||
computed: {
|
||||
apiUrl() {
|
||||
if(!this.urls[this.activeFirstId]){
|
||||
if (!this.urls[this.activeFirstId]) {
|
||||
return ""
|
||||
}
|
||||
const urls = this.urls[this.activeFirstId];
|
||||
|
|
@ -292,8 +262,8 @@
|
|||
this.isLogin = uni.getStorageSync("accessToken") ? true : false;
|
||||
if (this.isLogin) {
|
||||
// 确保默认选中项正确
|
||||
if(!this.activeFirstId) this.activeFirstId = 1;
|
||||
if(!this.activeSecondId) this.activeSecondId = 3; // 或者你想默认 2 (待接单),这里统一就行
|
||||
if (!this.activeFirstId) this.activeFirstId = 1;
|
||||
if (!this.activeSecondId) this.activeSecondId = 3; // 或者你想默认 2 (待接单),这里统一就行
|
||||
|
||||
// 使用 $nextTick 确保 CommonList 组件已经渲染完毕再调用刷新
|
||||
this.$nextTick(() => {
|
||||
|
|
@ -453,7 +423,7 @@
|
|||
return;
|
||||
}
|
||||
this.clickType = true;
|
||||
console.log(111,this.activeFirstId,this.urls)
|
||||
console.log(111, this.activeFirstId, this.urls)
|
||||
request
|
||||
.post(this.urls[this.activeFirstId].sureOrder, {
|
||||
id: order.id,
|
||||
|
|
@ -592,18 +562,18 @@
|
|||
uni.navigateTo({ url: '/pages/blogPopup/blogPopup' });
|
||||
}
|
||||
},
|
||||
};
|
||||
};
|
||||
</script>
|
||||
|
||||
<style scoped lang="less">
|
||||
.order-list-page {
|
||||
.order-list-page {
|
||||
min-height: 100vh;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
}
|
||||
|
||||
/* 状态标签栏 (移植自用户端示例) */
|
||||
.status {
|
||||
/* 状态标签栏 (移植自用户端示例) */
|
||||
.status {
|
||||
position: sticky;
|
||||
top: 0;
|
||||
/* #ifdef H5 */
|
||||
|
|
@ -614,15 +584,15 @@
|
|||
right: 0;
|
||||
background: #fff;
|
||||
z-index: 99;
|
||||
}
|
||||
}
|
||||
|
||||
.status-tabs {
|
||||
.status-tabs {
|
||||
height: 94rpx;
|
||||
background-color: #ffffff;
|
||||
white-space: nowrap;
|
||||
}
|
||||
}
|
||||
|
||||
.tab-item {
|
||||
.tab-item {
|
||||
display: inline-block;
|
||||
height: 48rpx;
|
||||
position: relative;
|
||||
|
|
@ -650,17 +620,17 @@
|
|||
background-color: #ff4767;
|
||||
border-radius: 3rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.status-tabs2 {
|
||||
.status-tabs2 {
|
||||
height: 56rpx;
|
||||
background-color: #ffffff;
|
||||
white-space: nowrap;
|
||||
padding-bottom: 30rpx;
|
||||
padding-top: 10rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.tab-item2 {
|
||||
.tab-item2 {
|
||||
display: inline-block;
|
||||
height: 56rpx;
|
||||
padding: 0 20rpx;
|
||||
|
|
@ -680,39 +650,39 @@
|
|||
font-weight: 500;
|
||||
background: #fee5e7;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* 数据列表及卡片外框样式 */
|
||||
.order-item-wrap {
|
||||
margin: 0 0 24rpx 0;
|
||||
border-radius: 20rpx;
|
||||
/* 数据列表及卡片外框样式 */
|
||||
.order-item-wrap {
|
||||
background-color: #fff;
|
||||
border-radius: 12px;
|
||||
overflow: hidden;
|
||||
}
|
||||
}
|
||||
|
||||
.noDataBox {
|
||||
.noDataBox {
|
||||
background-color: transparent;
|
||||
height: 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
}
|
||||
|
||||
/* 未登录状态的样式 */
|
||||
.nologin_part {
|
||||
/* 未登录状态的样式 */
|
||||
.nologin_part {
|
||||
display: flex;
|
||||
flex-flow: column nowrap;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
}
|
||||
|
||||
.nologin_icon {
|
||||
.nologin_icon {
|
||||
width: 360rpx;
|
||||
height: 360rpx;
|
||||
margin-top: 100rpx;
|
||||
margin-bottom: 40rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.btn-login {
|
||||
.btn-login {
|
||||
width: 200rpx;
|
||||
height: 68rpx;
|
||||
background-color: #ff4767;
|
||||
|
|
@ -722,16 +692,16 @@
|
|||
justify-content: center;
|
||||
align-items: center;
|
||||
box-shadow: 0 4rpx 10rpx rgba(255, 71, 103, 0.3);
|
||||
}
|
||||
}
|
||||
|
||||
.login-text {
|
||||
.login-text {
|
||||
font-size: 30rpx;
|
||||
color: #fff;
|
||||
}
|
||||
}
|
||||
|
||||
::v-deep .list-scroll {
|
||||
::v-deep .list-scroll {
|
||||
margin-top: 0 !important;
|
||||
box-sizing: border-box;
|
||||
/* padding-top: 24rpx; */
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
|
@ -17,7 +17,7 @@
|
|||
</view>
|
||||
|
||||
<view v-else-if="currentStep === 2">
|
||||
<successruzhu :data="successData"></successruzhu>
|
||||
<successruzhu :data="successData" @stateChange="onStateChange"></successruzhu>
|
||||
</view>
|
||||
|
||||
<view v-else-if="currentStep === 3">
|
||||
|
|
@ -25,7 +25,7 @@
|
|||
</view>
|
||||
|
||||
<view v-else-if="currentStep === 4">
|
||||
<successruzhu :data="successData"></successruzhu>
|
||||
<successruzhu :data="successData" @stateChange="onStateChange"></successruzhu>
|
||||
</view>
|
||||
</view>
|
||||
<view class="kong"></view>
|
||||
|
|
@ -73,7 +73,7 @@
|
|||
<!-- 步骤3: 门店信息 -->
|
||||
<view v-else-if="currentStep === 3" class="step-2-buttons">
|
||||
<view class="button-row">
|
||||
<view class="prev-btn" @click="goPrev">
|
||||
<view v-if="!isRejected" class="prev-btn" @click="goPrev">
|
||||
<text class="prev-text">上一步</text>
|
||||
</view>
|
||||
<view class="submit-btn" @click="submitApplication">
|
||||
|
|
@ -84,7 +84,15 @@
|
|||
|
||||
<!-- 步骤4: 资质认证成功 -->
|
||||
<view v-else-if="currentStep === 4" class="step-2-buttons">
|
||||
<view class="button-row">
|
||||
<view v-if="isRejected" class="button-row">
|
||||
<view class="prev-btn" @click="resubmit">
|
||||
<text class="prev-text">重新提交</text>
|
||||
</view>
|
||||
<view class="showziliao1" @click="topt">
|
||||
<text class="showziliaotext1">进入平台</text>
|
||||
</view>
|
||||
</view>
|
||||
<view v-else class="button-row">
|
||||
<view class="showziliao" @click="topt">
|
||||
<text class="showziliaotext">进入平台</text>
|
||||
</view>
|
||||
|
|
@ -110,7 +118,7 @@ export default {
|
|||
},
|
||||
data() {
|
||||
return {
|
||||
currentStep: 3, // 当前步骤索引
|
||||
currentStep: 0, // 当前步骤索引
|
||||
isAgree: false,
|
||||
identity: null,
|
||||
textData: {},
|
||||
|
|
@ -120,6 +128,7 @@ export default {
|
|||
qualificationData: null, // 新增:保存资质信息
|
||||
storeInfoData: null, // 新增:保存门店信息
|
||||
successData: {}, //入驻提示
|
||||
isRejected: false, // 是否审核失败
|
||||
// 新增:缓存手艺人数据
|
||||
artisanDataCache: {
|
||||
personalInfo: null,
|
||||
|
|
@ -138,6 +147,10 @@ export default {
|
|||
},
|
||||
async onLoad(options) {
|
||||
console.log(options, 'options---');
|
||||
if (options.type == 0 && options.step == 3) {
|
||||
this.currentStep = 3
|
||||
this.isRejected = true
|
||||
}
|
||||
if (options.type == 1) {
|
||||
this.currentStep = 4
|
||||
}
|
||||
|
|
@ -165,6 +178,16 @@ export default {
|
|||
url: '/pages/home/home'
|
||||
})
|
||||
},
|
||||
onStateChange(state) {
|
||||
if (state === 3) {
|
||||
this.isRejected = true;
|
||||
}
|
||||
},
|
||||
resubmit() {
|
||||
uni.navigateTo({
|
||||
url: '/pages/ruzhu/ruzhu?type=0&step=3'
|
||||
});
|
||||
},
|
||||
// 获取用户信息(复用不可服务时间页面的方法)
|
||||
async getUserInfoSync() {
|
||||
await request.post('/sj/userSjAuth/details', {
|
||||
|
|
@ -807,6 +830,13 @@ export default {
|
|||
border-radius: 49rpx;
|
||||
}
|
||||
|
||||
.showziliao1 {
|
||||
width: 400rpx;
|
||||
height: 98rpx;
|
||||
background: #FF4767;
|
||||
border-radius: 49rpx;
|
||||
}
|
||||
|
||||
.showziliaotext {
|
||||
height: 40rpx;
|
||||
font-family: PingFangSC, PingFang SC;
|
||||
|
|
@ -818,4 +848,16 @@ export default {
|
|||
margin: 0 0 0 281rpx;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.showziliaotext1 {
|
||||
height: 40rpx;
|
||||
font-family: PingFangSC, PingFang SC;
|
||||
font-weight: 500;
|
||||
font-size: 32rpx;
|
||||
color: #FFFFFF;
|
||||
line-height: 96rpx;
|
||||
font-style: normal;
|
||||
margin: 0 0 0 140rpx;
|
||||
align-items: center;
|
||||
}
|
||||
</style>
|
||||
|
|
@ -391,6 +391,7 @@ export default {
|
|||
this.regionCitys = this.ChinaCitys[0].citys;
|
||||
this.regionAreas = this.regionCitys[0].areas;
|
||||
this.setupAddressListener();
|
||||
await this.loadDetailsData();
|
||||
},
|
||||
beforeDestroy() {
|
||||
this.removeAddressListener();
|
||||
|
|
@ -405,6 +406,67 @@ export default {
|
|||
});
|
||||
},
|
||||
|
||||
async loadDetailsData() {
|
||||
try {
|
||||
const res = await request.post('/sj/userSjAuth/details', {
|
||||
type: 1
|
||||
});
|
||||
if (res.code === 200 && res.data) {
|
||||
const data = res.data;
|
||||
this.$set(this.formData, 'uscc_photo', data.uscc_photo || '');
|
||||
this.$set(this.formData, 'uscc_type', data.uscc_type || '');
|
||||
this.$set(this.formData, 'uscc_num', data.uscc_num || '');
|
||||
this.$set(this.formData, 'uscc_name', data.uscc_name || '');
|
||||
this.$set(this.formData, 'uscc_dependency', data.uscc_dependency || '');
|
||||
this.$set(this.formData, 'uscc_address', data.uscc_address || '');
|
||||
this.$set(this.formData, 'uscc_province', data.uscc_province || '');
|
||||
this.$set(this.formData, 'uscc_city', data.uscc_city || '');
|
||||
this.$set(this.formData, 'uscc_area', data.uscc_area || '');
|
||||
this.$set(this.formData, 'longitude', data.longitude || '');
|
||||
this.$set(this.formData, 'latitude', data.latitude || '');
|
||||
this.$set(this.formData, 'legal_idcard_positive', data.legal_idcard_positive || '');
|
||||
this.$set(this.formData, 'legal_idcard_negative', data.legal_idcard_negative || '');
|
||||
this.$set(this.formData, 'legal_name', data.legal_name || '');
|
||||
this.$set(this.formData, 'legal_phone', data.legal_phone || '');
|
||||
this.$set(this.formData, 'legal_idcard_num', data.legal_idcard_num || '');
|
||||
// 处理身份证有效期:legal_idcard_expiry 拆分为 type、start、end
|
||||
if (data.legal_idcard_expiry) {
|
||||
const expiry = data.legal_idcard_expiry;
|
||||
if (expiry === '长久' || expiry === '长久有效') {
|
||||
this.$set(this.formData, 'legal_idcard_expiry_type', '1');
|
||||
this.$set(this.formData, 'legal_idcard_expiry_end', '长久有效');
|
||||
} else if (expiry.includes('——') || expiry.includes('--') || expiry.includes('-')) {
|
||||
const separator = expiry.includes('——') ? '——' : (expiry.includes('--') ? '--' : '-');
|
||||
const [startStr, endStr] = expiry.split(separator);
|
||||
const startDate = startStr.trim();
|
||||
const endDate = endStr.trim();
|
||||
this.$set(this.formData, 'legal_idcard_expiry_start', startDate);
|
||||
if (endDate === '长久' || !endDate) {
|
||||
this.$set(this.formData, 'legal_idcard_expiry_type', '1');
|
||||
this.$set(this.formData, 'legal_idcard_expiry_end', '长久有效');
|
||||
} else {
|
||||
this.$set(this.formData, 'legal_idcard_expiry_type', '2');
|
||||
this.$set(this.formData, 'legal_idcard_expiry_end', endDate);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
this.$set(this.formData, 'legal_idcard_expiry_type', data.legal_idcard_expiry_type || '1');
|
||||
this.$set(this.formData, 'legal_idcard_expiry_start', data.legal_idcard_expiry_start || '');
|
||||
this.$set(this.formData, 'legal_idcard_expiry_end', data.legal_idcard_expiry_end || '');
|
||||
}
|
||||
if (data.qualifications_sector) {
|
||||
this.$set(this.formData, 'qualifications_sector', typeof data.qualifications_sector === 'string' ? JSON.parse(data.qualifications_sector) : data.qualifications_sector);
|
||||
}
|
||||
if (data.qualifications_other) {
|
||||
this.$set(this.formData, 'qualifications_other', typeof data.qualifications_other === 'string' ? JSON.parse(data.qualifications_other) : data.qualifications_other);
|
||||
}
|
||||
console.log('sj-info 数据回显完成:', this.formData);
|
||||
}
|
||||
} catch (error) {
|
||||
console.error('获取详情数据失败:', error);
|
||||
}
|
||||
},
|
||||
|
||||
chooseImage(type) {
|
||||
uni.chooseImage({
|
||||
count: 1,
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
<template>
|
||||
<view class="pages">
|
||||
<custom-navbar :title="infoData.top" :showBack="true"></custom-navbar>
|
||||
<view class="title-icon">{{infoData.title}}</view>
|
||||
<view class="title-content">{{infoData.notice}}</view>
|
||||
<view class="title-icon">{{ infoData.title }}</view>
|
||||
<view class="title-content">{{ infoData.notice }}</view>
|
||||
<view class="erweimabox">
|
||||
<view class="erweimab">
|
||||
<image :src="infoData.photo" mode="widthFix"
|
||||
|
|
@ -37,7 +37,27 @@ export default {
|
|||
const res = await request.post('/sj/userSjAuth/getCustomerService');
|
||||
console.log('客服接口返回:', res);
|
||||
if (res && (res.state == 1 || res.code == 200)) {
|
||||
if (res.data.state != 3) {
|
||||
this.infoData = res.data || {};
|
||||
} else {
|
||||
this.infoData = {
|
||||
top: '审核结果',
|
||||
title: '审核失败',
|
||||
photo: res.data.photo
|
||||
};
|
||||
this.$emit('stateChange', 3);
|
||||
request.post('/sj/userSjAuth/details', {
|
||||
type: 1
|
||||
}).then(res => {
|
||||
if (res && (res.state == 1 || res.code == 200)) {
|
||||
console.log(res.data.back_text, '驳回res')
|
||||
this.infoData = {
|
||||
...this.infoData,
|
||||
notice: res.data.back_text || '您的入驻申请未通过,请重新提交申请'
|
||||
};
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
} catch (e) {
|
||||
console.error('获取客服信息失败:', e);
|
||||
|
|
|
|||
Loading…
Reference in New Issue