1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- "use strict";
- module.exports = async (args) => {
- let request = {};
- try {
- if (args.length != 5) return "none";
- let tip = args[0],
- mon = args[1].substr(0, 2),
- hour = args[2].substr(0, 2),
- name = args[3].substr(0, 20).trim(),
- lg = args[4].substr(0, 20).trim();
- if (!name || !lg) return "none";
- if (!/^\d{1}$/.test(tip.toString())) return "none";
-
-
- let staff = await dbFind("staff", {Ulogin: lg});
- if (!staff.length) return "none";
-
-
- if (!tip) request = {$where: function() {return (
- this.l == name && (this.d.split('-')[1]) == mon
- );}}
-
-
- else {
- if (!staff[0].admin) return "none";
- if (!/^[0-9]{4}-[0-9]{2}-[0-9]{2}/.test(name)) return "none";
- request = {$where: function() {return (
- (this.d).includes(name) &&
- (this.d.split(' ')[1]).split(':')[0] == hour
- );}}
- }
-
- let resp = await dbFind("authlog", request);
- resp.sort((a, b) => (a.d <= b.d) ? 1 : -1);
- return JSON.stringify(resp);
- }
- catch(e) {return "none";}
- };
|