Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const logger = require('../../core/logger/app-logger').logger;
- import { UserModel, UserSchema } from "../../db/schemas/user.schema";
- export const resolveFunctions = {
- Query: {
- getUser: async (_, { username }) => {
- const where = {};
- Object.assign(where, { username });
- let user: any;
- let errMsg = undefined;
- try {
- await UserModel.find(where, (err, result: any) => {
- user = { username: result[0].username, password: result[0].password, avatar: result[0].avatar };
- });
- } catch (err) {
- errMsg = err.message;
- logger.error(err);
- }
- return user;
- }
- },
- Mutation: {
- addUser: async (_, { username, password, avatar }) => {
- const newUser = new UserModel({ username, password, avatar });
- let user: any, savedUser: any;
- let errMsg = undefined;
- try {
- user = await newUser.save();
- savedUser = { username: user.username, password: user.password, avatar: user.avatar }
- } catch (err) {
- errMsg = err.message;
- logger.error(err);
- }
- return { success: errMsg === undefined, errorMessage: errMsg, data: savedUser };
- },
- changePassword: async (_, { username, password }) => {
- const where = {};
- const updateDocument = {};
- Object.assign(where, { username });
- Object.assign(updateDocument, { password });
- let user: any, updatedUser: any;
- let errMsg = undefined;
- try {
- user = await UserModel.findOneAndUpdate(where, { $set: updateDocument }, (err, result) => {
- return result;
- });
- if (user) {
- updatedUser = { username: user.username, password: user.password };
- } else {
- errMsg = 'User does not exists in the database';
- }
- } catch (err) {
- errMsg = err.message;
- logger.error(err);
- }
- return { success: errMsg === undefined, errorMessage: errMsg, data: updatedUser };
- },
- deleteUser: async (_, { username }) => {
- const where = {};
- Object.assign(where, { username });
- let user: any, deletedUser: any;
- let errMsg = undefined;
- try {
- await UserModel.findOneAndRemove(where, (err, result: any) => {
- if (result) {
- deletedUser = { username: result.username, password: result.password };
- } else {
- errMsg = 'User does not exists in the database';
- }
- });
- } catch (err) {
- errMsg = err.message;
- logger.error(err);
- }
- return { success: errMsg === undefined, errorMessage: errMsg, data: deletedUser };
- }
- }
- }
Add Comment
Please, Sign In to add comment