hs.hsadmin/hsarback/database/database_update.sql

91 lines
3.9 KiB
MySQL
Raw Normal View History

2013-04-25 17:19:14 +02:00
-- INSERT INTO domain__domain_option
-- SELECT domain_option_id, domain_id FROM domain
-- JOIN unixuser on ( domain.domain_owner = unixuser.unixuser_id )
-- JOIN packet on ( unixuser.packet_id = packet.packet_id )
-- JOIN basepacket on ( packet.bp_id = basepacket.basepacket_id ), domain_option
2013-04-29 20:01:09 +02:00
-- WHERE basepacket.basepacket_code = 'PAC/DW'
2013-04-25 17:19:14 +02:00
-- AND domain_option.domain_option_name = 'php' ;
-- DELETE FROM domain__domain_option
-- USING domain_option, domain
-- JOIN unixuser on ( domain.domain_owner = unixuser.unixuser_id )
-- JOIN packet on ( unixuser.packet_id = packet.packet_id )
-- JOIN basepacket on ( packet.bp_id = basepacket.basepacket_id )
2013-04-29 20:01:09 +02:00
-- WHERE basepacket.basepacket_code != 'PAC/DW'
2013-04-25 17:19:14 +02:00
-- AND domain__domain_option.domain_option_id = domain_option.domain_option_id
-- AND domain_option.domain_option_name = 'php' ;
--- Updates related to HSBilling
2013-04-25 17:19:14 +02:00
UPDATE bank_account SET autodebit_ar = false WHERE autodebit_ar IS NULL;
ALTER TABLE bank_account ALTER COLUMN autodebit_ar SET NOT NULL;
2013-04-25 17:19:14 +02:00
UPDATE bank_account SET autodebit_ga = false WHERE autodebit_ga IS NULL;
ALTER TABLE bank_account ALTER COLUMN autodebit_ga SET NOT NULL;
2013-04-25 17:19:14 +02:00
UPDATE bank_account SET autodebit_op = false WHERE autodebit_op IS NULL;
ALTER TABLE bank_account ALTER COLUMN autodebit_op SET NOT NULL;
2013-04-30 12:03:19 +02:00
ALTER TABLE business_partner ADD COLUMN free boolean NOT NULL DEFAULT false;
ALTER TABLE business_partner ADD COLUMN indicator_vat character varying(20) NOT NULL DEFAULT 'GROSS';
ALTER TABLE business_partner ADD COLUMN exempt_vat boolean NOT NULL DEFAULT false;
ALTER TABLE business_partner ADD UNIQUE(bp_id);
DROP TABLE billdata CASCADE;
ALTER TABLE basepacket ADD COLUMN article_number integer NOT NULL DEFAULT 0;
2013-04-25 17:19:14 +02:00
ALTER TABLE basepacket ALTER COLUMN article_number DROP DEFAULT;
2013-04-30 12:03:19 +02:00
ALTER TABLE component ADD COLUMN article_number integer NOT NULL DEFAULT 0;
2013-04-25 17:19:14 +02:00
ALTER TABLE component ALTER COLUMN article_number DROP DEFAULT;
2013-04-30 12:03:19 +02:00
ALTER TABLE component DROP CONSTRAINT ckt_component;
ALTER TABLE component
ADD CONSTRAINT ckt_component CHECK (
(0 <= min_quantity) AND
(min_quantity <= default_quantity) AND
(default_quantity <= max_quantity) AND
(include_quantity <= default_quantity) AND
(0 <= include_quantity) AND
(mod(min_quantity, increment_quantity) = 0) AND
(mod(max_quantity, increment_quantity) = 0) AND
(mod(default_quantity, increment_quantity) = 0) AND
(mod(include_quantity, increment_quantity) = 0)
);
ALTER TABLE packet DROP COLUMN order_number;
ALTER TABLE packet DROP COLUMN webserver_group;
ALTER TABLE packet ADD COLUMN free boolean NOT NULL DEFAULT false;
ALTER TABLE domain DROP COLUMN domain_status;
ALTER TABLE domain DROP COLUMN domain_status_changed;
ALTER TABLE domain DROP COLUMN domain_filed;
ALTER TABLE domain DROP COLUMN domain_until;
ALTER TABLE domain DROP COLUMN domain_reminder;
ALTER TABLE domain DROP COLUMN domain_free;
ALTER TABLE domain DROP COLUMN domain_template;
2013-04-25 17:19:14 +02:00
CREATE TABLE price_list (
id serial PRIMARY KEY,
name varchar(20)
);
2013-04-25 17:19:14 +02:00
INSERT INTO price_list (name) VALUES ('Default Price List');
2013-04-25 17:19:14 +02:00
CREATE TABLE customer_price_list_mapping (
customer integer REFERENCES business_partner(bp_id),
price_list integer REFERENCES price_list(id),
PRIMARY KEY (customer, price_list)
);
2013-04-30 12:03:19 +02:00
INSERT INTO customer_price_list_mapping
(SELECT bp_id, (SELECT id FROM price_list WHERE name LIKE 'Default%') FROM business_partner);
2013-04-25 17:19:14 +02:00
CREATE TABLE price (
id serial PRIMARY KEY,
article_number integer NOT NULL,
price decimal(10, 2) NOT NULL,
vat decimal(4,2) NOT NULL,
price_list integer REFERENCES price_list(id)
);
2013-04-30 12:03:19 +02:00
INSERT INTO price (article_number, price, vat, price_list)
VALUES (0, 0, 0, (SELECT id FROM price_list WHERE name LIKE 'Default%'));