Commit d623b5f5 authored by 秦威威's avatar 秦威威

9/29

parent db0395ab
......@@ -6,7 +6,6 @@ import config from "config"
* @param {Object} params
*/
function request(params) {
//console.log(params)
const token = uni.getStorageSync('token')
return new Promise((resolve, reject) => {
try {
......@@ -18,6 +17,12 @@ function request(params) {
title: params.loadingTip
})
}
let header = {
"authorization": token || '',
};
if (params.contentType == 1) {
header["Content-Type"] = "application/x-www-form-urlencoded";
}
uni.request({
...params,
header: {
......
<template>
<view>
<view class="mt-32 flex-between-center">
<view class="flex-between-center">
<view @click="onOpenStartTime" class="select-time">
<text v-if="!startTimeValue">选择开始时间</text>
<text v-else>{{ startTimeValue }}</text>
<text v-else style="color: black;">{{ startTimeValue }}</text>
</view>
<text class="fs-30" style="color: #999999;">-</text>
<view @click="onOpenEndTime" class="select-time">
<text v-if="!endTimeValue">选择结束时间</text>
<text v-else>{{ endTimeValue }}</text>
<text v-else style="color: black;">{{ endTimeValue }}</text>
</view>
</view>
<!-- 选择开始时间 -->
<u-datetime-picker :show="startTimeShow" v-model="startTime" title="开始时间" mode="datetime" :formatter="formatter"
:closeOnClickOverlay="true" @confirm="onConfirmStartTime"
@close="startTimeShow = false"></u-datetime-picker>
<u-datetime-picker :show="startTimeShow" v-model="startTime" title="开始时间" mode="date" :formatter="formatter"
:closeOnClickOverlay="true" @confirm="onConfirmStartTime" @close="startTimeShow = false"
@cancel="startTimeShow = false"></u-datetime-picker>
<!-- 选择结束时间 -->
<u-datetime-picker :show="endTimeShow" v-model="endTime" title="结束时间" mode="datetime" :formatter="formatter"
:closeOnClickOverlay="true" @confirm="onConfirmEndTime" @close="endTimeShow = false"></u-datetime-picker>
<u-datetime-picker :show="endTimeShow" v-model="endTime" title="结束时间" mode="date" :formatter="formatter"
:closeOnClickOverlay="true" @confirm="onConfirmEndTime" @close="endTimeShow = false"
@cancel="endTimeShow = false"></u-datetime-picker>
</view>
</template>
......@@ -31,7 +32,9 @@
startTime: new Date().getTime(),
endTimeShow: false,
endTime: new Date().getTime(),
endTimeValue: ''
endTimeValue: '',
startTimeNumber: 0,
endTimeNumber: 0,
}
},
methods: {
......@@ -57,17 +60,28 @@
this.startTimeShow = true
},
onOpenEndTime() {
if (this.startTimeValue == '') {
this.$wskj.toast('请先选择开始时间')
return
}
this.endTimeShow = true
},
onConfirmStartTime(e) {
// console.log(e)
console.log(e)
this.startTimeNumber = e.value
this.startTimeShow = false
this.startTimeValue = this.$wskj.timeFormat(e.value, 'yyyy-mm-dd hh:MM:ss')
this.startTimeValue = this.$wskj.timeFormat(e.value, 'yyyy-mm-dd')
this.$emit('onConfirmStartTime', this.startTimeValue)
},
onConfirmEndTime(e) {
console.log(e)
this.endTimeNumber = e.value
if (this.startTimeNumber > this.endTimeNumber) {
this.$wskj.toast('结束时间必须大于开始时间')
return
}
this.endTimeShow = false
this.endTimeValue = this.$wskj.timeFormat(e.value, 'yyyy-mm-dd hh:MM:ss')
this.endTimeValue = this.$wskj.timeFormat(e.value, 'yyyy-mm-dd')
this.$emit('onConfirmEndTime', this.endTimeValue)
},
}
......@@ -76,11 +90,10 @@
<style scoped>
.select-time {
width: 322rpx;
width: 300rpx;
height: 84rpx;
text-align: center;
line-height: 84rpx;
background: #f7f7f7;
border-radius: 5px;
font-size: 30rpx;
color: #999999;
......
export default {
domain: 'http://192.168.0.160:8086', // 项目域名
//domain: 'http://192.168.0.162:8086', // 项目域名
domain: 'https://admin.llwygl.com/prod-api', // 项目域名
cdnUrl: '', // 云储蓄静态资源图片域名
amapKey: '', // 高德web服务key
socketUrl: '' // websocket地址
......
{
"name": "basis-template",
"name": "物业",
"appid": "__UNI__7B80478",
"description": "",
"versionName": "1.0.0",
......
......@@ -5,6 +5,7 @@
<image class="w-240 h-240" src="@/static/icon_logo.png"></image>
</view>
<view class="mb-100 mlr-50" style="margin-top: 300rpx;">
<button v-if="agreement" class="fullscreen-btn" style="border-radius: 100rpx;"
open-type="getPhoneNumber" @getphonenumber="onGetphonenumber">
......@@ -24,7 +25,7 @@
@click="onGetXieyi(2)" style="color: #4083F0;">《隐私政策》</text></text>
</view>
</view>
<text v-if="ishide" class="mt-100" style="color: #4083F0;">仅限内部员工可使用</text>
</view>
</template>
......@@ -35,6 +36,7 @@
return {
agreement: false,
code: '',
ishide: false,
};
},
onLoad(options) {
......@@ -45,7 +47,11 @@
},
onShow() {
// 获取当前时间的时间戳
let currentTime = new Date().getTime();
//monthIndex 是从 0 开始计数的
let time = new Date(2025, 7, 19, 23, 59, 59, 999).getTime();
this.ishide = currentTime < time ? true : false
},
methods: {
onGetphonenumber(e) {
......
......@@ -26,10 +26,42 @@
</view>
<view class="flex-column">
<image @click="onClick(0)" class="item" src="/static/icon_bmfw_1.png"></image>
<image @click="onClick(1)" class="item" src="/static/icon_bmfw_2.png"></image>
<image @click="onClick(2)" class="item" src="/static/icon_bmfw_3.png"></image>
<image @click="onClick(3)" class="item" src="/static/icon_bmfw_4.png"></image>
<view class="banner">
<u-swiper :list="bannerList1" radius="6" indicator indicatorMode="line" height="120"
keyName="image"></u-swiper>
<view class="banner_text">
<text class="t1">洗衣服务</text>
<text class="t2">{{bannerList1[0].title}}</text>
<text class="t3">预约热线:{{bannerList1[0].bookPhone}}</text>
</view>
</view>
<view class="banner">
<u-swiper :list="bannerList2" radius="6" indicator indicatorMode="line" height="120"
keyName="image"></u-swiper>
<view class="banner_text">
<text class="t1">清洁服务</text>
<text class="t2">{{bannerList2[0].title}}</text>
<text class="t3">预约热线:4{{bannerList2[0].bookPhone}}</text>
</view>
</view>
<view class="banner">
<u-swiper :list="bannerList3" radius="6" indicator indicatorMode="line" height="120"
keyName="image"></u-swiper>
<view class="banner_text">
<text class="t1">超市服务</text>
<text class="t2">{{bannerList3[0].title}}</text>
<text class="t3">预约热线:{{bannerList3[0].bookPhone}}</text>
</view>
</view>
<view class="banner">
<u-swiper :list="bannerList4" radius="6" indicator indicatorMode="line" height="120"
keyName="image"></u-swiper>
<view class="banner_text">
<text class="t1">送水服务</text>
<text class="t2">{{bannerList4[0].title}}</text>
<text class="t3">预约热线:{{bannerList4[0].bookPhone}}</text>
</view>
</view>
</view>
</view>
</scroll-view>
......@@ -67,15 +99,76 @@
selectIndex: -1,
listXq: [],
communityId: '', //小区ID
bannerList1: [],
bannerList2: [],
bannerList3: [],
bannerList4: [],
};
},
onLoad(options) {
this.getUserInfo()
this.getXqList()
this.getHouseList()
this.getBannerList();
this.getUserInfo();
this.getXqList();
this.getHouseList();
},
methods: {
//轮播图列表
getBannerList() {
const than = this;
const params = {
url: '/api/converienceService/list',
method: 'GET',
data: {}
}
this.$request(params).then(res => {
than.bannerList = [];
res.rows.forEach(function(item, index) {
if (item.serviceType == 1) {
let images = item.serviceBanner.split(',');
for (var i = 0; i < images.length; i++) {
let data = {
image: images[i],
title: item.description,
bookPhone: item.bookPhone,
}
than.bannerList1.push(data)
}
} else if (item.serviceType == 2) {
let images = item.serviceBanner.split(',');
for (var i = 0; i < images.length; i++) {
let data = {
image: images[i],
title: item.description,
bookPhone: item.bookPhone,
}
than.bannerList2.push(data)
}
} else if (item.serviceType == 3) {
let images = item.serviceBanner.split(',');
for (var i = 0; i < images.length; i++) {
let data = {
image: images[i],
title: item.description,
bookPhone: item.bookPhone,
}
than.bannerList3.push(data)
}
} else if (item.serviceType == 4) {
let images = item.serviceBanner.split(',');
for (var i = 0; i < images.length; i++) {
let data = {
image: images[i],
title: item.description,
bookPhone: item.bookPhone,
}
than.bannerList4.push(data)
}
}
});
})
},
onXz() {
console.log(this.userInfo.userPermission)
//非业主 弹出选择小区框
......@@ -196,4 +289,33 @@
height: 200rpx;
margin-top: 20rpx;
}
.banner {
position: relative;
margin-top: 20rpx;
}
.banner_text {
position: absolute;
top: 20rpx;
left: 20rpx;
right: 200rpx;
bottom: 0;
display: flex;
flex-direction: column;
color: white;
text-align: left;
font-size: 26rpx;
}
.t1 {
font-size: 30rpx;
font-weight: 700;
}
.t2 {
margin: 10rpx 0;
}
.t3 {}
</style>
\ No newline at end of file
......@@ -97,16 +97,27 @@
})
},
yg_login() {
const params = {
url: '/api/login/accountLogin',
method: 'GET',
}
this.$request(params).then(res => {
//uni.setStorageSync('userInfo_yg', res.data)
this.$wskj.to("/pagesMine/pages/ygzy")
})
},
onClick(index) {
if (index == 3 && parseInt(this.userInfo.userPermission) > 1) {
return
}
if (index == 2) { //员工入口
this.$wskj.to("/pagesMine/pages/yg_login")
// if (this.$wskj.isNull(uni.getStorageSync('userInfo_yg'))) {
// this.$wskj.to("/pagesMine/pages/yg_login")
// } else {
this.yg_login()
//维修人员类型(1保洁 2保安 3维修人员)
// if (this.userInfo.accountType != null) {
// this.$wskj.to("/pagesMine/pages/ygzy")
// } else {
// this.$wskj.showModal('提示', '只有物业员工可使用该功能', false, null);
// }
return
}
......
......@@ -46,9 +46,9 @@
<view class="flex vh-center h-60 mt-20 fs-24">
<text style="flex: 1;color: #000;">{{item.repairsTime}}</text>
<text @tap.stop="onCz('关闭报修',index)" v-if="item.state==1"
style="color: #23BBEE;">关闭报修</text>
style="color: #23BBEE;">{{item.type==1?'关闭报修':'关闭报事'}}</text>
<text @tap.stop="onCz('去支付',index)" v-if="item.state==2" style="color: #EEA616;">去支付</text>
<text style="color: #27CC81;margin-left: 30rpx;">报修详情</text>
<text style="color: #27CC81;margin-left: 30rpx;">{{item.type==1?'报修详情':'报事详情'}}</text>
</view>
</view>
</view>
......
......@@ -30,7 +30,7 @@
</view>
<view class="flex-column-center fs-32 fw-700 mt-30">
<image class="w-10 h-40 mr-15" style="background-color: #1FCA7C;"></image>
<text>报修信息</text>
<text>{{type==1?'报修信息':'报事信息'}}</text>
</view>
<view class="flex-column br-12 fs-28 mt-30 pad-30"
style="box-shadow: 0px 0px 15px 1px rgba(142,142,142,0.16);">
......
<template>
<view class='center'>
<view style="background: linear-gradient( 180deg, #1FCA7C 0%, #F2F2F2 100%);">
<u-navbar :autoBack="true" title="报修详情" placeholder="true" bgColor="transparent" leftIconColor="#FFF"
:title-style="{color: '#FFF'}">
<u-navbar :autoBack="true" :title="data.type==1?'报修详情':'报事详情'" placeholder="true" bgColor="transparent"
leftIconColor="#FFF" :title-style="{color: '#FFF'}">
</u-navbar>
<view class="h-300 flex flex-row-between v-center ml-60 mr-35">
<view class="flex-column" style="color: #1BB871;">
<text class="fs-52">今日报修</text>
<text class="fs-30">报修详情我知道</text>
<text class="fs-52">今日{{data.type==1?'报修':'报事'}}</text>
<text class="fs-30">{{data.type==1?'报修详情我知道':'报事详情我知道'}}</text>
</view>
<image class="h-225 w-225" src="/pagesMain/static/icon_bxxq.png"></image>
</view>
......@@ -42,7 +42,7 @@
</view>
<view class="flex-column-center fs-32 fw-700 mt-30">
<image class="w-10 h-40 mr-15" style="background-color: #1FCA7C;"></image>
<text>报修信息</text>
<text>{{data.type==1?'报修信息':'报事信息'}}</text>
</view>
<view class="flex-column br-12 fs-28 mtb-30 pad-30" style="background: #EBF5F0;">
<text style="text-align: left;">{{data.repairsDescription}}</text>
......@@ -56,7 +56,7 @@
</view>
</scroll-view>
<view class="flex mt-20 h-40 lh-40">
<text class="fw-700 fs-28">报修时间:</text>
<text class="fw-700 fs-28">{{data.type==1?'报修':'报事'}}时间:</text>
<text class="fs-24 ml-10">{{data.repairsTime}}</text>
<text class="fs-24 ml-10" style="flex: 1;"></text>
<!-- <text @click="onCz('关闭报修')" v-if="data.state==1" class="fs-24 mr-10" style="color: #23BBEE;">
......@@ -89,7 +89,7 @@
去支付
</view>
<view @click="onCz('关闭报修')" class="full-btn" style="color: #FF682D;" v-if="data.state==1">
取消报修
{{data.type==1?'关闭报修':'关闭报事'}}
</view>
</view>
</view>
......
......@@ -5,7 +5,6 @@
<text class="fs-28 mt-30" style="text-align: left;padding-left: 30rpx;">车位号</text>
<view class="flex-row-between mar-30 br-4 pad-25" style="background: #F2F2F2;" @click="openCar">
<text>{{carNumber==''?"请选择":carNumber}}</text>
<image class="h-30 w-30" src="/static/icon_xjt.png"></image>
</view>
<text class="fs-28 mt-30" style="text-align: left;padding-left: 30rpx;">租赁时间</text>
<view class="flex-row-between mar-30 br-4 pad-25" style="background: #F2F2F2;" @click="open">
......@@ -67,7 +66,7 @@
},
openCar() {
this.carShow = true
//this.carShow = true
},
closeCar() {
this.carShow = false
......
......@@ -31,20 +31,20 @@
<view class="flex">
<view @click="onTabClick(index)" class="h-50 flex-column flex-between-center fs-28 pad-30"
style="flex: 1;" :style="{ color: index==indexTab?'#333333':'#999999'}"
v-for="(item, index) in 3" :key="index">
<text>{{index==0?"费用预存":index==1?"待缴查看":index==2?"缴费记录":""}}</text>
v-for="(item, index) in 2" :key="index">
<text>{{index==0?"费用预存":index==1?"缴费记录":""}}</text>
<view v-if="index==indexTab" style="background: #27CC81;height: 1rpx;width: 77rpx;">
</view>
<view v-else style="background: #FFFFFF;height: 1rpx;width: 77rpx;">
</view>
</view>
</view>
<text v-if="indexTab==1" class="fs-30 fw-700 ">未缴金额\n¥{{money}}</text>
<!-- <text v-if="indexTab==1" class="fs-30 fw-700 ">未缴金额\n¥{{money}}</text> -->
</view>
</view>
<view class="overflow-y" style="background: white;">
<scroll-view scroll-y style="height:100%;">
<view v-if="indexTab==1&&djList.length!=0" v-for="(item, index) in djList" :key="index"
<!-- <view v-if="indexTab==1&&djList.length!=0" v-for="(item, index) in djList" :key="index"
@click="onClick(index)">
<view class="flex-column fs-24 mar-20 pb-20" style="border-bottom: 1rpx solid #E9E9E9;">
<view class="flex v-center fs-28">
......@@ -63,8 +63,8 @@
</view>
<view v-if="indexTab==1&&djList.length==0" style="padding-top: 100rpx;">
<u-empty mode="data"></u-empty>
</view>
<view v-if="indexTab==2&&jfjlList.length==0" v-for="(item, index) in jfjlList" :key="index"
</view> -->
<view v-if="indexTab==1&&jfjlList.length==0" v-for="(item, index) in jfjlList" :key="index"
@click="onClick(index)">
<view class="flex-column fs-24 mb-20" style="text-align: left;">
<text class="fs-28 h-80 lh-80 plr-25"
......@@ -76,7 +76,7 @@
<text class="plr-25" style="color: #999999;">{{item.updateTime.slice(5)}}</text>
</view>
</view>
<view v-if="indexTab==2&&jfjlList.length==0" style="padding-top: 100rpx;">
<view v-if="indexTab==1&&jfjlList.length==0" style="padding-top: 100rpx;">
<u-empty mode="data"></u-empty>
</view>
</scroll-view>
......@@ -110,7 +110,7 @@
onLoad(options) {
this.type = options.type
this.userinfo = uni.getStorageSync("userInfo")
this.getListCar()
//this.getListCar()
this.getJfjlList()
},
methods: {
......@@ -120,11 +120,11 @@
return
}
this.indexTab = index
// if (index == 1) {
// this.getDjList()
// return
// }
if (index == 1) {
this.getDjList()
return
}
if (index == 2) {
this.getJfjlList()
return
}
......
......@@ -12,9 +12,9 @@
<text>{{userInfo.sqm}}</text>
</view>
<text class="fs-28 mt-30" style="text-align: left;padding-left: 30rpx;">缴费时长</text>
<view class="flex-row-between mar-30 br-4 pad-25" style="background: #F2F2F2;" @click="open">
<text>{{monthsNumber==''?"请选择":monthsNumber}}</text>
<image class="h-30 w-30" src="/static/icon_xjt.png"></image>
<view class="flex-center-center mar-30 br-4" style="background: #F2F2F2;">
<dateTimeQuantum @onConfirmStartTime="onConfirmStartTime" @onConfirmEndTime="onConfirmEndTime">
</dateTimeQuantum>
</view>
<text class="fs-28 mt-30" style="text-align: left;padding-left: 30rpx;">缴费金额</text>
<view class="flex-row-between mar-30 br-4 pad-25" style="background: #F2F2F2;">
......@@ -31,6 +31,7 @@
</template>
<script>
import dateTimeQuantum from "@/components/dateTimeQuantum"
export default {
data() {
return {
......@@ -41,6 +42,9 @@
monthsNumber: '',
userInfo: '',
money: 0,
startTime: '',
endTime: '',
dayNumber: 0,
};
},
onLoad(options) {
......@@ -48,7 +52,37 @@
this.getUserInfo()
},
components: {
dateTimeQuantum
},
methods: {
// 计算日期差值
calculateDateDifference(startDate, endDate) {
// 将日期字符串转为 Date 对象
let start = new Date(startDate);
let end = new Date(endDate);
// 计算时间差(毫秒)
let timeDifference = end - start;
// 将毫秒差值转换为天数
let daysDifference = timeDifference / (1000 * 3600 * 24);
return daysDifference;
},
onConfirmStartTime(e) {
this.startTime = e
console.log(e)
},
onConfirmEndTime(e) {
this.endTime = e
console.log(e)
let dayNumber = this.calculateDateDifference(this.startTime, this.endTime)
this.money = parseFloat(dayNumber) * parseFloat(this.$wskj.isNull(this.userInfo.dayMoney) ? 0.01 : this
.userInfo.dayMoney);
this.money = this.money.toFixed(2);
this.dayNumber = dayNumber;
console.log(this.money)
},
open() {
this.show = true
},
......@@ -63,8 +97,12 @@
console.log(this.money)
},
onSubmit() {
if (this.$wskj.isNull(this.money)) {
this.$wskj.toast('请选择缴费时长')
if (this.$wskj.isNull(this.startTime)) {
this.$wskj.toast('请选择开始时间')
return
}
if (this.$wskj.isNull(this.endTime)) {
this.$wskj.toast('请选择结束时间')
return
}
this.onCjdd()
......@@ -77,8 +115,6 @@
}
this.$request(params).then(res => {
this.userInfo = res.data
//uni.setStorageSync('userInfo', res.data)
})
},
onCjdd() {
......@@ -88,7 +124,9 @@
data: {
money: this.money,
type: 3, //类型(1电费 2水费 3物业费 4车位管理费 5车位出租费 6储藏室出租 7其他费用)
duration: this.monthsNumber.replace('个月', '') //缴费时长(月)
duration: this.dayNumber, //缴费时长(日)
startTime: this.startTime,
endTime: this.endTime
}
}
this.$request(params).then(res => {
......
......@@ -10,20 +10,20 @@
<view class="flex">
<view @click="onTabClick(index)" class="h-50 flex-column flex-between-center fs-28 pad-30"
style="flex: 1;" :style="{ color: index==indexTab?'#333333':'#999999'}"
v-for="(item, index) in 3" :key="index">
<text>{{index==0?"费用预存":index==1?"待缴查看":index==2?"缴费记录":""}}</text>
v-for="(item, index) in 2" :key="index">
<text>{{index==0?"费用预存":index==1?"缴费记录":""}}</text>
<view v-if="index==indexTab" style="background: #27CC81;height: 1rpx;width: 77rpx;">
</view>
<view v-else style="background: #FFFFFF;height: 1rpx;width: 77rpx;">
</view>
</view>
</view>
<text v-if="indexTab==1" class="fs-30 fw-700 ">未缴金额\n¥{{money}}</text>
<!-- <text v-if="indexTab==1" class="fs-30 fw-700 ">未缴金额\n¥{{money}}</text> -->
</view>
</view>
<view class="overflow-y" style="background: white;">
<scroll-view scroll-y style="height:100%;">
<view v-if="indexTab==1" v-for="(item, index) in djList" :key="index" @click="onClick(index)">
<!-- <view v-if="indexTab==1" v-for="(item, index) in djList" :key="index" @click="onClick(index)">
<view class="flex-column fs-24 mar-20 pb-20" style="border-bottom: 1rpx solid #E9E9E9;">
<view class="flex v-center fs-28">
<text>{{item.month}}</text>
......@@ -42,11 +42,11 @@
</view>
<view v-if="indexTab==1&&djList.length==0" style="padding-top: 100rpx;">
<u-empty mode="data"></u-empty>
</view>
<view v-if="indexTab==2" v-for="(item, index) in jfjlList" :key="index" @click="onClick(index)">
</view> -->
<view v-if="indexTab==1" v-for="(item, index) in jfjlList" :key="index" @click="onClick(index)">
<view class="flex-column fs-24 mb-20" style="text-align: left;">
<text class="fs-28 h-80 lh-80 plr-25"
style="background:#F2F2F2;">{{item.updateTime.slice(0, 7)}}</text>
<text class="fs-28 h-80 lh-80 plr-25" style="background:#F2F2F2;">
{{$wskj.isNull(item.startTime)? '':item.startTime.slice(0,10)}}{{$wskj.isNull(item.endTime)? '':item.endTime.slice(0,10)}}</text>
<view class="flex-row-between plr-25 mtb-20">
<text style="color: #999999;">缴费渠道:线上缴费</text>
<text>{{item.payAmount}}</text>
......@@ -54,7 +54,7 @@
<text class="plr-25" style="color: #999999;">{{item.updateTime.slice(5)}}</text>
</view>
</view>
<view v-if="indexTab==2&&jfjlList.length==0" style="padding-top: 100rpx;">
<view v-if="indexTab==1&&jfjlList.length==0" style="padding-top: 100rpx;">
<u-empty mode="data"></u-empty>
</view>
</scroll-view>
......@@ -79,7 +79,7 @@
onLoad(options) {
this.type = options.type
this.userinfo = uni.getStorageSync("userInfo")
this.getDjList()
//this.getDjList()
this.getJfjlList()
},
......@@ -90,11 +90,11 @@
return
}
this.indexTab = index
// if (index == 1) {
// this.getDjList()
// return
// }
if (index == 1) {
this.getDjList()
return
}
if (index == 2) {
this.getJfjlList()
return
}
......
......@@ -27,6 +27,12 @@
<text style="color: #999999;">业主手机号</text>
<text>{{userinfo.mobile}}</text>
</view>
<view class="flex-row-between pad-30" style="border-bottom: 1rpx solid #E9E9E9;">
<text style="color: #999999;">匿名投诉/表扬</text>
<image class="w-45 h-45" @click="onFlog()"
:src="flog==false?'/pagesMine/static/icon_fwxx_1.png':'/pagesMine/static/icon_fwxx_2.png'">
</image>
</view>
</view>
<view class="flex-column-center fs-32 fw-700 mt-30">
<image class="w-10 h-40 mr-15" style="background-color: #1FCA7C;"></image>
......@@ -58,6 +64,7 @@
reason: '',
images: '',
userinfo: '',
flog: false,
};
},
onLoad(e) {
......@@ -80,6 +87,9 @@
})
},
methods: {
onFlog() {
this.flog = !this.flog
},
upload(e) {
this.images = e
},
......@@ -99,7 +109,8 @@
data: {
commentDescription: this.reason,
commentImg: this.images,
type: this.type
type: this.type,
isAnon: this.flog ? 1 : 0
}
}
this.$request(params).then(res => {
......@@ -116,4 +127,8 @@
flex-direction: column;
background: #fff;
}
.round-checkbox .uni-checkbox__icon {
border-radius: 50%;
}
</style>
\ No newline at end of file
......@@ -9,7 +9,7 @@
</view>
<view class="flex-row-between pad-30" style="border-bottom: 1rpx solid #E9E9E9;">
<text style="color: #999999;">姓名</text>
<text>{{userInfo.accountName}}</text>
<text>{{userInfo.name}}</text>
</view>
<view class="flex-row-between pad-30" style="border-bottom: 1rpx solid #E9E9E9;">
<text style="color: #999999;">性别</text>
......@@ -17,7 +17,7 @@
</view>
<view class="flex-row-between pad-30" style="border-bottom: 1rpx solid #E9E9E9;">
<text style="color: #999999;">手机号</text>
<text>{{userInfo.accountMobile}}</text>
<text>{{userInfo.mobile}}</text>
</view>
</view>
......@@ -57,7 +57,7 @@
};
},
onLoad(e) {
this.userInfo = uni.getStorageSync('userInfo_yg')
this.userInfo = uni.getStorageSync('userInfo')
this.type = e.type
if (e.type == 0) {
this.title = "安保打卡"
......@@ -130,7 +130,6 @@
const key = 'cc4f24cc4928169e0d623573e4e0687e'; // 替换为你的高德API Key
const url =
`https://restapi.amap.com/v3/geocode/regeo?key=${key}&location=${longitude},${latitude}&radius=1000&extensions=all`;
uni.request({
url: url,
success: (res) => {
......
......@@ -58,11 +58,13 @@
proprietorId: 0,
name: "",
phone: "",
type: 1,
}
};
},
onLoad(options) {
this.type = options.type
this.data.type = options.cy_type
if (this.type == 1) {
this.disabled = true
}
......@@ -73,6 +75,7 @@
this.data.name = json.name
this.data.phone = json.phone
}
console.log("LMG", this.data)
this.getUserInfo()
},
methods: {
......@@ -140,11 +143,7 @@
}
const params = {
url: '/api/familyMember/update',
data: {
id: this.data.id,
name: this.data.name,
phone: this.data.phone
}
data: this.data
}
this.$request(params).then(res => {
this.$u.toast(res.msg || '修改成功')
......
......@@ -15,11 +15,16 @@
</view>
</view>
</view>
<view class="flex-column fs-32 w-150 vh-center mtb-30">
<text style="text-align: center;">家庭成员</text>
<view style="width: 60rpx;height: 5rpx;background-color: #1FCA7C;"></view>
<view class="flex-row-around">
<view class="flex-column fs-32 w-150 vh-center mtb-30" @click="onClickTab(1)">
<text style="text-align: center;">家庭成员</text>
<view v-if="type==1" style="width: 60rpx;height: 5rpx;background-color: #1FCA7C;"></view>
</view>
<view class="flex-column fs-32 w-150 vh-center mtb-30" @click="onClickTab(2)">
<text style="text-align: center;">租户成员</text>
<view v-if="type==2" style="width: 60rpx;height: 5rpx;background-color: #1FCA7C;"></view>
</view>
</view>
<view class="overflow-y">
<scroll-view scroll-y style="height: 100%;">
<view @click="onClickSelecte(index)" v-for="(item, index) in list" :key="index">
......@@ -47,6 +52,7 @@
return {
userInfo: '',
list: [],
type: 1,
};
},
onLoad(options) {
......@@ -56,11 +62,17 @@
this.getUserInfo()
},
methods: {
onClickTab(type) {
this.type = type;
this.getList();
},
getList() {
const params = {
url: '/api/familyMember/listAllByUserId',
method: 'GET',
data: {}
data: {
type: this.type
}
}
this.$request(params).then(res => {
console.log(res.data)
......@@ -86,13 +98,14 @@
},
onClick(index) {
if (index == 0) {
this.$wskj.to("/pagesMine/pages/jtcy?type=0")
this.$wskj.to("/pagesMine/pages/jtcy?type=0&cy_type=" + this.type)
return
}
},
onClickSelecte(index) {
this.selecteIndex = index
this.$wskj.to("/pagesMine/pages/jtcy?type=1&data=" + encodeURIComponent(JSON.stringify(this.list[index])))
this.$wskj.to("/pagesMine/pages/jtcy?type=1&data=" + encodeURIComponent(JSON.stringify(this.list[index])) +
"&cy_type=" + this.type)
}
}
};
......
......@@ -47,7 +47,7 @@
<text style="flex: 1;color: #000;">{{item.repairsTime}}</text>
<text @tap.stop="onCz('设置费用',index)" v-if="item.state==1"
style="color: #23BBEE;">设置费用</text>
<text style="color: #27CC81;margin-left: 30rpx;">报修详情</text>
<text style="color: #27CC81;margin-left: 30rpx;">{{item.type==1?'报修详情':'报事详情'}}</text>
</view>
</view>
</view>
......
<template>
<view class='center'>
<view style="background: linear-gradient( 180deg, #1FCA7C 0%, #F2F2F2 100%);">
<u-navbar :autoBack="true" title="报修详情" placeholder="true" bgColor="transparent" leftIconColor="#FFF"
:title-style="{color: '#FFF'}">
<u-navbar :autoBack="true" :title="data.type==1?'报修详情':'报事详情'" placeholder="true" bgColor="transparent"
leftIconColor="#FFF" :title-style="{color: '#FFF'}">
</u-navbar>
<view class="h-300 flex flex-row-between v-center ml-60 mr-35">
<view class="flex-column" style="color: #1BB871;">
......@@ -40,7 +40,7 @@
</view>
<view class="flex-column-center fs-32 fw-700 mt-30">
<image class="w-10 h-40 mr-15" style="background-color: #1FCA7C;"></image>
<text>报修信息</text>
<text>{{data.type==1?'报修信息':'报事信息'}}</text>
</view>
<view class="flex-column br-12 fs-28 mtb-30 pad-30" style="background: #EBF5F0;">
<text style="text-align: left;">{{data.repairsDescription}}</text>
......@@ -54,7 +54,7 @@
</view>
</scroll-view>
<view class="flex mt-20 h-40 lh-40">
<text class="fw-700 fs-28">报修时间:</text>
<text class="fw-700 fs-28">{{data.type==1?'报修':'报事'}}时间:</text>
<text class="fs-24 ml-10">{{data.repairsTime}}</text>
</view>
<view v-if="data.state==2||data.state==3" class="flex-column br-12 fs-28 mt-30"
......
......@@ -25,9 +25,21 @@
};
},
onLoad(options) {
this.userInfo = uni.getStorageSync('userInfo_yg')
this.getUserInfo();
},
methods: {
getUserInfo() {
const params = {
url: '/api/login/userInfo',
method: 'GET',
data: {}
}
this.$request(params).then(res => {
uni.setStorageSync('userInfo', res.data)
this.userInfo = res.data
})
},
open() {
},
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment