mirror of
https://gitee.com/java110/WechatOwnerService.git
synced 2026-02-23 21:36:38 +08:00
加入智慧停车功能
This commit is contained in:
parent
8d9822d770
commit
00d89118ad
6
app.json
6
app.json
@ -34,12 +34,14 @@
|
||||
"pages/activitesDetail/activitesDetail",
|
||||
"pages/roomFeeList/roomFeeList",
|
||||
"pages/roomFee/roomFee",
|
||||
"pages/myRepair/myRepair"
|
||||
"pages/myRepair/myRepair",
|
||||
"pages/tempParkingFee/tempParkingFee",
|
||||
"pages/tempParkingFeePay/tempParkingFeePay"
|
||||
],
|
||||
"window": {
|
||||
"navigationBarTextStyle": "white",
|
||||
"navigationBarBackgroundColor": "#00AA00",
|
||||
"navigationBarTitleText": "WeChat"
|
||||
"navigationBarTitleText": "HC智慧小区"
|
||||
},
|
||||
"tabBar": {
|
||||
"color": "#272636",
|
||||
|
||||
@ -86,6 +86,11 @@ const listAdvertPhoto = baseUrl +"/app/advert.listAdvertPhoto";
|
||||
//查询报修单
|
||||
const listMyRepair = baseUrl + "/app/ownerRepair.listOwnerRepairs";
|
||||
|
||||
//查询在场车辆
|
||||
const listCarIn = baseUrl +"/app/carInout.listCarInouts";
|
||||
|
||||
const queryConfigFee = baseUrl + "/app/fee.queryFeeConfig";
|
||||
|
||||
|
||||
module.exports = {
|
||||
baseUrl: baseUrl,
|
||||
@ -118,5 +123,7 @@ module.exports = {
|
||||
listActivitiess: listActivitiess,
|
||||
filePath: filePath,
|
||||
listAdvertPhoto: listAdvertPhoto,
|
||||
listMyRepair: listMyRepair
|
||||
listMyRepair: listMyRepair,
|
||||
listCarIn: listCarIn,
|
||||
queryConfigFee: queryConfigFee
|
||||
};
|
||||
@ -41,6 +41,10 @@ Page({
|
||||
name: "公告",
|
||||
src: "/images/7.png",
|
||||
href: "/pages/notice/index"
|
||||
}, {
|
||||
name: "智慧停车",
|
||||
src: "/images/8.png",
|
||||
href: "/pages/tempParkingFee/tempParkingFee"
|
||||
}]
|
||||
|
||||
},
|
||||
|
||||
339
pages/tempParkingFee/tempParkingFee.js
Normal file
339
pages/tempParkingFee/tempParkingFee.js
Normal file
@ -0,0 +1,339 @@
|
||||
const context = require("../../context/Java110Context.js");
|
||||
const constant = context.constant;
|
||||
const util = context.util;
|
||||
Page({
|
||||
data: {
|
||||
isKeyboard: !1,
|
||||
isNumberKB: !1,
|
||||
tapNum: !1,
|
||||
disableKey: "1234567890港澳学",
|
||||
keyboardNumber: "1234567890ABCDEFGHJKLMNPQRSTUVWXYZ港澳学",
|
||||
keyboard1: "京沪粤津冀晋蒙辽吉黑苏浙皖闽赣鲁豫鄂湘桂琼渝川贵云藏陕甘青宁新",
|
||||
inputPlates: {
|
||||
index0: "青",
|
||||
index1: "A",
|
||||
index2: "",
|
||||
index3: "",
|
||||
index4: "",
|
||||
index5: "",
|
||||
index6: "",
|
||||
index7: ""
|
||||
},
|
||||
inputOnFocusIndex: "",
|
||||
flag: true,
|
||||
communityName: '',
|
||||
communityId: '',
|
||||
carNumBtn: '新能源车牌',
|
||||
carNum: '',
|
||||
carNumBtnDisable: true
|
||||
},
|
||||
onLoad: function(options) {
|
||||
this.setData({
|
||||
communityId: '7020181217000001',
|
||||
communityName: "万博家博园(城西区)"
|
||||
})
|
||||
},
|
||||
//切换车牌
|
||||
changeplate: function(e) {
|
||||
var that = this;
|
||||
let _flag = this.data.flag;
|
||||
let _carNumBtn = '新能源车牌';
|
||||
if (_flag) {
|
||||
_flag = false;
|
||||
_carNumBtn = '普通车牌';
|
||||
} else {
|
||||
_flag = true;
|
||||
_carNumBtn = '新能源车牌';
|
||||
}
|
||||
console.log(e);
|
||||
that.setData({
|
||||
flag: _flag,
|
||||
carNumBtn: _carNumBtn,
|
||||
inputPlates: {
|
||||
index0: "青",
|
||||
index1: "A",
|
||||
index2: "",
|
||||
index3: "",
|
||||
index4: "",
|
||||
index5: "",
|
||||
index6: "",
|
||||
index7: ""
|
||||
},
|
||||
})
|
||||
},
|
||||
//切换车牌
|
||||
changeplate1: function() {
|
||||
var that = this;
|
||||
let _flag = this.data.flag;
|
||||
if (_flag) {
|
||||
_flag = false;
|
||||
} else {
|
||||
_flag = true;
|
||||
}
|
||||
that.setData({
|
||||
flag: _flag,
|
||||
inputPlates: {
|
||||
index0: "青",
|
||||
index1: "A",
|
||||
index2: "",
|
||||
index3: "",
|
||||
index4: "",
|
||||
index5: "",
|
||||
index6: "",
|
||||
index7: ""
|
||||
},
|
||||
})
|
||||
},
|
||||
|
||||
inputClick: function(t) {
|
||||
var that = this;
|
||||
console.log('输入框:', t)
|
||||
that.setData({
|
||||
inputOnFocusIndex: t.target.dataset.id,
|
||||
isKeyboard: !0
|
||||
})
|
||||
"0" == this.data.inputOnFocusIndex ? that.setData({
|
||||
tapNum: !1,
|
||||
isNumberKB: !1
|
||||
}) : "1" == this.data.inputOnFocusIndex ? that.setData({
|
||||
tapNum: !1,
|
||||
isNumberKB: !0
|
||||
}) : that.setData({
|
||||
tapNum: !0,
|
||||
isNumberKB: !0
|
||||
});
|
||||
|
||||
},
|
||||
|
||||
//键盘点击事件
|
||||
tapKeyboard: function(t) {
|
||||
t.target.dataset.index;
|
||||
var a = t.target.dataset.val;
|
||||
console.log('键盘:', a)
|
||||
switch (this.data.inputOnFocusIndex) {
|
||||
case "0":
|
||||
this.setData({
|
||||
"inputPlates.index0": a,
|
||||
inputOnFocusIndex: "1"
|
||||
});
|
||||
break;
|
||||
|
||||
case "1":
|
||||
this.setData({
|
||||
"inputPlates.index1": a,
|
||||
inputOnFocusIndex: "2"
|
||||
});
|
||||
break;
|
||||
|
||||
case "2":
|
||||
this.setData({
|
||||
"inputPlates.index2": a,
|
||||
inputOnFocusIndex: "3"
|
||||
});
|
||||
break;
|
||||
|
||||
case "3":
|
||||
this.setData({
|
||||
"inputPlates.index3": a,
|
||||
inputOnFocusIndex: "4"
|
||||
});
|
||||
break;
|
||||
|
||||
case "4":
|
||||
this.setData({
|
||||
"inputPlates.index4": a,
|
||||
inputOnFocusIndex: "5"
|
||||
});
|
||||
break;
|
||||
|
||||
case "5":
|
||||
this.setData({
|
||||
"inputPlates.index5": a,
|
||||
inputOnFocusIndex: "6"
|
||||
});
|
||||
break;
|
||||
|
||||
case "6":
|
||||
this.setData({
|
||||
"inputPlates.index6": a,
|
||||
inputOnFocusIndex: "7"
|
||||
});
|
||||
break;
|
||||
|
||||
case "7":
|
||||
this.setData({
|
||||
"inputPlates.index7": a,
|
||||
inputOnFocusIndex: "7"
|
||||
});
|
||||
|
||||
}
|
||||
var n = this.data.inputPlates.index0 + this.data.inputPlates.index1 + this.data.inputPlates.index2 + this.data.inputPlates.index3 + this.data.inputPlates.index4 + this.data.inputPlates.index5 + this.data.inputPlates.index6 + this.data.inputPlates.index7
|
||||
console.log('车牌号:', n);
|
||||
this.setData({
|
||||
carNum: n
|
||||
})
|
||||
this.checkedSubmitButtonEnabled();
|
||||
},
|
||||
//键盘关闭按钮点击事件
|
||||
tapSpecBtn: function(t) {
|
||||
var a = this,
|
||||
e = t.target.dataset.index;
|
||||
if (0 == e) {
|
||||
switch (parseInt(this.data.inputOnFocusIndex)) {
|
||||
case 0:
|
||||
this.setData({
|
||||
"inputPlates.index0": "",
|
||||
inputOnFocusIndex: "0"
|
||||
});
|
||||
break;
|
||||
|
||||
case 1:
|
||||
this.setData({
|
||||
"inputPlates.index1": "",
|
||||
inputOnFocusIndex: "0"
|
||||
});
|
||||
break;
|
||||
|
||||
case 2:
|
||||
this.setData({
|
||||
"inputPlates.index2": "",
|
||||
inputOnFocusIndex: "1"
|
||||
});
|
||||
break;
|
||||
|
||||
case 3:
|
||||
this.setData({
|
||||
"inputPlates.index3": "",
|
||||
inputOnFocusIndex: "2"
|
||||
});
|
||||
break;
|
||||
|
||||
case 4:
|
||||
this.setData({
|
||||
"inputPlates.index4": "",
|
||||
inputOnFocusIndex: "3"
|
||||
});
|
||||
break;
|
||||
|
||||
case 5:
|
||||
this.setData({
|
||||
"inputPlates.index5": "",
|
||||
inputOnFocusIndex: "4"
|
||||
});
|
||||
break;
|
||||
|
||||
case 6:
|
||||
this.setData({
|
||||
"inputPlates.index6": "",
|
||||
inputOnFocusIndex: "5"
|
||||
});
|
||||
break;
|
||||
|
||||
case 7:
|
||||
this.setData({
|
||||
"inputPlates.index7": "",
|
||||
inputOnFocusIndex: "6"
|
||||
});
|
||||
}
|
||||
|
||||
} else 1 == e && a.setData({
|
||||
isKeyboard: !1,
|
||||
isNumberKB: !1,
|
||||
inputOnFocusIndex: ""
|
||||
});
|
||||
this.checkedSubmitButtonEnabled();
|
||||
},
|
||||
//键盘切换
|
||||
checkedKeyboard: function() {
|
||||
var t = this;
|
||||
"0" == this.data.inputOnFocusIndex ? t.setData({
|
||||
tapNum: !1,
|
||||
isNumberKB: !1
|
||||
}) : "1" == this.data.inputOnFocusIndex ? t.setData({
|
||||
tapNum: !1,
|
||||
isNumberKB: !0
|
||||
}) : this.data.inputOnFocusIndex.length > 0 && t.setData({
|
||||
tapNum: !0,
|
||||
isNumberKB: !0
|
||||
});
|
||||
},
|
||||
|
||||
checkedSubmitButtonEnabled: function() {
|
||||
this.checkedKeyboard();
|
||||
var t = !0;
|
||||
for (var a in this.data.inputPlates)
|
||||
if ("index7" != a && this.data.inputPlates[a].length < 1) {
|
||||
this.setData({
|
||||
carNumBtnDisable: true
|
||||
})
|
||||
t = !1;
|
||||
break;
|
||||
}
|
||||
if (t) {
|
||||
this.setData({
|
||||
carNumBtnDisable: false
|
||||
})
|
||||
}
|
||||
|
||||
},
|
||||
queryCarNum: function() {
|
||||
let carNum = this.data.carNum;
|
||||
let _that = this;
|
||||
if (carNum == '') {
|
||||
wx.showToast({
|
||||
title: '请重新输入车牌号',
|
||||
});
|
||||
return;
|
||||
}
|
||||
|
||||
//查询车辆是否在该 小区停车场中
|
||||
let _objData = {
|
||||
communityId: this.data.communityId,
|
||||
carNum: carNum,
|
||||
state: '100300,100600',
|
||||
page:1,
|
||||
row:1
|
||||
}
|
||||
|
||||
context.request({
|
||||
url: constant.url.listCarIn,
|
||||
header: context.getHeaders(),
|
||||
method: "GET",
|
||||
data: _objData, //动态数据
|
||||
success: function(res) {
|
||||
console.log("请求返回信息:", res);
|
||||
if (res.statusCode == 200) {
|
||||
let _carInouts = res.data.carInouts;
|
||||
if (_carInouts == null || _carInouts.length == 0){
|
||||
wx.showToast({
|
||||
title: "未查询到在场车辆或已支付",
|
||||
icon: 'none',
|
||||
duration: 2000
|
||||
});
|
||||
return;
|
||||
}
|
||||
let _tmpCarInout = _carInouts[0];
|
||||
_tmpCarInout['communityId'] = _that.data.communityId;
|
||||
_tmpCarInout['communityName'] = _that.data.communityName;
|
||||
|
||||
wx.navigateTo({
|
||||
url: '/pages/tempParkingFeePay/tempParkingFeePay?carInfo=' + JSON.stringify(_carInouts[0]),
|
||||
});
|
||||
return ;
|
||||
}
|
||||
wx.showToast({
|
||||
title: "服务器异常了",
|
||||
icon: 'none',
|
||||
duration: 2000
|
||||
})
|
||||
},
|
||||
fail: function(e) {
|
||||
wx.showToast({
|
||||
title: "服务器异常了",
|
||||
icon: 'none',
|
||||
duration: 2000
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
3
pages/tempParkingFee/tempParkingFee.json
Normal file
3
pages/tempParkingFee/tempParkingFee.json
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"navigationBarTitleText": "智慧停车"
|
||||
}
|
||||
153
pages/tempParkingFee/tempParkingFee.wxml
Normal file
153
pages/tempParkingFee/tempParkingFee.wxml
Normal file
@ -0,0 +1,153 @@
|
||||
<view class="pages">
|
||||
<view class="plate-context">
|
||||
<!-- <view class='pages_header'>
|
||||
<view class='pages_header_top'>
|
||||
</view>
|
||||
<view class='pages_header_btm'>
|
||||
<text>{{communityName}}</text>
|
||||
</view>
|
||||
</view> -->
|
||||
<view class="ak_row_black">
|
||||
</view>
|
||||
<view class="ak_row_title">
|
||||
<text>{{communityName}}</text>
|
||||
</view>
|
||||
|
||||
<view class="tips_block">
|
||||
</view>
|
||||
|
||||
<view class='tips'>
|
||||
<text>点击方框输入车牌号</text>
|
||||
</view>
|
||||
<view class="plate-input-body">
|
||||
<view class="plate-input-content" wx:if="{{flag}}">
|
||||
<view bindtap="inputClick" data-id="0" class="{{inputOnFocusIndex=='0'?'plate-nums-foc':'plate-nums-first'}}">
|
||||
<text class="plate-num-text">{{inputPlates.index0}}</text>
|
||||
</view>
|
||||
<view bindtap="inputClick" data-id="1" class="{{inputOnFocusIndex=='1'?'plate-nums-foc':'plate-nums-first'}}">
|
||||
<text class="plate-num-text">{{inputPlates.index1}}</text>
|
||||
</view>
|
||||
<view bindtap="inputClick" data-id="2" class="{{inputOnFocusIndex=='2'?'plate-nums-foc':'plate-nums-first'}}">
|
||||
<text class="plate-num-text">{{inputPlates.index2}}</text>
|
||||
</view>
|
||||
<view bindtap="inputClick" data-id="3" class="{{inputOnFocusIndex=='3'?'plate-nums-foc':'plate-nums-first'}}">
|
||||
<text class="plate-num-text">{{inputPlates.index3}}</text>
|
||||
</view>
|
||||
<view bindtap="inputClick" data-id="4" class="{{inputOnFocusIndex=='4'?'plate-nums-foc':'plate-nums-first'}}">
|
||||
<text class="plate-num-text">{{inputPlates.index4}}</text>
|
||||
</view>
|
||||
<view bindtap="inputClick" data-id="5" class="{{inputOnFocusIndex=='5'?'plate-nums-foc':'plate-nums-first'}}">
|
||||
<text class="plate-num-text">{{inputPlates.index5}}</text>
|
||||
</view>
|
||||
<view bindtap="inputClick" data-id="6" class="{{inputOnFocusIndex=='6'?'plate-nums-foc':'plate-nums-first'}}">
|
||||
<text class="plate-num-text">{{inputPlates.index6}}</text>
|
||||
</view>
|
||||
</view>
|
||||
<view class="new-plate-input-content" wx:else="">
|
||||
<view bindtap="inputClick" data-id="0" class="{{inputOnFocusIndex=='0'?'plate-nums-foc':'plate-nums-first'}}">
|
||||
<text class="plate-num-text">{{inputPlates.index0}}</text>
|
||||
</view>
|
||||
<view bindtap="inputClick" data-id="1" class="{{inputOnFocusIndex=='1'?'plate-nums-foc':'plate-nums-first'}}">
|
||||
<text class="plate-num-text">{{inputPlates.index1}}</text>
|
||||
</view>
|
||||
<view bindtap="inputClick" data-id="2" class="{{inputOnFocusIndex=='2'?'plate-nums-foc':'plate-nums-first'}}">
|
||||
<text class="plate-num-text">{{inputPlates.index2}}</text>
|
||||
</view>
|
||||
<view bindtap="inputClick" data-id="3" class="{{inputOnFocusIndex=='3'?'plate-nums-foc':'plate-nums-first'}}">
|
||||
<text class="plate-num-text">{{inputPlates.index3}}</text>
|
||||
</view>
|
||||
<view bindtap="inputClick" data-id="4" class="{{inputOnFocusIndex=='4'?'plate-nums-foc':'plate-nums-first'}}">
|
||||
<text class="plate-num-text">{{inputPlates.index4}}</text>
|
||||
</view>
|
||||
<view bindtap="inputClick" data-id="5" class="{{inputOnFocusIndex=='5'?'plate-nums-foc':'plate-nums-first'}}">
|
||||
<text class="plate-num-text">{{inputPlates.index5}}</text>
|
||||
</view>
|
||||
<view bindtap="inputClick" data-id="6" class="{{inputOnFocusIndex=='6'?'plate-nums-foc':'plate-nums-first'}}">
|
||||
<text class="plate-num-text">{{inputPlates.index6}}</text>
|
||||
</view>
|
||||
<view bindtap="inputClick" data-id="7" class="{{inputOnFocusIndex=='7'?'plate-nums-foc':'plate-nums-first'}}">
|
||||
<text class="plate-num-text">{{inputPlates.index7}}</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class='plate-input-flag' bindtap='changeplate'>
|
||||
<text>{{carNumBtn}}</text>
|
||||
</view>
|
||||
|
||||
<view class="plat-btn-black"></view>
|
||||
|
||||
<view class="plat-btn">
|
||||
<van-button type="primary" disabled="{{carNumBtnDisable}}" bind:click="queryCarNum" block>立即查询</van-button>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
<!--键盘-->
|
||||
<view class="keyboard" wx:if="{{isKeyboard}}">
|
||||
<view class="kb_top">
|
||||
<text catchtap="tapSpecBtn" data-index="1" style="position:absolute;right:0;display:block;height:74rpx;padding:0 34rpx; color:#03BF70;line-height:74rpx; font-size: 30rpx;">关闭</text>
|
||||
</view>
|
||||
<view style="width:100%; text-align:center;" wx:if="{{!isNumberKB}}">
|
||||
<view style="width:99%;display:flex;text-align:center;margin:0 auto">
|
||||
<view catchtap="tapKeyboard" class="td td_nor" data-index="{{idx}}" data-val="{{itemName}}" hoverClass="board_bg" hoverStartTime="0" hoverStayTime="80" wx:if="{{idx<=9}}" wx:for="{{keyboard1}}" wx:for-index="idx" wx:for-item="itemName" wx:key="{{itemName}}">
|
||||
{{itemName}}
|
||||
</view>
|
||||
</view>
|
||||
<view style="display:flex;text-align:center; width:90%;margin:0 auto">
|
||||
<view catchtap="tapKeyboard" class="td td_nor" data-index="{{idx}}" data-val="{{itemName}}" hoverClass="board_bg" hoverStartTime="0" hoverStayTime="80" wx:if="{{idx<=18&&idx>9}}" wx:for="{{keyboard1}}" wx:for-index="idx" wx:for-item="itemName" wx:key="{{itemName}}">
|
||||
{{itemName}}
|
||||
</view>
|
||||
</view>
|
||||
<view style="display:flex;text-align:center; width:70%;margin:0 auto">
|
||||
<view catchtap="tapKeyboard" class="td td_nor" data-index="{{idx}}" data-val="{{itemName}}" hoverClass="board_bg" hoverStartTime="0" hoverStayTime="80" wx:if="{{idx<=25&&idx>18}}" wx:for="{{keyboard1}}" wx:for-index="idx" wx:for-item="itemName" wx:key="{{itemName}}">
|
||||
{{itemName}}
|
||||
</view>
|
||||
</view>
|
||||
<view style="display:flex; width:50%;margin:0 auto;text-align:center;">
|
||||
<view catchtap="tapKeyboard" class="td td_nor" data-index="{{idx}}" data-val="{{itemName}}" hoverClass="board_bg" hoverStartTime="0" hoverStayTime="80" wx:if="{{idx>25}}" wx:for="{{keyboard1}}" wx:for-index="idx" wx:for-item="itemName" wx:key="{{itemName}}">
|
||||
{{itemName}}
|
||||
</view>
|
||||
</view>
|
||||
<view bindtap="tapSpecBtn" class="del-first" data-index="0" hoverClass="del-hover" hoverStartTime="0" hoverStayTime="80">
|
||||
<!-- <image class="del-img" data-index="0" mode="scaleToFill" src="../../images/delete.png"></image> -->
|
||||
<text data-index="0" class="iconfont iconiconfonttuige2"></text>
|
||||
</view>
|
||||
</view>
|
||||
<view style="width:100%; text-align:center;" wx:if="{{isNumberKB}}">
|
||||
<view style="width:99%;display:flex;text-align:center;margin:0 auto">
|
||||
<view class="td td_num board_bg" wx:if="{{!tapNum&&idx<=9}}" wx:for="{{keyboardNumber}}" wx:for-index="idx" wx:for-item="itemName" wx:key="{{itemName}}">
|
||||
{{itemName}}
|
||||
</view>
|
||||
</view>
|
||||
<view style="width:99%;display:flex;text-align:center;margin:0 auto">
|
||||
<view catchtap="tapKeyboard" class="td td_num" data-index="{{idx}}" data-val="{{itemName}}" hoverClass="board_bg" hoverStartTime="0" hoverStayTime="80" wx:if="{{tapNum&&idx<=9}}" wx:for="{{keyboardNumber}}" wx:for-index="idx" wx:for-item="itemName" wx:key="{{itemName}}">
|
||||
{{itemName}}
|
||||
</view>
|
||||
</view>
|
||||
<view style="width:99%;display:flex;text-align:center;margin:0 auto">
|
||||
<view catchtap="tapKeyboard" class="td td_num" data-index="{{idx}}" data-val="{{itemName}}" hoverClass="board_bg" hoverStartTime="0" hoverStayTime="80" wx:if="{{idx>9&&idx<=19}}" wx:for="{{keyboardNumber}}" wx:for-index="idx" wx:for-item="itemName" wx:key="{{itemName}}">
|
||||
{{itemName}}
|
||||
</view>
|
||||
</view>
|
||||
<view style="width:99%;display:flex;text-align:center;margin:0 auto">
|
||||
<view catchtap="tapKeyboard" class="td td_num" data-index="{{idx}}" data-val="{{itemName}}" hoverClass="board_bg" hoverStartTime="0" hoverStayTime="80" wx:if="{{idx>19&&idx<=29}}" wx:for="{{keyboardNumber}}" wx:for-index="idx" wx:for-item="itemName" wx:key="{{itemName}}">
|
||||
{{itemName}}
|
||||
</view>
|
||||
</view>
|
||||
<view style="width:69%;display:flex;text-align:left; margin-left:5rpx;">
|
||||
<view catchtap="tapKeyboard" class="td td_num" data-index="{{idx}}" data-val="{{itemName}}" hoverClass="board_bg" hoverStartTime="0" hoverStayTime="80" wx:if="{{idx>29&&idx<=33}}" wx:for="{{keyboardNumber}}" wx:for-index="idx" wx:for-item="itemName" wx:key="{{itemName}}">
|
||||
{{itemName}}
|
||||
</view>
|
||||
<view class="td td_num board_bg" wx:if="{{!tapNum&&idx>33}}" wx:for="{{keyboardNumber}}" wx:for-index="idx" wx:for-item="itemName" wx:key="{{itemName}}">
|
||||
{{itemName}}
|
||||
</view>
|
||||
<view catchtap="tapKeyboard" class="td td_num" data-index="{{idx}}" data-val="{{itemName}}" hoverClass="board_bg" hoverStartTime="0" hoverStayTime="80" wx:if="{{tapNum&&idx>33}}" wx:for="{{keyboardNumber}}" wx:for-index="idx" wx:for-item="itemName" wx:key="{{itemName}}">
|
||||
{{itemName}}
|
||||
</view>
|
||||
</view>
|
||||
<view bindtap="tapSpecBtn" class="del-first" data-index="0" hoverClass="del-hover" hoverStartTime="0" hoverStayTime="80">
|
||||
<text data-index="0" class="iconfont iconiconfonttuige2"></text>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
200
pages/tempParkingFee/tempParkingFee.wxss
Normal file
200
pages/tempParkingFee/tempParkingFee.wxss
Normal file
@ -0,0 +1,200 @@
|
||||
.pages{
|
||||
padding:20rpx 20rpx;
|
||||
}
|
||||
.pages .plate-context{
|
||||
background-color: #fff;
|
||||
padding: 40rpx 20rpx 80rpx 20rpx;
|
||||
}
|
||||
|
||||
.ak_row_title{
|
||||
padding-left: 20rpx;
|
||||
font-size: 32rpx;
|
||||
font-weight: 700;
|
||||
|
||||
}
|
||||
.pages_header{
|
||||
width: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
}
|
||||
.pages_header_top{
|
||||
width:33.3%;
|
||||
height: 60rpx;
|
||||
border-left: 5px solid #00AA00;
|
||||
border-right: 5px solid #00AA00;
|
||||
}
|
||||
.pages_header_btm{
|
||||
width:70%;
|
||||
background: #00AA00;
|
||||
height: 120rpx;
|
||||
line-height: 120rpx;
|
||||
text-align: center;
|
||||
color: white;
|
||||
border-radius: 10rpx;
|
||||
font-weight: normal;
|
||||
font-size: 16pt;
|
||||
}
|
||||
.tips_block{
|
||||
height: 60rpx;
|
||||
}
|
||||
.tips{
|
||||
text-align: center;
|
||||
margin: 60rpx 0;
|
||||
font-size: 12pt;
|
||||
color: #888888;
|
||||
}
|
||||
|
||||
.plate-input-flag{
|
||||
margin: 30rpx 10rpx 30rpx 0;
|
||||
color: #00AA00;
|
||||
float: right;
|
||||
}
|
||||
|
||||
.plate-input-body {
|
||||
/*border: 1px solid red;*/
|
||||
height: 100rpx;
|
||||
margin: 0 10rpx;
|
||||
}
|
||||
|
||||
.plate-input-content {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
height: 100rpx;
|
||||
}
|
||||
.plate-nums-foc{
|
||||
flex: 1;
|
||||
border: 2rpx solid #00bf70;
|
||||
margin-right: 10rpx;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
text-align: center;
|
||||
height: 100%;
|
||||
box-sizing: border-box;
|
||||
border-radius: 4rpx;
|
||||
}
|
||||
|
||||
.plate-nums-first{
|
||||
flex: 1;
|
||||
border: 2rpx solid #ccc;
|
||||
margin-right: 10rpx;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
text-align: center;
|
||||
height: 100%;
|
||||
box-sizing: border-box;
|
||||
border-radius: 4rpx;
|
||||
}
|
||||
.plate-num-text {
|
||||
flex: 1;
|
||||
line-height: 100rpx;
|
||||
height: 100%;
|
||||
box-sizing: border-box;
|
||||
border-radius: 4rpx;
|
||||
font-size: 40rpx;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
.new-plate-input-content{
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
height: 100rpx;
|
||||
}
|
||||
|
||||
.plat-btn-black{
|
||||
height: 100rpx;
|
||||
}
|
||||
|
||||
.plat-btn{
|
||||
padding-top: 80rpx;
|
||||
width: 96%;
|
||||
margin:0 auto;
|
||||
}
|
||||
|
||||
|
||||
.kb_top {
|
||||
align-content: relative;
|
||||
width: 100%;
|
||||
height: 74rpx;
|
||||
background: #fff;
|
||||
border-top: solid #ebebeb 2rpx;
|
||||
border-bottom: 15rpx solid #d7d8dc;
|
||||
}
|
||||
|
||||
.keyboard {
|
||||
z-index: 9999;
|
||||
position: fixed;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: auto;
|
||||
background: #d7d8dc;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
border-bottom: 15rpx solid #d7d8dc;
|
||||
}
|
||||
|
||||
.td {
|
||||
font-family: "微软雅黑";
|
||||
flex-grow: 1;
|
||||
text-align: center;
|
||||
font-size: 34rpx;
|
||||
height: 86rpx;
|
||||
line-height: 80rpx;
|
||||
background: #fff;
|
||||
margin: 10rpx 5rpx;
|
||||
color: #333;
|
||||
border-radius: 10rpx 10rpx 10rpx 10rpx;
|
||||
box-shadow: 0rpx 2rpx 0rpx #a9a9a9;
|
||||
}
|
||||
|
||||
.td_nor {
|
||||
flex: 1 1 6%;
|
||||
}
|
||||
|
||||
.td_num {
|
||||
flex: 1 1 8%;
|
||||
}
|
||||
|
||||
.td_spec {
|
||||
flex: 1 1 12%;
|
||||
}
|
||||
|
||||
.board_bg {
|
||||
box-shadow: 0 0 0 #e5e5e5;
|
||||
background: #e5e5e5;
|
||||
}
|
||||
|
||||
.del-first {
|
||||
position: absolute;
|
||||
bottom: 10rpx;
|
||||
right: 10rpx;
|
||||
width: 137rpx;
|
||||
height: 86rpx;
|
||||
background-color: #fff;
|
||||
box-shadow: 0rpx 2rpx 0rpx #a9a9a9;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
border-radius: 10rpx;
|
||||
}
|
||||
|
||||
.del-hover {
|
||||
position: absolute;
|
||||
bottom: 10rpx;
|
||||
right: 10rpx;
|
||||
width: 137rpx;
|
||||
height: 86rpx;
|
||||
background-color: #e5e5e5;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
border-radius: 10rpx;
|
||||
box-shadow: 0 0 0 #e5e5e5;
|
||||
}
|
||||
|
||||
.del-img {
|
||||
display: block;
|
||||
width: 46rpx;
|
||||
height: 38rpx;
|
||||
}
|
||||
137
pages/tempParkingFeePay/tempParkingFeePay.js
Normal file
137
pages/tempParkingFeePay/tempParkingFeePay.js
Normal file
@ -0,0 +1,137 @@
|
||||
// pages/tempParkingFeePay/tempParkingFeePay.js
|
||||
const context = require("../../context/Java110Context.js");
|
||||
const constant = context.constant;
|
||||
const util = context.util;
|
||||
Page({
|
||||
|
||||
/**
|
||||
* 页面的初始数据
|
||||
*/
|
||||
data: {
|
||||
communityId:'',
|
||||
communityName:'',
|
||||
inTime:'',
|
||||
nowTime:'',
|
||||
carNum:'',
|
||||
additionalAmount:'',
|
||||
squarePrice:'',
|
||||
money:0.00,
|
||||
ingTime:'',
|
||||
inoutId:''
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面加载
|
||||
*/
|
||||
onLoad: function (options) {
|
||||
console.log(options);
|
||||
let carInfo = JSON.parse(options.carInfo);
|
||||
let _ingTime = carInfo.inHours + ":" + carInfo.inMin;
|
||||
let _money = carInfo.money * 100;
|
||||
this.setData({
|
||||
communityId: carInfo.communityId,
|
||||
communityName: carInfo.communityName,
|
||||
carNum: carInfo.carNum,
|
||||
inTime:carInfo.inTime,
|
||||
inoutId:carInfo.inoutId,
|
||||
money: _money,
|
||||
ingTime: _ingTime
|
||||
});
|
||||
|
||||
this._loadTempParkingFeeConfig();
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面初次渲染完成
|
||||
*/
|
||||
onReady: function () {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面显示
|
||||
*/
|
||||
onShow: function () {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面隐藏
|
||||
*/
|
||||
onHide: function () {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面卸载
|
||||
*/
|
||||
onUnload: function () {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面相关事件处理函数--监听用户下拉动作
|
||||
*/
|
||||
onPullDownRefresh: function () {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面上拉触底事件的处理函数
|
||||
*/
|
||||
onReachBottom: function () {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 用户点击右上角分享
|
||||
*/
|
||||
onShareAppMessage: function () {
|
||||
|
||||
},
|
||||
onPayFee:function(){
|
||||
|
||||
},
|
||||
_loadTempParkingFeeConfig:function(){
|
||||
let _that = this;
|
||||
let _objData = {
|
||||
communityId: this.data.communityId,
|
||||
feeTypeCd: '888800010007'
|
||||
}
|
||||
|
||||
context.request({
|
||||
url: constant.url.queryConfigFee,
|
||||
header: context.getHeaders(),
|
||||
method: "GET",
|
||||
data: _objData, //动态数据
|
||||
success: function (res) {
|
||||
console.log("请求返回信息:", res);
|
||||
if (res.statusCode == 200) {
|
||||
//let _carInouts = res.data.carInouts;
|
||||
let tempParkingSpaceFeeConfig = res.data[0];
|
||||
|
||||
_that.setData({
|
||||
additionalAmount: tempParkingSpaceFeeConfig.additionalAmount,
|
||||
squarePrice: tempParkingSpaceFeeConfig.squarePrice
|
||||
|
||||
});
|
||||
|
||||
return ;
|
||||
}
|
||||
wx.showToast({
|
||||
title: "服务器异常了",
|
||||
icon: 'none',
|
||||
duration: 2000
|
||||
});
|
||||
},
|
||||
fail: function (e) {
|
||||
wx.showToast({
|
||||
title: "服务器异常了",
|
||||
icon: 'none',
|
||||
duration: 2000
|
||||
})
|
||||
}
|
||||
})
|
||||
|
||||
}
|
||||
})
|
||||
3
pages/tempParkingFeePay/tempParkingFeePay.json
Normal file
3
pages/tempParkingFeePay/tempParkingFeePay.json
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"navigationBarTitleText": "停车缴费"
|
||||
}
|
||||
24
pages/tempParkingFeePay/tempParkingFeePay.wxml
Normal file
24
pages/tempParkingFeePay/tempParkingFeePay.wxml
Normal file
@ -0,0 +1,24 @@
|
||||
<view>
|
||||
<view class="ppf_c">
|
||||
<view class="block__title">车辆信息</view>
|
||||
<view class="ppf_item">
|
||||
<van-cell-group>
|
||||
<van-cell title="小区" value="{{communityName}}" />
|
||||
<van-cell title="车牌号" value="{{carNum}}" />
|
||||
<van-cell title="进场时间" value="{{inTime}}" />
|
||||
<van-cell title="停车时间" value="{{ingTime}}" />
|
||||
</van-cell-group>
|
||||
</view>
|
||||
<view class="block__title">费用说明</view>
|
||||
<view class="ppf_item">
|
||||
<van-cell-group>
|
||||
<van-cell title="前两小时" value="{{additionalAmount}}元" />
|
||||
<van-cell title="每小时" value="{{squarePrice}}元"/>
|
||||
</van-cell-group>
|
||||
</view>
|
||||
</view>
|
||||
<view class="block__title">请在15分钟内离场否则重新计费</view>
|
||||
|
||||
<van-submit-bar price="{{ money }}" button-text="缴费" bind:submit="onPayFee" />
|
||||
|
||||
</view>
|
||||
16
pages/tempParkingFeePay/tempParkingFeePay.wxss
Normal file
16
pages/tempParkingFeePay/tempParkingFeePay.wxss
Normal file
@ -0,0 +1,16 @@
|
||||
|
||||
.ppf_item{
|
||||
padding: 0rpx 0rpx 0rpx 0rpx;
|
||||
}
|
||||
|
||||
.block__title {
|
||||
margin: 0;
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
color: rgba(69,90,100,.6);
|
||||
padding: 40rpx 30rpx 20rpx;
|
||||
}
|
||||
|
||||
.button_up_blank{
|
||||
height: 40rpx;
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue
Block a user