billing_location INT NOT NULL, -- library creating transaction
note TEXT
) INHERITS (money.billable_xact);
+ALTER TABLE money.grocery ADD PRIMARY KEY (id);
CREATE TABLE money.billing (
id BIGSERIAL PRIMARY KEY,
amount_collected NUMERIC(6,2) NOT NULL,
accepting_usr INT NOT NULL
) INHERITS (money.payment);
+ALTER TABLE money.bnm_payment ADD PRIMARY KEY (id);
CREATE TABLE money.forgive_payment () INHERITS (money.bnm_payment);
+ALTER TABLE money.forgive_payment ADD PRIMARY KEY (id);
CREATE INDEX money_forgive_id_idx ON money.forgive_payment (id);
CREATE INDEX money_forgive_payment_xact_idx ON money.forgive_payment (xact);
CREATE INDEX money_forgive_payment_payment_ts_idx ON money.forgive_payment (payment_ts);
CREATE INDEX money_forgive_payment_accepting_usr_idx ON money.forgive_payment (accepting_usr);
CREATE TABLE money.work_payment () INHERITS (money.bnm_payment);
+ALTER TABLE money.work_payment ADD PRIMARY KEY (id);
CREATE INDEX money_work_id_idx ON money.work_payment (id);
CREATE INDEX money_work_payment_xact_idx ON money.work_payment (xact);
CREATE INDEX money_work_payment_payment_ts_idx ON money.work_payment (payment_ts);
CREATE INDEX money_work_payment_accepting_usr_idx ON money.work_payment (accepting_usr);
CREATE TABLE money.credit_payment () INHERITS (money.bnm_payment);
+ALTER TABLE money.credit_payment ADD PRIMARY KEY (id);
CREATE INDEX money_credit_id_idx ON money.credit_payment (id);
CREATE INDEX money_credit_payment_xact_idx ON money.credit_payment (xact);
CREATE INDEX money_credit_payment_payment_ts_idx ON money.credit_payment (payment_ts);
CREATE TABLE money.bnm_desk_payment (
cash_drawer INT REFERENCES actor.workstation (id)
) INHERITS (money.bnm_payment);
+ALTER TABLE money.bnm_desk_payment ADD PRIMARY KEY (id);
CREATE OR REPLACE VIEW money.desk_payment_view AS
SELECT p.*,c.relname AS payment_type
JOIN pg_class c ON (p.tableoid = c.oid);
CREATE TABLE money.cash_payment () INHERITS (money.bnm_desk_payment);
+ALTER TABLE money.cash_payment ADD PRIMARY KEY (id);
CREATE INDEX money_cash_id_idx ON money.cash_payment (id);
CREATE INDEX money_cash_payment_xact_idx ON money.cash_payment (xact);
CREATE INDEX money_cash_payment_ts_idx ON money.cash_payment (payment_ts);
CREATE TABLE money.check_payment (
check_number TEXT NOT NULL
) INHERITS (money.bnm_desk_payment);
+ALTER TABLE money.check_payment ADD PRIMARY KEY (id);
CREATE INDEX money_check_payment_xact_idx ON money.check_payment (xact);
CREATE INDEX money_check_id_idx ON money.check_payment (id);
CREATE INDEX money_check_payment_ts_idx ON money.check_payment (payment_ts);
expire_year INT NOT NULL,
approval_code TEXT NOT NULL
) INHERITS (money.bnm_desk_payment);
+ALTER TABLE money.credit_card_payment ADD PRIMARY KEY (id);
CREATE INDEX money_credit_card_payment_xact_idx ON money.credit_card_payment (xact);
CREATE INDEX money_credit_card_id_idx ON money.credit_card_payment (id);
CREATE INDEX money_credit_card_payment_ts_idx ON money.credit_card_payment (payment_ts);
max_fine_rule TEXT NOT NULL, -- name of "max fine" rule
stop_fines TEXT CHECK (stop_fines IN ('CHECKIN','CLAIMSRETURNED','LOST','MAXFINES','RENEW','LONGOVERDUE'))
) INHERITS (money.billable_xact);
+ALTER TABLE action.circulation ADD PRIMARY KEY (id);
CREATE INDEX circ_open_xacts_idx ON action.circulation (usr) WHERE xact_finish IS NULL;
CREATE INDEX circ_outstanding_idx ON action.circulation (usr) WHERE checkin_time IS NULL;
CREATE INDEX circ_checkin_time ON "action".circulation (checkin_time) WHERE checkin_time IS NOT NULL;
CREATE TABLE action.hold_transit_copy (
hold INT REFERENCES action.hold_request (id) ON DELETE SET NULL DEFERRABLE INITIALLY DEFERRED
) INHERITS (action.transit_copy);
+ALTER TABLE action.hold_transit_copy ADD PRIMARY KEY (id);
CREATE TABLE action.unfulfilled_hold_list (
id BIGSERIAL PRIMARY KEY,