diff --git a/common/http.interceptor.js b/common/http.interceptor.js
index 5c749eb..1bb4916 100644
--- a/common/http.interceptor.js
+++ b/common/http.interceptor.js
@@ -20,8 +20,8 @@ const install = (Vue, vm) => {
// },
// https://yxd.ccttiot.com/prod-api});
Vue.prototype.$u.http.setConfig({
- baseUrl: 'http://192.168.2.56:8089',
- // baseUrl: 'https://testcha.chuangtewl.com/prod-api',
+ // baseUrl: 'http://192.168.2.56:8089',
+ baseUrl: 'https://testcha.chuangtewl.com/prod-api',
loadingText: '努力加载中~',
loadingTime: 800,
// 设置自定义头部content-type
diff --git a/page_fenbaotwo/zhangdan.vue b/page_fenbaotwo/zhangdan.vue
index fb89d60..7e8c92e 100644
--- a/page_fenbaotwo/zhangdan.vue
+++ b/page_fenbaotwo/zhangdan.vue
@@ -158,7 +158,7 @@
background-color: #fff;
border-radius: 20rpx;
// overflow: scroll;
- padding-bottom: 70rpx;
+ padding-bottom: 20rpx;
box-sizing: border-box;
padding-top: 8rpx;
padding-left: 36rpx;
diff --git a/page_moban/baojieorder.vue b/page_moban/baojieorder.vue
index 03739f9..1d44ffa 100644
--- a/page_moban/baojieorder.vue
+++ b/page_moban/baojieorder.vue
@@ -48,7 +48,7 @@
包厢名称:竹韵
- 预计结束时间:{{item.endTime}}
+ 预计结束时间:{{item.endTime == null ? '--' : item.endTime}}
完成时间:--
diff --git a/page_moban/datingxq.vue b/page_moban/datingxq.vue
index b01bc56..5ec9333 100644
--- a/page_moban/datingxq.vue
+++ b/page_moban/datingxq.vue
@@ -21,6 +21,14 @@
{{leixing}}
+
+
+ 生成二维码
+
+
+
+
+
设备绑定
@@ -194,6 +202,12 @@
uni.removeStorageSync('ruleIdlist')
},
methods: {
+ // 点击生成二维码
+ btnewm(){
+ uni.navigateTo({
+ url:'/page_shanghu/erwm?roomId=' + this.roomId
+ })
+ },
// 点击未投列表放选择
btntouf(){
this.dtflags = false
@@ -209,7 +223,7 @@
success: res => {
function getQueryParam(url, paramName) {
let regex = new RegExp(`[?&]${paramName}=([^&]*)`)
- let results = regex.exec(url);
+ let results = regex.exec(url)
return results ? decodeURIComponent(results[1].replace(/\+/g, ' ')) : null
}
console.log(res);
@@ -285,15 +299,15 @@
},
// 点击选择标签
btnbq(dictValue,index) {
- const indexExists = this.selectedIndices.includes(dictValue);
+ const indexExists = this.selectedIndices.includes(dictValue)
if (indexExists) {
- this.selectedIndices = this.selectedIndices.filter(i => i !== dictValue);
+ this.selectedIndices = this.selectedIndices.filter(i => i !== dictValue)
} else {
- this.selectedIndices.push(dictValue);
+ this.selectedIndices.push(dictValue)
}
},
isSelected(dictValue) {
- return this.selectedIndices.includes(dictValue);
+ return this.selectedIndices.includes(dictValue)
},
// 获取标签
getbiaoqian(){
@@ -439,7 +453,7 @@
}
})
} else if (res.cancel) {
-
+
}
}
})
@@ -670,7 +684,7 @@
}
.box{
width: 680rpx;
- max-height: 408rpx;
+ max-height: 470rpx;
background: #FFFFFF;
margin: auto;
margin-top: 22rpx;
diff --git a/page_shanghu/dianpuroomadd.vue b/page_shanghu/dianpuroomadd.vue
index 73b47c8..a78250c 100644
--- a/page_shanghu/dianpuroomadd.vue
+++ b/page_shanghu/dianpuroomadd.vue
@@ -51,12 +51,12 @@
未绑定
-
+
@@ -119,16 +119,16 @@
未绑定
-
+
-
@@ -201,9 +201,9 @@
-
+
@@ -221,7 +221,7 @@
-
@@ -413,7 +413,7 @@
},
// 点击控制大厅设施
btndtkg(num, index, item) {
- console.log(item);
+ console.log(item)
let equipmentId = item.equipmentList[0].equipmentId
if (num == 0) { //关闭
this.$u.put(`/app/device/adminMch/${equipmentId}/switch?open=false`).then(res => {
@@ -461,6 +461,7 @@
},
// 点击控制房间设施
btnroomkg(num, index, item) {
+ console.log(item,'1000');
let equipmentId = item.equipmentList[index].equipmentId
if (num == 0) { //关闭
this.$u.put(`/app/device/adminMch/${equipmentId}/switch?open=false`).then(res => {
@@ -512,41 +513,50 @@
},
// 点击控制大门
btndmkg(num) {
- if (num == 0) { //关闭
- this.$u.put(`/app/device/admin/${this.gateSnobj.deviceId}/switch?open=false`).then(res => {
- if (res.code == 200) {
- uni.showToast({
- title: '关闭成功',
- icon: 'success',
- duration: 2000
- })
- this.gateSnobj.powerStatus = 0
- } else {
- uni.showToast({
- title: res.msg,
- icon: 'none',
- duration: 2000
- })
- }
- })
- } else { //开启
- this.$u.put(`/app/device/admin/${this.gateSnobj.deviceId}/switch?open=true`).then(res => {
- if (res.code == 200) {
- uni.showToast({
- title: '开启成功',
- icon: 'success',
- duration: 2000
- })
- this.gateSnobj.powerStatus = 1
- } else {
- uni.showToast({
- title: res.msg,
- icon: 'none',
- duration: 2000
- })
- }
- })
- }
+ this.$u.get(`app/store/openGate/${this.storeId}`).then(res => {
+ if(res.code == 200){
+ uni.showToast({
+ title: '开启成功',
+ icon: 'success',
+ duration: 2000
+ })
+ }
+ })
+ // if (num == 0) { //关闭
+ // this.$u.put(`/app/device/admin/${this.gateSnobj.deviceId}/switch?open=false`).then(res => {
+ // if (res.code == 200) {
+ // uni.showToast({
+ // title: '关闭成功',
+ // icon: 'success',
+ // duration: 2000
+ // })
+ // this.gateSnobj.powerStatus = 0
+ // } else {
+ // uni.showToast({
+ // title: res.msg,
+ // icon: 'none',
+ // duration: 2000
+ // })
+ // }
+ // })
+ // } else { //开启
+ // this.$u.put(`/app/device/admin/${this.gateSnobj.deviceId}/switch?open=true`).then(res => {
+ // if (res.code == 200) {
+ // uni.showToast({
+ // title: '开启成功',
+ // icon: 'success',
+ // duration: 2000
+ // })
+ // this.gateSnobj.powerStatus = 1
+ // } else {
+ // uni.showToast({
+ // title: res.msg,
+ // icon: 'none',
+ // duration: 2000
+ // })
+ // }
+ // })
+ // }
},
// 点击添加大厅and厕所设施
@@ -807,7 +817,7 @@
image {
width: 50rpx;
height: 50rpx;
- margin-top: 30rpx;
+ margin-top: 50rpx;
}
.rt {
diff --git a/page_shanghu/erwm.vue b/page_shanghu/erwm.vue
index 87d106e..31a7acc 100644
--- a/page_shanghu/erwm.vue
+++ b/page_shanghu/erwm.vue
@@ -33,27 +33,19 @@
},
sn:'',
roomId:'',
- viewType:'',
- equipmentId:'',
https:''
}
},
onLoad(option) {
- if(option.equipmentId){ //设施
- this.equipmentId = option.equipmentId
- if(option.viewType){ //判断是否为卫生间
- this.viewType = option.viewType
- }else{
- this.viewType = ''
- }
- this.https = 'https://testcha.chuangtewl.com?equipmentId=' + this.equipmentId + '&viewType=' + this.viewType
- }else if(option.roomId){ //房间
+ if(option.roomId){ //房间and大厅
this.roomId = option.roomId
- this.viewType = option.viewType
- this.https = 'https://testcha.chuangtewl.com?roomId=' + this.roomId + '&viewType=' + this.viewType
- }else if(option.storeId){ //大门
+ this.https = 'https://testcha.chuangtewl.com?roomId=' + this.roomId
+ }else if(option.storeId){ //大门-店铺
this.storeId = option.storeId
this.https = 'https://testcha.chuangtewl.com?storeId=' + this.storeId
+ }else if(option.toiletId){ //厕所
+ this.toiletId = option.toiletId
+ this.https = 'https://testcha.chuangtewl.com?toiletId=' + this.toiletId
}
console.log(option)
this.qrFun()
@@ -63,31 +55,31 @@
},
methods: {
drawCanvas() {
- const ctx = uni.createCanvasContext('qrcode', this);
- ctx.setFillStyle('#fff');
- ctx.fillRect(10, 10, 250, 250);
- ctx.draw();
+ const ctx = uni.createCanvasContext('qrcode', this)
+ ctx.setFillStyle('#fff')
+ ctx.fillRect(10, 10, 250, 250)
+ ctx.draw()
},
// 保存二维码
saveCanvas() {
uni.canvasToTempFilePath({
canvasId: 'qrcode',
success: (res) => {
- console.log(res.tempFilePath); // 打印图片路径
+ console.log(res.tempFilePath) // 打印图片路径
uni.saveImageToPhotosAlbum({
filePath: res.tempFilePath,
success: function() {
uni.showToast({
title: '保存成功',
icon: 'success'
- });
+ })
}
- });
+ })
},
fail: (err) => {
- console.error(err);
+ console.error(err)
}
- });
+ })
},
//**生成二维码**//
qrFun: function() {
diff --git a/page_shanghu/index.vue b/page_shanghu/index.vue
index d8b68d2..7159a92 100644
--- a/page_shanghu/index.vue
+++ b/page_shanghu/index.vue
@@ -5,7 +5,7 @@
-
+
+
充值记录
@@ -70,8 +70,8 @@
销售统计
-
-
+ -->
+
+
+
+ {{item.menuName}}
+
+
+
+
+ {{val.menuName}}
+
+
-
@@ -127,21 +137,64 @@
bgc: {
backgroundColor: "",
},
+ userobj:[],
+ menuobj:[],
+ yiyouobj:[],
+ list:[]
}
},
onLoad() {
- // 一进来请求个人信息 判断有无登录
- this.$u.get(`/getAppInfo`).then(res => {
- if (res.code == 200) {
-
- }else if(res.code == 401){
- uni.reLaunch({
- url:'/pages/login/index'
- })
- }
- })
+ this.getinfo()
},
methods: {
+ // 点击进行页面跳转
+ btnurl(url){
+ console.log(url);
+ if(url == null){
+ uni.showToast({
+ title: '此功能暂未开放',
+ icon: 'none',
+ duration:2000
+ })
+ }else{
+ uni.navigateTo({
+ url:url
+ })
+ }
+ },
+
+ // 查询菜单列表
+ getmenu(){
+ this.$u.get('/app/appMenu/allList').then(res => {
+ if (res.code === 200) {
+ this.menuobj = res.data
+ let topLevelMenus = this.menuobj.filter(item => item.parentId == 0)
+ let menuMap = new Map(topLevelMenus.map(item => [item.menuId, { ...item, children: [] }]))
+ this.yiyouobj = this.menuobj.filter(item =>
+ this.userobj.appMenus.includes(item.menuId)
+ )
+ this.yiyouobj.forEach(item => {
+ if (menuMap.has(item.parentId)) {
+ menuMap.get(item.parentId).children.push(item)
+ }
+ })
+ this.list = Array.from(menuMap.values())
+ }
+ })
+ },
+ // 查询个人信息
+ getinfo(){
+ this.$u.get(`/getAppInfo`).then(res => {
+ if (res.code == 200) {
+ this.userobj = res.user
+ this.getmenu()
+ }else if(res.code == 401){
+ uni.reLaunch({
+ url:'/pages/login/index'
+ })
+ }
+ })
+ },
// 点击这些提示未开放
btnwei(){
uni.showToast({
@@ -187,9 +240,14 @@
url:'/page_moban/baojieorder'
})
}else if(num == 8){ //跳转到对账单页面
- uni.navigateTo({
- url:'/page_fenbaotwo/duizhangdan'
- })
+ uni.showToast({
+ title: '此功能暂未开放',
+ icon: 'none',
+ duration:2000
+ })
+ // uni.navigateTo({
+ // url:'/page_fenbaotwo/duizhangdan'
+ // })
}else if(num == 9){ //跳转到配置WIFI页面
uni.navigateTo({
url:'/page_fenbaotwo/wifipz'
diff --git a/page_shanghu/roomxq.vue b/page_shanghu/roomxq.vue
index 785f955..fff8fad 100644
--- a/page_shanghu/roomxq.vue
+++ b/page_shanghu/roomxq.vue
@@ -89,20 +89,20 @@
未绑定
-
+
SN:{{item.device.sn}}
-
-
+
+
diff --git a/page_shanghu/shebei.vue b/page_shanghu/shebei.vue
index 5864afb..768b3b2 100644
--- a/page_shanghu/shebei.vue
+++ b/page_shanghu/shebei.vue
@@ -53,12 +53,12 @@
-
+
没有更多设备啦...
@@ -148,11 +148,11 @@
})
},
// 点击跳转到二维码
- btnewm(sn){
- uni.navigateTo({
- url:'/page_shanghu/erwm?deviceId=' + deviceId
- })
- },
+ // btnewm(deviceId){
+ // uni.navigateTo({
+ // url:'/page_shanghu/erwm?deviceId=' + deviceId
+ // })
+ // },
// 点击进行搜索
btnsousuo(){
this.pagesum = 1
@@ -306,7 +306,7 @@
box-sizing: border-box;
.list_item{
width: 750rpx;
- height: 422rpx;
+ height: 340rpx;
background: #FFFFFF;
margin-top: 20rpx;
.sbm{
diff --git a/page_shanghu/yunying.vue b/page_shanghu/yunying.vue
index 1f07c9c..b6002fd 100644
--- a/page_shanghu/yunying.vue
+++ b/page_shanghu/yunying.vue
@@ -137,7 +137,6 @@
-
diff --git a/page_user/dingdanxq.vue b/page_user/dingdanxq.vue
index b41e8b5..d78878e 100644
--- a/page_user/dingdanxq.vue
+++ b/page_user/dingdanxq.vue
@@ -34,7 +34,7 @@
- 【{{orderobj.storeName == null ? '--' : orderobj.storeName}}】
+ 【{{orderobj.storeName == null ? '--' : orderobj.storeName}}】 房间 大厅
@@ -67,6 +67,10 @@
微信支付
门店余额
+
+ 套餐名称:
+ {{orderobj.explain == null ? '--' : orderobj.explain}}
+
付款金额:
¥{{orderobj.price == null ? '--' : orderobj.price}}({{orderobj.hours == null ? '--' : orderobj.hours}}小时套餐)
@@ -89,7 +93,8 @@
-
+
+
@@ -113,16 +118,16 @@
温馨提示
- 1、订单转发好友后,好友也可直接自助开门进入 门店、包厢;
+ 1、订单转发好友后,好友也可直接自助开门进入门店、包厢;
- 2、订单续单可能碰到后续时间段被人预定而无法 续单的情况,请提前规划好预约时间段;
+ 2、订单续单可能碰到后续时间段被人预定而无法续单的情况,请提前规划好预约时间段;
- 3、如果临时有事无法到店消费,请在订单开始前 进行取消订单操作,开始后,不支持退款,请合 理规划您的时间;
+ 3、如果临时有事无法到店消费,请在订单开始前进行取消订单操作,开始后,不支持退款,请合理规划您的时间;
- 4、若您迟到,订单仍按预定开始时间计费,迟到 部分时长不进行退款,不进行延期,请合理规划 预定时间段;
+ 4、若您迟到,订单仍按预定开始时间计费,迟到部分时长不进行退款,不进行延期,请合理规划预定时间段;
5、请勿大声喧哗,订单结束离店请爱护财务。
@@ -201,7 +206,24 @@
}
})
},
-
+ // 如果是大厅设施则点击开启
+ btnkai(){
+ this.$u.get(`/app/room/openRoomGate/${this.orderobj.roomId}`).then(res => {
+ if (res.code == 200) {
+ uni.showToast({
+ title: '开启成功',
+ icon: 'success',
+ duration: 2000
+ })
+ }else{
+ uni.showToast({
+ title: res.msg,
+ icon: 'none',
+ duration: 2000
+ })
+ }
+ })
+ },
// 自定义导航栏返回
btns(){
uni.reLaunch({
@@ -210,39 +232,65 @@
},
// 点击开店门
btnkdm(){
- this.$u.get(`app/store/openGate/${this.orderobj.storeId}`).then(res => {
- if (res.code == 200) {
- uni.showToast({
- title: '开启店门成功',
- icon: 'success',
- duration: 2000
- })
- }else{
- uni.showToast({
- title: res.msg,
- icon: 'none',
- duration: 2000
- })
- }
- })
+ if(this.orderobj.userId != this.user.userId){
+ this.$u.get(`app/store/openGate/${this.orderobj.storeId}`).then(res => {
+ if (res.code == 200) {
+ uni.showToast({
+ title: '开启店门成功',
+ icon: 'success',
+ duration: 2000
+ })
+ }else{
+ uni.showToast({
+ title: res.msg,
+ icon: 'none',
+ duration: 2000
+ })
+ }
+ })
+ }else{
+ this.$u.get(`app/store/openGate/${this.orderobj.storeId}&isVerify=false`).then(res => {
+ if (res.code == 200) {
+ uni.showToast({
+ title: '开启店门成功',
+ icon: 'success',
+ duration: 2000
+ })
+ }else{
+ uni.showToast({
+ title: res.msg,
+ icon: 'none',
+ duration: 2000
+ })
+ }
+ })
+ }
},
// 点击开包厢门
btnkbxm(){
- this.$u.get(`app/room/openRoomGate/${this.orderobj.roomId}`).then(res => {
- if (res.code == 200) {
- uni.showToast({
- title: '开启包厢门成功',
- icon: 'success',
- duration: 2000
- })
- }else{
- uni.showToast({
- title: res.msg,
- icon: 'none',
- duration: 2000
- })
- }
- })
+ if(this.orderobj.roomType2 == 1){
+ this.$u.get(`app/room/openRoomGate/${this.orderobj.roomId}`).then(res => {
+ if (res.code == 200) {
+ uni.showToast({
+ title: '开启包厢门成功',
+ icon: 'success',
+ duration: 2000
+ })
+ }else{
+ uni.showToast({
+ title: res.msg,
+ icon: 'none',
+ duration: 2000
+ })
+ }
+ })
+ }else{
+ uni.showToast({
+ title: '大厅无需开包厢门',
+ icon: 'none',
+ duration: 2000
+ })
+ }
},
// 请求订单详情(被分享人)
getxqs(){
@@ -478,7 +526,7 @@
width: 288rpx;
height: 78rpx;
margin-top: 20rpx;
- margin-left: 34rpx;
+ margin-left: 40rpx;
position: relative;
border-radius: 50rpx;
image{
@@ -535,7 +583,7 @@
}
.dianpu{
width: 674rpx;
- max-height: 526rpx;
+ max-height: 600rpx;
background: #FFFFFF;
box-shadow: 0rpx 2rpx 12rpx 0rpx rgba(0,0,0,0.15);
border-radius: 18rpx 18rpx 18rpx 18rpx;
@@ -580,6 +628,13 @@
color: #3D3D3D;
border-left: 8rpx solid #48893B;
border-radius: 4rpx;
+ text{
+ padding: 4rpx;
+ border: 1px solid #48893B;
+ font-size: 24rpx;
+ font-weight: 400;
+ color: #48893B;
+ }
}
.rt{
image{
diff --git a/page_user/xudan.vue b/page_user/xudan.vue
index 375b61d..782e40d 100644
--- a/page_user/xudan.vue
+++ b/page_user/xudan.vue
@@ -11,7 +11,7 @@
-
+
@@ -38,19 +38,19 @@
-->
-
+
套餐选择:
- {{item.explain == null ? '--' : item.explain}}
+ {{item.explain.length > 5 ? item.explain.slice(0,4) + '...' : item.explain}}
¥{{item.price == null ? '--' : item.price}}
-
+
时长选择:
@@ -247,7 +247,8 @@
timeshijian:'',
orderNo:'',
biaoqianlist:[],
- viewType:''
+ viewType:'',
+ ruleId:''
}
},
onLoad(option) {
@@ -509,9 +510,9 @@
// let formattedDateString = time.replace(/\//g, "-")
let data = {
payType: this.zfssid,
- ruleId:this.tclist[0].mode == 2 ? this.tcobj.ruleId : this.tclist[0].mode,
- viewType:this.viewType,
- type: 2,
+ ruleId:this.ruleId,
+ type2:this.viewType,
+ // type: 2,
mode: this.tclist[0].mode,
hours: this.hourstime,
price: this.price,
@@ -817,6 +818,7 @@
// 选择套餐
btntc(index, item) {
this.tcobj = item
+ this.ruleId = item.ruleId
this.price = item.price //订单金额
this.hourstime = item.hours //订单时间
this.indextwo = index
diff --git a/pages/index/index.vue b/pages/index/index.vue
index e33f3c6..2176345 100644
--- a/pages/index/index.vue
+++ b/pages/index/index.vue
@@ -1,6 +1,6 @@
-
@@ -25,7 +25,7 @@
- 距我{{distance}}km
+ 距我{{distance}}km
{{shopobj.address == undefined ? '--' : shopobj.address}}
@@ -33,28 +33,19 @@
空闲 {{item.idleNum}}
{{item.tag}}
-
-
-
- {{item.roomName}}
+ {{item.roomName.length > 5 ? item.roomName.slice(0,5) + '...' : item.roomName}}
开台
@@ -62,18 +53,12 @@
-
+
-
+ -->
@@ -165,6 +150,8 @@
+
+
@@ -173,6 +160,8 @@
+
+
@@ -210,6 +199,23 @@
+
+
+
+
+
+ {{item.name}}
+
+
+ 开门
+
+
+
+
+ 取消
+
+
+
@@ -222,7 +228,7 @@
backgroundColor: "",
},
list: [{
- image: 'https://api.ccttiot.com/smartmeter/img/static/uqYdRLVlB5b61Qdnbirn'
+ image: 'https://api.ccttiot.com/smartmeter/img/static/uuoqWaq7HnXBteQayaz4'
}],
imgflag: true,
storeId: '',
@@ -235,7 +241,7 @@
jinxinglist: [],
jinxinflag: false,
jinxintxt: '开包厢',
- tabindex: 0,
+ tabindex: 1,
biaoqianlist: [],
biaostoreqianlist: [],
mdindex:-1,
@@ -243,32 +249,129 @@
tit:'',
tabarr:[],
type:'',
- distance:''
+ distance:'',
+ roomId:'',
+ sceneValue:'',
+ cesuolist:[],
+ cesuoflag:false,
+ csindex:-1,
}
},
onLoad(option) {
- this.tit = option.tit
- this.distance = option.distance
- if (option.storeId) {
+ console.log(option);
+ if (option.q) {
+ // 解码扫码结果
+ this.sceneValue = option.q;
+ let decodedValue = decodeURIComponent(this.sceneValue);
+ // 解析 URL 参数的函数
+ function getQueryParam(url, paramName) {
+ let regex = new RegExp(`[?&]${paramName}=([^&]*)`);
+ let results = regex.exec(url);
+ return results ? decodeURIComponent(results[1].replace(/\+/g, ' ')) : null;
+ }
+ // 判断是 storeId 还是 roomId
+ let storeId = getQueryParam(decodedValue, 'storeId');
+ let roomId = getQueryParam(decodedValue, 'roomId');
+ if (storeId) {
+ console.log('这是 storeId:', storeId);
+ // 执行 storeId 相关的逻辑
+ this.storeId = storeId
+ uni.setStorageSync('storeId', this.storeId)
+ this.tabindex = 1
+ this.getroombq()
+ this.jinxinflag = false //如果进行了tab切换 则隐藏
+ this.getbiaoqian()
+ this.getstorebiaoqian()
+ this.getorder()
+ this.hourPointsArray = this.getCurrentHourPoints() //计算从当前时间往后推24小时
+ } else if (roomId) {
+ console.log('这是 roomId:', roomId);
+ // 执行 roomId 相关的逻辑
+ this.roomId = roomId
+ this.$u.get(`/app/order/getInProgressOrderList`).then(res => {
+ if (res.code == 200) {
+ if(res.data == null || res.data.length == 0){
+ uni.navigateTo({
+ url: '/pages/myorder/index?roomId=' + this.roomId
+ })
+ }else{
+ uni.navigateTo({
+ url:'/page_user/dingdanxq?orderNo=' + res.data[0].orderNo + '&viewType=' + res.data[0].roomType2
+ })
+ }
+ }else if(res.code == 401){
+ uni.navigateTo({
+ url:'/pages/login/index'
+ })
+ }else{
+ uni.showToast({
+ title: res.msg,
+ icon: 'none',
+ duration: 2000
+ })
+ }
+ })
+ } else {
+ console.log('URL 中未找到 storeId 或 roomId');
+ }
+ }else if(option.storeId) {
this.storeId = option.storeId
uni.setStorageSync('storeId', this.storeId)
+ this.tabindex = 1
+ this.getroombq()
+ this.jinxinflag = false //如果进行了tab切换 则隐藏
+ this.getbiaoqian()
+ this.getstorebiaoqian()
+ this.getorder()
+ this.hourPointsArray = this.getCurrentHourPoints() //计算从当前时间往后推24小时
} else {
this.storeId = uni.getStorageSync('storeId')
+ this.tabindex = 1
+ this.getroombq()
+ this.jinxinflag = false //如果进行了tab切换 则隐藏
+ this.getbiaoqian()
+ this.getstorebiaoqian()
+ this.getorder()
+ this.hourPointsArray = this.getCurrentHourPoints() //计算从当前时间往后推24小时
+ }
+ if(option.distance){
+ this.distance = option.distance
}
},
onShow() {
- this.tabindex = 0
- this.getroombq()
- this.jinxinflag = false //如果进行了tab切换 则隐藏
- this.getbiaoqian()
- this.getstorebiaoqian()
- this.getorder()
- this.hourPointsArray = this.getCurrentHourPoints() //计算从当前时间往后推24小时
+
},
mounted() {
},
methods: {
+ // 点击打开厕所门
+ btncs(item){
+ if(item.deviceId == null){
+ uni.showToast({
+ title: '该厕所未安装设备',
+ icon: 'none',
+ duration: 2000
+ })
+ }else{
+ this.$u.get(`/app/room/openToilet/${item.toiletId}`).then(res => {
+ if (res.code == 200) {
+ uni.showToast({
+ title: '打开成功',
+ icon: 'success',
+ duration: 2000
+ })
+ this.cesuoflag = false
+ } else {
+ uni.showToast({
+ title: res.msg,
+ icon: 'none',
+ duration: 2000
+ })
+ }
+ })
+ }
+ },
// 点击存取球杆进行跳转
btncungan(){
uni.navigateTo({
@@ -278,7 +381,7 @@
// 点击包厢切换高亮
btnmd(index,item){
- this.viewType = item.viewType
+ this.viewType = item.reType
this.mdindex = index
},
// 点击隐藏进行中订单
@@ -353,12 +456,13 @@
// 点击切换tab类型
btngundong(type, index) {
- this.tabindex = index
+ console.log(type)
+ this.shopobj.roomList = []
+ this.tabindex = type
this.type = type
this.getstoredetail()
},
-
// 拿到当前时间后24小时格式成两位数
initializeData() {
// 获取当前时间
@@ -387,12 +491,12 @@
// 更新房间的预订状态且与initializeData进行匹对
updateRoomReservationStatus() {
this.roomList.forEach(room => {
- if (room.reservationStatus == null) {
- room.reservationStatus = {} // 为每个房间创建一个新的预订状态对象
- this.hours.forEach(hour => {
- room.reservationStatus[hour] = false // 初始化为未预订状态
- })
- } else {
+ // if (room.reservationStatus == null) {
+ // room.reservationStatus = {} // 为每个房间创建一个新的预订状态对象
+ // this.hours.forEach(hour => {
+ // room.reservationStatus[hour] = false // 初始化为未预订状态
+ // })
+ // } else {
room.reservationStatus = {} // 为每个房间创建一个新的预订状态对象
this.hours.forEach(hour => {
room.reservationStatus[hour] = false // 初始化为未预订状态
@@ -434,12 +538,11 @@
}
}
})
- }
+ // }
})
console.log(this.roomList, '00')
},
-
//计算从当前时间往后推24小时
getCurrentHourPoints() {
let now = new Date()
@@ -553,11 +656,21 @@
}
})
}else{
- uni.showToast({
- title: '您当前没有订单',
- icon: 'none',
- duration: 2000
- })
+ this.$u.get(`app/store/openGate/${this.storeId}`).then(res => {
+ if(res.code == 200){
+ uni.showToast({
+ title: '开启店门成功',
+ icon: 'success',
+ duration: 2000
+ })
+ }else{
+ uni.showToast({
+ title: res.msg,
+ icon: 'none',
+ duration: 2000
+ })
+ }
+ })
}
}else if(num == 2){
if(this.jinxinglist.length > 1){
@@ -619,12 +732,43 @@
})
}
})
+ }else if(num == 6){
+ this.$u.get(`/app/toilet/list?storeId=${this.storeId}`).then(res =>{
+ if(res.code == 200){
+ if(res.rows == null || res.rows.length == 0){
+ uni.showToast({
+ title: '暂无卫生间',
+ icon: 'none',
+ duration:2000
+ })
+ }else{
+ this.cesuolist = res.rows
+ if(this.cesuolist.length == 1){
+ this.$u.get(`/app/room/openToilet/${this.cesuolist[0].toiletId}`).then(res => {
+ if (res.code == 200) {
+ uni.showToast({
+ title: '打开成功',
+ icon: 'success',
+ duration: 2000
+ })
+ this.cesuoflag = false
+ } else {
+ uni.showToast({
+ title: res.msg,
+ icon: 'none',
+ duration: 2000
+ })
+ }
+ })
+ }else{
+ this.cesuoflag = true
+ }
+ }
+ }
+ })
}
},
-
-
-
// 点击进行导航
btndaohang() {
uni.openLocation({
@@ -649,7 +793,7 @@
// 点击跳转包厢详情页
btndetail(item) {
uni.navigateTo({
- url: '/pages/myorder/index?roomId=' + item.roomId + '&viewType=' + item.viewType
+ url: '/pages/myorder/index?roomId=' + item.roomId + '&viewType=' + item.type2
})
},
// 点击自定义导航栏返回首页
@@ -674,7 +818,6 @@
}
})
}
-
}
}
@@ -699,7 +842,53 @@
background-color: #226914 !important;
color: #fff !important;
}
-
+ .cesuoul{
+ width: 260rpx;
+ max-height: 500rpx;
+ background-color: #fff;
+ border-radius: 30rpx;
+ position: fixed;
+ top: 50%;
+ left: 50%;
+ transform: translateX(-50%);
+ z-index: 99;
+ padding: 30rpx;
+ box-sizing: border-box;
+ .anniuqx{
+ width: 100%;
+ height: 80rpx;
+ border: 1px solid #226914;
+ text-align: center;
+ line-height: 80rpx;
+ color: #226914;
+ margin-top: 30rpx;
+ border-radius: 20rpx;
+ font-size: 32rpx;
+ font-weight: 600;
+ }
+ .cesuoli{
+ width: 100%;
+ .caocuo{
+ .name{
+ width: 100%;
+ text-align: center;
+ margin-top: 20rpx;
+ font-size: 32rpx;
+ }
+ .kaiguan{
+ padding: 10rpx;
+ background-color: #226914;
+ color: #fff;
+ border-radius: 10rpx;
+ margin: auto;
+ margin-top: 20rpx;
+ width: 100rpx;
+ text-align: center;
+ }
+ }
+
+ }
+ }
.taiqiubox {
max-height: 710rpx;
overflow: scroll;
@@ -959,7 +1148,7 @@
.xuanfu {
position: fixed;
- top: 62%;
+ top: 58%;
right: 30rpx;
animation: fadeInDowns .5s ease-out forwards;
@@ -997,7 +1186,7 @@
.xuanfus {
position: fixed;
- top: 62%;
+ top: 58%;
right: -80rpx;
animation: fadeInDown .5s ease-out forwards;
diff --git a/pages/my.vue b/pages/my.vue
index 7f7a9d8..7c10344 100644
--- a/pages/my.vue
+++ b/pages/my.vue
@@ -224,23 +224,23 @@
url:'/pages/nearbystores/index'
})
}else if(num == 2){
- uni.navigateTo({
- url:'/page_user/huogui'
- })
- // uni.scanCode({
- // onlyFromCamera: true,
- // scanType: ['qrCode'],
- // success: res => {
- // console.log(res);
- // },
- // fail: err => {
- // console.error('扫描失败:', err)
- // uni.showToast({
- // title: '扫描失败',
- // icon: 'none'
- // })
- // }
+ // uni.navigateTo({
+ // url:'/page_user/huogui'
// })
+ uni.scanCode({
+ onlyFromCamera: true,
+ scanType: ['qrCode'],
+ success: res => {
+ console.log(res);
+ },
+ fail: err => {
+ console.error('扫描失败:', err)
+ uni.showToast({
+ title: '扫描失败',
+ icon: 'none'
+ })
+ }
+ })
}else if(num == 7){
uni.showModal({
title: '温馨提示',
diff --git a/pages/myorder/index.vue b/pages/myorder/index.vue
index b4abb8b..d35a64c 100644
--- a/pages/myorder/index.vue
+++ b/pages/myorder/index.vue
@@ -1,7 +1,7 @@
+ title-size='36' height='36' id="navbar" :custom-back="btns">
@@ -11,7 +11,7 @@
-
+
@@ -41,19 +41,19 @@
-
+
套餐选择:
- {{item.explain == null ? '--' : item.explain}}
+ {{item.explain.length > 6 ? item.explain.slice(0,4) + '...' : item.explain}}
¥{{item.price == null ? '--' : item.price}}
-
+
时长选择:
@@ -186,10 +186,10 @@
1、预定的订单将全时段保留。迟到不可顺延和退款;
- 2、为避免包厢被其他用户预约而给您带来不好的体 验,如需续单,请提前续单!
+ 2、为避免包厢被其他用户预约而给您带来不好的体验,如需续单,请提前续单!
- 3、订单开始前1小时内取消订单需核收15%退单费, 请合理规划您的时间;
+ 3、订单开始前{{mintime}}分钟内取消订单需核收{{weiyueprice}}%退单费, 请合理规划您的时间;
@@ -257,15 +257,19 @@
zfss: '微信支付',
zfssid: 'wx',
timeshijian:'',
- viewType:''
+ viewType:'',
+ weiyueprice:'',
+ mintime:'',
+ ruleId:''
}
},
onLoad(option) {
this.roomId = option.roomId
- this.viewType = option.viewType
+ // this.viewType = option.viewType
this.getbiaoqian()
this.getstoredetail()
this.gettaocan()
+ this.getweiyue()
this.hourPointsArray = this.getCurrentHourPoints() //计算从当前时间往后推24小时
},
onShow() {
@@ -312,6 +316,20 @@
// 默认选中第一个日期// 默认选中第一个日期// 默认选中第一个日期// 默认选中第一个日期// 默认选中第一个日期// 默认选中第一个日期
},
methods: {
+ btns(){
+ uni.reLaunch({
+ url:'/pages/index/index?storeId=' + this.shopobj.storeId
+ })
+ },
+ // 拿到违约基础信息
+ getweiyue(){
+ this.$u.get(`/getAppInfo`).then(res => {
+ if(res.code == 200){
+ this.mintime = res.user.agoCancel
+ this.weiyueprice = res.user.penalty * 10
+ }
+ })
+ },
// 拿到标签进行对比
getMatchingLabel(item) {
const matchingItem = this.biaoqianlist.find(items => items.dictValue === item)
@@ -429,6 +447,7 @@
}
})
this.roomList = this.mergeReservationStatuses(this.roomList)
+
},
// 将this.roomlist中的三个数组合并成一个
@@ -542,10 +561,10 @@
// let formattedDateString = time.replace(/\//g, "-")
let data = {
roomId: this.roomId,
- viewType:this.viewType,
+ type2:this.viewType,
payType: this.zfssid,
- ruleId:this.tclist[0].mode == 2 ? this.tcobj.ruleId : this.tclist[0].ruleId,
- type: 1,
+ ruleId:this.ruleId,
+ // type: 1,
reserveStartTime: this.timeshijian,
mode: this.tclist[0].mode,
hours: this.hourstime,
@@ -789,7 +808,8 @@
this.$u.get(`/app/room/${this.roomId}`).then(res => {
if (res.code == 200) {
this.shopobj = res.data
- if(res.data.reservedTimePeriods == null){
+ this.viewType = res.data.type2
+ if(res.data.reservedTimePeriods == null || res.data.reservedTimePeriods.length == 0){
this.roomList = []
for(let i = 0;i < 24;i++){
this.roomList.push(false)
@@ -903,6 +923,7 @@
// 选择套餐
btntc(index, item) {
this.tcobj = item
+ this.ruleId = item.ruleId
this.price = item.price //订单金额
this.hourstime = item.hours //订单时间
this.indextwo = index
@@ -1490,7 +1511,7 @@
}
.tcxz .taocan .tclist {
- width: 186rpx;
+ width: 200rpx;
height: 110rpx;
border-radius: 10rpx;
border: 2rpx solid #7C7C7C;
@@ -1507,7 +1528,7 @@
color: #3D3D3D;
// font-weight: 600;
box-sizing: border-box;
- width: 182rpx;
+ width: 200rpx;
}
.riqi {
diff --git a/pages/nearbystores/index.vue b/pages/nearbystores/index.vue
index 9ce05cb..aeae9ea 100644
--- a/pages/nearbystores/index.vue
+++ b/pages/nearbystores/index.vue
@@ -3,8 +3,8 @@
-
- 商户中心
+
+ 商户中心
@@ -41,9 +41,9 @@
-
+
@@ -53,9 +53,9 @@
{{item.address.length > 13 ? item.address.slice(0,13) + '...' : item.address}}
-
-
-
+
+
+
@@ -85,13 +85,17 @@
+
+
+
+
@@ -124,6 +128,24 @@
+
+
+
+
+
+ {{item.name}}
+
+
+ 开门
+
+
+
+
+ 取消
+
+
+
+
@@ -151,7 +173,11 @@
jinxinflag:false,
sousuovalue:'',
tabindex:1,
- type:1
+ type:1,
+ userType:'00',
+ cesuolist:[],
+ cesuoflag:false,
+ csindex:-1,
}
},
onLoad(option) {
@@ -184,7 +210,7 @@
},
// 点击选择开包厢
btnmd(index,item){
- this.viewType = item.viewType
+ this.viewType = item.reType
this.mdindex = index
},
// 请求正在进行中的订单
@@ -352,16 +378,129 @@
onlyFromCamera: true,
scanType: ['qrCode'],
success: res => {
- console.log(res)
- uni.navigateTo({
- url:'/pages/myorder/orderxd?roomId=' + 65
- })
- },
- fail: err => {
- console.error('扫描失败:', err)
+ function getQueryParam(url, paramName) {
+ let regex = new RegExp(`[?&]${paramName}=([^&]*)`)
+ let results = regex.exec(url);
+ return results ? decodeURIComponent(results[1].replace(/\+/g, ' ')) : null
+ }
+ console.log(res);
+ let sceneValue = res.result
+ let decodedValue = decodeURIComponent(sceneValue)
+ let id = getQueryParam(decodedValue, 'sn')
+ if(id){
+ let that = this
+ let data = {
+ sn: id,
+ }
+ that.$u.get(`/app/device/isBind?deviceNo=${id}`).then(res => {
+ if (res.data == 2) {
+ uni.showToast({
+ title: '该设备已被绑定',
+ icon: 'none',
+ duration: 2000
+ })
+ } else if (res.data == 1) {
+ uni.showModal({
+ title: '提示',
+ content: '该设备未绑定,你需进行绑定吗?',
+ success: function(res) {
+ if (res.confirm) {
+ that.$u.put("/app/device/bind", data).then(res => {
+ if (res.code == 200) {
+ uni.showToast({
+ title: '绑定成功',
+ icon: 'success',
+ duration: 2000
+ })
+ that.userType = '01'
+ }
+ })
+ }
+ }
+ })
+ }else if(res.data == 0){
+ uni.showToast({
+ title: '该设备为录入,请先录入',
+ icon: 'none',
+ duration: 2000
+ })
+ }
+ })
+ }
+ }
+ })
+ }else if(num == 5){
+ uni.switchTab({
+ url:'/pages/tj'
+ })
+ }else if(num == 6){
+ if(this.jinxinglist.length > 0){
+ let storeId = this.jinxinglist[0].storeId
+ this.$u.get(`/app/toilet/list?storeId=${storeId}`).then(res =>{
+ if(res.code == 200){
+ if(res.rows == null || res.rows.length == 0){
+ uni.showToast({
+ title: '暂无卫生间',
+ icon: 'none',
+ duration:2000
+ })
+ }else{
+ this.cesuolist = res.rows
+ if(this.cesuolist.length == 1){
+ this.$u.get(`/app/room/openToilet/${this.cesuolist[0].toiletId}`).then(res => {
+ if (res.code == 200) {
+ uni.showToast({
+ title: '打开成功',
+ icon: 'success',
+ duration: 2000
+ })
+ this.cesuoflag = false
+ } else {
+ uni.showToast({
+ title: res.msg,
+ icon: 'none',
+ duration: 2000
+ })
+ }
+ })
+ }else{
+ this.cesuoflag = true
+ }
+ }
+ }
+ })
+ }else{
+ uni.showToast({
+ title: '当前没有订单,请先下单',
+ icon: 'none',
+ duration: 2000
+ })
+ }
+ }
+ },
+ // 点击打开厕所门
+ btncs(item){
+ console.log(item);
+ if(item.deviceId == null){
+ uni.showToast({
+ title: '该厕所未安装设备',
+ icon: 'none',
+ duration: 2000
+ })
+ }else{
+ this.$u.get(`/app/room/openToilet/${item.toiletId}`).then(res => {
+ if (res.code == 200) {
uni.showToast({
- title: '扫描失败',
- icon: 'none'
+ title: '打开成功',
+ icon: 'success',
+ duration: 2000
+ })
+ this.cesuoflag = false
+ } else {
+ uni.showToast({
+ title: res.msg,
+ icon: 'none',
+ duration: 2000
})
}
})
@@ -401,6 +540,7 @@
getinfo(){
this.$u.get(`/getAppInfo`).then(res => {
if(res.code == 200){
+ this.userType = res.user.userType
uni.setStorageSync('user', res.data)
}else if(res.code == 401){
this.jingmo()
@@ -420,6 +560,7 @@
that.$u.post(`/loginByopenid?jsCode=${res.code}`,data).then(res=>{
if (res.code == 200) {
console.log("老用户登录",res)
+ that.getinfo()
wx.setStorageSync('token', res.token)
}
})
@@ -459,7 +600,7 @@
onTouchEnd(e) {
this.imgflag = true
let deltaX = e.changedTouches[0].clientX - this.touchStartX
- let deltaY = e.changedTouches[0].clientY - this.touchStartY;
+ let deltaY = e.changedTouches[0].clientY - this.touchStartY
if (Math.abs(deltaX) > 50 && Math.abs(deltaX) > Math.abs(deltaY)) {
if (deltaX >= 0) {
// console.log("左滑")
@@ -522,6 +663,53 @@
font-size: 40rpx !important;
color: #3D3D3D !important;
}
+ .cesuoul{
+ width: 260rpx;
+ max-height: 500rpx;
+ background-color: #fff;
+ border-radius: 30rpx;
+ position: fixed;
+ top: 50%;
+ left: 50%;
+ transform: translateX(-50%);
+ z-index: 99;
+ padding: 30rpx;
+ box-sizing: border-box;
+ .anniuqx{
+ width: 100%;
+ height: 80rpx;
+ border: 1px solid #226914;
+ text-align: center;
+ line-height: 80rpx;
+ color: #226914;
+ margin-top: 30rpx;
+ border-radius: 20rpx;
+ font-size: 32rpx;
+ font-weight: 600;
+ }
+ .cesuoli{
+ width: 100%;
+ .caocuo{
+ .name{
+ width: 100%;
+ text-align: center;
+ margin-top: 20rpx;
+ font-size: 32rpx;
+ }
+ .kaiguan{
+ padding: 10rpx;
+ background-color: #226914;
+ color: #fff;
+ border-radius: 10rpx;
+ margin: auto;
+ margin-top: 20rpx;
+ width: 100rpx;
+ text-align: center;
+ }
+ }
+
+ }
+ }
.tabqh{
display: flex;
width: 100%;
@@ -707,10 +895,10 @@
.shop_item{
margin: auto;
display: flex;
- margin-top: 40rpx;
+ margin-top: 30rpx;
box-sizing: border-box;
width: 674rpx;
- height: 350rpx;
+ height: 330rpx;
background: #FFFFFF;
padding: 20rpx 18rpx;
box-shadow: 0rpx 2rpx 12rpx 0rpx rgba(0,0,0,0.15);
@@ -781,7 +969,7 @@
margin-right: 38rpx;
image{
width: 186rpx;
- height: 236rpx;
+ height: 220rpx;
border-radius: 10rpx;
}
.hour{
@@ -841,6 +1029,7 @@
font-size: 36rpx;
color: #226914;
line-height: 50rpx;
+ height: 50rpx;
padding-left: 34rpx;
box-sizing: border-box;
}
diff --git a/pages/tj.vue b/pages/tj.vue
index c18824d..32bcfd0 100644
--- a/pages/tj.vue
+++ b/pages/tj.vue
@@ -15,17 +15,17 @@
-
- 订单状态 待支付
- 订单状态 支付中
- 订单状态 待使用
- 订单状态 使用中
- 订单状态 已完成
- 订单状态 超时自动取消
- 订单状态 用户取消订单
- 订单状态 退款中
- 订单状态 已退款
- 用户结束订单
+
+ 订单状态 预订单 续单 待支付
+ 订单状态 预订单 续单 支付中
+ 订单状态 预订单 续单 待使用
+ 订单状态 预订单 续单 使用中
+ 订单状态 预订单 续单 已完成
+ 订单状态 预订单 续单 超时自动取消
+ 订单状态 预订单 续单 用户取消订单
+ 订单状态 预订单 续单 退款中
+ 订单状态 预订单 续单 已退款
+ 用户结束订单
@@ -43,7 +43,7 @@
-
+
预定包厢
@@ -218,9 +218,9 @@
this.getlist()
},
// 点击跳转到详情页
- btnxq(orderNo){
+ btnxq(orderNo,roomType2){
uni.navigateTo({
- url:'/page_user/dingdanxq?orderNo=' + orderNo
+ url:'/page_user/dingdanxq?orderNo=' + orderNo + '&viewType=' + roomType2
})
},
// 点击结束订单
@@ -247,7 +247,7 @@
}else{
uni.showToast({
title: res.msg,
- icon: 'success',
+ icon: 'none',
duration:2000
})
}
@@ -303,7 +303,7 @@
fail: function(err) {
console.error('拨打电话失败', err)
uni.showToast({
- title: '取消拨打电话',
+ title: '暂无店长电话',
icon: 'none'
})
}
@@ -459,6 +459,14 @@
display: flex;
justify-content: space-between;
font-weight: 600;
+ .ydd{
+ padding: 4rpx;
+ box-sizing: border-box;
+ border: 1px solid #48893B;
+ color: #48893B;
+ font-size: 24rpx;
+ margin-left: 10rpx;
+ }
.ones{
font-weight: 600;
font-size: 28rpx;