Skip to content

Commit

Permalink
(ajustements) : Fix des champs sélectionne lors de l'agréation dans l…
Browse files Browse the repository at this point in the history
…e single pour les personnes, org et équipement.
  • Loading branch information
mamarmite committed Sep 9, 2024
1 parent 15172ec commit 24dac3f
Show file tree
Hide file tree
Showing 4 changed files with 16 additions and 9 deletions.
7 changes: 4 additions & 3 deletions src/Equipment/Controllers/EquipmentController.ts
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,8 @@ class EquipmentController extends AbstractController {
const results:any = await aggregateService.lookupMultiple({slug: slug}, query);

//agregation inter bd don't work (that I red).
const users:mongoose.Model<any> = User.getInstance().mongooseModel;
const userAppModel:User = User.getInstance();
const users:mongoose.Model<any> = userAppModel.mongooseModel;
const taxonomies:mongoose.Model<any> = Taxonomy.getInstance().mongooseModel;
const media:mongoose.Model<any> = Media.getInstance().mongooseModel;

Expand All @@ -92,8 +93,8 @@ class EquipmentController extends AbstractController {
await media.populate(results, {path: "organisations.mainImage"});
await media.populate(results, {path: "projects.mainImage"});

await users.populate(results, {path: "meta.requestedBy", select: "name username avatar"});
await users.populate(results, {path: "meta.lastModifiedBy", select: "name username avatar"});
await users.populate(results, {path: "meta.requestedBy", select: userAppModel.publicFields()});
await users.populate(results, {path: "meta.lastModifiedBy", select: userAppModel.publicFields()});

if (results.length > 0) {
return SuccessResponse.create(
Expand Down
7 changes: 4 additions & 3 deletions src/Organisations/Controllers/OrganisationsController.ts
Original file line number Diff line number Diff line change
Expand Up @@ -190,7 +190,8 @@ class OrganisationsController extends AbstractController {
const results:any = await aggregateService.lookupMultiple({slug: slug}, query);

//aggregation inter bd don't work (that I red).
const users:mongoose.Model<any> = User.getInstance().mongooseModel;
const userAppModel:User = User.getInstance();
const users:mongoose.Model<any> = userAppModel.mongooseModel;
const taxonomies:mongoose.Model<any> = Taxonomy.getInstance().mongooseModel;
const media:mongoose.Model<any> = Media.getInstance().mongooseModel;
//const equipment:mongoose.Model<any> = Equipment.getInstance().mongooseModel;
Expand All @@ -209,8 +210,8 @@ class OrganisationsController extends AbstractController {
await media.populate(results, {path: "creatorOfEvents.mainImage"});
await media.populate(results, {path: "projectsPartner.mainImage"});

await users.populate(results, {path: "meta.requestedBy", select: "name firstName avatar"});
await users.populate(results, {path: "meta.lastModifiedBy", select: "name firstName avatar"});
await users.populate(results, {path: "meta.requestedBy", select: userAppModel.publicFields()});
await users.populate(results, {path: "meta.lastModifiedBy", select: userAppModel.publicFields()});


if (results.length > 0) {
Expand Down
7 changes: 4 additions & 3 deletions src/Persons/Controllers/PersonsController.ts
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,8 @@ class PersonsController extends AbstractController {
const results:any = await aggregateService.lookupMultiple({slug: slug}, query);

//agregation inter bd don't work (that I red).
const users:mongoose.Model<any> = User.getInstance().mongooseModel;
const userAppModel:User = User.getInstance();
const users:mongoose.Model<any> = userAppModel.mongooseModel;

//I'm doing it with populate because of the $lookup is just really fetching, and we need data to stay the same.
// All the things I found and tests where not working
Expand All @@ -103,8 +104,8 @@ class PersonsController extends AbstractController {
await media.populate(results, {path: "mainImage"});
await media.populate(results, {path: "events.mainImage"});

await users.populate(results, {path: "meta.requestedBy", select: "name username avatar"});
await users.populate(results, {path: "meta.lastModifiedBy", select: "name username avatar"});
await users.populate(results, {path: "meta.requestedBy", select: userAppModel.publicFields()});
await users.populate(results, {path: "meta.lastModifiedBy", select: userAppModel.publicFields()});

if (results.length > 0) {
return SuccessResponse.create(
Expand Down
4 changes: 4 additions & 0 deletions src/Users/Models/User.ts
Original file line number Diff line number Diff line change
Expand Up @@ -174,6 +174,10 @@ export class User extends AbstractModel {
return ["To be completed"];
}

public publicFields():string {
return "name firstName lastname avatar"
}

/**
* @public @method dataTransfertObject Format the document for the public return.
* @param document
Expand Down

0 comments on commit 24dac3f

Please sign in to comment.