Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'genotyping_results' of github.com:htgt/LIMS2-WebApp int…
…o genotyping_results
- Loading branch information
Showing
12 changed files
with
298 additions
and
130 deletions.
There are no files selected for viewing
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,56 +1,58 @@ | ||
CREATE TABLE audit.well_chromosome_fail ( | ||
|
||
CREATE TABLE audit.well_genotyping_results ( | ||
audit_op CHAR(1) NOT NULL CHECK (audit_op IN ('D','I','U')), | ||
audit_user TEXT NOT NULL, | ||
audit_stamp TIMESTAMP NOT NULL, | ||
audit_txid INTEGER NOT NULL, | ||
well_id integer, | ||
result text, | ||
genotyping_result_type_id text, | ||
call text, | ||
copy_number double precision, | ||
copy_number_range double precision, | ||
confidence double precision, | ||
created_at timestamp without time zone, | ||
created_by_id integer | ||
); | ||
GRANT SELECT ON audit.well_chromosome_fail TO [% ro_role %]; | ||
GRANT SELECT,INSERT ON audit.well_chromosome_fail TO [% rw_role %]; | ||
CREATE OR REPLACE FUNCTION public.process_well_chromosome_fail_audit() | ||
RETURNS TRIGGER AS $well_chromosome_fail_audit$ | ||
GRANT SELECT ON audit.well_genotyping_results TO [% ro_role %]; | ||
GRANT SELECT,INSERT ON audit.well_genotyping_results TO [% rw_role %]; | ||
CREATE OR REPLACE FUNCTION public.process_well_genotyping_results_audit() | ||
RETURNS TRIGGER AS $well_genotyping_results_audit$ | ||
BEGIN | ||
IF (TG_OP = 'DELETE') THEN | ||
INSERT INTO audit.well_chromosome_fail SELECT 'D', user, now(), txid_current(), OLD.*; | ||
INSERT INTO audit.well_genotyping_results SELECT 'D', user, now(), txid_current(), OLD.*; | ||
ELSIF (TG_OP = 'UPDATE') THEN | ||
INSERT INTO audit.well_chromosome_fail SELECT 'U', user, now(), txid_current(), NEW.*; | ||
INSERT INTO audit.well_genotyping_results SELECT 'U', user, now(), txid_current(), NEW.*; | ||
ELSIF (TG_OP = 'INSERT') THEN | ||
INSERT INTO audit.well_chromosome_fail SELECT 'I', user, now(), txid_current(), NEW.*; | ||
INSERT INTO audit.well_genotyping_results SELECT 'I', user, now(), txid_current(), NEW.*; | ||
END IF; | ||
RETURN NULL; | ||
END; | ||
$well_chromosome_fail_audit$ LANGUAGE plpgsql; | ||
CREATE TRIGGER well_chromosome_fail_audit | ||
AFTER INSERT OR UPDATE OR DELETE ON public.well_chromosome_fail | ||
FOR EACH ROW EXECUTE PROCEDURE public.process_well_chromosome_fail_audit(); | ||
CREATE TABLE audit.well_targeting_pass ( | ||
$well_genotyping_results_audit$ LANGUAGE plpgsql; | ||
CREATE TRIGGER well_genotyping_results_audit | ||
AFTER INSERT OR UPDATE OR DELETE ON public.well_genotyping_results | ||
FOR EACH ROW EXECUTE PROCEDURE public.process_well_genotyping_results_audit(); | ||
CREATE TABLE audit.genotyping_result_types ( | ||
audit_op CHAR(1) NOT NULL CHECK (audit_op IN ('D','I','U')), | ||
audit_user TEXT NOT NULL, | ||
audit_stamp TIMESTAMP NOT NULL, | ||
audit_txid INTEGER NOT NULL, | ||
well_id integer, | ||
result text, | ||
created_at timestamp without time zone, | ||
created_by_id integer | ||
id text | ||
); | ||
GRANT SELECT ON audit.well_targeting_pass TO [% ro_role %]; | ||
GRANT SELECT,INSERT ON audit.well_targeting_pass TO [% rw_role %]; | ||
CREATE OR REPLACE FUNCTION public.process_well_targeting_pass_audit() | ||
RETURNS TRIGGER AS $well_targeting_pass_audit$ | ||
GRANT SELECT ON audit.genotyping_result_types TO [% ro_role %]; | ||
GRANT SELECT,INSERT ON audit.genotyping_result_types TO [% rw_role %]; | ||
CREATE OR REPLACE FUNCTION public.process_genotyping_result_types_audit() | ||
RETURNS TRIGGER AS $genotyping_result_types_audit$ | ||
BEGIN | ||
IF (TG_OP = 'DELETE') THEN | ||
INSERT INTO audit.well_targeting_pass SELECT 'D', user, now(), txid_current(), OLD.*; | ||
INSERT INTO audit.genotyping_result_types SELECT 'D', user, now(), txid_current(), OLD.*; | ||
ELSIF (TG_OP = 'UPDATE') THEN | ||
INSERT INTO audit.well_targeting_pass SELECT 'U', user, now(), txid_current(), NEW.*; | ||
INSERT INTO audit.genotyping_result_types SELECT 'U', user, now(), txid_current(), NEW.*; | ||
ELSIF (TG_OP = 'INSERT') THEN | ||
INSERT INTO audit.well_targeting_pass SELECT 'I', user, now(), txid_current(), NEW.*; | ||
INSERT INTO audit.genotyping_result_types SELECT 'I', user, now(), txid_current(), NEW.*; | ||
END IF; | ||
RETURN NULL; | ||
END; | ||
$well_targeting_pass_audit$ LANGUAGE plpgsql; | ||
CREATE TRIGGER well_targeting_pass_audit | ||
AFTER INSERT OR UPDATE OR DELETE ON public.well_targeting_pass | ||
FOR EACH ROW EXECUTE PROCEDURE public.process_well_targeting_pass_audit(); | ||
$genotyping_result_types_audit$ LANGUAGE plpgsql; | ||
CREATE TRIGGER genotyping_result_types_audit | ||
AFTER INSERT OR UPDATE OR DELETE ON public.genotyping_result_types | ||
FOR EACH ROW EXECUTE PROCEDURE public.process_genotyping_result_types_audit(); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,6 @@ | ||
INSERT INTO schema_versions(version) | ||
VALUES (14); | ||
|
||
INSERT INTO genotyping_result_types(id) | ||
values ('loacrit'), ('loatam'), ('loxp'),('lacz'),('neo'),('en2-int'),('cre'),('puro'),('chry'),('chr1'),('chr8a'),('chr11b'),('bsd'); | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,20 +1,20 @@ | ||
CREATE TABLE well_targeting_pass ( | ||
well_id integer NOT NULL REFERENCES wells(id), | ||
result TEXT NOT NULL, | ||
created_at timestamp without time zone NOT NULL DEFAULT now(), | ||
created_by_id integer NOT NULL REFERENCES users(id), | ||
PRIMARY KEY(well_id) | ||
CREATE TABLE genotyping_result_types ( | ||
id TEXT NOT NULL, | ||
PRIMARY KEY(id) | ||
); | ||
GRANT SELECT ON well_targeting_pass TO "[% ro_role %]"; | ||
GRANT SELECT, INSERT, UPDATE, DELETE ON well_targeting_pass TO "[% rw_role %]"; | ||
GRANT SELECT ON genotyping_result_types TO "[% ro_role %]"; | ||
GRANT SELECT, INSERT, UPDATE, DELETE ON genotyping_result_types TO "[% rw_role %]"; | ||
|
||
CREATE TABLE well_chromosome_fail ( | ||
well_id integer NOT NULL REFERENCES wells(id), | ||
result TEXT NOT NULL, | ||
created_at timestamp without time zone NOT NULL DEFAULT now(), | ||
created_by_id integer NOT NULL REFERENCES users(id), | ||
PRIMARY KEY(well_id) | ||
CREATE TABLE well_genotyping_results ( | ||
well_id INTEGER NOT NULL REFERENCES wells(id), | ||
genotyping_result_type_id TEXT NOT NULL REFERENCES genotyping_result_types(id), | ||
call TEXT NOT NULL, | ||
copy_number FLOAT, | ||
copy_number_range FLOAT, | ||
confidence FLOAT, | ||
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, | ||
created_by_id INTEGER NOT NULL REFERENCES users(id), | ||
PRIMARY KEY(well_id, genotyping_result_type_id) | ||
); | ||
GRANT SELECT ON well_chromosome_fail TO "[% ro_role %]"; | ||
GRANT SELECT, INSERT, UPDATE, DELETE ON well_chromosome_fail TO "[% rw_role %]"; | ||
|
||
GRANT SELECT ON well_genotyping_results TO "[% ro_role %]"; | ||
GRANT SELECT, INSERT, UPDATE, DELETE ON well_genotyping_results TO "[% rw_role %]"; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
CREATE TABLE audit.well_chromosome_fail ( | ||
audit_op CHAR(1) NOT NULL CHECK (audit_op IN ('D','I','U')), | ||
audit_user TEXT NOT NULL, | ||
audit_stamp TIMESTAMP NOT NULL, | ||
audit_txid INTEGER NOT NULL, | ||
well_id integer, | ||
result text, | ||
created_at timestamp without time zone, | ||
created_by_id integer | ||
); | ||
GRANT SELECT ON audit.well_chromosome_fail TO [% ro_role %]; | ||
GRANT SELECT,INSERT ON audit.well_chromosome_fail TO [% rw_role %]; | ||
CREATE OR REPLACE FUNCTION public.process_well_chromosome_fail_audit() | ||
RETURNS TRIGGER AS $well_chromosome_fail_audit$ | ||
BEGIN | ||
IF (TG_OP = 'DELETE') THEN | ||
INSERT INTO audit.well_chromosome_fail SELECT 'D', user, now(), txid_current(), OLD.*; | ||
ELSIF (TG_OP = 'UPDATE') THEN | ||
INSERT INTO audit.well_chromosome_fail SELECT 'U', user, now(), txid_current(), NEW.*; | ||
ELSIF (TG_OP = 'INSERT') THEN | ||
INSERT INTO audit.well_chromosome_fail SELECT 'I', user, now(), txid_current(), NEW.*; | ||
END IF; | ||
RETURN NULL; | ||
END; | ||
$well_chromosome_fail_audit$ LANGUAGE plpgsql; | ||
CREATE TRIGGER well_chromosome_fail_audit | ||
AFTER INSERT OR UPDATE OR DELETE ON public.well_chromosome_fail | ||
FOR EACH ROW EXECUTE PROCEDURE public.process_well_chromosome_fail_audit(); | ||
CREATE TABLE audit.well_targeting_pass ( | ||
audit_op CHAR(1) NOT NULL CHECK (audit_op IN ('D','I','U')), | ||
audit_user TEXT NOT NULL, | ||
audit_stamp TIMESTAMP NOT NULL, | ||
audit_txid INTEGER NOT NULL, | ||
well_id integer, | ||
result text, | ||
created_at timestamp without time zone, | ||
created_by_id integer | ||
); | ||
GRANT SELECT ON audit.well_targeting_pass TO [% ro_role %]; | ||
GRANT SELECT,INSERT ON audit.well_targeting_pass TO [% rw_role %]; | ||
CREATE OR REPLACE FUNCTION public.process_well_targeting_pass_audit() | ||
RETURNS TRIGGER AS $well_targeting_pass_audit$ | ||
BEGIN | ||
IF (TG_OP = 'DELETE') THEN | ||
INSERT INTO audit.well_targeting_pass SELECT 'D', user, now(), txid_current(), OLD.*; | ||
ELSIF (TG_OP = 'UPDATE') THEN | ||
INSERT INTO audit.well_targeting_pass SELECT 'U', user, now(), txid_current(), NEW.*; | ||
ELSIF (TG_OP = 'INSERT') THEN | ||
INSERT INTO audit.well_targeting_pass SELECT 'I', user, now(), txid_current(), NEW.*; | ||
END IF; | ||
RETURN NULL; | ||
END; | ||
$well_targeting_pass_audit$ LANGUAGE plpgsql; | ||
CREATE TRIGGER well_targeting_pass_audit | ||
AFTER INSERT OR UPDATE OR DELETE ON public.well_targeting_pass | ||
FOR EACH ROW EXECUTE PROCEDURE public.process_well_targeting_pass_audit(); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
INSERT INTO schema_versions(version) | ||
VALUES (15); | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
CREATE TABLE well_targeting_pass ( | ||
well_id integer NOT NULL REFERENCES wells(id), | ||
result TEXT NOT NULL, | ||
created_at timestamp without time zone NOT NULL DEFAULT now(), | ||
created_by_id integer NOT NULL REFERENCES users(id), | ||
PRIMARY KEY(well_id) | ||
); | ||
GRANT SELECT ON well_targeting_pass TO "[% ro_role %]"; | ||
GRANT SELECT, INSERT, UPDATE, DELETE ON well_targeting_pass TO "[% rw_role %]"; | ||
|
||
CREATE TABLE well_chromosome_fail ( | ||
well_id integer NOT NULL REFERENCES wells(id), | ||
result TEXT NOT NULL, | ||
created_at timestamp without time zone NOT NULL DEFAULT now(), | ||
created_by_id integer NOT NULL REFERENCES users(id), | ||
PRIMARY KEY(well_id) | ||
); | ||
GRANT SELECT ON well_chromosome_fail TO "[% ro_role %]"; | ||
GRANT SELECT, INSERT, UPDATE, DELETE ON well_chromosome_fail TO "[% rw_role %]"; | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.