提交 a3c20306 authored 作者: zhenglide's avatar zhenglide

时间轴修改

上级 85720629
...@@ -264,7 +264,7 @@ Page({ ...@@ -264,7 +264,7 @@ Page({
}, },
dataType: 'json', dataType: 'json',
success: function(res) { success: function(res) {
console.log('success----message', res); // console.log('success----message', res);
// this.clearTime(timeList,hours,minutes,this); // this.clearTime(timeList,hours,minutes,this);
var msg = res.data.result; var msg = res.data.result;
for (var i = 0; i < msg.length; i++) { for (var i = 0; i < msg.length; i++) {
...@@ -320,7 +320,7 @@ Page({ ...@@ -320,7 +320,7 @@ Page({
var msgend = Number(msgTime[k].endTime.split(":")[0]); var msgend = Number(msgTime[k].endTime.split(":")[0]);
var msgstartmin = Number(msgTime[k].startTime.split(":")[1]) - 15; var msgstartmin = Number(msgTime[k].startTime.split(":")[1]) - 15;
var msgendmin = Number(msgTime[k].endTime.split(":")[1]); var msgendmin = Number(msgTime[k].endTime.split(":")[1]);
console.log("会议开始时间", msgstart + ":" + msgstartmin); // console.log("会议开始时间", msgstart + ":" + msgstartmin);
// console.log(msgTime[k].startTime.split(":")[0]); // console.log(msgTime[k].startTime.split(":")[0]);
if (time_range(msgstart + ":" + msgstartmin, msgTime[k].endTime, hours[i] + ":" + minutes[j])) { if (time_range(msgstart + ":" + msgstartmin, msgTime[k].endTime, hours[i] + ":" + minutes[j])) {
...@@ -332,8 +332,7 @@ Page({ ...@@ -332,8 +332,7 @@ Page({
} }
// console.log("json",json);
//console.log(this.data.time.allTime.hours[i] + this.data.time.allTime.minutes[j])
arr.push(json); arr.push(json);
...@@ -346,7 +345,7 @@ Page({ ...@@ -346,7 +345,7 @@ Page({
_this.setData({ _this.setData({
timeList timeList
}) })
console.log("timeList", timeList) //console.log("timeList", timeList)
dd.hideLoading(); dd.hideLoading();
}, },
fail: function(res) { fail: function(res) {
...@@ -450,104 +449,96 @@ clearBox:(startTime,endTime,startIndex,endIndex,timeList,_this)=>{ ...@@ -450,104 +449,96 @@ clearBox:(startTime,endTime,startIndex,endIndex,timeList,_this)=>{
var endIndex = this.data.time.endIndex; var endIndex = this.data.time.endIndex;
var timeList = this.data.timeList; var timeList = this.data.timeList;
var unclick= e.currentTarget.dataset.unclick; var unclick= e.currentTarget.dataset.unclick;
// console.log('startIndex----', startIndex);
console.log(e);
if(unclick){ if(unclick){
dd.alert({ dd.alert({
content: '该时间段不可选择', content: '该时间段不可选择',
buttonText: '我知道了', buttonText: '我知道了',
}) })
return false;
} }
if (!unclick){ if (!unclick){
if(startTime==null){ var h= e.currentTarget.dataset.hour;
if (e.currentTarget.dataset.hour<10){ var m= e.currentTarget.dataset.minute;
var hour = "0" + e.currentTarget.dataset.hour if(startTime == null){
if (e.currentTarget.dataset.minute==0){ //开始时间
startTime = hour + ":00" ; var sHour = h.toString().padStart(2,'0');
}else { var sMinute =m.toString().padStart(2,'0');
startTime = hour+ ":" + e.currentTarget.dataset.minute; startTime= `${sHour}:${sMinute}`
} var eHour = m+15 ===60 ? (h + 1).toString().padStart(2,'0'): h.toString().padStart(2,'0');
}else { var eMinute =m+15 ===60 ? '00' : (m+15).toString().padStart(2,'0');
if (e.currentTarget.dataset.minute == 0) { endTime= `${eHour}:${eMinute}`;
startTime = e.currentTarget.dataset.hour + ":00";
} else {
startTime = e.currentTarget.dataset.hour + ":" + e.currentTarget.dataset.minute;
}
}
console.log("会议开始时间"+startTime);
timeList[e.currentTarget.dataset.hourIndex][e.currentTarget.dataset.minIndex].color ="#4876FF"; timeList[e.currentTarget.dataset.hourIndex][e.currentTarget.dataset.minIndex].color ="#4876FF";
this.setData({ this.setData({
"time.startTime": startTime, "time.startTime": startTime,
"time.startIndex": [e.currentTarget.dataset.hourIndex, e.currentTarget.dataset.minIndex] "time.endTime": endTime,
,timeList}); "time.startIndex": [e.currentTarget.dataset.hourIndex, e.currentTarget.dataset.minIndex],
"time.endIndex": [e.currentTarget.dataset.hourIndex, e.currentTarget.dataset.minIndex],
timeList,
} "time.min":15
if (startTime != null && endTime == null && startIndex!=null){ });
}else {
if (startIndex[0] == e.currentTarget.dataset.hourIndex){ var hh = h.toString().padStart(2,'0');
for (var j = startIndex[1]; j <= e.currentTarget.dataset.minIndex; j++) { var ss =m.toString().padStart(2,'0');
timeList[e.currentTarget.dataset.hourIndex][j].color = "#4876FF"; var time= `${hh}:${ss}`;
} var eHour = m+15 ===60 ? (h + 1).toString().padStart(2,'0'): h.toString().padStart(2,'0');
var eMinute =m+15 ===60 ? '00' : (m+15).toString().padStart(2,'0');
var eTime= `${eHour}:${eMinute}`
if(toSecond(endTime) == toSecond(eTime) && toSecond(startTime) == toSecond(time)){
return false;
} }
if (startIndex[0] < e.currentTarget.dataset.hourIndex) { if (toSecond(startTime) > toSecond(time) ){
for (var i = startIndex[0]; i <= e.currentTarget.dataset.hourIndex; i++) { //重新设置开始时间
if (i == startIndex[0]){ startTime=time;
for (var j = startIndex[1]; j <=3; j++){ //变色
var loop = startIndex[1];
var condi =0;
for(var i= startIndex[0]; e.currentTarget.dataset.hourIndex<=i;i-- ){
for(var j= loop;j>=condi;j--){
timeList[i][j].color = "#4876FF"; timeList[i][j].color = "#4876FF";
if(i==e.currentTarget.dataset.hourIndex){
condi=e.currentTarget.dataset.minIndex;
} }
} }
if (i > startIndex[0] && i < e.currentTarget.dataset.hourIndex) { loop=3;
for (var j =0; j <= 3; j++) {
timeList[i][j].color = "#4876FF";
}
} }
if (i== e.currentTarget.dataset.hourIndex) { this.setData({
for (var j = 0; j <= e.currentTarget.dataset.minIndex; j++) { "time.startTime": startTime,
"time.startIndex": [e.currentTarget.dataset.hourIndex, e.currentTarget.dataset.minIndex],
});
}else if(toSecond(endTime) < toSecond(eTime)){
//重新设置结束时间
endTime= eTime
var loop = endIndex[1];
var condi =3
for(var i= endIndex[0]; i<=e.currentTarget.dataset.hourIndex ;i++ ){
for(var j= loop;j<=condi;j++){
// console.log(`i:${i}--------j:${j}----condi${condi}-----loop =${loop}`)
timeList[i][j].color = "#4876FF"; timeList[i][j].color = "#4876FF";
if(i==e.currentTarget.dataset.hourIndex){
condi=e.currentTarget.dataset.minIndex;
} }
} }
} loop=0;
}
if (e.currentTarget.dataset.hour < 10) {
var hour = "0" + e.currentTarget.dataset.hour
endTime = hour+ ":" + (e.currentTarget.dataset.minute + 15);
} else {
endTime = e.currentTarget.dataset.hour + ":" + (e.currentTarget.dataset.minute + 15);
} }
console.log("会议结束时间" + endTime);
var sh =Number(this.data.time.startTime.split(":")[0]);
var sm = Number (this.data.time.startTime.split(":")[1]);
var eh = Number(e.currentTarget.dataset.hour);
var em = Number(e.currentTarget.dataset.minute + 15);
var minutes=(eh*60+em) -(sh*60+sm);
var hours= minutes/60;
var maxBookTime = e.currentTarget.dataset.maxBookTime;
this.setData({ this.setData({
"time.endTime": endTime, "time.endTime": endTime,
"time.endIndex": [e.currentTarget.dataset.hourIndex, e.currentTarget.dataset.minIndex], "time.endIndex": [e.currentTarget.dataset.hourIndex, e.currentTarget.dataset.minIndex],
"time.min": minutes,
timeList,
hours,
//maxBookTime
}); });
}else if(toSecond(endTime) >= toSecond(eTime) && toSecond(startTime) <= toSecond(time)){
this.clearBox(startTime,endTime,startIndex,endIndex,timeList,this);
return false;
} }
var hours= this.data.time.min/60; var sh =Number(startTime.split(":")[0]);
var sm = Number (startTime.split(":")[1]);
var eh =Number(endTime.split(":")[0]);
var em = Number (endTime.split(":")[1]);
var minutes=(eh*60+em) -(sh*60+sm);
var hours= minutes/60;
var maxBookTime = e.currentTarget.dataset.maxBookTime; var maxBookTime = e.currentTarget.dataset.maxBookTime;
//console.log('minutes----', this.data.hours);
if(hours > maxBookTime){ if(hours > maxBookTime){
dd.alert({ dd.alert({
content: '超过最大预定时长,请重新选择', content: '超过最大预定时长,请重新选择',
...@@ -565,16 +556,18 @@ clearBox:(startTime,endTime,startIndex,endIndex,timeList,_this)=>{ ...@@ -565,16 +556,18 @@ clearBox:(startTime,endTime,startIndex,endIndex,timeList,_this)=>{
}); });
} }
if (startTime != null && endTime != null && startIndex != null && endIndex != null) { this.setData({
this.clearBox(startTime,endTime,startIndex,endIndex,timeList,this); "time.startTime": startTime,
"time.endTime": endTime,
timeList,
"time.min":minutes
});
console.log('开始时间',this.data.time.startTime);
console.log('结束时间',this.data.time.endTime)
} }
}else { }else {
return false; return false;
} }
// console.log(e.currentTarget.dataset.hour);
// console.log(e.currentTarget.dataset.minute);
// console.log(e.currentTarget.dataset.hourIndex);
// console.log(e.currentTarget.dataset.minIndex);
}, },
getSite:function(){ getSite:function(){
dd.chooseDepartments({ dd.chooseDepartments({
...@@ -949,3 +942,12 @@ function datedifference(sDate1, sDate2) { //sDate1和sDate2是2006-12-18格 ...@@ -949,3 +942,12 @@ function datedifference(sDate1, sDate2) { //sDate1和sDate2是2006-12-18格
iDays = Math.floor(dateSpan / (24 * 3600 * 1000)); iDays = Math.floor(dateSpan / (24 * 3600 * 1000));
return iDays return iDays
}; };
function toSecond(time) {
let str = time
let arr = str.split(':')
let hs = parseInt(arr[0] * 3600)
let ms = parseInt(arr[1] * 60)
let seconds = hs + ms
return seconds
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论