|
|
|
@ -14,8 +14,8 @@ |
|
|
|
|
:class="[{'mt-md':banner.length ==0},{'abs':banner.length>0}]" :style="{ color: primaryColor }"> |
|
|
|
|
<view style="width: 100%;"> |
|
|
|
|
<view class="servetip pl-lg pr-lg pt-sm pb-sm"> |
|
|
|
|
<view @tap.stop="toJump('servefc', index)" v-for="(item, index) in servefc" |
|
|
|
|
:key="index" class="servefc"> |
|
|
|
|
<view @tap.stop="toJump('servefc', index)" v-for="(item, index) in servefc" :key="index" |
|
|
|
|
class="servefc"> |
|
|
|
|
<i class="iconfont" :class="item.icon"></i> |
|
|
|
|
<span class="ml-sm">{{ item.text }}</span> |
|
|
|
|
</view> |
|
|
|
@ -55,15 +55,16 @@ |
|
|
|
|
<image mode="aspectFill" lazy-load class="cover radius-16" :src="item.work_img"></image> |
|
|
|
|
<!-- #endif --> |
|
|
|
|
<view class="flex-center f-desc c-title text-bold mt-md"> |
|
|
|
|
<view class="ellipsis">{{item.coach_name}}</view> |
|
|
|
|
</view> |
|
|
|
|
<view class="ellipsis">{{item.coach_name}}</view> |
|
|
|
|
</view> |
|
|
|
|
<view class="flex-center"> |
|
|
|
|
<view class="new-technician flex-center f-icontext radius" |
|
|
|
|
:style="{height:`33rpx`,width:`80rpx`,color:primaryColor,border:`1rpx solid ${primaryColor}`}" v-if="item.is_new">新人 |
|
|
|
|
</view> |
|
|
|
|
:style="{height:`33rpx`,width:`80rpx`,color:primaryColor,border:`1rpx solid ${primaryColor}`}" |
|
|
|
|
v-if="item.is_new">新人 |
|
|
|
|
</view> |
|
|
|
|
<view class="f-icontext c-caption" v-else>30天接单{{item.order_count||0}} |
|
|
|
|
</view> |
|
|
|
|
</view> |
|
|
|
|
</view> |
|
|
|
|
</view> |
|
|
|
|
<view @tap.stop="toTechnician(index)" class="recommend-item type-2 pd-md" |
|
|
|
|
v-if="recommend_style == 2"> |
|
|
|
@ -88,7 +89,8 @@ |
|
|
|
|
</view> |
|
|
|
|
<view class="flex-center"> |
|
|
|
|
<view class="new-technician flex-center f-icontext radius" |
|
|
|
|
:style="{height:`33rpx`,width:`80rpx`,color:primaryColor,border:`1rpx solid ${primaryColor}`}" v-if="item.is_new">新人 |
|
|
|
|
:style="{height:`33rpx`,width:`80rpx`,color:primaryColor,border:`1rpx solid ${primaryColor}`}" |
|
|
|
|
v-if="item.is_new">新人 |
|
|
|
|
</view> |
|
|
|
|
<view class="f-icontext c-caption" v-else>30天接单{{item.order_count||0}} |
|
|
|
|
</view> |
|
|
|
@ -97,22 +99,22 @@ |
|
|
|
|
</block> |
|
|
|
|
</scroll-view> |
|
|
|
|
</view> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<view class="fill-base pl-lg pr-lg"> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<view class="fill-base pl-lg pr-lg"> |
|
|
|
|
<view class="fill-base flex-between"> |
|
|
|
|
<view class="f-st-title text-bold flex-between"> |
|
|
|
|
<view class="mr-md" style="width: 15px;height: 17px;"> |
|
|
|
|
<image src="/static/img/icon_project.png" class="van-img" style="object-fit: cover;"></image> |
|
|
|
|
</view> |
|
|
|
|
<text @click="tuichu">展示项目</text> |
|
|
|
|
<text @click="tuichu">展示项目</text> |
|
|
|
|
</view> |
|
|
|
|
</view> |
|
|
|
|
</view> |
|
|
|
|
<view class="fill-base pd-lg b-1px-b" v-for="(item,index) in list.data" :key="index"> |
|
|
|
|
<service-list-item :info="item"></service-list-item> |
|
|
|
|
</view> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<load-more :noMore="list.current_page >= list.last_page && list.data.length > 0" :loading="loading" |
|
|
|
|
v-if="loading"> |
|
|
|
|
</load-more> |
|
|
|
@ -179,6 +181,14 @@ |
|
|
|
|
<!-- #ifdef APP-PLUS --> |
|
|
|
|
<login-info></login-info> |
|
|
|
|
<!-- #endif --> |
|
|
|
|
|
|
|
|
|
<uni-popup ref="perpopup" type="top" :mask-click='false' :zIndex="999"> |
|
|
|
|
<view class="permissions_box"> |
|
|
|
|
为了获取您附近的服务人员,更好的为您服务,我们需要申请位置信息权限,请您确认授权,否则无法使用该功能。 |
|
|
|
|
</view> |
|
|
|
|
</uni-popup> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</view> |
|
|
|
|
</template> |
|
|
|
|
|
|
|
|
@ -188,6 +198,7 @@ |
|
|
|
|
mapActions, |
|
|
|
|
mapMutations |
|
|
|
|
} from "vuex" |
|
|
|
|
import permision from '@/utils/permission.js' |
|
|
|
|
import siteInfo from '@/siteinfo.js'; |
|
|
|
|
import serviceListItem from "@/components/service-list-item.vue" |
|
|
|
|
import tabbar from "@/components/tabbar.vue" |
|
|
|
@ -215,7 +226,7 @@ |
|
|
|
|
}, { |
|
|
|
|
icon: 'icon-kzz', |
|
|
|
|
text: '资质证书' |
|
|
|
|
}], |
|
|
|
|
}], |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
computed: mapState({ |
|
|
|
@ -297,9 +308,9 @@ |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
methods: { |
|
|
|
|
tuichu(){ |
|
|
|
|
tuichu() { |
|
|
|
|
uni.navigateTo({ |
|
|
|
|
url:'/pages/login' |
|
|
|
|
url: '/pages/login' |
|
|
|
|
}) |
|
|
|
|
}, |
|
|
|
|
...mapActions(['getConfigInfo', 'getUserInfo', 'updateCommonOptions', 'getServiceIndex', 'getServiceList']), |
|
|
|
@ -410,7 +421,7 @@ |
|
|
|
|
siteroot |
|
|
|
|
} = siteInfo |
|
|
|
|
let url = siteroot.split('/index.php')[0] |
|
|
|
|
console.log(123,url); |
|
|
|
|
console.log(123, url); |
|
|
|
|
let href = `${url}/h5/#/pages/service?pid=${pid}` |
|
|
|
|
let imageUrl = '' |
|
|
|
|
this.$jweixin.wxReady(() => { |
|
|
|
@ -442,6 +453,30 @@ |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
goCate(e) { |
|
|
|
|
if (e.title == '师傅入驻') { |
|
|
|
|
let that = this |
|
|
|
|
const appAuthorizeSetting = uni.getAppAuthorizeSetting() |
|
|
|
|
console.log(9987, appAuthorizeSetting); |
|
|
|
|
if (appAuthorizeSetting.locationAuthorized != 'authorized') { |
|
|
|
|
that.$refs.perpopup.open('top') |
|
|
|
|
uni.showModal({ |
|
|
|
|
title: '温馨提示', |
|
|
|
|
content: '为了获取您附近的服务人员,更好的为您服务,我们需要申请位置信息权限,请您确认授权,否则无法使用该功能~', |
|
|
|
|
cancelText: '关闭', |
|
|
|
|
confirmText: '去授权', |
|
|
|
|
success(res) { |
|
|
|
|
if (res.confirm) { |
|
|
|
|
that.$refs.perpopup.close(); |
|
|
|
|
permision.gotoAppPermissionSetting() |
|
|
|
|
} else { |
|
|
|
|
that.$refs.perpopup.close(); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
}) |
|
|
|
|
} |
|
|
|
|
return |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
let { |
|
|
|
|
id, |
|
|
|
|
title, |
|
|
|
@ -561,6 +596,7 @@ |
|
|
|
|
.recommend-technician { |
|
|
|
|
white-space: nowrap; |
|
|
|
|
width: 690rpx; |
|
|
|
|
|
|
|
|
|
.recommend-item { |
|
|
|
|
display: inline-block; |
|
|
|
|
} |
|
|
|
@ -655,8 +691,8 @@ |
|
|
|
|
|
|
|
|
|
.radius-top { |
|
|
|
|
border-radius: 30rpx 30rpx 0 0; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.coupon-popup { |
|
|
|
|
width: 658rpx; |
|
|
|
|
height: 865rpx; |
|
|
|
@ -770,7 +806,7 @@ |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.servetip { |
|
|
|
|
font-size: 28rpx; |
|
|
|
|
font-weight: 400; |
|
|
|
@ -780,11 +816,11 @@ |
|
|
|
|
margin: 22rpx 0; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.servefc{ |
|
|
|
|
.servefc { |
|
|
|
|
display: flex; |
|
|
|
|
align-items: center; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.van-image { |
|
|
|
|
position: relative; |
|
|
|
|
display: inline-block; |
|
|
|
@ -794,8 +830,17 @@ |
|
|
|
|
width: 100%; |
|
|
|
|
height: 100%; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.margin-20 { |
|
|
|
|
margin: 0.53333rem; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
</style> |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.permissions_box { |
|
|
|
|
padding: 200rpx 30rpx; |
|
|
|
|
padding-top: 200rpx; |
|
|
|
|
padding-bottom: 50rpx; |
|
|
|
|
font-size: 30rpx; |
|
|
|
|
line-height: 50rpx; |
|
|
|
|
background-color: #fff; |
|
|
|
|
} |
|
|
|
|
</style> |