Compare commits
No commits in common. "3a7aeb5b0aa62e78ee8ee6728c3a07aa39897496" and "9025e98a2953fe7fbaadfef7daaa48d8ad96232c" have entirely different histories.
3a7aeb5b0a
...
9025e98a29
5
App.vue
5
App.vue
@ -29,9 +29,4 @@
|
|||||||
height: 20rpx;
|
height: 20rpx;
|
||||||
background: #F9F9F9;
|
background: #F9F9F9;
|
||||||
}
|
}
|
||||||
|
|
||||||
page{
|
|
||||||
font-size: 28rpx;
|
|
||||||
padding-bottom: 120rpx;
|
|
||||||
}
|
|
||||||
</style>
|
</style>
|
||||||
@ -1,5 +0,0 @@
|
|||||||
export const apiArr = {
|
|
||||||
city: '/citys/s/list', // 获取省份列表
|
|
||||||
area: '/citys/c/list', // 获取城市列表
|
|
||||||
business: '/citys/x/list', // 获取区县列表
|
|
||||||
}
|
|
||||||
@ -16,15 +16,10 @@ export const apiArr = {
|
|||||||
|
|
||||||
get_host_info: 'https://zhsq.hshuishang.com/Miniapi/Index/get_host_info',
|
get_host_info: 'https://zhsq.hshuishang.com/Miniapi/Index/get_host_info',
|
||||||
|
|
||||||
get_community_area_list:"https://zhsq.hshuishang.com/Miniapi/Community/get_community_area_list",
|
|
||||||
|
|
||||||
|
|
||||||
carList: '/wechat/community/car/list', // 获取社区列表
|
carList: '/wechat/community/car/list', // 获取社区列表
|
||||||
addCar: '/wechat/community/car/add', // 添加车辆
|
addCar: '/wechat/community/car/add', // 添加车辆
|
||||||
getCarList: '/wechat/community/car/list', //获取车辆列表
|
getCarList: '/wechat/community/car/list', //获取车辆列表
|
||||||
deleteItem: "/wechat/community/car/del",//删除车牌
|
deleteItem: "/wechat/community/car/del",//删除车牌
|
||||||
|
|
||||||
getBanner:"/wechat/home-page/banner-list",//获取banner图
|
|
||||||
getButton:"/wechat/home-page/button-list",//获取button
|
|
||||||
|
|
||||||
};
|
};
|
||||||
@ -1,11 +0,0 @@
|
|||||||
export const apiArr = {
|
|
||||||
getCateList: '/wechat/appoints/get-cate-list', // 获取同城服务分类列表
|
|
||||||
serverInfo: '/wechat/appoints/get-one', // 获取同城服务详情
|
|
||||||
getAllList: '/wechat/appoints/get-all-list', // 跟据不同的id 查分类
|
|
||||||
getHotCate: '/wechat/appoints/get-hot-cate', //获取热门上门服务
|
|
||||||
submitServer: '/wechat/appoint-orders/now', // 预约服务
|
|
||||||
createServerOrder: '/wechat/appoint-orders/create', // 创建上门服务订单
|
|
||||||
getCurrentShopMsg: '/wechat/water/device/shop-info', // 获取商家支付信息
|
|
||||||
getShopList: '/wechat/get-shop-list', // 获取商家列表
|
|
||||||
getGoodsDesc: "/wechat/shop/shop_info", //商家详情
|
|
||||||
}
|
|
||||||
@ -1,11 +0,0 @@
|
|||||||
export const apiArr = {
|
|
||||||
AllDoorToDoor: '/wechat/appoints/get-cate-list', //获取服务列表
|
|
||||||
ServerInfo: '/wechat/appoints/get-one', //获取服务列表
|
|
||||||
getServerById: '/wechat/appoints/get-all-list', //跟据不同的id 查分类
|
|
||||||
submitServer: '/wechat/appoint-orders/now', //预约服务
|
|
||||||
createServerOrder: '/wechat/appoint-orders/create', //创建上门服务订单
|
|
||||||
getCurrentShopMsg: '/wechat/water/device/shop-info', //获取店铺支付信息
|
|
||||||
getBanner: '/wechat/banner-list ', //banner图
|
|
||||||
getGoodsList: '/wechat/appoints/get-shop-list', //获取商家列表
|
|
||||||
getGoodsDesc:"/wechat/shop/shop_info", //商家详情
|
|
||||||
}
|
|
||||||
20
api/user.js
20
api/user.js
@ -1,20 +0,0 @@
|
|||||||
export const apiArr = {
|
|
||||||
getAllList:' /wechat/appoints/get-all-list', // 上门服务商品列表
|
|
||||||
revoke: '/wechat/appoint-orders/revoke', // 取消订单
|
|
||||||
getOne: '/wechat/appoint-orders/get-one', // 订单详情
|
|
||||||
create: '/wechat/appoint-orders/create', // 订单提交
|
|
||||||
getOrdersAllList: '/wechat/appoint-orders/get-all-list', // 查询这个登录人的所有订单
|
|
||||||
signCycle: '/wechat/sign/sign-cycle', // 签到周期详情
|
|
||||||
signList: '/wechat/sign/sign-list', // 获取签到记录列表
|
|
||||||
sign: '/wechat/sign/sign', // 积分签到
|
|
||||||
signIntegral: '/wechat/sign/integral', // 查询账户积分
|
|
||||||
signInfo: '/wechat/sign/info', // 获取签到详情
|
|
||||||
addr: '/wechat/mpusers/addr', // 获取地址信息
|
|
||||||
setAddr: '/wechat/mpusers/set-addr',// 修改地址接口
|
|
||||||
avatar: '/wechat/mpusers/avatar', // 上传头像
|
|
||||||
modifyPass: '/wechat/mpusers/modify-pass', // 修改登录密码
|
|
||||||
payPass: '/wechat/mpusers/pay-pass', // 设置支付密码
|
|
||||||
couponList: '/wechat/discuss/list', // 获取优惠券列表
|
|
||||||
getUserCommunity:"/wechat/community/owner/mylist",//获取用户社区信息
|
|
||||||
createQrcode: '/wechat/water/device/qr-code', //获取小程序码
|
|
||||||
};
|
|
||||||
@ -27,8 +27,8 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { request } from '../../../utils';
|
import { request, NavgateTo } from '../../utils';
|
||||||
import { apiArr } from '../../../api/community';
|
import { apiArr } from '../../api/community';
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@ -62,8 +62,8 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { request, picUrl, NavgateTo } from '../../../utils';
|
import { request, picUrl, NavgateTo } from '../../utils';
|
||||||
import { apiArr } from '../../../api/community';
|
import { apiArr } from '../../api/community';
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@ -82,6 +82,7 @@
|
|||||||
typeName:"",//业主 家属 租户 访客
|
typeName:"",//业主 家属 租户 访客
|
||||||
room_id:"",
|
room_id:"",
|
||||||
|
|
||||||
|
show:false,
|
||||||
columns:[
|
columns:[
|
||||||
[
|
[
|
||||||
{text:"业主",type:1},
|
{text:"业主",type:1},
|
||||||
@ -100,10 +101,10 @@
|
|||||||
const { type } = e.currentTarget.dataset;
|
const { type } = e.currentTarget.dataset;
|
||||||
|
|
||||||
if(type == '1'){
|
if(type == '1'){
|
||||||
NavgateTo(`/packages/community/chooseMsg/index?type=${type}&id=${this.communityId}`, {isLogin: false});
|
NavgateTo(`/community/chooseMsg/index?type=${type}&id=${this.communityId}`, {isLogin: false});
|
||||||
}else{
|
}else{
|
||||||
if(this.FacId){
|
if(this.FacId){
|
||||||
NavgateTo(`/packages/community/chooseMsg/index?type=${type}&id=${this.communityId}&FacId=${this.FacId}`, {isLogin: false});
|
NavgateTo(`/community/chooseMsg/index?type=${type}&id=${this.communityId}&FacId=${this.FacId}`, {isLogin: false});
|
||||||
|
|
||||||
}else{
|
}else{
|
||||||
uni.showToast({
|
uni.showToast({
|
||||||
@ -23,8 +23,8 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { request } from '../../../utils';
|
import { request, picUrl, NavgateTo } from '../../utils';
|
||||||
import { apiArr } from '../../../api/community';
|
import { apiArr } from '../../api/community';
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@ -57,8 +57,8 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { request, picUrl, NavgateTo } from '../../../utils';
|
import { request, picUrl, NavgateTo } from '../../utils';
|
||||||
import { apiArr } from '../../../api/community';
|
import { apiArr } from '../../api/community';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
data () {
|
data () {
|
||||||
@ -68,7 +68,7 @@
|
|||||||
navList: [
|
navList: [
|
||||||
{
|
{
|
||||||
pic: 'https://wechat-img-file.oss-cn-beijing.aliyuncs.com/community/_assets/Group_345.png',
|
pic: 'https://wechat-img-file.oss-cn-beijing.aliyuncs.com/community/_assets/Group_345.png',
|
||||||
url: '/packages/community/applyOwer/index',
|
url: '/community/applyOwer/index',
|
||||||
desc: '申请业主'
|
desc: '申请业主'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -165,8 +165,8 @@
|
|||||||
}
|
}
|
||||||
console.log('newInfo', newInfo);
|
console.log('newInfo', newInfo);
|
||||||
let navList = this.navList
|
let navList = this.navList
|
||||||
navList[0].url = `/packages/community/applyOwer/index?id=${Number(id)}&title=${res.name}`;
|
navList[0].url = `/community/applyOwer/index?id=${Number(id)}&title=${res.name}`;
|
||||||
navList[1].url = `/packages/community/mycar/index?id=${Number(id)}&title=${res.name}`;
|
navList[1].url = `/community/mycar/index?id=${Number(id)}&title=${res.name}`;
|
||||||
this.info = newInfo;
|
this.info = newInfo;
|
||||||
this.navList = navList;
|
this.navList = navList;
|
||||||
|
|
||||||
@ -195,7 +195,7 @@
|
|||||||
|
|
||||||
// 通知栏点击跳转
|
// 通知栏点击跳转
|
||||||
headerTipsClick() {
|
headerTipsClick() {
|
||||||
NavgateTo(`/packages/community/notice/index?id=${this.id}&title=${this.pageTitle}`, { isLogin: false })
|
NavgateTo(`/community/notice/index?id=${this.id}&title=${this.pageTitle}`, { isLogin: false })
|
||||||
},
|
},
|
||||||
|
|
||||||
// 宫格item点击
|
// 宫格item点击
|
||||||
@ -209,11 +209,11 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
repair(){
|
repair(){
|
||||||
NavgateTo(`/packages/community/oneRepair/index`, {isLogin: false })
|
NavgateTo(`/community/oneRepair/index`, {isLogin: false })
|
||||||
},
|
},
|
||||||
|
|
||||||
ReparirList(){
|
ReparirList(){
|
||||||
NavgateTo(`/packages/community/repairList/index?id=${this.id}&title=${this.info.name}`, {isLogin: false })
|
NavgateTo(`/community/repairList/index?id=${this.id}&title=${this.info.name}`, {isLogin: false })
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
||||||
@ -5,8 +5,8 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { request } from '../../../utils';
|
import { request, picUrl, NavgateTo } from '../../utils';
|
||||||
import { apiArr } from '../../../api/community';
|
import { apiArr } from '../../api/community';
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@ -24,8 +24,8 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { request, picUrl, uniqueByField } from '../../../utils';
|
import { request, picUrl, uniqueByField } from '../../utils';
|
||||||
import { apiArr } from '../../../api/community';
|
import { apiArr } from '../../api/community';
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@ -63,6 +63,9 @@
|
|||||||
if(options?.types == 2){
|
if(options?.types == 2){
|
||||||
this.init(options?.type || '');
|
this.init(options?.type || '');
|
||||||
}else{
|
}else{
|
||||||
|
// this.init(options?.type || '');
|
||||||
|
// return
|
||||||
|
// // 临时调init , 后续接口好了改回去
|
||||||
this.getUserCommunity()
|
this.getUserCommunity()
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -31,8 +31,8 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { request, NavgateTo } from '../../../utils';
|
import { request, NavgateTo } from '../../utils';
|
||||||
import { apiArr } from '../../../api/community';
|
import { apiArr } from '../../api/community';
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@ -108,7 +108,7 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
addCar(){
|
addCar(){
|
||||||
NavgateTo(`/packages/community/addCar/index?title=${this.title}&id=${this.id}`, {isLogin: false})
|
NavgateTo(`/community/addCar/index?title=${this.title}&id=${this.id}`, {isLogin: false})
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
||||||
@ -25,8 +25,8 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { request, NavgateTo } from '../../../utils';
|
import { request, picUrl, NavgateTo } from '../../utils';
|
||||||
import { apiArr } from '../../../api/community';
|
import { apiArr } from '../../api/community';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
@ -65,7 +65,7 @@
|
|||||||
headerNoticeClick(event) {
|
headerNoticeClick(event) {
|
||||||
console.log('12313', event);
|
console.log('12313', event);
|
||||||
const { item } = event.currentTarget.dataset;
|
const { item } = event.currentTarget.dataset;
|
||||||
NavgateTo(`/packages/community/desc/desc?id=${item.news_id}&title=${item.title}`, {isLogin: false})
|
NavgateTo(`/community/desc/desc?id=${item.news_id}&title=${item.title}`, {isLogin: false})
|
||||||
},
|
},
|
||||||
|
|
||||||
},
|
},
|
||||||
@ -122,10 +122,10 @@
|
|||||||
NavgateTo,
|
NavgateTo,
|
||||||
upload,
|
upload,
|
||||||
isPhone,
|
isPhone,
|
||||||
} from '../../../utils';
|
} from '../../utils';
|
||||||
import {
|
import {
|
||||||
apiArr
|
apiArr
|
||||||
} from '../../../api/community';
|
} from '../../api/community';
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@ -176,18 +176,18 @@
|
|||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
chooseCom(){
|
chooseCom(){
|
||||||
NavgateTo(`/packages/community/index/index?joinType=3`, { isLogin: false })
|
NavgateTo(`/community/index/index?joinType=3`, { isLogin: false })
|
||||||
},
|
},
|
||||||
|
|
||||||
chooseFac(e){
|
chooseFac(e){
|
||||||
console.log('eeee', e);
|
console.log('eeee', e);
|
||||||
const { type } = e.currentTarget.dataset;
|
const { type } = e.currentTarget.dataset;
|
||||||
if(type == '1'){
|
if(type == '1'){
|
||||||
NavgateTo(`/packages/community/chooseMsg/index?type=${type}&id=${this.CommunityInfo.id}`, { isLogin: false });
|
NavgateTo(`/community/chooseMsg/index?type=${type}&id=${this.CommunityInfo.id}`, { isLogin: false });
|
||||||
}else{
|
}else{
|
||||||
console.log(this.FacId);
|
console.log(this.FacId);
|
||||||
if(this.FacId){
|
if(this.FacId){
|
||||||
NavgateTo(`/packages/community/chooseMsg/index?type=${type}&id=${this.CommunityInfo.id}&FacId=${this.FacId}`, { isLogin: false });
|
NavgateTo(`/community/chooseMsg/index?type=${type}&id=${this.CommunityInfo.id}&FacId=${this.FacId}`, { isLogin: false });
|
||||||
}else{
|
}else{
|
||||||
uni.showToast({
|
uni.showToast({
|
||||||
title: '请先选择楼宇号',
|
title: '请先选择楼宇号',
|
||||||
@ -34,10 +34,10 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { request, picUrl } from '../../../utils';
|
import { request, picUrl, NavgateTo } from '../../utils';
|
||||||
import {
|
import {
|
||||||
apiArr
|
apiArr
|
||||||
} from '../../../api/community';
|
} from '../../api/community';
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@ -45,8 +45,8 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { request, NavgateTo } from '../../../utils';
|
import { request, picUrl, NavgateTo } from '../../utils';
|
||||||
import { apiArr } from '../../../api/community';
|
import { apiArr } from '../../api/community';
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@ -82,11 +82,11 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
headerRepairClick(e){
|
headerRepairClick(e){
|
||||||
NavgateTo(`/packages/community/oneRepair/index`, { isLogin: false })
|
NavgateTo(`/community/oneRepair/index`, { isLogin: false })
|
||||||
},
|
},
|
||||||
headerRepairDetailClick(e){
|
headerRepairDetailClick(e){
|
||||||
const { id } = e.currentTarget.dataset
|
const { id } = e.currentTarget.dataset
|
||||||
NavgateTo(`/packages/community/repairDetail/index?id=${id}&title=${this.title}`, { isLogin: false })
|
NavgateTo(`/community/repairDetail/index?id=${id}&title=${this.title}`, { isLogin: false })
|
||||||
},
|
},
|
||||||
|
|
||||||
changeTab(e){
|
changeTab(e){
|
||||||
@ -1,11 +0,0 @@
|
|||||||
.popup_title {
|
|
||||||
display: flex;
|
|
||||||
margin: 20rpx 30rpx 0;
|
|
||||||
justify-content: space-between;
|
|
||||||
}
|
|
||||||
.popup_label {
|
|
||||||
color: #999;
|
|
||||||
}
|
|
||||||
.color_blue {
|
|
||||||
color: #576b95;
|
|
||||||
}
|
|
||||||
@ -1,158 +0,0 @@
|
|||||||
<template>
|
|
||||||
<view>
|
|
||||||
<u-popup
|
|
||||||
:show="show"
|
|
||||||
closeOnClickOverlay
|
|
||||||
round="20rpx"
|
|
||||||
@close="onClose"
|
|
||||||
>
|
|
||||||
<view>
|
|
||||||
<view class="popup_title">
|
|
||||||
<view class="popup_label" @click="onClose">取消</view>
|
|
||||||
<view class="popup_label color_blue" @click="onOk">确认</view>
|
|
||||||
</view>
|
|
||||||
<!-- indicator-style="height: 50px;" style="width: 100%; height: 500rpx;" -->
|
|
||||||
<picker-view indicator-style="height: 50px;" style="width: 100%; height: 400rpx;" :value="value" @change="bindChange">
|
|
||||||
<picker-view-column>
|
|
||||||
<view v-for="(item, index) in provList" :key="index" style="line-height: 50px; text-align: center;">{{item.name}}</view>
|
|
||||||
</picker-view-column>
|
|
||||||
<picker-view-column>
|
|
||||||
<view v-for="(item, index) in defaultCity" :key="index" style="line-height: 50px; text-align: center;">{{item.name}}</view>
|
|
||||||
</picker-view-column>
|
|
||||||
<picker-view-column>
|
|
||||||
<view v-for="(item, index) in defaultDist" :key="index" style="line-height: 50px; text-align: center;">{{item.business_name}}</view>
|
|
||||||
</picker-view-column>
|
|
||||||
</picker-view>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</view>
|
|
||||||
</u-popup>
|
|
||||||
</view>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import {
|
|
||||||
apiArr
|
|
||||||
} from '../../api/area';
|
|
||||||
import { request } from '../../utils';
|
|
||||||
export default {
|
|
||||||
props: {
|
|
||||||
show: {
|
|
||||||
type: Boolean,
|
|
||||||
default: false,
|
|
||||||
required: true,
|
|
||||||
}
|
|
||||||
},
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
provList: [], // 省
|
|
||||||
cityList: [], //市
|
|
||||||
distList: [], // 区
|
|
||||||
|
|
||||||
defaultCity: [], // 默认展示的市区数据
|
|
||||||
defaultDist: [], // 默认展示的县/区数据
|
|
||||||
|
|
||||||
confirmProv: {}, // 默认选中省
|
|
||||||
confirmCity: {}, // 默认选中市
|
|
||||||
confirmDist: {}, // 默认选中区/县
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
methods: {
|
|
||||||
// 获取省份信息
|
|
||||||
async getProvList () {
|
|
||||||
const res = await request(apiArr.city, 'POST', {}, { silent: false });
|
|
||||||
return res;
|
|
||||||
},
|
|
||||||
|
|
||||||
// 获取市区信息
|
|
||||||
async getCityList () {
|
|
||||||
const res = await request(apiArr.area, 'POST', {}, { silent: false });
|
|
||||||
return res;
|
|
||||||
},
|
|
||||||
|
|
||||||
// 获取 县/区 信息
|
|
||||||
async getDistList () {
|
|
||||||
const res = await request(apiArr.business, 'POST', {}, { silent: false });
|
|
||||||
return res;
|
|
||||||
},
|
|
||||||
|
|
||||||
async init() {
|
|
||||||
uni.showLoading({
|
|
||||||
title: '加载中',
|
|
||||||
mask: true
|
|
||||||
});
|
|
||||||
try {
|
|
||||||
const [provRes, cityRes, distRes] = await Promise.all([
|
|
||||||
this.getProvList(),
|
|
||||||
this.getCityList(),
|
|
||||||
this.getDistList(),
|
|
||||||
])
|
|
||||||
|
|
||||||
uni.hideLoading();
|
|
||||||
// 默认展示第一条数据 的市区 和 城区
|
|
||||||
let defaultCity = cityRes.rows.filter((item) => {
|
|
||||||
return item.city_id === provRes.rows[0].city_id
|
|
||||||
});
|
|
||||||
let defaultDist = distRes.rows.filter((item) => {
|
|
||||||
return item.area_id === cityRes.rows[0].area_id
|
|
||||||
});
|
|
||||||
|
|
||||||
this.provList = provRes?.rows; // 全部省信息
|
|
||||||
this.cityList = cityRes?.rows; // 全部市信息
|
|
||||||
this.distList = distRes?.rows; // 全部区信息
|
|
||||||
|
|
||||||
this.defaultCity = defaultCity; // 默认展示 市区
|
|
||||||
this.defaultDist = defaultDist; // 默认展示 县/区
|
|
||||||
|
|
||||||
this.confirmProv = provRes.rows[0];
|
|
||||||
this.confirmCity = defaultCity[0];
|
|
||||||
this.confirmDist = defaultDist[0];
|
|
||||||
} catch (error) {
|
|
||||||
uni.hideLoading();
|
|
||||||
console.log('获取省市区信息异常', error);
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
// 切换省市区时联动改变参数值
|
|
||||||
bindChange (e) {
|
|
||||||
console.log('[1231331], e', e);
|
|
||||||
const {value } = e.detail;
|
|
||||||
const {provList, cityList, distList} = this;
|
|
||||||
|
|
||||||
// 每次切换时,根据当前点击的省过滤出所属市区,并且变化县/区
|
|
||||||
let newCrty = cityList.filter((item) => item.city_id === provList[value[0]].city_id);
|
|
||||||
let newDist = distList.filter((item) => item.area_id === newCrty[value[1]].area_id);
|
|
||||||
|
|
||||||
this.defaultCity = newCrty;
|
|
||||||
this.defaultDist = newDist;
|
|
||||||
|
|
||||||
// 更改默认选中数据
|
|
||||||
this.confirmProv = provList[value[0]];
|
|
||||||
this.confirmCity = newCrty[value[1]];
|
|
||||||
this.confirmDist = newDist[value[2]];
|
|
||||||
},
|
|
||||||
|
|
||||||
// 关闭弹窗
|
|
||||||
onClose() {
|
|
||||||
this.$emit('close');
|
|
||||||
},
|
|
||||||
|
|
||||||
// 点击确定传递当前选中省市区信息给父方法
|
|
||||||
onOk() {
|
|
||||||
const { confirmProv, confirmCity, confirmDist } = this;
|
|
||||||
this.$emit('selectArea', {confirmProv, confirmCity, confirmDist});
|
|
||||||
},
|
|
||||||
|
|
||||||
},
|
|
||||||
|
|
||||||
mounted() {
|
|
||||||
this.init();
|
|
||||||
},
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style>
|
|
||||||
@import url('./areaPopup.css');
|
|
||||||
</style>
|
|
||||||
@ -1,89 +0,0 @@
|
|||||||
|
|
||||||
.foot-fixed {
|
|
||||||
position: fixed;
|
|
||||||
bottom: -1px;
|
|
||||||
left: 0;
|
|
||||||
right: 0;
|
|
||||||
z-index: 999;
|
|
||||||
width: 100%;
|
|
||||||
background: #ffffff;
|
|
||||||
border-top: 1px solid #E8E8E8;
|
|
||||||
box-shadow: 0 0 3px rgba(0,0,0,0.1);
|
|
||||||
}
|
|
||||||
.foot-fixed .foot-item {
|
|
||||||
padding: 0;
|
|
||||||
}
|
|
||||||
.foot-fixed .foot-item {
|
|
||||||
position: relative;
|
|
||||||
}
|
|
||||||
.foot-fixed .foot-item {
|
|
||||||
width: 20%;
|
|
||||||
float: left;
|
|
||||||
text-align: center;
|
|
||||||
color: #777;
|
|
||||||
padding: 5px 0 10px;
|
|
||||||
}
|
|
||||||
a {
|
|
||||||
color: #666;
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
a {
|
|
||||||
background: transparent;
|
|
||||||
}
|
|
||||||
.foot-fixed .foot-item .foot-icon {
|
|
||||||
width: 24px;
|
|
||||||
height: 26px;
|
|
||||||
margin: 0 auto;
|
|
||||||
}
|
|
||||||
.foot-fixed .foot-item .foot-label {
|
|
||||||
margin: 5px 0;
|
|
||||||
}
|
|
||||||
.foot-fixed .foot-item .foot-label {
|
|
||||||
height: 15px;
|
|
||||||
line-height: 15px;
|
|
||||||
font-size: 12px;
|
|
||||||
}
|
|
||||||
.foot-fixed .foot-item span {
|
|
||||||
display: block;
|
|
||||||
width: 100%;
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* 自定义导航栏 */
|
|
||||||
.nav-box {
|
|
||||||
box-sizing: border-box;
|
|
||||||
width: 100%;
|
|
||||||
/* position: relative; */
|
|
||||||
/* position: fixed; */
|
|
||||||
z-index: 2;
|
|
||||||
}
|
|
||||||
|
|
||||||
.nav-box .nav-bar {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.nav-box .nav-bar .nav-bar-left,
|
|
||||||
.nav-box .nav-bar .nav-bar-right {
|
|
||||||
padding: 0 20rpx;
|
|
||||||
min-width: 36rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.nav-box .nav-bar .nav-bar-left van-icon {
|
|
||||||
vertical-align: sub;
|
|
||||||
color: #333333;
|
|
||||||
}
|
|
||||||
|
|
||||||
.nav-box .nav-bar .nav-bar-title {
|
|
||||||
flex: 1;
|
|
||||||
text-align: center;
|
|
||||||
font-size: 32rpx;
|
|
||||||
letter-spacing: 2rpx;
|
|
||||||
color: #333333;
|
|
||||||
}
|
|
||||||
|
|
||||||
.nav-box .nav-bar-title {
|
|
||||||
color: red;
|
|
||||||
}
|
|
||||||
@ -1,97 +1,20 @@
|
|||||||
<template>
|
<template>
|
||||||
<view class="foot-fixed">
|
<view>123
|
||||||
<view v-for="(item, index) in navList" :key='index'>
|
|
||||||
<view id="navIndex" :style="{width:foot_width}" @click="jump" :data-idx="index" :data-url="item.url"
|
|
||||||
class="foot-item">
|
|
||||||
<image class="foot-icon" :src="item.photo" mode=""></image>
|
|
||||||
<text class="foot-label" id="navIndexLabel">{{item.nav_name}}</text>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
export default {
|
export default {
|
||||||
name: "nav",
|
name:"tes",
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
navList: [],
|
|
||||||
foot_width: '20%',
|
|
||||||
};
|
};
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
getFootnav() {
|
|
||||||
let _that = this;
|
|
||||||
uni.request({
|
|
||||||
url: 'https://zhsq.hshuishang.com/Miniapi/Index/footer_nav_list',
|
|
||||||
method: 'post',
|
|
||||||
header: {
|
|
||||||
'Content-type': 'application/x-www-form-urlencoded'
|
|
||||||
},
|
|
||||||
data: {},
|
|
||||||
dataType: 'json',
|
|
||||||
success: (result) => {
|
|
||||||
result.data[0].url = "/pages/index/index"
|
|
||||||
result.data[1].url = "/pages/device/device"
|
|
||||||
result.data[2].nav_name = "手机通行"
|
|
||||||
result.data[2].url = "/pages/phoneGo/phoneGo"
|
|
||||||
|
|
||||||
result.data[3].url = `packages/community/index/index`
|
|
||||||
result.data[4].url = "/pages/user/index"
|
|
||||||
|
|
||||||
result.data.splice(1, 2);
|
|
||||||
let footWidth = (100 / result.data.length).toFixed(2) + '%';
|
|
||||||
this.navList = result.data;
|
|
||||||
this.foot_width = footWidth;
|
|
||||||
},
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
//暂未开通
|
|
||||||
NotOpen() {
|
|
||||||
uni.showModal({
|
|
||||||
title: '提示',
|
|
||||||
content: '此功能暂未开通!',
|
|
||||||
showCancel: false,
|
|
||||||
complete: (res) => {
|
|
||||||
if (res.cancel) {
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
jump(e) {
|
|
||||||
const ctoken = uni.getStorageSync('ctoken');
|
|
||||||
const authen = ['/pages/index/index', '/pages/user/index'];
|
|
||||||
// 除首页及个人中心页不需要鉴定ctoken, 其他tab页均需存在登录态才可访问
|
|
||||||
if (authen.includes(e.currentTarget.dataset.url)) {
|
|
||||||
uni.redirectTo({
|
|
||||||
url: e.currentTarget.dataset.url,
|
|
||||||
})
|
|
||||||
return
|
|
||||||
}
|
|
||||||
if (!ctoken) {
|
|
||||||
uni.redirectTo({
|
|
||||||
url: '/pages/login/login',
|
|
||||||
})
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
uni.redirectTo({
|
|
||||||
url: e.currentTarget.dataset.url,
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
},
|
|
||||||
mounted() {
|
|
||||||
this.getFootnav();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style>
|
<style>
|
||||||
@import url("./nav.css");
|
|
||||||
</style>
|
</style>
|
||||||
@ -16,8 +16,8 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
import { onLoad } from 'uview-ui/libs/mixin/mixin';
|
||||||
import { apiArr } from '../../api/community';
|
import { apiArr } from '../../api/community';
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
|||||||
@ -102,7 +102,7 @@
|
|||||||
this.chooseClick(e);
|
this.chooseClick(e);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
NavgateTo(`/packages/community/communityDetail/index?title=${item.name}&id=${item.community_id}`, { isLogin: false })
|
NavgateTo(`/community/communityDetail/index?title=${item.name}&id=${item.community_id}`, { isLogin: false })
|
||||||
},
|
},
|
||||||
|
|
||||||
//选择小区
|
//选择小区
|
||||||
|
|||||||
@ -1,272 +0,0 @@
|
|||||||
/**
|
|
||||||
* 本模块封装了Android、iOS的应用权限判断、打开应用权限设置界面、以及位置系统服务是否开启
|
|
||||||
*/
|
|
||||||
|
|
||||||
var isIos
|
|
||||||
// #ifdef APP-PLUS
|
|
||||||
isIos = (plus.os.name == "iOS")
|
|
||||||
// #endif
|
|
||||||
|
|
||||||
// 判断推送权限是否开启
|
|
||||||
function judgeIosPermissionPush() {
|
|
||||||
var result = false;
|
|
||||||
var UIApplication = plus.ios.import("UIApplication");
|
|
||||||
var app = UIApplication.sharedApplication();
|
|
||||||
var enabledTypes = 0;
|
|
||||||
if (app.currentUserNotificationSettings) {
|
|
||||||
var settings = app.currentUserNotificationSettings();
|
|
||||||
enabledTypes = settings.plusGetAttribute("types");
|
|
||||||
console.log("enabledTypes1:" + enabledTypes);
|
|
||||||
if (enabledTypes == 0) {
|
|
||||||
console.log("推送权限没有开启");
|
|
||||||
} else {
|
|
||||||
result = true;
|
|
||||||
console.log("已经开启推送功能!")
|
|
||||||
}
|
|
||||||
plus.ios.deleteObject(settings);
|
|
||||||
} else {
|
|
||||||
enabledTypes = app.enabledRemoteNotificationTypes();
|
|
||||||
if (enabledTypes == 0) {
|
|
||||||
console.log("推送权限没有开启!");
|
|
||||||
} else {
|
|
||||||
result = true;
|
|
||||||
console.log("已经开启推送功能!")
|
|
||||||
}
|
|
||||||
console.log("enabledTypes2:" + enabledTypes);
|
|
||||||
}
|
|
||||||
plus.ios.deleteObject(app);
|
|
||||||
plus.ios.deleteObject(UIApplication);
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
// 判断定位权限是否开启
|
|
||||||
function judgeIosPermissionLocation() {
|
|
||||||
var result = false;
|
|
||||||
var cllocationManger = plus.ios.import("CLLocationManager");
|
|
||||||
var status = cllocationManger.authorizationStatus();
|
|
||||||
result = (status != 2)
|
|
||||||
console.log("定位权限开启:" + result);
|
|
||||||
// 以下代码判断了手机设备的定位是否关闭,推荐另行使用方法 checkSystemEnableLocation
|
|
||||||
/* var enable = cllocationManger.locationServicesEnabled();
|
|
||||||
var status = cllocationManger.authorizationStatus();
|
|
||||||
console.log("enable:" + enable);
|
|
||||||
console.log("status:" + status);
|
|
||||||
if (enable && status != 2) {
|
|
||||||
result = true;
|
|
||||||
console.log("手机定位服务已开启且已授予定位权限");
|
|
||||||
} else {
|
|
||||||
console.log("手机系统的定位没有打开或未给予定位权限");
|
|
||||||
} */
|
|
||||||
plus.ios.deleteObject(cllocationManger);
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
// 判断麦克风权限是否开启
|
|
||||||
function judgeIosPermissionRecord() {
|
|
||||||
var result = false;
|
|
||||||
var avaudiosession = plus.ios.import("AVAudioSession");
|
|
||||||
var avaudio = avaudiosession.sharedInstance();
|
|
||||||
var permissionStatus = avaudio.recordPermission();
|
|
||||||
console.log("permissionStatus:" + permissionStatus);
|
|
||||||
if (permissionStatus == 1684369017 || permissionStatus == 1970168948) {
|
|
||||||
console.log("麦克风权限没有开启");
|
|
||||||
} else {
|
|
||||||
result = true;
|
|
||||||
console.log("麦克风权限已经开启");
|
|
||||||
}
|
|
||||||
plus.ios.deleteObject(avaudiosession);
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
// 判断相机权限是否开启
|
|
||||||
function judgeIosPermissionCamera() {
|
|
||||||
var result = false;
|
|
||||||
var AVCaptureDevice = plus.ios.import("AVCaptureDevice");
|
|
||||||
var authStatus = AVCaptureDevice.authorizationStatusForMediaType('vide');
|
|
||||||
console.log("authStatus:" + authStatus);
|
|
||||||
if (authStatus == 3) {
|
|
||||||
result = true;
|
|
||||||
console.log("相机权限已经开启");
|
|
||||||
} else {
|
|
||||||
console.log("相机权限没有开启");
|
|
||||||
}
|
|
||||||
plus.ios.deleteObject(AVCaptureDevice);
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
// 判断相册权限是否开启
|
|
||||||
function judgeIosPermissionPhotoLibrary() {
|
|
||||||
var result = false;
|
|
||||||
var PHPhotoLibrary = plus.ios.import("PHPhotoLibrary");
|
|
||||||
var authStatus = PHPhotoLibrary.authorizationStatus();
|
|
||||||
console.log("authStatus:" + authStatus);
|
|
||||||
if (authStatus == 3) {
|
|
||||||
result = true;
|
|
||||||
console.log("相册权限已经开启");
|
|
||||||
} else {
|
|
||||||
console.log("相册权限没有开启");
|
|
||||||
}
|
|
||||||
plus.ios.deleteObject(PHPhotoLibrary);
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
// 判断通讯录权限是否开启
|
|
||||||
function judgeIosPermissionContact() {
|
|
||||||
var result = false;
|
|
||||||
var CNContactStore = plus.ios.import("CNContactStore");
|
|
||||||
var cnAuthStatus = CNContactStore.authorizationStatusForEntityType(0);
|
|
||||||
if (cnAuthStatus == 3) {
|
|
||||||
result = true;
|
|
||||||
console.log("通讯录权限已经开启");
|
|
||||||
} else {
|
|
||||||
console.log("通讯录权限没有开启");
|
|
||||||
}
|
|
||||||
plus.ios.deleteObject(CNContactStore);
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
// 判断日历权限是否开启
|
|
||||||
function judgeIosPermissionCalendar() {
|
|
||||||
var result = false;
|
|
||||||
var EKEventStore = plus.ios.import("EKEventStore");
|
|
||||||
var ekAuthStatus = EKEventStore.authorizationStatusForEntityType(0);
|
|
||||||
if (ekAuthStatus == 3) {
|
|
||||||
result = true;
|
|
||||||
console.log("日历权限已经开启");
|
|
||||||
} else {
|
|
||||||
console.log("日历权限没有开启");
|
|
||||||
}
|
|
||||||
plus.ios.deleteObject(EKEventStore);
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
// 判断备忘录权限是否开启
|
|
||||||
function judgeIosPermissionMemo() {
|
|
||||||
var result = false;
|
|
||||||
var EKEventStore = plus.ios.import("EKEventStore");
|
|
||||||
var ekAuthStatus = EKEventStore.authorizationStatusForEntityType(1);
|
|
||||||
if (ekAuthStatus == 3) {
|
|
||||||
result = true;
|
|
||||||
console.log("备忘录权限已经开启");
|
|
||||||
} else {
|
|
||||||
console.log("备忘录权限没有开启");
|
|
||||||
}
|
|
||||||
plus.ios.deleteObject(EKEventStore);
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Android权限查询
|
|
||||||
function requestAndroidPermission(permissionID) {
|
|
||||||
return new Promise((resolve, reject) => {
|
|
||||||
plus.android.requestPermissions(
|
|
||||||
[permissionID], // 理论上支持多个权限同时查询,但实际上本函数封装只处理了一个权限的情况。有需要的可自行扩展封装
|
|
||||||
function(resultObj) {
|
|
||||||
var result = 0;
|
|
||||||
for (var i = 0; i < resultObj.granted.length; i++) {
|
|
||||||
var grantedPermission = resultObj.granted[i];
|
|
||||||
console.log('已获取的权限:' + grantedPermission);
|
|
||||||
result = 1
|
|
||||||
}
|
|
||||||
for (var i = 0; i < resultObj.deniedPresent.length; i++) {
|
|
||||||
var deniedPresentPermission = resultObj.deniedPresent[i];
|
|
||||||
console.log('拒绝本次申请的权限:' + deniedPresentPermission);
|
|
||||||
result = 0
|
|
||||||
}
|
|
||||||
for (var i = 0; i < resultObj.deniedAlways.length; i++) {
|
|
||||||
var deniedAlwaysPermission = resultObj.deniedAlways[i];
|
|
||||||
console.log('永久拒绝申请的权限:' + deniedAlwaysPermission);
|
|
||||||
result = -1
|
|
||||||
}
|
|
||||||
resolve(result);
|
|
||||||
// 若所需权限被拒绝,则打开APP设置界面,可以在APP设置界面打开相应权限
|
|
||||||
// if (result != 1) {
|
|
||||||
// gotoAppPermissionSetting()
|
|
||||||
// }
|
|
||||||
},
|
|
||||||
function(error) {
|
|
||||||
console.log('申请权限错误:' + error.code + " = " + error.message);
|
|
||||||
resolve({
|
|
||||||
code: error.code,
|
|
||||||
message: error.message
|
|
||||||
});
|
|
||||||
}
|
|
||||||
);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
// 使用一个方法,根据参数判断权限
|
|
||||||
function judgeIosPermission(permissionID) {
|
|
||||||
if (permissionID == "location") {
|
|
||||||
return judgeIosPermissionLocation()
|
|
||||||
} else if (permissionID == "camera") {
|
|
||||||
return judgeIosPermissionCamera()
|
|
||||||
} else if (permissionID == "photoLibrary") {
|
|
||||||
return judgeIosPermissionPhotoLibrary()
|
|
||||||
} else if (permissionID == "record") {
|
|
||||||
return judgeIosPermissionRecord()
|
|
||||||
} else if (permissionID == "push") {
|
|
||||||
return judgeIosPermissionPush()
|
|
||||||
} else if (permissionID == "contact") {
|
|
||||||
return judgeIosPermissionContact()
|
|
||||||
} else if (permissionID == "calendar") {
|
|
||||||
return judgeIosPermissionCalendar()
|
|
||||||
} else if (permissionID == "memo") {
|
|
||||||
return judgeIosPermissionMemo()
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
// 跳转到**应用**的权限页面
|
|
||||||
function gotoAppPermissionSetting() {
|
|
||||||
if (isIos) {
|
|
||||||
var UIApplication = plus.ios.import("UIApplication");
|
|
||||||
var application2 = UIApplication.sharedApplication();
|
|
||||||
var NSURL2 = plus.ios.import("NSURL");
|
|
||||||
// var setting2 = NSURL2.URLWithString("prefs:root=LOCATION_SERVICES");
|
|
||||||
var setting2 = NSURL2.URLWithString("app-settings:");
|
|
||||||
application2.openURL(setting2);
|
|
||||||
|
|
||||||
plus.ios.deleteObject(setting2);
|
|
||||||
plus.ios.deleteObject(NSURL2);
|
|
||||||
plus.ios.deleteObject(application2);
|
|
||||||
} else {
|
|
||||||
// console.log(plus.device.vendor);
|
|
||||||
var Intent = plus.android.importClass("android.content.Intent");
|
|
||||||
var Settings = plus.android.importClass("android.provider.Settings");
|
|
||||||
var Uri = plus.android.importClass("android.net.Uri");
|
|
||||||
var mainActivity = plus.android.runtimeMainActivity();
|
|
||||||
var intent = new Intent();
|
|
||||||
intent.setAction(Settings.ACTION_APPLICATION_DETAILS_SETTINGS);
|
|
||||||
var uri = Uri.fromParts("package", mainActivity.getPackageName(), null);
|
|
||||||
intent.setData(uri);
|
|
||||||
mainActivity.startActivity(intent);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// 检查系统的设备服务是否开启
|
|
||||||
// var checkSystemEnableLocation = async function () {
|
|
||||||
function checkSystemEnableLocation() {
|
|
||||||
if (isIos) {
|
|
||||||
var result = false;
|
|
||||||
var cllocationManger = plus.ios.import("CLLocationManager");
|
|
||||||
var result = cllocationManger.locationServicesEnabled();
|
|
||||||
console.log("系统定位开启:" + result);
|
|
||||||
plus.ios.deleteObject(cllocationManger);
|
|
||||||
return result;
|
|
||||||
} else {
|
|
||||||
var context = plus.android.importClass("android.content.Context");
|
|
||||||
var locationManager = plus.android.importClass("android.location.LocationManager");
|
|
||||||
var main = plus.android.runtimeMainActivity();
|
|
||||||
var mainSvr = main.getSystemService(context.LOCATION_SERVICE);
|
|
||||||
var result = mainSvr.isProviderEnabled(locationManager.GPS_PROVIDER);
|
|
||||||
console.log("系统定位开启:" + result);
|
|
||||||
return result
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
module.exports = {
|
|
||||||
judgeIosPermission: judgeIosPermission,
|
|
||||||
requestAndroidPermission: requestAndroidPermission,
|
|
||||||
checkSystemEnableLocation: checkSystemEnableLocation,
|
|
||||||
gotoAppPermissionSetting: gotoAppPermissionSetting
|
|
||||||
}
|
|
||||||
@ -57,7 +57,7 @@
|
|||||||
},
|
},
|
||||||
"oauth" : {
|
"oauth" : {
|
||||||
"weixin" : {
|
"weixin" : {
|
||||||
"appid" : "wxb4018c78fa143450",
|
"appid" : "wx48c8154de6cc8b36",
|
||||||
"UniversalLinks" : ""
|
"UniversalLinks" : ""
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -68,10 +68,9 @@
|
|||||||
"quickapp" : {},
|
"quickapp" : {},
|
||||||
/* 小程序特有相关 */
|
/* 小程序特有相关 */
|
||||||
"mp-weixin" : {
|
"mp-weixin" : {
|
||||||
"appid" : "wxb4018c78fa143450",
|
"appid" : "",
|
||||||
"setting" : {
|
"setting" : {
|
||||||
"urlCheck" : false,
|
"urlCheck" : false
|
||||||
"es6" : true
|
|
||||||
},
|
},
|
||||||
"usingComponents" : true,
|
"usingComponents" : true,
|
||||||
"requiredPrivateInfos" : [ "getLocation" ],
|
"requiredPrivateInfos" : [ "getLocation" ],
|
||||||
|
|||||||
@ -1,74 +0,0 @@
|
|||||||
.search {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
background: #F9F9F9;
|
|
||||||
padding: 30rpx 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.sear_icon {
|
|
||||||
width: 30rpx;
|
|
||||||
height: 30rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.searchIpt {
|
|
||||||
width: 710rpx;
|
|
||||||
height: 54rpx;
|
|
||||||
background: #FFFFFF;
|
|
||||||
border-radius: 100rpx 100rpx 100rpx 100rpx;
|
|
||||||
margin: 0 auto;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: space-between;
|
|
||||||
padding: 0 24rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.searchIpt input {
|
|
||||||
flex: 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
.OwnerItem {
|
|
||||||
padding: 30rpx 20rpx;
|
|
||||||
border-bottom: 1rpx solid #E6E6E6;
|
|
||||||
}
|
|
||||||
|
|
||||||
.Name {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 36rpx;
|
|
||||||
color: #000000;
|
|
||||||
margin-bottom: 12rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.rows {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 26rpx;
|
|
||||||
color: #999999;
|
|
||||||
margin-bottom: 16rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.rows_tit {
|
|
||||||
min-width: 4em;
|
|
||||||
margin-right: 30rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.rows_con {
|
|
||||||
color: #222222;
|
|
||||||
}
|
|
||||||
|
|
||||||
.time {
|
|
||||||
color: #999999;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
.state1 {
|
|
||||||
color: #D5AC66;
|
|
||||||
}
|
|
||||||
|
|
||||||
.state2 {
|
|
||||||
color: #07c160;
|
|
||||||
}
|
|
||||||
|
|
||||||
.state3 {
|
|
||||||
color: red;
|
|
||||||
}
|
|
||||||
@ -1,118 +0,0 @@
|
|||||||
<template>
|
|
||||||
<view class="box">
|
|
||||||
<view class="search">
|
|
||||||
<view class="searchIpt">
|
|
||||||
<input type="text" placeholder="社区名称/业主姓名/业主手机" placeholder-style="color: #999999;font-size: 24rpx;"
|
|
||||||
:value="search" @input="search" />
|
|
||||||
<image class="sear_icon" src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/water_filter/dervice/deriveSearch.png"
|
|
||||||
mode="" />
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view class="OwnerItem" v-for="(item, index ) in list" :key="index">
|
|
||||||
<view class="Name">{{item.name}}</view>
|
|
||||||
<view class="rows">
|
|
||||||
<view class="rows_tit">申请手机</view>
|
|
||||||
<view class="rows_con">{{item.mobile}}</view>
|
|
||||||
</view>
|
|
||||||
<view class="rows">
|
|
||||||
<view class="rows_tit">入住小区</view>
|
|
||||||
<view class="rows_con">{{item.community.name}}</view>
|
|
||||||
</view>
|
|
||||||
<view class="rows">
|
|
||||||
<view class="rows_tit">申请类型</view>
|
|
||||||
<view class="rows_con" v-if="item.type == 1">业主</view>
|
|
||||||
<view class="rows_con" v-if="item.type == 2">家属</view>
|
|
||||||
<view class="rows_con" v-if="item.type == 3">租客</view>
|
|
||||||
<view class="rows_con" v-if="item.type == 4">访客</view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view class="rows">
|
|
||||||
<view class="rows_tit">楼宇号</view>
|
|
||||||
<view class="rows_con">{{item.facility.name}}</view>
|
|
||||||
</view>
|
|
||||||
<view class="rows">
|
|
||||||
<view class="rows_tit">房屋号</view>
|
|
||||||
<view class="rows_con">{{item.room.name}}</view>
|
|
||||||
</view>
|
|
||||||
<view class="rows">
|
|
||||||
<view class="rows_tit">创建时间</view>
|
|
||||||
<view class="rows_con time">2025-03-24 15:20</view>
|
|
||||||
</view>
|
|
||||||
<view class="rows">
|
|
||||||
<view class="rows_tit">申请状态</view>
|
|
||||||
<view class="rows_con state1" v-if="item.audit === 1">待审核</view>
|
|
||||||
<view class="rows_con state2" v-if="item.audit === 2">已通过</view>
|
|
||||||
<view class="rows_con state3" v-if="item.audit === 3">未通过</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import { request } from '../../../utils';
|
|
||||||
import { apiArr } from '../../../api/community';
|
|
||||||
export default {
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
search: "",
|
|
||||||
page_num: 1,
|
|
||||||
page_size: 10,
|
|
||||||
list: [],
|
|
||||||
flag: false,
|
|
||||||
}
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
search(e) {
|
|
||||||
console.log('1231313', e);
|
|
||||||
this.search = e.detail.value;
|
|
||||||
this.list = [];
|
|
||||||
this.page_num = 1;
|
|
||||||
this.flag = false;
|
|
||||||
this.init();
|
|
||||||
|
|
||||||
},
|
|
||||||
|
|
||||||
async init() {
|
|
||||||
const { page_num, page_size, list, search } = this;
|
|
||||||
let param = {
|
|
||||||
page_num,
|
|
||||||
page_size,
|
|
||||||
};
|
|
||||||
if (search !== '') {
|
|
||||||
param = {
|
|
||||||
page_num,
|
|
||||||
page_size,
|
|
||||||
name: search,
|
|
||||||
};
|
|
||||||
}
|
|
||||||
const res = await request(apiArr.ownerList, 'POST', param);
|
|
||||||
let flag = false
|
|
||||||
if (res.rows.length == page_size) {
|
|
||||||
flag = true
|
|
||||||
} else {
|
|
||||||
flag = false
|
|
||||||
}
|
|
||||||
this.list = list.concat(res.rows || []);
|
|
||||||
this.page_num = page_num + 1;
|
|
||||||
this.flag = flag;
|
|
||||||
},
|
|
||||||
},
|
|
||||||
onLoad() {
|
|
||||||
uni.setNavigationBarTitle({
|
|
||||||
title: '我的申请',
|
|
||||||
});
|
|
||||||
this.init();
|
|
||||||
},
|
|
||||||
|
|
||||||
onReachBottom() {
|
|
||||||
if(this.flag){
|
|
||||||
this.init()
|
|
||||||
}
|
|
||||||
},
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style>
|
|
||||||
@import url("./index.css");
|
|
||||||
</style>
|
|
||||||
@ -1,336 +0,0 @@
|
|||||||
image {
|
|
||||||
width: 100%;
|
|
||||||
height: 100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.swiper {
|
|
||||||
width: 710rpx;
|
|
||||||
height: 300rpx;
|
|
||||||
margin: 0 auto;
|
|
||||||
margin-top: 30rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.swiper .swiper {
|
|
||||||
width: 100%;
|
|
||||||
height: 100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.swiper image {
|
|
||||||
width: 100%;
|
|
||||||
height: 100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tabList {
|
|
||||||
display: flex;
|
|
||||||
flex-wrap: wrap;
|
|
||||||
margin-top: 40rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tabItem {
|
|
||||||
display: flex;
|
|
||||||
width: 20%;
|
|
||||||
align-items: center;
|
|
||||||
flex-direction: column;
|
|
||||||
margin-bottom: 46rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tabImg {
|
|
||||||
height: 54rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tabName {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 26rpx;
|
|
||||||
color: #222222;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tit {
|
|
||||||
font-weight: bold;
|
|
||||||
font-size: 32rpx;
|
|
||||||
color: #222222;
|
|
||||||
margin-left: 20rpx;
|
|
||||||
padding-top: 30rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.serviceTag {
|
|
||||||
display: flex;
|
|
||||||
flex-wrap: wrap;
|
|
||||||
justify-content: space-between;
|
|
||||||
padding: 0 20rpx;
|
|
||||||
box-sizing: border-box;
|
|
||||||
margin-top: 30rpx;
|
|
||||||
padding-bottom: 30rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.serviceTagItem {
|
|
||||||
width: 345rpx;
|
|
||||||
height: 150rpx;
|
|
||||||
background: linear-gradient(148deg, #FFF4EA 0%, #FFE1C5 100%);
|
|
||||||
border-radius: 30rpx 30rpx 30rpx 30rpx;
|
|
||||||
box-sizing: border-box;
|
|
||||||
padding-left: 28rpx;
|
|
||||||
padding-top: 37rpx;
|
|
||||||
position: relative;
|
|
||||||
margin-bottom: 20rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item2 {
|
|
||||||
background: linear-gradient(167deg, #FFF3F3 0%, #FFD5D5 100%);
|
|
||||||
}
|
|
||||||
|
|
||||||
.item3 {
|
|
||||||
background: linear-gradient(145deg, #FFFDF5 0%, #FFF7D0 100%);
|
|
||||||
}
|
|
||||||
|
|
||||||
.item4 {
|
|
||||||
background: linear-gradient(143deg, #F8F8F8 0%, #EAEAEA 100%);
|
|
||||||
}
|
|
||||||
|
|
||||||
.serviceTagItem_name {
|
|
||||||
font-weight: bold;
|
|
||||||
font-size: 28rpx;
|
|
||||||
color: #000000;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
.serviceTagItem_img1 {
|
|
||||||
width: 158rpx;
|
|
||||||
height: 131rpx;
|
|
||||||
position: absolute;
|
|
||||||
bottom: 0rpx;
|
|
||||||
right: 4rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.serviceTagItem_img2 {
|
|
||||||
width: 154rpx;
|
|
||||||
height: 130.6rpx;
|
|
||||||
position: absolute;
|
|
||||||
bottom: 0rpx;
|
|
||||||
right: 0rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.serviceTagItem_img3 {
|
|
||||||
height: 140rpx;
|
|
||||||
width: 178rpx;
|
|
||||||
position: absolute;
|
|
||||||
bottom: 0rpx;
|
|
||||||
right: 0rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.serviceTagItem_img4 {
|
|
||||||
width: 204rpx;
|
|
||||||
height: 68rpx;
|
|
||||||
position: absolute;
|
|
||||||
bottom: 10rpx;
|
|
||||||
right: 0rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tabs {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
margin-left: 20rpx;
|
|
||||||
padding-top: 30rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tabs .tab {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 28rpx;
|
|
||||||
color: #555555;
|
|
||||||
margin-right: 70rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tabs .active {
|
|
||||||
font-weight: bold;
|
|
||||||
font-size: 32rpx;
|
|
||||||
position: relative;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tabs .active::after {
|
|
||||||
content: '';
|
|
||||||
width: 127rpx;
|
|
||||||
height: 10rpx;
|
|
||||||
background: #FF512A;
|
|
||||||
position: absolute;
|
|
||||||
left: 50%;
|
|
||||||
bottom: -10rpx;
|
|
||||||
transform: translateX(-50%);
|
|
||||||
}
|
|
||||||
|
|
||||||
.tabs .active::before {
|
|
||||||
width: 127rpx;
|
|
||||||
height: 10rpx;
|
|
||||||
filter: blur(6.599999904632568rpx);
|
|
||||||
background: #FF5D73;
|
|
||||||
position: absolute;
|
|
||||||
left: 50%;
|
|
||||||
bottom: -10rpx;
|
|
||||||
transform: translateX(-50%);
|
|
||||||
}
|
|
||||||
|
|
||||||
.list {
|
|
||||||
margin-top: 36rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item_tit {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: space-between;
|
|
||||||
margin: 0 20rpx;
|
|
||||||
margin-bottom: 32rpx;
|
|
||||||
margin-top: 30rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item_tit_left {
|
|
||||||
font-weight: bold;
|
|
||||||
font-size: 28rpx;
|
|
||||||
color: #000000;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item_tit_right {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #D5AC66;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
.item_tit_right image {
|
|
||||||
width: 12rpx;
|
|
||||||
height: 22rpx;
|
|
||||||
margin-left: 8rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.scrollView {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
flex-wrap: nowrap;
|
|
||||||
white-space: nowrap;
|
|
||||||
width: 100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item_goodsItem {
|
|
||||||
display: inline-block;
|
|
||||||
width: 223rpx;
|
|
||||||
margin-right: 10rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item_goodsItem_tit {
|
|
||||||
width: 100%;
|
|
||||||
height: 161rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item_goodsItem_name {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 26rpx;
|
|
||||||
color: #222222;
|
|
||||||
margin-top: 20rpx;
|
|
||||||
margin-left: 10rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item_goodsItem_msg {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 22rpx;
|
|
||||||
color: #FF512A;
|
|
||||||
display: flex;
|
|
||||||
align-items: flex-end;
|
|
||||||
margin-top: 6rpx;
|
|
||||||
margin-left: 13rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item_goodsItem_msg view {
|
|
||||||
font-weight: 500;
|
|
||||||
font-size: 36rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item_goodsItem_msg text {
|
|
||||||
font-size: 22rpx;
|
|
||||||
color: #FF512A;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item_goodsList {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: space-between;
|
|
||||||
padding: 0 20rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.list_item {
|
|
||||||
padding-bottom: 32rpx;
|
|
||||||
border-bottom: 1rpx solid #E6E6E6;
|
|
||||||
}
|
|
||||||
|
|
||||||
.no_border {
|
|
||||||
border-bottom: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.merchantList {
|
|
||||||
margin: 0 20rpx;
|
|
||||||
margin-top: 30rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.merchantItem {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: space-between;
|
|
||||||
padding: 30rpx 0;
|
|
||||||
border-bottom: 1rpx solid #E6E6E6;
|
|
||||||
box-sizing: border-box;
|
|
||||||
}
|
|
||||||
|
|
||||||
.merchantItem_right {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 26rpx;
|
|
||||||
color: #FFFFFF;
|
|
||||||
width: 150rpx;
|
|
||||||
height: 50rpx;
|
|
||||||
background: #D5AC66;
|
|
||||||
border-radius: 100rpx 100rpx 100rpx 100rpx;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.merchantItem_left {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.merchantItem_left_img {
|
|
||||||
width: 180rpx;
|
|
||||||
height: 180rpx;
|
|
||||||
border-radius: 20rpx;
|
|
||||||
overflow: hidden;
|
|
||||||
margin-right: 20rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.merchantItem_left_msg_tit {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 32rpx;
|
|
||||||
color: #000000;
|
|
||||||
}
|
|
||||||
|
|
||||||
.merchantItem_left_msg_add {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #999999;
|
|
||||||
margin-top: 14rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.merchantItem_left_msg_msg {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 22rpx;
|
|
||||||
color: #FF512A;
|
|
||||||
background: #FFF0ED;
|
|
||||||
padding: 2rpx;
|
|
||||||
margin-top: 16rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.merchantItem_left_msg_tag {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #999999;
|
|
||||||
margin-top: 18rpx;
|
|
||||||
}
|
|
||||||
@ -1,337 +0,0 @@
|
|||||||
<template>
|
|
||||||
<view class="headlth">
|
|
||||||
<view class="swiper">
|
|
||||||
<swiper>
|
|
||||||
<swiper-item>
|
|
||||||
<image src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/doorToDoor/door_img.png" mode="" />
|
|
||||||
</swiper-item>
|
|
||||||
</swiper>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view class="tabList">
|
|
||||||
<view class="tabItem" v-for="(item, index ) in cateList" :key="index" @click="jump(item.cate_id)">
|
|
||||||
<view class="tabImg">
|
|
||||||
<image :src="item.photo" mode="heightFix" />
|
|
||||||
</view>
|
|
||||||
<view class="tabName">
|
|
||||||
{{item.cate_name}}
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view class="gray"></view>
|
|
||||||
|
|
||||||
<view class="tit">
|
|
||||||
热门服务
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view class="serviceTag">
|
|
||||||
<view class="serviceTagItem" @click="jump">
|
|
||||||
<view class="serviceTagItem_name">家政保洁</view>
|
|
||||||
<view class="serviceTagItem_img1">
|
|
||||||
<image src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/doorToDoor/hot1.png" mode="widthFix" />
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<view class="serviceTagItem item2" @click="jump">
|
|
||||||
<view class="serviceTagItem_name">专业保姆</view>
|
|
||||||
<view class="serviceTagItem_img2">
|
|
||||||
<image src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/doorToDoor/hot2.png" mode="widthFix" />
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<view class="serviceTagItem item3" @click="jump">
|
|
||||||
<view class="serviceTagItem_name">家电维修</view>
|
|
||||||
<view class="serviceTagItem_img3">
|
|
||||||
<image src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/doorToDoor/hot3.png" mode="widthFix" />
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<view class="serviceTagItem item4" @click="jump">
|
|
||||||
<view class="serviceTagItem_name">搬家拉货</view>
|
|
||||||
<view class="serviceTagItem_img4">
|
|
||||||
<image src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/doorToDoor/hot4.png" mode="widthFix" />
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view class="gray"></view>
|
|
||||||
|
|
||||||
<view class="tabs">
|
|
||||||
<view :class="['tab', tabIndex == '0' ? 'active' : '']" @click="changeTab" data-tab="0">服务列表</view>
|
|
||||||
<view :class="['tab', tabIndex == '1' ? 'active' : '']" @click="changeTab" data-tab="1">商户列表</view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view class="list" v-if="tabIndex == 0">
|
|
||||||
<view :class="['list_item', index === serverList.length - 1 && 'no_border']" v-for="(item, index) in serverList" :key="index">
|
|
||||||
<view class="item_tit">
|
|
||||||
<view class="item_tit_left">{{item.cate_name}}</view>
|
|
||||||
<view class="item_tit_right" @click="jump(item.cate_id)">
|
|
||||||
更多
|
|
||||||
<image src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/water_filter/filter_more.png" mode="" />
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<view class="item_goodsList">
|
|
||||||
<scroll-view scroll-x="true" class="scrollView">
|
|
||||||
<view class="item_goodsItem" v-for="(items, index) in item.appoints" :key="index" @click.stop="headerItemClick" :data-id="items.appoint_id">
|
|
||||||
<view class="item_goodsItem_tit">
|
|
||||||
<image :src="items.photo" mode="aspectFill" />
|
|
||||||
</view>
|
|
||||||
<view class="item_goodsItem_name">{{items.title}}</view>
|
|
||||||
<view class="item_goodsItem_msg">
|
|
||||||
¥
|
|
||||||
<view>{{items.price}}</view>
|
|
||||||
<text>/{{items.unit}}</text>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</scroll-view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view class="merchantList" v-if="tabIndex == 1">
|
|
||||||
<view class="merchantItem" v-for="(item, index) in goodsList" :key="index" @click="headerShopClick(item.shop_id)">
|
|
||||||
<view class="merchantItem_left">
|
|
||||||
<view class="merchantItem_left_img">
|
|
||||||
<image :src="item.photo" mode="widthFix" />
|
|
||||||
</view>
|
|
||||||
<view class="merchantItem_left_msg">
|
|
||||||
<view class="merchantItem_left_msg_tit">{{item.shop_name}}</view>
|
|
||||||
<view class="merchantItem_left_msg_add">{{item.addr}}</view>
|
|
||||||
<view class="merchantItem_left_msg_msg">中国领先的高科技医疗设备研...</view>
|
|
||||||
<view class="merchantItem_left_msg_tag">{{item.tags}}</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<view class="merchantItem_right" @click.stop="call(item.tel)">
|
|
||||||
电话询价
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<nav-footer />
|
|
||||||
|
|
||||||
</view>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import { NavgateTo, picUrl, request } from '../../../utils/index';
|
|
||||||
import { apiArr } from '../../../api/communityService';
|
|
||||||
|
|
||||||
export default {
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
tabList:[{
|
|
||||||
name:"服务中心",
|
|
||||||
img:'https://wechat-img-file.oss-cn-beijing.aliyuncs.com/doorToDoor/door_icon1.png',
|
|
||||||
url:"../ServiceMore/ServiceMore",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name:"家政保洁",
|
|
||||||
img:'https://wechat-img-file.oss-cn-beijing.aliyuncs.com/doorToDoor/door_icon2.png',
|
|
||||||
url:"../ServiceMore/ServiceMore",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name:"衣物洗护",
|
|
||||||
img:'https://wechat-img-file.oss-cn-beijing.aliyuncs.com/doorToDoor/door_icon3.png',
|
|
||||||
url:"../ServiceMore/ServiceMore",
|
|
||||||
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name:"家电维修",
|
|
||||||
img:'https://wechat-img-file.oss-cn-beijing.aliyuncs.com/doorToDoor/door_icon4.png',
|
|
||||||
url:"../ServiceMore/ServiceMore",
|
|
||||||
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name:"跑腿服务",
|
|
||||||
img:'https://wechat-img-file.oss-cn-beijing.aliyuncs.com/doorToDoor/door_icon5.png',
|
|
||||||
url:"../ServiceMore/ServiceMore",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name:"养车用车",
|
|
||||||
img:'https://wechat-img-file.oss-cn-beijing.aliyuncs.com/doorToDoor/door_icon6.png',
|
|
||||||
url:"../ServiceMore/ServiceMore",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name:"保姆月嫂",
|
|
||||||
img:'https://wechat-img-file.oss-cn-beijing.aliyuncs.com/doorToDoor/door_icon7.png',
|
|
||||||
url:"../ServiceMore/ServiceMore",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name:"家电清洗",
|
|
||||||
img:'https://wechat-img-file.oss-cn-beijing.aliyuncs.com/doorToDoor/door_icon8.png',
|
|
||||||
url:"../ServiceMore/ServiceMore",
|
|
||||||
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name:"搬家拉货",
|
|
||||||
img:'https://wechat-img-file.oss-cn-beijing.aliyuncs.com/doorToDoor/door_icon9.png',
|
|
||||||
url:"../ServiceMore/ServiceMore",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name:"家装维修",
|
|
||||||
img:'https://wechat-img-file.oss-cn-beijing.aliyuncs.com/doorToDoor/door_icon10.png',
|
|
||||||
url:"../ServiceMore/ServiceMore",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
tabIndex:"0",
|
|
||||||
page_num:1,
|
|
||||||
page_size:10,
|
|
||||||
flag:false,
|
|
||||||
flag2:false,
|
|
||||||
serverList:[],//服务列表
|
|
||||||
cateList:[],
|
|
||||||
flag:false,
|
|
||||||
HotCate:'',
|
|
||||||
|
|
||||||
goodsList:[],//商家列表
|
|
||||||
}
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
async getCateList() {
|
|
||||||
const res = await request(apiArr.getCateList, 'POST', {
|
|
||||||
page_num: this.page_num,
|
|
||||||
page_size: this.page_size,
|
|
||||||
area: uni.getStorageSync('city')
|
|
||||||
})
|
|
||||||
let flag = false
|
|
||||||
console.log(res, 'res');
|
|
||||||
if (res.rows && res.rows.length == this.page_size) {
|
|
||||||
flag = true
|
|
||||||
} else {
|
|
||||||
flag = false
|
|
||||||
}
|
|
||||||
res.rows && res.rows.forEach(item => {
|
|
||||||
item.photo = item.photo ? picUrl + item.photo : '';
|
|
||||||
item.appoints.forEach(items => {
|
|
||||||
items.photo = picUrl + items.photo
|
|
||||||
})
|
|
||||||
})
|
|
||||||
console.log(res, 'reresss');
|
|
||||||
this.serverList = this.serverList.concat(res.rows || []);
|
|
||||||
this.cateList = res.rows || [];
|
|
||||||
this.flag = flag;
|
|
||||||
this.page_num = this.page_num + 1;
|
|
||||||
},
|
|
||||||
|
|
||||||
// 热门服务模块, 目前改接口并未使用,热门模块写死展示
|
|
||||||
async getHotCate(){
|
|
||||||
const res = await request(apiArr.getHotCate, 'POST', {});
|
|
||||||
console.log('getHotCategetHotCate', res);
|
|
||||||
this.HotCate = res;
|
|
||||||
},
|
|
||||||
|
|
||||||
// 获取同城服务列表
|
|
||||||
async getAllList(){
|
|
||||||
const res = await request(apiArr.getAllList, 'POST', {
|
|
||||||
cate_id: 0,
|
|
||||||
page_num: 1,
|
|
||||||
page_size: 50,
|
|
||||||
area: uni.getStorageSync('city')
|
|
||||||
})
|
|
||||||
|
|
||||||
let flag = false
|
|
||||||
if(res.rows && res.rows.length == this.page_size){
|
|
||||||
flag = true
|
|
||||||
}else{
|
|
||||||
flag = false
|
|
||||||
}
|
|
||||||
if(res.rows){
|
|
||||||
res.rows.forEach(item=>{
|
|
||||||
item.photo = picUrl + item.photo
|
|
||||||
})
|
|
||||||
}
|
|
||||||
this.tabList = res.rows;
|
|
||||||
this.flag = flag;
|
|
||||||
this.page_num = this.page_num + 1;
|
|
||||||
},
|
|
||||||
|
|
||||||
// 获取商家列表
|
|
||||||
async getShopList(){
|
|
||||||
const res = await request(apiArr.getShopList, 'POST', {
|
|
||||||
page_num: this.page_num,
|
|
||||||
page_size: this.page_size
|
|
||||||
});
|
|
||||||
if(res?.list){
|
|
||||||
let flag2 = false
|
|
||||||
if(res.list.length == this.page_size){
|
|
||||||
flag2 = true
|
|
||||||
}else{
|
|
||||||
flag2 = false
|
|
||||||
}
|
|
||||||
res.list.forEach(item=>{
|
|
||||||
item.photo = picUrl + item.photo
|
|
||||||
});
|
|
||||||
this.goodsList = this.goodsList.concat(res.list || []);
|
|
||||||
this.flag2 = flag2;
|
|
||||||
this.page_num = this.page_num + 1;
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
jump(id){
|
|
||||||
NavgateTo(`/packages/communityService/serviceMore/index?id=${id}`, { isLogin: false });
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
// tab 切换
|
|
||||||
changeTab(e){
|
|
||||||
const { tab } = e.currentTarget.dataset;
|
|
||||||
this.tabIndex = tab;
|
|
||||||
this.page_num = 1;
|
|
||||||
this.flag = false;
|
|
||||||
this.flag2 = false;
|
|
||||||
this.serverList = [];
|
|
||||||
this.goodsList = [];
|
|
||||||
|
|
||||||
if(tab == 0){
|
|
||||||
this.getCateList()
|
|
||||||
}else{
|
|
||||||
this.getShopList()
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
headerItemClick(e) {
|
|
||||||
const { id } = e.currentTarget.dataset;
|
|
||||||
NavgateTo(`/packages/communityService/reservation/index?id=${id}`, {isLogin: false });
|
|
||||||
},
|
|
||||||
|
|
||||||
headerShopClick(id){
|
|
||||||
NavgateTo(`/packages/communityService/shopDetail/index?id=${id}`, { isLogin: false });
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
call(e){
|
|
||||||
console.log('11111', e);
|
|
||||||
uni.makePhoneCall({
|
|
||||||
phoneNumber: e,
|
|
||||||
fail(err) {
|
|
||||||
console.log('取消拨打', err)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
},
|
|
||||||
onLoad() {
|
|
||||||
this.getCateList(); // 获取同城服务分类列表
|
|
||||||
this.getAllList(); // 获取同城服务列表
|
|
||||||
this.getHotCate(); // 热门服务模块
|
|
||||||
this.getShopList(); // 获取商家列表
|
|
||||||
},
|
|
||||||
onReachBottom() {
|
|
||||||
if(this.tabIndex == 0){
|
|
||||||
if(this.flag){
|
|
||||||
this.getCateList()
|
|
||||||
}
|
|
||||||
}else{
|
|
||||||
if(this.flag2){
|
|
||||||
this.getShopList()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style>
|
|
||||||
@import url("./index.css");
|
|
||||||
</style>
|
|
||||||
@ -1,110 +0,0 @@
|
|||||||
image {
|
|
||||||
width: 100%;
|
|
||||||
height: 100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.box {
|
|
||||||
padding-bottom: 160rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.reservation_img {
|
|
||||||
width: 750rpx;
|
|
||||||
height: 502rpx;
|
|
||||||
overflow: hidden;
|
|
||||||
}
|
|
||||||
|
|
||||||
.reservation_img image {
|
|
||||||
width: 100%;
|
|
||||||
height: 100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.Tit {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 40rpx;
|
|
||||||
color: #000000;
|
|
||||||
margin-left: 20rpx;
|
|
||||||
margin-top: 40rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.money {
|
|
||||||
display: flex;
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 36rpx;
|
|
||||||
color: #FF512A;
|
|
||||||
align-items: center;
|
|
||||||
margin-top: 20rpx;
|
|
||||||
margin-left: 20rpx;
|
|
||||||
margin-bottom: 10rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.money view {
|
|
||||||
font-size: 60rpx;
|
|
||||||
margin-top: -19rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.money text {
|
|
||||||
font-size: 24rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.row {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: space-between;
|
|
||||||
margin: 0 40rpx;
|
|
||||||
padding-top: 30rpx;
|
|
||||||
padding-bottom: 16rpx;
|
|
||||||
border-bottom: 1rpx solid #E6E6E6;
|
|
||||||
}
|
|
||||||
|
|
||||||
.row_tit {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #999999;
|
|
||||||
}
|
|
||||||
|
|
||||||
.row_con {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #222222;
|
|
||||||
}
|
|
||||||
|
|
||||||
.none {
|
|
||||||
border: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.gray {
|
|
||||||
margin-top: 14rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.Tit2 {
|
|
||||||
font-weight: bold;
|
|
||||||
font-size: 32rpx;
|
|
||||||
color: #222222;
|
|
||||||
margin-left: 20rpx;
|
|
||||||
margin-top: 30rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.server {
|
|
||||||
margin: 0 40rpx;
|
|
||||||
margin-top: 30rpx;
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #222222;
|
|
||||||
}
|
|
||||||
|
|
||||||
.btn {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 36rpx;
|
|
||||||
color: #FFFFFF;
|
|
||||||
width: 650rpx;
|
|
||||||
height: 80rpx;
|
|
||||||
background: #FF512A;
|
|
||||||
border-radius: 100rpx 100rpx 100rpx 100rpx;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
position: fixed;
|
|
||||||
left: 50rpx;
|
|
||||||
right: 50rpx;
|
|
||||||
bottom: 50rpx;
|
|
||||||
}
|
|
||||||
@ -1,115 +0,0 @@
|
|||||||
<template>
|
|
||||||
<view class="box">
|
|
||||||
<view class="reservation_img">
|
|
||||||
<image :src="info.photo" mode="" />
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view class="Tit">{{info.title}}</view>
|
|
||||||
<view class="money">
|
|
||||||
¥
|
|
||||||
<view>{{info.price}}</view>
|
|
||||||
<text>/ {{info.unit}}</text>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view class="row">
|
|
||||||
<view class="row_tit">服务类别</view>
|
|
||||||
<view class="row_con">{{info.type_name}}</view>
|
|
||||||
</view>
|
|
||||||
<view class="row">
|
|
||||||
<view class="row_tit">营业时间</view>
|
|
||||||
<view class="row_con">{{info.biz_time}}</view>
|
|
||||||
</view>
|
|
||||||
<view class="row none">
|
|
||||||
<view class="row_tit">联系人</view>
|
|
||||||
<view class="row_con">{{info.user_name}}</view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<view class="gray"></view>
|
|
||||||
|
|
||||||
<view class="Tit2">商家信息</view>
|
|
||||||
<view class="row">
|
|
||||||
<view class="row_tit">提供商家</view>
|
|
||||||
<view class="row_con">{{info.shop_name}}</view>
|
|
||||||
</view>
|
|
||||||
<view class="row">
|
|
||||||
<view class="row_tit">联系电话</view>
|
|
||||||
<view class="row_con" @click="call">{{info.user_mobile}}</view>
|
|
||||||
</view>
|
|
||||||
<view class="row none">
|
|
||||||
<view class="row_tit">商家地址</view>
|
|
||||||
<view class="row_con">{{info.shop_addr}}</view>
|
|
||||||
</view>
|
|
||||||
<view class="gray"></view>
|
|
||||||
<view class="Tit2">服务详情</view>
|
|
||||||
<view class="server">
|
|
||||||
{{info.intro}}
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view class="btn" @click="reservation">
|
|
||||||
立即预约
|
|
||||||
</view>
|
|
||||||
|
|
||||||
</view>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import {
|
|
||||||
apiArr
|
|
||||||
} from '../../../api/communityService';
|
|
||||||
import {
|
|
||||||
NavgateTo,
|
|
||||||
picUrl,
|
|
||||||
request
|
|
||||||
} from '../../../utils';
|
|
||||||
|
|
||||||
export default {
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
id: "",
|
|
||||||
info: "",
|
|
||||||
}
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
|
|
||||||
async init(id) {
|
|
||||||
const res = await request(apiArr.serverInfo, 'POST', {
|
|
||||||
appoint_id: Number(id)
|
|
||||||
});
|
|
||||||
const newRes = {
|
|
||||||
...res,
|
|
||||||
photo: picUrl + res.photo,
|
|
||||||
}
|
|
||||||
|
|
||||||
uni.setNavigationBarTitle({
|
|
||||||
title: res.title,
|
|
||||||
})
|
|
||||||
this.info = newRes;
|
|
||||||
},
|
|
||||||
|
|
||||||
// 拨打电话
|
|
||||||
call() {
|
|
||||||
let that = this
|
|
||||||
uni.makePhoneCall({
|
|
||||||
phoneNumber: this.info.user_mobile,
|
|
||||||
fail(err) {
|
|
||||||
console.log('取消拨打', err)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
reservation() {
|
|
||||||
NavgateTo(`/packages/communityService/reservationApply/index?id=${this.id}`, {isLogin: false });
|
|
||||||
},
|
|
||||||
},
|
|
||||||
onLoad(options) {
|
|
||||||
this.id = options.id;
|
|
||||||
this.init(options.id);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style>
|
|
||||||
@import url("./index.css");
|
|
||||||
</style>
|
|
||||||
@ -1,172 +0,0 @@
|
|||||||
image {
|
|
||||||
width: 100%;
|
|
||||||
height: 100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tit {
|
|
||||||
font-weight: bold;
|
|
||||||
font-size: 28rpx;
|
|
||||||
color: #222222;
|
|
||||||
margin-left: 20rpx;
|
|
||||||
margin-top: 30rpx;
|
|
||||||
margin-bottom: 10rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.row {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: space-between;
|
|
||||||
margin: 0 50rpx;
|
|
||||||
height: 90rpx;
|
|
||||||
border-bottom: 1rpx solid #E6E6E6;
|
|
||||||
}
|
|
||||||
|
|
||||||
.row_tit {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 26rpx;
|
|
||||||
color: #999999;
|
|
||||||
}
|
|
||||||
|
|
||||||
.row_tit image {
|
|
||||||
width: 30rpx;
|
|
||||||
height: 30rpx;
|
|
||||||
margin-right: 20rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.row_con {
|
|
||||||
text-align: right;
|
|
||||||
flex: 1;
|
|
||||||
display: flex;
|
|
||||||
align-items: flex-end;
|
|
||||||
justify-content: flex-end;
|
|
||||||
}
|
|
||||||
|
|
||||||
.row_con image {
|
|
||||||
height: 26rpx;
|
|
||||||
width: 14rpx;
|
|
||||||
margin-left: 20rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.none {
|
|
||||||
border-bottom: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.row_tit2 {
|
|
||||||
width: 100%;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.row_tit2 image {
|
|
||||||
width: 30rpx;
|
|
||||||
height: 30rpx;
|
|
||||||
margin-right: 20rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.row_tit2 input {
|
|
||||||
flex: 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
.doorToDoor {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
margin-left: 54rpx;
|
|
||||||
margin-right: 54rpx;
|
|
||||||
justify-content: space-between;
|
|
||||||
padding: 30rpx 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.doorToDoor_tit {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 26rpx;
|
|
||||||
color: #222222;
|
|
||||||
}
|
|
||||||
|
|
||||||
.doorToDoor_con {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.selectItem {
|
|
||||||
display: flex;
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 26rpx;
|
|
||||||
color: #222222;
|
|
||||||
margin-left: 40rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.cir {
|
|
||||||
width: 30rpx;
|
|
||||||
height: 30rpx;
|
|
||||||
border-radius: 50%;
|
|
||||||
border: 1rpx solid #555555;
|
|
||||||
margin-right: 16rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.active {
|
|
||||||
background-color: #ff512a;
|
|
||||||
border: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.agree {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
margin-left: 54rpx;
|
|
||||||
padding: 30rpx 0;
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 26rpx;
|
|
||||||
color: #FF512A;
|
|
||||||
}
|
|
||||||
|
|
||||||
.btn {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 36rpx;
|
|
||||||
color: #FFFFFF;
|
|
||||||
width: 650rpx;
|
|
||||||
height: 80rpx;
|
|
||||||
background: #FF512A;
|
|
||||||
border-radius: 100rpx 100rpx 100rpx 100rpx;
|
|
||||||
margin: 0 auto;
|
|
||||||
margin-top: 30rpx;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.popBox {
|
|
||||||
height: 60vh;
|
|
||||||
width: 80vw;
|
|
||||||
padding: 30rpx;
|
|
||||||
position: relative;
|
|
||||||
top: 0;
|
|
||||||
left: 0;
|
|
||||||
overflow: hidden;
|
|
||||||
overflow-y: auto;
|
|
||||||
padding-bottom: 100rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tit2 {
|
|
||||||
font-weight: bold;
|
|
||||||
font-size: 28rpx;
|
|
||||||
color: #222222;
|
|
||||||
text-align: center;
|
|
||||||
margin-bottom: 20rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.know {
|
|
||||||
width: 400rpx;
|
|
||||||
height: 60rpx;
|
|
||||||
border-radius: 20rpx;
|
|
||||||
background-color: #FF512A;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
color: #fff;
|
|
||||||
font-size: 32rpx;
|
|
||||||
position: absolute;
|
|
||||||
left: 50%;
|
|
||||||
bottom: 20rpx;
|
|
||||||
transform: translateX(-50%);
|
|
||||||
}
|
|
||||||
@ -1,392 +0,0 @@
|
|||||||
<template>
|
|
||||||
<view class="container">
|
|
||||||
<view class="box">
|
|
||||||
<view class="tit">请填写预约信息</view>
|
|
||||||
<view class="row none" v-if="isreal == 1">
|
|
||||||
<view class="row_tit">
|
|
||||||
<image src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/doorToDoor/reser_icon1.png" mode="" />
|
|
||||||
请选择上门时间
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view class="row_con" @click="changeShow">
|
|
||||||
{{time}}
|
|
||||||
<image src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/water_filter/filter_more.png" mode="" />
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<view class="row none" v-if="isreal == 2">
|
|
||||||
<view class="row_tit">
|
|
||||||
<image src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/doorToDoor/reser_icon2.png" mode="" />
|
|
||||||
请选择服务时间
|
|
||||||
</view>
|
|
||||||
<view class="row_con" @click="changeShow2">
|
|
||||||
{{serTime}}
|
|
||||||
<image src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/water_filter/filter_more.png" mode="" />
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<view class="gray"></view>
|
|
||||||
<view class="row">
|
|
||||||
<view class="row_tit">
|
|
||||||
<image src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/doorToDoor/reser_icon3.png" mode="" />
|
|
||||||
联系人姓名
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view class="row_con">
|
|
||||||
<input
|
|
||||||
type="text"
|
|
||||||
placeholder="请填写联系人姓名"
|
|
||||||
placeholder-style="font-size: 26rpx;color: #999999;"
|
|
||||||
:value="name"
|
|
||||||
data-name='name'
|
|
||||||
@input="headerInputClick"
|
|
||||||
/>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
</view>
|
|
||||||
<view class="row">
|
|
||||||
<view class="row_tit">
|
|
||||||
<image src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/doorToDoor/reser_icon4.png" mode="" />
|
|
||||||
联系人电话
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view class="row_con">
|
|
||||||
<input
|
|
||||||
type="number"
|
|
||||||
maxlength="11"
|
|
||||||
placeholder="请填写联系人电话"
|
|
||||||
placeholder-style="font-size: 26rpx;color: #999999;"
|
|
||||||
:value="phone"
|
|
||||||
data-name='phone'
|
|
||||||
@input="headerInputClick"
|
|
||||||
/>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<view class="row">
|
|
||||||
<view class="row_tit">
|
|
||||||
<image src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/doorToDoor/reser_icon5.png" mode="" />
|
|
||||||
请选择服务地址
|
|
||||||
</view>
|
|
||||||
<view class="row_con" @click="changeArea">
|
|
||||||
|
|
||||||
{{citys}}
|
|
||||||
<image src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/water_filter/filter_more.png" mode="" />
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<view class="row none">
|
|
||||||
<view class="row_tit">
|
|
||||||
<image src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/doorToDoor/reser_icon5.png" mode="" />
|
|
||||||
详细地址
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view class="row_con">
|
|
||||||
<input
|
|
||||||
type="text"
|
|
||||||
placeholder="请填写详细地址"
|
|
||||||
placeholder-style="font-size: 26rpx;color: #999999;"
|
|
||||||
:value="add"
|
|
||||||
data-name='add'
|
|
||||||
@input="headerInputClick"
|
|
||||||
/>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<view class="gray"></view>
|
|
||||||
<view class="doorToDoor">
|
|
||||||
<view class="doorToDoor_tit">是否上门服务</view>
|
|
||||||
<view class="selectItem" @click="changeCir(1)">
|
|
||||||
<view :class="['cir', isreal == 1 ? 'active' : '']"></view>
|
|
||||||
是
|
|
||||||
</view>
|
|
||||||
<view class="selectItem" @click="changeCir(2)">
|
|
||||||
<view :class="['cir', isreal == 2 ? 'active' : '']"></view>
|
|
||||||
否
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<view class="gray"></view>
|
|
||||||
<view class="row none">
|
|
||||||
<view class="row_tit2">
|
|
||||||
<image src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/doorToDoor/reser_icon6.png" mode="" />
|
|
||||||
<input
|
|
||||||
type="text"
|
|
||||||
placeholder="给商家捎句话"
|
|
||||||
placeholder-style="font-size: 26rpx;color: #999999;"
|
|
||||||
:value="msg"
|
|
||||||
data-name='msg'
|
|
||||||
@input="headerInputClick"
|
|
||||||
/>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<view class="gray"></view>
|
|
||||||
|
|
||||||
<view class="agree">
|
|
||||||
<view :class="['cir', agree ? 'active' : '']" @click="changeAgree"></view>
|
|
||||||
|
|
||||||
<view @click="changeShow3">
|
|
||||||
我已阅读并同意服务合同中的内容
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view class="btn" @click="submit">提交申请 </view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<u-datetime-picker
|
|
||||||
:show="show"
|
|
||||||
mode="datetime"
|
|
||||||
:closeOnClickOverlay="true"
|
|
||||||
:minDate="minDate"
|
|
||||||
:formatter="formatter"
|
|
||||||
@confirm="onInput"
|
|
||||||
@cancel="onClose"
|
|
||||||
@close="onClose"
|
|
||||||
/>
|
|
||||||
|
|
||||||
|
|
||||||
<areaPopup :show="show2" @selectArea='headerAreaClick' @close='onClose' />
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<u-popup :show="show3" mode="center" @close="onClose" round="20rpx" closeOnClickOverlay>
|
|
||||||
<view class="pop_body">
|
|
||||||
<view class="popBox">
|
|
||||||
<view class="tit2">服务声明</view>
|
|
||||||
乙方指定的家政服务人员须遵守以下行为准则:
|
|
||||||
1)遵守国家各项法律、法规和社会公德;执行《公民道德建设实施纲要》,自尊自强,爱岗敬业;遵守企业各项规章制度,维护经营者和甲方的合法权益。
|
|
||||||
2)遵守职业道德,尊重甲方生活习俗,主动适应甲方,视甲方如亲人,不虐待所照看的老、幼、病、残人员;不泄露甲方隐私;不参与甲方家庭及邻里的矛盾纠纷,不传闲话,以免激化矛盾;不向甲方借钱或索要财物;在离开甲方家庭时,要主动打开自己的包裹让其检查,以示尊重。
|
|
||||||
3)遵守合同条款,不无故违约,不无故要求换户或不辞而别。如与甲方发生矛盾,出现甲方侵犯家政服务人员合法权益,或变更服务地址、服务工种等,无论何种原因家政服务人员均应先行告知经营者,不要擅自处理。
|
|
||||||
4)努力学习服务技能,完成经营者和甲方安排的工作任务。对不会使用的器具,未经经营者指导和甲方允许不要使用。未经甲方同意不使用其通讯工具和电脑等设备。
|
|
||||||
5)保证自身和甲方的安全。不要与异性成、青年人同居一室;不带亲朋好友在甲方家中停留或食宿;不擅自外出或夜不归宿,如有特殊情况不能按时返回,要征得甲方同意;要注意防火、防盗。
|
|
||||||
第九条 服务人员仪态仪表 乙方指定的家政服务人员须遵守以下仪态仪表要求: (1)讲究个人卫生,着装整洁大方,不能过于随意,不穿紧身衣裤或过于暴露的服装。 (2)佩戴饰物要适当,不浓妆艳抹,不留长指甲和涂指甲油。
|
|
||||||
3)言谈举止大方得体,与甲方交流时要正视对方,不要左顾右盼,不能双臂交叉或双手插在兜里。
|
|
||||||
</view>
|
|
||||||
<view class="know" @click="onClose">我已知晓</view>
|
|
||||||
</view>
|
|
||||||
</u-popup>
|
|
||||||
|
|
||||||
</view>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import {
|
|
||||||
apiArr
|
|
||||||
} from '../../../api/communityService';
|
|
||||||
import {
|
|
||||||
request,
|
|
||||||
isPhone
|
|
||||||
} from '../../../utils';
|
|
||||||
|
|
||||||
|
|
||||||
export default {
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
time: "", //上门时间
|
|
||||||
serTime: "", //服务时间
|
|
||||||
name: "", //姓名
|
|
||||||
phone: "", //电话
|
|
||||||
citys: "", //服务地址
|
|
||||||
add: "", //详细地址
|
|
||||||
isreal: 1, //是否上门
|
|
||||||
|
|
||||||
msg: "", //信息
|
|
||||||
id: "",
|
|
||||||
agree: false, //是否阅读同意
|
|
||||||
type: "1", //1上门时间 2服务时间
|
|
||||||
info: "",
|
|
||||||
|
|
||||||
GoodsMsg: "", //商户信息
|
|
||||||
orderMsg: "",
|
|
||||||
|
|
||||||
show: false,
|
|
||||||
show2: false,
|
|
||||||
show3: false,
|
|
||||||
minDate: new Date().getTime(),
|
|
||||||
formatter(type, value) {
|
|
||||||
if (type === 'year') {
|
|
||||||
return `${value}年`;
|
|
||||||
}
|
|
||||||
if (type === 'month') {
|
|
||||||
return `${value}月`;
|
|
||||||
}
|
|
||||||
if (type === 'day') {
|
|
||||||
return `${value}日`;
|
|
||||||
}
|
|
||||||
return value;
|
|
||||||
},
|
|
||||||
}
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
async init(id) {
|
|
||||||
const res = await request(apiArr.serverInfo, 'POST', {
|
|
||||||
appoint_id: Number(id)
|
|
||||||
});
|
|
||||||
this.info = res;
|
|
||||||
uni.setNavigationBarTitle({
|
|
||||||
title: res.title
|
|
||||||
})
|
|
||||||
|
|
||||||
},
|
|
||||||
|
|
||||||
changeShow() {
|
|
||||||
this.show = !this.show;
|
|
||||||
this.type = 1;
|
|
||||||
},
|
|
||||||
|
|
||||||
//
|
|
||||||
changeShow2() {
|
|
||||||
this.show = !this.show;
|
|
||||||
this.type = 2;
|
|
||||||
},
|
|
||||||
|
|
||||||
// 关闭弹窗选择器
|
|
||||||
onClose(){
|
|
||||||
this.show = false;
|
|
||||||
this.show2 = false;
|
|
||||||
this.show3 = false;
|
|
||||||
},
|
|
||||||
|
|
||||||
// 时间选择器点击确定
|
|
||||||
onInput(event){
|
|
||||||
const date = new Date(event.value); // 获取选中的 Date 对象
|
|
||||||
const year = date.getFullYear(); // 获取年份
|
|
||||||
const month = date.getMonth() + 1; // 获取月份(注意月份从 0 开始,需要 +1)
|
|
||||||
const day = date.getDate(); // 获取日期
|
|
||||||
const hours =date.getHours()
|
|
||||||
const minutes = date.getMinutes();
|
|
||||||
const time = `${year}-${month}-${day} ${hours}:${minutes}`;
|
|
||||||
console.log('time', time, 'type', this.type);
|
|
||||||
this.show = false;
|
|
||||||
if(this.type == 1){
|
|
||||||
this.time = time;
|
|
||||||
}else{
|
|
||||||
this.serTime = time;
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
// input 输入框输入值、
|
|
||||||
headerInputClick(e) {
|
|
||||||
console.log('eeee', e)
|
|
||||||
const { name } = e.currentTarget.dataset;
|
|
||||||
const { value } = e.detail;
|
|
||||||
this[name] = value;
|
|
||||||
},
|
|
||||||
|
|
||||||
// 地址选择弹窗
|
|
||||||
changeArea(){
|
|
||||||
this.show2 = true;
|
|
||||||
},
|
|
||||||
|
|
||||||
headerAreaClick(data) {
|
|
||||||
console.log('接受参数值', data);
|
|
||||||
this.citys = `${data.confirmProv.name}${data.confirmCity.area_name}${data.confirmDist.business_name}`;
|
|
||||||
this.show2 = false;
|
|
||||||
},
|
|
||||||
|
|
||||||
changeCir(e){
|
|
||||||
this.isreal = e
|
|
||||||
},
|
|
||||||
|
|
||||||
// 打开服务合同弹窗
|
|
||||||
changeShow3(){
|
|
||||||
this.show3 = true
|
|
||||||
},
|
|
||||||
|
|
||||||
// 同意服务合同
|
|
||||||
changeAgree(){
|
|
||||||
this.agree = !this.agree;
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
async submit() {
|
|
||||||
console.log('他啥都', this);
|
|
||||||
if(this.isreal == '1'){
|
|
||||||
if(!this.time){
|
|
||||||
uni.showToast({
|
|
||||||
title: '请选择上门时间',
|
|
||||||
icon:"none"
|
|
||||||
})
|
|
||||||
return
|
|
||||||
}
|
|
||||||
}else{
|
|
||||||
if(!this.serTime){
|
|
||||||
uni.showToast({
|
|
||||||
title: '请选择服务时间',
|
|
||||||
icon:"none"
|
|
||||||
})
|
|
||||||
return
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if(!this.name){
|
|
||||||
uni.showToast({
|
|
||||||
title: '请填写联系人姓名',
|
|
||||||
icon:"none"
|
|
||||||
})
|
|
||||||
return
|
|
||||||
}
|
|
||||||
if(!this.phone){
|
|
||||||
uni.showToast({
|
|
||||||
title: '请填写联系人电话',
|
|
||||||
icon:"none"
|
|
||||||
})
|
|
||||||
return
|
|
||||||
}
|
|
||||||
if(!isPhone(this.phone)){
|
|
||||||
uni.showToast({
|
|
||||||
title: '请填写正确电话',
|
|
||||||
icon:"none"
|
|
||||||
})
|
|
||||||
return
|
|
||||||
}
|
|
||||||
if(!this.citys){
|
|
||||||
uni.showToast({
|
|
||||||
title: '请选择服务地址',
|
|
||||||
icon:"none"
|
|
||||||
})
|
|
||||||
return
|
|
||||||
}
|
|
||||||
if(!this.add){
|
|
||||||
uni.showToast({
|
|
||||||
title: '请填写详细地址',
|
|
||||||
icon:"none"
|
|
||||||
})
|
|
||||||
return
|
|
||||||
}
|
|
||||||
if(!this.agree){
|
|
||||||
uni.showToast({
|
|
||||||
title: '请阅读合同内容',
|
|
||||||
icon:"none"
|
|
||||||
})
|
|
||||||
return
|
|
||||||
}
|
|
||||||
let svctime
|
|
||||||
if(this.isreal == '1'){
|
|
||||||
svctime = this.time
|
|
||||||
}else{
|
|
||||||
svctime = this.serTime
|
|
||||||
}
|
|
||||||
uni.showLoading({
|
|
||||||
title: '申请中...',
|
|
||||||
mask:true
|
|
||||||
})
|
|
||||||
const res = await request(apiArr.createServerOrder, 'POST', {
|
|
||||||
addr: this.citys + this.add,
|
|
||||||
appoint_id: this.info.appoint_id,
|
|
||||||
capon_id: 0,
|
|
||||||
cate_id: this.info.cate_id,
|
|
||||||
name: this.name,
|
|
||||||
order_type: this.type,
|
|
||||||
shop_id: this.info.shop_id,
|
|
||||||
svctime,
|
|
||||||
tel: this.phone
|
|
||||||
}, { silent: false });
|
|
||||||
console.log('12332322', res);
|
|
||||||
this.orderMsg = res;
|
|
||||||
// that.getGoodsMsg()
|
|
||||||
}
|
|
||||||
},
|
|
||||||
onLoad(options) {
|
|
||||||
this.id = options.id;
|
|
||||||
this.init(options.id);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style>
|
|
||||||
@import url("./index.css");
|
|
||||||
</style>
|
|
||||||
@ -1,154 +0,0 @@
|
|||||||
.tabList {
|
|
||||||
display: flex;
|
|
||||||
flex-wrap: wrap;
|
|
||||||
margin-top: 40rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tabItem {
|
|
||||||
display: flex;
|
|
||||||
width: 20%;
|
|
||||||
align-items: center;
|
|
||||||
flex-direction: column;
|
|
||||||
margin-bottom: 46rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tabImg {
|
|
||||||
height: 54rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tabName {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 26rpx;
|
|
||||||
color: #222222;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tit {
|
|
||||||
font-weight: bold;
|
|
||||||
font-size: 32rpx;
|
|
||||||
color: #222222;
|
|
||||||
margin-left: 20rpx;
|
|
||||||
padding-top: 30rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.serverMore {
|
|
||||||
background-color: #fff;
|
|
||||||
padding-bottom: 60rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
image {
|
|
||||||
width: 100%;
|
|
||||||
height: 100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.serverList {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: space-between;
|
|
||||||
padding: 0 52rpx;
|
|
||||||
margin-top: 30rpx;
|
|
||||||
padding-bottom: 30rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.serverItem {
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
align-items: center;
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 26rpx;
|
|
||||||
color: #222222;
|
|
||||||
}
|
|
||||||
|
|
||||||
.serverItem_img {
|
|
||||||
height: 54rpx;
|
|
||||||
margin-bottom: 16rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.List {
|
|
||||||
padding: 0 20rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: space-between;
|
|
||||||
padding: 30rpx 0;
|
|
||||||
border-bottom: 1rpx solid #E6E6E6;
|
|
||||||
box-sizing: border-box;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item_left {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item_left_msg_money {
|
|
||||||
display: flex;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
.item_right {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 26rpx;
|
|
||||||
color: #FFFFFF;
|
|
||||||
width: 150rpx;
|
|
||||||
height: 50rpx;
|
|
||||||
background: #D5AC66;
|
|
||||||
border-radius: 100rpx 100rpx 100rpx 100rpx;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
.item_left_img {
|
|
||||||
width: 180rpx;
|
|
||||||
height: 180rpx;
|
|
||||||
border-radius: 30rpx;
|
|
||||||
overflow: hidden;
|
|
||||||
margin-right: 20rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item_left_msg_tit {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 32rpx;
|
|
||||||
color: #000000;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item_left_msg_time {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #999999;
|
|
||||||
margin-top: 14rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item_left_msg_money {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 22rpx;
|
|
||||||
color: #FF512A;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
margin-top: 30rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item_left_msg_money view {
|
|
||||||
font-size: 36rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.phone {
|
|
||||||
width: 40rpx;
|
|
||||||
height: 40rpx;
|
|
||||||
background: #FFF2DA;
|
|
||||||
border-radius: 50%;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
margin-left: 20rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.phone image {
|
|
||||||
width: 24rpx;
|
|
||||||
height: 24rpx;
|
|
||||||
}
|
|
||||||
@ -1,89 +0,0 @@
|
|||||||
<template>
|
|
||||||
<view class="serverMore">
|
|
||||||
<view class="tabList">
|
|
||||||
<view class="tabItem" v-for="(item, index) in serverList" :key="index" @click="getList2(item.cate_id)">
|
|
||||||
<view class="tabImg">
|
|
||||||
<image :src="item.photo" mode="" />
|
|
||||||
</view>
|
|
||||||
<view class="tabName">{{item.cate_name}}</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<view class="gray"></view>
|
|
||||||
<view class="List">
|
|
||||||
<view class="item" v-for="(item, index) in tabList" :key="index">
|
|
||||||
<view class="item_left">
|
|
||||||
<view class="item_left_img">
|
|
||||||
<image :src="item.photo" mode="widthFix" />
|
|
||||||
</view>
|
|
||||||
<view class="item_left_msg">
|
|
||||||
<view class="item_left_msg_tit">
|
|
||||||
{{item.title}}
|
|
||||||
<view class="phone" @click="call">
|
|
||||||
<image src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/doorToDoor/phone.png" mode="widthFix" />
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<view class="item_left_msg_time">服务时间:{{item.biz_time}}</view>
|
|
||||||
<view class="item_left_msg_money">
|
|
||||||
¥ <view>{{item.price}}</view>/{{item.unit}}
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<view class="item_right" @click="reservation(item.appoint_id)">
|
|
||||||
预约
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
</view>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import { apiArr } from '../../../api/communityService';
|
|
||||||
import { picUrl, request } from '../../../utils';
|
|
||||||
|
|
||||||
export default {
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
flag: false,
|
|
||||||
cateid: "",
|
|
||||||
page_num: 1,
|
|
||||||
page_size: 10,
|
|
||||||
serverList: [],
|
|
||||||
tabList: [],
|
|
||||||
}
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
async getCateList(id) {
|
|
||||||
const res = await request(apiArr.getAllList, 'POST', {
|
|
||||||
cate_id: Number(id),
|
|
||||||
page_num: 1,
|
|
||||||
page_size: 50
|
|
||||||
})
|
|
||||||
let flag = false
|
|
||||||
if (res.rows && res.rows.length == this.page_size) {
|
|
||||||
flag = true
|
|
||||||
} else {
|
|
||||||
flag = false
|
|
||||||
}
|
|
||||||
res.rows && res.rows.forEach(item => {
|
|
||||||
item.photo = picUrl + item.photo
|
|
||||||
item.cate.photo = picUrl + item.cate.photo
|
|
||||||
})
|
|
||||||
console.log(res, 'ssss');
|
|
||||||
this.tabList = this.tabList.concat(res.rows || []);
|
|
||||||
this.flag = flag;
|
|
||||||
this.page_num = this.page_num + 1;
|
|
||||||
},
|
|
||||||
},
|
|
||||||
onLoad(options) {
|
|
||||||
|
|
||||||
this.cateid = options.id;
|
|
||||||
// that.getDoorToDoorList()
|
|
||||||
this.getCateList(options.id)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style>
|
|
||||||
@import url("./index.css");
|
|
||||||
</style>
|
|
||||||
@ -1,185 +0,0 @@
|
|||||||
image {
|
|
||||||
width: 100%;
|
|
||||||
height: 100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.banner {
|
|
||||||
width: 710rpx;
|
|
||||||
height: 300rpx;
|
|
||||||
border-radius: 30rpx;
|
|
||||||
margin: 0 auto;
|
|
||||||
margin-top: 30rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.banner_pic {
|
|
||||||
width: 710rpx;
|
|
||||||
height: 300rpx;
|
|
||||||
border-radius: 20rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tit {
|
|
||||||
font-weight: bold;
|
|
||||||
font-size: 40rpx;
|
|
||||||
color: #000000;
|
|
||||||
margin-top: 40rpx;
|
|
||||||
margin-left: 20rpx;
|
|
||||||
margin-right: 20rpx;
|
|
||||||
padding-bottom: 30rpx;
|
|
||||||
border-bottom: 1rpx solid #E6E6E6;
|
|
||||||
}
|
|
||||||
|
|
||||||
.msg_left_1 {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #000000;
|
|
||||||
}
|
|
||||||
|
|
||||||
.msg_left_2 {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #000000;
|
|
||||||
}
|
|
||||||
|
|
||||||
.msg_left_1 image {
|
|
||||||
width: 30rpx;
|
|
||||||
height: 30rpx;
|
|
||||||
margin-right: 20rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.msg_left_2 image {
|
|
||||||
width: 30rpx;
|
|
||||||
height: 30rpx;
|
|
||||||
margin-right: 20rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.msg_left_1 view {
|
|
||||||
border-radius: 100rpx 100rpx 100rpx 100rpx;
|
|
||||||
border: 1rpx solid #D5AC66;
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 22rpx;
|
|
||||||
color: #D5AC66;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
margin-left: 20rpx;
|
|
||||||
padding: 2rpx 10rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.msg {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: space-between;
|
|
||||||
margin: 0 20rpx;
|
|
||||||
margin-right: 48rpx;
|
|
||||||
margin-top: 28rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.msg_right {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #000000;
|
|
||||||
}
|
|
||||||
|
|
||||||
.msg_right image {
|
|
||||||
width: 60rpx;
|
|
||||||
height: 60rpx;
|
|
||||||
margin-bottom: 10rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.msg_right2 {
|
|
||||||
margin-left: 40rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tag {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 22rpx;
|
|
||||||
color: #FF512A;
|
|
||||||
background: #FFD8D0;
|
|
||||||
border-radius: 100rpx 100rpx 100rpx 100rpx;
|
|
||||||
border: 1rpx solid #FF512A;
|
|
||||||
display: inline-block;
|
|
||||||
padding: 2rpx 10rpx;
|
|
||||||
margin-left: 18rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.imgList {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
flex-wrap: wrap;
|
|
||||||
margin: 30rpx 20rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.imgList image {
|
|
||||||
width: 120rpx;
|
|
||||||
height: 120rpx;
|
|
||||||
border-radius: 30rpx 30rpx 30rpx 30rpx;
|
|
||||||
margin-right: 20rpx;
|
|
||||||
margin-bottom: 20rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.subtit {
|
|
||||||
font-weight: bold;
|
|
||||||
font-size: 28rpx;
|
|
||||||
color: #000000;
|
|
||||||
margin-top: 30rpx;
|
|
||||||
margin-left: 20rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.subCon {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #222222;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
margin-left: 20rpx;
|
|
||||||
margin-right: 20rpx;
|
|
||||||
margin-bottom: 30rpx;
|
|
||||||
margin-top: 20rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.subCon view {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #999999;
|
|
||||||
margin-left: 20rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.payList {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
flex-direction: column;
|
|
||||||
margin-top: 60rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.payBtn {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 36rpx;
|
|
||||||
color: #FFFFFF;
|
|
||||||
width: 650rpx;
|
|
||||||
height: 80rpx;
|
|
||||||
background: #FF512A;
|
|
||||||
border-radius: 100rpx 100rpx 100rpx 100rpx;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
margin-bottom: 40rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.payBtn2 {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 36rpx;
|
|
||||||
color: #FF512A;
|
|
||||||
width: 650rpx;
|
|
||||||
height: 80rpx;
|
|
||||||
border-radius: 100rpx 100rpx 100rpx 100rpx;
|
|
||||||
border: 1rpx solid #FF512A;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
}
|
|
||||||
@ -1,99 +0,0 @@
|
|||||||
<template>
|
|
||||||
<view class="box">
|
|
||||||
<view class="banner">
|
|
||||||
<image class="banner_pic" :src="info.photo" mode="" />
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view class="tit">{{info.shop_name}}</view>
|
|
||||||
<view class="msg">
|
|
||||||
<view class="msg_left">
|
|
||||||
<view class="msg_left_1">
|
|
||||||
<image src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/kitchen/kitchen_time.png" mode="" />
|
|
||||||
{{info.opening_time}}-{{info.closing_time}}
|
|
||||||
<view>{{info.is_open === 1 ? '营业' :'停业'}}</view>
|
|
||||||
</view>
|
|
||||||
<view class="msg_left_2">
|
|
||||||
<image src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/kitchen/kitchen_add.png" mode="" />
|
|
||||||
{{info.addr}}
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<view class="msg_right">
|
|
||||||
<view class="msg_right1" @click="call">
|
|
||||||
<image src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/kitchen/kitchen_phone.png" mode="" />
|
|
||||||
电话
|
|
||||||
</view>
|
|
||||||
<view class="msg_right2" @click="handleOptionClick">
|
|
||||||
<image src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/kitchen/kitchen_add.png" mode="" />
|
|
||||||
导航
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view class="imgList">
|
|
||||||
<image v-for="(item, index) in info.picList" :key="index" :data-pic="item" @click="headerPicClick" :src="item" mode="aspectFill" />
|
|
||||||
</view>
|
|
||||||
<view class="gray"></view>
|
|
||||||
|
|
||||||
<view class="gray"></view>
|
|
||||||
|
|
||||||
<view class="subtit">公告</view>
|
|
||||||
<view class="subCon">{{info.presentation}}</view>
|
|
||||||
</view>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import { picUrl, request } from '../../../utils';
|
|
||||||
import { apiArr } from '../../../api/communityService';
|
|
||||||
export default {
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
id: "",
|
|
||||||
info: ""
|
|
||||||
}
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
async init(id) {
|
|
||||||
const res = await request(apiArr.getGoodsDesc, 'POST', {
|
|
||||||
shop_id: Number(id)
|
|
||||||
})
|
|
||||||
const newRes = {
|
|
||||||
...res,
|
|
||||||
photo: picUrl + res.photo
|
|
||||||
};
|
|
||||||
uni.setNavigationBarTitle({
|
|
||||||
title: res.shop_name
|
|
||||||
});
|
|
||||||
this.info = newRes;
|
|
||||||
|
|
||||||
},
|
|
||||||
|
|
||||||
// 拨打电话
|
|
||||||
call() {
|
|
||||||
let that = this
|
|
||||||
uni.makePhoneCall({
|
|
||||||
phoneNumber: this.info.tel,
|
|
||||||
fail(err) {
|
|
||||||
console.log('取消拨打', err)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
// 导航
|
|
||||||
handleOptionClick() {
|
|
||||||
uni.openLocation({
|
|
||||||
latitude: Number(this.info.lat),
|
|
||||||
longitude: Number(this.info.lng),
|
|
||||||
name: this.info.shop_name,
|
|
||||||
})
|
|
||||||
},
|
|
||||||
},
|
|
||||||
onLoad(options) {
|
|
||||||
this.id = options.id;
|
|
||||||
this.init(options.id);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style>
|
|
||||||
@import url("./index.css");
|
|
||||||
</style>
|
|
||||||
@ -1,73 +0,0 @@
|
|||||||
.header {
|
|
||||||
margin-left: 20rpx;
|
|
||||||
color: #222222;
|
|
||||||
font-size: 28rpx;
|
|
||||||
font-weight: bold;
|
|
||||||
}
|
|
||||||
.item{
|
|
||||||
display:flex;
|
|
||||||
border-bottom:1px solid #e6e6e6;
|
|
||||||
height: 90rpx;
|
|
||||||
display: flex;
|
|
||||||
justify-content: space-between;
|
|
||||||
align-items: center;
|
|
||||||
margin-left: 52rpx;
|
|
||||||
margin-right: 48rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item-left {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
.item-title {
|
|
||||||
font-size: 26rpx;
|
|
||||||
color: #999999;
|
|
||||||
}
|
|
||||||
.item-icon {
|
|
||||||
width: 30rpx;
|
|
||||||
height: 30rpx;
|
|
||||||
margin-right: 20rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item-right {
|
|
||||||
/* flex: 1; */
|
|
||||||
text-align: right;
|
|
||||||
font-size: 26rpx;
|
|
||||||
font-weight: 400;
|
|
||||||
color: #222222;
|
|
||||||
}
|
|
||||||
.right-icon {
|
|
||||||
width: 40rpx;
|
|
||||||
height: 40rpx;
|
|
||||||
}
|
|
||||||
.item-right-icon {
|
|
||||||
width: 13rpx;
|
|
||||||
height: 26rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* TODO: 为什么不生效? */
|
|
||||||
.not-border{
|
|
||||||
border-bottom: none;
|
|
||||||
}
|
|
||||||
.item:last-child{
|
|
||||||
border-bottom:none
|
|
||||||
}
|
|
||||||
.line {
|
|
||||||
background: #F9F9F9;
|
|
||||||
height: 20rpx;
|
|
||||||
}
|
|
||||||
.desc {
|
|
||||||
font-size: 26rpx;
|
|
||||||
font-weight: 400;
|
|
||||||
color: #FF512A;
|
|
||||||
}
|
|
||||||
.quit_login {
|
|
||||||
margin: 10rpx 50rpx 0;
|
|
||||||
background: #FF512A;
|
|
||||||
border-radius: 100rpx 100rpx 100rpx 100rpx;
|
|
||||||
height: 80rpx;
|
|
||||||
color: #FFFFFF;
|
|
||||||
font-size: 36rpx;
|
|
||||||
font-weight: 400;
|
|
||||||
line-height: 80rpx;
|
|
||||||
}
|
|
||||||
@ -1,134 +0,0 @@
|
|||||||
<template>
|
|
||||||
<view class="container">
|
|
||||||
<view class="item" data-url="/packages/user/uploadAvatar/index" data-title="上传头像" @click="handleSelectClick">
|
|
||||||
<view class="item-left">
|
|
||||||
<image class="item-icon" src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/User/_assets/Group_422.png" />
|
|
||||||
<view class="item-title">上传头像</view>
|
|
||||||
</view>
|
|
||||||
<van-icon name="arrow" color="#D5AC66" />
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view class="item">
|
|
||||||
<view class="item-left">
|
|
||||||
<image class="item-icon" src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/User/_assets/Classroom.png" />
|
|
||||||
<view class="item-title">当前账户</view>
|
|
||||||
</view>
|
|
||||||
<view class="item-right">{{userInfo.user_name}}</view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view class="item" data-url="/packages/user/resetPwd/index" data-title="修改登录密码" data-type="login"
|
|
||||||
@click="handleSelectClick">
|
|
||||||
<view class="item-left">
|
|
||||||
<image class="item-icon" src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/User/_assets/Group_423.png" />
|
|
||||||
<view class="item-title">修改登录密码</view>
|
|
||||||
</view>
|
|
||||||
<van-icon name="arrow" color="#D5AC66" />
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view class="item not-border" data-url="/packages/user/resetPwd/index" data-title="修改支付密码" data-type="pay"
|
|
||||||
@click="handleSelectClick">
|
|
||||||
<view class="item-left">
|
|
||||||
<image class="item-icon" src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/User/_assets/Group_424.png" />
|
|
||||||
<view class="item-title">修改支付密码</view>
|
|
||||||
</view>
|
|
||||||
<van-icon name="arrow" color="#D5AC66" />
|
|
||||||
</view>
|
|
||||||
|
|
||||||
|
|
||||||
<!-- 灰色分割线 -->
|
|
||||||
<view class="line"></view>
|
|
||||||
<view class="item not-border">
|
|
||||||
<view class="item-left">
|
|
||||||
<image class="item-icon" src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/User/_assets/Group_425.png" />
|
|
||||||
<view class="item-title">绑定手机</view>
|
|
||||||
</view>
|
|
||||||
<view class="item-right desc">{{phoneNum}}</view>
|
|
||||||
</view>
|
|
||||||
<button class="quit_login" @click="handleQuitLoginClick">退出登录</button>
|
|
||||||
|
|
||||||
<nav-footer />
|
|
||||||
</view>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import { NavgateTo, request } from '../../../utils/index';
|
|
||||||
import { apiArr } from '../../../api/login';
|
|
||||||
export default {
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
userInfoList: [{
|
|
||||||
pic: 'https://wechat-img-file.oss-cn-beijing.aliyuncs.com/User/_assets/Group_422.png',
|
|
||||||
desc: '上传头像',
|
|
||||||
url: "/packages/user/uploadAvatar/index",
|
|
||||||
isShowPic: true,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
pic: 'https://wechat-img-file.oss-cn-beijing.aliyuncs.com/User/_assets/Classroom.png',
|
|
||||||
desc: '当前账户',
|
|
||||||
url: "",
|
|
||||||
text: "微信用户"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
pic: 'https://wechat-img-file.oss-cn-beijing.aliyuncs.com/User/_assets/Group_423.png',
|
|
||||||
desc: '修改登录密码',
|
|
||||||
type: 'login',
|
|
||||||
url: "/packages/user/resetPwd/index",
|
|
||||||
isShowPic: true,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
pic: 'https://wechat-img-file.oss-cn-beijing.aliyuncs.com/User/_assets/Group_424.png',
|
|
||||||
desc: '修改支付密码',
|
|
||||||
type: 'pay',
|
|
||||||
url: "/packages/user/resetPwd/index",
|
|
||||||
isShowPic: true,
|
|
||||||
isLast: true,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
userInfo: {},
|
|
||||||
phoneNum: uni.getStorageSync('phone'),
|
|
||||||
}
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
async init() {
|
|
||||||
const res = await request(apiArr.loginInfo, 'POST', {});
|
|
||||||
this.userInfo = res;
|
|
||||||
},
|
|
||||||
|
|
||||||
// 跳转指定页面url
|
|
||||||
handleSelectClick(event) {
|
|
||||||
const { url, title, type } = event.currentTarget.dataset
|
|
||||||
if (!url) return;
|
|
||||||
NavgateTo(`${url}?title=${title}&type=${type}`, { isLogin: false })
|
|
||||||
},
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 退出登录
|
|
||||||
*/
|
|
||||||
handleQuitLoginClick() {
|
|
||||||
console.log('退出登录');
|
|
||||||
uni.removeStorageSync('ctoken');
|
|
||||||
uni.removeStorageSync('userId');
|
|
||||||
uni.removeStorageSync('phone');
|
|
||||||
uni.removeStorageSync('device_id');
|
|
||||||
uni.removeStorageSync('dealerId');
|
|
||||||
uni.removeStorageSync('is_deal');
|
|
||||||
uni.removeStorageSync('is_dev');
|
|
||||||
uni.removeStorageSync('is_shop');
|
|
||||||
uni.removeStorageSync('openId');
|
|
||||||
uni.removeStorageSync('shopArea');
|
|
||||||
uni.removeStorageSync('shopId');
|
|
||||||
uni.reLaunch({
|
|
||||||
url: '/pages/index/index'
|
|
||||||
})
|
|
||||||
},
|
|
||||||
},
|
|
||||||
|
|
||||||
onLoad() {
|
|
||||||
this.init();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style>
|
|
||||||
@import url("./index.css");
|
|
||||||
</style>
|
|
||||||
@ -1,111 +0,0 @@
|
|||||||
.container {
|
|
||||||
height: 100vh;
|
|
||||||
background: linear-gradient(to bottom, #FFE7E1, #FFFFFF);
|
|
||||||
/* background-attachment: fixed; */
|
|
||||||
background-size: cover;
|
|
||||||
padding-top: 20rpx;
|
|
||||||
padding-bottom: 20%;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* 头部 */
|
|
||||||
.header {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
margin-left: 25rpx;
|
|
||||||
margin-top: 83rpx;
|
|
||||||
margin-bottom: 52rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* 头像 */
|
|
||||||
.left {
|
|
||||||
display: flex;
|
|
||||||
width: 120rpx;
|
|
||||||
height: 120rpx;
|
|
||||||
border-radius: 50%;
|
|
||||||
overflow: hidden;
|
|
||||||
background-color: #FF7354;
|
|
||||||
margin-right: 30rpx;
|
|
||||||
justify-content: center;
|
|
||||||
align-items: center;
|
|
||||||
pointer-events: auto;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* 头像图片 */
|
|
||||||
.avatar {
|
|
||||||
width: 60%;
|
|
||||||
height: 55%;
|
|
||||||
margin-bottom: 20rpx;
|
|
||||||
pointer-events: auto;
|
|
||||||
}
|
|
||||||
|
|
||||||
.user_name {
|
|
||||||
font-size: 36rpx;
|
|
||||||
color: #000000;
|
|
||||||
font-weight: bold;
|
|
||||||
margin-bottom: 14rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.share_poster {
|
|
||||||
display: inline-block;
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #FFFFFF;
|
|
||||||
padding: 5rpx 14rpx 7rpx 15rpx;
|
|
||||||
background-color: #FF9077;
|
|
||||||
border-radius: 100rpx 100rpx 100rpx 100rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.main {
|
|
||||||
display: flex;
|
|
||||||
flex-wrap: wrap;
|
|
||||||
justify-content: space-between;
|
|
||||||
background: #FFFFFF;
|
|
||||||
border-radius: 30rpx 30rpx 30rpx 30rpx;
|
|
||||||
margin: 0 15rpx 41rpx 25rpx;
|
|
||||||
padding: 43rpx 44rpx 47rpx 34rpx;
|
|
||||||
}
|
|
||||||
.item {
|
|
||||||
flex: 1 0 calc(33.333% - 10px);
|
|
||||||
background-color: #FFFFFF;
|
|
||||||
text-align: center;
|
|
||||||
margin-bottom: 50rpx;
|
|
||||||
}
|
|
||||||
.has-margin-bottom {
|
|
||||||
margin-bottom: 0;
|
|
||||||
}
|
|
||||||
.text {
|
|
||||||
font-size: 40rpx;
|
|
||||||
font-weight: 400;
|
|
||||||
color: #222222;
|
|
||||||
margin-bottom: 14rpx;
|
|
||||||
}
|
|
||||||
.desc {
|
|
||||||
font-size: 26rpx;
|
|
||||||
font-weight: 400;
|
|
||||||
color: #999999;
|
|
||||||
}
|
|
||||||
|
|
||||||
.navigation {
|
|
||||||
margin-left: 22rpx;
|
|
||||||
font-size: 32rpx;
|
|
||||||
font-weight: bold;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
.order {
|
|
||||||
margin-top: 24rpx;
|
|
||||||
}
|
|
||||||
.nav_icon {
|
|
||||||
width: 50rpx;
|
|
||||||
height: 50rpx;
|
|
||||||
margin-bottom: 20rpx;
|
|
||||||
}
|
|
||||||
.grid-text {
|
|
||||||
font-size: 24rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.uicon-volume {
|
|
||||||
font-size: 28rpx !important;
|
|
||||||
}
|
|
||||||
.u-grid-item {
|
|
||||||
margin-bottom: 43rpx;
|
|
||||||
}
|
|
||||||
@ -1,132 +0,0 @@
|
|||||||
<template>
|
|
||||||
<view class="container">
|
|
||||||
<view class="header">
|
|
||||||
<view class="left">
|
|
||||||
<image class="avatar" :src="userInfo.img"></image>
|
|
||||||
</view>
|
|
||||||
<view class="right">
|
|
||||||
<view class="user_name" @click="handleUserInfoClick">
|
|
||||||
{{ userInfo.user_name ? userInfo.user_name : '微信用户' }}
|
|
||||||
(ID:{{userInfo.user_id}})
|
|
||||||
</view>
|
|
||||||
<view class="share_poster" @click="handleShareClick">推广海报</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<!-- 推广下级 -->
|
|
||||||
<view class="main">
|
|
||||||
<view class="item">
|
|
||||||
<view class="text">{{0}}</view>
|
|
||||||
<view class="desc">累计推广下级</view>
|
|
||||||
</view>
|
|
||||||
<view class="item">
|
|
||||||
<view class="text">{{0}}</view>
|
|
||||||
<view class="desc">累计邀请业主</view>
|
|
||||||
</view>
|
|
||||||
<view class="item">
|
|
||||||
<view class="text">{{0}}</view>
|
|
||||||
<view class="desc">累计推广订单</view>
|
|
||||||
</view>
|
|
||||||
<view class="item has-margin-bottom">
|
|
||||||
<view class="text">{{0}}</view>
|
|
||||||
<view class="desc">今日推广下级</view>
|
|
||||||
</view>
|
|
||||||
<view class="item has-margin-bottom">
|
|
||||||
<view class="text">{{0}}</view>
|
|
||||||
<view class="desc">今日邀请业主</view>
|
|
||||||
</view>
|
|
||||||
<view class="item has-margin-bottom">
|
|
||||||
<view class="text">{{0}}</view>
|
|
||||||
<view class="desc">今日推广订单</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<view class="navigation">功能管理</view>
|
|
||||||
<view class="order">
|
|
||||||
<!-- 功能列表 -->
|
|
||||||
<u-grid col="4" :border="false" >
|
|
||||||
<u-grid-item @click="headerOrderClick(item)" v-for="(item, index) in functional_List" :key="index">
|
|
||||||
<image class="nav_icon" :src="item.image" mode=""></image>
|
|
||||||
<text class="grid-text">{{item.name}}</text>
|
|
||||||
</u-grid-item>
|
|
||||||
</u-grid>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<nav-footer />
|
|
||||||
</view>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import { NavgateTo, picUrl, request } from '../../../utils';
|
|
||||||
import { apiArr } from '../../../api/login';
|
|
||||||
export default {
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
functional_List: [{
|
|
||||||
"image": "https://wechat-img-file.oss-cn-beijing.aliyuncs.com/User/_assets/Group_25.png",
|
|
||||||
"name": "推广海报",
|
|
||||||
"url": "/packages/user/share/index",
|
|
||||||
"type": "h5"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"image": "https://wechat-img-file.oss-cn-beijing.aliyuncs.com/User/_assets/Group_26.png",
|
|
||||||
"name": "我的下级",
|
|
||||||
"url": "",
|
|
||||||
"type": "h5"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"image": "https://wechat-img-file.oss-cn-beijing.aliyuncs.com/User/_assets/Group_35.png",
|
|
||||||
"name": "下级订单",
|
|
||||||
"url": "",
|
|
||||||
"type": "h5"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"image": "https://wechat-img-file.oss-cn-beijing.aliyuncs.com/User/_assets/Group_30.png",
|
|
||||||
"name": "联系平台",
|
|
||||||
"url": "",
|
|
||||||
"type": "h5"
|
|
||||||
},
|
|
||||||
],
|
|
||||||
userInfo: {},
|
|
||||||
}
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
async init() {
|
|
||||||
const res = await request(apiArr.loginInfo, 'POST', {});
|
|
||||||
const newRes = {
|
|
||||||
...res,
|
|
||||||
img: picUrl + res.img || 'https://wechat-img-file.oss-cn-beijing.aliyuncs.com/person/Group_309.png',
|
|
||||||
}
|
|
||||||
this.userInfo = newRes;
|
|
||||||
},
|
|
||||||
|
|
||||||
handleUserInfoClick() {
|
|
||||||
NavgateTo('/packages/user/index/index', { isLogin: false })
|
|
||||||
},
|
|
||||||
handleShareClick() {
|
|
||||||
NavgateTo('/packages/user/share/index', { isLogin: false })
|
|
||||||
},
|
|
||||||
|
|
||||||
headerOrderClick(event) {
|
|
||||||
console.log('11111', event)
|
|
||||||
const { url } = event;
|
|
||||||
if (!url) {
|
|
||||||
uni.showModal({
|
|
||||||
title: '提示',
|
|
||||||
content: '此功能暂未开通!',
|
|
||||||
showCancel: false,
|
|
||||||
})
|
|
||||||
} else {
|
|
||||||
NavgateTo(url, { isLogin: false })
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
},
|
|
||||||
onLoad() {
|
|
||||||
this.init();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style>
|
|
||||||
@import url("./index.css");
|
|
||||||
</style>
|
|
||||||
@ -1,86 +0,0 @@
|
|||||||
.points-overview {
|
|
||||||
box-sizing: border-box;
|
|
||||||
display: flex;
|
|
||||||
padding: 40rpx 20rpx 30rpx;
|
|
||||||
height: 185rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.points-overview__content {
|
|
||||||
flex: 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
.points-overview__label {
|
|
||||||
font-size: 26rpx;
|
|
||||||
color: #222;
|
|
||||||
}
|
|
||||||
|
|
||||||
.points-overview__num {
|
|
||||||
margin-top: 10rpx;
|
|
||||||
margin-left: 12rpx;
|
|
||||||
font-weight: bold;
|
|
||||||
font-size: 64rpx;
|
|
||||||
line-height: 75rpx;
|
|
||||||
color: #FF512A;
|
|
||||||
}
|
|
||||||
|
|
||||||
.points-overview__action {
|
|
||||||
flex-shrink: 1;
|
|
||||||
padding: 5rpx 22rpx;
|
|
||||||
width: max-content;
|
|
||||||
height: max-content;
|
|
||||||
border-radius: 40rpx;
|
|
||||||
background-color: rgba(255, 81, 42, 0.1);
|
|
||||||
white-space: nowrap;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.points-overview__desc {
|
|
||||||
margin-right: 10rpx;
|
|
||||||
font-size: 26rpx;
|
|
||||||
line-height: 30rpx;
|
|
||||||
color: #FF512A;
|
|
||||||
white-space: nowrap;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.block-divider {
|
|
||||||
width: 100%;
|
|
||||||
height: 20rpx;
|
|
||||||
background-color: #F9F9F9;
|
|
||||||
}
|
|
||||||
|
|
||||||
.record-list {
|
|
||||||
padding: 0 20rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.record-list-item {
|
|
||||||
padding: 30rpx 0;
|
|
||||||
font-size: 26rpx;
|
|
||||||
color: #222;
|
|
||||||
}
|
|
||||||
|
|
||||||
.record-list-item__content {
|
|
||||||
display: flex;
|
|
||||||
}
|
|
||||||
|
|
||||||
.record-list-item__label {
|
|
||||||
flex: 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
.record-list-item__num {
|
|
||||||
flex-shrink: 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
.record-list-item__datetime {
|
|
||||||
margin-top: 10rpx;
|
|
||||||
font-size: 22rpx;
|
|
||||||
color: #999;
|
|
||||||
}
|
|
||||||
|
|
||||||
.record-list-item + .record-list-item {
|
|
||||||
border-top: 1px solid #E6E6E6;
|
|
||||||
}
|
|
||||||
@ -1,84 +0,0 @@
|
|||||||
<template>
|
|
||||||
<view class="container">
|
|
||||||
<view class="points-overview">
|
|
||||||
<view class="points-overview__content">
|
|
||||||
<view class="points-overview__label">账户积分</view>
|
|
||||||
<view class="points-overview__num">{{ pointsNum }}</view>
|
|
||||||
</view>
|
|
||||||
<navigator class="points-overview__action" url="/packages/user/pointsRule/index">
|
|
||||||
<text class="points-overview__desc">积分规则</text>
|
|
||||||
<image
|
|
||||||
style="width: 12rpx; height: 22rpx;"
|
|
||||||
src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/User/_assets/more.primary.12x22.png"
|
|
||||||
>
|
|
||||||
</image>
|
|
||||||
</navigator >
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view class="block-divider"></view>
|
|
||||||
|
|
||||||
<view class="record-list">
|
|
||||||
<view
|
|
||||||
v-for="(item, index ) in records"
|
|
||||||
:key="index"
|
|
||||||
class="record-list-item"
|
|
||||||
>
|
|
||||||
<view class="record-list-item__content">
|
|
||||||
<view class="record-list-item__label">{{ item.source }}</view>
|
|
||||||
<view class="record-list-item__num">+{{ item.integral }}</view>
|
|
||||||
</view>
|
|
||||||
<view class="record-list-item__datetime">{{ item.create_time }}</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<nav-footer />
|
|
||||||
</view>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import { request } from '../../../utils';
|
|
||||||
import { apiArr } from '../../../api/user';
|
|
||||||
export default {
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
count: 0,
|
|
||||||
records: [],
|
|
||||||
pointsNum: 0,
|
|
||||||
}
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
async init () {
|
|
||||||
uni.showLoading({
|
|
||||||
title: '加载中',
|
|
||||||
})
|
|
||||||
const res = await request(apiArr.signIntegral,"POST", {});
|
|
||||||
this.pointsNum = res.integral;
|
|
||||||
await this.getSignCycle();
|
|
||||||
},
|
|
||||||
|
|
||||||
async getSignCycle () {
|
|
||||||
const res = await request(apiArr.signCycle, 'POST', {});
|
|
||||||
const { start_time, end_time, day_num } = res;
|
|
||||||
this.getSignList(start_time, end_time, day_num)
|
|
||||||
},
|
|
||||||
|
|
||||||
async getSignList(startTime, endTime, dayNum) {
|
|
||||||
const res = await request(apiArr.signList, 'POST', {
|
|
||||||
page_num: 1,
|
|
||||||
page_size: dayNum,
|
|
||||||
sign_date: [startTime, endTime]
|
|
||||||
});
|
|
||||||
uni.hideLoading();
|
|
||||||
this.records = res.rows;
|
|
||||||
},
|
|
||||||
|
|
||||||
},
|
|
||||||
onLoad() {
|
|
||||||
this.init();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style>
|
|
||||||
@import url("./index.css");
|
|
||||||
</style>
|
|
||||||
@ -1,23 +0,0 @@
|
|||||||
.desc-doc {
|
|
||||||
padding: 30rpx 28rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.desc-title {
|
|
||||||
font-weight: bold;
|
|
||||||
font-size: 36rpx;
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.section {
|
|
||||||
margin-top: 20rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.section-content {
|
|
||||||
margin-top: 20rpx;
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #555;
|
|
||||||
}
|
|
||||||
|
|
||||||
.section-content--grey {
|
|
||||||
color: #999;
|
|
||||||
}
|
|
||||||
@ -1,44 +0,0 @@
|
|||||||
<template>
|
|
||||||
<view class="desc-doc">
|
|
||||||
<view class="desc-title">积分兑换规则</view>
|
|
||||||
<view class="section">
|
|
||||||
<view class="section-title">一. 积分获取:</view>
|
|
||||||
<view class="section-content">1、完成购物。在平台进行消费支付可,即可获得官方商城积分,10元可换取1积分;订单支付成功后到账;</view>
|
|
||||||
<view class="section-content">2、平台签到赠送积分。</view>
|
|
||||||
</view>
|
|
||||||
<view class="section">
|
|
||||||
<view class="section-title">二. 兑换规则</view>
|
|
||||||
<view class="section-content">积分可在官方商城兑换商品:</view>
|
|
||||||
<view class="section-content section-content--grey">· 折扣券——官方商城定期推出积分兑换折扣卷活动,兑换折扣卷后需在有效期内使用,有效期及使用规则请见折扣卷详情;
|
|
||||||
</view>
|
|
||||||
<view class="section-content section-content--grey">· 其他——有效期及使用规则请见商品详情;</view>
|
|
||||||
<view class="section-content">
|
|
||||||
兑换后会扣减“兑换积分”,兑换的礼券及兑换积分不能退回;同类礼券每笔订单限使用一张,仅限本ID使用,不能折算为现金、也不能再次兑换为积分;已兑换的礼券可在“我的账户 我的积分”的明细中查询。兑换礼券均有有效期,请及时使用。
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<nav-footer />
|
|
||||||
</view>
|
|
||||||
|
|
||||||
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
export default {
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
|
|
||||||
}
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
|
|
||||||
},
|
|
||||||
onLoad() {
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style>
|
|
||||||
@import url("./index.css");
|
|
||||||
</style>
|
|
||||||
@ -1,128 +0,0 @@
|
|||||||
.container {
|
|
||||||
width: 750rpx;
|
|
||||||
height: 902rpx;
|
|
||||||
background: linear-gradient(0deg, rgba(255,182,92,0) 0%, #ED7554 80%);
|
|
||||||
border-radius: 0rpx 0rpx 0rpx 0rpx;
|
|
||||||
}
|
|
||||||
.header {
|
|
||||||
margin-top: 57rpx;
|
|
||||||
margin-left: 34rpx;
|
|
||||||
display: flex;
|
|
||||||
justify-content: space-between;
|
|
||||||
}
|
|
||||||
.left_detail {
|
|
||||||
border-radius: 100rpx 100rpx 100rpx 100rpx;
|
|
||||||
background: rgba(255,255,255,0.2);
|
|
||||||
overflow: auto;
|
|
||||||
display: inline-flex;
|
|
||||||
align-items: center;
|
|
||||||
padding-right: 24rpx;
|
|
||||||
}
|
|
||||||
.gold_icon {
|
|
||||||
width: 48rpx;
|
|
||||||
height: 48rpx;
|
|
||||||
margin: 8rpx 20rpx 8rpx 17rpx;
|
|
||||||
}
|
|
||||||
.points {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 40rpx;
|
|
||||||
color: #FFFFFF;
|
|
||||||
margin-right: 25rpx;
|
|
||||||
}
|
|
||||||
.tomorrow_sign {
|
|
||||||
margin-top: 20rpx;
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #FFFFFF;
|
|
||||||
}
|
|
||||||
.right_desc {
|
|
||||||
text-align: right;
|
|
||||||
font-weight: bold;
|
|
||||||
font-size: 80rpx;
|
|
||||||
background: linear-gradient(90.00002264849354deg, rgba(255,255,255,0.2) 0%, rgba(255,255,255,0) 100%);
|
|
||||||
}
|
|
||||||
.rigth_icon {
|
|
||||||
width: 408rpx;
|
|
||||||
height: 94rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
.main {
|
|
||||||
/* width: 100%; */
|
|
||||||
background: url('https://wechat-img-file.oss-cn-beijing.aliyuncs.com/User/_assets/Rectangle_112.png');
|
|
||||||
border-radius: 30px 30px 30px 30px;
|
|
||||||
border: 1px solid #FFFFFF;
|
|
||||||
padding: 25rpx 20rpx 0;
|
|
||||||
margin-top: 22rpx;
|
|
||||||
position: relative;
|
|
||||||
}
|
|
||||||
.center_icon {
|
|
||||||
width: 382rpx;
|
|
||||||
height: 283rpx;
|
|
||||||
position: absolute;
|
|
||||||
right: 0;
|
|
||||||
top: -173rpx;
|
|
||||||
}
|
|
||||||
.center_header {
|
|
||||||
width: 710rpx;
|
|
||||||
display: inline-flex;
|
|
||||||
background: #FCF7DD;
|
|
||||||
border-radius: 30rpx 30rpx 30rpx 30rpx;
|
|
||||||
}
|
|
||||||
.signed {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 32rpx;
|
|
||||||
color: #222222;
|
|
||||||
margin: 36rpx 0 36rpx 46rpx;
|
|
||||||
}
|
|
||||||
.center_time {
|
|
||||||
font-weight: 400;
|
|
||||||
color: #D5AC66;
|
|
||||||
margin: 36rpx 28rpx 36rpx 163rpx;
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 24rpx;
|
|
||||||
}
|
|
||||||
.points_detail {
|
|
||||||
margin-top: 40rpx;
|
|
||||||
width: 750rpx;
|
|
||||||
display: flex;
|
|
||||||
flex-wrap: wrap;
|
|
||||||
}
|
|
||||||
.day_detail {
|
|
||||||
width: 90rpx;
|
|
||||||
margin-right: 10rpx;
|
|
||||||
margin-bottom: 30rpx;
|
|
||||||
}
|
|
||||||
.item {
|
|
||||||
background: #FFECE7;
|
|
||||||
border-radius: 10rpx 10rpx 10rpx 10rpx;
|
|
||||||
width: 90rpx;
|
|
||||||
height: 110rpx;
|
|
||||||
overflow: hidden;
|
|
||||||
}
|
|
||||||
.red_border {
|
|
||||||
border: 1rpx solid #FF512A;
|
|
||||||
|
|
||||||
}
|
|
||||||
.points_time {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #000000;
|
|
||||||
text-align: center;
|
|
||||||
margin: 11rpx 0 11rpx;
|
|
||||||
}
|
|
||||||
.points_icon {
|
|
||||||
width: 40rpx;
|
|
||||||
height: 40rpx;
|
|
||||||
margin: 0 auto;
|
|
||||||
}
|
|
||||||
.day_time {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #000000;
|
|
||||||
margin-top: 10rpx;
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
.color_red {
|
|
||||||
color: #FF512A;
|
|
||||||
}
|
|
||||||
@ -1,300 +0,0 @@
|
|||||||
<template>
|
|
||||||
<view class="container" :style="{paddingTop: top + 'px'}">
|
|
||||||
<u-navbar title="签到积分" leftIconColor="#FFFFFF" titleStyle="color: #FFFFFF" bgColor="transparent" leftIconSize="20px"
|
|
||||||
:autoBack="true" />
|
|
||||||
|
|
||||||
<view class="header">
|
|
||||||
<view class="header_left">
|
|
||||||
<view class="left_detail" @click="headerPointsClick">
|
|
||||||
<image class="gold_icon"
|
|
||||||
src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/User/_assets/401463152_31.png" mode="" />
|
|
||||||
<text class="points">{{pointsNum}}</text>
|
|
||||||
<u-icon color="#FFFFFF" name="arrow-right" />
|
|
||||||
</view>
|
|
||||||
<view class="tomorrow_sign">明日签到+1</view>
|
|
||||||
</view>
|
|
||||||
<view class="header_right">
|
|
||||||
<image class="rigth_icon" src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/User/_assets/QIANDAO.png"
|
|
||||||
mode="" />
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<view class="main">
|
|
||||||
<image class="center_icon" src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/User/_assets/Group_311.png"
|
|
||||||
mode="" />
|
|
||||||
<view class="center_header">
|
|
||||||
<view class="signed">本期已签到<text>{{checkedData}}</text>天</view>
|
|
||||||
<view class="center_time">{{starteTime}}~{{endTime}}</view>
|
|
||||||
</view>
|
|
||||||
<view class="points_detail">
|
|
||||||
<view class="day_detail" v-for="(item, index) in pointsList" :key="index" @click="headerSignClick">
|
|
||||||
<view :class="['item', item.today && 'red_border']">
|
|
||||||
<view v-if="item.isSign" :class="['points_time', !item.isSign && 'color_red']">{{item.time}}</view>
|
|
||||||
<view v-if="!item.isSign" :class="['points_time', !item.isSign && 'color_red']">+{{item.points}}</view>
|
|
||||||
<image class="points_icon" v-if="item.isSign"
|
|
||||||
src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/User/_assets/Group_518.png" mode="" />
|
|
||||||
<image class="points_icon" wx:else
|
|
||||||
src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/User/_assets/401463152_31.png" mode="" />
|
|
||||||
</view>
|
|
||||||
<view class="day_time">{{index +1}}天</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<footer />
|
|
||||||
</view>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import {
|
|
||||||
request,
|
|
||||||
menuButtonInfo,
|
|
||||||
NavgateTo
|
|
||||||
} from '../../../utils';
|
|
||||||
import {
|
|
||||||
apiArr
|
|
||||||
} from '../../../api/user';
|
|
||||||
export default {
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
top: 0,
|
|
||||||
starteTime: '',
|
|
||||||
endTime: '',
|
|
||||||
points: [{
|
|
||||||
time: '01.29',
|
|
||||||
state: true,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
time: '+2',
|
|
||||||
state: false,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
time: '+3',
|
|
||||||
state: false,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
time: '+4',
|
|
||||||
state: false,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
time: '+5',
|
|
||||||
state: false,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
time: '+6',
|
|
||||||
state: false,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
time: '+7',
|
|
||||||
state: false,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
time: '+1',
|
|
||||||
state: false,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
time: '+2',
|
|
||||||
state: false,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
time: '+3',
|
|
||||||
state: false,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
time: '+4',
|
|
||||||
state: false,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
time: '+5',
|
|
||||||
state: false,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
time: '+6',
|
|
||||||
state: false,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
time: '+7',
|
|
||||||
state: false,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
time: '+1',
|
|
||||||
state: false,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
time: '+2',
|
|
||||||
state: false,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
time: '+3',
|
|
||||||
state: false,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
time: '+4',
|
|
||||||
state: false,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
time: '+5',
|
|
||||||
state: false,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
time: '+6',
|
|
||||||
state: false,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
time: '+7',
|
|
||||||
state: false,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
time: '+1',
|
|
||||||
state: false,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
time: '+2',
|
|
||||||
state: false,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
time: '+3',
|
|
||||||
state: false,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
time: '+4',
|
|
||||||
state: false,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
time: '+5',
|
|
||||||
state: false,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
time: '+6',
|
|
||||||
state: false,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
time: '+7',
|
|
||||||
state: false,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
time: '+1',
|
|
||||||
state: false,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
time: '+2',
|
|
||||||
state: false,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
pointsList: [],
|
|
||||||
checkedData: 0,
|
|
||||||
pointsNum: 0,
|
|
||||||
}
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
async getIntegral() {
|
|
||||||
const res = await request(apiArr.signIntegral, 'POST', {});
|
|
||||||
this.pointsNum = res.integral
|
|
||||||
},
|
|
||||||
|
|
||||||
async init() {
|
|
||||||
uni.showLoading({
|
|
||||||
title: '加载中',
|
|
||||||
mask: true,
|
|
||||||
})
|
|
||||||
this.getIntegral();
|
|
||||||
const res = await request(apiArr.signCycle, 'POST', {});
|
|
||||||
const {
|
|
||||||
start_time,
|
|
||||||
end_time,
|
|
||||||
day_num
|
|
||||||
} = res;
|
|
||||||
const starteTime = start_time.substring(0, 10);
|
|
||||||
const endTime = end_time.substring(0, 10);
|
|
||||||
|
|
||||||
|
|
||||||
this.starteTime = starteTime;
|
|
||||||
this.endTime = endTime;
|
|
||||||
await this.getGridList(starteTime, day_num);
|
|
||||||
await this.getSignList(starteTime, endTime, day_num);
|
|
||||||
|
|
||||||
uni.hideLoading();
|
|
||||||
},
|
|
||||||
|
|
||||||
getGridList(startTime, dayNum) {
|
|
||||||
// 获取当前日期
|
|
||||||
const today = new Date();
|
|
||||||
|
|
||||||
const year = today.getFullYear();
|
|
||||||
const month = String(today.getMonth() + 1).padStart(2, '0'); // 月份从0开始,所以需要+1
|
|
||||||
const day = String(today.getDate()).padStart(2, '0');
|
|
||||||
const todayString = `${year}-${month}-${day}`;
|
|
||||||
|
|
||||||
|
|
||||||
// 将日期字符串转换为 Date 对象
|
|
||||||
const startDate = new Date(startTime);
|
|
||||||
|
|
||||||
const dayList = Array.from({
|
|
||||||
length: dayNum
|
|
||||||
}, (_, index) => {
|
|
||||||
// 创建一个新的 Date 对象,表示当前的天数
|
|
||||||
const currentDate = new Date(startDate);
|
|
||||||
currentDate.setDate(startDate.getDate() + index);
|
|
||||||
|
|
||||||
const currentDateString = currentDate.toISOString().split('T')[0]; // 格式化为 YYYY-MM-DD
|
|
||||||
|
|
||||||
|
|
||||||
// 检查当前日期是否是今天
|
|
||||||
const isToday = currentDateString === todayString;
|
|
||||||
|
|
||||||
// 格式化当前日期为 MM.DD
|
|
||||||
const formattedDate = (`0${currentDate.getMonth() + 1}`).slice(-2) + '.' + (`0${currentDate.getDate()}`)
|
|
||||||
.slice(-2);
|
|
||||||
return {
|
|
||||||
time: formattedDate,
|
|
||||||
date: currentDateString,
|
|
||||||
points: 1,
|
|
||||||
today: isToday,
|
|
||||||
}
|
|
||||||
});
|
|
||||||
this.pointsList = dayList;
|
|
||||||
},
|
|
||||||
|
|
||||||
async getSignList(startTime, endTime, dayNum) {
|
|
||||||
const res = await request(apiArr.signList, 'POST', {
|
|
||||||
page_num: 1,
|
|
||||||
page_size: dayNum,
|
|
||||||
sign_date: [startTime, endTime]
|
|
||||||
});
|
|
||||||
const newRes = res.rows.map((item) => {
|
|
||||||
return {
|
|
||||||
...item,
|
|
||||||
day: item.day.substring(0, 10),
|
|
||||||
}
|
|
||||||
});
|
|
||||||
const updatedList = this.pointsList.map(item => {
|
|
||||||
// 使用 some 检查 已签到列表 中是否有匹配的日期
|
|
||||||
const isSign = newRes.some(dayObj => dayObj.day === item.date);
|
|
||||||
|
|
||||||
// 返回一个新的对象,包含原始字段和已签到的 isSign 字段
|
|
||||||
return {
|
|
||||||
...item,
|
|
||||||
isSign: isSign
|
|
||||||
};
|
|
||||||
});
|
|
||||||
|
|
||||||
this.checkedData = res.total;
|
|
||||||
this.pointsList = updatedList;
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
headerPointsClick() {
|
|
||||||
NavgateTo('/packages/user/points/index', { isLogin: false })
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
},
|
|
||||||
onLoad() {
|
|
||||||
const meun = menuButtonInfo();
|
|
||||||
this.top = meun.height + meun.top;
|
|
||||||
this.init();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style>
|
|
||||||
@import url("./index.css");
|
|
||||||
</style>
|
|
||||||
@ -1,19 +0,0 @@
|
|||||||
// 修改密码页面参数类型
|
|
||||||
export const pageOptionType = {
|
|
||||||
pay: {
|
|
||||||
title: '已绑定手机号',
|
|
||||||
defultDesc: '请输入绑定手机号',
|
|
||||||
subTitle: '支付密码',
|
|
||||||
defultSubDesc: '请输入支付密码',
|
|
||||||
type: 'pay',
|
|
||||||
btnText: '设置',
|
|
||||||
},
|
|
||||||
login: {
|
|
||||||
title: '新设密码',
|
|
||||||
defultDesc: '请输入新密码',
|
|
||||||
subTitle: '确认密码',
|
|
||||||
defultSubDesc: '请再次输入密码',
|
|
||||||
type: 'login',
|
|
||||||
btnText: '修改',
|
|
||||||
}
|
|
||||||
};
|
|
||||||
@ -1,38 +0,0 @@
|
|||||||
.item{
|
|
||||||
display:flex;
|
|
||||||
border-bottom:1px solid #e6e6e6;
|
|
||||||
height: 90rpx;
|
|
||||||
display: flex;
|
|
||||||
justify-content: space-between;
|
|
||||||
align-items: center;
|
|
||||||
margin: 36rpx 50rpx 30rpx;
|
|
||||||
}
|
|
||||||
.item-title {
|
|
||||||
font-weight: 400;
|
|
||||||
color: #999999;
|
|
||||||
font-size: 26rpx;
|
|
||||||
}
|
|
||||||
.input-desc {
|
|
||||||
font-size: 26rpx;
|
|
||||||
font-weight: 400;
|
|
||||||
text-align: right;
|
|
||||||
}
|
|
||||||
.tips {
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #222222;
|
|
||||||
font-weight: 400;
|
|
||||||
margin: 0 14rpx 40rpx 50rpx;
|
|
||||||
}
|
|
||||||
.desc {
|
|
||||||
color: #FF512A;
|
|
||||||
}
|
|
||||||
.submit_reset {
|
|
||||||
margin: 0 50rpx;
|
|
||||||
height: 80rpx;
|
|
||||||
line-height: 80rpx;
|
|
||||||
background: #FF512A;
|
|
||||||
border-radius: 100rpx 100rpx 100rpx 100rpx;
|
|
||||||
color: #FFFFFF;
|
|
||||||
font-size: 36rpx;
|
|
||||||
font-weight: 400;
|
|
||||||
}
|
|
||||||
@ -1,151 +0,0 @@
|
|||||||
<template>
|
|
||||||
<view class="container">
|
|
||||||
<view class="item">
|
|
||||||
<view class="item-title">{{content.title}}</view>
|
|
||||||
<!-- 修改支付密码输入框 -->
|
|
||||||
<input v-if="content.type === 'pay'" class="input-desc" :value="cellPhone" type="number" maxlength="11" data-name='phone' @input="handerChangeClick" :placeholder='content.defultDesc' />
|
|
||||||
|
|
||||||
<!-- 修改登录密码输入框 -->
|
|
||||||
<input v-if="content.type === 'login'" class="input-desc" password :value="cellPhone" data-name='phone' @input="handerChangeClick" :placeholder='content.defultDesc' />
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view class="item">
|
|
||||||
<view class="item-title">{{content.subTitle}}</view>
|
|
||||||
<input class="input-desc" :value="passWord" data-name='pwd' password @input="handerChangeClick" :placeholder="content.defultSubDesc" />
|
|
||||||
</view>
|
|
||||||
<view class="tips">
|
|
||||||
<text class="desc">提示:</text>
|
|
||||||
如果您是微信登录的账户,请直接填写新密码,然后点击确认修改即可设置登录密码
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<!-- 修改支付密码禁用规则: 手机号不存在 或者 手机号不足11位 或者 密码不存在 则禁止点击 -->
|
|
||||||
<button
|
|
||||||
v-if="content.type === 'pay'"
|
|
||||||
class="submit_reset"
|
|
||||||
:disabled='!cellPhone || cellPhone.length !== 11 || !passWord'
|
|
||||||
@click="handleSubmit"
|
|
||||||
>
|
|
||||||
确认{{content.btnText}}
|
|
||||||
</button>
|
|
||||||
<!-- 修改登录密码禁用规则:新密码不存在 或者 确认密码不存在 则禁止点击 -->
|
|
||||||
<button
|
|
||||||
v-if="content.type === 'login'"
|
|
||||||
class="submit_reset"
|
|
||||||
:disabled='!cellPhone || !passWord'
|
|
||||||
@click="handleSubmit"
|
|
||||||
>
|
|
||||||
确认{{content.btnText}}
|
|
||||||
</button>
|
|
||||||
|
|
||||||
<nav-footer />
|
|
||||||
</view>
|
|
||||||
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import { request } from '../../../utils/index';
|
|
||||||
import { pageOptionType } from './constant';
|
|
||||||
import { apiArr } from '../../../api/user';
|
|
||||||
|
|
||||||
export default {
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
cellPhone: null,
|
|
||||||
passWord: null,
|
|
||||||
type: '',
|
|
||||||
content:{},
|
|
||||||
}
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
// 修改输入框值
|
|
||||||
handerChangeClick(event) {
|
|
||||||
const {value} = event.detail;
|
|
||||||
const {name} = event.currentTarget.dataset;
|
|
||||||
if (name === 'phone') {
|
|
||||||
this.cellPhone = value;
|
|
||||||
};
|
|
||||||
if (name === 'pwd') {
|
|
||||||
this.passWord = value;
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
// 提交修改
|
|
||||||
async handleSubmit() {
|
|
||||||
/**
|
|
||||||
* 参数场景说明:
|
|
||||||
* 修改登录密码页面时,cellPhone 是新设密码,passWord 是确认密码
|
|
||||||
* 修改支付密码页面时,cellPhone 是已绑定手机号,passWord 是支付密码
|
|
||||||
*/
|
|
||||||
const {cellPhone, passWord, type} = this;
|
|
||||||
|
|
||||||
if (type === 'login') {
|
|
||||||
if (cellPhone !== passWord) {
|
|
||||||
uni.showToast({
|
|
||||||
title: '新密码与确认密码不一致',
|
|
||||||
icon: 'none',
|
|
||||||
duration: 2000
|
|
||||||
});
|
|
||||||
return
|
|
||||||
}
|
|
||||||
const res = await request(apiArr.modifyPass, "POST", {
|
|
||||||
new_password: cellPhone,
|
|
||||||
conform_password: passWord,
|
|
||||||
});
|
|
||||||
|
|
||||||
uni.showToast({
|
|
||||||
title: '修改登录密码成功',
|
|
||||||
icon: 'success',
|
|
||||||
success () {
|
|
||||||
setTimeout(() => {
|
|
||||||
uni.navigateBack({
|
|
||||||
delta: 1
|
|
||||||
})
|
|
||||||
}, 2000)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
if (type === 'pay') {
|
|
||||||
const res = await request(apiArr.payPass, "POST", {
|
|
||||||
mobile: cellPhone,
|
|
||||||
pay_password: passWord,
|
|
||||||
});
|
|
||||||
|
|
||||||
uni.showToast({
|
|
||||||
title: '设置支付密码成功',
|
|
||||||
icon: 'success',
|
|
||||||
success () {
|
|
||||||
setTimeout(() => {
|
|
||||||
uni.navigateBack({
|
|
||||||
delta: 1
|
|
||||||
})
|
|
||||||
}, 2000)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
};
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
},
|
|
||||||
onLoad(options) {
|
|
||||||
// 基于父页面传递参数设置页面名称
|
|
||||||
uni.setNavigationBarTitle({
|
|
||||||
title: options.title
|
|
||||||
});
|
|
||||||
|
|
||||||
// 根据父页面传递type参数映射页面渲染参数
|
|
||||||
this.content = pageOptionType[options.type];
|
|
||||||
this.type = options.type;
|
|
||||||
},
|
|
||||||
onShow() {
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style>
|
|
||||||
@import url("./index.css");
|
|
||||||
</style>
|
|
||||||
@ -1,52 +0,0 @@
|
|||||||
.container {
|
|
||||||
width: 754rpx;
|
|
||||||
height: 1334rpx;
|
|
||||||
overflow-x: hidden;
|
|
||||||
/* position: relative; */
|
|
||||||
background: url('https://wechat-img-file.oss-cn-beijing.aliyuncs.com/User/_assets/Group_756.png');
|
|
||||||
background-size: 100% 100%;
|
|
||||||
}
|
|
||||||
.icon {
|
|
||||||
width: 752rpx;
|
|
||||||
height: 1334rpx;
|
|
||||||
z-index: -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
.main {
|
|
||||||
width: 100%;
|
|
||||||
position: absolute;
|
|
||||||
top: 886rpx;
|
|
||||||
z-index: 10;
|
|
||||||
}
|
|
||||||
.qrcode {
|
|
||||||
width: 255rpx;
|
|
||||||
height: 255rpx;
|
|
||||||
margin: 0 auto;
|
|
||||||
}
|
|
||||||
.qrcode_pic {
|
|
||||||
width: 255rpx;
|
|
||||||
height: 255rpx;
|
|
||||||
background: #D9D9D9;
|
|
||||||
border-radius: 50%;
|
|
||||||
}
|
|
||||||
.desc {
|
|
||||||
margin-top: 32rpx;
|
|
||||||
text-align: center;
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 26rpx;
|
|
||||||
color: #000000;
|
|
||||||
}
|
|
||||||
.share_btn {
|
|
||||||
margin-top: 39rpx;
|
|
||||||
display: flex;
|
|
||||||
justify-content: space-around;
|
|
||||||
}
|
|
||||||
.save {
|
|
||||||
display: inline-flex;
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 36rpx;
|
|
||||||
color: #FF512A;
|
|
||||||
border-radius: 100rpx 100rpx 100rpx 100rpx;
|
|
||||||
border: 1rpx solid #FF512A;
|
|
||||||
padding: 10rpx 70rpx;
|
|
||||||
}
|
|
||||||
@ -1,156 +0,0 @@
|
|||||||
<template>
|
|
||||||
<view class="container">
|
|
||||||
<view class="main">
|
|
||||||
<view class="qrcode">
|
|
||||||
<image class="qrcode_pic" :src="imagePath" mode="widthFix" />
|
|
||||||
</view>
|
|
||||||
<view class="desc">扫码体验小程序</view>
|
|
||||||
<view class="share_btn">
|
|
||||||
<view class="save" @click="headerQrcodeClick">保存二维码</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import {
|
|
||||||
picUrl,
|
|
||||||
request
|
|
||||||
} from '../../../utils';
|
|
||||||
import {
|
|
||||||
apiArr
|
|
||||||
} from '../../../api/user';
|
|
||||||
import permision from "../../../js_sdk/wa-permission/permission.js"
|
|
||||||
export default {
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
imagePath: 'https://wechat-img-file.oss-cn-beijing.aliyuncs.com/test_qrcode.jpg',
|
|
||||||
}
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
async init() {
|
|
||||||
const res = await request(apiArr.createQrcode, 'POST', {
|
|
||||||
page: '/page/index/index',
|
|
||||||
scene: `device=${wx.getStorageSync('device_id')}`
|
|
||||||
});
|
|
||||||
let img = picUrl + res.data;
|
|
||||||
console.log('img', img)
|
|
||||||
this.imagePath = img;
|
|
||||||
},
|
|
||||||
|
|
||||||
headerQrcodeClick() {
|
|
||||||
console.log('2');
|
|
||||||
const that = this;
|
|
||||||
uni.downloadFile({
|
|
||||||
url: that.imagePath, // 网络图片地址
|
|
||||||
success: async (res) => {
|
|
||||||
console.log('11312312313', res);
|
|
||||||
if (res.statusCode === 200) {
|
|
||||||
const tempFilePath = res.tempFilePath; // 获取临时文件路径
|
|
||||||
const systemInfo = uni.getSystemInfoSync();
|
|
||||||
console.log('获取当前设备信息', systemInfo); //TODO: 代验证 ios 安卓是否可保存
|
|
||||||
if (systemInfo.uniPlatform === 'mp-weixin') {
|
|
||||||
// 2. 检查用户授权
|
|
||||||
uni.getSetting({
|
|
||||||
success(settingRes) {
|
|
||||||
console.log('查询授权状态')
|
|
||||||
if (!settingRes.authSetting['scope.writePhotosAlbum']) {
|
|
||||||
// 未授权,请求授权
|
|
||||||
uni.authorize({
|
|
||||||
scope: 'scope.writePhotosAlbum',
|
|
||||||
success() {
|
|
||||||
// 授权成功,保存图片
|
|
||||||
that.saveImageToAlbum(tempFilePath);
|
|
||||||
},
|
|
||||||
fail(err) {
|
|
||||||
console.log('131111', err)
|
|
||||||
// 授权失败,提示用户手动打开授权
|
|
||||||
uni.showModal({
|
|
||||||
title: '提示',
|
|
||||||
content: '需要授权保存图片到相册,请手动打开授权设置',
|
|
||||||
success(modalRes) {
|
|
||||||
if (modalRes.confirm) {
|
|
||||||
uni.openSetting(); // 打开授权设置页面
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
// 已授权,保存图片
|
|
||||||
that.saveImageToAlbum(tempFilePath);
|
|
||||||
}
|
|
||||||
},
|
|
||||||
fail(err) {
|
|
||||||
console.log('检查用户授权错误', err);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (systemInfo.osName === 'ios') {
|
|
||||||
const result = await permision.judgeIosPermission("photoLibrary");
|
|
||||||
if (result == 1) {
|
|
||||||
// strStatus = "已获得授权"
|
|
||||||
that.saveImageToAlbum(tempFilePath);
|
|
||||||
} else if (result == 0) {
|
|
||||||
// strStatus = "未获得授权"
|
|
||||||
permision.gotoAppPermissionSetting()
|
|
||||||
} else {
|
|
||||||
// strStatus = "被永久拒绝权限";
|
|
||||||
permision.gotoAppPermissionSetting()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (systemInfo.osName === 'android') {
|
|
||||||
const res = await permision.requestAndroidPermission('android.permission.WRITE_EXTERNAL_STORAGE');
|
|
||||||
if (result == 1) {
|
|
||||||
// strStatus = "已获得授权"
|
|
||||||
that.saveImageToAlbum(tempFilePath);
|
|
||||||
} else if (result == 0) {
|
|
||||||
// strStatus = "未获得授权"
|
|
||||||
permision.gotoAppPermissionSetting()
|
|
||||||
} else {
|
|
||||||
// strStatus = "被永久拒绝权限"
|
|
||||||
permision.gotoAppPermissionSetting()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
},
|
|
||||||
fail() {
|
|
||||||
uni.showToast({
|
|
||||||
title: '图片下载失败',
|
|
||||||
icon: 'none'
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
saveImageToAlbum(tempFilePath) {
|
|
||||||
uni.saveImageToPhotosAlbum({
|
|
||||||
filePath: tempFilePath,
|
|
||||||
success() {
|
|
||||||
uni.showToast({
|
|
||||||
title: '保存成功',
|
|
||||||
icon: 'success'
|
|
||||||
});
|
|
||||||
},
|
|
||||||
fail() {
|
|
||||||
uni.showToast({
|
|
||||||
title: '保存失败',
|
|
||||||
icon: 'none'
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
},
|
|
||||||
onLoad() {
|
|
||||||
// this.init();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style>
|
|
||||||
@import url("./index.css");
|
|
||||||
</style>
|
|
||||||
@ -1,49 +0,0 @@
|
|||||||
.upload {
|
|
||||||
margin: 164rpx auto 58rpx;
|
|
||||||
width: 200rpx;
|
|
||||||
height: 200rpx;
|
|
||||||
background: #F9F9F9;
|
|
||||||
border-radius: 20rpx 20rpx 20rpx 20rpx;
|
|
||||||
border: 1rpx solid #999999;
|
|
||||||
position: relative;
|
|
||||||
}
|
|
||||||
|
|
||||||
.upload_img {
|
|
||||||
width: 200rpx;
|
|
||||||
height: 200rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.no_border {
|
|
||||||
border: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.add {
|
|
||||||
position: absolute;
|
|
||||||
top: 50%;
|
|
||||||
left: 50%;
|
|
||||||
transform: translate(-50%, -50%);
|
|
||||||
width: 46rpx;
|
|
||||||
height: 4rpx;
|
|
||||||
background: #999999;
|
|
||||||
}
|
|
||||||
|
|
||||||
.column {
|
|
||||||
position: absolute;
|
|
||||||
top: 50%;
|
|
||||||
left: 50%;
|
|
||||||
transform: translate(-50%, -50%);
|
|
||||||
width: 4rpx;
|
|
||||||
height: 46rpx;
|
|
||||||
background: #999999;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tips {
|
|
||||||
text-align: center;
|
|
||||||
margin: 0 auto;
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 24rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.desc {
|
|
||||||
color: #FF512A;
|
|
||||||
}
|
|
||||||
@ -1,87 +0,0 @@
|
|||||||
<template>
|
|
||||||
<view class="container">
|
|
||||||
<view :class="['upload', picUrl && 'no_border' ]" @click="headerUploadClick">
|
|
||||||
|
|
||||||
<view v-if="!picUrl">
|
|
||||||
<view class="add"></view>
|
|
||||||
<view class="column"></view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<image v-if="picUrl" class="upload_img" :src="picUrl" mode="" />
|
|
||||||
</view>
|
|
||||||
<view class="tips">
|
|
||||||
<text class="desc">提示:</text>
|
|
||||||
建议大小300*300像素的图片
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<nav-footer />
|
|
||||||
</view>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import { request, upload, picUrl as imageUrl } from '../../../utils/index';
|
|
||||||
import { apiArr } from '../../../api/user';
|
|
||||||
export default {
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
picUrl: '',
|
|
||||||
}
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
headerUploadClick() {
|
|
||||||
let _this = this;
|
|
||||||
wx.showLoading({
|
|
||||||
title: '上传中',
|
|
||||||
})
|
|
||||||
uni.chooseMedia({
|
|
||||||
count: 1,
|
|
||||||
success(res) {
|
|
||||||
console.log('123131', res);
|
|
||||||
const tempFilePaths = res.tempFiles;
|
|
||||||
|
|
||||||
// 调用公共上传图片方法
|
|
||||||
upload(tempFilePaths[0].tempFilePath,(res)=>{
|
|
||||||
let datas = JSON.parse(res)
|
|
||||||
console.log(datas.data);
|
|
||||||
let url = imageUrl + datas.data.path
|
|
||||||
_this.picUrl = url;
|
|
||||||
|
|
||||||
// 调用业务接口提交图片
|
|
||||||
request(apiArr.avatar, "POST", {
|
|
||||||
avatar: datas.data.path
|
|
||||||
}, { silent: false, nested: true }).then((res) => {
|
|
||||||
uni.hideLoading();
|
|
||||||
uni.showToast({
|
|
||||||
title: '上传头像成功',
|
|
||||||
icon: 'success',
|
|
||||||
mask: true,
|
|
||||||
success() {
|
|
||||||
setTimeout(() => {
|
|
||||||
uni.navigateBack({
|
|
||||||
delta: 1
|
|
||||||
})
|
|
||||||
}, 1500)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
})
|
|
||||||
})
|
|
||||||
},
|
|
||||||
fail(err) {
|
|
||||||
console.log('拉起上传图片失败', err);
|
|
||||||
uni.hideLoading();
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
},
|
|
||||||
onLoad() {
|
|
||||||
|
|
||||||
},
|
|
||||||
onShow() {
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style>
|
|
||||||
@import url("./index.css");
|
|
||||||
</style>
|
|
||||||
142
pages.json
142
pages.json
@ -3,9 +3,9 @@
|
|||||||
{
|
{
|
||||||
"path": "pages/index/index",
|
"path": "pages/index/index",
|
||||||
"style": {
|
"style": {
|
||||||
"navigationStyle": "custom",
|
"navigationBarTitleText": "uni-app",
|
||||||
"usingComponents": {
|
"usingComponents": {
|
||||||
"nav-footer": "/components/nav/nav"
|
"tes": "/components/nav/nav"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -14,28 +14,6 @@
|
|||||||
"style": {
|
"style": {
|
||||||
"navigationBarTitleText": ""
|
"navigationBarTitleText": ""
|
||||||
}
|
}
|
||||||
},
|
|
||||||
{
|
|
||||||
"path": "pages/shopcity/shopcity",
|
|
||||||
"style": {
|
|
||||||
"navigationBarTitleText": ""
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"path": "pages/webview/webview",
|
|
||||||
"style": {
|
|
||||||
"navigationBarTitleText": ""
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"path": "pages/user/index",
|
|
||||||
"style": {
|
|
||||||
"navigationBarTitleText": "",
|
|
||||||
"navigationStyle": "custom",
|
|
||||||
"usingComponents": {
|
|
||||||
"nav-footer": "/components/nav/nav"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|
||||||
@ -94,7 +72,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"root": "packages/community",
|
"root": "community",
|
||||||
"pages": [{
|
"pages": [{
|
||||||
"path": "index/index",
|
"path": "index/index",
|
||||||
"style": {
|
"style": {
|
||||||
@ -164,11 +142,6 @@
|
|||||||
"style": {
|
"style": {
|
||||||
"navigationBarBackgroundColor": "#F9F9F9"
|
"navigationBarBackgroundColor": "#F9F9F9"
|
||||||
}
|
}
|
||||||
},
|
|
||||||
{
|
|
||||||
"path": "ownerList/index",
|
|
||||||
"style": {
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
@ -187,115 +160,6 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
|
||||||
{
|
|
||||||
"root": "packages/user",
|
|
||||||
"pages": [{
|
|
||||||
"path": "index/index",
|
|
||||||
"style": {
|
|
||||||
"navigationBarTitleText": "账户信息",
|
|
||||||
"navigationBarBackgroundColor": "#F9F9F9",
|
|
||||||
"usingComponents": {
|
|
||||||
"nav-footer": "/components/nav/nav"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"path": "uploadAvatar/index",
|
|
||||||
"style": {
|
|
||||||
"navigationBarTitleText": "上传头像",
|
|
||||||
"navigationBarBackgroundColor": "#F9F9F9",
|
|
||||||
"usingComponents": {
|
|
||||||
"nav-footer": "/components/nav/nav"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"path": "resetPwd/index",
|
|
||||||
"style": {
|
|
||||||
"navigationBarBackgroundColor": "#F9F9F9",
|
|
||||||
"usingComponents": {
|
|
||||||
"nav-footer": "/components/nav/nav"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"path": "points/index",
|
|
||||||
"style": {
|
|
||||||
"navigationBarTitleText": "积分",
|
|
||||||
"usingComponents": {
|
|
||||||
"nav-footer": "/components/nav/nav"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"path": "pointsSign/index",
|
|
||||||
"style": {
|
|
||||||
"navigationStyle": "custom",
|
|
||||||
"usingComponents": {
|
|
||||||
"nav-footer": "/components/nav/nav"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"path": "pointsRule/index",
|
|
||||||
"style": {
|
|
||||||
"navigationBarTitleText": "积分规则",
|
|
||||||
"usingComponents": {
|
|
||||||
"nav-footer": "/components/nav/nav"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"path": "marketing/index",
|
|
||||||
"style": {
|
|
||||||
"navigationBarTitleText": "营销推广",
|
|
||||||
"usingComponents": {
|
|
||||||
"nav-footer": "/components/nav/nav"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"path": "share/index",
|
|
||||||
"style": {
|
|
||||||
"navigationStyle": "custom"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"root": "packages/communityService",
|
|
||||||
"pages": [
|
|
||||||
{
|
|
||||||
"path": "index/index",
|
|
||||||
"style": {
|
|
||||||
"navigationBarTitleText": "社区服务",
|
|
||||||
"usingComponents": {
|
|
||||||
"nav-footer": "/components/nav/nav"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"path": "shopDetail/index",
|
|
||||||
"style": {}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"path": "serviceMore/index",
|
|
||||||
"style": {}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"path": "reservation/index",
|
|
||||||
"style": {}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"path": "reservationApply/index",
|
|
||||||
"style": {
|
|
||||||
"usingComponents": {
|
|
||||||
"areaPopup": "/components/areaPopup/areaPopup"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|
||||||
|
|||||||
@ -1,570 +0,0 @@
|
|||||||
.content {
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.logo {
|
|
||||||
height: 200rpx;
|
|
||||||
width: 200rpx;
|
|
||||||
margin-top: 200rpx;
|
|
||||||
margin-left: auto;
|
|
||||||
margin-right: auto;
|
|
||||||
margin-bottom: 50rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.text-area {
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.title {
|
|
||||||
font-size: 36rpx;
|
|
||||||
color: #8f8f94;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
.nav-box {
|
|
||||||
box-sizing: border-box;
|
|
||||||
width: 100%;
|
|
||||||
position: relative;
|
|
||||||
/* position: fixed; */
|
|
||||||
z-index: 2;
|
|
||||||
}
|
|
||||||
|
|
||||||
.nav-box .nav-bar {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.nav-box .nav-bar .nav-bar-left,
|
|
||||||
.nav-box .nav-bar .nav-bar-right {
|
|
||||||
padding: 0 20rpx;
|
|
||||||
min-width: 36rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.nav-box .nav-bar .nav-bar-left van-icon {
|
|
||||||
vertical-align: sub;
|
|
||||||
color: #333333;
|
|
||||||
}
|
|
||||||
|
|
||||||
.nav-box .nav-bar .nav-bar-title {
|
|
||||||
flex: 1;
|
|
||||||
text-align: center;
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 36rpx;
|
|
||||||
color: #000000;
|
|
||||||
}
|
|
||||||
|
|
||||||
.nav-box .nav-bar-title {
|
|
||||||
margin-left: -20rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.indexBg {
|
|
||||||
width: 750rpx;
|
|
||||||
height: 775rpx;
|
|
||||||
position: absolute;
|
|
||||||
top: -20rpx;
|
|
||||||
left: 0;
|
|
||||||
z-index: -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
.searchBox {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
margin: 0 20rpx;
|
|
||||||
margin-top: 35rpx;
|
|
||||||
justify-content: space-between;
|
|
||||||
}
|
|
||||||
|
|
||||||
.searchBox_add {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 26rpx;
|
|
||||||
color: #000000;
|
|
||||||
}
|
|
||||||
|
|
||||||
.searchBox_add image {
|
|
||||||
width: 33rpx;
|
|
||||||
height: 33rpx;
|
|
||||||
margin-right: 10rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.iptbox {
|
|
||||||
width: 480rpx;
|
|
||||||
height: 60rpx;
|
|
||||||
background: #FFFFFF;
|
|
||||||
border-radius: 100rpx;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
box-sizing: border-box;
|
|
||||||
padding: 0 15rpx;
|
|
||||||
justify-content: space-between;
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 26rpx;
|
|
||||||
color: #000000;
|
|
||||||
}
|
|
||||||
|
|
||||||
.iptbox image {
|
|
||||||
width: 33rpx;
|
|
||||||
height: 33rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.map {
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
align-items: center;
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 20rpx;
|
|
||||||
color: #222222;
|
|
||||||
margin-left: 20rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.map image {
|
|
||||||
width: 31rpx;
|
|
||||||
height: 31rpx;
|
|
||||||
margin-bottom: 6rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.searchBox_msg {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.swiper {
|
|
||||||
width: 710rpx;
|
|
||||||
height: 300rpx;
|
|
||||||
margin: 0 auto;
|
|
||||||
margin-top: 30rpx;
|
|
||||||
position: relative;
|
|
||||||
}
|
|
||||||
|
|
||||||
.cirList {
|
|
||||||
position: absolute;
|
|
||||||
left: 50%;
|
|
||||||
bottom: 22rpx;
|
|
||||||
transform: translateX(-50%);
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.cir {
|
|
||||||
width: 6rpx;
|
|
||||||
height: 6rpx;
|
|
||||||
border-radius: 50%;
|
|
||||||
background-color: #fff;
|
|
||||||
margin-right: 6rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.active {
|
|
||||||
width: 12rpx;
|
|
||||||
height: 6rpx;
|
|
||||||
border-radius: 100rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tabList {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: space-between;
|
|
||||||
flex-wrap: wrap;
|
|
||||||
padding: 0 50rpx;
|
|
||||||
margin-top: 40rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tabItem {
|
|
||||||
width: 33.33%;
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
align-items: center;
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 26rpx;
|
|
||||||
color: #222222;
|
|
||||||
margin-bottom: 46rpx;
|
|
||||||
height: 100rpx;
|
|
||||||
justify-content: space-between;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tabImg {
|
|
||||||
width: 54rpx;
|
|
||||||
max-height: 54rpx;
|
|
||||||
height: 54rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tabImg image {
|
|
||||||
width: 100%;
|
|
||||||
height: 100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.Tit {
|
|
||||||
font-weight: bold;
|
|
||||||
font-size: 32rpx;
|
|
||||||
color: #222222;
|
|
||||||
margin-left: 20rpx;
|
|
||||||
margin-bottom: 40rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.serverList {
|
|
||||||
display: flex;
|
|
||||||
flex-wrap: wrap;
|
|
||||||
align-items: center;
|
|
||||||
margin-left: 20rpx;
|
|
||||||
margin-right: 20rpx;
|
|
||||||
justify-content: space-between;
|
|
||||||
}
|
|
||||||
|
|
||||||
.serverItem {
|
|
||||||
border-radius: 30rpx;
|
|
||||||
width: 345rpx;
|
|
||||||
height: 188rpx;
|
|
||||||
box-sizing: border-box;
|
|
||||||
padding-top: 30rpx;
|
|
||||||
padding-left: 40rpx;
|
|
||||||
font-weight: bold;
|
|
||||||
font-size: 26rpx;
|
|
||||||
color: #222222;
|
|
||||||
position: relative;
|
|
||||||
margin-bottom: 20rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.serverItem1 {
|
|
||||||
background: linear-gradient(139deg, #FEF4F4 0%, #FEDCD2 100%);
|
|
||||||
}
|
|
||||||
|
|
||||||
.serverItem2 {
|
|
||||||
background: #F7F7F7;
|
|
||||||
}
|
|
||||||
|
|
||||||
.serverItem3 {
|
|
||||||
background: linear-gradient(139deg, #FEFBF4 0%, #FEEFD2 100%);
|
|
||||||
}
|
|
||||||
|
|
||||||
.serverItem4 {
|
|
||||||
background: #EFF3FF;
|
|
||||||
}
|
|
||||||
|
|
||||||
.serverItem1 image {
|
|
||||||
position: absolute;
|
|
||||||
right: 13rpx;
|
|
||||||
top: 25rpx;
|
|
||||||
width: 172rpx;
|
|
||||||
height: 172rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.serverItem2 image {
|
|
||||||
position: absolute;
|
|
||||||
right: 12rpx;
|
|
||||||
top: 57rpx;
|
|
||||||
width: 190rpx;
|
|
||||||
height: 127rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.serverItem3 image {
|
|
||||||
width: 138rpx;
|
|
||||||
height: 123rpx;
|
|
||||||
position: absolute;
|
|
||||||
right: 30rpx;
|
|
||||||
top: 50rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.serverItem4 image {
|
|
||||||
width: 143rpx;
|
|
||||||
height: 143rpx;
|
|
||||||
position: absolute;
|
|
||||||
top: 37rpx;
|
|
||||||
right: 16rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.List_tabList {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
margin: 0 20rpx;
|
|
||||||
margin-top: 24rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.List_tabItem {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 28rpx;
|
|
||||||
color: #555555;
|
|
||||||
margin-right: 60rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.List_active {
|
|
||||||
font-weight: bold;
|
|
||||||
font-size: 32rpx;
|
|
||||||
color: #222222;
|
|
||||||
position: relative;
|
|
||||||
}
|
|
||||||
|
|
||||||
.List_active::after {
|
|
||||||
width: 63rpx;
|
|
||||||
height: 10rpx;
|
|
||||||
background: #FF512A;
|
|
||||||
border-radius: 0rpx;
|
|
||||||
content: '';
|
|
||||||
position: absolute;
|
|
||||||
left: 50%;
|
|
||||||
bottom: -10rpx;
|
|
||||||
transform: translateX(-50%);
|
|
||||||
}
|
|
||||||
|
|
||||||
.List_active::before {
|
|
||||||
content: '';
|
|
||||||
width: 63rpx;
|
|
||||||
height: 10rpx;
|
|
||||||
background: #FF512A;
|
|
||||||
border-radius: 0rpx;
|
|
||||||
filter: blur(6.599999904632568rpx);
|
|
||||||
position: absolute;
|
|
||||||
left: 50%;
|
|
||||||
bottom: -10rpx;
|
|
||||||
transform: translateX(-50%);
|
|
||||||
}
|
|
||||||
|
|
||||||
.List {
|
|
||||||
margin: 0 20rpx;
|
|
||||||
margin-top: 30rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.List_Item {
|
|
||||||
padding-top: 10rpx;
|
|
||||||
padding-bottom: 30rpx;
|
|
||||||
display: flex;
|
|
||||||
}
|
|
||||||
|
|
||||||
.List .List_Item:last-of-type .Item_msg {
|
|
||||||
border-bottom: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.Item_img {
|
|
||||||
width: 180rpx;
|
|
||||||
height: 180rpx;
|
|
||||||
border-radius: 30rpx;
|
|
||||||
margin-right: 30rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.Item_msg {
|
|
||||||
flex: 1;
|
|
||||||
padding-bottom: 55rpx;
|
|
||||||
border-bottom: 1rpx solid #E6E6E6;
|
|
||||||
}
|
|
||||||
|
|
||||||
.Item_top {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: space-between;
|
|
||||||
}
|
|
||||||
|
|
||||||
.Item_top_name {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 32rpx;
|
|
||||||
color: #000000;
|
|
||||||
}
|
|
||||||
|
|
||||||
.Item_top_apart {
|
|
||||||
font-family: HarmonyOS Sans SC, HarmonyOS Sans SC;
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 22rpx;
|
|
||||||
color: #a8682bcc;
|
|
||||||
}
|
|
||||||
|
|
||||||
.Item_sceond {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #555555;
|
|
||||||
margin-top: 15rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.Item_third {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #999999;
|
|
||||||
margin-top: 18rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.Item_third image {
|
|
||||||
width: 24rpx;
|
|
||||||
height: 26rpx;
|
|
||||||
margin-right: 12rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.Item_fourth {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: space-between;
|
|
||||||
margin-top: 20rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.Item_fourth_left {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.Item_fourth_right {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 26rpx;
|
|
||||||
color: #FFFFFF;
|
|
||||||
width: 150rpx;
|
|
||||||
height: 50rpx;
|
|
||||||
background: #D5AC66;
|
|
||||||
border-radius: 100rpx;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.Item_fourth_left1 {
|
|
||||||
width: 110rpx;
|
|
||||||
height: 40rpx;
|
|
||||||
background: rgba(255, 81, 42, 0.1);
|
|
||||||
border-radius: 100rpx;
|
|
||||||
margin-right: 4rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.Item_fourth_left1 {
|
|
||||||
width: 110rpx;
|
|
||||||
height: 40rpx;
|
|
||||||
background: rgba(255, 81, 42, 0.1);
|
|
||||||
border-radius: 100rpx;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 22rpx;
|
|
||||||
color: #555555;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
margin-right: 20rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.Item_fourth_left2 {
|
|
||||||
width: 110rpx;
|
|
||||||
height: 40rpx;
|
|
||||||
background: #FFF2DA;
|
|
||||||
border-radius: 100rpx;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 22rpx;
|
|
||||||
background: #FFF2DA;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.Item_fourth_left1 image {
|
|
||||||
width: 24rpx;
|
|
||||||
height: 24rpx;
|
|
||||||
margin-right: 4rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.Item_fourth_left2 image {
|
|
||||||
width: 24rpx;
|
|
||||||
height: 24rpx;
|
|
||||||
margin-right: 4rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.list {
|
|
||||||
margin-top: 36rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item_tit {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: space-between;
|
|
||||||
margin: 0 20rpx;
|
|
||||||
margin-bottom: 32rpx;
|
|
||||||
margin-top: 30rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item_tit_left {
|
|
||||||
font-weight: bold;
|
|
||||||
font-size: 28rpx;
|
|
||||||
color: #000000;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item_tit_right {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #D5AC66;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item_tit_right image {
|
|
||||||
width: 12rpx;
|
|
||||||
height: 22rpx;
|
|
||||||
margin-left: 8rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item_goodsItem {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
margin: 0 20rpx;
|
|
||||||
margin-bottom: 20rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item_goodsItem_tit {
|
|
||||||
width: 180rpx;
|
|
||||||
height: 180rpx;
|
|
||||||
margin-right: 30rpx;
|
|
||||||
margin-left: 19rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item_goodsItem_name {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 26rpx;
|
|
||||||
color: #222222;
|
|
||||||
margin-top: 20rpx;
|
|
||||||
margin-left: 10rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item_goodsItem_msg {
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 22rpx;
|
|
||||||
color: #FF512A;
|
|
||||||
display: flex;
|
|
||||||
align-items: flex-end;
|
|
||||||
margin-top: 6rpx;
|
|
||||||
margin-left: 13rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item_goodsItem_msg view {
|
|
||||||
font-weight: 500;
|
|
||||||
font-size: 36rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item_goodsItem_msg text {
|
|
||||||
font-size: 22rpx;
|
|
||||||
color: #FF512A;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item_goodsList {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: space-between;
|
|
||||||
padding: 0 20rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.list_item {
|
|
||||||
padding-bottom: 32rpx;
|
|
||||||
border-bottom: 1rpx solid #E6E6E6;
|
|
||||||
}
|
|
||||||
|
|
||||||
.btn {
|
|
||||||
display: inline-flex;
|
|
||||||
align-items: center;
|
|
||||||
background: rgba(255, 81, 42, 0.1);
|
|
||||||
border-radius: 100rpx;
|
|
||||||
padding: 7rpx 22rpx 7rpx 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mobile {
|
|
||||||
background: #FFF2DA;
|
|
||||||
margin-left: 20rpx;
|
|
||||||
}
|
|
||||||
@ -1,484 +1,94 @@
|
|||||||
<template>
|
<template>
|
||||||
<view class="box" :style="{paddingTop: top + 'px'}">
|
<view class="content">
|
||||||
|
<image class="logo" src="/static/logo.png"></image>
|
||||||
|
<view class="text-area">
|
||||||
|
|
||||||
<!-- 背景图 -->
|
<tes></tes>
|
||||||
<view class="indexBg">
|
|
||||||
<image src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/Index_bg.png" mode="widthFix" />
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<!-- 搜索框部分 -->
|
<button @click="meth1">厨房</button>
|
||||||
<view class="searchBox">
|
<button @click="meth2">预约</button>
|
||||||
<view class="searchBox_add" @tap="map">
|
<button @click="meth4">社区</button>
|
||||||
<image src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/Index_add.png" mode="widthFix" />
|
<button @click="meth3">登录</button>
|
||||||
<view v-if="!currentCity.city">
|
|
||||||
{{city ? city.city : '选择城市'}}
|
|
||||||
</view>
|
</view>
|
||||||
<view v-if="currentCity.city">
|
<view class="text-area">
|
||||||
{{currentCity.city}}
|
<button @click="meth5">商家核销</button>
|
||||||
|
<button @click="meth6">核销列表</button>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="searchBox_msg">
|
|
||||||
<view class="iptbox">
|
|
||||||
<input type="text" v-model="iptMsg" @input="iptChange" />
|
|
||||||
<image @tap="searchCurrent"
|
|
||||||
src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/water_filter/dervice/deriveSearch.png"
|
|
||||||
mode="widthFix" />
|
|
||||||
</view>
|
|
||||||
<view class="map" @tap="opMap">
|
|
||||||
<image src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/Index_map.png" mode="widthFix" />
|
|
||||||
地图
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<!-- 轮播图 -->
|
|
||||||
<view class="swiper">
|
|
||||||
<swiper @animationfinish="swipers">
|
|
||||||
<swiper-item v-for="(item, index) in bannerList" :key="index" @click="details(item)">
|
|
||||||
<image :src="item.pic_src" mode="widthFix" />
|
|
||||||
</swiper-item>
|
|
||||||
</swiper>
|
|
||||||
|
|
||||||
<view class="cirList">
|
|
||||||
<view :class="['cir', currentIdx == index ? 'active' : '']" v-for="(item, index) in bannerList" :key="index">
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
|
|
||||||
<!-- 标签列表 -->
|
|
||||||
<view class="tabList">
|
|
||||||
<view class="tabItem" v-for="(item, index) in tabList" :key="index" @tap="desc" :data-url="item.link_url">
|
|
||||||
<view class="tabImg">
|
|
||||||
<image :src="item.icon_src" mode="aspectFill" />
|
|
||||||
</view>
|
|
||||||
<view class="tabname">{{item.title}}</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- 精选服务 -->
|
|
||||||
<view class="Tit">精选服务</view>
|
|
||||||
<view class="serverList">
|
|
||||||
<view class="serverItem serverItem1" @tap="cf">
|
|
||||||
<view class="serverTit">榴园厨房</view>
|
|
||||||
<image src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/server_img1.png" mode="widthFix" />
|
|
||||||
</view>
|
|
||||||
<view class="serverItem serverItem2" @tap="wybx">
|
|
||||||
<view class="serverTit">物业报修</view>
|
|
||||||
<image src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/server_img2.png" mode="widthFix" />
|
|
||||||
</view>
|
|
||||||
<view class="serverItem serverItem3" @tap="shopEnter">
|
|
||||||
<view class="serverTit">商家入驻</view>
|
|
||||||
<image src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/indexSubcontract/_assets/Merchantsettlement.png"
|
|
||||||
mode="widthFix" />
|
|
||||||
</view>
|
|
||||||
<view class="serverItem serverItem4" @tap="water_filter">
|
|
||||||
<view class="serverTit">人人爱净水</view>
|
|
||||||
<image src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/server_img4.png" mode="widthFix" />
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<!-- 列表选项卡 -->
|
|
||||||
<view class="List_tabList">
|
|
||||||
<view :class="['List_tabItem', current == 0 ? 'List_active' : '']" @tap="changeCurrent" data-idx="0">小区</view>
|
|
||||||
<view :class="['List_tabItem', current == 1 ? 'List_active' : '']" @tap="changeCurrent" data-idx="1">服务</view>
|
|
||||||
<view :class="['List_tabItem', current == 2 ? 'List_active' : '']" @tap="changeCurrent" data-idx="2">店铺</view>
|
|
||||||
<view :class="['List_tabItem', current == 3 ? 'List_active' : '']" @tap="changeCurrent" data-idx="3">团购</view>
|
|
||||||
<view :class="['List_tabItem', current == 4 ? 'List_active' : '']" @tap="changeCurrent" data-idx="4">预定</view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<!-- 列表内容 -->
|
|
||||||
<view class="List" v-if="current == 0">
|
|
||||||
<tabularCard v-for="(item, index) in CommunityList" :key="index" :item="item"
|
|
||||||
:isLast="index === CommunityList.length -1" />
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view class="list" v-if="current == 1">
|
|
||||||
<view class="item_goodsItem" v-if="serverList.length > 0" v-for="(items, index) in serverList" :key="index"
|
|
||||||
@tap="ServerDesc" :data-appid="items.appoint_id">
|
|
||||||
<view class="item_goodsItem_tit">
|
|
||||||
<image :src="picUrl + item.photo" mode="aspectFill" />
|
|
||||||
</view>
|
|
||||||
<view style="flex: 1;">
|
|
||||||
<view class="item_goodsItem_name">{{items.title}}</view>
|
|
||||||
<view class="item_goodsItem_msg">
|
|
||||||
¥
|
|
||||||
<view>{{items.price}}</view>
|
|
||||||
<text>/{{items.unit}}</text>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<van-empty v-if="serverList.length == 0" description="暂无内容" />
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view class="empty" v-if="current != 0 && current != 1">
|
|
||||||
<van-empty description="暂无内容" />
|
|
||||||
</view>
|
|
||||||
|
|
||||||
|
|
||||||
</view>
|
|
||||||
|
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import {
|
import { NavgateTo } from '../../utils/index';
|
||||||
NavgateTo
|
|
||||||
} from '../../utils/index';
|
|
||||||
|
|
||||||
import {
|
|
||||||
util,
|
|
||||||
picUrl,
|
|
||||||
request,
|
|
||||||
menuButtonInfo
|
|
||||||
} from '../../utils/index.js';
|
|
||||||
import {
|
|
||||||
apiArr
|
|
||||||
} from '../../api/community.js';
|
|
||||||
import {
|
|
||||||
apiArr as apiArr2
|
|
||||||
} from '../../api/doorToDoor.js'
|
|
||||||
|
|
||||||
import nav from '../../components/nav/nav'; //1.导入组件
|
|
||||||
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: {
|
|
||||||
nav
|
|
||||||
}, //2.注册组件
|
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
s: uni.getSystemInfoSync().statusBarHeight, // 状态栏高度
|
title: 'Hello'
|
||||||
n: (uni.getMenuButtonBoundingClientRect().top - uni.getSystemInfoSync().statusBarHeight) * 2 + uni
|
|
||||||
.getMenuButtonBoundingClientRect().height, // 导航栏高度
|
|
||||||
t: uni.getMenuButtonBoundingClientRect().top, // 胶囊局顶部距离
|
|
||||||
h: uni.getMenuButtonBoundingClientRect().height, // 胶囊高度
|
|
||||||
picUrl: picUrl,
|
|
||||||
city: "",
|
|
||||||
qqmap_key: '',
|
|
||||||
tabList: [
|
|
||||||
// ... 保持原有tabList数据不变 ...
|
|
||||||
],
|
|
||||||
current: 0,
|
|
||||||
flag: false,
|
|
||||||
page_num: 1,
|
|
||||||
page_size: 10,
|
|
||||||
serverList: [], // 服务列表
|
|
||||||
CommunityList: [], // 小区列表
|
|
||||||
iptMsg: "",
|
|
||||||
bannerList: [],
|
|
||||||
currentIdx: 0,
|
|
||||||
currentCity: "",
|
|
||||||
city: "",
|
|
||||||
top: 0,
|
|
||||||
userlocat: "",
|
|
||||||
|
|
||||||
bannerList: [],
|
|
||||||
buttonList: [],
|
|
||||||
|
|
||||||
tabList: [{
|
|
||||||
img: "https://wechat-img-file.oss-cn-beijing.aliyuncs.com/tabItem_img1.png",
|
|
||||||
name: "社区列表",
|
|
||||||
url: "/packages/community/communityList/index?title=社区列表&types=2"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
img: "https://wechat-img-file.oss-cn-beijing.aliyuncs.com/tabItem_img2.png",
|
|
||||||
name: "社区服务",
|
|
||||||
url: "/packages/doorToDoor/pages/doorToDoor/doorToDoor"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
img: "https://wechat-img-file.oss-cn-beijing.aliyuncs.com/tabItem_img3.png",
|
|
||||||
name: "周边商家",
|
|
||||||
url: "/packages/roundMechant/pages/roundMechant/roundMechant"
|
|
||||||
},
|
|
||||||
// {
|
|
||||||
// img:"https://wechat-img-file.oss-cn-beijing.aliyuncs.com/tabItem_img4.png",
|
|
||||||
// name:"社区团购",
|
|
||||||
// // url:"/packages/GropBuy/pages/GropBuy"
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// img:"https://wechat-img-file.oss-cn-beijing.aliyuncs.com/tabItem_img5.png",
|
|
||||||
// name:"餐饮美食",
|
|
||||||
// url:"/packages/food/pages/food/food"
|
|
||||||
// },
|
|
||||||
{
|
|
||||||
img: "https://wechat-img-file.oss-cn-beijing.aliyuncs.com/tabItem_img6.png",
|
|
||||||
name: "智慧康养",
|
|
||||||
url: "/packages/health/pages/health/health"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
img: "https://wechat-img-file.oss-cn-beijing.aliyuncs.com/tabItem_img11.png",
|
|
||||||
name: "我的预约",
|
|
||||||
url: "/packages/myReservation/pages/myReservation/myReservation"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
img: "https://wechat-img-file.oss-cn-beijing.aliyuncs.com/tabItem_img8.png",
|
|
||||||
name: "便民服务",
|
|
||||||
url: "/packages/ConvenServer/ConvenServer/pages/ConvenServer/ConvenServer"
|
|
||||||
},
|
|
||||||
// {
|
|
||||||
// img:"https://wechat-img-file.oss-cn-beijing.aliyuncs.com/tabItem_img9.png",
|
|
||||||
// name:"积分兑换",
|
|
||||||
// // url:"/packages/indexSubcontract/pointExchange/index"
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// img:"https://wechat-img-file.oss-cn-beijing.aliyuncs.com/tabItem_img10.png",
|
|
||||||
// name:"官方商城",
|
|
||||||
// url:"/packages/official/index/index"
|
|
||||||
// },
|
|
||||||
],
|
|
||||||
title: 'Hello',
|
|
||||||
currentCity: "",
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
onLoad() {
|
||||||
|
|
||||||
|
|
||||||
onShow() {
|
|
||||||
|
|
||||||
if (uni.getStorageSync('city')) {
|
|
||||||
this.currentCity = {
|
|
||||||
city: uni.getStorageSync('city')
|
|
||||||
};
|
|
||||||
} else {
|
|
||||||
uni.setStorageSync('city', uni.getStorageSync('Usercity'))
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
||||||
methods: {
|
methods: {
|
||||||
swipers(e) {
|
meth1(){
|
||||||
this.currentIdx = e.detail.current
|
console.log(1);
|
||||||
},
|
|
||||||
getBanner() {
|
|
||||||
request(apiArr2.getBanner, "POST", {}).then(res => {
|
|
||||||
this.bannerList = res.list
|
|
||||||
})
|
|
||||||
},
|
|
||||||
iptChange(e) {
|
|
||||||
this.iptMsg = e.detail.value
|
|
||||||
},
|
|
||||||
searchCurrent() {
|
|
||||||
this.flag = false
|
|
||||||
this.page_num = 1
|
|
||||||
this.serverList = []
|
|
||||||
this.current = 1
|
|
||||||
this.getServerList()
|
|
||||||
},
|
|
||||||
opMap() {
|
|
||||||
uni.chooseLocation({
|
|
||||||
success(res) {
|
|
||||||
console.log(res)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
map() {
|
|
||||||
// if (uni.getStorageSync('userId')) {
|
|
||||||
uni.redirectTo({
|
|
||||||
url: '/pages/shopcity/shopcity'
|
|
||||||
});
|
|
||||||
// } else {
|
|
||||||
// uni.navigateTo({
|
|
||||||
// url: '/pages/login/login'
|
|
||||||
// })
|
|
||||||
// }
|
|
||||||
},
|
|
||||||
getCommunityList() {
|
|
||||||
let that = this;
|
|
||||||
request(apiArr.list, "POST", {
|
|
||||||
page_num: that.page_num,
|
|
||||||
page_size: that.page_size
|
|
||||||
}).then(res => {
|
|
||||||
let flag = false;
|
|
||||||
if (res.rows && res.rows.length == that.page_size) {
|
|
||||||
flag = true;
|
|
||||||
} else {
|
|
||||||
flag = false;
|
|
||||||
}
|
|
||||||
res.rows.forEach(item=>{
|
|
||||||
item.pic = this.picUrl + item.pic
|
|
||||||
})
|
|
||||||
that.CommunityList = that.CommunityList.concat(res.rows || []);
|
|
||||||
that.flag = flag;
|
|
||||||
that.page_num = that.page_num + 1;
|
|
||||||
console.log(that.CommunityList);
|
|
||||||
});
|
|
||||||
},
|
|
||||||
getHostInfo() {
|
|
||||||
const that = this;
|
|
||||||
uni.request({
|
|
||||||
url: apiArr.get_host_info,
|
|
||||||
method: 'POST',
|
|
||||||
header: {
|
|
||||||
'Content-type': 'application/x-www-form-urlencoded'
|
|
||||||
},
|
|
||||||
dataType: 'json',
|
|
||||||
success: (result) => {
|
|
||||||
let wxapp = result.data.all.wxapp;
|
|
||||||
if (wxapp) {
|
|
||||||
this.qqmap_key = wxapp.qqmap_key;
|
|
||||||
this.getUserLocation();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
},
|
|
||||||
changeCurrent(e) {
|
|
||||||
const idx = e.currentTarget.dataset.idx;
|
|
||||||
this.current = idx;
|
|
||||||
this.flag = false;
|
|
||||||
this.page_num = 1;
|
|
||||||
this.serverList = [];
|
|
||||||
this.CommunityList = [];
|
|
||||||
this.iptMsg = '';
|
|
||||||
|
|
||||||
if (idx == 0) {
|
|
||||||
this.getCommunityList();
|
|
||||||
} else if (idx == 1) {
|
|
||||||
this.getServerList();
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
getUserLocation() {
|
|
||||||
let that = this
|
|
||||||
const {
|
|
||||||
qqmap_key
|
|
||||||
} = this;
|
|
||||||
let userlocat = uni.getStorageSync('userlocat');
|
|
||||||
|
|
||||||
uni.getLocation({
|
|
||||||
type: 'wgs84',
|
|
||||||
success: (res) => {
|
|
||||||
const latitude = res.latitude;
|
|
||||||
const longitude = res.longitude;
|
|
||||||
uni.request({
|
|
||||||
url: `https://apis.map.qq.com/ws/geocoder/v1/?location=${res.latitude},${res.longitude}&key=${qqmap_key}&get_poi=0`,
|
|
||||||
success: function(res) {
|
|
||||||
var city = res.data.result.address_component.city;
|
|
||||||
userlocat = {
|
|
||||||
userlat: latitude,
|
|
||||||
userlng: longitude,
|
|
||||||
city: city,
|
|
||||||
};
|
|
||||||
that.city = userlocat;
|
|
||||||
uni.setStorageSync('userlocat', userlocat);
|
|
||||||
uni.setStorageSync('Usercity', city);
|
|
||||||
},
|
|
||||||
fail(err) {
|
|
||||||
console.log(err);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
getBannerList() {
|
|
||||||
let that = this
|
|
||||||
request(apiArr.getBanner, "POST", {
|
|
||||||
agent_user_id: uni.getStorageSync('userId') || 67
|
|
||||||
}).then(res => {
|
|
||||||
|
|
||||||
if (res.rows.length) {
|
|
||||||
res.rows.forEach(item => {
|
|
||||||
item.pic_src = this.picUrl + item.pic_src
|
|
||||||
})
|
|
||||||
this.bannerList = res.rows
|
|
||||||
}
|
|
||||||
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
details(e) {
|
|
||||||
if (e.link_url) {
|
|
||||||
// #ifdef APP-PLUS
|
|
||||||
uni.navigateTo({
|
uni.navigateTo({
|
||||||
url: '/pages/webview/webview?url=' + encodeURIComponent(e.link_url)
|
url: '/kitchen/index/index',
|
||||||
|
success: res => {},
|
||||||
|
fail: () => {},
|
||||||
|
complete: () => {}
|
||||||
});
|
});
|
||||||
// #endif
|
|
||||||
|
|
||||||
// #ifdef H5
|
|
||||||
window.open(e.link_url, '_blank');
|
|
||||||
// #endif
|
|
||||||
|
|
||||||
// #ifdef MP-WEIXIN || MP-ALIPAY || MP-BAIDU
|
|
||||||
// 小程序中可能需要用户手动复制链接或使用web-view
|
|
||||||
uni.showModal({
|
|
||||||
title: '提示',
|
|
||||||
content: '即将打开外部链接,请复制后在浏览器中打开: ' + e.link_url,
|
|
||||||
confirmText: '复制链接',
|
|
||||||
success(res) {
|
|
||||||
if (res.confirm) {
|
|
||||||
uni.setClipboardData({
|
|
||||||
data: e.link_url,
|
|
||||||
success() {
|
|
||||||
uni.showToast({
|
|
||||||
title: '复制成功',
|
|
||||||
icon: 'success'
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
// #endif
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
|
meth2(){
|
||||||
getButtonList() {
|
console.log(2);
|
||||||
let that = this
|
|
||||||
request(apiArr.getButton, "POST", {
|
|
||||||
agent_user_id: uni.getStorageSync('userId') || 67
|
|
||||||
}).then(res => {
|
|
||||||
if (res.rows.length) {
|
|
||||||
res.rows.forEach(item => {
|
|
||||||
item.icon_src = this.picUrl + item.icon_src
|
|
||||||
})
|
|
||||||
|
|
||||||
this.tabList = res.rows
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
desc(e) {
|
|
||||||
uni.navigateTo({
|
uni.navigateTo({
|
||||||
url: e
|
url: '/reservation/index/index',
|
||||||
|
success: res => {},
|
||||||
|
fail: () => {},
|
||||||
|
complete: () => {}
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
meth3() {
|
||||||
|
NavgateTo('/pages/login/login', { isLogin: false})
|
||||||
},
|
},
|
||||||
onLoad(options) {
|
meth4() {
|
||||||
this.getCommunityList()
|
NavgateTo('/community/index/index', { isLogin: false})
|
||||||
this.getHostInfo()
|
|
||||||
const meun = menuButtonInfo();
|
|
||||||
this.top = meun.height + meun.top;
|
|
||||||
|
|
||||||
this.getButtonList()
|
|
||||||
this.getBannerList()
|
|
||||||
},
|
},
|
||||||
onShow() {
|
meth5() {
|
||||||
if (uni.getStorageSync('city')) {
|
NavgateTo('/shopWrite/index/index', { isLogin: false})
|
||||||
let obj = {
|
},
|
||||||
city: uni.getStorageSync('city')
|
meth6() {
|
||||||
}
|
NavgateTo('/shopWrite/list/index', { isLogin: false})
|
||||||
this.currentCity = obj
|
|
||||||
} else {
|
|
||||||
uni.setStorageSync('city', uni.getStorageSync('Usercity'))
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
onReachBottom() {
|
|
||||||
if (this.current == 0) {
|
|
||||||
if (this.flag) {
|
|
||||||
this.getCommunityList()
|
|
||||||
}
|
|
||||||
} else if (this.current == 1) {
|
|
||||||
if (this.flag) {
|
|
||||||
this.getServerList()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style>
|
<style>
|
||||||
@import url("./index.css");
|
.content {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.logo {
|
||||||
|
height: 200rpx;
|
||||||
|
width: 200rpx;
|
||||||
|
margin-top: 200rpx;
|
||||||
|
margin-left: auto;
|
||||||
|
margin-right: auto;
|
||||||
|
margin-bottom: 50rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.text-area {
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title {
|
||||||
|
font-size: 36rpx;
|
||||||
|
color: #8f8f94;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
@ -1,436 +0,0 @@
|
|||||||
<template>
|
|
||||||
<view class="wrapper">
|
|
||||||
<view class="itemwrap">
|
|
||||||
<text class="title">当前选择城市</text>
|
|
||||||
<view class="listwrap">
|
|
||||||
<view class="itemlist" @tap="goShopList" :data-id="shopArea[address].area_id" :data-name="address">
|
|
||||||
<view class="itemTitle">{{address}}</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view class="itemwrap">
|
|
||||||
<text class="title">当前定位城市</text>
|
|
||||||
<view class="listwrap">
|
|
||||||
<view class="itemlist" @tap="goShopList" :data-id="shopArea[address].area_id" :data-name="Usercity">
|
|
||||||
<view class="itemTitle">{{Usercity}}</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view class="itemwrap">
|
|
||||||
<text class="title">已开通城市</text>
|
|
||||||
<view class="listwrap">
|
|
||||||
<view class="itemlist" @tap="goShopList" data-id="0" data-name="全部">
|
|
||||||
<view class="itemTitle">全部</view>
|
|
||||||
</view>
|
|
||||||
<view class="itemlist" v-for="(item, index) in shopArea" :key="index" @tap="goShopList" :data-id="item.area_id" :data-name="item.area_name">
|
|
||||||
<view class="itemTitle">{{item.area_name}}</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import {apiArr} from '../../api/community.js';
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
export default {
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
shopArea: [],
|
|
||||||
address: '定位中',
|
|
||||||
lat: '',
|
|
||||||
lng: '',
|
|
||||||
qqmap_key: '',
|
|
||||||
Usercity: '',
|
|
||||||
}
|
|
||||||
},
|
|
||||||
onLoad(options) {
|
|
||||||
this.getHostInfo();
|
|
||||||
this.getAddress();
|
|
||||||
this.getShopAreaList();
|
|
||||||
this.Usercity = uni.getStorageSync('Usercity');
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
getHostInfo() {
|
|
||||||
uni.request({
|
|
||||||
url: apiArr.get_host_info,
|
|
||||||
method: 'POST',
|
|
||||||
header: {
|
|
||||||
'Content-type': 'application/x-www-form-urlencoded'
|
|
||||||
},
|
|
||||||
success: (result) => {
|
|
||||||
let wxapp = result.data.all.wxapp;
|
|
||||||
if (wxapp.qqmap_key) {
|
|
||||||
this.qqmap_key = wxapp.qqmap_key;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
},
|
|
||||||
getAddress() {
|
|
||||||
let userlocat = uni.getStorageSync('userlocat');
|
|
||||||
let nowtime = Date.parse(new Date()) / 1000;
|
|
||||||
|
|
||||||
if (!userlocat || userlocat.overtime < nowtime || !userlocat.city) {
|
|
||||||
uni.showLoading({
|
|
||||||
title: '定位中...'
|
|
||||||
});
|
|
||||||
uni.getLocation({
|
|
||||||
success: (res) => {
|
|
||||||
let overtime = Date.parse(new Date()) / 1000 + 7200;
|
|
||||||
this.lat = res.latitude;
|
|
||||||
this.lng = res.longitude;
|
|
||||||
|
|
||||||
if (this.qqmap_key) {
|
|
||||||
uni.request({
|
|
||||||
url: `https://apis.map.qq.com/ws/geocoder/v1/?location=${res.latitude},${res.longitude}&key=${this.qqmap_key}&get_poi=0`,
|
|
||||||
success: (res) => {
|
|
||||||
let city = res.data.result.address_component.city;
|
|
||||||
uni.setStorageSync('city', city);
|
|
||||||
if (city) {
|
|
||||||
this.address = city;
|
|
||||||
let area = this.shopArea;
|
|
||||||
if (typeof area[city] !== 'undefined') {
|
|
||||||
// setData(this, 'area_id', area[city]['area_id']);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
userlocat = {
|
|
||||||
userlat: this.lat,
|
|
||||||
userlng: this.lng,
|
|
||||||
overtime: overtime,
|
|
||||||
city: city
|
|
||||||
};
|
|
||||||
uni.setStorageSync('userlocat', userlocat);
|
|
||||||
uni.hideLoading();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
uni.request({
|
|
||||||
url: apiArr.get_maps_geocoder,
|
|
||||||
success: (res) => {
|
|
||||||
let city = res.data.city;
|
|
||||||
if (city) {
|
|
||||||
this.address = city;
|
|
||||||
let area = this.shopArea;
|
|
||||||
if (typeof area[city] !== 'undefined') {
|
|
||||||
// setData(this, 'area_id', area[city]['area_id']);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
userlocat = {
|
|
||||||
userlat: this.lat,
|
|
||||||
userlng: this.lng,
|
|
||||||
overtime: overtime,
|
|
||||||
city: city
|
|
||||||
};
|
|
||||||
uni.setStorageSync('userlocat', userlocat);
|
|
||||||
uni.hideLoading();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
uni.request({
|
|
||||||
url: apiArr.setcookie_location,
|
|
||||||
method: 'POST',
|
|
||||||
header: {
|
|
||||||
'Content-type': 'application/x-www-form-urlencoded'
|
|
||||||
},
|
|
||||||
data: userlocat,
|
|
||||||
success: (result) => {
|
|
||||||
console.log(result);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
let address = uni.getStorageSync('city') || userlocat.city;
|
|
||||||
this.address = address;
|
|
||||||
}
|
|
||||||
},
|
|
||||||
getShopAreaList() {
|
|
||||||
|
|
||||||
console.log(apiArr.get_community_area_list);
|
|
||||||
uni.showLoading({
|
|
||||||
title: '加载中...'
|
|
||||||
});
|
|
||||||
uni.request({
|
|
||||||
url: apiArr.get_community_area_list,
|
|
||||||
method: 'GET',
|
|
||||||
header: {
|
|
||||||
'Content-type': 'application/x-www-form-urlencoded'
|
|
||||||
},
|
|
||||||
success: (result) => {
|
|
||||||
console.log(result);
|
|
||||||
|
|
||||||
let {
|
|
||||||
data: {
|
|
||||||
list
|
|
||||||
}
|
|
||||||
} = result;
|
|
||||||
if (list) {
|
|
||||||
this.shopArea = list
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
},
|
|
||||||
fail(err) {
|
|
||||||
console.log(err);
|
|
||||||
},
|
|
||||||
complete: () => uni.hideLoading()
|
|
||||||
});
|
|
||||||
},
|
|
||||||
goShopList(event) {
|
|
||||||
let area_id = event.currentTarget.dataset.id;
|
|
||||||
let name = event.currentTarget.dataset.name;
|
|
||||||
if (name == '定位中') {
|
|
||||||
this.getAddress();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
const pages = getCurrentPages();
|
|
||||||
const prevPage = pages[pages.length - 2];
|
|
||||||
area_id = area_id || '';
|
|
||||||
|
|
||||||
const userlocat = uni.getStorageSync('userlocat');
|
|
||||||
userlocat.city = name;
|
|
||||||
uni.setStorageSync('userlocat', userlocat);
|
|
||||||
uni.setStorageSync('city', name);
|
|
||||||
|
|
||||||
prevPage.setData({
|
|
||||||
area_id: area_id,
|
|
||||||
address: name
|
|
||||||
});
|
|
||||||
|
|
||||||
uni.navigateBack({
|
|
||||||
delta: 1,
|
|
||||||
success: (res) => {
|
|
||||||
console.log('返回成功', res);
|
|
||||||
},
|
|
||||||
fail: (err) => {
|
|
||||||
console.error('返回失败', err);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style>
|
|
||||||
.top_nav {
|
|
||||||
margin-left: 16px;
|
|
||||||
display: flex;
|
|
||||||
flex-direction: row;
|
|
||||||
margin-top: 24px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.nav-name {
|
|
||||||
color: #fff;
|
|
||||||
font-size: 30rpx;
|
|
||||||
width: 16.66%;
|
|
||||||
text-align: center;
|
|
||||||
line-height: 28px;
|
|
||||||
flex-direction: column;
|
|
||||||
display: inline-flex;
|
|
||||||
height: 60px;
|
|
||||||
position: relative;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* .nav-hover {
|
|
||||||
font-weight: 600;
|
|
||||||
border-bottom: 3px solid #D3BA77;
|
|
||||||
} */
|
|
||||||
|
|
||||||
.nav-hover::after {
|
|
||||||
content: " ";
|
|
||||||
width: 30%;
|
|
||||||
height: 4px;
|
|
||||||
background: #D3BA77;
|
|
||||||
position: absolute;
|
|
||||||
bottom: 1px;
|
|
||||||
left: 50%;
|
|
||||||
transform: translateX(-50%);
|
|
||||||
border-radius: 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.nav-date {
|
|
||||||
width: 16.66%;
|
|
||||||
text-align: center;
|
|
||||||
line-height: 30px;
|
|
||||||
flex-direction: column;
|
|
||||||
display: inline-flex;
|
|
||||||
justify-items: center;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.nav-date image {
|
|
||||||
width: 15px;
|
|
||||||
height: 15px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.wrapper {
|
|
||||||
margin-top: 20px;
|
|
||||||
border-radius: 10px 10px 0 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.itemwrap {
|
|
||||||
margin-top: 0;
|
|
||||||
border-radius: 10px 10px 0 0;
|
|
||||||
width: 100%;
|
|
||||||
overflow: hidden;
|
|
||||||
}
|
|
||||||
|
|
||||||
.itemwrap .title {
|
|
||||||
font-size: 14px;
|
|
||||||
font-weight: bold;
|
|
||||||
margin-left: 15px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.itemwrap,
|
|
||||||
.listwrap {
|
|
||||||
height: auto;
|
|
||||||
overflow: hidden;
|
|
||||||
}
|
|
||||||
|
|
||||||
.listwrap {
|
|
||||||
margin: 10px auto;
|
|
||||||
width: 96%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.itemlist {
|
|
||||||
margin: 5px 1.5%;
|
|
||||||
padding: 10px;
|
|
||||||
border-radius: 5px;
|
|
||||||
width: 30.33%;
|
|
||||||
float: left;
|
|
||||||
text-align: center;
|
|
||||||
background-color: #f1f1f1;
|
|
||||||
}
|
|
||||||
|
|
||||||
.itemTitle {
|
|
||||||
text-overflow: ellipsis;
|
|
||||||
overflow: hidden;
|
|
||||||
white-space: nowrap;
|
|
||||||
}
|
|
||||||
|
|
||||||
.intro {
|
|
||||||
height: 60px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.intro-left {
|
|
||||||
display: inline-flex;
|
|
||||||
}
|
|
||||||
|
|
||||||
.room-img {
|
|
||||||
border-radius: 4px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.room-intro {
|
|
||||||
margin-left: 8px;
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
justify-content: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.room-name {
|
|
||||||
font-size: 16px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.room-price {
|
|
||||||
font-size: 14px;
|
|
||||||
margin-top: 5px;
|
|
||||||
color: #D3BA77;
|
|
||||||
}
|
|
||||||
|
|
||||||
.room-nume {
|
|
||||||
font-size: 12px;
|
|
||||||
margin-top: 4px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.in-free {
|
|
||||||
float: right;
|
|
||||||
border: 1px solid #6F9473;
|
|
||||||
border-radius: 4px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.in-use {
|
|
||||||
float: right;
|
|
||||||
border: 1px solid #DB8259;
|
|
||||||
border-radius: 4px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.use {
|
|
||||||
width: 100%;
|
|
||||||
height: 35px;
|
|
||||||
border-radius: 3px 3px 0 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.use text {
|
|
||||||
line-height: 35px;
|
|
||||||
font-size: 16px;
|
|
||||||
color: #FFFFFF;
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.in {
|
|
||||||
width: 52px;
|
|
||||||
height: 17px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.in text {
|
|
||||||
line-height: 17px;
|
|
||||||
font-size: 10px;
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.notes {
|
|
||||||
margin-top: 18px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.color-card {
|
|
||||||
display: inline-flex;
|
|
||||||
}
|
|
||||||
|
|
||||||
.card-list {
|
|
||||||
border-radius: 2px;
|
|
||||||
margin: 4px 0 0 24px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.color-card text {
|
|
||||||
margin-left: 6px;
|
|
||||||
font-size: 13px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.endtime {
|
|
||||||
float: right;
|
|
||||||
}
|
|
||||||
|
|
||||||
.endtime text {
|
|
||||||
font-size: 13px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.timeline {
|
|
||||||
display: flex;
|
|
||||||
margin-top: 16px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.line {
|
|
||||||
width: 4.3%
|
|
||||||
}
|
|
||||||
|
|
||||||
.line-card {
|
|
||||||
border-radius: 2px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.line text {
|
|
||||||
font-size: 10px;
|
|
||||||
margin-top: 4px;
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
@ -1,150 +0,0 @@
|
|||||||
.conatiner {
|
|
||||||
height: 100%;
|
|
||||||
background: linear-gradient(to bottom, #FFE7E1, #FFFFFF);
|
|
||||||
background-attachment: fixed;
|
|
||||||
background-size: cover;
|
|
||||||
padding-top: 20rpx;
|
|
||||||
padding-bottom: 20%;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* 头部 */
|
|
||||||
.header {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
margin-left: 25rpx;
|
|
||||||
/* margin-top: 83rpx; */
|
|
||||||
margin-bottom: 30rpx;
|
|
||||||
pointer-events: none;
|
|
||||||
}
|
|
||||||
/* 头像 */
|
|
||||||
.avatar-container {
|
|
||||||
display: flex;
|
|
||||||
width: 120rpx;
|
|
||||||
height: 120rpx;
|
|
||||||
border-radius: 50%;
|
|
||||||
overflow: hidden;
|
|
||||||
background-color: #FF7354;
|
|
||||||
margin-right: 30rpx;
|
|
||||||
justify-content: center;
|
|
||||||
align-items: center;
|
|
||||||
pointer-events: auto;
|
|
||||||
}
|
|
||||||
/* 头像图片 */
|
|
||||||
.avatar {
|
|
||||||
/* width: 100%;
|
|
||||||
height: 100%; */
|
|
||||||
width: 73rpx;
|
|
||||||
height: 69rpx;
|
|
||||||
/* margin-bottom: 20rpx; */
|
|
||||||
pointer-events: auto;
|
|
||||||
border-radius: 50%;
|
|
||||||
overflow: hidden;
|
|
||||||
}
|
|
||||||
/* 登录/注册 */
|
|
||||||
.login-btn {
|
|
||||||
font-size: 36rpx;
|
|
||||||
pointer-events: auto;
|
|
||||||
}
|
|
||||||
|
|
||||||
.section {
|
|
||||||
display: flex;
|
|
||||||
flex-wrap: wrap;
|
|
||||||
justify-content: space-between;
|
|
||||||
margin-left: 20rpx;
|
|
||||||
margin-right: 20rpx;
|
|
||||||
margin-bottom: 21rpx;
|
|
||||||
}
|
|
||||||
.order {
|
|
||||||
margin-top: 24rpx;
|
|
||||||
}
|
|
||||||
.nav_icon {
|
|
||||||
width: 50rpx;
|
|
||||||
height: 50rpx;
|
|
||||||
margin-bottom: 20rpx;
|
|
||||||
}
|
|
||||||
.grid-text {
|
|
||||||
font-size: 24rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item {
|
|
||||||
display: flex;
|
|
||||||
width: 48%;
|
|
||||||
height: 150rpx;
|
|
||||||
background-color: #FFFFFF;
|
|
||||||
border-radius: 30rpx;
|
|
||||||
justify-content: left;
|
|
||||||
align-items: center;
|
|
||||||
/* padding-left: 28rpx; */
|
|
||||||
}
|
|
||||||
|
|
||||||
.item1 {
|
|
||||||
display: flex;
|
|
||||||
justify-content: space-around;
|
|
||||||
width: 100%;
|
|
||||||
height: 220rpx;
|
|
||||||
background-color: #FFFFFF;
|
|
||||||
align-items: center;
|
|
||||||
border-radius: 30rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item-owner {
|
|
||||||
margin:0 116rpx 0 116rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item-icon {
|
|
||||||
width: 150rpx;
|
|
||||||
height: 98rpx;
|
|
||||||
margin-left: 30rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item-icon1 {
|
|
||||||
width: 150rpx;
|
|
||||||
height: 120rpx;
|
|
||||||
margin-left: 30rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-img {
|
|
||||||
display: flex;
|
|
||||||
width: 72rpx;
|
|
||||||
height: 72rpx;
|
|
||||||
flex-direction: column;
|
|
||||||
margin-bottom: 28rpx;
|
|
||||||
margin-left: 17%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item-content {
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
padding-left: 28rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.title-item {
|
|
||||||
font-size: 26rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item-title {
|
|
||||||
font-size: 28rpx;
|
|
||||||
color: #333;
|
|
||||||
font-weight: bold;
|
|
||||||
margin-bottom: 5rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item-subtitle {
|
|
||||||
font-size: 20rpx;
|
|
||||||
color: #666;
|
|
||||||
}
|
|
||||||
|
|
||||||
.navigation {
|
|
||||||
margin-top: 29rpx;
|
|
||||||
margin-left: 22rpx;
|
|
||||||
font-size: 32rpx;
|
|
||||||
font-weight: bold;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
.uicon-volume {
|
|
||||||
font-size: 28rpx !important;
|
|
||||||
}
|
|
||||||
.u-grid-item {
|
|
||||||
margin-bottom: 43rpx;
|
|
||||||
}
|
|
||||||
@ -1,333 +0,0 @@
|
|||||||
<template>
|
|
||||||
<view class="conatiner" :style="{paddingTop: top + 'px'}">
|
|
||||||
<view class="header" @click="toLogin">
|
|
||||||
<view class="avatar-container">
|
|
||||||
<image class="avatar"
|
|
||||||
:src="userInfo.userPic || 'https://wechat-img-file.oss-cn-beijing.aliyuncs.com/person/Group_309.png'"
|
|
||||||
mode="" />
|
|
||||||
</view>
|
|
||||||
<view class="login-btn">{{userInfo.user_name ? userInfo.user_name : '登录/注册'}}</view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view class="section">
|
|
||||||
<view class="item" @click="handlePointsClick">
|
|
||||||
<view class="item-content">
|
|
||||||
<text class="item-title">积分</text>
|
|
||||||
<text class="item-subtitle">我的剩余积分</text>
|
|
||||||
</view>
|
|
||||||
<image class="item-icon" src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/person/5bf7d7dca1ff7_1.png">
|
|
||||||
</image>
|
|
||||||
</view>
|
|
||||||
<view class="item" @click="handleSignClick">
|
|
||||||
<view class="item-content">
|
|
||||||
<text class="item-title">每日签到</text>
|
|
||||||
<text class="item-subtitle">签到获取积分</text>
|
|
||||||
</view>
|
|
||||||
<image class="item-icon1" src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/person/Group_311.png" />
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<!-- 我的社区、申请业主、我的设备 -->
|
|
||||||
<view class="section">
|
|
||||||
<view class="item1">
|
|
||||||
<view class="item_device" @click="handleCommunityClick">
|
|
||||||
<image class="icon-community icon-img"
|
|
||||||
src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/person/Group_16.png"></image>
|
|
||||||
<text class="community-title title-item">我的社区</text>
|
|
||||||
</view>
|
|
||||||
<view class="item_device" @click="handleApplyOwnerClick">
|
|
||||||
<image class="icon-owner icon-img" src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/person/Frame.png" />
|
|
||||||
<text class="owner-title title-item">申请业主</text>
|
|
||||||
</view>
|
|
||||||
<view class="item_device" @click="handleFacilityClick">
|
|
||||||
<image class="icon-device icon-img" src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/person/Frame_1.png"/>
|
|
||||||
<text class="device-title title-item">我的设备</text>
|
|
||||||
</view>
|
|
||||||
<view class="item_device" @click="handleMeApplyClick">
|
|
||||||
<image class="icon-device icon-img" src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/Group_905.png"/>
|
|
||||||
<text class="device-title title-item">我的申请</text>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
|
|
||||||
<!-- 我的订单 -->
|
|
||||||
<view class="navigation">我的订单</view>
|
|
||||||
<view class="order">
|
|
||||||
<u-grid col="4" :border="false" >
|
|
||||||
<u-grid-item @click="headerOrderClick(item)" v-for="(item, index) in order_List" :key="index">
|
|
||||||
<image class="nav_icon" :src="item.image" mode=""></image>
|
|
||||||
<text class="grid-text">{{item.name}}</text>
|
|
||||||
</u-grid-item>
|
|
||||||
</u-grid>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<!-- 功能服务 -->
|
|
||||||
<view class="navigation">功能服务</view>
|
|
||||||
<view class="order">
|
|
||||||
<u-grid col="4" :border="false" >
|
|
||||||
<u-grid-item @click="headerGridItemClick(item)" v-for="(item, index) in functional_List" :key="index">
|
|
||||||
<image class="nav_icon" :src="item.image" mode=""></image>
|
|
||||||
<text class="grid-text">{{item.name}}</text>
|
|
||||||
</u-grid-item>
|
|
||||||
</u-grid>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
|
|
||||||
<view v-if="!isShop">
|
|
||||||
<view class="navigation">商家服务</view>
|
|
||||||
<view class="order">
|
|
||||||
<u-grid col="4" :border="false" >
|
|
||||||
<u-grid-item @click="headerGridItemClick(item)" v-for="(item, index) in shopServer" :key="index">
|
|
||||||
<image class="nav_icon" :src="item.image" mode=""></image>
|
|
||||||
<text class="grid-text">{{item.name}}</text>
|
|
||||||
</u-grid-item>
|
|
||||||
</u-grid>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<nav-footer />
|
|
||||||
</view>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import { apiArr } from '../../api/login';
|
|
||||||
import { menuButtonInfo, NavgateTo, picUrl, request } from '../../utils/index';
|
|
||||||
export default {
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
top: 0,
|
|
||||||
order_List: [{
|
|
||||||
image: "https://zhsq.hshuishang.com/Public/img/common/order12.png",
|
|
||||||
name: "物业账单",
|
|
||||||
type: "h5",
|
|
||||||
url: "",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
image: "https://zhsq.hshuishang.com/Public/img/common/order04.png",
|
|
||||||
name: "社区服务",
|
|
||||||
type: "h5",
|
|
||||||
url: "/packages/communityService/index/index",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
image: "https://zhsq.hshuishang.com/Public/img/common/order11.png",
|
|
||||||
name: "商家优惠",
|
|
||||||
type: "h5",
|
|
||||||
url: "",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
image: "https://zhsq.hshuishang.com/Public/img/common/order08.png",
|
|
||||||
name: "积分商城",
|
|
||||||
type: "h5",
|
|
||||||
url: "",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
image: "https://wechat-img-file.oss-cn-beijing.aliyuncs.com/User/_assets/orderIcon_1.png",
|
|
||||||
name: "社区健康",
|
|
||||||
type: "h5",
|
|
||||||
url: "",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
image: "https://wechat-img-file.oss-cn-beijing.aliyuncs.com/User/_assets/orderIcon_2.png",
|
|
||||||
name: "生活缴费",
|
|
||||||
type: "h5",
|
|
||||||
url: "",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
image: "https://wechat-img-file.oss-cn-beijing.aliyuncs.com/User/_assets/orderIcon_3.png",
|
|
||||||
name: "社区商城",
|
|
||||||
type: "h5",
|
|
||||||
url: "",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
image: "https://wechat-img-file.oss-cn-beijing.aliyuncs.com/User/_assets/orderIcon_4.png",
|
|
||||||
name: "周边商超",
|
|
||||||
type: "h5",
|
|
||||||
url: "",
|
|
||||||
},
|
|
||||||
|
|
||||||
],
|
|
||||||
functional_List: [{
|
|
||||||
"image": "https://wechat-img-file.oss-cn-beijing.aliyuncs.com/person/Group_25.png",
|
|
||||||
"name": "生活缴费",
|
|
||||||
"url": "",
|
|
||||||
"type": "h5"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"image": "https://wechat-img-file.oss-cn-beijing.aliyuncs.com/person/Group_26.png",
|
|
||||||
"name": "优惠卡券",
|
|
||||||
// "url": "/packages/user/coupon/index",
|
|
||||||
"type": "h5"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"image": "https://wechat-img-file.oss-cn-beijing.aliyuncs.com/person/Group_35.png",
|
|
||||||
"name": "我的卡券",
|
|
||||||
"url": "",
|
|
||||||
"type": "h5"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"image": "https://wechat-img-file.oss-cn-beijing.aliyuncs.com/person/Group_30.png",
|
|
||||||
"name": "营销推广",
|
|
||||||
"url": "/packages/user/marketing/index",
|
|
||||||
"type": "h5"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"image": "https://wechat-img-file.oss-cn-beijing.aliyuncs.com/person/Group_27.png",
|
|
||||||
"name": "个人设置",
|
|
||||||
"url": "/packages/user/index/index",
|
|
||||||
"type": "h5"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"image": "https://wechat-img-file.oss-cn-beijing.aliyuncs.com/person/Group_29.png",
|
|
||||||
"name": "平台客服",
|
|
||||||
"url": "/packages/WaterPurifier/pages/Addfriend/Addfriend",
|
|
||||||
"type": "h5"
|
|
||||||
},
|
|
||||||
|
|
||||||
{
|
|
||||||
"image": "https://wechat-img-file.oss-cn-beijing.aliyuncs.com/repairList.png",
|
|
||||||
"name": "报修列表",
|
|
||||||
"url": "/packages/OneRepair/pages/OwnerRepairList/OwnerRepairList",
|
|
||||||
"type": "h5"
|
|
||||||
},
|
|
||||||
|
|
||||||
],
|
|
||||||
shopServer: [{
|
|
||||||
image: "https://wechat-img-file.oss-cn-beijing.aliyuncs.com/Group_774.png",
|
|
||||||
name: "订单核销",
|
|
||||||
type: "",
|
|
||||||
url: "/shopWrite/index/index",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
image: "https://wechat-img-file.oss-cn-beijing.aliyuncs.com/Group_774.png",
|
|
||||||
name: "核销列表",
|
|
||||||
type: "",
|
|
||||||
url: "/shopWrite/list/index",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
userInfo: {},
|
|
||||||
isShop: false,
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
methods: {
|
|
||||||
// 头像点击
|
|
||||||
toLogin() {
|
|
||||||
NavgateTo('/packages/user/index/index', { isLogin: false });
|
|
||||||
},
|
|
||||||
|
|
||||||
// 积分跳转
|
|
||||||
handlePointsClick() {
|
|
||||||
NavgateTo('/packages/user/points/index', { isLogin: false });
|
|
||||||
},
|
|
||||||
|
|
||||||
// 每日签到跳转
|
|
||||||
handleSignClick() {
|
|
||||||
NavgateTo('/packages/user/pointsSign/index', { isLogin: false });
|
|
||||||
},
|
|
||||||
|
|
||||||
// 我的社区跳转
|
|
||||||
handleCommunityClick(){
|
|
||||||
NavgateTo('/packages/community/index/index', { isLogin: false})
|
|
||||||
},
|
|
||||||
|
|
||||||
// 申请业主跳转
|
|
||||||
handleApplyOwnerClick(){
|
|
||||||
NavgateTo(`/packages/community/index/index?types=2`, { isLogin: false})
|
|
||||||
},
|
|
||||||
|
|
||||||
// 我的设备跳转
|
|
||||||
handleFacilityClick() {
|
|
||||||
this.NotOpen();
|
|
||||||
},
|
|
||||||
|
|
||||||
// 我的申请跳转
|
|
||||||
handleMeApplyClick() {
|
|
||||||
NavgateTo(`/packages/community/ownerList/index`, { isLogin: false})
|
|
||||||
},
|
|
||||||
|
|
||||||
// 我的订单跳转
|
|
||||||
headerOrderClick(event) {
|
|
||||||
console.log('123133131', event);
|
|
||||||
if(!event.url) {
|
|
||||||
this.NotOpen();
|
|
||||||
return
|
|
||||||
} else {
|
|
||||||
if (!uni.getStorageSync('city')) {
|
|
||||||
wx.showModal({
|
|
||||||
title: '提示',
|
|
||||||
content: '请先选择您的城市',
|
|
||||||
confirmText:"去选择",
|
|
||||||
complete: (res) => {
|
|
||||||
if (res.cancel) {}
|
|
||||||
if (res.confirm) {
|
|
||||||
NavgateTo( '/pages/index/shopcity', {isLogin: false})
|
|
||||||
}
|
|
||||||
}
|
|
||||||
})
|
|
||||||
return
|
|
||||||
}
|
|
||||||
console.log('选择城市');
|
|
||||||
NavgateTo( `${event.url}`, {isLogin: false})
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
// 功能服务跳转
|
|
||||||
headerGridItemClick(event) {
|
|
||||||
if (!event.url) {
|
|
||||||
this.NotOpen();
|
|
||||||
return
|
|
||||||
}
|
|
||||||
// 如果点击为平台客服则允许跳转
|
|
||||||
if (event.url === '/packages/WaterPurifier/pages/Addfriend/Addfriend') {
|
|
||||||
NavgateTo( event.url, { isLogin: false})
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (event.url) {
|
|
||||||
NavgateTo( event.url, { isLogin: false})
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
// 暂未开通服务弹窗
|
|
||||||
NotOpen() {
|
|
||||||
uni.showModal({
|
|
||||||
title: '提示',
|
|
||||||
content: '此功能暂未开通!',
|
|
||||||
showCancel: false,
|
|
||||||
complete: (res) => {
|
|
||||||
if (res.cancel) {
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
})
|
|
||||||
return
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
async getUserInfo() {
|
|
||||||
const isCtoken = uni.getStorageSync('ctoken');
|
|
||||||
if (!isCtoken) return;
|
|
||||||
const res = await request(apiArr.loginInfo, 'POST', {});
|
|
||||||
const newUserInfo = {
|
|
||||||
...res,
|
|
||||||
userPic: res.img ? `${picUrl}${res.img}` : 'https://wechat-img-file.oss-cn-beijing.aliyuncs.com/person/Group_309.png'
|
|
||||||
};
|
|
||||||
this.userInfo = newUserInfo;
|
|
||||||
},
|
|
||||||
|
|
||||||
},
|
|
||||||
onLoad() {
|
|
||||||
const meun = menuButtonInfo();
|
|
||||||
this.top = meun.height + meun.top;
|
|
||||||
},
|
|
||||||
|
|
||||||
onShow() {
|
|
||||||
console.log('111');
|
|
||||||
this.getUserInfo();
|
|
||||||
},
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style>
|
|
||||||
@import url("./index.css");
|
|
||||||
</style>
|
|
||||||
@ -1,25 +0,0 @@
|
|||||||
<template>
|
|
||||||
<view>
|
|
||||||
<web-view :src="url"></web-view>
|
|
||||||
</view>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
export default {
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
url:""
|
|
||||||
}
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
|
|
||||||
},
|
|
||||||
onLoad(options) {
|
|
||||||
this.url = decodeURIComponent(options.url || '')
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style>
|
|
||||||
|
|
||||||
</style>
|
|
||||||
@ -1,28 +0,0 @@
|
|||||||
{
|
|
||||||
"appid": "wx03cc6c9d66213d37",
|
|
||||||
"compileType": "miniprogram",
|
|
||||||
"libVersion": "3.8.3",
|
|
||||||
"packOptions": {
|
|
||||||
"ignore": [],
|
|
||||||
"include": []
|
|
||||||
},
|
|
||||||
"setting": {
|
|
||||||
"coverView": true,
|
|
||||||
"es6": true,
|
|
||||||
"postcss": true,
|
|
||||||
"minified": true,
|
|
||||||
"enhance": true,
|
|
||||||
"showShadowRootInWxmlPanel": true,
|
|
||||||
"packNpmRelationList": [],
|
|
||||||
"babelSetting": {
|
|
||||||
"ignore": [],
|
|
||||||
"disablePlugins": [],
|
|
||||||
"outputPath": ""
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"condition": {},
|
|
||||||
"editorSetting": {
|
|
||||||
"tabIndent": "insertSpaces",
|
|
||||||
"tabSize": 2
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,7 +0,0 @@
|
|||||||
{
|
|
||||||
"description": "项目私有配置文件。此文件中的内容将覆盖 project.config.json 中的相同字段。项目的改动优先同步到此文件中。详见文档:https://developers.weixin.qq.com/miniprogram/dev/devtools/projectconfig.html",
|
|
||||||
"projectname": "uniapp-ZHSQ",
|
|
||||||
"setting": {
|
|
||||||
"compileHotReLoad": true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
1
unpackage/dist/dev/.sourcemap/mp-weixin/kitchen/index.js.map
vendored
Normal file
1
unpackage/dist/dev/.sourcemap/mp-weixin/kitchen/index.js.map
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
{"version":3,"sources":["uni-app:///main.js"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page"],"mappings":";;;;;;;;;;;;;AAAA;AAGA;AACA;AAHA;AACAA,EAAE,CAACC,iCAAiC,GAAGC,mBAAmB;AAG1DC,UAAU,CAACC,cAAI,CAAC,C","file":"kitchen/index.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './kitchen/index.vue'\ncreatePage(Page)"],"sourceRoot":""}
|
||||||
File diff suppressed because one or more lines are too long
1
unpackage/dist/dev/.sourcemap/mp-weixin/kitchen/kitchen.js.map
vendored
Normal file
1
unpackage/dist/dev/.sourcemap/mp-weixin/kitchen/kitchen.js.map
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
{"version":3,"sources":["uni-app:///main.js"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page"],"mappings":";;;;;;;;;;;;;AAAA;AAGA;AACA;AAHA;AACAA,EAAE,CAACC,iCAAiC,GAAGC,mBAAmB;AAG1DC,UAAU,CAACC,gBAAI,CAAC,C","file":"kitchen/kitchen.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './kitchen/kitchen.vue'\ncreatePage(Page)"],"sourceRoot":""}
|
||||||
1
unpackage/dist/dev/.sourcemap/mp-weixin/kitchen/kitchen/index.js.map
vendored
Normal file
1
unpackage/dist/dev/.sourcemap/mp-weixin/kitchen/kitchen/index.js.map
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
{"version":3,"sources":["uni-app:///main.js"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page"],"mappings":";;;;;;;;;;;;;AAAA;AAGA;AACA;AAHA;AACAA,EAAE,CAACC,iCAAiC,GAAGC,mBAAmB;AAG1DC,UAAU,CAACC,cAAI,CAAC,C","file":"kitchen/kitchen/index.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './kitchen/kitchen/index.vue'\ncreatePage(Page)"],"sourceRoot":""}
|
||||||
1
unpackage/dist/dev/.sourcemap/mp-weixin/kitchen/kitchen/index/index.js.map
vendored
Normal file
1
unpackage/dist/dev/.sourcemap/mp-weixin/kitchen/kitchen/index/index.js.map
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
{"version":3,"sources":["uni-app:///main.js"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page"],"mappings":";;;;;;;;;;;;;AAAA;AAGA;AACA;AAHA;AACAA,EAAE,CAACC,iCAAiC,GAAGC,mBAAmB;AAG1DC,UAAU,CAACC,cAAI,CAAC,C","file":"kitchen/kitchen/index/index.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './kitchen/kitchen/index/index.vue'\ncreatePage(Page)"],"sourceRoot":""}
|
||||||
File diff suppressed because one or more lines are too long
1
unpackage/dist/dev/.sourcemap/mp-weixin/reservation/index.js.map
vendored
Normal file
1
unpackage/dist/dev/.sourcemap/mp-weixin/reservation/index.js.map
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
{"version":3,"sources":["uni-app:///main.js"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page"],"mappings":";;;;;;;;;;;;;AAAA;AAGA;AACA;AAHA;AACAA,EAAE,CAACC,iCAAiC,GAAGC,mBAAmB;AAG1DC,UAAU,CAACC,cAAI,CAAC,C","file":"reservation/index.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './reservation/index.vue'\ncreatePage(Page)"],"sourceRoot":""}
|
||||||
File diff suppressed because one or more lines are too long
1
unpackage/dist/dev/.sourcemap/mp-weixin/reservation/index/index/index.js.map
vendored
Normal file
1
unpackage/dist/dev/.sourcemap/mp-weixin/reservation/index/index/index.js.map
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
{"version":3,"sources":["uni-app:///main.js",null,"webpack:///D:/projection/Hbuilder/uniapp-ZHSQ/reservation/index/index/index.vue?fdd0","webpack:///D:/projection/Hbuilder/uniapp-ZHSQ/reservation/index/index/index.vue?816f","webpack:///D:/projection/Hbuilder/uniapp-ZHSQ/reservation/index/index/index.vue?b627","uni-app:///kitchen/kitchen/index/index.vue"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page","data","methods"],"mappings":";;;;;;;;;;;;;AAAA;AAGA;AACA;AAHA;AACAA,EAAE,CAACC,iCAAiC,GAAGC,mBAAmB;AAG1DC,UAAU,CAACC,cAAI,CAAC,C;;;;;;;;;;;;;ACLhB;AAAA;AAAA;AAAA;AAAA;AAAkH;AAClH;AACyD;AACL;;;AAGpD;AAC8K;AAC9K,gBAAgB,6KAAU;AAC1B,EAAE,2EAAM;AACR,EAAE,gFAAM;AACR,EAAE,yFAAe;AACjB;AACA;AACA;AACA;AACA;AACA,EAAE,oFAAU;AACZ;AACA;;AAEA;AACe,gF;;;;;;;;;;;;ACtBf;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;ACRA;AAAA;AAAA;AAAA;AAAypB,CAAgB,+mBAAG,EAAC,C;;;;;;;;;;;;;;;;;;;;;;;;eCO7qB;EACAC;IACA,QAEA;EACA;EACAC,UAEA;AACA;AAAA,2B","file":"reservation/index/index/index.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './reservation/index/index/index.vue'\ncreatePage(Page)","import { render, staticRenderFns, recyclableRender, components } from \"./index.vue?vue&type=template&id=bf8d3a12&\"\nvar renderjs\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../下载目录/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null,\n false,\n components,\n renderjs\n)\n\ncomponent.options.__file = \"reservation/index/index/index.vue\"\nexport default component.exports","export * from \"-!../../../../../../下载目录/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../../下载目录/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--17-0!../../../../../../下载目录/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!../../../../../../下载目录/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../../../下载目录/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../下载目录/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./index.vue?vue&type=template&id=bf8d3a12&\"","var components\nvar render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n}\nvar recyclableRender = false\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns, recyclableRender, components }","import mod from \"-!../../../../../../下载目录/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../../下载目录/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--13-1!../../../../../../下载目录/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../../下载目录/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../下载目录/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../下载目录/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../../下载目录/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--13-1!../../../../../../下载目录/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../../下载目录/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../下载目录/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./index.vue?vue&type=script&lang=js&\"","<template>\n\t<view>\n\t\t\n\t</view>\n</template>\n\n<script>\n\texport default {\n\t\tdata() {\n\t\t\treturn {\n\t\t\t\t\n\t\t\t}\n\t\t},\n\t\tmethods: {\n\t\t\t\n\t\t}\n\t}\n</script>\n\n<style>\n\n</style>\n"],"sourceRoot":""}
|
||||||
1
unpackage/dist/dev/.sourcemap/mp-weixin/reservation/page1/page1.js.map
vendored
Normal file
1
unpackage/dist/dev/.sourcemap/mp-weixin/reservation/page1/page1.js.map
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
{"version":3,"sources":["uni-app:///main.js"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page"],"mappings":";;;;;;;;;;;;;AAAA;AAGA;AACA;AAHA;AACAA,EAAE,CAACC,iCAAiC,GAAGC,mBAAmB;AAG1DC,UAAU,CAACC,aAAI,CAAC,C","file":"reservation/page1/page1.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './reservation/page1/page1.vue'\ncreatePage(Page)"],"sourceRoot":""}
|
||||||
1
unpackage/dist/dev/.sourcemap/mp-weixin/reservation/reservation.js.map
vendored
Normal file
1
unpackage/dist/dev/.sourcemap/mp-weixin/reservation/reservation.js.map
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
{"version":3,"sources":["uni-app:///main.js"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page"],"mappings":";;;;;;;;;;;;;AAAA;AAGA;AACA;AAHA;AACAA,EAAE,CAACC,iCAAiC,GAAGC,mBAAmB;AAG1DC,UAAU,CAACC,oBAAI,CAAC,C","file":"reservation/reservation.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './reservation/reservation.vue'\ncreatePage(Page)"],"sourceRoot":""}
|
||||||
1
unpackage/dist/dev/.sourcemap/mp-weixin/reservation/reservation/index.js.map
vendored
Normal file
1
unpackage/dist/dev/.sourcemap/mp-weixin/reservation/reservation/index.js.map
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
{"version":3,"sources":["uni-app:///main.js"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page"],"mappings":";;;;;;;;;;;;;AAAA;AAGA;AACA;AAHA;AACAA,EAAE,CAACC,iCAAiC,GAAGC,mBAAmB;AAG1DC,UAAU,CAACC,cAAI,CAAC,C","file":"reservation/reservation/index.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './reservation/reservation/index.vue'\ncreatePage(Page)"],"sourceRoot":""}
|
||||||
1
unpackage/dist/dev/.sourcemap/mp-weixin/subPackages/kitchen/index/index.js.map
vendored
Normal file
1
unpackage/dist/dev/.sourcemap/mp-weixin/subPackages/kitchen/index/index.js.map
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
{"version":3,"sources":["uni-app:///main.js"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page"],"mappings":";;;;;;;;;;;;;AAAA;AAGA;AACA;AAHA;AACAA,EAAE,CAACC,iCAAiC,GAAGC,mBAAmB;AAG1DC,UAAU,CAACC,cAAI,CAAC,C","file":"subPackages/kitchen/index/index.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './subPackages/kitchen/index/index.vue'\ncreatePage(Page)"],"sourceRoot":""}
|
||||||
1
unpackage/dist/dev/.sourcemap/mp-weixin/subPackages/reservation/index/index.js.map
vendored
Normal file
1
unpackage/dist/dev/.sourcemap/mp-weixin/subPackages/reservation/index/index.js.map
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
{"version":3,"sources":["uni-app:///main.js"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page"],"mappings":";;;;;;;;;;;;;AAAA;AAGA;AACA;AAHA;AACAA,EAAE,CAACC,iCAAiC,GAAGC,mBAAmB;AAG1DC,UAAU,CAACC,cAAI,CAAC,C","file":"subPackages/reservation/index/index.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './subPackages/reservation/index/index.vue'\ncreatePage(Page)"],"sourceRoot":""}
|
||||||
1
unpackage/dist/dev/.sourcemap/mp-weixin/subpackageA/kitchen/index/index.js.map
vendored
Normal file
1
unpackage/dist/dev/.sourcemap/mp-weixin/subpackageA/kitchen/index/index.js.map
vendored
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
5
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uview-ui/components/u-gap/u-gap.js.map
vendored
Normal file
5
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uview-ui/components/u-gap/u-gap.js.map
vendored
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
1
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uview-ui/components/u-line/u-line.js.map
vendored
Normal file
1
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uview-ui/components/u-line/u-line.js.map
vendored
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user