modarb-be / src /modules /common /User /services /user.base.service.ts
–ƒ–Hozifaelgharbawy
user and admin models done
98d83e7
raw
history blame
1.89 kB
import { userModel, } from '../models/user.model'
export class UserBaseService {
static async find(filterObject) {
try {
const resultObject = await userModel.findOne(filterObject).lean();
if (!resultObject)
return {
success: false,
code: 404,
error: "No Matching Result Found.",
};
return {
success: true,
code: 200,
result: resultObject,
};
} catch (err) {
console.log(`err.message`, err.message);
return {
success: false,
code: 500,
error: "Unexpected Error Happened.",
};
}
}
static async get(filterObject) {
try {
const resultObject = await userModel.findOne(filterObject).lean().select("-password");
if (!resultObject)
return {
success: false,
code: 404,
error: "No Matching Result Found.",
};
return {
success: true,
code: 200,
result: resultObject,
};
} catch (err) {
console.log(`err.message`, err.message);
return {
success: false,
code: 500,
error: "Unexpected Error Happened.",
};
}
}
static async list(filterObject) {
try {
const resultArray = await userModel
.find(filterObject)
.lean()
.select("-password");
if (!resultArray)
return {
success: false,
code: 404,
error: "No Matching Result Found.",
};
const count = await userModel.countDocuments(filterObject);
return {
success: true,
code: 200,
result: resultArray,
count,
};
} catch (err) {
console.log(`err.message`, err.message);
return {
success: false,
code: 500,
error: "Unexpected Error Happened.",
};
}
}
}