View | Details | Raw Unified | Return to bug 11897
Collapse All | Expand All

(-)a/installer/data/mysql/atomicupdate/stockrot_tables.sql (+62 lines)
Line 0 Link Here
1
-- Stock Rotation Rotas
2
3
CREATE TABLE IF NOT EXISTS stockrotationrotas (
4
    rota_id int(11) auto_increment,          -- Stockrotation rota ID
5
    title varchar(100) NOT NULL,            -- Title for this rota
6
    description text NOT NULL default '',   -- Description for this rota
7
    cyclical tinyint(1) NOT NULL default 0, -- Should items on this rota keep cycling?
8
    active tinyint(1) NOT NULL default 0,   -- Is this rota currently active?
9
    PRIMARY KEY (`rota_id`)
10
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
11
12
-- Stock Rotation Stages
13
14
CREATE TABLE IF NOT EXISTS stockrotationstages (
15
    stage_id int(11) auto_increment,     -- Unique stage ID
16
    position int(11) NOT NULL,           -- The position of this stage within its rota
17
    rota_id int(11) NOT NULL,            -- The rota this stage belongs to
18
    branchcode_id varchar(10) NOT NULL,  -- Branch this stage relates to
19
    duration int(11) NOT NULL default 4, -- The number of days items shoud occupy this stage
20
    PRIMARY KEY (`stage_id`),
21
    CONSTRAINT `stockrotationstages_rifk`
22
      FOREIGN KEY (`rota_id`)
23
      REFERENCES `stockrotationrotas` (`rota_id`)
24
      ON UPDATE CASCADE ON DELETE CASCADE,
25
    CONSTRAINT `stockrotationstages_bifk`
26
      FOREIGN KEY (`branchcode_id`)
27
      REFERENCES `branches` (`branchcode`)
28
      ON UPDATE CASCADE ON DELETE CASCADE
29
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
30
31
-- Stock Rotation Items
32
33
CREATE TABLE IF NOT EXISTS stockrotationitems (
34
    itemnumber_id int(11) NOT NULL,         -- Itemnumber to link to a stage & rota
35
    stage_id int(11) NOT NULL,              -- stage ID to link the item to
36
    indemand tinyint(1) NOT NULL default 0, -- Should this item be skipped for rotation?
37
    fresh tinyint(1) NOT NULL default 0,    -- Flag showing item is only just added to rota
38
    PRIMARY KEY (itemnumber_id),
39
    CONSTRAINT `stockrotationitems_iifk`
40
      FOREIGN KEY (`itemnumber_id`)
41
      REFERENCES `items` (`itemnumber`)
42
      ON UPDATE CASCADE ON DELETE CASCADE,
43
    CONSTRAINT `stockrotationitems_sifk`
44
      FOREIGN KEY (`stage_id`)
45
      REFERENCES `stockrotationstages` (`stage_id`)
46
      ON UPDATE CASCADE ON DELETE CASCADE
47
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
48
49
-- System preferences
50
51
INSERT IGNORE INTO systempreferences (variable,value,explanation,options,type) VALUES
52
       ('StockRotation','0','If ON, enables the stock rotation module','','YesNo'),
53
       ('RotationPreventTransfers','0','If ON, prevent any transfers for items on stock rotation rotas, except for stock rotation transfers','','YesNo');
54
55
-- Permissions
56
57
INSERT IGNORE INTO userflags (bit, flag, flagdesc, defaulton) VALUES
58
       (23, 'stockrotation', 'Manage stockrotation operations', 0);
59
60
INSERT IGNORE INTO permissions (module_bit, code, description) VALUES
61
       (23, 'can_edit_rotas', 'Create, edit and delete rotas'),
62
       (23, 'can_add_items_rotas', 'Add and remove items from rotas');
(-)a/installer/data/mysql/kohastructure.sql (+54 lines)
Lines 4143-4148 CREATE TABLE illrequests ( Link Here
4143
      ON UPDATE CASCADE ON DELETE CASCADE
4143
      ON UPDATE CASCADE ON DELETE CASCADE
4144
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
4144
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
4145
4145
4146
--
4147
-- Table structure for table `stockrotationrotas`
4148
--
4149
4150
CREATE TABLE IF NOT EXISTS stockrotationrotas (
4151
    rota_id int(11) auto_increment,          -- Stockrotation rota ID
4152
    title varchar(100) NOT NULL,            -- Title for this rota
4153
    description text NOT NULL default '',   -- Description for this rota
4154
    cyclical tinyint(1) NOT NULL default 0, -- Should items on this rota keep cycling?
4155
    active tinyint(1) NOT NULL default 0,   -- Is this rota currently active?
4156
    PRIMARY KEY (`rota_id`)
4157
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
4158
4159
--
4160
-- Table structure for table `stockrotationstages`
4161
--
4162
4163
CREATE TABLE IF NOT EXISTS stockrotationstages (
4164
    stage_id int(11) auto_increment,     -- Unique stage ID
4165
    position int(11) NOT NULL,           -- The position of this stage within its rota
4166
    rota_id int(11) NOT NULL,            -- The rota this stage belongs to
4167
    branchcode_id varchar(10) NOT NULL,  -- Branch this stage relates to
4168
    duration int(11) NOT NULL default 4, -- The number of days items shoud occupy this stage
4169
    PRIMARY KEY (`stage_id`),
4170
    CONSTRAINT `stockrotationstages_rifk`
4171
      FOREIGN KEY (`rota_id`)
4172
      REFERENCES `stockrotationrotas` (`rota_id`)
4173
      ON UPDATE CASCADE ON DELETE CASCADE,
4174
    CONSTRAINT `stockrotationstages_bifk`
4175
      FOREIGN KEY (`branchcode_id`)
4176
      REFERENCES `branches` (`branchcode`)
4177
      ON UPDATE CASCADE ON DELETE CASCADE
4178
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
4179
4146
--
4180
--
4147
-- Table structure for table `illrequestattributes`
4181
-- Table structure for table `illrequestattributes`
4148
--
4182
--
Lines 4193-4198 CREATE TABLE `oauth_access_tokens` ( Link Here
4193
    PRIMARY KEY (`access_token`)
4227
    PRIMARY KEY (`access_token`)
4194
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
4228
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
4195
4229
4230
--
4231
-- Table structure for table `stockrotationitems`
4232
--
4233
4234
CREATE TABLE IF NOT EXISTS stockrotationitems (
4235
    itemnumber_id int(11) NOT NULL,         -- Itemnumber to link to a stage & rota
4236
    stage_id int(11) NOT NULL,              -- stage ID to link the item to
4237
    indemand tinyint(1) NOT NULL default 0, -- Should this item be skipped for rotation?
4238
    fresh tinyint(1) NOT NULL default 0,    -- Flag showing item is only just added to rota
4239
    PRIMARY KEY (itemnumber_id),
4240
    CONSTRAINT `stockrotationitems_iifk`
4241
      FOREIGN KEY (`itemnumber_id`)
4242
      REFERENCES `items` (`itemnumber`)
4243
      ON UPDATE CASCADE ON DELETE CASCADE,
4244
    CONSTRAINT `stockrotationitems_sifk`
4245
      FOREIGN KEY (`stage_id`)
4246
      REFERENCES `stockrotationstages` (`stage_id`)
4247
      ON UPDATE CASCADE ON DELETE CASCADE
4248
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
4249
4196
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
4250
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
4197
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
4251
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
4198
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
4252
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
(-)a/installer/data/mysql/sysprefs.sql (-1 / +3 lines)
Lines 616-620 INSERT INTO systempreferences ( `variable`, `value`, `options`, `explanation`, ` Link Here
616
('XSLTListsDisplay','default','','Enable XSLT stylesheet control over lists pages display on intranet','Free'),
616
('XSLTListsDisplay','default','','Enable XSLT stylesheet control over lists pages display on intranet','Free'),
617
('XSLTResultsDisplay','default','','Enable XSL stylesheet control over results page display on intranet','Free'),
617
('XSLTResultsDisplay','default','','Enable XSL stylesheet control over results page display on intranet','Free'),
618
('z3950AuthorAuthFields','701,702,700',NULL,'Define the MARC biblio fields for Personal Name Authorities to fill biblio.author','free'),
618
('z3950AuthorAuthFields','701,702,700',NULL,'Define the MARC biblio fields for Personal Name Authorities to fill biblio.author','free'),
619
('z3950NormalizeAuthor','0','','If ON, Personal Name Authorities will replace authors in biblio.author','YesNo')
619
('z3950NormalizeAuthor','0','','If ON, Personal Name Authorities will replace authors in biblio.author','YesNo'),
620
('StockRotation','0',NULL,'If ON, enables the stock rotation module','YesNo'),
621
('RotationPreventTransfers','0',NULL,'If ON, prevent any transfers for items on stock rotation rotas, except for stock rotation transfers','YesNo')
620
;
622
;
(-)a/installer/data/mysql/userflags.sql (+1 lines)
Lines 20-23 INSERT INTO userflags (bit, flag, flagdesc, defaulton) VALUES Link Here
20
(21, 'clubs', 'Patron clubs', '0'),
20
(21, 'clubs', 'Patron clubs', '0'),
21
(22,'ill','The Interlibrary Loans Module',0),
21
(22,'ill','The Interlibrary Loans Module',0),
22
(23,'self_check','Self check modules',0)
22
(23,'self_check','Self check modules',0)
23
(24, 'stockrotation', 'Manage stockrotation operations', 0)
23
;
24
;
(-)a/installer/data/mysql/userpermissions.sql (+2 lines)
Lines 86-89 INSERT INTO permissions (module_bit, code, description) VALUES Link Here
86
   (21, 'enroll', 'Enroll patrons in clubs'),
86
   (21, 'enroll', 'Enroll patrons in clubs'),
87
   (23, 'self_checkin_module', 'Log into the self check-in module'),
87
   (23, 'self_checkin_module', 'Log into the self check-in module'),
88
   (23, 'self_checkout_module', 'Perform self checkout at the OPAC. It should be used for the patron matching the AutoSelfCheckID')
88
   (23, 'self_checkout_module', 'Perform self checkout at the OPAC. It should be used for the patron matching the AutoSelfCheckID')
89
   (24, 'can_edit_rotas', 'Create, edit and delete rotas'),
90
   (24, 'can_add_items_rotas', 'Add and remove items from rotas')
89
;
91
;
(-)a/koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc (+4 lines)
Lines 21-26 Link Here
21
    [%- CASE 'clubs' -%]<span>Patron clubs</span>
21
    [%- CASE 'clubs' -%]<span>Patron clubs</span>
22
    [%- CASE 'ill' -%]<span>Create and modify Interlibrary loan requests</span>
22
    [%- CASE 'ill' -%]<span>Create and modify Interlibrary loan requests</span>
23
    [%- CASE 'self_check' -%]<span>Self check modules</span>
23
    [%- CASE 'self_check' -%]<span>Self check modules</span>
24
    [%- CASE 'stockrotation' -%]<span>Manage stockrotation operations</span>
24
    [%- END -%]
25
    [%- END -%]
25
[%- END -%]
26
[%- END -%]
26
27
Lines 115-118 Link Here
115
    [%- CASE 'self_checkin_module' -%]<span>Log into the self check-in module. Note: this permission prevents the patron from using any other OPAC functionality</span>
116
    [%- CASE 'self_checkin_module' -%]<span>Log into the self check-in module. Note: this permission prevents the patron from using any other OPAC functionality</span>
116
    [%- CASE 'self_checkout_module' -%]<span>Perform self checkout at the OPAC. It should be used for the patron matching the AutoSelfCheckID</span>
117
    [%- CASE 'self_checkout_module' -%]<span>Perform self checkout at the OPAC. It should be used for the patron matching the AutoSelfCheckID</span>
117
  [%- END -%]
118
  [%- END -%]
119
    [%- CASE 'can_add_items_rotas' -%]<span>Add and remove items from rotas</span>
120
    [%- CASE 'can_edit_rotas' -%]<span>Create, edit and delete rotas</span>
121
    [%- END -%]
118
[%- END -%]
122
[%- END -%]
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/circulation.pref (-1 / +13 lines)
Lines 918-923 Circulation: Link Here
918
                  yes: Enable
918
                  yes: Enable
919
                  no: Disable
919
                  no: Disable
920
            - "housebound module"
920
            - "housebound module"
921
    Stockrotation module:
922
        -
923
            - pref: StockRotation
924
              choices:
925
                  yes: Enable
926
                  no: Disable
927
            - "the stock rotation module"
928
        -
929
            - pref: RotationPreventTransfers
930
              choices:
931
                  yes: Disallow
932
                  no: Allow
933
            - "library transfers on items in stockrotation rotas"
921
    Article Requests:
934
    Article Requests:
922
        -
935
        -
923
            - pref: ArticleRequests
936
            - pref: ArticleRequests
924
- 

Return to bug 11897