Skip to content

Commit

Permalink
unbookServises
Browse files Browse the repository at this point in the history
  • Loading branch information
pavelbrui committed Apr 18, 2024
1 parent 8c76a30 commit e3e543a
Show file tree
Hide file tree
Showing 6 changed files with 14 additions and 8 deletions.
2 changes: 1 addition & 1 deletion packages/integrations/gei-bookings/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "gei-bookings",
"version": "0.2.5",
"version": "0.2.6",
"description": "Automatically generated by graphql-editor-cli",
"main": "lib/index.js",
"scripts": {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ export const listServices = async (input: FieldResolveInput) =>
resolverFor('PublicQuery', 'listServices', async (args) =>
errMiddleware(async () => {
const po = preparePageOptions(args?.input?.page);
const inputFilters = inputServiceFiltersSet(args.input?.filters)
const inputFilters = inputServiceFiltersSet(args?.input?.filters)
return {
services: convertDateObjToStringForArray(await MongoOrb(ServicesCollection)
.collection.find({
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,23 +7,29 @@ export const respondOnServiceRequest = async (input: FieldResolveInput) =>
resolverFor('UserMutation', 'respondOnServiceRequest', async (args, src) =>
errMiddleware(async () => {
sourceContainUserIdOrThrow(src);
if (args.input?.answer === BookStatus.PENDING) {
if (args?.input?.answer === BookStatus.PENDING) {
throw new GlobalError('answer cannot be pending', import.meta.url);
}
MongoOrb('Bookings')
await MongoOrb('Bookings')
.collection.find({ _id: { $in: args.input.bookIds }, answeredAt: { $exists: false } }).toArray()
.then(async (books) => {
if (!books || books.length < 1) {
throw new GlobalError(`cannot find anyone books for id: ${ args.input.bookIds }`, import.meta.url);
}
MongoOrb('Services')
await MongoOrb('Services')
.collection.find({ _id: { $in: books.map((b)=> b.services ).flatMap(innerArray => innerArray) }, ownerId: src.userId || src._id})
.toArray().then((r) => {
if (!r || r.length < 1) {
throw new GlobalError('you can answer only on yours services', import.meta.url);
}
});
if (args?.input?.answer === BookStatus.DECLINED) {
MongoOrb('Services')
.collection.updateMany({ _id: { $in: books.map((b)=> b.services ).flatMap(innerArray => innerArray) }, ownerId: src.userId || src._id}, {$set: { taken: false} })
};
});


return MongoOrb('Bookings')
.collection.updateMany(
{ _id: { $in: args.input.bookIds} },
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ export const getBookingsForService = async (input: FieldResolveInput) =>
errMiddleware(async () => {
sourceContainUserIdOrThrow(src);
const po = preparePageOptions(args?.input?.page);
const inputFilters = inputBooksFiltersSet(args.input?.filters)
const inputFilters = inputBooksFiltersSet(args?.input?.filters)


const ownedServices = await MongoOrb('Services')
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ export const getSelfBooks = async (input: FieldResolveInput) =>
errMiddleware(async () => {
sourceContainUserIdOrThrow(src);
const po = preparePageOptions(args?.input?.page);
const inputFilters = inputBooksFiltersSet(args.input?.filters)
const inputFilters = inputBooksFiltersSet(args?.input?.filters)

return {
books: convertDateObjToStringForArray(await MongoOrb('Bookings')
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ export const getSelfServices = async (input: FieldResolveInput) =>
sourceContainUserIdOrThrow(src);
const po = preparePageOptions(args?.input?.page);

const inputFilters = inputServiceFiltersSet(args.input?.filters)
const inputFilters = inputServiceFiltersSet(args?.input?.filters)

const selfServices = await MongoOrb(ServicesCollection)
.collection.find({
Expand Down

0 comments on commit e3e543a

Please sign in to comment.