e-scooter-rental-system/server/models/User.js

20 lines
732 B
JavaScript

const mongoose = require('mongoose');
const UserSchema = new mongoose.Schema({
username: { type: String, required: true, unique: true },
password: { type: String, required: true, select: false },
phone: { type: String },
name: { type: String, required: true },
status: { type: String, enum: ['active', 'disabled'], default: 'active' },
type: { type: String, enum: ['admin', 'store', 'rider'], required: true },
storeId: { type: String } // store 类型账号关联的门店ID
}, { timestamps: true });
// 索引
UserSchema.index({ username: 1 }, { unique: true });
UserSchema.index({ phone: 1 });
UserSchema.index({ type: 1 });
UserSchema.index({ status: 1 });
module.exports = mongoose.model('User', UserSchema);