import scheduleservice from '../../../service/scheduleservice' import sysSchedules from '../../../data/schedules' import moment from '../../../utils/moment.min' import util from '../../../utils/util' const app = getApp() /** * 环保日程管理 */ module.exports = Behavior({ // behaviors: [b_loadingStatus], data: { allSchedules: [], thisSchedule: {}, index: 0 }, lifetimes: { attached: function () { this.getRecentSchedule() if (app.globalData.newUser) { let today = moment().hour(0).minute(0).second(0).millisecond(0) let s = this.data.allSchedules[this.data.index + 1]; let d = s.time.diff(today, 'days') s.diffDays = d this.setData({ thisSchedule: { time: s.time.format('YYYY-MM-DD dddd'), events: s.events, diffDays: s.diffDays, steps: s.steps, category: s.category }, index: this.data.index + 1 }) } // this.getAllSchedules() } }, methods: { //查找最临近的日程 getRecentSchedule() { //1. 从接口获取用户个人、用户企业类型的相关最临近日程 //2. 按照本地逻辑,得出最邻近日程 const schedules = sysSchedules() //2.1 将台账、评估、承诺三项APP功能定义为日程 //2.2 选择最邻近的事项作为当日的提醒事项, let today = moment().hour(0).minute(0).second(0).millisecond(0) let diffDays = 999 let schedule let index = 0 for (let i = 0; i < schedules.length; i++) { let s = schedules[i]; let d = s.time.diff(today, 'days') s.diffDays = d if (Math.abs(d) < Math.abs(diffDays)) { let _index = i schedule = s diffDays = d index = _index } } //2.3 日程在时间维度上分为三类提醒,预告、当日、未完成的逾期提醒 this.setData({ allSchedules: schedules, thisSchedule: { time: schedule.time.format('YYYY-MM-DD dddd'), events: schedule.events, diffDays: schedule.diffDays, steps: schedule.steps, category: schedule.category }, index }) }, //获取所有日程 getAllSchedules() { console.log('getAllSchedules'); scheduleservice.getAllSchedules(app.globalData.accessToken.userId, { success(res) { console.log('success'); console.log(res); }, fail(e) { console.log('fail'); console.log(e); }, complete(res) { console.log('complete'); }, }) } } })