Files
crm.stream.graff.tech/server/src/models/User.ts
T
2024-11-02 18:01:37 +05:00

51 lines
843 B
TypeScript

import { model, Schema } from "mongoose";
const userSchema = new Schema(
{
username: {
type: String,
required: true,
unique: true,
},
password: {
type: String,
required: true,
},
resetCode: {
type: String,
},
companyId: {
type: Schema.Types.ObjectId,
ref: "Company",
required: true,
},
role: {
type: String,
required: true,
},
name: {
type: String,
required: true,
},
buildIds: {
type: [Schema.Types.ObjectId],
ref: "Build",
},
},
{
timestamps: true,
toJSON: { virtuals: true },
toObject: { virtuals: true },
}
);
userSchema.virtual("tokens", {
ref: "Token",
foreignField: "userId",
localField: "_id",
});
const User = model("User", userSchema);
export default User;