Bugzilla – Attachment 174134 Details for
Bug 38010
Migrate vendors to Vue
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 38010: Adjust vendor update logic
Bug-38010-Adjust-vendor-update-logic.patch (text/plain), 3.02 KB, created by
Matt Blenkinsop
on 2024-11-07 11:49:00 UTC
(
hide
)
Description:
Bug 38010: Adjust vendor update logic
Filename:
MIME Type:
Creator:
Matt Blenkinsop
Created:
2024-11-07 11:49:00 UTC
Size:
3.02 KB
patch
obsolete
>From 591ebde74de38e25781b992deed2f073f387904a Mon Sep 17 00:00:00 2001 >From: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com> >Date: Mon, 30 Sep 2024 14:22:34 +0000 >Subject: [PATCH] Bug 38010: Adjust vendor update logic > >This patch handles the embedded data that might also need updating when editing a vendor >--- > Koha/REST/V1/Acquisitions/Vendors.pm | 32 ++++++++++++++++++++++------ > 1 file changed, 26 insertions(+), 6 deletions(-) > >diff --git a/Koha/REST/V1/Acquisitions/Vendors.pm b/Koha/REST/V1/Acquisitions/Vendors.pm >index 0747f5bbf43..8cd8b02dcfe 100644 >--- a/Koha/REST/V1/Acquisitions/Vendors.pm >+++ b/Koha/REST/V1/Acquisitions/Vendors.pm >@@ -87,10 +87,13 @@ Controller function that handles adding a new Koha::Acquisition::Bookseller obje > sub add { > my $c = shift->openapi->valid_input or return; > >- my $vendor = $c->req->json; >- my $contacts = delete $vendor->{contacts}; >- my $interfaces = delete $vendor->{interfaces}; >- my $aliases = delete $vendor->{aliases}; >+ my $vendor = $c->req->json; >+ my $contacts = delete $vendor->{contacts}; >+ my $interfaces = delete $vendor->{interfaces}; >+ my $aliases = delete $vendor->{aliases}; >+ my $subscriptions = delete $vendor->{subscriptions}; >+ my $baskets = delete $vendor->{baskets}; >+ my $contracts = delete $vendor->{contracts}; > > my $vendor_to_store = Koha::Acquisition::Bookseller->new_from_api( $c->req->json ); > >@@ -124,15 +127,31 @@ Controller function that handles updating a Koha::Acquisition::Bookseller object > sub update { > my $c = shift->openapi->valid_input or return; > >- my $vendor = Koha::Acquisition::Booksellers->find( $c->param('vendor_id') ); >+ my $vendor_id = $c->param('vendor_id'); >+ my $vendor = Koha::Acquisition::Booksellers->find( $vendor_id ); > > return $c->render_resource_not_found("Vendor") > unless $vendor; > > return try { >- $vendor->set_from_api( $c->req->json ); >+ my $vendor_update = $c->req->json; >+ my $contacts = delete $vendor_update->{contacts}; >+ my $interfaces = delete $vendor_update->{interfaces}; >+ my $aliases = delete $vendor_update->{aliases}; >+ my $subscriptions = delete $vendor_update->{subscriptions}; >+ my $baskets = delete $vendor_update->{baskets}; >+ my $contracts = delete $vendor_update->{contracts}; >+ >+ $vendor->set_from_api($vendor_update); > $vendor->store(); > >+ foreach my $contact (@$contacts) { >+ $contact->{booksellerid} = $vendor_id; >+ Koha::Acquisition::Bookseller::Contact->new($contact)->store; >+ } >+ $vendor->aliases($aliases) if scalar($aliases) > 0; >+ $vendor->interfaces($interfaces) if scalar($interfaces) > 0; >+ > return $c->render( > status => 200, > openapi => $c->objects->to_api($vendor), >@@ -143,6 +162,7 @@ sub update { > > } > >+ > =head3 delete > > Controller function that handles deleting a Koha::Acquisition::Bookseller object >-- >2.39.3 (Apple Git-146)
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 38010
:
174119
|
174120
|
174121
|
174122
|
174123
|
174124
|
174125
|
174126
|
174128
|
174129
|
174130
|
174131
|
174132
|
174133
|
174134
|
174135
|
174136
|
174137
|
174138
|
174139
|
174140
|
174141
|
174142
|
174143
|
174144
|
174145
|
174146
|
174147
|
174148
|
174151
|
174152
|
174153
|
174154
|
174155
|
174156
|
174157
|
174158
|
174159
|
174160
|
174161
|
174162
|
174163
|
174164
|
174165
|
174166
|
174167
|
174168
|
174169
|
174170
|
174171
|
174172
|
174173
|
174174
|
174175
|
174176
|
174177
|
174178
|
174179
|
174194
|
174196
|
174197
|
174198
|
174199
|
174200
|
174201
|
174202
|
174203
|
174204
|
174205
|
174206
|
174207
|
174208
|
174209
|
174210
|
174211
|
174212
|
174213
|
174214
|
174215
|
174216
|
174217
|
174218
|
174220
|
174221
|
174222
|
174223
|
174224
|
174225
|
174226
|
174248
|
174266
|
174267
|
174269
|
174270
|
174273
|
174327
|
174328
|
174329
|
174330
|
174331
|
174332
|
174333
|
174334
|
174335
|
174336
|
174337
|
174338
|
174339
|
174340
|
174341
|
174342
|
174343
|
174344
|
174345
|
174346
|
174347
|
174348
|
174349
|
174350
|
174351
|
174352
|
174353
|
174354
|
174355
|
174356
|
174357
|
174358
|
174359
|
174360
|
174603