Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const userSchema = new Schema({
- userName: { type: String, unique: true, required: true },
- hashPassword: { type: String, required: true },
- firstName: { type: String, required: true },
- lastName: { type: String, required: true },
- userAge: { type: Number, required: true },
- userDetails: { type: String, required: true },
- userCreatedOn: { type: Date, default: Date.now }
- });
- const taskSchema = new Schema({
- //Below is userAssigned which is ref for above User document.
- userAssigned: { type: Schema.Types.ObjectId, ref: User},
- taskDesc: { type: String, required: true },
- taskCreatedOn: { type: Date, default: Date.now },
- taskDueDate: { type: Date, required: true }
- });
- async function getAllUserTasks(userParam) {
- return await Task.find({ userAssigned: userParam.userId })
- .lean()
- .sort({ taskDueDate: "asc" });
- }
- async function createTask(userParam) {
- if (await User.findOne({ _id: userParam.userAssigned })) {
- const task = new Task(userParam);
- await task.save();
- } else {
- throw "User does not exist";
- }
- }
- async function updateTask(id, userParam) {
- return await Task.findOneAndUpdate(
- { _id: id },
- userParam,
- {
- new: true,
- overwrite: true
- },
- function(err) {
- if (err) return err;
- }
- );
- }
- async function deleteUserTask(id) {
- return await Task.findByIdAndRemove(id, function(err) {
- if (err) {
- return err;
- }
- });
- }
Add Comment
Please, Sign In to add comment