-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: show submitted applications for a flow in the flow settings #2867
Conversation
- Read submission_services_summary but adds payment_status data
6343569
to
dbc4b36
Compare
🤖 Hasura Change Summary compared a subset of table metadata including permissions: Tracked Tables (1)
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Recognise this is still draft, but also know you're about to be away for a long weekend - so a few initial comments on first read through ! Nice to see test coverage and storybook additions here 👍
FROM payment_status | ||
ORDER BY session_id, created_at DESC | ||
) ps ON ps.session_id = s.session_id | ||
WHERE submitted_at IS NOT NULL; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A couple questions about this view:
- I'd expect to see GOV PAY ID, BOPS ID and Uniform IDs exposed for parity with #planx-notifications rather than a yes/no "sent_to" ("yes" maybe still makes sense for send to email, unless we show
teams.submission_email
address it was sent to?). I think councils currently have a high need for a simple lookup from Planx ID <> integrations ID, rather than needing specific application details like the payment amount exposed here if that makes sense - It feels very hard to semantically differentiate between
applications_summary
andsubmission_services_summary
- is there a reason to not simply updatesubmission_services_summary
directly to include these additional columns?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Data Exposed:
- That's a very good point regarding GOV PAY ID, BOPS ID and Uniform IDs.
- I hadn't properly parsed #planx-notifications so was just seeing what I thought were PlanX session ids 🤦
- I'll get this updated 👍
- Do we still want payment details other than the id, I think it was mentioned in the ticket but I got the wrong end of the stick?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
DB View:
- I had originally used
submission_services_summary
but as that's exposed via Metabase and in my understanding would have the potential to be more public facing I thought I better hide the extra info like payment details - I hadn't added it but I thought there might be a chance we'd add more explicit PII like email or name to this view depending on
teamEditors
would use it? - If that's not the case and the data we'd have here wouldn't be sensitive then I think it could be added to the existing view 👍
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd vote we aim for feature parity with the information in #planx-notifications which is not currently PII and would therefore let us use the same view if it makes sense format wise.
As I understand it this is meant to sort of be more a receipt of pay & send events, and it's the back office systems responsibility to display actual application details. If further requests come from POs, we could of course re-evaluate.
What I think the data we want is:
- session id
payment_requests.status
,govpay_payment_id
,created_at
(amount not necessary)bops_applications.bops_id
(maybedestination_url
to differentiate between v1 & v2 recently)uniform_applications.idox_submission_id
(submission_reference
= session id so can be omitted)email_applications.recipient
- submission timestamp for each applicable destination
That would all be considered non-PII as it's just how various identifiers link up.
There's one consideration with my proposal though that I'm not sure your original data structure accounted for: there will be many payment_requests
& bops_applications
per each session and I think we want to show each of them, not just the latest. This might make a case for a separate view or just a note to group by session_id
if able to use exisitng submission_services_summary
?
Does that help at all?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is super helpful thanks Jess!
I'll have a look into adding this to the view and I could maybe create arrays of payment_requests
and bops_applications
to maintain the expectation of one row in submission_services_summary
per session_id
🤔
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Arrays make sense if easy enough to work with on the frontend - I'd imagine GraphQL should be good for this 👍
And just to be totally clear - any pay or send destination can technically be many events to one session id because of re-submissions, but payments & BOPS are just the two that happen most often/intentionally !
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've added a PR to update the submission_services_summary
view to hopefully expose the data as discussed: #2879
editor.planx.uk/src/pages/FlowEditor/components/Settings/Submissions/ApplicationsTable.tsx
Outdated
Show resolved
Hide resolved
Thanks Jess, I really appreciate it! |
…cation data exposed - As per: #2867 (comment)
Closing as this has been reworked as per feedback and split into smaller PRs. |
No description provided.