LPXXX Angular Volcopy
authorBill Erickson <berickxx@gmail.com>
Mon, 29 Jun 2020 22:11:41 +0000 (18:11 -0400)
committerBill Erickson <berickxx@gmail.com>
Mon, 29 Jun 2020 22:11:41 +0000 (18:11 -0400)
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Open-ILS/src/eg2/src/app/staff/cat/volcopy/vol-edit.component.html
Open-ILS/src/eg2/src/app/staff/cat/volcopy/vol-edit.component.ts
Open-ILS/src/eg2/src/app/staff/cat/volcopy/volcopy.component.ts

index 8aa5deb..97895ae 100644 (file)
@@ -2,7 +2,7 @@
   #confirmDelVol
   i18n-dialogTitle i18n-dialogBody
   dialogTitle="Delete Call Number?"
-  dialogBody="Delete {{deleteVolCount}} Call Number(s) and {{deleteCopyCount}} Associated Item(s)?">
+  dialogBody="Delete {{deleteVolCount}} Call Number(s) and All Associated Item(s)?">
 </eg-confirm-dialog>
 
 <eg-confirm-dialog 
index cca42f7..84afaf5 100644 (file)
@@ -454,15 +454,8 @@ export class VolEditComponent implements OnInit {
                     targetVol.isdeleted(true);
                     this.context.volsToDelete.push(targetVol);
 
-                    volNode.children.forEach(copyNode => {
-                        const copy = copyNode.target;
-                        if (copy.isnew()) {
-                            // New copies can simply be discarded.
-                        } else {
-                            copy.isdeleted(true);
-                            this.context.copiesToDelete.push(copy);
-                        }
-                    });
+                    // When deleting vols, no need to delete the linked
+                    // copies.  They'll be force deleted via the API.
                 }
 
                 if (deleteVolIdx !== null) { break; }
index d4aaf7f..46d356e 100644 (file)
@@ -331,8 +331,7 @@ export class VolCopyComponent implements OnInit {
 
         this.context.volsToDelete.forEach(vol => {
             const cloneVol = this.idl.clone(vol);
-            // If a deleted volume also has deleted copies, they will
-            // be appended below.
+            // No need to flesh copies -- they'll be force deleted.
             cloneVol.copies([]);
             volumes.push(cloneVol);
         });
@@ -345,6 +344,7 @@ export class VolCopyComponent implements OnInit {
             let vol = volumes.filter(v => v.id() === copyVol.id())[0];
 
             if (vol) {
+                console.log('Adding deleted copy to vol deleted=' + vol.isdeleted());
                 vol.copies().push(cloneCopy);
             } else {
                 vol = this.idl.clone(copyVol);
@@ -377,10 +377,15 @@ export class VolCopyComponent implements OnInit {
         let method = 'open-ils.cat.asset.volume.fleshed.batch.update';
         if (override) { method += '.override'; }
 
-        this.net.request('open-ils.cat', method, this.auth.token(), volumes, true,
-            {auto_merge_vols: true, create_parts: true, return_copy_ids: true})
+        this.net.request('open-ils.cat',
+            method, this.auth.token(), volumes, true,
+            {   auto_merge_vols: true,
+                create_parts: true,
+                return_copy_ids: true,
+                force_delete_copies: true
+            }
 
-        .toPromise().then(copyIds => {
+        ).toPromise().then(copyIds => {
 
             const evt = this.evt.parse(copyIds);