12345678910111213141516171819202122232425262728293031323334353637 |
- 'use strict';
- module.exports = app => {
- const mongoose = app.mongoose;
- const Schema = mongoose.Schema;
- const conn = app.mongooseDB.get('etlDB');
- // APP在线数据结构
- const AppOnlineUserSchema = new Schema({
- _id: { type: String }, // 主键,用户ID+年月日拼接+序号
- user_Id: { type: String }, // 用户ID
- user_name: { type: String }, // 登录账号
- user_mobileno: { type: String }, // 用户手机号
- role_id: { type: String },
- // CAR_OWNER 是车主,user是使用人,POTENTIAL是潜客(粉丝) role_id:3 其他
- login_time: { type: Number }, // 登录时间戳
- longitude: { type: Number }, // 登录位置-经度
- latitude: { type: Number }, // 登录位置-纬度
- // area_code: { type: String }, // 登录位置-地区编码- 实际数据无
- // area_name: { type: String }, // 登录位置-地区名称- 实际数据无
- provice_code: { type: String }, // 登录位置-省份编码 无用了
- provice_name: { type: String }, // 登录位置-省份名称
- city_code: { type: String }, // 登录位置-城市编码 无用了
- city_name: { type: String }, // 登录位置-城市名称
- county_code: { type: String }, // 登录位置-行政区编码 无用了
- county_name: { type: String }, // 登录位置-行政区名称
- login_mode: { type: String }, // 登录方式
- // (1:人脸、2:声纹、3:密码、4:验证码、5:二维码)
- // FACE/SOUND/PASSWORD/VERIFICATION_CODE/QR
- login_state: { type: Number }, // 登录状态 (1:成功、2:失败)
- });
- AppOnlineUserSchema.index({ login_time: -1 });
- AppOnlineUserSchema.index({ login_time: -1, login_state: -1 });
- AppOnlineUserSchema.index({ login_time: -1, login_state: -1, user_Id: -1 });
- AppOnlineUserSchema.index({ login_time: -1, login_state: -1, user_Id: -1, provice_name: -1, city_name: -1 });
- AppOnlineUserSchema.index({ login_time: -1, login_mode: -1 });
- AppOnlineUserSchema.index({ login_time: -1, role_id: -1 });
- return conn.model('AppOnlineUser', AppOnlineUserSchema, 'app_online_user');
- };
|