From 305c62176351e83708bf115e605a1cf3fb843c56 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A7=A6=E5=A8=81=E5=A8=81?= <1834256911@qq.com> Date: Thu, 5 Jun 2025 20:41:25 +0800 Subject: [PATCH] =?UTF-8?q?=E6=89=93=E5=8D=A1=E5=AF=B9=E6=8E=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pages.json | 17 +++- pages/wy-bmfw.vue | 23 +++-- pages/wy-home.vue | 6 +- pages/wy-mine.vue | 6 +- pagesMain/pages/bxxq.vue | 12 +-- pagesMain/pages/fkdj.vue | 2 - pagesMain/pages/jnzd_wyfmx.vue | 40 ++++++-- pagesMain/pages/tsby_xq.vue | 2 +- pagesMine/pages/dk_submit.vue | 132 ++++++++++++++----------- pagesMine/pages/dkjl.vue | 57 +++++++---- pagesMine/pages/dkpz.vue | 6 +- pagesMine/pages/wx_lsgd.vue | 146 ++++++++++++++++++++++++++++ pagesMine/pages/wx_xq.vue | 172 +++++++++++++++++++++++++++++++++ pagesMine/pages/yg_login.vue | 19 +++- pagesMine/pages/ygzy.vue | 19 ++-- static/icon_home_dw1.png | Bin 0 -> 569 bytes static/icon_xsj.png | Bin 0 -> 375 bytes 17 files changed, 535 insertions(+), 124 deletions(-) create mode 100644 pagesMine/pages/wx_lsgd.vue create mode 100644 pagesMine/pages/wx_xq.vue create mode 100644 static/icon_home_dw1.png create mode 100644 static/icon_xsj.png diff --git a/pages.json b/pages.json index 39cfb40..d91a9db 100644 --- a/pages.json +++ b/pages.json @@ -212,6 +212,18 @@ "style": { "navigationStyle": "custom" } + }, + { + "path": "pages/wx_xq", + "style": { + "navigationStyle": "custom" + } + }, + { + "path": "pages/wx_lsgd", + "style": { + "navigationStyle": "custom" + } } ] } @@ -220,7 +232,10 @@ "navigationBarTextStyle": "black", "navigationBarTitleText": "uni-app", "navigationBarBackgroundColor": "#FFFFFF", - "backgroundColor": "#FFFFFF" + "backgroundColor": "#FFFFFF", + "app-plus": { + "bounce": "none" + } }, /* 底部菜单 */ "tabBar": { diff --git a/pages/wy-bmfw.vue b/pages/wy-bmfw.vue index 96eb4d8..8dea181 100644 --- a/pages/wy-bmfw.vue +++ b/pages/wy-bmfw.vue @@ -3,11 +3,11 @@ - - 利达物业中心 - + {{address}} + @@ -44,21 +44,20 @@ export default { data() { return { - + address: '请选择', }; }, onLoad(options) { - + //获取小区信息 + const addressItem = uni.getStorageSync("addressItem") + this.address = addressItem.communityName }, methods: { - open() { - // console.log('open'); + onClick(inder) { + this.$wskj.toast('敬请期待') }, - close() { - this.show = false - // console.log('close'); - } + } }; diff --git a/pages/wy-home.vue b/pages/wy-home.vue index beaf3e3..d4f0ef4 100644 --- a/pages/wy-home.vue +++ b/pages/wy-home.vue @@ -3,11 +3,11 @@ - {{address}} - + diff --git a/pages/wy-mine.vue b/pages/wy-mine.vue index 25f1927..64cb66a 100644 --- a/pages/wy-mine.vue +++ b/pages/wy-mine.vue @@ -96,7 +96,11 @@ 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.$wskj.to("/pagesMine/pages/ygzy") + } return } } diff --git a/pagesMain/pages/bxxq.vue b/pagesMain/pages/bxxq.vue index f25bb51..9c88457 100644 --- a/pagesMain/pages/bxxq.vue +++ b/pagesMain/pages/bxxq.vue @@ -53,12 +53,12 @@ - - 报修时间: - {{data.repairsTime}} - - - 关闭报修 + + 报修时间: + {{data.repairsTime}} + + + 关闭报修 diff --git a/pagesMain/pages/fkdj.vue b/pagesMain/pages/fkdj.vue index 198b641..1953cff 100644 --- a/pagesMain/pages/fkdj.vue +++ b/pagesMain/pages/fkdj.vue @@ -150,7 +150,6 @@ listAll() { const params = { url: '/api/community/listAll', - loadingTip: '', method: 'GET', data: {} } @@ -180,7 +179,6 @@ if (this.$refs.uCode.canGetCode) { const params = { url: '/api/login/sendSmsCode', - loadingTip: '', method: 'GET', data: { mobile: this.data.guestPhone diff --git a/pagesMain/pages/jnzd_wyfmx.vue b/pagesMain/pages/jnzd_wyfmx.vue index 7e9b05f..81b6138 100644 --- a/pagesMain/pages/jnzd_wyfmx.vue +++ b/pagesMain/pages/jnzd_wyfmx.vue @@ -23,11 +23,11 @@ - + 2025年01月 - ¥108.23 + ¥{{item.payAmount}} @@ -36,18 +36,18 @@ 缴费项目:物业管理费 房屋面积:72.15 单价/平米:¥1.3 - 金额:93.8 + 金额:{{item.payAmount}} - + - 2024年6月 + {{item.month}} 缴费渠道:线上缴费 - 1355.04 + {{item.payAmount}} - 06-06 14:29 + {{item.month}} @@ -64,12 +64,16 @@ indexNumber: 0, type: 0, userinfo: '', + jfjlList: [], + djList: [], }; }, onLoad(options) { this.type = options.type this.userinfo = uni.getStorageSync("userInfo") + this.getDjList() + this.getJfjlList() }, methods: { @@ -82,7 +86,27 @@ }, onClick(index) { this.indexNumber = index - } + }, + //类型(1电费 2水费 3物业费 4车位管理费 5车位出租费 6储藏室出租 7其他费用) + getDjList() { + const params = { + url: '/api/liveBill/listAll?type=1', + method: 'GET', + } + this.$request(params).then(res => { + this.djList = res.data + }) + }, + getJfjlList() { + const params = { + url: '/api/payRecord/listAll?type=1', + method: 'GET', + } + this.$request(params).then(res => { + this.jfjlList = res.data + }) + }, + } }; diff --git a/pagesMain/pages/tsby_xq.vue b/pagesMain/pages/tsby_xq.vue index ad752a8..5127b42 100644 --- a/pagesMain/pages/tsby_xq.vue +++ b/pagesMain/pages/tsby_xq.vue @@ -53,7 +53,7 @@ - + {{data.type==1?'投诉时间:':'表扬时间:'}} {{data.createTime}} diff --git a/pagesMine/pages/dk_submit.vue b/pagesMine/pages/dk_submit.vue index f54371d..4cca9e6 100644 --- a/pagesMine/pages/dk_submit.vue +++ b/pagesMine/pages/dk_submit.vue @@ -5,25 +5,25 @@ 基本信息 职业 - 安保 + {{userInfo.accountType==1?'保洁':userInfo.accountType==2?'保安':userInfo.accountType==3?'维修':''}} 姓名 - 张三 + {{userInfo.accountName}} 性别 - + {{userInfo.sex==1?'女':'男'}} 手机号 - 199****8989 + {{userInfo.accountMobile}} 我的位置 - 请定位当前位置 + {{address==''?'请定位当前位置':address}} 重新定位 @@ -32,7 +32,7 @@ 拍照 - + @@ -40,16 +40,6 @@ 提交打卡 - - - - - - 确认提交? - - - @@ -61,75 +51,99 @@ type: 0, reason: '', submitShow: false, - images: '', + userInfo: '', + address: '', + image: '/static/icon_upload.png' }; }, onLoad(e) { + this.userInfo = uni.getStorageSync('userInfo_yg') this.type = e.type if (e.type == 0) { this.title = "安保打卡" } else { this.title = "保洁打卡" } + this.onDw() + }, + onShow() { + // uni.$once('imageSrc', function(data) { + // console.log('监听到事件来自 update ,携带参数 msg 为:' + data); + // this.image = data + // }) + }, + mounted() { + // 监听一次性事件 + uni.$once('imageSrc', (data) => { + // 确保数据变化是响应式的 + this.image = data // 直接赋值会触发更新 + }); }, methods: { + onPz() { + this.$wskj.to("/pagesMine/pages/dkpz") + }, onDw() { + const _this = this; uni.getLocation({ type: 'gcj02', success: function(res) { const latitude = res.latitude; const longitude = res.longitude; - uni.openLocation({ - latitude: latitude, - longitude: longitude, - success: function(res) { - console.log(res); - } - }); + _this.reverseGeocode(latitude, longitude) } }); }, - onSubmit() { - this.$wskj.to("/pagesMain/pages/tjsq?type=" + this.type) - // if (!this.reason) { - // return this.$u.toast('请输入内容') - // } - // if (!this.images) { - // return this.$u.toast('请至少上传一张照片') - // } - // if (this.reason.length < 10) { - // return this.$u.toast('文字描述最低10个字') - // } - // this.submitShow = true + async onSubmit() { + if (!this.address) { + return this.$u.toast('请先定位当前位置') + } + if (!this.image) { + return this.$u.toast('请拍照上传照片') + } + const imgData = await this.$wskj.uploadImg(this.image) + console.log(imgData) + const params = { + url: '/api/clock/add', + loadingTip: '', + data: { + clockAddress: this.address, + clockImg: imgData.url + }, + } + this.$request(params).then(res => { + this.$wskj.toast('提交成功') + setTimeout(() => { + this.$wskj.goBack(1) + }, 600) + }) }, // 提交 onConfirmSubmit() { - // const params = { - // url: '/api/user/yijian', - // loadingTip: '', - // data: { - // content: this.reason, - // images: this.images - // } - // } - // // console.log(params); - // this.$request(params).then(res => { - // // console.log(res) - // this.submitShow = false - // if (res.code === 1) { - // this.$u.toast(res.msg || '提交成功') - // this.reason = '' - // this.images = '' - // } else { - // this.$u.toast(res.msg || '提交失败') - // } - // }).catch(err => { - // this.submitShow = false - // this.$u.toast(err.msg || '提交失败') - // }) + }, + // 根据经纬度逆向解析为中文地址 + reverseGeocode(latitude, longitude) { + 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) => { + if (res.data.status === '1') { + this.address = res.data.regeocode.formatted_address; // 获取中文地址 + console.log('当前位置中文地址:', this.address); + } else { + console.error('地址解析失败:', res.data.info); + } + }, + fail: (err) => { + console.error('请求失败:', err); + } + }); } }, }; diff --git a/pagesMine/pages/dkjl.vue b/pagesMine/pages/dkjl.vue index b0a9948..3d5fea7 100644 --- a/pagesMine/pages/dkjl.vue +++ b/pagesMine/pages/dkjl.vue @@ -7,25 +7,25 @@ - + 打卡天数: - 25天 + {{data.clockDay}}天 缺卡天数: - 1天 + {{data.noRecordDay}}天 - + 打卡时间: - 2025-04-03 10:32:31 + {{item.clockTime}} @@ -39,28 +39,47 @@ return { show: false, sex: '', - columns: [ - ['男', '女'] - ], + lateddates: [], + truancyeddates: [], + data: '', + todayList: [] }; }, onLoad(options) { - + this.getList(); + const time = this.$wskj.timeFormat(new Date().getTime(), "yyyy-mm-dd").replace(/(^|\D)0+/g, '\$1') + this.getTodayList(time) }, methods: { - open() { - this.show = true + onclick(date) { + this.getTodayList(date) }, - close() { - this.show = false + getList() { + const params = { + url: '/api/clock/listAll', + method: 'GET', + } + this.$request(params).then(res => { + this.data = res.data + res.data.clockRecordList.forEach(item => { + if (item.clockState == 1) { + this.lateddates.push(item.date.replace(/(^|\D)0+/g, '\$1')) + } + }) + console.log(this.lateddates) + }) }, - confirm(e) { - this.show = false - this.sex = e.value[0] - console.log("LMG", e.value[0]) - } + getTodayList(date) { + const params = { + url: '/api/clock/record/' + date, + method: 'GET', + } + this.$request(params).then(res => { + this.todayList = res.data + }) + } } }; diff --git a/pagesMine/pages/dkpz.vue b/pagesMine/pages/dkpz.vue index 50c3f44..01b9aad 100644 --- a/pagesMine/pages/dkpz.vue +++ b/pagesMine/pages/dkpz.vue @@ -154,7 +154,6 @@ console.log('拍照成功', res.tempImagePath) that.imageSrc = res.tempImagePath //原图 that.takeCanvas(res.tempImagePath) //画图 - } }) }, @@ -219,6 +218,11 @@ success: res1 => { that.imageSrc = res1.tempFilePath that.isshow = false + //通过 eventChannel 发送数据 + uni.$emit('imageSrc', that.imageSrc) + setTimeout(() => { + this.$wskj.goBack(1) + }, 600) }, fail: (err) => { console.log('导出图片失败', err) diff --git a/pagesMine/pages/wx_lsgd.vue b/pagesMine/pages/wx_lsgd.vue new file mode 100644 index 0000000..08ce5a9 --- /dev/null +++ b/pagesMine/pages/wx_lsgd.vue @@ -0,0 +1,146 @@ + + + + + \ No newline at end of file diff --git a/pagesMine/pages/wx_xq.vue b/pagesMine/pages/wx_xq.vue new file mode 100644 index 0000000..cadda48 --- /dev/null +++ b/pagesMine/pages/wx_xq.vue @@ -0,0 +1,172 @@ + + + + + \ No newline at end of file diff --git a/pagesMine/pages/yg_login.vue b/pagesMine/pages/yg_login.vue index dff8311..54a375a 100644 --- a/pagesMine/pages/yg_login.vue +++ b/pagesMine/pages/yg_login.vue @@ -6,8 +6,10 @@ Hello!\n请登录员工账号 - - + + 立即登录 @@ -21,7 +23,8 @@ export default { data() { return { - + account: '', + password: '' }; }, onLoad(options) { @@ -29,7 +32,15 @@ }, methods: { login() { - this.$wskj.to("/pagesMine/pages/ygzy") + const params = { + url: '/api/login/accountLogin/' + this.account + '/' + this.password, + loadingTip: '', + method: 'GET', + } + this.$request(params).then(res => { + uni.setStorageSync('userInfo_yg', res.data) + this.$wskj.to("/pagesMine/pages/ygzy") + }) } } }; diff --git a/pagesMine/pages/ygzy.vue b/pagesMine/pages/ygzy.vue index b46e7f8..9e41fc2 100644 --- a/pagesMine/pages/ygzy.vue +++ b/pagesMine/pages/ygzy.vue @@ -1,10 +1,15 @@