123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504 |
- <!-- 技师列表 -->
- <!-- 首页,支持店铺装修 -->
- <template>
- <s-layout class='ss-w-100 ss-h-100 box-sizing' style="position: relative;" title="技师" navbar="custom"
- tabbar="/pages/XDHomePage/technicianList/technicianList">
- <view class="body" :style="'padding-top:'+bottomHeight">
- <!-- 头部 -->
- <view style="margin-top: 20rpx;padding: 10rpx;" id="head-box">
- <!-- 导航标题 -->
- <view class="ss-flex ss-w-100">
- <view class="ss-flex">
- <view style="width:40rpx;height:40rpx;">
- <image referrerpolicy="no-referrer"
- src="/static/lanhu_shouye/6461e1be91dd49c48afbbacf664a38ec_mergeImage.png"
- class="icon-image"></image>
- </view>
- <view style="font-size:26rpx;color:#fff;margin-left:15rpx;">
- 技师列表
- </view>
- </view>
- <view class="ss-flex-1"></view>
- <view style="width:40rpx;height:40rpx;">
- <image referrerpolicy="no-referrer"
- src="/static/lanhu_shouye/61f5a7931f9d41caafd7d60ec1efadb4_mergeImage.png"
- class="icon-image"></image>
- </view>
- <view style="width:40rpx;height:40rpx;margin-left:15rpx;margin-right:15rpx;">
- <image referrerpolicy="no-referrer"
- src="/static/lanhu_shouye/psza2ppvfwx4d6fnhi4tcrcfmrgvqf7x4jb799f8f8-619e-4a58-9606-3e6cd5bf62c6.png"
- class="icon-image"></image>
- </view>
- </view>
- <!-- 搜索框 -->
- <view style="width:100%;height:60rpx;margin-top:20rpx;">
- <uni-search-bar radius="30" v-model="searchInfo" placeholder="请输入搜索关键字" cancelButton="none" clearButton="none" @confirm="onSearch" ></uni-search-bar>
- </view>
- <!-- 多种搜索 -->
- <view style="width:100%;height:60rpx;margin-top:20rpx;" class="ss-flex">
- <view style="width:40rpx;height:40rpx;margin-left:15rpx;margin-right:15rpx;">
- <image referrerpolicy="no-referrer"
- src="/static/lanhu_shouye/psza2ppvfwx4d6fnhi4tcrcfmrgvqf7x4jb799f8f8-619e-4a58-9606-3e6cd5bf62c6.png"
- class="icon-image"></image>
- </view>
- <view style="width:25%;height:40rpx;">
- <uni-data-select
- class="icon-image"
- v-model="address"
- :localdata="range"
- :clear="false"
- @change="changeAddress"
- ></uni-data-select>
- </view>
- <view style="width:20rpx;"></view>
- <view style="width:25%;height:40rpx;" class="distance">
- <uni-data-select
- class="icon-image"
- v-model="distance"
- :localdata="distanceData"
- :clear="false"
- @change="changeDistance"
- ></uni-data-select>
- </view>
- <view class="ss-flex-1"></view>
- <view style="width:120rpx;display:flex;margin-right:20rpx;" @click="searchAll">
- <view style="width:80rpx;height:40rpx;line-height:40rpx;text-align:center;font-size:26rpx;color:#fff;">筛选</view>
- <view style="width:40rpx;height:40rpx;margin-left:15rpx;margin-right:15rpx;">
- <image referrerpolicy="no-referrer"
- src="/static/lanhu_shouye/psza2ppvfwx4d6fnhi4tcrcfmrgvqf7x4jb799f8f8-619e-4a58-9606-3e6cd5bf62c6.png"
- class="icon-image"></image>
- </view>
- </view>
-
- </view>
- </view>
- <!-- 中部 -->
- <view class="list-wrap">
- <scroll-view scroll-y="true" class="list">
- <view class="ss-flex-2 box-sizing list-box" v-for="item in 10" :key="item">
- <!-- 左右布局 -->
- <view style="width:190rpx;">
- <view style="width:190rpx;height:160rpx;">
- <image referrerpolicy="no-referrer"
- src="/static/lanhu_shouye/psq752p4oxrur1kwz38o9hz2uugu327v8c905774083-1ff9-40d7-8687-01c969b1461d.png"
- class="icon-image"></image>
- </view>
- <view class="bt-box">
- 可预约
- </view>
- </view>
- <!-- 右边布局 -->
- <view class="ss-flex-1" style="margin-left: 20rpx;">
- <view class="ss-flex">
- <view style="font-size: 30rpx;color:#1A2433;font-weight: 650;">王琳haha</view>
- <view class="ss-flex" style="margin-left:20rpx;margin-top:5rpx;">
- <view style="width:25rpx;height:25rpx;">
- <image class="icon-image" referrerpolicy="no-referrer"
- src="/static/lanhu_shouye/ps45z8ynos8u6p0hlyciknnu9trq6jgvec6ac864-6e48-46fc-a850-9e88158e568c.png" />
- </view>
- <view style="font-size: 24rpx;margin-left:5rpx;color:#009FE8;margin-top: 5rpx;">4.8</view>
- </view>
- <view class="ss-flex-1"></view>
- <view class="job-box">
- NO.00158
- </view>
- </view>
- <view class="ss-flex-2">
- <view class="flag-box" style="background-color: #E57F3A;">
- 新人
- </view>
- <view class="flag-box" style="background-color: #E50012;">
- 明星
- </view>
- <view class="flag-box" style="background-color: #48B790;">
- 手法哈哈哈哈
- </view>
- </view>
- <uni-tooltip style="margin-top: 5rpx;" content="哈哈哈哈哈哈哈,哈哈哈哈哈哈哈,哈哈哈哈哈哈哈,哈哈哈哈哈哈哈,哈哈哈哈哈哈哈,哈哈哈哈哈哈哈,哈哈哈哈哈哈哈" placement="bottom">
- <view class="text-info-box">
- 哈哈哈哈哈哈哈,哈哈哈哈哈哈哈,哈哈哈哈,哈哈哈哈哈哈哈,
- </view>
- </uni-tooltip>
- <view class="ss-flex-2">
- <view class="ss-flex-2 shop-box ss-row-center" style="height:25rpx;">
- <view style="width:17rpx;height:17rpx;margin-top:3rpx;" class="ss-flex-2">
- <image class="icon-image" referrerpolicy="no-referrer"
- src="/static/lanhu_shouye/ps45z8ynos8u6p0hlyciknnu9trq6jgvec6ac864-6e48-46fc-a850-9e88158e568c.png" />
- </view>
- <view style="font-size:16rpx;margin-left: 5rpx;color:#444;">秋水伊人</view>
- </view>
- </view>
- <view class="ss-flex-2 ss-row-center ss-col-center" style="box-sizing: border-box;">
- <view style="width:23rpx;height:25rpx;">
- <image class="icon-image" referrerpolicy="no-referrer"
- src="/static/lanhu_shouye/ps45z8ynos8u6p0hlyciknnu9trq6jgvec6ac864-6e48-46fc-a850-9e88158e568c.png" />
- </view>
- <view style="font-size: 22rpx;margin-left:5rpx;margin-top: 15rpx;">
- 15
- </view>
- <view style="width:17rpx;height:25rpx;margin-left:30rpx;">
- <image class="icon-image" referrerpolicy="no-referrer"
- src="/static/lanhu_shouye/ps45z8ynos8u6p0hlyciknnu9trq6jgvec6ac864-6e48-46fc-a850-9e88158e568c.png" />
- </view>
- <view style="font-size: 22rpx;margin-left:5rpx;color:#009FE8;margin-top: 15rpx;">
- 15.256km
- </view>
- <view style="font-size: 16rpx;margin-left:20rpx;color:#666;margin-top: 15rpx;">
- 莱山区哈哈哈
- </view>
- <view class="ss-flex-1"></view>
- <view class="bt-box-two">点TA</view>
- </view>
- </view>
- </view>
- </scroll-view>
- </view>
- </view>
- <!-- 弹窗 -->
- <view v-if="isShow" class="popup-box" :style="'top:'+topSize" @click="close(2)">
- <view style="position: relative;width:100%;background-color: #fff;" @click.stop="prevent">
- <view style="display: flex;flex-direction:row;border-bottom: 4rpx solid #DCDCDC;">
- <!-- 左右布局 -->
- <view style="width:160rpx;background-color: #DCDCDC;color:#6B6B6B;font-size:26rpx;">
- <view style="width:100%;height:90rpx;line-height: 90rpx;text-align: center;font-size:34rpx;color:#333;font-weight: 650;background-color: #fff;">技师筛选</view>
- <view style="width:100%;height:90rpx;line-height: 90rpx;text-align: center;">时段</view>
- <view style="width:100%;height:90rpx;line-height: 90rpx;text-align: center;">价格</view>
- <view style="width:100%;height:90rpx;line-height: 90rpx;text-align: center;">服务状态</view>
- <view style="width:100%;height:90rpx;line-height: 90rpx;text-align: center;">服务类别</view>
- </view>
- <view class="ss-flex-1 box-sizing" style="padding-top:10rpx;">
- <view class="search-title">
- 技师登记
- </view>
- <view class="content-info-box">
- <view class="content-text" @click.stop="newInfo(1)">新人组</view>
- <view class="content-text">明星组</view>
- <view class="content-text">专业组</view>
- <view class="content-text">5星好评</view>
- </view>
- <view class="search-title">
- 技师性别
- </view>
- <view class="content-info-box">
- <view class="content-text">女技师</view>
- <view class="content-text">男技师</view>
- <view class="content-text">性别不限</view>
- </view>
- <view class="search-title">
- 服务类别
- </view>
- <view class="content-info-box">
- <view class="content-text">上门服务</view>
- <view class="content-text">店面体验</view>
- </view>
- <view class="search-title">
- 服务状态
- </view>
- <view class="content-info-box">
- <view class="content-text">空闲中</view>
- <view class="content-text">休息中</view>
- <view class="content-text">服务中</view>
- </view>
- <view class="search-title">
- 技师年龄(岁)
- </view>
- <view style="width: 95%;margin-left:2.5%;">
- <slider :value="age" @change="sliderChange" min="18" max="55" show-value />
- </view>
- <view class="search-title">
- 技师距离(km)
- </view>
- <view style="width: 95%;margin-left:2.5%;">
- <slider :value="distanceNum" @change="changeDistanceTwo" min="3" max="20" show-value />
- </view>
- </view>
- </view>
- <view style="display: flex;flex-wrap: nowrap;width:100%;height: 120rpx;">
- <view class="button-info-box" style="color:#41474B;background-color: #DCDCDC;">重置</view>
- <view class="button-info-box" style="color:#fff;background-color: #49B58E;">完成</view>
- </view>
- </view>
- </view>
- </s-layout>
- </template>
- <script setup>
- import {
- computed,
- ref
- } from 'vue';
- import {
- onLoad,
- onPageScroll,
- onPullDownRefresh
- } from '@dcloudio/uni-app';
- import sheep from '@/sheep';
- import $share from '@/sheep/platform/share';
- // 隐藏原生tabBar
- uni.hideTabBar();
- /**搜索栏*/
- const searchInfo=ref('')
- //搜索事件
- const onSearch=async(e)=>{
- console.log(e,'触发搜索事件')
- }
- const address=ref(0)
- const range=ref([
- { value: 0, text: "华庭路橡树湾小区10-909" },
- { value: 1, text: "足球" },
- { value: 2, text: "游泳" },
- ])
- const changeAddress=async(e)=>{
- console.log(e,'获取地址信息')
- }
- const distance=ref(0)
- const distanceData=ref(
- [{ value: 0, text: "距离" },
- { value: 1, text: "0~3km" },
- { value: 2, text: "3~5km" },
- { value: 2, text: "5~10km" },]
- )
- const changeDistance=async(e)=>{
- console.log(e,'获取距离')
- }
- const topSize=ref('0rpx')
- const isShow=ref(false)
- const searchAll=async()=>{
- //获取头部盒子宽高
- const query = uni.createSelectorQuery().select("#head-box")
- //获取宽度
- query.boundingClientRect(function(data){
- console.log(data,'元素的各种信息')
- topSize.value=(data.height*2+20)+'rpx'
- isShow.value=true
- }).exec()
- }
- const age=ref(21)
- const sliderChange=async(e)=>{
- console.log(e.detail.value,'技师年龄')
- age.value=e.detail.value
- }
- const distanceNum=ref(3)
- const changeDistanceTwo=async(e)=>{
- console.log(e.detail.value,'技师距离')
- distanceNum.value=e.detail.value
- }
- const newInfo=async(e)=>{
- console.log(e,'pppppppppppppp')
- }
- const prevent=async()=>{
- console.log('阻止事件冒泡')
- }
- const close=async(e)=>{
- console.log(e,'qqqqqq')
- isShow.value=false
- }
-
- //获取顶部安全距离
- const app = uni.getSystemInfoSync()
- const bottomHeightOne = (app.statusBarHeight) + 'rpx'
- const bottomHeight = ref(bottomHeightOne)
-
- onLoad((options) => {
- });
- </script>
- <style scoped>
- /deep/uni-slider .uni-slider-handle-wrapper{
- height:18rpx !important;
- }
- .distance{
- /deep/.uni-select__input-text{
- width:130rpx;
- color:#fff;
- overflow: hidden;
- white-space: nowrap;
- text-overflow: ellipsis;
- font-size:24rpx;
- text-align: right;
- }
- }
- /deep/.uni-select__input-text{
- width:180rpx;
- color:#fff;
- overflow: hidden;
- white-space: nowrap;
- text-overflow: ellipsis;
- font-size:24rpx;
- text-align: right;
- }
- /deep/.uni-searchbar__box{
- height:100% !important;
- }
- /deep/.uni-select{
- border: none !important;
- padding-left: 0rpx;
- }
- </style>
- <style scoped lang="scss">
- .list-box{
- width:95%;
- margin-left:2.5%;
- margin-top: 20rpx;
- padding-bottom: 20rpx;
- border-bottom: 3rpx dashed #AAAAAA;
- }
- .bt-box-two{
- padding: 5rpx;
- padding-left: 20rpx;
- padding-right: 20rpx;
- font-size: 20rpx;
- color:#fff;
- background-color: #009FE8;
- border-radius: 5rpx;
- }
- .shop-box{
- padding:3rpx;
- padding-left: 15rpx;
- padding-right: 15rpx;
- // background-color: #E3007F;
- color:#fff;
- border-radius: 5rpx;
- box-sizing: border-box;
- }
- .text-info-box{
- width: 100%;
- font-size: 23rpx;
- color: #6F7379;
- display: -webkit-box;
- -webkit-box-orient: vertical;
- -webkit-line-clamp: 2;
- overflow: hidden;
- text-overflow: ellipsis;
- min-height: 60rpx;
- }
- .flag-box{
- font-size: 16rpx !important;
- color:#fff;
- margin-right: 15rpx;
- padding-top:2rpx;
- padding-bottom:2rpx;
- text-align: center;
- box-sizing: border-box;
- border-radius: 5rpx;
- margin-top:5rpx;
- padding-left:15rpx;
- padding-right:15rpx;
- }
- .job-box{
- font-size: 22rpx;
- color: #fff;
- background-color: #898F96;
- padding:3rpx;
- padding-left: 5rpx;
- padding-right: 5rpx;
- -moz-box-sizing: border-box;
- }
- .bt-box{
- width:100rpx;
- height:30rpx;
- line-height:30rpx;
- text-align:center;
- color:#fff;
- background-color: #009FE8;
- font-size: 20rpx;
- padding:3rpx;
- border-radius: 5rpx;
- margin-top:10rpx;
- margin-left:40rpx;
- }
- .button-info-box{
- width:41%;
- margin-left:6%;
- height: 70rpx;
- line-height: 70rpx;
- text-align: center;
- font-size:40rpx;
- margin-top:25rpx;
- border-radius: 10rpx;
- }
- .content-text{
- width: 30%;
- height: 60rpx;
- line-height: 60rpx;
- text-align: center;
- font-size: 28rpx;
- color:#707374;
- background-color: #EFEEF1;
- margin-top:15rpx;
- border-radius: 10rpx;
- margin-left: 2.5%;
- }
- .content-info-box{
- width: 95%;
- margin-left:2.5%;
- display: flex;
- flex-wrap: wrap;
- justify-content: flex-start;
- align-items: center;
- }
- .search-title{
- width: 90%;
- height: 50rpx;
- margin-left:5%;
- margin-top: 20rpx;
- font-size: 30rpx;
- color: #333;
- font-weight: 650;
- text-align: left;
- }
- .popup-box{
- position: absolute;
- left:0;
- bottom:0;
- right:0;
- z-index: 999;
- background-color: rgba(0, 0, 0, .2);
- }
- .icon-image{
- width:100%;
- height:100%;
- }
- // 上中下布局样式
- .body {
- display: flex;
- flex-direction: column;
- height: calc(100vh - 50px);
- background: linear-gradient(to bottom, #08A3E9, #fff);
- box-sizing: border-box;
- }
- // 中部滚动
- .list-wrap {
- flex-grow: 1;
- position: relative;
- background-color: #fff;
- border-radius: 10rpx;
- width: 95%;
- margin-left: 2.5%;
- box-sizing: border-box;
- }
- .list {
- position: absolute;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
- padding:10rpx;
- box-sizing: border-box;
- }
- .list-scroll-view {
- display: flex;
- flex-direction: row;
- flex-wrap: wrap;
- justify-content: space-between;
- margin-left: 2vw;
- margin-right: 2vw;
- }
- .course-card {
- width: 47vw;
- margin-top: 10px;
- margin-bottom: 10px;
- }
- </style>
|