123456789101112131415161718192021222324252627282930313233343536373839 |
- const db = uniCloud.database()
- module.exports = async function ({
- data = {},
- success = true,
- type = 'login'
- } = {}) {
- const now = Date.now()
- const uniIdLogCollection = db.collection('uni-id-log')
- const requiredDataKeyList = ['user_id', 'username', 'email', 'mobile']
- const dataCopy = {}
- for (let i = 0; i < requiredDataKeyList.length; i++) {
- const key = requiredDataKeyList[i]
- if (key in data && typeof data[key] === 'string') {
- dataCopy[key] = data[key]
- }
- }
- const {
- appId,
- clientIP,
- deviceId,
- userAgent
- } = this.getClientInfo()
- const logData = {
- appid: appId,
- device_id: deviceId,
- ip: clientIP,
- type,
- ua: userAgent,
- create_date: now,
- ...dataCopy
- }
- if (success) {
- logData.state = 1
- } else {
- logData.state = 0
- }
- return uniIdLogCollection.add(logData)
- }
|