修复若干bug
This commit is contained in:
parent
f72f164fd8
commit
2fcfba42ea
|
|
@ -13,7 +13,7 @@
|
||||||
<input :adjust-position="false" class="real-input" type="number" :maxlength="codeLength"
|
<input :adjust-position="false" class="real-input" type="number" :maxlength="codeLength"
|
||||||
v-model="inputValue" :focus="true" @input="onInput" @focus="onFocus"
|
v-model="inputValue" :focus="true" @input="onInput" @focus="onFocus"
|
||||||
@keyboardheightchange="onkeyboardheightchange" @blur="onBlur" cursor-spacing="100"
|
@keyboardheightchange="onkeyboardheightchange" @blur="onBlur" cursor-spacing="100"
|
||||||
ref="realInput" />
|
cursor-color="transparent" ref="realInput" />
|
||||||
</view>
|
</view>
|
||||||
<button class="confirm-btn" :disabled="code.length < codeLength" @click="onConfirm">确定</button>
|
<button class="confirm-btn" :disabled="code.length < codeLength" @click="onConfirm">确定</button>
|
||||||
<view class="close-btn" @click="close">×</view>
|
<view class="close-btn" @click="close">×</view>
|
||||||
|
|
@ -187,6 +187,7 @@ export default {
|
||||||
height: 100%;
|
height: 100%;
|
||||||
opacity: 0;
|
opacity: 0;
|
||||||
z-index: 2;
|
z-index: 2;
|
||||||
|
caret-color: transparent;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -89,8 +89,12 @@
|
||||||
"path": "pages/order/userorder-list",
|
"path": "pages/order/userorder-list",
|
||||||
"style": {
|
"style": {
|
||||||
"navigationBarTitleText": "订单",
|
"navigationBarTitleText": "订单",
|
||||||
"navigationBarBackgroundColor": "#FFFFFF"
|
"navigationBarBackgroundColor": "#FFFFFF",
|
||||||
|
"app-plus": {
|
||||||
|
"softinputNavBar": "none"
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"path": "pages/order/userorder-detail",
|
"path": "pages/order/userorder-detail",
|
||||||
|
|
|
||||||
|
|
@ -679,7 +679,8 @@ export default {
|
||||||
fetchBrandList() {
|
fetchBrandList() {
|
||||||
request.post('/sj/brand/list', {
|
request.post('/sj/brand/list', {
|
||||||
page: 1,
|
page: 1,
|
||||||
limit: 4
|
limit: 4,
|
||||||
|
poster_recommend: 1
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
if (res.code == 200 && res.data && res.data.list) {
|
if (res.code == 200 && res.data && res.data.list) {
|
||||||
this.brands = res.data.list.map(item => {
|
this.brands = res.data.list.map(item => {
|
||||||
|
|
@ -706,7 +707,8 @@ export default {
|
||||||
fetchSkillList() {
|
fetchSkillList() {
|
||||||
request.post('/sj/skill/list', {
|
request.post('/sj/skill/list', {
|
||||||
page: 1,
|
page: 1,
|
||||||
limit: 4
|
limit: 4,
|
||||||
|
poster_recommend: 1
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
if (res.code == 200 && res.data && res.data.list) {
|
if (res.code == 200 && res.data && res.data.list) {
|
||||||
this.skills = res.data.list.map(item => {
|
this.skills = res.data.list.map(item => {
|
||||||
|
|
@ -1093,7 +1095,7 @@ page {
|
||||||
.name {
|
.name {
|
||||||
height: 42rpx;
|
height: 42rpx;
|
||||||
font-family: PingFangTC, PingFangTC;
|
font-family: PingFangTC, PingFangTC;
|
||||||
font-weight: bold;
|
font-weight: 500;
|
||||||
font-size: 34rpx;
|
font-size: 34rpx;
|
||||||
color: #333333;
|
color: #333333;
|
||||||
line-height: 42rpx;
|
line-height: 42rpx;
|
||||||
|
|
|
||||||
|
|
@ -1,40 +1,24 @@
|
||||||
<template>
|
<template>
|
||||||
<view>
|
<view>
|
||||||
<custom-navbar
|
<custom-navbar title="精选品牌"
|
||||||
title="精选品牌"
|
|
||||||
:leftImg="'https://mrrplus.oss-cn-beijing.aliyuncs.com/photo/system/60ae3383-6ff6-4f42-818b-d9b09a9bd0e0.png'"
|
:leftImg="'https://mrrplus.oss-cn-beijing.aliyuncs.com/photo/system/60ae3383-6ff6-4f42-818b-d9b09a9bd0e0.png'"
|
||||||
:showUser="true"
|
:showUser="true"
|
||||||
backgroundColor="url('https://mrrplus.oss-cn-beijing.aliyuncs.com/photo/system/ce2e62e1-c26a-45c8-a49d-7ed00b2ce02c.png') center 20%/cover no-repeat"
|
backgroundColor="url('https://mrrplus.oss-cn-beijing.aliyuncs.com/photo/system/ce2e62e1-c26a-45c8-a49d-7ed00b2ce02c.png') center 20%/cover no-repeat"
|
||||||
titleColor="#333"
|
titleColor="#333" borderBottom="none" :show-headle="true"
|
||||||
borderBottom="none"
|
|
||||||
:show-headle="true"
|
|
||||||
headleSrc="https://mrrplus.oss-cn-beijing.aliyuncs.com/photo/system/51ebca5d-95c5-4fb8-8aa3-560a79100d25.png"
|
headleSrc="https://mrrplus.oss-cn-beijing.aliyuncs.com/photo/system/51ebca5d-95c5-4fb8-8aa3-560a79100d25.png"
|
||||||
@onHeadleClick="goToSearch">
|
@onHeadleClick="goToSearch" class="nav-img-size">
|
||||||
</custom-navbar>
|
</custom-navbar>
|
||||||
|
|
||||||
<serviecFirstTab
|
<serviecFirstTab :tabs="tabs" :activeId="activeId" activeColor="#FF4767" @tab-click="tabClick" bgColor="#fff">
|
||||||
:tabs="tabs"
|
|
||||||
:activeId="activeId"
|
|
||||||
activeColor="#FF4767"
|
|
||||||
@tab-click="tabClick"
|
|
||||||
bgColor="#fff">
|
|
||||||
</serviecFirstTab>
|
</serviecFirstTab>
|
||||||
|
|
||||||
<CommonList
|
<CommonList ref="brandListRef" :apiUrl="'/sj/brand/list'" :initialQuery="{}"
|
||||||
ref="brandListRef"
|
:listScrollHeight="`calc(100vh - ${statusBarHeight * 2 + 250}rpx)`" @data-loaded="handleDataLoaded">
|
||||||
:apiUrl="'/sj/brand/list'"
|
|
||||||
:initialQuery="{}"
|
|
||||||
:listScrollHeight="`calc(100vh - ${statusBarHeight * 2 + 250}rpx)`"
|
|
||||||
@data-loaded="handleDataLoaded">
|
|
||||||
|
|
||||||
<template #headerScroll>
|
<template #headerScroll>
|
||||||
<view class="icon-tabs">
|
<view class="icon-tabs">
|
||||||
<view
|
<view v-for="item in iconTabs" :key="item.id" class="icon-tab"
|
||||||
v-for="item in iconTabs"
|
:class="{ active: currentSecondClass == item.id }" @click="selectSecondClass(item.id)">
|
||||||
:key="item.id"
|
|
||||||
class="icon-tab"
|
|
||||||
:class="{active: currentSecondClass == item.id}"
|
|
||||||
@click="selectSecondClass(item.id)">
|
|
||||||
<image :src="item.photo" class="icon-img" mode="aspectFill"></image>
|
<image :src="item.photo" class="icon-img" mode="aspectFill"></image>
|
||||||
<text class="icon-text">{{ item.title }}</text>
|
<text class="icon-text">{{ item.title }}</text>
|
||||||
</view>
|
</view>
|
||||||
|
|
@ -62,14 +46,8 @@
|
||||||
<template #listData="{ list }">
|
<template #listData="{ list }">
|
||||||
<view class="zhanwei">
|
<view class="zhanwei">
|
||||||
<view class="brand-grid">
|
<view class="brand-grid">
|
||||||
<brand-card
|
<brand-card class="brand-card-wrap" v-for="(brand, idx) in enrichedBrandList(list)" :key="brand.id || idx"
|
||||||
class="brand-card-wrap"
|
:item="brand" :tagKeys="brand._tagKeys" @click="handleBrandClick(brand)" />
|
||||||
v-for="(brand, idx) in enrichedBrandList(list)"
|
|
||||||
:key="brand.id || idx"
|
|
||||||
:item="brand"
|
|
||||||
:tagKeys="brand._tagKeys"
|
|
||||||
@click="handleBrandClick(brand)"
|
|
||||||
/>
|
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
@ -156,7 +134,7 @@ export default {
|
||||||
title: first.title,
|
title: first.title,
|
||||||
children: ((subRes.code === 200 || subRes.state === 1) && subRes.data) ? subRes.data : []
|
children: ((subRes.code === 200 || subRes.state === 1) && subRes.data) ? subRes.data : []
|
||||||
}
|
}
|
||||||
} catch(e) {
|
} catch (e) {
|
||||||
return { id: first.id, title: first.title, children: [] }
|
return { id: first.id, title: first.title, children: [] }
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
@ -202,7 +180,7 @@ export default {
|
||||||
},
|
},
|
||||||
|
|
||||||
selectSecondClass(id) {
|
selectSecondClass(id) {
|
||||||
if(this.currentSecondClass === id){
|
if (this.currentSecondClass === id) {
|
||||||
this.currentSecondClass = "";
|
this.currentSecondClass = "";
|
||||||
} else {
|
} else {
|
||||||
this.currentSecondClass = id;
|
this.currentSecondClass = id;
|
||||||
|
|
@ -238,7 +216,7 @@ export default {
|
||||||
if (params[key] === undefined) delete params[key];
|
if (params[key] === undefined) delete params[key];
|
||||||
});
|
});
|
||||||
|
|
||||||
if(this.$refs.brandListRef) {
|
if (this.$refs.brandListRef) {
|
||||||
this.$refs.brandListRef.manualRefresh(params);
|
this.$refs.brandListRef.manualRefresh(params);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
@ -289,41 +267,54 @@ export default {
|
||||||
z-index: 101;
|
z-index: 101;
|
||||||
}
|
}
|
||||||
|
|
||||||
::v-deep .service-first-tab{
|
::v-deep .service-first-tab {
|
||||||
box-shadow: none !important;
|
box-shadow: none !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ================= 抽屉下拉样式 ================= */
|
/* ================= 抽屉下拉样式 ================= */
|
||||||
.filter-panel {
|
.filter-panel {
|
||||||
position: fixed;
|
position: fixed;
|
||||||
left: 0; right: 0; bottom: 0;
|
left: 0;
|
||||||
|
right: 0;
|
||||||
|
bottom: 0;
|
||||||
z-index: 100;
|
z-index: 100;
|
||||||
pointer-events: none;
|
pointer-events: none;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
|
|
||||||
&.show {
|
&.show {
|
||||||
pointer-events: auto;
|
pointer-events: auto;
|
||||||
.filter-mask { opacity: 1; }
|
|
||||||
.filter-container { transform: translateY(0); }
|
.filter-mask {
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.filter-container {
|
||||||
|
transform: translateY(0);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.filter-mask {
|
.filter-mask {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 0; left: 0; right: 0; bottom: 0;
|
top: 0;
|
||||||
background: rgba(0,0,0,0.4);
|
left: 0;
|
||||||
|
right: 0;
|
||||||
|
bottom: 0;
|
||||||
|
background: rgba(0, 0, 0, 0.4);
|
||||||
opacity: 0;
|
opacity: 0;
|
||||||
transition: opacity 0.3s ease-in-out;
|
transition: opacity 0.3s ease-in-out;
|
||||||
}
|
}
|
||||||
|
|
||||||
.filter-container {
|
.filter-container {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 0; left: 0; right: 0;
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
right: 0;
|
||||||
background: #fff;
|
background: #fff;
|
||||||
border-radius: 0 0 30rpx 30rpx;
|
border-radius: 0 0 30rpx 30rpx;
|
||||||
padding: 140rpx 30rpx 40rpx;
|
padding: 140rpx 30rpx 40rpx;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
box-shadow: 0 10rpx 20rpx rgba(0,0,0,0.05);
|
box-shadow: 0 10rpx 20rpx rgba(0, 0, 0, 0.05);
|
||||||
transform: translateY(-100%);
|
transform: translateY(-100%);
|
||||||
transition: transform 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
|
transition: transform 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
|
||||||
}
|
}
|
||||||
|
|
@ -332,6 +323,7 @@ export default {
|
||||||
.filter-scroll {
|
.filter-scroll {
|
||||||
max-height: 50vh;
|
max-height: 50vh;
|
||||||
}
|
}
|
||||||
|
|
||||||
.filter-group {
|
.filter-group {
|
||||||
margin-bottom: 30rpx;
|
margin-bottom: 30rpx;
|
||||||
|
|
||||||
|
|
@ -346,17 +338,20 @@ export default {
|
||||||
.pill-list {
|
.pill-list {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-wrap: wrap;
|
flex-wrap: wrap;
|
||||||
gap: 20rpx 10rpx; /* 控制行间距和列间距 */
|
gap: 20rpx 10rpx;
|
||||||
|
/* 控制行间距和列间距 */
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 通用胶囊按钮 (一行四个) */
|
/* 通用胶囊按钮 (一行四个) */
|
||||||
.pill-item {
|
.pill-item {
|
||||||
width: calc(25% - 8rpx); /* 精确计算一行四个 */
|
width: calc(25% - 8rpx);
|
||||||
|
/* 精确计算一行四个 */
|
||||||
height: 58rpx;
|
height: 58rpx;
|
||||||
background: #F5F5F5;
|
background: #F5F5F5;
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
font-size: 24rpx; /* 字号略小以防溢出 */
|
font-size: 24rpx;
|
||||||
|
/* 字号略小以防溢出 */
|
||||||
color: #333333;
|
color: #333333;
|
||||||
line-height: 37rpx;
|
line-height: 37rpx;
|
||||||
|
|
||||||
|
|
@ -381,15 +376,25 @@ export default {
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
margin-top: 40rpx;
|
margin-top: 40rpx;
|
||||||
.reset-btn, .confirm-btn {
|
|
||||||
|
.reset-btn,
|
||||||
|
.confirm-btn {
|
||||||
width: 47%;
|
width: 47%;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
padding: 22rpx 0;
|
padding: 22rpx 0;
|
||||||
border-radius: 40rpx;
|
border-radius: 40rpx;
|
||||||
font-size: 28rpx;
|
font-size: 28rpx;
|
||||||
}
|
}
|
||||||
.reset-btn { background: #F5F5F5; color: #666; }
|
|
||||||
.confirm-btn { background: #FF4767; color: #fff; }
|
.reset-btn {
|
||||||
|
background: #F5F5F5;
|
||||||
|
color: #666;
|
||||||
|
}
|
||||||
|
|
||||||
|
.confirm-btn {
|
||||||
|
background: #FF4767;
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ================= 其他页面样式 ================= */
|
/* ================= 其他页面样式 ================= */
|
||||||
|
|
@ -480,9 +485,10 @@ export default {
|
||||||
// 品牌卡片网格
|
// 品牌卡片网格
|
||||||
.zhanwei {
|
.zhanwei {
|
||||||
background-color: #f5f5f5;
|
background-color: #f5f5f5;
|
||||||
padding: 20rpx 0 0 0 ;
|
padding: 20rpx 0 0 0;
|
||||||
border-radius: 20rpx 20rpx 0rpx 0rpx;
|
border-radius: 20rpx 20rpx 0rpx 0rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.brand-grid {
|
.brand-grid {
|
||||||
background-color: #ffffff;
|
background-color: #ffffff;
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|
@ -501,6 +507,7 @@ export default {
|
||||||
::v-deep .list-container {
|
::v-deep .list-container {
|
||||||
padding: 0;
|
padding: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
::v-deep .list-scroll {
|
::v-deep .list-scroll {
|
||||||
margin-top: 0rpx;
|
margin-top: 0rpx;
|
||||||
}
|
}
|
||||||
|
|
@ -510,4 +517,9 @@ export default {
|
||||||
background-color: #f5f5f5;
|
background-color: #f5f5f5;
|
||||||
border-radius: 20rpx 20rpx 0 0;
|
border-radius: 20rpx 20rpx 0 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.nav-img-size::v-deep .icon-headle {
|
||||||
|
width: 36rpx !important;
|
||||||
|
height: 36rpx !important;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
@ -909,8 +909,12 @@ export default {
|
||||||
toruzhu() {
|
toruzhu() {
|
||||||
const idType = this.userInfo.id_type;
|
const idType = this.userInfo.id_type;
|
||||||
const credentialsState = this.userInfo.credentials_state;
|
const credentialsState = this.userInfo.credentials_state;
|
||||||
console.log(idType, credentialsState)
|
if (idType < 0 && credentialsState <= 1) {
|
||||||
if (idType <= 0 && credentialsState === 0) {
|
// 驳回状态
|
||||||
|
uni.navigateTo({
|
||||||
|
url: '/pages/ruzhu/ruzhu?type=1'
|
||||||
|
});
|
||||||
|
} else if (idType <= 0 && credentialsState === 0) {
|
||||||
// 从未入驻
|
// 从未入驻
|
||||||
uni.navigateTo({
|
uni.navigateTo({
|
||||||
url: '/pages/ruzhu/ruzhu'
|
url: '/pages/ruzhu/ruzhu'
|
||||||
|
|
|
||||||
|
|
@ -2,8 +2,8 @@
|
||||||
<view class="collection-page">
|
<view class="collection-page">
|
||||||
|
|
||||||
<custom-navbar title="我的收藏" :showBack="true" backgroundColor="#FFFFFF" :show-headle="true" borderBottom="none"
|
<custom-navbar title="我的收藏" :showBack="true" backgroundColor="#FFFFFF" :show-headle="true" borderBottom="none"
|
||||||
headleSrc="https://mrrplus.oss-cn-beijing.aliyuncs.com/photo/system/51ebca5d-95c5-4fb8-8aa3-560a79100d25.png"
|
headleSrc="https://mrrplus.oss-cn-beijing.aliyuncs.com/photo/system/b18bac2f-3e4c-4586-9d45-0f088629c9d1.png"
|
||||||
@onHeadleClick="goToSearch">
|
@onHeadleClick="goToSearch" class="serch-tap">
|
||||||
</custom-navbar>
|
</custom-navbar>
|
||||||
|
|
||||||
<view class="tab-bar-wrap" :style="{ top: navHeight + 'px' }">
|
<view class="tab-bar-wrap" :style="{ top: navHeight + 'px' }">
|
||||||
|
|
@ -16,11 +16,7 @@
|
||||||
收藏的课程
|
收藏的课程
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="filter-area" @tap="toggleFilterPanel"
|
|
||||||
v-if="currentTab === 'brand' ? rawBrandList.length > 0 : rawCourseList.length > 0">
|
|
||||||
<text class="filter-text">筛选</text>
|
|
||||||
<image class="filter-icon" :src="filterIcon" mode="aspectFit" :class="{ 'rotate': filterVisible }"></image>
|
|
||||||
</view>
|
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
|
|
@ -449,7 +445,7 @@ export default {
|
||||||
&.active {
|
&.active {
|
||||||
color: #FF4767;
|
color: #FF4767;
|
||||||
background: #FFECEF;
|
background: #FFECEF;
|
||||||
border: 1rpx solid #FFB0BD;
|
border: 2rpx solid #FFB0BD;
|
||||||
border-radius: 29rpx;
|
border-radius: 29rpx;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -633,8 +629,9 @@ export default {
|
||||||
|
|
||||||
/* 内容区缩进补充 */
|
/* 内容区缩进补充 */
|
||||||
.collection-content {
|
.collection-content {
|
||||||
padding: 0 24rpx;
|
padding: 0 24rpx 24rpx;
|
||||||
margin-top: 20rpx;
|
margin-top: 20rpx;
|
||||||
|
overflow: hidden;
|
||||||
}
|
}
|
||||||
|
|
||||||
.brand-grid {
|
.brand-grid {
|
||||||
|
|
@ -667,7 +664,7 @@ export default {
|
||||||
}
|
}
|
||||||
|
|
||||||
::v-deep .icon-headle {
|
::v-deep .icon-headle {
|
||||||
width: 32rpx !important;
|
width: 36rpx !important;
|
||||||
height: 32rpx !important;
|
height: 36rpx !important;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
@ -21,10 +21,10 @@
|
||||||
</view>
|
</view>
|
||||||
</scroll-view>
|
</scroll-view>
|
||||||
</view>
|
</view>
|
||||||
|
<view style="background-color: #f5f5f5; height: 20rpx"></view>
|
||||||
<CommonList ref="groupRef" :isLogin="isLogin" :apiUrl="apiUrl"
|
<CommonList nList ref="groupRef" :isLogin="isLogin" :apiUrl="apiUrl"
|
||||||
:listScrollHeight="`calc(100vh - 280rpx - 100rpx)`" @load-success="loadSuccess">
|
:listScrollHeight="`calc(100vh - 280rpx - 20rpx)`" @load-success="loadSuccess" class="nodatamit">
|
||||||
<template #listData="{ list }">
|
<template #listData="{ list }" class="commit">
|
||||||
<view class="order-item-wrap" v-for="item in popList" :key="item.id">
|
<view class="order-item-wrap" v-for="item in popList" :key="item.id">
|
||||||
<OrderCard v-if="activeFirstId != 3" :haveButton="haveButton" :dataItem="item"
|
<OrderCard v-if="activeFirstId != 3" :haveButton="haveButton" :dataItem="item"
|
||||||
:typeId="activeFirstId" @cancel="cancelOrder($event, item)" @start="startOrder($event, item)"
|
:typeId="activeFirstId" @cancel="cancelOrder($event, item)" @start="startOrder($event, item)"
|
||||||
|
|
@ -582,13 +582,13 @@ export default {
|
||||||
/* #endif */
|
/* #endif */
|
||||||
left: 0;
|
left: 0;
|
||||||
right: 0;
|
right: 0;
|
||||||
background: #fff;
|
background: #fafafa;
|
||||||
z-index: 99;
|
z-index: 99;
|
||||||
}
|
}
|
||||||
|
|
||||||
.status-tabs {
|
.status-tabs {
|
||||||
height: 94rpx;
|
height: 94rpx;
|
||||||
background-color: #ffffff;
|
background-color: #fafafa;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -624,7 +624,7 @@ export default {
|
||||||
|
|
||||||
.status-tabs2 {
|
.status-tabs2 {
|
||||||
height: 56rpx;
|
height: 56rpx;
|
||||||
background-color: #ffffff;
|
background-color: #fafafa;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
padding-bottom: 30rpx;
|
padding-bottom: 30rpx;
|
||||||
padding-top: 10rpx;
|
padding-top: 10rpx;
|
||||||
|
|
@ -654,8 +654,7 @@ export default {
|
||||||
|
|
||||||
/* 数据列表及卡片外框样式 */
|
/* 数据列表及卡片外框样式 */
|
||||||
.order-item-wrap {
|
.order-item-wrap {
|
||||||
background-color: #fff;
|
background-color: #f5f5f5;
|
||||||
border-radius: 12px;
|
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -704,4 +703,8 @@ export default {
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
/* padding-top: 24rpx; */
|
/* padding-top: 24rpx; */
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.nodatamit {
|
||||||
|
background-color: #f5f5f5;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
@ -13,13 +13,8 @@
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<view class="service-time-card">
|
<view class="service-time-card" v-if="hasBusinessTime">
|
||||||
<view class="card-header-flex" @click="isExpandTime = !isExpandTime">
|
<view class="time-content">
|
||||||
<text class="header-title">{{ isExpandTime ? '服务时间' : '设置服务时间' }}</text>
|
|
||||||
<image class="arrow-icon" :class="{ 'rotated': isExpandTime }" src="https://mrrplus.oss-cn-beijing.aliyuncs.com/photo/system/6cfe4592-e9c6-45b6-ac45-625bc361aded.png"></image>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view class="time-content" v-if="isExpandTime">
|
|
||||||
<view class="time-blocks-container">
|
<view class="time-blocks-container">
|
||||||
<view class="t-block">
|
<view class="t-block">
|
||||||
<text class="t-time">{{ formatTime(startTime) }}</text>
|
<text class="t-time">{{ formatTime(startTime) }}</text>
|
||||||
|
|
@ -33,15 +28,29 @@
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<view class="modify-btn-outline" @click="showTimePicker" v-if="!showBottomActions && !showTimePickerFlag">
|
<view class="modify-btn-outline" @click="showTimePicker" v-if="!showBottomActions && !showTimePickerFlag">
|
||||||
<image class="edit-icon" src="https://mrrplus.oss-cn-beijing.aliyuncs.com/photo/system/d67adcda-d334-440f-87d4-d709983b0101.png"></image>
|
<image class="edit-icon"
|
||||||
|
src="https://mrrplus.oss-cn-beijing.aliyuncs.com/photo/system/d67adcda-d334-440f-87d4-d709983b0101.png">
|
||||||
|
</image>
|
||||||
<text>修改服务时间</text>
|
<text>修改服务时间</text>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
|
<view class="service-time-card1" v-if="!hasBusinessTime">
|
||||||
|
|
||||||
|
<view class="modify-btn-outline1" @click="showTimePicker">
|
||||||
|
<image class="edit-icon"
|
||||||
|
src="https://mrrplus.oss-cn-beijing.aliyuncs.com/photo/system/176a8b35-14bd-4cd1-a187-4165d07c0dcb.png">
|
||||||
|
</image>
|
||||||
|
<text>设置服务时间</text>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
|
||||||
<view class="setup-modal-mask" v-if="showSetupModal" catchtouchmove="true">
|
<view class="setup-modal-mask" v-if="showSetupModal" catchtouchmove="true">
|
||||||
<view class="setup-modal-content">
|
<view class="setup-modal-content">
|
||||||
<image class="modal-bg" src="https://mrrplus.oss-cn-beijing.aliyuncs.com/photo/system/ac2cb4aa-a7c5-4776-98f4-b77e9c0cfa85.png"></image>
|
<image class="modal-bg"
|
||||||
|
src="https://mrrplus.oss-cn-beijing.aliyuncs.com/photo/system/ac2cb4aa-a7c5-4776-98f4-b77e9c0cfa85.png">
|
||||||
|
</image>
|
||||||
|
|
||||||
<view class="modal-header">
|
<view class="modal-header">
|
||||||
<text>温馨提示</text>
|
<text>温馨提示</text>
|
||||||
|
|
@ -53,7 +62,9 @@
|
||||||
<view class="missing-list">
|
<view class="missing-list">
|
||||||
<view class="missing-item" v-if="!hasBusinessTime">
|
<view class="missing-item" v-if="!hasBusinessTime">
|
||||||
<view class="item-left">
|
<view class="item-left">
|
||||||
<image class="item-icon" src="https://mrrplus.oss-cn-beijing.aliyuncs.com/photo/system/21b26b44-5e36-4291-8900-705a3d5bfa90.png"></image>
|
<image class="item-icon"
|
||||||
|
src="https://mrrplus.oss-cn-beijing.aliyuncs.com/photo/system/21b26b44-5e36-4291-8900-705a3d5bfa90.png">
|
||||||
|
</image>
|
||||||
<view class="item-texts">
|
<view class="item-texts">
|
||||||
<text class="item-title">营业时间未配置</text>
|
<text class="item-title">营业时间未配置</text>
|
||||||
<text class="item-desc">请完善店铺的营业时间</text>
|
<text class="item-desc">请完善店铺的营业时间</text>
|
||||||
|
|
@ -64,7 +75,9 @@
|
||||||
|
|
||||||
<view class="missing-item" v-if="!hasServiceSkill">
|
<view class="missing-item" v-if="!hasServiceSkill">
|
||||||
<view class="item-left">
|
<view class="item-left">
|
||||||
<image class="item-icon" src="https://mrrplus.oss-cn-beijing.aliyuncs.com/photo/system/21b26b44-5e36-4291-8900-705a3d5bfa90.png"></image>
|
<image class="item-icon"
|
||||||
|
src="https://mrrplus.oss-cn-beijing.aliyuncs.com/photo/system/21b26b44-5e36-4291-8900-705a3d5bfa90.png">
|
||||||
|
</image>
|
||||||
<view class="item-texts">
|
<view class="item-texts">
|
||||||
<text class="item-title">服务技能未配置</text>
|
<text class="item-title">服务技能未配置</text>
|
||||||
<text class="item-desc">请完善服务技能</text>
|
<text class="item-desc">请完善服务技能</text>
|
||||||
|
|
@ -75,9 +88,13 @@
|
||||||
|
|
||||||
<view class="missing-item" v-if="!isCertified">
|
<view class="missing-item" v-if="!isCertified">
|
||||||
<view class="item-left">
|
<view class="item-left">
|
||||||
<image class="item-icon" :src="isUnderReview ? 'https://mrrplus.oss-cn-beijing.aliyuncs.com/photo/system/25c444be-a66e-45d6-b50d-922149ff059f.png' : 'https://mrrplus.oss-cn-beijing.aliyuncs.com/photo/system/21b26b44-5e36-4291-8900-705a3d5bfa90.png'"></image>
|
<image class="item-icon"
|
||||||
|
:src="isUnderReview ? 'https://mrrplus.oss-cn-beijing.aliyuncs.com/photo/system/25c444be-a66e-45d6-b50d-922149ff059f.png' : 'https://mrrplus.oss-cn-beijing.aliyuncs.com/photo/system/21b26b44-5e36-4291-8900-705a3d5bfa90.png'">
|
||||||
|
</image>
|
||||||
<view class="item-texts">
|
<view class="item-texts">
|
||||||
<text class="item-title" :class="{'blue-text': isUnderReview}">{{ isUnderReview ? '资质认证中' : '资质未认证' }}</text>
|
<text class="item-title" :class="{ 'blue-text': isUnderReview }">{{ isUnderReview ? '资质认证中' :
|
||||||
|
'资质未认证'
|
||||||
|
}}</text>
|
||||||
<text class="item-desc">请完成资质认证</text>
|
<text class="item-desc">请完成资质认证</text>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
@ -103,15 +120,13 @@
|
||||||
<text class="confirm-text" @click="confirmTime">确定</text>
|
<text class="confirm-text" @click="confirmTime">确定</text>
|
||||||
</view>
|
</view>
|
||||||
<view class="time-range">
|
<view class="time-range">
|
||||||
<view class="time-block" :class="{ active: timeType === 'start' }"
|
<view class="time-block" :class="{ active: timeType === 'start' }" @click="switchTimeType('start')">
|
||||||
@click="switchTimeType('start')">
|
<text class="time-value-picker">{{ formatTime(startTime) }}</text>
|
||||||
<text class="time-value-picker">{{formatTime(startTime)}}</text>
|
|
||||||
<text class="time-label">开始时间</text>
|
<text class="time-label">开始时间</text>
|
||||||
</view>
|
</view>
|
||||||
<text class="time-separator">至</text>
|
<text class="time-separator">至</text>
|
||||||
<view class="time-block" :class="{ active: timeType === 'end' }"
|
<view class="time-block" :class="{ active: timeType === 'end' }" @click="switchTimeType('end')">
|
||||||
@click="switchTimeType('end')">
|
<text class="time-value-picker">{{ formatTime(endTime) }}</text>
|
||||||
<text class="time-value-picker">{{formatTime(endTime)}}</text>
|
|
||||||
<text class="time-label">结束时间</text>
|
<text class="time-label">结束时间</text>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
@ -120,12 +135,12 @@
|
||||||
:indicator-style="indicatorStyle">
|
:indicator-style="indicatorStyle">
|
||||||
<picker-view-column>
|
<picker-view-column>
|
||||||
<view class="picker-item" v-for="(hour, index) in hours" :key="index">
|
<view class="picker-item" v-for="(hour, index) in hours" :key="index">
|
||||||
{{hour}}
|
{{ hour }}
|
||||||
</view>
|
</view>
|
||||||
</picker-view-column>
|
</picker-view-column>
|
||||||
<picker-view-column>
|
<picker-view-column>
|
||||||
<view class="picker-item" v-for="(minute, index) in minutes" :key="index">
|
<view class="picker-item" v-for="(minute, index) in minutes" :key="index">
|
||||||
{{minute}}
|
{{ minute }}
|
||||||
</view>
|
</view>
|
||||||
</picker-view-column>
|
</picker-view-column>
|
||||||
<picker-view-column>
|
<picker-view-column>
|
||||||
|
|
@ -133,12 +148,12 @@
|
||||||
</picker-view-column>
|
</picker-view-column>
|
||||||
<picker-view-column>
|
<picker-view-column>
|
||||||
<view class="picker-item" v-for="(hour, index) in hours" :key="index">
|
<view class="picker-item" v-for="(hour, index) in hours" :key="index">
|
||||||
{{hour}}
|
{{ hour }}
|
||||||
</view>
|
</view>
|
||||||
</picker-view-column>
|
</picker-view-column>
|
||||||
<picker-view-column>
|
<picker-view-column>
|
||||||
<view class="picker-item" v-for="(minute, index) in minutes" :key="index">
|
<view class="picker-item" v-for="(minute, index) in minutes" :key="index">
|
||||||
{{minute}}
|
{{ minute }}
|
||||||
</view>
|
</view>
|
||||||
</picker-view-column>
|
</picker-view-column>
|
||||||
</picker-view>
|
</picker-view>
|
||||||
|
|
@ -189,7 +204,7 @@ export default {
|
||||||
authDetails: null,
|
authDetails: null,
|
||||||
sjId: null,
|
sjId: null,
|
||||||
showSetupModal: false,
|
showSetupModal: false,
|
||||||
isExpandTime: false, // 控制服务时间卡片的折叠(false)与展开(true)
|
isExpandTime: true, // 默认展开服务时间
|
||||||
isLogin: true // 默认已登录
|
isLogin: true // 默认已登录
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
@ -334,15 +349,15 @@ export default {
|
||||||
const currentStatus = this.userInfo.order_taking;
|
const currentStatus = this.userInfo.order_taking;
|
||||||
const isCurrentlyResting = currentStatus != 1; // 当前不是营业中即为休息中
|
const isCurrentlyResting = currentStatus != 1; // 当前不是营业中即为休息中
|
||||||
|
|
||||||
// 强力拦截:在休息中且三大件没配全,想要接单时直接拦截弹窗
|
|
||||||
if (isCurrentlyResting && !this.canOpenStore) {
|
|
||||||
this.showSetupModal = true;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// 准备切换的新状态
|
// 准备切换的新状态
|
||||||
let newStatus = currentStatus == 1 ? 2 : 1;
|
let newStatus = currentStatus == 1 ? 2 : 1;
|
||||||
|
|
||||||
|
// 想要开始接单时,检查是否配置了营业时间
|
||||||
|
if (newStatus === 1 && !this.hasBusinessTime) {
|
||||||
|
uni.showToast({ title: '请配置营业时间', icon: 'none' });
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
uni.showLoading({ title: '切换中...', mask: true });
|
uni.showLoading({ title: '切换中...', mask: true });
|
||||||
|
|
||||||
request.post("/sj/sjordertaking", {
|
request.post("/sj/sjordertaking", {
|
||||||
|
|
@ -431,12 +446,10 @@ export default {
|
||||||
return `${time.hour}:${time.minute}`
|
return `${time.hour}:${time.minute}`
|
||||||
},
|
},
|
||||||
|
|
||||||
// 确认时间选择
|
// 确认时间选择 - 直接提交
|
||||||
confirmTime() {
|
confirmTime() {
|
||||||
const newTime = `${this.formatTime(this.startTime)}-${this.formatTime(this.endTime)}`
|
const newTime = `${this.formatTime(this.startTime)}-${this.formatTime(this.endTime)}`
|
||||||
|
|
||||||
console.log('选择的时间:', newTime) // 调试日志
|
|
||||||
|
|
||||||
// 验证时间合理性
|
// 验证时间合理性
|
||||||
if (!this.validateTime(this.startTime, this.endTime)) {
|
if (!this.validateTime(this.startTime, this.endTime)) {
|
||||||
uni.showToast({
|
uni.showToast({
|
||||||
|
|
@ -447,12 +460,9 @@ export default {
|
||||||
}
|
}
|
||||||
|
|
||||||
this.tempTime = newTime
|
this.tempTime = newTime
|
||||||
this.showBottomActions = true
|
|
||||||
this.hideTimePicker()
|
|
||||||
|
|
||||||
// 立即更新页面显示
|
|
||||||
this.currentTime = newTime
|
this.currentTime = newTime
|
||||||
console.log('临时存储的时间:', this.tempTime) // 调试日志
|
this.hideTimePicker()
|
||||||
|
this.submitChange()
|
||||||
},
|
},
|
||||||
|
|
||||||
// 取消变更
|
// 取消变更
|
||||||
|
|
@ -501,10 +511,6 @@ export default {
|
||||||
title: '营业时间更新成功',
|
title: '营业时间更新成功',
|
||||||
icon: 'none'
|
icon: 'none'
|
||||||
})
|
})
|
||||||
|
|
||||||
setTimeout(() => {
|
|
||||||
uni.navigateBack()
|
|
||||||
}, 1500)
|
|
||||||
} else {
|
} else {
|
||||||
uni.showToast({
|
uni.showToast({
|
||||||
title: res.msg || '提交失败',
|
title: res.msg || '提交失败',
|
||||||
|
|
@ -551,11 +557,13 @@ export default {
|
||||||
padding: 18rpx 24rpx;
|
padding: 18rpx 24rpx;
|
||||||
margin-bottom: 34rpx;
|
margin-bottom: 34rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.setting-label {
|
.setting-label {
|
||||||
font-size: 30rpx;
|
font-size: 30rpx;
|
||||||
color: #333;
|
color: #333;
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
}
|
}
|
||||||
|
|
||||||
.custom-switch {
|
.custom-switch {
|
||||||
width: 140rpx;
|
width: 140rpx;
|
||||||
height: 56rpx;
|
height: 56rpx;
|
||||||
|
|
@ -578,16 +586,24 @@ export default {
|
||||||
transition: opacity 0.3s;
|
transition: opacity 0.3s;
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
}
|
}
|
||||||
|
|
||||||
.text-on {
|
.text-on {
|
||||||
left: 12rpx;
|
left: 12rpx;
|
||||||
opacity: 0;
|
opacity: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.text-off {
|
.text-off {
|
||||||
right: 12rpx;
|
right: 12rpx;
|
||||||
opacity: 1;
|
opacity: 1;
|
||||||
}
|
}
|
||||||
&.is-on .text-on { opacity: 1; }
|
|
||||||
&.is-on .text-off { opacity: 0; }
|
&.is-on .text-on {
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
&.is-on .text-off {
|
||||||
|
opacity: 0;
|
||||||
|
}
|
||||||
|
|
||||||
.switch-dot {
|
.switch-dot {
|
||||||
width: 48rpx;
|
width: 48rpx;
|
||||||
|
|
@ -597,8 +613,9 @@ export default {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
left: 4rpx;
|
left: 4rpx;
|
||||||
transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1);
|
transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1);
|
||||||
box-shadow: 0 2rpx 6rpx rgba(0,0,0,0.15);
|
box-shadow: 0 2rpx 6rpx rgba(0, 0, 0, 0.15);
|
||||||
}
|
}
|
||||||
|
|
||||||
&.is-on .switch-dot {
|
&.is-on .switch-dot {
|
||||||
transform: translateX(84rpx);
|
transform: translateX(84rpx);
|
||||||
}
|
}
|
||||||
|
|
@ -610,62 +627,81 @@ export default {
|
||||||
border-radius: 20rpx;
|
border-radius: 20rpx;
|
||||||
padding: 24rpx 24rpx;
|
padding: 24rpx 24rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.service-time-card1 {
|
||||||
|
width: 710rpx;
|
||||||
|
height: 80rpx;
|
||||||
|
background: #FFFFFF;
|
||||||
|
border-radius: 20rpx;
|
||||||
|
}
|
||||||
|
|
||||||
.card-header-flex {
|
.card-header-flex {
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
.header-title {
|
.header-title {
|
||||||
font-size: 30rpx;
|
font-size: 30rpx;
|
||||||
color: #333;
|
color: #333;
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
transition: all 0.3s ease-in-out;
|
transition: all 0.3s ease-in-out;
|
||||||
}
|
}
|
||||||
|
|
||||||
.arrow-icon {
|
.arrow-icon {
|
||||||
width: 16rpx;
|
width: 16rpx;
|
||||||
height: 9rpx;
|
height: 9rpx;
|
||||||
transition: transform 0.3s;
|
transition: transform 0.3s;
|
||||||
transform: rotate(-360deg); /* 默认朝下 */
|
transform: rotate(-360deg);
|
||||||
|
/* 默认朝下 */
|
||||||
}
|
}
|
||||||
|
|
||||||
.arrow-icon.rotated {
|
.arrow-icon.rotated {
|
||||||
transform: rotate(180deg); /* 展开朝上 */
|
transform: rotate(180deg);
|
||||||
|
/* 展开朝上 */
|
||||||
}
|
}
|
||||||
|
|
||||||
.time-blocks-container {
|
.time-blocks-container {
|
||||||
margin-top: 40rpx;
|
margin-top: 40rpx;
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
}
|
}
|
||||||
|
|
||||||
.t-block {
|
.t-block {
|
||||||
width: 280rpx;
|
width: 280rpx;
|
||||||
height: 150rpx;
|
height: 150rpx;
|
||||||
background: #F5F5F5 ;
|
background: #F5F5F5;
|
||||||
border-radius: 16rpx;
|
border-radius: 16rpx;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
.t-time {
|
.t-time {
|
||||||
font-size: 42rpx;
|
font-size: 42rpx;
|
||||||
color: #333;
|
color: #333;
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
}
|
}
|
||||||
|
|
||||||
.t-label {
|
.t-label {
|
||||||
font-size: 24rpx;
|
font-size: 24rpx;
|
||||||
color: #999;
|
color: #999;
|
||||||
margin-top: 12rpx;
|
margin-top: 12rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.t-separator {
|
.t-separator {
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
font-size: 28rpx;
|
font-size: 28rpx;
|
||||||
color: #999999;
|
color: #999999;
|
||||||
line-height: 40rpx;
|
line-height: 40rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.modify-btn-outline {
|
.modify-btn-outline {
|
||||||
margin-top: 50rpx;
|
margin-top: 50rpx;
|
||||||
height: 78rpx;
|
height: 78rpx;
|
||||||
border-radius: 43rpx;
|
border-radius: 50rpx;
|
||||||
border: 1rpx solid #FF4767;
|
border: 1rpx solid #FF4767;
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
|
@ -674,6 +710,18 @@ export default {
|
||||||
font-size: 28rpx;
|
font-size: 28rpx;
|
||||||
margin-bottom: 10rpx;
|
margin-bottom: 10rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.modify-btn-outline1 {
|
||||||
|
margin-top: 50rpx;
|
||||||
|
height: 78rpx;
|
||||||
|
border-radius: 50rpx;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
font-size: 28rpx;
|
||||||
|
margin-bottom: 10rpx;
|
||||||
|
}
|
||||||
|
|
||||||
.edit-icon {
|
.edit-icon {
|
||||||
width: 30rpx;
|
width: 30rpx;
|
||||||
height: 30rpx;
|
height: 30rpx;
|
||||||
|
|
@ -683,7 +731,10 @@ export default {
|
||||||
/* ============ 提示弹窗样式 (完全一致) ============ */
|
/* ============ 提示弹窗样式 (完全一致) ============ */
|
||||||
.setup-modal-mask {
|
.setup-modal-mask {
|
||||||
position: fixed;
|
position: fixed;
|
||||||
top: 0; left: 0; right: 0; bottom: 0;
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
right: 0;
|
||||||
|
bottom: 0;
|
||||||
background: rgba(0, 0, 0, 0.5);
|
background: rgba(0, 0, 0, 0.5);
|
||||||
z-index: 9999;
|
z-index: 9999;
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|
@ -701,7 +752,8 @@ export default {
|
||||||
|
|
||||||
.modal-bg {
|
.modal-bg {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 0; left: 0;
|
top: 0;
|
||||||
|
left: 0;
|
||||||
width: 630rpx;
|
width: 630rpx;
|
||||||
height: 265rpx;
|
height: 265rpx;
|
||||||
z-index: 0;
|
z-index: 0;
|
||||||
|
|
@ -786,9 +838,17 @@ export default {
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
margin-top: -45rpx;
|
margin-top: -45rpx;
|
||||||
|
|
||||||
&.orange { color: #FF7B00; }
|
&.orange {
|
||||||
&.grey { color: #999999; }
|
color: #FF7B00;
|
||||||
&.light-green { color: #18b566; }
|
}
|
||||||
|
|
||||||
|
&.grey {
|
||||||
|
color: #999999;
|
||||||
|
}
|
||||||
|
|
||||||
|
&.light-green {
|
||||||
|
color: #18b566;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -957,7 +1017,8 @@ export default {
|
||||||
gap: 50rpx;
|
gap: 50rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.btn-cancel-large, .btn-confirm-large {
|
.btn-cancel-large,
|
||||||
|
.btn-confirm-large {
|
||||||
font-size: 34rpx;
|
font-size: 34rpx;
|
||||||
flex: 1;
|
flex: 1;
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
|
|
|
||||||
|
|
@ -98,9 +98,9 @@
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import request from '../../utils/request';
|
import request from '../../utils/request';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
sjInformation: {},
|
sjInformation: {},
|
||||||
|
|
@ -167,6 +167,10 @@
|
||||||
async onLoad() {
|
async onLoad() {
|
||||||
this.sjInformation = await request.post('/sj/user/getUser');
|
this.sjInformation = await request.post('/sj/user/getUser');
|
||||||
await this.initPage();
|
await this.initPage();
|
||||||
|
// 如果没有技能和经验信息,直接进入编辑模式
|
||||||
|
if (this.currentSkills.length === 0 && !this.originalMajor) {
|
||||||
|
this.startChange();
|
||||||
|
}
|
||||||
},
|
},
|
||||||
onReady() {
|
onReady() {
|
||||||
// 获取按钮区域高度,用于设置页面内容padding
|
// 获取按钮区域高度,用于设置页面内容padding
|
||||||
|
|
@ -177,7 +181,7 @@
|
||||||
async initPage() {
|
async initPage() {
|
||||||
this.isLoading = true;
|
this.isLoading = true;
|
||||||
try {
|
try {
|
||||||
this.originalMajor = this.sjInformation?.data?.major || null;
|
this.originalMajor = this.sjInformation?.data?.major ? Number(this.sjInformation.data.major) : null;
|
||||||
this.displayMajor = this.originalMajor;
|
this.displayMajor = this.originalMajor;
|
||||||
|
|
||||||
// 先加载服务技能列表
|
// 先加载服务技能列表
|
||||||
|
|
@ -378,7 +382,7 @@
|
||||||
const currentSorted = [...currentSkills].sort().join(',');
|
const currentSorted = [...currentSkills].sort().join(',');
|
||||||
|
|
||||||
// 如果驳回的技能与当前生效技能相同,说明驳回数据过时
|
// 如果驳回的技能与当前生效技能相同,说明驳回数据过时
|
||||||
if (rejectedSorted === currentSorted && String(rejectedMajor||'') === String(currentMajor||'')) {
|
if (rejectedSorted === currentSorted && String(rejectedMajor || '') === String(currentMajor || '')) {
|
||||||
console.log('驳回数据与当前生效技能相同,可能数据过时,忽略本次驳回数据');
|
console.log('驳回数据与当前生效技能相同,可能数据过时,忽略本次驳回数据');
|
||||||
this.selectedSkills = [...currentSkills];
|
this.selectedSkills = [...currentSkills];
|
||||||
this.displayMajor = currentMajor;
|
this.displayMajor = currentMajor;
|
||||||
|
|
@ -505,7 +509,7 @@
|
||||||
const currentSorted = [...this.currentSkills].sort().join(',');
|
const currentSorted = [...this.currentSkills].sort().join(',');
|
||||||
|
|
||||||
// 如果驳回技能与当前技能相同,说明驳回数据无效
|
// 如果驳回技能与当前技能相同,说明驳回数据无效
|
||||||
if (rejectedSorted === currentSorted && String(rejectedMajor||'') === String(this.originalMajor||'')) {
|
if (rejectedSorted === currentSorted && String(rejectedMajor || '') === String(this.originalMajor || '')) {
|
||||||
console.log('驳回数据无效,按无申请状态处理');
|
console.log('驳回数据无效,按无申请状态处理');
|
||||||
this.showAuditTip = false;
|
this.showAuditTip = false;
|
||||||
this.buttonType = 'change';
|
this.buttonType = 'change';
|
||||||
|
|
@ -672,47 +676,47 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped>
|
<style scoped>
|
||||||
.service-skills-page {
|
.service-skills-page {
|
||||||
background-color: #f5f5f5;
|
background-color: #f5f5f5;
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 页面内容区域 */
|
/* 页面内容区域 */
|
||||||
.page-content {
|
.page-content {
|
||||||
flex: 1;
|
flex: 1;
|
||||||
overflow-y: auto;
|
overflow-y: auto;
|
||||||
padding: 20rpx 0;
|
padding: 20rpx 0;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 审核中提示 */
|
/* 审核中提示 */
|
||||||
.audit-tip {
|
.audit-tip {
|
||||||
margin: 20rpx 24rpx 20rpx 24rpx;
|
margin: 20rpx 24rpx 20rpx 24rpx;
|
||||||
border-radius: 12rpx;
|
border-radius: 12rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.audit-text {
|
.audit-text {
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
font-size: 32rpx;
|
font-size: 32rpx;
|
||||||
color: #333333;
|
color: #333333;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
display: block;
|
display: block;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 驳回原因样式 */
|
/* 驳回原因样式 */
|
||||||
.reject-reason {
|
.reject-reason {
|
||||||
background: transparent;
|
background: transparent;
|
||||||
padding: 24rpx;
|
padding: 24rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.reject-title {
|
.reject-title {
|
||||||
font-family: PingFangSC, PingFang SC;
|
font-family: PingFangSC, PingFang SC;
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
font-size: 32rpx;
|
font-size: 32rpx;
|
||||||
|
|
@ -720,9 +724,9 @@
|
||||||
line-height: 45rpx;
|
line-height: 45rpx;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
}
|
}
|
||||||
|
|
||||||
.reject-detail {
|
.reject-detail {
|
||||||
font-family: PingFangSC, PingFang SC;
|
font-family: PingFangSC, PingFang SC;
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
font-size: 28rpx;
|
font-size: 28rpx;
|
||||||
|
|
@ -732,23 +736,23 @@
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
margin-top: 12rpx;
|
margin-top: 12rpx;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.skills-header {
|
.skills-header {
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
margin-bottom: 20rpx;
|
margin-bottom: 20rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.title-bar {
|
.title-bar {
|
||||||
width: 6rpx;
|
width: 6rpx;
|
||||||
height: 30rpx;
|
height: 30rpx;
|
||||||
background-color: #FF4767;
|
background-color: #FF4767;
|
||||||
margin-right: 10rpx;
|
margin-right: 10rpx;
|
||||||
border-radius: 5rpx;
|
border-radius: 5rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.skills-title {
|
.skills-title {
|
||||||
font-family: PingFangSC, PingFang SC;
|
font-family: PingFangSC, PingFang SC;
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
font-size: 32rpx;
|
font-size: 32rpx;
|
||||||
|
|
@ -756,9 +760,9 @@
|
||||||
line-height: 48rpx;
|
line-height: 48rpx;
|
||||||
text-align: left;
|
text-align: left;
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
}
|
}
|
||||||
|
|
||||||
.skills-subtitle {
|
.skills-subtitle {
|
||||||
margin-left: 20rpx;
|
margin-left: 20rpx;
|
||||||
margin-bottom: 20rpx;
|
margin-bottom: 20rpx;
|
||||||
font-family: PingFangSC, PingFang SC;
|
font-family: PingFangSC, PingFang SC;
|
||||||
|
|
@ -768,38 +772,38 @@
|
||||||
line-height: 40rpx;
|
line-height: 40rpx;
|
||||||
text-align: left;
|
text-align: left;
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
}
|
}
|
||||||
|
|
||||||
.box-cont {
|
.box-cont {
|
||||||
background: #ffffff;
|
background: #ffffff;
|
||||||
border-radius: 20rpx;
|
border-radius: 20rpx;
|
||||||
margin: 0 24rpx 24rpx 24rpx;
|
margin: 0 24rpx 24rpx 24rpx;
|
||||||
box-shadow: none;
|
box-shadow: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
.skills-container {
|
.skills-container {
|
||||||
padding: 32rpx;
|
padding: 32rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.skills-list {
|
.skills-list {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-wrap: wrap;
|
flex-wrap: wrap;
|
||||||
margin: 0 -16rpx;
|
margin: 0 -16rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.skill-item {
|
.skill-item {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
padding: 20rpx 16rpx;
|
padding: 20rpx 16rpx;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
}
|
}
|
||||||
|
|
||||||
.checkbox-wrapper {
|
.checkbox-wrapper {
|
||||||
margin-right: 20rpx;
|
margin-right: 20rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.checkbox {
|
.checkbox {
|
||||||
width: 40rpx;
|
width: 40rpx;
|
||||||
height: 40rpx;
|
height: 40rpx;
|
||||||
border: 2rpx solid #DDDDDD;
|
border: 2rpx solid #DDDDDD;
|
||||||
|
|
@ -807,73 +811,73 @@
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
.checkbox.checked {
|
.checkbox.checked {
|
||||||
background-color: #FF4767;
|
background-color: #FF4767;
|
||||||
border-color: #FF4767;
|
border-color: #FF4767;
|
||||||
}
|
}
|
||||||
|
|
||||||
.check-icon {
|
.check-icon {
|
||||||
width: 42rpx;
|
width: 42rpx;
|
||||||
height: 42rpx;
|
height: 42rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.skill-name {
|
.skill-name {
|
||||||
font-size: 28rpx;
|
font-size: 28rpx;
|
||||||
color: #333333;
|
color: #333333;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 迁移的专业经验表单样式 */
|
/* 迁移的专业经验表单样式 */
|
||||||
.form-item-two {
|
.form-item-two {
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
padding: 24rpx 24rpx;
|
padding: 24rpx 24rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.form-item-two > text.label {
|
.form-item-two>text.label {
|
||||||
flex-shrink: 0;
|
flex-shrink: 0;
|
||||||
font-size: 28rpx;
|
font-size: 28rpx;
|
||||||
color: #333333;
|
color: #333333;
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
}
|
}
|
||||||
|
|
||||||
.required::before {
|
.required::before {
|
||||||
content: '*';
|
content: '*';
|
||||||
color: #FF0000;
|
color: #FF0000;
|
||||||
margin-right: 4rpx;
|
margin-right: 4rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.picker-content {
|
.picker-content {
|
||||||
flex: 1;
|
flex: 1;
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
justify-content: flex-end;
|
justify-content: flex-end;
|
||||||
gap: 16rpx;
|
gap: 16rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.picker-value,
|
.picker-value,
|
||||||
.placeholder {
|
.placeholder {
|
||||||
font-size: 28rpx;
|
font-size: 28rpx;
|
||||||
text-align: right;
|
text-align: right;
|
||||||
}
|
}
|
||||||
|
|
||||||
.picker-value {
|
.picker-value {
|
||||||
color: #333333;
|
color: #333333;
|
||||||
}
|
}
|
||||||
|
|
||||||
.placeholder {
|
.placeholder {
|
||||||
color: #999999;
|
color: #999999;
|
||||||
}
|
}
|
||||||
|
|
||||||
.arrow-right {
|
.arrow-right {
|
||||||
width: 9rpx;
|
width: 9rpx;
|
||||||
height: 16rpx;
|
height: 16rpx;
|
||||||
flex-shrink: 0;
|
flex-shrink: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.bottom-actions {
|
.bottom-actions {
|
||||||
position: fixed;
|
position: fixed;
|
||||||
bottom: 0;
|
bottom: 0;
|
||||||
left: 0;
|
left: 0;
|
||||||
|
|
@ -881,10 +885,10 @@
|
||||||
padding: 0rpx 24rpx 40rpx 24rpx;
|
padding: 0rpx 24rpx 40rpx 24rpx;
|
||||||
background: #ffffff;
|
background: #ffffff;
|
||||||
z-index: 100;
|
z-index: 100;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 单个按钮样式 */
|
/* 单个按钮样式 */
|
||||||
.action-btn {
|
.action-btn {
|
||||||
height: 88rpx;
|
height: 88rpx;
|
||||||
border-radius: 43rpx;
|
border-radius: 43rpx;
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|
@ -893,40 +897,40 @@
|
||||||
font-size: 32rpx;
|
font-size: 32rpx;
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
margin-top: 20rpx;
|
margin-top: 20rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.change-info-btn {
|
.change-info-btn {
|
||||||
background: linear-gradient(180deg, #ff8e9d 0%, #FF4767 100%);
|
background: linear-gradient(180deg, #ff8e9d 0%, #FF4767 100%);
|
||||||
}
|
}
|
||||||
|
|
||||||
.view-change-btn {
|
.view-change-btn {
|
||||||
background: linear-gradient(180deg, #ff8e9d 0%, #FF4767 100%);
|
background: linear-gradient(180deg, #ff8e9d 0%, #FF4767 100%);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 双按钮行样式 */
|
/* 双按钮行样式 */
|
||||||
.action-buttons-row {
|
.action-buttons-row {
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
margin: 0 30rpx;
|
margin: 0 30rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.action-buttons-row .action-btn {
|
.action-buttons-row .action-btn {
|
||||||
width: 270rpx;
|
width: 270rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.cancel-btn {
|
.cancel-btn {
|
||||||
background: #E5E5E5;
|
background: #E5E5E5;
|
||||||
border-radius: 43rpx;
|
border-radius: 43rpx;
|
||||||
padding: 0 15rpx;
|
padding: 0 15rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.submit-btn {
|
.submit-btn {
|
||||||
background: linear-gradient(180deg, #ff8e9d 0%, #FF4767 100%);
|
background: linear-gradient(180deg, #ff8e9d 0%, #FF4767 100%);
|
||||||
border-radius: 43rpx;
|
border-radius: 43rpx;
|
||||||
padding: 0 15rpx;
|
padding: 0 15rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.btn-text {
|
.btn-text {
|
||||||
font-family: PingFangSC, PingFang SC;
|
font-family: PingFangSC, PingFang SC;
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
font-size: 36rpx;
|
font-size: 36rpx;
|
||||||
|
|
@ -934,14 +938,14 @@
|
||||||
line-height: 50rpx;
|
line-height: 50rpx;
|
||||||
text-align: left;
|
text-align: left;
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
}
|
}
|
||||||
|
|
||||||
.cancel-text {
|
.cancel-text {
|
||||||
color: #666666;
|
color: #666666;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 响应式适配 */
|
/* 响应式适配 */
|
||||||
/* @media (max-width: 375px) {
|
/* @media (max-width: 375px) {
|
||||||
.skill-item {
|
.skill-item {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -14,7 +14,7 @@
|
||||||
<input class="hidden-input" type="text" maxlength="6" :value="code" :focus="inputFocus"
|
<input class="hidden-input" type="text" maxlength="6" :value="code" :focus="inputFocus"
|
||||||
:selection-start="cursorPos" :selection-end="cursorPos" @input="onInput" @blur="onBlur" confirm-type="done" />
|
:selection-start="cursorPos" :selection-end="cursorPos" @input="onInput" @blur="onBlur" confirm-type="done" />
|
||||||
|
|
||||||
<button class="confirm-btn" :class="{ active: code.length === 6 }" @tap="submitCode">
|
<button class="confirm-btn" :class="{ active: code.length === 6 }" :disabled="code.length < 6" @tap="submitCode">
|
||||||
确认
|
确认
|
||||||
</button>
|
</button>
|
||||||
</view>
|
</view>
|
||||||
|
|
@ -146,6 +146,12 @@ export default {
|
||||||
&.active {
|
&.active {
|
||||||
background: #FF4767;
|
background: #FF4767;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
&[disabled] {
|
||||||
|
opacity: 1;
|
||||||
|
background: #ff476685;
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.hidden-input {
|
.hidden-input {
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,7 @@
|
||||||
src="https://mrrplus.oss-cn-beijing.aliyuncs.com/photo/system/be13b4f4-c0db-4f39-b9fc-0e69c13b72ee.png"
|
src="https://mrrplus.oss-cn-beijing.aliyuncs.com/photo/system/be13b4f4-c0db-4f39-b9fc-0e69c13b72ee.png"
|
||||||
mode="aspectFit"></image>
|
mode="aspectFit"></image>
|
||||||
<view class="header-text-box">
|
<view class="header-text-box">
|
||||||
<view class="header-title">工时订单</view>
|
<view class="header-title">{{ orderTypeText }}</view>
|
||||||
<view class="header-sub">请确认核销订单信息~</view>
|
<view class="header-sub">请确认核销订单信息~</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
@ -70,6 +70,19 @@
|
||||||
import request from "@/utils/request";
|
import request from "@/utils/request";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
|
computed: {
|
||||||
|
orderTypeText() {
|
||||||
|
const map = {
|
||||||
|
1: '用户订单',
|
||||||
|
2: '商家订单',
|
||||||
|
3: '工时订单',
|
||||||
|
4: '工位订单',
|
||||||
|
5: '铁军线上缴费订单',
|
||||||
|
6: '自营订单'
|
||||||
|
};
|
||||||
|
return map[this.orderData.orderType] || '工时订单';
|
||||||
|
}
|
||||||
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
statusBarHeight: 44,
|
statusBarHeight: 44,
|
||||||
|
|
@ -101,6 +114,7 @@ export default {
|
||||||
try {
|
try {
|
||||||
const parsedData = JSON.parse(decodeURIComponent(options.data));
|
const parsedData = JSON.parse(decodeURIComponent(options.data));
|
||||||
this.mapOrderData(parsedData);
|
this.mapOrderData(parsedData);
|
||||||
|
console.log(parsedData, '-==-=-=-=-=-=parsedData=-=-=-=-=parsedData')
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
console.error('解析订单数据失败', e);
|
console.error('解析订单数据失败', e);
|
||||||
uni.showToast({ title: '订单数据异常', icon: 'none' });
|
uni.showToast({ title: '订单数据异常', icon: 'none' });
|
||||||
|
|
@ -157,6 +171,7 @@ export default {
|
||||||
doVerify() {
|
doVerify() {
|
||||||
this.isVerifying = true;
|
this.isVerifying = true;
|
||||||
uni.showLoading({ title: '核销中...', mask: true });
|
uni.showLoading({ title: '核销中...', mask: true });
|
||||||
|
console.log(this.orderData, '------------------parsedData')
|
||||||
|
|
||||||
// 调用核销接口
|
// 调用核销接口
|
||||||
request.post('/sj/poster/useOrderServerCode', {
|
request.post('/sj/poster/useOrderServerCode', {
|
||||||
|
|
@ -167,9 +182,19 @@ export default {
|
||||||
uni.hideLoading();
|
uni.hideLoading();
|
||||||
if (res.code === 200) {
|
if (res.code === 200) {
|
||||||
uni.showToast({ title: '核销成功', icon: 'success' });
|
uni.showToast({ title: '核销成功', icon: 'success' });
|
||||||
uni.navigateTo({
|
const orderId = this.orderData.orderId;
|
||||||
url:'/pages/order/userorder-detail?order_id='+this.orderData.orderId
|
const orderType = this.orderData.orderType;
|
||||||
})
|
let url = '';
|
||||||
|
if (orderType == 3) {
|
||||||
|
url = `/pages/shop/SellerDetail?order_id=${orderId}`;
|
||||||
|
} else if (orderType == 2 || orderType == 5) {
|
||||||
|
url = `/pages/shop/userorder-detail?order_id=${orderId}&serviceType=2`;
|
||||||
|
} else {
|
||||||
|
url = `/pages/shop/userorder-detail?order_id=${orderId}`;
|
||||||
|
}
|
||||||
|
setTimeout(() => {
|
||||||
|
uni.navigateTo({ url });
|
||||||
|
}, 1500);
|
||||||
} else {
|
} else {
|
||||||
uni.showToast({ title: res.msg || '核销失败,请重试', icon: 'none' });
|
uni.showToast({ title: res.msg || '核销失败,请重试', icon: 'none' });
|
||||||
this.isVerifying = false;
|
this.isVerifying = false;
|
||||||
|
|
|
||||||
|
|
@ -87,7 +87,6 @@ export default {
|
||||||
console.log(result,'resultresultresultresult0.0.0.0.0.0')
|
console.log(result,'resultresultresultresult0.0.0.0.0.0')
|
||||||
uni.hideLoading();
|
uni.hideLoading();
|
||||||
if (result.code == 200) {
|
if (result.code == 200) {
|
||||||
result.data.server_code = code;
|
|
||||||
uni.showToast({ title: '扫码成功!', icon: 'none' });
|
uni.showToast({ title: '扫码成功!', icon: 'none' });
|
||||||
const orderDataStr = encodeURIComponent(JSON.stringify(result.data));
|
const orderDataStr = encodeURIComponent(JSON.stringify(result.data));
|
||||||
uni.navigateTo({
|
uni.navigateTo({
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue