Skip to content

Commit

Permalink
Made changes in schema
Browse files Browse the repository at this point in the history
  • Loading branch information
kg-kartik committed Jan 30, 2021
1 parent 1309d16 commit 6a409e1
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 23 deletions.
45 changes: 24 additions & 21 deletions src/mess/mess.utils.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import mongoose from 'mongoose';
import mongoose from "mongoose";

const { ObjectId } = mongoose.Types;

Expand All @@ -7,36 +7,39 @@ const { ObjectId } = mongoose.Types;
* @param {MessItemFilter} filter GraphQL input type MessItemFilter
*/
export const generateMongoFilterFromMessItemFilter = (filter) => {
const generatedFilter = {};
const generatedFilter = {};

/* eslint-disable no-underscore-dangle */
if (filter._id) {
generatedFilter._id = {};
if (filter._id.eq) generatedFilter._id.$eq = new ObjectId(filter._id.eq);
if (filter._id.in) {
generatedFilter._id.$in = filter._id.in;
/* eslint-disable no-underscore-dangle */
if (filter._id) {
generatedFilter._id = {};
if (filter._id.eq)
generatedFilter._id.$eq = new ObjectId(filter._id.eq);
if (filter._id.in) {
generatedFilter._id.$in = filter._id.in;
}
}
if (filter.name) generatedFilter.name = { $eq: filter.name.eq };
if (filter.mealTime) generatedFilter.mealTime = { $eq: filter.mealTime.eq };
if (filter.timestamp) {
generatedFilter.timestamp = {};
if (filter.timestamp.gte)
generatedFilter.timestamp.$gte = filter.timestamp.gte;
if (filter.timestamp.lte)
generatedFilter.timestamp.$lte = filter.timestamp.lte;
}
}
if (filter.name) generatedFilter.name = { $eq: filter.name.eq };
if (filter.mealTime) generatedFilter.mealTime = { $eq: filter.mealTime.eq };
if (filter.timestamp) {
generatedFilter.timestamp = {};
if (filter.timestamp.gte) generatedFilter.timestamp.$gte = filter.timestamp.gte;
if (filter.timestamp.lte) generatedFilter.timestamp.$lte = filter.timestamp.lte;
}

return generatedFilter;
return generatedFilter;
};

/**
* Converts input type into mongodb sort string.
* @param {MessItemOrderBy} orderBy GraphQL input type MessItemOrderBy
*/
export const generateMongoSortFromMessItemOrderBy = (orderBy) => {
const generatedSort = {};
const generatedSort = {};

const [key, val] = Object.entries(orderBy)[0];
generatedSort[key] = val;
const [key, val] = Object.entries(orderBy)[0];
generatedSort[key] = val;

return generatedSort;
return generatedSort;
};
16 changes: 14 additions & 2 deletions src/schema.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,11 @@ import { gql } from "apollo-server-express";
import { MessResolvers, MessDef } from "./mess/index.js";

//Eateries definition
import { EateriesDef, EateriesResolvers } from "./eateries/index.js";
import {
EateriesDef,
EateriesItemsDef,
EateriesResolvers,
} from "./eateries/index.js";

import FilterDef from "./filters.types.js";
import SortDef from "./sort.types.js";
Expand All @@ -20,7 +24,15 @@ const SchemaDef = gql`
`;

// All type definitions
const typeDefs = [SchemaDef, MessDef, FilterDef, SortDef, EateriesDef];
const typeDefs = [
SchemaDef,
EateriesItemsDef,
MessDef,
FilterDef,
SortDef,
EateriesDef,
];

const mergedDefs = mergeTypeDefs(typeDefs);

// All resolvers
Expand Down

0 comments on commit 6a409e1

Please sign in to comment.