Bug 21946 - Group circulation by item type
Summary: Group circulation by item type
Status: Signed Off
Alias: None
Product: Koha
Classification: Unclassified
Component: Architecture, internals, and plumbing (show other bugs)
Version: master
Hardware: All All
: P5 - low enhancement (vote)
Assignee: Nick Clemens
QA Contact: Testopia
URL:
Keywords:
: 6685 (view as bug list)
Depends on: 22759
Blocks:
  Show dependency treegraph
 
Reported: 2018-12-04 16:58 UTC by Jesse Maseto
Modified: 2019-05-17 16:52 UTC (History)
7 users (show)

See Also:
Change sponsored?: ---
Patch complexity: Medium patch
Who signed the patch off:
Text to go in the release notes:
Version(s) released in:


Attachments
Bug 21946: Database updates (2.72 KB, patch)
2019-04-10 13:36 UTC, Nick Clemens
Details | Diff | Splinter Review
Bug 21946: SCHEMA UPDATES DO NOT PUSH (2.41 KB, patch)
2019-04-10 13:36 UTC, Nick Clemens
Details | Diff | Splinter Review
Bug 21946: Update C4::Circulation->TooMany to check parent itemtypes (21.25 KB, patch)
2019-04-10 13:36 UTC, Nick Clemens
Details | Diff | Splinter Review
Bug 21946: Update Administration->Item types to llow for defining parent types (6.14 KB, patch)
2019-04-10 13:36 UTC, Nick Clemens
Details | Diff | Splinter Review
Bug 21946: Fix display of parent types (6.59 KB, patch)
2019-04-10 13:36 UTC, Nick Clemens
Details | Diff | Splinter Review
Bug 21946: Use objects for displaying circulation rules (30.72 KB, patch)
2019-04-10 13:36 UTC, Nick Clemens
Details | Diff | Splinter Review
Bug 21946: Display parent-child relationship on smart-rules.pl (10.72 KB, patch)
2019-04-10 13:36 UTC, Nick Clemens
Details | Diff | Splinter Review
Bug 21946: (follow-up) Correct dropdown when editing rule (1.34 KB, patch)
2019-04-22 19:03 UTC, Nick Clemens
Details | Diff | Splinter Review
Bug 21946: Database updates (2.71 KB, patch)
2019-04-24 00:22 UTC, Nick Clemens
Details | Diff | Splinter Review
Bug 21946: SCHEMA UPDATES DO NOT PUSH (2.41 KB, patch)
2019-04-24 00:22 UTC, Nick Clemens
Details | Diff | Splinter Review
Bug 21946: Update C4::Circulation->TooMany to check parent itemtypes (21.30 KB, patch)
2019-04-24 00:23 UTC, Nick Clemens
Details | Diff | Splinter Review
Bug 21946: Update Administration->Item types to allow for defining parent types (6.13 KB, patch)
2019-04-24 00:23 UTC, Nick Clemens
Details | Diff | Splinter Review
Bug 21946: Fix display of parent types (6.57 KB, patch)
2019-04-24 00:23 UTC, Nick Clemens
Details | Diff | Splinter Review
Bug 21946: Use objects for displaying circulation rules (30.71 KB, patch)
2019-04-24 00:23 UTC, Nick Clemens
Details | Diff | Splinter Review
Bug 21946: Display parent-child relationship on smart-rules.pl (10.70 KB, patch)
2019-04-24 00:23 UTC, Nick Clemens
Details | Diff | Splinter Review
Bug 21946: (follow-up) Correct dropdown when editing rule (1.34 KB, patch)
2019-04-24 00:23 UTC, Nick Clemens
Details | Diff | Splinter Review
Bug 21946: Database updates (2.76 KB, patch)
2019-04-26 14:52 UTC, Liz Rea
Details | Diff | Splinter Review
Bug 21946: SCHEMA UPDATES DO NOT PUSH (2.46 KB, patch)
2019-04-26 14:53 UTC, Liz Rea
Details | Diff | Splinter Review
Bug 21946: Update C4::Circulation->TooMany to check parent itemtypes (21.36 KB, patch)
2019-04-26 14:53 UTC, Liz Rea
Details | Diff | Splinter Review
Bug 21946: Update Administration->Item types to allow for defining parent types (6.19 KB, patch)
2019-04-26 14:53 UTC, Liz Rea
Details | Diff | Splinter Review
Bug 21946: Fix display of parent types (6.63 KB, patch)
2019-04-26 14:53 UTC, Liz Rea
Details | Diff | Splinter Review
Bug 21946: Use objects for displaying circulation rules (30.76 KB, patch)
2019-04-26 14:53 UTC, Liz Rea
Details | Diff | Splinter Review
Bug 21946: Display parent-child relationship on smart-rules.pl (10.76 KB, patch)
2019-04-26 14:54 UTC, Liz Rea
Details | Diff | Splinter Review
Bug 21946: (follow-up) Correct dropdown when editing rule (1.39 KB, patch)
2019-04-26 14:54 UTC, Liz Rea
Details | Diff | Splinter Review
Bug 21946: (QA follow-up) - remove console.log (1.25 KB, patch)
2019-04-26 14:54 UTC, Liz Rea
Details | Diff | Splinter Review
Bug 21946: Database updates (2.76 KB, patch)
2019-05-01 11:02 UTC, Nick Clemens
Details | Diff | Splinter Review
Bug 21946: SCHEMA UPDATES DO NOT PUSH (2.46 KB, patch)
2019-05-01 11:02 UTC, Nick Clemens
Details | Diff | Splinter Review
Bug 21946: Update C4::Circulation->TooMany to check parent itemtypes (21.01 KB, patch)
2019-05-01 11:02 UTC, Nick Clemens
Details | Diff | Splinter Review
Bug 21946: Update Administration->Item types to allow for defining parent types (6.19 KB, patch)
2019-05-01 11:02 UTC, Nick Clemens
Details | Diff | Splinter Review
Bug 21946: Fix display of parent types (6.63 KB, patch)
2019-05-01 11:02 UTC, Nick Clemens
Details | Diff | Splinter Review
Bug 21946: Use objects for displaying circulation rules (30.76 KB, patch)
2019-05-01 11:02 UTC, Nick Clemens
Details | Diff | Splinter Review
Bug 21946: Display parent-child relationship on smart-rules.pl (10.76 KB, patch)
2019-05-01 11:02 UTC, Nick Clemens
Details | Diff | Splinter Review
Bug 21946: (follow-up) Correct dropdown when editing rule (1.39 KB, patch)
2019-05-01 11:02 UTC, Nick Clemens
Details | Diff | Splinter Review
Bug 21946: (QA follow-up) - remove console.log (1.25 KB, patch)
2019-05-01 11:02 UTC, Nick Clemens
Details | Diff | Splinter Review
Bug 21946: (follow-up) Address QA concerns (5.13 KB, patch)
2019-05-01 11:02 UTC, Nick Clemens
Details | Diff | Splinter Review

Note You need to log in before you can comment on or make changes to this bug.
Description Jesse Maseto 2018-12-04 16:58:24 UTC
Group rules based on item type in order to restrict circulation. In other words, not allow more than x items to be checked out across all media type item types (DVD, VHS, Blue Ray) and not just 4 checkouts per type.

Currently patrons can bypass the circulation rules and take out 4 DVDs and 4 VHS and still be within the system limitation but in reality have just taken out 8 media items. This development would allow for the grouping of materials in order to keep that 4 media limit across all types.


1 - Extend the itemtypes table to allow an itemtype to have a parent type
2 - When circulating an item the specific itemtype circulation rules will apply unless unset
3 - For itemtypes with a parent the parent rule will apply when child rule is unset
Comment 1 Nick Clemens 2019-04-10 13:36:27 UTC
Created attachment 87713 [details] [review]
Bug 21946: Database updates
Comment 2 Nick Clemens 2019-04-10 13:36:29 UTC
Created attachment 87714 [details] [review]
Bug 21946: SCHEMA UPDATES DO NOT PUSH
Comment 3 Nick Clemens 2019-04-10 13:36:31 UTC
Created attachment 87715 [details] [review]
Bug 21946: Update C4::Circulation->TooMany to check parent itemtypes

To test:
1 - prove -v t/db_dependent/Circulation/TooMany.t
Comment 4 Nick Clemens 2019-04-10 13:36:34 UTC
Created attachment 87716 [details] [review]
Bug 21946: Update Administration->Item types to llow for defining parent types

To test:
1 - Browse to Administration -> Item types
2 - Not a new colum for prent type
3 - Edit an existing type and not you can select any type (except the current) as a parent
4 - Select one
5 - Edit the type you selected as parent
6 - Note it cannot have a parent defined
7 - Edit a new type, note you can select a parent
Comment 5 Nick Clemens 2019-04-10 13:36:36 UTC
Created attachment 87717 [details] [review]
Bug 21946: Fix display of parent types
Comment 6 Nick Clemens 2019-04-10 13:36:39 UTC
Created attachment 87718 [details] [review]
Bug 21946: Use objects for displaying circulation rules
Comment 7 Nick Clemens 2019-04-10 13:36:41 UTC
Created attachment 87719 [details] [review]
Bug 21946: Display parent-child relationship on smart-rules.pl

To test:
 1 - Set some itemtypes to have a parent
 2 - Browse to Administration -> Circulation and fines rules
 3 - Note new description of parent/child relationships at top of page
 4 - Note that itemtype dropdown for circ rules shows child types under parents
 5 - Set a rule for a child type
 6 - Note it displays as Parent->Child
 7 - Have three child types under a parent
 8 - Set the parent 'Current checkouts allowed' to 3
 9 - Set the children 'Current checkouts allowed' to:
     type1 = 2
     type2 = 1
     type3 = 1
10 - Create some items of the type above
11 - Note you can checkout 2 of type 1, and not 3
12 - Note you can checkout 1 of type 2, but not 2
13 - Note that you now cannot checkout any of type3
14 - Note you cannot checkout any of the parent type
15 - Return one of the other items and note you can now checkout an item of type3
16 - Return another item and note you can checkout an item of the parent type
17 - Return all
18 - Set the parent type to 1
19 - Now note you can only checkout 1 of any of the children
20 - Set the parent to 0
21 - Note you cannot checkout any of the child types
Comment 8 Liz Rea 2019-04-11 16:19:51 UTC
Hi Nick,
As you probably expected, I have some comments for you. :D

On itemtypes.pl:

- Would like to see the parent code column be the parent description instead; optionally, as below, put the parent code in parens. 
- Potentially, would like to see the ability to add many children to one parent itype. A little on the fence about this. To me it is slightly more logical to go to the parent and add all of the children at once (say, a series of addable dropdowns like the advanced search page has for adding additional search terms) than it is to go to each child and define the parent. 
- As long as the parents and children are grouped (they appear to be), I think we can get away with omitting the parent in the description, for ex:

Mixed Materials | MX | (no parent, this is the parent)
-- Maps | MP | Mixed Materials (MX)
-- Music | MU | Mixed Materials (MX)
-- Visual materials | VM | Mixed Materials (MX) 

I think that's all I have at the moment. I'm going through this one quite slowly :)

Cheers,
Liz
Comment 9 Nick Clemens 2019-04-22 19:03:47 UTC
Created attachment 88392 [details] [review]
Bug 21946: (follow-up) Correct dropdown when editing rule
Comment 10 Liz Rea 2019-04-23 14:42:58 UTC
Hi Nick,

As we talked about, this mostly works except that it only restricts items per branch hierarchically. I think you know where to look so I won't try and describe it fully bceause that could be very confusing.

Cheers,
Liz
Comment 11 Nick Clemens 2019-04-24 00:22:57 UTC
Created attachment 88574 [details] [review]
Bug 21946: Database updates
Comment 12 Nick Clemens 2019-04-24 00:22:59 UTC
Created attachment 88575 [details] [review]
Bug 21946: SCHEMA UPDATES DO NOT PUSH
Comment 13 Nick Clemens 2019-04-24 00:23:02 UTC
Created attachment 88576 [details] [review]
Bug 21946: Update C4::Circulation->TooMany to check parent itemtypes

To test:
1 - prove -v t/db_dependent/Circulation/TooMany.t
Comment 14 Nick Clemens 2019-04-24 00:23:05 UTC
Created attachment 88577 [details] [review]
Bug 21946: Update Administration->Item types to allow for defining parent types

To test:
1 - Browse to Administration -> Item types
2 - Not a new colum for prent type
3 - Edit an existing type and not you can select any type (except the current) as a parent
4 - Select one
5 - Edit the type you selected as parent
6 - Note it cannot have a parent defined
7 - Edit a new type, note you can select a parent
Comment 15 Nick Clemens 2019-04-24 00:23:08 UTC
Created attachment 88578 [details] [review]
Bug 21946: Fix display of parent types
Comment 16 Nick Clemens 2019-04-24 00:23:11 UTC
Created attachment 88579 [details] [review]
Bug 21946: Use objects for displaying circulation rules
Comment 17 Nick Clemens 2019-04-24 00:23:14 UTC
Created attachment 88580 [details] [review]
Bug 21946: Display parent-child relationship on smart-rules.pl

To test:
 1 - Set some itemtypes to have a parent
 2 - Browse to Administration -> Circulation and fines rules
 3 - Note new description of parent/child relationships at top of page
 4 - Note that itemtype dropdown for circ rules shows child types under parents
 5 - Set a rule for a child type
 6 - Note it displays as Parent->Child
 7 - Have three child types under a parent
 8 - Set the parent 'Current checkouts allowed' to 3
 9 - Set the children 'Current checkouts allowed' to:
     type1 = 2
     type2 = 1
     type3 = 1
10 - Create some items of the type above
11 - Note you can checkout 2 of type 1, and not 3
12 - Note you can checkout 1 of type 2, but not 2
13 - Note that you now cannot checkout any of type3
14 - Note you cannot checkout any of the parent type
15 - Return one of the other items and note you can now checkout an item of type3
16 - Return another item and note you can checkout an item of the parent type
17 - Return all
18 - Set the parent type to 1
19 - Now note you can only checkout 1 of any of the children
20 - Set the parent to 0
21 - Note you cannot checkout any of the child types
Comment 18 Nick Clemens 2019-04-24 00:23:17 UTC
Created attachment 88581 [details] [review]
Bug 21946: (follow-up) Correct dropdown when editing rule
Comment 19 Liz Rea 2019-04-26 14:52:44 UTC
Created attachment 88926 [details] [review]
Bug 21946: Database updates

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Comment 20 Liz Rea 2019-04-26 14:53:46 UTC
Created attachment 88927 [details] [review]
Bug 21946: SCHEMA UPDATES DO NOT PUSH

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Comment 21 Liz Rea 2019-04-26 14:53:49 UTC
Created attachment 88928 [details] [review]
Bug 21946: Update C4::Circulation->TooMany to check parent itemtypes

To test:
1 - prove -v t/db_dependent/Circulation/TooMany.t

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Comment 22 Liz Rea 2019-04-26 14:53:53 UTC
Created attachment 88929 [details] [review]
Bug 21946: Update Administration->Item types to allow for defining parent types

To test:
1 - Browse to Administration -> Item types
2 - Not a new colum for prent type
3 - Edit an existing type and not you can select any type (except the current) as a parent
4 - Select one
5 - Edit the type you selected as parent
6 - Note it cannot have a parent defined
7 - Edit a new type, note you can select a parent

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Comment 23 Liz Rea 2019-04-26 14:53:56 UTC
Created attachment 88930 [details] [review]
Bug 21946: Fix display of parent types

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Comment 24 Liz Rea 2019-04-26 14:53:59 UTC
Created attachment 88931 [details] [review]
Bug 21946: Use objects for displaying circulation rules

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Comment 25 Liz Rea 2019-04-26 14:54:02 UTC
Created attachment 88932 [details] [review]
Bug 21946: Display parent-child relationship on smart-rules.pl

To test:
 1 - Set some itemtypes to have a parent
 2 - Browse to Administration -> Circulation and fines rules
 3 - Note new description of parent/child relationships at top of page
 4 - Note that itemtype dropdown for circ rules shows child types under parents
 5 - Set a rule for a child type
 6 - Note it displays as Parent->Child
 7 - Have three child types under a parent
 8 - Set the parent 'Current checkouts allowed' to 3
 9 - Set the children 'Current checkouts allowed' to:
     type1 = 2
     type2 = 1
     type3 = 1
10 - Create some items of the type above
11 - Note you can checkout 2 of type 1, and not 3
12 - Note you can checkout 1 of type 2, but not 2
13 - Note that you now cannot checkout any of type3
14 - Note you cannot checkout any of the parent type
15 - Return one of the other items and note you can now checkout an item of type3
16 - Return another item and note you can checkout an item of the parent type
17 - Return all
18 - Set the parent type to 1
19 - Now note you can only checkout 1 of any of the children
20 - Set the parent to 0
21 - Note you cannot checkout any of the child types

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Comment 26 Liz Rea 2019-04-26 14:54:05 UTC
Created attachment 88933 [details] [review]
Bug 21946: (follow-up) Correct dropdown when editing rule

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Comment 27 Liz Rea 2019-04-26 14:54:08 UTC
Created attachment 88934 [details] [review]
Bug 21946: (QA follow-up) - remove console.log

To make QA tools happy

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Comment 28 Katrin Fischer 2019-04-28 23:21:06 UTC
*** Bug 6685 has been marked as a duplicate of this bug. ***
Comment 29 Jonathan Druart 2019-04-30 19:22:35 UTC
Quick code review:

1.
+    my $child_types = Koha::ItemTypes->search( parent_type => $type );

search take a hashef!

2. 
+    $parent_maxissueqty_rule = undef if $parent_maxissueqty_rule && $parent_maxissueqty_rule->itemtype eq '*';

Is that possible? IIRC we had NULL in DB to tell "all", not "*"

3. 
+        if (C4::Context->preference('item-level_itypes')) {
+            $count_query .= q|SELECT COALESCE( SUM( IF(items.itype = '| .$type . q|',1,0) ), 0) as type_total, COUNT(*) AS total, COALESCE(SUM(onsite_checkout), 0) AS onsite_checkouts|;
+        } else{
+            $count_query .= q|SELECT COALESCE(SUM( IF(biblioitems.itype = '| .$type . q|',1,0) ), 0) as type_total, COUNT(*) AS total, COALESCE(SUM(onsite_checkout), 0) AS onsite_checkouts|
+        }

Please do not repeat, the only change is items vs biblioitems, so put it into a var then generate the query.

4.
+                while ( my $child = $children->next ){
+                    push @types, $child->itemtype;
+                }

You need $children->get_column

5.
-        <h3>Add item type</h3>
+        ]<h3>Add item type</h3>

6. The indentation fix should not be here, it will add unnecessary conflict with patches already in the queue (bug 15522 and deps for instance!). smart-rules.tt particularly

7. I am really not sure the comparisons with '*' in smart-rules.tt are correct.
Comment 30 Nick Clemens 2019-05-01 11:02:23 UTC
Created attachment 89167 [details] [review]
Bug 21946: Database updates

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Comment 31 Nick Clemens 2019-05-01 11:02:26 UTC
Created attachment 89168 [details] [review]
Bug 21946: SCHEMA UPDATES DO NOT PUSH

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Comment 32 Nick Clemens 2019-05-01 11:02:29 UTC
Created attachment 89169 [details] [review]
Bug 21946: Update C4::Circulation->TooMany to check parent itemtypes

To test:
1 - prove -v t/db_dependent/Circulation/TooMany.t

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Comment 33 Nick Clemens 2019-05-01 11:02:32 UTC
Created attachment 89170 [details] [review]
Bug 21946: Update Administration->Item types to allow for defining parent types

To test:
1 - Browse to Administration -> Item types
2 - Not a new colum for prent type
3 - Edit an existing type and not you can select any type (except the current) as a parent
4 - Select one
5 - Edit the type you selected as parent
6 - Note it cannot have a parent defined
7 - Edit a new type, note you can select a parent

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Comment 34 Nick Clemens 2019-05-01 11:02:35 UTC
Created attachment 89171 [details] [review]
Bug 21946: Fix display of parent types

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Comment 35 Nick Clemens 2019-05-01 11:02:39 UTC
Created attachment 89172 [details] [review]
Bug 21946: Use objects for displaying circulation rules

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Comment 36 Nick Clemens 2019-05-01 11:02:42 UTC
Created attachment 89173 [details] [review]
Bug 21946: Display parent-child relationship on smart-rules.pl

To test:
 1 - Set some itemtypes to have a parent
 2 - Browse to Administration -> Circulation and fines rules
 3 - Note new description of parent/child relationships at top of page
 4 - Note that itemtype dropdown for circ rules shows child types under parents
 5 - Set a rule for a child type
 6 - Note it displays as Parent->Child
 7 - Have three child types under a parent
 8 - Set the parent 'Current checkouts allowed' to 3
 9 - Set the children 'Current checkouts allowed' to:
     type1 = 2
     type2 = 1
     type3 = 1
10 - Create some items of the type above
11 - Note you can checkout 2 of type 1, and not 3
12 - Note you can checkout 1 of type 2, but not 2
13 - Note that you now cannot checkout any of type3
14 - Note you cannot checkout any of the parent type
15 - Return one of the other items and note you can now checkout an item of type3
16 - Return another item and note you can checkout an item of the parent type
17 - Return all
18 - Set the parent type to 1
19 - Now note you can only checkout 1 of any of the children
20 - Set the parent to 0
21 - Note you cannot checkout any of the child types

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Comment 37 Nick Clemens 2019-05-01 11:02:46 UTC
Created attachment 89174 [details] [review]
Bug 21946: (follow-up) Correct dropdown when editing rule

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Comment 38 Nick Clemens 2019-05-01 11:02:49 UTC
Created attachment 89175 [details] [review]
Bug 21946: (QA follow-up) - remove console.log

To make QA tools happy

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Comment 39 Nick Clemens 2019-05-01 11:02:52 UTC
Created attachment 89176 [details] [review]
Bug 21946: (follow-up) Address QA concerns

1 - Correct hashref for searching
2 - Correct undef for all (this only simplifies later logic so didn't affect outcomes)
3 - remove duplicated query
4 - Use get_column instead of loops
5 - Fix typo
6 - Whitespace fixes removed from earlier patches
Comment 40 Nick Clemens 2019-05-01 11:28:12 UTC
(In reply to Jonathan Druart from comment #29)
> 7. I am really not sure the comparisons with '*' in smart-rules.tt are
> correct.

Apologies, I don't see an issue with this, can you explain a bit more?
Comment 41 Jonathan Druart 2019-05-01 13:47:22 UTC
Forget that, I had the new version in mind (NULL in DB instead of '*').
At some point we really will need it (bug 15522) in I think, we will need to stop building stuffs that will conflict with it.
Why not implement on top of it instead?
Comment 42 Nick Clemens 2019-05-01 13:52:05 UTC
(In reply to Jonathan Druart from comment #41)
> Forget that, I had the new version in mind (NULL in DB instead of '*').
> At some point we really will need it (bug 15522) in I think, we will need to
> stop building stuffs that will conflict with it.
> Why not implement on top of it instead?

I think that will need work at this point. 

I believe the idea was to take care of the architecture, make sure it comes out as we planned without any great changes in structure during QA etc. Then work on the interface.
Comment 43 Katrin Fischer 2019-05-11 17:39:57 UTC
(In reply to Nick Clemens from comment #42)
> (In reply to Jonathan Druart from comment #41)
> > Forget that, I had the new version in mind (NULL in DB instead of '*').
> > At some point we really will need it (bug 15522) in I think, we will need to
> > stop building stuffs that will conflict with it.
> > Why not implement on top of it instead?
> 
> I think that will need work at this point. 
> 
> I believe the idea was to take care of the architecture, make sure it comes
> out as we planned without any great changes in structure during QA etc. Then
> work on the interface.

I understand Joubu's point of view. We started moving from issuingrules to circulation rules following what I think BWS has started. But at the same time we keep adding to issuingrules... that's not good. I think we need to decide which way to go, otherwise we will create conflicts and waste developer time.

The patch set is quite heavy, only have one comment so far: Could we use parent_itemtype or parent_itype instead of parent_type? I think it could get confusing fast especially if we want to introduce similar in other spots.
Comment 44 Katrin Fischer 2019-05-11 17:43:02 UTC
Hm, I realized now that while this contains quite some changes to issuingrules, it doesn't add a new column.