openfun / richie

:pencil: An opensource CMS to build education portals
https://richie.education
MIT License
259 stars 83 forks source link

✨(frontend) add training's learner list #2282

Closed rlecellier closed 6 months ago

rlecellier commented 7 months ago

note: This feature need's some update in joanie's api, see ~linked issue in joanie~ (resolved)

Purpose

This page will list every user that purchase the product. It'll be use to contact learners and follow the training purchase status like they application file, payments, etc.

Wip preview

image

jbpenrath commented 6 months ago

The organization list should only contains organization implies in the training.

image
jbpenrath commented 6 months ago

The contact button link is set to mailto:undefined. I checked the order list payload and the owner has an email defined.

image
jbpenrath commented 6 months ago

About the contact button, I think this one should be displayed only if the order is linked to an organization has access.

jbpenrath commented 6 months ago

By default, is it possible to display all learners then allow the user to filter out learner by organization ?

rlecellier commented 6 months ago

The organization list should only contains organization implies in the training.

For this we'll need a new filter on course_product_relation_id for OrganizationViewset. Do i create the joanie's issue ?

The contact button link is set to mailto:undefined. I checked the order list payload and the owner has an email defined.

done

About the contact button, I think this one should be displayed only if the order is linked to an organization has access.

There the current access that organization's list give us.

{
  get: true,
  patch: true,
  put: true,
  delete: true,
  manage_accesses: true,
  sign_contracts: true,
}

Do we want to add a new contact_learner access ? Do i create the joanie's issus ?

By default, is it possible to display all learners then allow the user to filter out learner by organization ?

This list use the same Organization's filter component that the contract list (en maybe more in the future). Can we have this behavior everywere ou should it be an option ?

jbpenrath commented 6 months ago

The organization list should only contains organization implies in the training.

For this we'll need a new filter on course_product_relation_id for OrganizationViewset. Do i create the joanie's issue ?

We already have the course product relation organization list into the course product relation detail.

The contact button link is set to mailto:undefined. I checked the order list payload and the owner has an email defined.

done

About the contact button, I think this one should be displayed only if the order is linked to an organization has access.

There the current access that organization's list give us.

{
  get: true,
  patch: true,
  put: true,
  delete: true,
  manage_accesses: true,
  sign_contracts: true,
}

Do we want to add a new contact_learner access ? Do i create the joanie's issus ?

After some thoughts, let's display this button no matter organization or course access for now.

By default, is it possible to display all learners then allow the user to filter out learner by organization ?

This list use the same Organization's filter component that the contract list (en maybe more in the future). Can we have this behavior everywere ou should it be an option ?

It should be an option. Contract must be display per organization. Learner not.

jbpenrath commented 6 months ago

Do not forget to add Resolve #2222 in the right commit footer