'use strict'; //比较日期大小 function getDataCompare(d2) { //当前时间 let d1 = new Date(); //转换为标准时间"2019/12/29 23:59:59" d2 = d2.replace(/-/g, "/"); d2 = new Date(d2); //如果当前时间大于到期时间 //valueOf() 函数返回指定对象的原始值,这里返回以毫秒数存储的时间值 return d1.valueOf() > d2.valueOf() } module.exports = { /** * 获取我的会员列表 * @url client/vip_roles/kh/getMyRoles 前端调用的url参数地址 * data 请求参数 * @param {String} params1 参数1 */ main: async (event) => { let { data = {}, userInfo, util, filterResponse, originalParam } = event; let { customUtil, uniID, config, pubFun, vk, db, _ } = util; let { uid } = data; let res = { code: 0, msg: "" }; // 业务逻辑开始----------------------------------------------------------- //获取我的所有权限 let vip_roles = userInfo.vip_role || { all: [] } //获取字典数据 let role_data = await vk.baseDao.findByWhereJson({ dbName: "dictionary-table", whereJson: { dictionary_id: "vip-roles" } }) if (!role_data.number) { res.data = [] return res } let my_role_data = [] //分割处理 my_role_data = role_data.number.split(',').map(v => { let item = v.split('|') return { value: item[1] || 'error', label: item[0] || 'error', expired_at: vip_roles[item[1]] || null } }).filter(v => vip_roles.all.includes(v.value) && (vip_roles[v.value] == 0 || !getDataCompare( vip_roles[v.value]))) res.data = my_role_data // 业务逻辑结束----------------------------------------------------------- return res; } }