[英]How to disable set random order of schedule in TUI-Calendar
我正在使用Toast UI 日歷在 Laravel 項目中進行日程管理。 但我需要每天禁用隨機的日程安排。
這是generateSchedule函數
function generateSchedule(viewName, renderStart, renderEnd, check_key) {
ScheduleList = [];
realize_schedule.forEach(function(real_item){
var i = 0, length = 1;
if (viewName === 'month') {
length = 1;
} else if (viewName === 'day') {
length = 2;
}
for (i; i < length; i += 1) {
var index_calendar = real_item.roomRate_type;
if(index_calendar > 0){
index_calendar = index_calendar-1;
}
if(check_key === ""){
generateRandomSchedule(CalendarList[index_calendar], real_item, new Date(real_item.start), new Date(real_item.end));
}else{
if(check_key === real_item.roomRate_nameCode){
generateRandomSchedule(CalendarList[index_calendar], real_item, new Date(real_item.start), new Date(real_item.end));
}
}
}
})
}
這是generateRandomSchedule函數
function generateRandomSchedule(calendar, roomRate, renderStart, renderEnd) {
var schedule = new ScheduleInfo();
schedule.id = roomRate.id;
schedule.calendarId = calendar.id;
schedule.title = calendar.name;
schedule.body = roomRate.roomRate_nameCode;
schedule.isReadOnly = false;
generateTime(schedule, renderStart, renderEnd);
schedule.isPrivate = false;
schedule.location = roomRate.roomRate_value;
schedule.state =roomRate.status;
schedule.attendees=[roomRate.night_stayval];
schedule.recurrenceRule = roomRate.allotmant;
schedule.color = calendar.color;
schedule.bgColor = calendar.bgColor;
schedule.dragBgColor = calendar.dragBgColor;
schedule.borderColor = calendar.borderColor;
if (schedule.category === 'milestone') {
schedule.color = schedule.bgColor;
schedule.bgColor = 'transparent';
schedule.dragBgColor = 'transparent';
schedule.borderColor = 'transparent';
}
schedule.raw.memo = chance.sentence();
schedule.raw.creator.name = chance.name();
schedule.raw.creator.avatar = chance.avatar();
schedule.raw.creator.company = chance.company();
schedule.raw.creator.email = chance.email();
schedule.raw.creator.phone = chance.phone();
schedule.raw.creator.bug = "";
if (chance.bool({ likelihood: 20 })) {
var travelTime = chance.minute();
schedule.goingDuration = travelTime;
schedule.comingDuration = travelTime;
}
ScheduleList.push(schedule);
}
所以我想在日字段中禁用計划訂單的隨機功能。 如果有人有這方面的經驗,請幫助我。
請看這個...在這里輸入鏈接描述
您可以從該網址查看參考代碼。 如果您想禁用隨機設置時間表的順序,它可能會更改庫的某些代碼。
我認為這是不可能的,因為這些日程安排是隨機的。 所以你應該有序地使用createSchedules函數。
例如,您使用此功能一一創建計划。 我認為這是唯一的解決方案。
您應該更改gnerateRandomSchedule 的內容。 我認為最好也上傳該功能。
我認為你應該改變realize_schedule列表的子順序。 在generateSchedule 中,這個列表被有序地解釋。
realize_schedule.forEach(function(real_item){
var i = 0, length = 1;
if (viewName === 'month') {
length = 1;
} else if (viewName === 'day') {
length = 2;
}
for (i; i < length; i += 1) {
var index_calendar = real_item.roomRate_type;
if(index_calendar > 0){
index_calendar = index_calendar-1;
}
if(check_key === ""){
generateRandomSchedule(CalendarList[index_calendar], real_item, new Date(real_item.start), new Date(real_item.end));
}else{
if(check_key === real_item.roomRate_nameCode){
generateRandomSchedule(CalendarList[index_calendar], real_item, new Date(real_item.start), new Date(real_item.end));
}
}
}
})
所以這樣做。
我想了很久這個問題。 但不可能有條不紊地安排。 因為這里使用createSchedules函數來創建計划。 在調用此函數之前,日程安排是有序的。
這是代碼示例。
function setSchedules() {
cal.clear();
generateSchedule(cal.getViewName(), cal.getDateRangeStart(), cal.getDateRangeEnd(), filter_Code);
cal.createSchedules(ScheduleList);
console.log(ScheduleList);
refreshScheduleVisibility();
}
您可以使用console.log()查看 scheduleList 。 抱歉讓代碼在手。
如果您有任何問題,請告訴我。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.