Fjerning av funksjonalitet for utskriftskvoter

Utskriftsløsningen PRISS skal erstattes med SafeCom. I den forbindelse må man fjerne funksjonaliteten Cerebrum har for å holde styr på utskriftskvoter og -historikk.

1   I forkant

Eksisterende positive betalkvoter for personer med en primærbruker har allerede blitt eksportert til SafeCom.

Kommunikasjonen mellom Cerebrum/bofhd og ePay har allerede blitt avviklet.

Før man fjerner kvotefunksjonaliteten bør utskriftsprosjektet avgjøre om det er mer data som må eksporteres fra Cerebrum. Prosjektet bør avgjøre om og hvor lenge tabellene som inneholder kvote- og utskriftshistorikk skal arkiveres.

2   Brukerinfo

Brukerinfo har en fane med utskriftsfunksjonalitet. Denne må fjernes før man rydder bort funksjonalitet fra Cerebrum.

3   Bofhd-modul

Etter at utskriftsfanen er fjernet fra Brukerinfo kan man fjerne følgende linje fra UiO sin config.dat:

Cerebrum.modules.no.uio.printer_quota.bofhd_pq_cmds/BofhdExtension

4   Kode i Cerebrum

Følgende filer kan slettes:

Cerebrum/modules/no/uio/printer_quota/bofhd_pq_cmds.py
Cerebrum/modules/no/uio/printer_quota/bofhd_pq_payment.py
Cerebrum/modules/no/uio/printer_quota/bofhd_pq_utils.py
Cerebrum/modules/no/uio/printer_quota/errors.py
Cerebrum/modules/no/uio/printer_quota/PaidPrinterQuotas.py
Cerebrum/modules/no/uio/printer_quota/PPQUtil.py
Cerebrum/modules/no/uio/printer_quota/__init__.py

Cerebrum/modules/no/uio/PrinterQuotas.py

contrib/no/uio/printer_quota/
contrib/no/uio/printer_quota/money2paper.py
contrib/no/uio/printer_quota/pq.py
contrib/no/uio/printer_quota/quota_stats.py
contrib/no/uio/printer_quota/quota_tools.py
contrib/no/uio/printer_quota/quota_update.py

contrib/no/uio/pq.py
contrib/no/uio/pq_update.py

Følgende filer benytter seg av eller refererer til kvotefunksjonalitet og må endres eller fjernes:

Cerebrum/modules/no/uio/PosixLDIF.py
contrib/no/uio/process_students.py
contrib/no/uio/import_from_FS.py (betalt_papir.xml)
contrib/no/uio/import_userdb_XML.py (kan fjernes)
contrib/no/uio/uio_migrate.conf.py (kan fjernes)
contrib/dns/uio_tmp_tasks.sh (kan fjernes)
contrib/no/uit/process_students.py (vedlikeholdes av UiT, fjerne?)
contrib/join_persons.py
contrib/migrate_cerebrum_database.py
servers/cis/testsuite/test_individuationservice.py
setup.py

Når dette skal settes i produksjon må man samtidig fjerne følgende fra cereconf.py:

# Betalbar utskrift
CLASS_CONSTANTS.extend([
    "Cerebrum.modules.no.uio.printer_quota.PaidPrinterQuotas/Constants",
    "Cerebrum.modules.no.uio.printer_quota.bofhd_pq_cmds/Constants"])
# Roller fra SAP/POLS (<Rolleid>) som skal gi fritak for utskriftskvote
PQUOTA_ROLLER_FRITAK = ('PCVAKT', 'GRP-LÆRER', 'ST-POL FRI', 'ST-ORG FRI',
                     'EF-FORSKER', 'EF-STIP', 'EMERITUS', 'GJ-FORSKER',
                     'REG-ANSV', 'EKST-KONS', 'SENIORFORS',
                     'POLS-ANSAT', 'ASSOSIERT', 'EKST-PART', 'SIVILARB')

Man må også fjerne følgende jobber fra scheduled_jobs.py:

FS_import_fs_pq_data
quota_calc
money2paper

For følgende jobber må man endre på parametre eller post-/pre-jobber:

FS_import_from_fs
process_students

5   Database

Etter at funksjonaliteten er fjernet og nødvendige data er eksportert og/eller arkivert, kan tabellene og sekvensene som inneholder kvotedata fjernes.

Dette gjøres ved hjelp av makedb.py:

python makedb.py --drop design/mod_printerquotas.sql design/mod_printer_quota.sql

...som da utfører følgende operasjoner:

DROP TABLE printerquotas;
DROP TABLE paid_quota_printjob;
DROP TABLE paid_quota_transaction;
DROP TABLE paid_quota_history;
DROP TABLE paid_quota_transaction_type_code;
DROP TABLE paid_quota_status;
DROP SEQUENCE printer_log_id_seq;

Når dette er gjort kan tilhørende SQL-filer fjernes fra repoet:

design/mod_printer_quota.sql
design/mod_printerquotas.sql
design/migrate_to_printer_quota_1_2.sql
Av jbr
Publisert 9. sep. 2015 13:38