Compare commits

..

No commits in common. "20a324aeec444db3558e57d61c4696b94b89f38a" and "a99046b840beef48655d6a0a8b414cd31a9ed1d4" have entirely different histories.

14 changed files with 11150 additions and 1049 deletions

View File

@ -6,5 +6,5 @@ export const apiArr = {
getArea:"/api/v2/administrative-division/child-list",//新版获取省市区 getArea:"/api/v2/administrative-division/child-list",//新版获取省市区
getParArea:"/api/v2/administrative-division/info",//新版获取省市区 getParArea:"/api/v2/administrative-division/info",//新版获取省市区
getRegionList: '/api/v2/wechat/administrative-division-crud/list', // 行政区划信息分页 getRegionList: '/api/v2/wechat/administrative-division-crud/page', // 行政区划信息分页
} }

View File

@ -1,108 +1,89 @@
.foot-fixed { .foot-fixed {
position: fixed; position: fixed;
bottom: -1px; bottom: -1px;
left: 0; left: 0;
right: 0; right: 0;
z-index: 999; z-index: 999;
width: 100%; width: 100%;
background: #ffffff; background: #ffffff;
border-top: 1px solid #E8E8E8; border-top: 1px solid #E8E8E8;
box-shadow: 0 0 3px rgba(0,0,0,0.1); box-shadow: 0 0 3px rgba(0,0,0,0.1);
} }
.foot-fixed .foot-item { .foot-fixed .foot-item {
padding: 0; padding: 0;
} }
.foot-fixed .foot-item { .foot-fixed .foot-item {
position: relative; position: relative;
} }
.foot-fixed .foot-item { .foot-fixed .foot-item {
width: 20%; width: 20%;
float: left; float: left;
text-align: center; text-align: center;
color: #777; color: #777;
padding: 5px 0 10px; padding: 5px 0 10px;
display: flex; }
flex-direction: column; a {
align-items: center; color: #666;
justify-content: center; text-decoration: none;
} }
a { a {
color: #666; background: transparent;
text-decoration: none; }
} .foot-fixed .foot-item .foot-icon {
a { width: 24px;
background: transparent; height: 26px;
} margin: 0 auto;
}
.foot-fixed .foot-item .foot-label {
.foot-fixed .foot-item .foot-icon-box{ margin: 5px 0;
display: flex; }
align-items: center; .foot-fixed .foot-item .foot-label {
justify-content: center; height: 15px;
width: 66rpx; line-height: 15px;
height: 66rpx; font-size: 12px;
} }
.foot-fixed .foot-item .foot-icon { .foot-fixed .foot-item span {
width: 47rpx; display: block;
margin: 0 auto; width: 100%;
} text-align: center;
.foot-fixed .foot-item .foot-icon2 { }
width: 66rpx;
height: 66rpx;
margin: 0 auto;
} /* 自定义导航栏 */
.nav-box {
box-sizing: border-box;
.foot-fixed .foot-item .foot-label { width: 100%;
margin: 5px 0; /* position: relative; */
} /* position: fixed; */
.foot-fixed .foot-item .foot-label { z-index: 2;
height: 15px; }
line-height: 15px;
font-size: 12px; .nav-box .nav-bar {
} display: flex;
.foot-fixed .foot-item span { align-items: center;
display: block; }
width: 100%;
text-align: center; .nav-box .nav-bar .nav-bar-left,
} .nav-box .nav-bar .nav-bar-right {
padding: 0 20rpx;
min-width: 36rpx;
}
/* 自定义导航栏 */
.nav-box { .nav-box .nav-bar .nav-bar-left van-icon {
box-sizing: border-box; vertical-align: sub;
width: 100%; color: #333333;
/* position: relative; */ }
/* position: fixed; */
z-index: 2; .nav-box .nav-bar .nav-bar-title {
} flex: 1;
text-align: center;
.nav-box .nav-bar { font-size: 32rpx;
display: flex; letter-spacing: 2rpx;
align-items: center; color: #333333;
} }
.nav-box .nav-bar .nav-bar-left, .nav-box .nav-bar-title {
.nav-box .nav-bar .nav-bar-right { color: red;
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;
} }

View File

@ -1,141 +1,97 @@
<template> <template>
<view class="foot-fixed"> <view class="foot-fixed">
<view v-for="(item, index) in navList" :key='index'> <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" <view id="navIndex" :style="{width:foot_width}" @click="jump" :data-idx="index" :data-url="item.url"
class="foot-item"> class="foot-item">
<image class="foot-icon" :src="item.photo" mode=""></image>
<view class="foot-icon-box"> <text class="foot-label" id="navIndexLabel">{{item.nav_name}}</text>
<image class="foot-icon" :src="item.photo" mode="widthFix" v-if="current != index"></image> </view>
<image class="foot-icon2" :src="item.photoAc" mode="widthFix" v-if="current == index"></image> </view>
</view> </view>
</template>
<text class="foot-label" id="navIndexLabel">{{item.nav_name}}</text> <script>
</view> export default {
</view> name: "nav",
</view> data() {
</template> return {
navList: [],
<script> foot_width: '20%',
export default { };
name: "nav", },
props:{ methods: {
current:{ getFootnav() {
type:Number, let _that = this;
default: 0, uni.request({
} url: 'https://zhsq.hshuishang.com/Miniapi/Index/footer_nav_list',
}, method: 'post',
data() { header: {
return { 'Content-type': 'application/x-www-form-urlencoded'
navList: [ },
{ data: {},
photo:"http://192.168.0.172:5500/footer_home.png", dataType: 'json',
photoAc:"http://192.168.0.172:5500/footer_homeAc.png", success: (result) => {
nav_name:"首页", result.data[0].url = "/pages/index/index"
url:"/pages/index/index" result.data[1].url = "/pages/device/device"
}, result.data[2].nav_name = "手机通行"
{ result.data[2].url = "/pages/phoneGo/phoneGo"
photo:"http://192.168.0.172:5500/footer_community.png",
photoAc:"http://192.168.0.172:5500/footer_communityAc.png", result.data[3].url = `/packages/community/index/index`
nav_name:"我的小区", result.data[4].url = "/pages/user/index"
url:"/packages/community/index/index"
}, result.data.splice(1, 2);
{ let footWidth = (100 / result.data.length).toFixed(2) + '%';
photo:"http://192.168.0.172:5500/footer_shop.png", this.navList = result.data;
photoAc:"http://192.168.0.172:5500/footer_shopAc.png", this.foot_width = footWidth;
nav_name:"优选商城", },
url:"" });
}, },
{
photo:"http://192.168.0.172:5500/footer_door.png",
photoAc:"http://192.168.0.172:5500/footer_doorAc.png", //
nav_name:"上门服务", NotOpen() {
url:"" uni.showModal({
}, title: '提示',
{ content: '此功能暂未开通!',
photo:"http://192.168.0.172:5500/footer_mine.png", showCancel: false,
photoAc:"http://192.168.0.172:5500/footer_mineAc.png", complete: (res) => {
nav_name:"我的", if (res.cancel) {
url:"/pages/user/index"
}, }
], }
foot_width: '20%', })
}; },
},
methods: {
getFootnav() { jump(e) {
let _that = this; const ctoken = uni.getStorageSync('ctoken');
uni.request({ const authen = ['/pages/index/index', '/pages/user/index'];
url: 'https://zhsq.hshuishang.com/Miniapi/Index/footer_nav_list', // ctoken tab访
method: 'post', if (authen.includes(e.currentTarget.dataset.url)) {
header: { uni.redirectTo({
'Content-type': 'application/x-www-form-urlencoded' url: e.currentTarget.dataset.url,
}, })
data: {}, return
dataType: 'json', }
success: (result) => { if (!ctoken) {
result.data[0].url = "/pages/index/index" uni.redirectTo({
result.data[1].url = "/pages/device/device" url: '/pages/login/login',
result.data[2].nav_name = "手机通行" })
result.data[2].url = "/pages/phoneGo/phoneGo" return;
}
result.data[3].url = `/packages/community/index/index` uni.redirectTo({
result.data[4].url = "/pages/user/index" url: e.currentTarget.dataset.url,
})
result.data.splice(1, 2); },
let footWidth = (100 / result.data.length).toFixed(2) + '%';
this.navList = result.data;
this.foot_width = footWidth; },
}, mounted() {
}); this.getFootnav();
}, }
}
</script>
//
NotOpen() { <style>
uni.showModal({ @import url("./nav.css");
title: '提示',
content: '此功能暂未开通!',
showCancel: false,
complete: (res) => {
if (res.cancel) {
}
}
})
},
jump(e) {
const ctoken = uni.getStorageSync('ctoken');
const authen = ['/pages/index/index', '/pages/user/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>
<style>
@import url("./nav.css");
</style> </style>

View File

@ -1,15 +1,6 @@
page { page {
background-color: #ffffff; background-color: #F6F6FA;
padding: 0;
}
swiper {
height: 100%;
}
image {
width: 100%;
height: 100%;
} }
.container { .container {
@ -17,283 +8,316 @@ image {
flex-direction: column; flex-direction: column;
min-height: calc(100vh - 120rpx); min-height: calc(100vh - 120rpx);
width: 100%; width: 100%;
position: relative;
} }
.searchBox { .searchBox {
display: flex; display: flex;
align-items: center; align-items: center;
position: absolute; padding: 0 20rpx;
left: 0; /* margin-top: 35rpx; */
z-index: 2; justify-content: space-between;
background-color: #fff;
} }
.searchBox_add { .searchBox_add {
margin-left: 38rpx;
}
.emptyCommunity {
font-size: 28rpx;
color: #222222;
width: 200rpx;
height: 44rpx;
background: rgba(255, 255, 255, 0.8);
border-radius: 100rpx 100rpx 100rpx 100rpx;
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; font-weight: 400;
}
.MyCommunity {
display: flex;
align-items: center;
justify-content: space-between;
white-space: nowrap;
font-size: 28rpx;
color: #222222;
padding: 2rpx 14rpx;
background: rgba(255, 255, 255, 0.8);
border-radius: 100rpx 100rpx 100rpx 100rpx;
}
.MyCommunity image {
width: 28rpx;
height: 28rpx;
}
.MyCommunity span {
margin: 0 10rpx;
}
.swiperBox1 {
height: 500rpx;
width: 750rpx;
position: relative;
}
.swiperBox1 swiper {
height: 100%;
}
.swiperBox1::after {
content: '';
width: 100%;
position: absolute;
left: 0;
bottom: 0;
height: 120rpx;
/* 从上到下 透明渐变成白色 */
background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%);
}
.dot {
position: absolute;
left: 50%;
transform: translateX(-50%);
bottom: 107rpx;
display: flex;
align-items: center;
justify-content: center;
}
.dotItem {
width: 11rpx;
height: 11rpx;
background: rgba(255, 55, 11, 0.8);
border-radius: 100rpx 100rpx 100rpx 100rpx;
margin: 0 5rpx;
}
.active {
width: 26rpx;
}
.swiperBox2 {
height: 150rpx;
width: 710rpx;
margin: 0 auto;
margin-top: -96rpx;
}
.funcList {
display: flex;
align-items: center;
flex-wrap: wrap;
margin-top: 37rpx;
}
.funcItem {
width: 20%;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
font-size: 28rpx;
color: #222222;
}
.funcItem image {
width: 100rpx;
height: 100rpx;
margin-bottom: 16rpx;
}
.ads {
width: 710rpx;
height: 200rpx;
margin: 0 auto;
margin-top: 40rpx;
}
.tabs {
margin-top: 32rpx;
display: flex;
align-items: center;
background: #F6F6FA;
height: 100rpx;
padding: 0 20rpx;
box-sizing: border-box;
}
.tabItem {
font-size: 30rpx; font-size: 30rpx;
color: #222222; color: #000000;
margin-right: 60rpx;
height: 42rpx;
} }
.searchBox_add2{
.active2 { font-size: 36rpx;
font-size: 30rpx;
font-weight: 700; font-weight: 700;
position: relative;
} }
.active2::after { .searchBox_add image {
content: ''; width: 30rpx;
background: url(http://192.168.0.172:5500/com_active.png) no-repeat; height: 30rpx;
background-size: 100% 100%; margin-right: 16rpx;
width: 52rpx;
height: 22rpx;
position: absolute;
left: 50%;
bottom: -16rpx;
transform: translateX(-50%);
} }
.newsItem { .myRealEstate {
font-weight: 700;
padding-top: 36rpx;
font-weight: normal;
font-size: 36rpx;
color: #222222;
text-align: center;
background-color: #fff;
padding-bottom: 40rpx;
}
.myRealEstate .btn {
width: 600rpx;
height: 90rpx;
background: linear-gradient(91deg, #FF7658 0%, #FF370B 100%);
border-radius: 100rpx 100rpx 100rpx 100rpx;
font-weight: normal;
font-size: 36rpx;
color: #FFFFFF;
font-weight: 700;
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: space-between; justify-content: center;
padding: 30rpx 0; margin: 0 auto;
margin: 0 20rpx; margin-top: 30rpx;
box-sizing: border-box;
border-bottom: 1rpx solid #EBEBEB;
} }
.newsItem_left { .nearby {
padding: 0 20rpx;
margin-top: 20rpx;
background-color: #fff;
padding-top: 20rpx;
box-sizing: border-box;
flex: 1; flex: 1;
} }
.newsItem_left_tit { .nearbyTit {
font-size: 32rpx; display: flex;
justify-content: space-between;
}
.nearbyTit_left {
font-size: 36rpx;
color: #222222; color: #222222;
margin-bottom: 10rpx; font-weight: 700;
} }
.newsItem_left_sub { .nearbyTit_right {
font-size: 26rpx; font-size: 26rpx;
color: #999999; color: #999999;
}
.newsItem_right {
width: 180rpx;
height: 160rpx;
border-radius: 20rpx;
overflow: hidden;
}
.tips {
font-size: 26rpx;
color: #999999;
text-align: center;
background-color: #f6f6fa;
padding: 40rpx;
}
.bigAds {
position: fixed;
left: 0;
right: 0;
top: 0;
bottom: 0;
background: rgba(0, 0, 0, 0.16);
z-index: 3;
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center;
} }
.bigAdsCon { .nearbyTit_right image {
width: 30rpx;
height: 30rpx;
margin-right: 10rpx;
}
.empty {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
justify-content: center;
align-items: center;
font-weight: normal;
font-size: 28rpx;
color: #999999;
margin-top: 110rpx;
}
.empty image {
width: 366rpx;
height: 226rpx;
margin-bottom: 27rpx;
}
.communityItem {
border-bottom: 1rpx solid #EBEBEB;
margin-top: 32rpx;
}
.communityItem_msg {
font-size: 26rpx;
color: #999999;
margin-top: 20rpx;
padding-bottom: 30rpx;
}
.communityItem_Box {
display: flex;
}
.communityItem_Box_left {
width: 180rpx;
overflow: hidden;
height: 180rpx;
border-radius: 20rpx 20rpx 20rpx 20rpx;
margin-right: 20rpx;
}
.communityItem_Box_left image {
width: 100%;
height: 100%;
}
.communityItem_Box_right {
flex: 1;
}
.communityItem_Box_right_tit {
font-size: 32rpx;
color: #222222;
margin-bottom: 8rpx;
}
.communityItem_Box_right_com {
font-size: 26rpx;
color: #555555;
margin-top: 8rpx;
height: 72rpx;
line-height: 36rpx;
-webkit-line-clamp: 2;
/* 限制显示 2 行 */
-webkit-box-orient: vertical;
/* 垂直排列 */
overflow: hidden;
/* 超出部分隐藏 */
text-overflow: ellipsis;
display: -webkit-box;
}
.communityItem_Box_right_msg {
margin-top: 14rpx;
}
.communityItem_Box_right_msg_right {
width: 140rpx;
height: 40rpx;
background: #FF370B;
border-radius: 100rpx 100rpx 100rpx 100rpx;
font-size: 26rpx;
color: #FFFFFF;
display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
} }
.bigAdsCon .bigAdsCon_img { .communityItem_Box_right_msg {
width: 660rpx;
height: 700rpx;
}
.bigAdsCon .close {
width: 50rpx;
height: 50rpx;
margin-top: 53rpx;
}
.bigAdsCon2 {
width: 600rpx;
height: 480rpx;
background: #FFFFFF;
border-radius: 20rpx 20rpx 20rpx 20rpx;
box-sizing: border-box;
padding: 23rpx 20rpx 0;
}
.bigAdsCon2_img {
width: 560rpx;
height: 308rpx;
}
.AdsBtnList {
margin-top: 35rpx;
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: space-between; justify-content: space-between;
padding: 0 25rpx;
box-sizing: border-box;
} }
.AdsBtnItem1 { .communityItem_Box_right_msg_left {
width: 230rpx; display: flex;
height: 70rpx; align-items: center;
background: #D9D9D9; }
.communityItem_Box_right_msg_left1 {
width: 110rpx;
height: 40rpx;
background: rgba(255, 81, 42, 0.1);
border-radius: 100rpx 100rpx 100rpx 100rpx; border-radius: 100rpx 100rpx 100rpx 100rpx;
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
font-size: 36rpx; font-size: 22rpx;
color: #222222; color: #555555;
margin-right: 20rpx;
} }
.AdsBtnItem2 { .communityItem_Box_right_msg_left1 image {
width: 230rpx; width: 24rpx;
height: 70rpx; height: 24rpx;
background: #FF370B; margin-right: 10rpx;
}
.communityItem_Box_right_msg_left2 {
width: 110rpx;
height: 40rpx;
background: #FFF2DA;
border-radius: 100rpx 100rpx 100rpx 100rpx; border-radius: 100rpx 100rpx 100rpx 100rpx;
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
font-size: 22rpx;
color: #555555;
}
.communityItem_Box_right_msg_left2 image {
width: 24rpx;
height: 24rpx;
margin-right: 10rpx;
}
.myRealEstates {
width: 710rpx;
height: 200rpx;
margin: 0 auto;
position: relative;
}
.myRealEstates image {
width: 100%;
height: 100%;
object-fit: cover;
position: absolute;
z-index: 1;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
}
.name {
font-size: 50rpx;
color: #FFFFFF;
text-shadow: 0px 2px 2px rgba(0, 0, 0, 0.6);
text-align: center;
position: relative;
z-index: 2;
padding-top: 24rpx;
}
.Visitor {
font-weight: normal;
font-size: 24rpx;
color: #FFFFFF;
width: 380rpx;
display: flex;
align-items: center;
justify-content: center;
height: 52rpx;
margin: 0 auto;
margin-top: 30rpx;
position: relative;
z-index: 2;
background: rgba(0, 0, 0, 0.3);
border-radius: 10rpx 10rpx 10rpx 10rpx;
}
.Householder {
font-weight: normal;
font-size: 24rpx;
color: #FFFFFF;
white-space: nowrap;
padding: 9rpx 36rpx;
margin: 0 auto;
margin-top: 30rpx;
position: relative;
z-index: 2;
background: rgba(0, 0, 0, 0.3);
border-radius: 10rpx 10rpx 10rpx 10rpx;
display: inline-block;
}
.addRealEstateList{
height: auto;
background-color: #fff;
padding-bottom: 40rpx;
margin-bottom: 20rpx;
}
.addRealEstate {
margin-top: 54rpx;
font-size: 36rpx; font-size: 36rpx;
color: #FFFFFF; color: #FFFFFF;
display: flex;
align-items: center;
justify-content: center;
width: 600rpx;
height: 90rpx;
background: linear-gradient(91deg, #FF7658 0%, #FF370B 100%);
border-radius: 100rpx 100rpx 100rpx 100rpx;
margin: 0 auto;
} }

View File

@ -1,106 +1,96 @@
<template> <template>
<div class="container"> <view class="container">
<div class="searchBox" :style="{ height: localHeight + 'px', paddingTop: top + 'px' }">
<div class="searchBox_add"> <view class="addRealEstateList" :style="{ paddingTop: 54 + top + 'px' }">
<div class="emptyCommunity" @click="addCommunity">添加我的房产</div> <div class="addRealEstate" @click="apply">
<div class="MyCommunity" v-if="false"> 申请入驻 / 新增房产
<image src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/community/community_mycommunity.png" </div>
mode="aspectFill"></image> </view>
<span>惠生活</span>
<u-icon name="arrow-down" color="#999999" size="28"></u-icon> <view class="searchBox" :style="{ height: localHeight + 'px', paddingTop: top + 'px' }" v-if="false">
<view class="searchBox_add">
<img src="http://192.168.0.172:5500/com_communityIcon.png" alt="" />
我的房产
</view>
</view>
<view class="searchBox">
<view class="searchBox_add2">
我的房产
</view>
</view>
<div class="myRealEstate">
<div class="myRealEstateEmpty" v-if="false">
抱歉您尚未绑定任何房产
<div class="btn" @click="apply">
商户申请入驻
</div> </div>
</div> </div>
<div class="myRealEstates">
<image src="http://192.168.0.172:5500/com_communityNav.png" mode="aspectFill"></image>
<div class="name">滏阳锦苑</div>
<div class="Visitor" v-if="false">访客身份 点击立即入驻本社区</div>
<div class="Householder">
3号楼 2单元 17 1706 | 1 | 物业公积金55.68
</div>
</div>
</div> </div>
<div class="swiperBox1"> <div class="nearby">
<swiper> <div class="nearbyTit">
<swiper-item> <div class="nearbyTit_left">附近已开通的小区</div>
<image src="http://192.168.0.172:5500/test.png"></image> <div class="nearbyTit_right">
</swiper-item> <image src="http://192.168.0.172:5500/com_searchIcon.png" alt="" mode="aspectFill" />
搜索
<swiper-item>
<image src="http://192.168.0.172:5500/test.png"></image>
</swiper-item>
</swiper>
<div class="dot">
<div class="dotItem"></div>
<div class="dotItem active"></div>
</div>
</div>
<div class="swiperBox2">
<swiper>
<swiper-item>
<image src="http://192.168.0.172:5500/com_communityNav.png"></image>
</swiper-item>
<swiper-item>
<image src="http://192.168.0.172:5500/com_communityNav.png"></image>
</swiper-item>
</swiper>
</div>
<div class="funcList">
<div class="funcItem" v-for="item in functionList" @click="jump(item.link)">
<image :src="item.url"></image>
{{ item.name }}
</div>
</div>
<div class="ads">
<image src="http://192.168.0.172:5500/com_communityNav.png" mode="aspectFill"></image>
</div>
<div class="ads">
<image src="http://192.168.0.172:5500/com_communityNav.png" mode="aspectFill"></image>
</div>
<div class="tabs">
<div class="tabItem active2">物业公告</div>
<div class="tabItem">天气</div>
<div class="tabItem">放假时间</div>
<div class="tabItem">送饭</div>
</div>
<div class="newsList">
<div class="newsItem" v-for="item in 4">
<div class="newsItem_left">
<div class="newsItem_left_tit">关于小区停车场治理通告</div>
<div class="newsItem_left_sub">高尚</div>
</div>
<div class="newsItem_right">
<image src="http://192.168.0.172:5500/test.png"></image>
</div> </div>
</div> </div>
</div>
<div class="tips">下拉加载后续10条共计30条</div> <div class="empty" v-if="false">
<image src="http://192.168.0.172:5500/com_empty.png" alt="" mode="aspectFill" />
暂无信息
</div>
<div class="bigAds" v-if="ads1Show">
<div class="bigAdsCon"> <div class="communityList">
<div class="bigAdsCon_img"> <div class="communityItem" v-for="item in communityList">
<image src="http://192.168.0.172:5500/test.png"></image> <div class="communityItem_Box">
</div> <div class="communityItem_Box_left">
<div class="close" @click="closeAds"> <image :src="picUrl + item.community.pic" alt="" mode="aspectFill" />
<image src="http://192.168.0.172:5500/com_close.png"></image> </div>
<div class="communityItem_Box_right">
<div class="communityItem_Box_right_tit">滏阳锦苑</div>
<div class="communityItem_Box_right_com">物业公司河北锦绣繁华物业管理有限公司物 业管理有限公司</div>
<div class="communityItem_Box_right_msg">
<div class="communityItem_Box_right_msg_left">
<div class="communityItem_Box_right_msg_left1">
<image src="http://192.168.0.172:5500/com_navigationIcon.png" mode="aspectFill">
</image>
导航
</div>
<div class="communityItem_Box_right_msg_left2">
<image src="http://192.168.0.172:5500/com_phoneIconIcon.png" mode="aspectFill">
</image>
电话
</div>
</div>
<div class="communityItem_Box_right_msg_right" @click="desc">进入小区</div>
</div>
</div>
</div>
<div class="communityItem_msg">
河北省衡水市桃城区红旗大街与河阳路交叉口西北300米东车辆入口
</div>
</div> </div>
</div> </div>
</div> <nav-footer />
<div class="bigAds" v-if="ads2Show">
<div class="bigAdsCon2">
<div class="bigAdsCon2_img">
<image src="http://192.168.0.172:5500/test.png"></image>
</div>
<div class="AdsBtnList">
<div class="AdsBtnItem1" @click="closeAds">取消</div>
<div class="AdsBtnItem2">了解详情</div>
</div>
</div>
</div> </div>
<nav-footer :current="1"/> </view>
</div>
</template> </template>
<script> <script>
@ -126,38 +116,7 @@ export default {
page_size: 10, page_size: 10,
}, },
communityList: [], communityList: [],
flag: false, flag:false,
functionList: [
{
name: "报事报修",
link: "",
url: "http://192.168.0.172:5500/com_homeIcon1.png",
},
{
name: "物业缴费",
link: "/packages/community/propertyPayment/index",
url: "http://192.168.0.172:5500/com_homeIcon2.png",
},
{
name: "物业公积",
link: "/packages/community/providentFund/index",
url: "http://192.168.0.172:5500/com_homeIcon3.png",
},
{
name: "物业公积",
link: "",
url: "http://192.168.0.172:5500/com_homeIcon4.png",
},
{
name: "物业服务",
link: "",
url: "http://192.168.0.172:5500/com_homeIcon5.png",
},
],
ads1Show: false,
ads2Show: false,
} }
}, },
onLoad(options) { onLoad(options) {
@ -165,7 +124,7 @@ export default {
this.top = meun.top; this.top = meun.top;
// this.top = meun.height + meun.top; // this.top = meun.height + meun.top;
this.localHeight = meun.height; this.localHeight = meun.height;
// this.getCommunityList() this.getCommunityList()
}, },
@ -176,37 +135,25 @@ export default {
apply() { apply() {
NavgateTo("../applyOwer/index") NavgateTo("../applyOwer/index")
}, },
closeAds() {
this.ads1Show = false
this.ads2Show = false
},
jump(e) {
console.log(e);
NavgateTo(e)
},
addCommunity(){ getCommunityList() {
let that = this
request(apiArr.getCommunityList, 'POST', {
page_num: that.queryPage.page_num,
page_size: that.queryPage.page_size,
user_id:""
}).then(res => {
console.log(res)
if (res.rows.length == that.queryPage.page_size) {
that.queryPage.page_num++
that.flag = true
that.communityList = that.communityList.concat(res.rows)
}else{
that.flag = false
that.communityList = that.communityList.concat(res.rows)
}
})
}, },
// getCommunityList() {
// let that = this
// request(apiArr.getCommunityList, 'POST', {
// page_num: that.queryPage.page_num,
// page_size: that.queryPage.page_size,
// user_id:""
// }).then(res => {
// console.log(res)
// if (res.rows.length == that.queryPage.page_size) {
// that.queryPage.page_num++
// that.flag = true
// that.communityList = that.communityList.concat(res.rows)
// }else{
// that.flag = false
// that.communityList = that.communityList.concat(res.rows)
// }
// })
// },
}, },

View File

@ -1,145 +0,0 @@
page {
background-color: #f6f7fb;
}
.container {
.container_body {
background: url("http://127.0.0.1:5500/assets/community_providentFund_Group_1523.png") no-repeat;
background-size: 100% 100%;
}
.title {
margin-top: 11rpx;
margin-bottom: 20rpx;
text-align: center;
font-size: 36rpx;
color: #ffffff;
}
.title_bottom {
display: flex;
justify-content: center;
align-items: baseline;
font-size: 60rpx;
color: #ffffff;
margin-bottom: 24rpx;
view {
margin-right: 19rpx;
}
}
.name {
display: flex;
justify-content: center;
font-size: 28rpx;
color: #ffffff;
padding-bottom: 68rpx;
text {
margin-right: 10rpx;
}
}
.main {
margin: 20rpx 20rpx 0;
.person_info {
background: #FFFFFF;
border-radius: 20rpx 20rpx 20rpx 20rpx;
padding: 26rpx 32rpx 20rpx 20rpx;
margin-top: 20rpx;
&:first-child {
margin-top: 0;
}
.item {
display: flex;
justify-content: space-between;
margin-bottom: 20rpx;
.label {
font-size: 28rpx;
color: #999999;
position: relative;
.popup {
position: absolute;
padding: 20rpx;
width: 542rpx;
top: -200rpx;
background: rgba(0,0,0,0.7);
border-radius: 20rpx 20rpx 20rpx 20rpx;
font-size: 28rpx;
color: #FFFFFF;
.angle {
position: absolute;
bottom: -10px; /* 调整箭头位置 */
left: 128px;
width: 0;
height: 0;
border-left: 10px solid transparent;
border-right: 10px solid transparent;
border-top: 10px solid rgba(0,0,0,0.7);
}
}
}
.fix {
display: flex;
text {
margin-right: 10rpx;
}
}
.desc {
font-size: 28rpx;
color: #222222;
}
&:last-child{
margin-bottom: 0;
}
}
}
}
.btn {
width: 600rpx;
height: 90rpx;
line-height: 90rpx;
background: linear-gradient( 91deg, #FF7658 0%, #FF370B 100%);
border-radius: 100rpx 100rpx 100rpx 100rpx;
text-align: center;
font-size: 36rpx;
color: #FFFFFF;
margin: 77rpx auto 0;
}
.select_Popup {
.header {
margin: 0 33rpx;
height: 93rpx;
display: flex;
justify-content: space-between;
align-items: center;
.title {
font-size: 32rpx;
color: #222222;
}
.close {
font-size: 28rpx;
color: #999999;
}
}
.line {
height: 20rpx;
background: #F6F7FB;
}
.main {
max-height: 420rpx;
overflow: scroll;
margin: 0 20rpx;
.item {
height: 103rpx;
display: flex;
justify-content: space-between;
align-items: center;
border-bottom: 1rpx solid #EBEBEB;;
text {
font-size: 32rpx;
color: #222222;
}
.pic {
width: 34rpx;
height: 34rpx;
margin-right: 16rpx;
}
}
}
}
}

View File

@ -1,209 +0,0 @@
<template>
<view class="container">
<view class="container_body" :style="{ paddingTop: top + 'px' }">
<view class="title">物业公积金</view>
<view class="title_bottom">
<view>{{ moeny }}</view>
<u-icon name="info-circle" size="30rpx" color="linear-gradient( 180deg, #FFFFFF 0%, #FFD7D7 100%);" />
</view>
<view class="name" @click="headerSwitchClick">
<text>{{defaultName.name}}</text>
<u-icon name="arrow-right" color="#FFFFFF" size="30rpx" />
</view>
</view>
<view class="main">
<view class="person_info" v-for="(item,index) in list" :key="index">
<view class="item">
<view class="label">姓名</view>
<view class="desc">{{ item.name }}</view>
</view>
<view class="item">
<view class="label">身份</view>
<view class="desc">{{ item.identity }}</view>
</view>
<view class="item">
<view class="label">手机号</view>
<view class="desc">{{item.mobile}}</view>
</view>
<view class="item">
<view class="label">房产总数</view>
<view class="desc">{{ item.houseNum }}</view>
</view>
<view class="item">
<view class="label fix">
<text>物业费公积金总余额</text>
<u-icon name="info-circle-fill" size="30rpx" color="red" @click="headerIconClick(index)" />
<view class="popup" v-if="item.popupShow" @click="headerIconClick(index)">
{{ item.identity == '业主' ? ownerDesc : desc }}
<view class="angle"></view>
</view>
</view>
<view class="desc">{{item.fund}}</view>
</view>
</view>
</view>
<view class="btn">去抵扣物业账单</view>
<u-popup :show="show" :round="50" @close="close">
<view class="select_Popup">
<view class="header">
<view></view>
<view class="title">选择房源</view>
<view class="close">取消</view>
</view>
<view class="line"></view>
<view class="main">
<view class="item" v-for="(item,index) in houseList" :key="index" @click="headerConfirmClick(item)">
<text>{{ item.name }}</text>
<image
v-if="item.checked"
class="pic"
src="http://127.0.0.1:5500/assets/community_providentFund_Group_1444.png"
mode="scaleToFill"
/>
<image
v-else
class="pic"
src="http://127.0.0.1:5500/assets/community_providentFund_Ellipse_160.png"
mode="scaleToFill"
/>
</view>
</view>
</view>
</u-popup>
</view>
</template>
<script>
import {
request,
picUrl,
uniqueByField,
menuButtonInfo,
} from '../../../utils';
import { apiArr } from '../../../api/v2Community';
export default {
data() {
return {
top: '',
moeny: 0.00,
show: false,
ownerDesc: '本房产的物业公积金为该房产的所有成员物业公积金总和。无需经过成员同意便可用于本房产的物业费抵扣,一旦成功抵扣,成员所拥有的物业公积金将自动进行扣除。',
desc: '物业公积金可通用至您加入的所有房产,任一房产的物业相关费用均可用该物业公积金抵扣。',
defaultName: '',
list: [
{
name: '高尚',
identity: '业主',
mobile: '15931111111',
houseNum: '9',
fund: '50.00',
popupShow: false
},
{
name: '李明',
identity: '家属',
mobile: '15931111122',
houseNum: '6',
fund: '50.00',
popupShow: false
},
{
name: '王五',
identity: '租户',
mobile: '15931111316',
houseNum: '2',
fund: '50.00',
popupShow: false
}
],
houseList: [
{
name: '2323世纪名城1号楼1单元101室',
checked: false,
},
{
name: '2323世纪名城1号楼1单元102室',
checked: false,
},
{
name: '2323世纪名城1号楼1单元103室',
checked: false,
},
{
name: '2323世纪名城1号楼1单元104室',
checked: false,
},
{
name: '2323世纪名城1号楼1单元105室',
checked: false,
},
{
name: '2323世纪名城1号楼1单元201室',
checked: false,
},
{
name: '2323世纪名城1号楼1单元202室',
checked: false,
},
{
name: '2323世纪名城1号楼1单元203室',
checked: false,
},
]
}
},
onLoad(options) {
this.defaultName = {
...this.houseList[0],
checked: true
};
const meun = menuButtonInfo();
this.top = meun.height + meun.top;
},
methods: {
headerConfirmClick(item) {
this.defaultName = {
...item,
checked: true
};
this.show = false;
},
headerSwitchClick() {
this.show = true;
const newRes = this.houseList.map(item => {
if (item.name === this.defaultName.name) {
return {
...item,
checked: true
}
}
return {
...item,
checked: false
}
});
console.log('newResnewRes', newRes);
this.houseList = newRes;
},
headerIconClick(ind) {
this.list[ind].popupShow = !this.list[ind].popupShow
},
close() {
this.show = false;
},
},
}
</script>
<style lang="scss">
@import './index.scss';
</style>

View File

@ -1,5 +1,5 @@
{ {
"pages": [ "pages": [ //pageshttps://uniapp.dcloud.io/collocation/pages
{ {
"path": "pages/index/index", "path": "pages/index/index",
"style": { "style": {
@ -220,14 +220,6 @@
"navigationBarBackgroundColor": "#fff" "navigationBarBackgroundColor": "#fff"
} }
}, },
{
"path": "providentFund/index",
"style": {
"navigationStyle": "custom",
"navigationBarTitleText": "",
"navigationBarBackgroundColor": "#fff"
}
},
{ {
"path": "ownerList/index", "path": "ownerList/index",
"style": {} "style": {}

View File

@ -93,13 +93,18 @@
<script> <script>
import { apiArr } from "../../api/area.js"; import { apiArr } from "../../api/area.js";
import { request } from "../../utils/index.js"; import { apiArr as areaApi } from "../../api/area.js";
import { util, picUrl, request, menuButtonInfo } from "../../utils/index.js";
import { pinyin } from "pinyin-pro";
console.log(pinyin("汉语拼音"), "zz");
export default { export default {
data() { data() {
return { return {
location: {}, location: {},
searchValue: "", searchValue: "",
currentCity: "衡水",
hotCities: [ hotCities: [
"上海", "上海",
"北京", "北京",
@ -118,7 +123,62 @@ export default {
"武汉", "武汉",
"无锡", "无锡",
], ],
// rawData: [
{
id: 1,
name: "阿巴嘎旗",
letters: "A",
lat: "39.908823",
long: "116.39747",
},
{
id: 2,
name: "阿坝",
letters: "A",
lat: "31.196322",
long: "121.339841",
},
{
id: 3,
name: "阿坝县",
letters: "A",
},
{
id: 4,
name: "阿城区",
letters: "A",
},
{
id: 5,
name: "阿尔山市",
letters: "B",
},
{
id: 6,
name: "阿合奇县",
letters: "B",
},
{
id: 7,
name: "阿克塞哈萨克族自治县",
letters: "B",
},
{
id: 8,
name: "阿克苏地区",
letters: "C",
},
{
id: 9,
name: "阿克苏市",
letters: "D",
},
{
id: 10,
name: "阿拉尔",
letters: "E",
},
],
letters: [ letters: [
"A", "A",
"B", "B",
@ -147,6 +207,7 @@ export default {
"Y", "Y",
"Z", "Z",
], ],
groupedData: [], //
activeId: "", // ID activeId: "", // ID
activeLetter: "", // activeLetter: "", //
searchRes: [ searchRes: [
@ -170,14 +231,13 @@ export default {
}, },
], ],
cityList: [], // proviceList: [],
groupedData: [], // cityList: [],
}; };
}, },
onLoad() { onLoad(options) {
this.location = uni.getStorageSync("location"); this.location = uni.getStorageSync("location");
this.init(); this.getArea();
}, },
methods: { methods: {
headerSelectMapClick(item) { headerSelectMapClick(item) {
@ -222,7 +282,6 @@ export default {
this.searchValue = e; this.searchValue = e;
console.log("搜ee索:", e); console.log("搜ee索:", e);
}, },
groupData() { groupData() {
const map = {}; const map = {};
this.letters.forEach((letter) => { this.letters.forEach((letter) => {
@ -237,13 +296,15 @@ export default {
map[item.letters].list.push(item); map[item.letters].list.push(item);
} }
}); });
console.log(
"112312313",
Object.values(map).filter((group) => group.list.length > 0)
);
// //
this.groupedData = Object.values(map).filter( this.groupedData = Object.values(map).filter(
(group) => group.list.length > 0 (group) => group.list.length > 0
); );
}, },
// //
scrollToLetter(letter) { scrollToLetter(letter) {
this.$nextTick(() => { this.$nextTick(() => {
@ -251,21 +312,6 @@ export default {
this.activeLetter = letter; this.activeLetter = letter;
}); });
}, },
async init() {
const res = await request(apiArr.getRegionList, 'POST', {
page_num: 1,
page_size: 100,
});
console.log('111111', res);
this.cityList = res.rows;
const hotsList = res.rows.filter((item) => item.hot === 2);
console.log('热门城市信息', hotsList);
await this.groupData();
},
// //
handleScroll(e) { handleScroll(e) {
const query = uni.createSelectorQuery().in(this); const query = uni.createSelectorQuery().in(this);
@ -287,6 +333,59 @@ export default {
this.activeLetter = activeLetter; this.activeLetter = activeLetter;
} }
}, },
async getArea() {
let that = this;
const res = await request(apiArr.getRegionList, 'POST', {
page_num: 1,
page_size: 100,
});
console.log('111111', res);
this.cityList = res.rows;
await this.groupData();
return
request(areaApi.getArea, "POST", {}).then((res) => {
this.proviceList = res.rows;
this.proviceList.forEach((item) => {
that.getCity(item.ad_code);
});
});
},
getCity(e) {
request(areaApi.getArea, "POST", { parent_ad_code: e }).then((res) => {
const citiesWithLetters = res.rows.map((city) => {
const firstChar = city.ad_name.charAt(0);
//
if (/^[A-Za-z]$/.test(firstChar)) {
return { ...city, letters: firstChar.toUpperCase() };
}
// 使 pinyin-pro
const firstPinyin = pinyin(firstChar, {
pattern: "first",
type: "array",
toneType: "none",
});
const firstPinyinChar = firstPinyin[0]
? firstPinyin[0].toUpperCase()
: "#";
// '#'
const letter = /^[A-Z]$/.test(firstPinyinChar)
? firstPinyinChar
: "#";
if (letter === "#") {
console.log("当前城市", city.short_name);
}
return { ...city, letters: letter };
});
this.cityList = this.cityList.concat(citiesWithLetters);
console.log(
"this.cityList.concat(citiesWithLetters);this.cityList.concat(citiesWithLetters);",
this.cityList.concat(citiesWithLetters)
);
});
},
}, },
}; };
</script> </script>

View File

@ -114,7 +114,7 @@
<view>客服</view> <view>客服</view>
</view> </view>
<view style="padding-top: 174rpx;"></view> <view style="padding-top: 174rpx;"></view>
<nav-footer :current="4"/> <nav-footer />
</view> </view>
</template> </template>

File diff suppressed because one or more lines are too long

View File

@ -53,7 +53,6 @@
"chooseMsg/index", "chooseMsg/index",
"chooseMsgInfo/index", "chooseMsgInfo/index",
"serverList/index", "serverList/index",
"providentFund/index",
"ownerList/index", "ownerList/index",
"propertyPayment/index" "propertyPayment/index"
] ]

File diff suppressed because it is too large Load Diff

View File

@ -7,33 +7,12 @@
"condition": { "condition": {
"miniprogram": { "miniprogram": {
"list": [ "list": [
{
"name": "省市区联动",
"pathName": "packages/communityService/reservationApply/index",
"query": "",
"scene": null,
"launchMode": "default"
},
{
"name": "packages/community/providentFund/index",
"pathName": "packages/community/providentFund/index",
"query": "",
"launchMode": "default",
"scene": null
},
{
"name": "packages/community/index/index",
"pathName": "packages/community/index/index",
"query": "",
"launchMode": "default",
"scene": null
},
{ {
"name": "pages/shopcity/shopcity", "name": "pages/shopcity/shopcity",
"pathName": "pages/shopcity/shopcity", "pathName": "pages/shopcity/shopcity",
"query": "", "query": "",
"launchMode": "default", "scene": null,
"scene": null "launchMode": "default"
} }
] ]
} }