123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362 |
- let Util = require("../../utils/util");
- Page({
- /**
- * 页面的初始数据
- */
- data: {
- chargStationId:'',
- chargPileName:'加载中',
- chargPileId:'',
- chargPileIdId:'',
- userId:'',
- plateNumber:'',
- chargStationName:'',
- startparams:{
- placeholder: '请选择时间',
- startDateTime: '2020-01-01 00:00',
- endDateTime: '2040-01-01 00:00',
- // pText: Util.formatTimePicker(new Date()) //'2022-04-30 00:00'
- pText: '' //'2022-04-30 00:00'
- },
- finishparams:{
- placeholder: '请选择时间',
- startDateTime: '2020-01-01 00:00',
- endDateTime: '2040-01-01 00:00',
- // pText: Util.formatTimePicker(new Date()) //'2022-04-30 00:00'
- pText: ''
- },
- },
- bindStartparamsChange(e){
- let startparams = this.data.startparams;
- let endparams = this.data.finishparams;
- startparams.pText = e.detail
- this.setData({
- startparams:startparams
- })
- let currTime = new Date(e.detail);
- console.info(currTime)
- let curTime3 = new Date(currTime);
- let estime = new Date(curTime3.setMinutes(curTime3.getMinutes() + parseInt(this.data.minReservTime)));
- let curTime4 = new Date(currTime);
- let eetime = new Date(curTime4.setMinutes(curTime4.getMinutes() + parseInt(this.data.maxReservTime)));
- if(endparams?.pText){
- let currEndTime = new Date(endparams.pText);
- if(currEndTime<=currTime){
- this.selectComponent("#end").changeDateTime('')
- // this.selectComponent("#end").initData()
- }
- }
- this.selectComponent("#end").data.startDateTime = Util.formatTimePicker(estime);
- this.selectComponent("#end").data.endDateTime = Util.formatTimePicker(eetime),
- this.selectComponent("#end").initData()
-
- },
- bindFinishparamsChange(e){
- let startparams = this.data.startparams;
- let finishparams = this.data.finishparams;
- finishparams.pText = e.detail
- this.setData({
- finishparams:finishparams
- })
- console.info("finishparams " + finishparams.pText)
- },
- /**
- * 生命周期函数--监听页面加载
- */
- onLoad(options) {
- this.initCar();
- let {
- chargStationId,
- chargPileName,
- chargPileId,
- chargPileIdId,
- userId,
- chargStationName,
- earliestReservTime,
- advanceReservDays,
- minReservTime,
- maxReservTime,
- maxEarlyExerciseTime,
- maxReservOvertime
- } = options;
-
- console.info(options);
- let curTime = new Date();
- let sstime = new Date(curTime.setMinutes(curTime.getMinutes() + parseInt(earliestReservTime)));
- let curTime2 = new Date();
- let setime = new Date(curTime2.setMinutes(curTime2.getMinutes() + (parseInt(advanceReservDays)) * 60 * 24));
- setime.setHours(23, 59, 0)
-
- let curTime3 = new Date(sstime);
- let estime = new Date(curTime3.setMinutes(curTime3.getMinutes() + parseInt(minReservTime)));
- let curTime4 = new Date(setime);
- let eetime = new Date(curTime4.setMinutes(curTime4.getMinutes() + parseInt(maxReservTime)));
- this.setData({
- chargStationId,
- chargPileName,
- chargPileId,
- chargPileIdId,
- userId,
- chargStationName,
- earliestReservTime,
- advanceReservDays,
- minReservTime,
- maxReservTime,
- maxEarlyExerciseTime,
- maxReservOvertime,
- "startparams.startDateTime":Util.formatTimePicker(sstime),
- // "startparams.pText":Util.formatTimePicker(sstime),
- "startparams.endDateTime":Util.formatTimePicker(setime),
- "finishparams.startDateTime":Util.formatTimePicker(estime),
- // "finishparams.pText":Util.formatTimePicker(estime),
- "finishparams.endDateTime":Util.formatTimePicker(eetime),
- }
- );
- },
- SubmitBtn(){
- // 预约充电站ID * 预约充电桩ID * 预约用户ID * 预约充电开始时间 * 预约充电结束时间
- let reservChargeStartTime = this.data.startparams.pText
- let reservChargeEndTime = this.data.finishparams.pText
- let reservPileId = this.data.chargPileIdId;
- let reservStationId = this.data.chargStationId;
- let sysUserId = this.data.userId;
- let plateNumber = this.data.plateNumber;
- if(!plateNumber){
- wx.showModal({
- title: '提示',
- content: '请先选择车牌',
- showCancel:false,
- confirmColor:'#00AADD',
- });
- return;
- }
- if(!reservChargeStartTime){
- wx.showModal({
- title: '提示',
- content: '请先选择预约开始充电时间',
- showCancel:false,
- confirmColor:'#00AADD',
- });
- return;
- }
- reservChargeStartTime = reservChargeStartTime + ':00'
- if(!reservChargeEndTime){
- wx.showModal({
- title: '提示',
- content: '请先选择预约结束充电时间',
- showCancel:false,
- confirmColor:'#00AADD',
- });
- return;
- }
- reservChargeEndTime = reservChargeEndTime + ':00'
- wx.requestSubscribeMessage({
- tmplIds: ['DA80dlHRpvYMfZVICp-SVFEqo6v7_7S9wPM4nndHyjE'],
- success (res) {
- wx.request({
- // url: getApp().globalData.postHeadAgreement +'/restapi/wechat/reserv2?reservChargeStartTime=' + reservChargeStartTime +
- // '&reservChargeEndTime=' + reservChargeEndTime +
- // '&reservPile.id=' + reservPileId +
- // '&reservStation.id=' + reservStationId +
- // '&sysUser.id=' + sysUserId,
- url: getApp().globalData.postHeadAgreement +'/restapi/wechat/reserv',
- data: {
- reservPlateNum:plateNumber,
- reservChargeStartTime:reservChargeStartTime,
- reservChargeEndTime:reservChargeEndTime,
- reservPile:{
- id:reservPileId
- },
- reservStation:{
- id:reservStationId
- },
- sysUser:{
- userId:sysUserId
- },
- },
- method: 'POST',
- success(res) {
- console.info(res)
- if(res?.data?.msg=="操作成功"){
- wx.showModal({
- title: '提示',
- content: '预约成功',
- showCancel:false,
- confirmColor:'#00AADD',
- complete: (res2) => {
- if (res2.cancel) {
-
- }
-
- if (res2.confirm) {
- wx.navigateBack()
- }
- }
- });
- }else{
- wx.showModal({
- title: '提示',
- content: res?.data?.msg,
- showCancel:false,
- confirmColor:'#00AADD',
- });
- }
- }
- });
- }
- })
- },
- chooseCar(){
- let url = '/pages/ucenter/car/chooseCar'
- wx.setStorageSync('chooseCar_plateNumber',{plateNumber:this.data.plateNumber})
- wx.navigateTo({
- url
- });
- },
- initCar(){
- let that = this
- let userInfo = wx.getStorageSync('userInfo');
- let isLogin = wx.getStorageSync('isLogin');
- // 读取默认车牌
- wx.request({
- url: getApp().globalData.postHeadAgreement + '/restapi/wechat/carList?loginName=' + userInfo.loginName,
- // data: {
- // loginName: userInfo.loginName
- // },
- method: 'POST',
- success: function (res) {
- let userCarList = res.data;
- userCarList = userCarList.filter(it=>it.defaultType==1);
- console.info(userCarList)
- if(userCarList.length==0 ){
- // wx.showModal({
- // title: '提示',
- // content: '当前充电站可减免停车费,是否绑定车牌信息?',
- // confirmText: '绑定车牌',
- // cancelText: '直接启动',
- // showCancel:true,
- // confirmColor:'#00AADD',
- // cancelColor:'#00AADD',
- // success: function (ress1) {
- // if(ress1.confirm){
- // let url = '/pages/ucenter/car/chooseCar'
- // wx.navigateTo({
- // url
- // });
- // }else{
- // that.beginChargeInner(that,'')
- // }
- // }
- // });
- }else{
- let userCar = userCarList[0]
- that.setData({
- plateNumber: userCar.plateNumber
- })
- // wx.showModal({
- // title: '提示',
- // content: '确定使用' + userCar.plateNumber + '车牌信息减免停车费?',
- // confirmText: '确定',
- // cancelText: '其他车牌',
- // showCancel:true,
- // confirmColor:'#00AADD',
- // cancelColor:'#00AADD',
- // success: function (ress1) {
- // if(ress1.confirm){
- // that.beginChargeInner(that,userCar.plateNumber)
- // }else{
- // let url = '/pages/ucenter/car/chooseCar'
- // wx.navigateTo({
- // url
- // });
- // }
- // return;
-
- // },
- // fail: function(res1){
- // console.info(res1)
- // }
- // });
- }
-
- },
- fail(e) {
- console.log("查询车辆失败");
- log.info('[查询车辆]','[fail]', e);
- }
- });
- },
- /**
- * 生命周期函数--监听页面初次渲染完成
- */
- onReady() {
- },
- /**
- * 生命周期函数--监听页面显示
- */
- onShow() {
- let car = wx.getStorageSync('chooseCar_plateNumber')
- console.info(car)
- let plateNumber = ''
- if(car){
- plateNumber = car.plateNumber;
- wx.removeStorageSync('chooseCar_plateNumber')
- }
- this.setData({
- plateNumber
- })
- },
- /**
- * 生命周期函数--监听页面隐藏
- */
- onHide() {
- },
- /**
- * 生命周期函数--监听页面卸载
- */
- onUnload() {
- },
- /**
- * 页面相关事件处理函数--监听用户下拉动作
- */
- onPullDownRefresh() {
- },
- /**
- * 页面上拉触底事件的处理函数
- */
- onReachBottom() {
- },
- /**
- * 用户点击右上角分享
- */
- onShareAppMessage() {
- }
- })
|