improved the issue show view to manipulate attached files
This commit is contained in:
		| @ -103,14 +103,17 @@ CREATE TABLE "cpot_issue" ( | ||||
| CREATE INDEX cpot_issue_index_1 ON "cpot_issue"("projectid", "status", "type", "summary"); | ||||
| CREATE INDEX cpot_issue_index_2 ON "cpot_issue"("projectid", "summary"); | ||||
|  | ||||
| CREATE TABLE "cpot_issue_attachment" ( | ||||
| 	"projectid"  VARCHAR(32)   NOT NULL, | ||||
| 	"issueid"    NUMBER(20,0)  NOT NULL, | ||||
| 	"name"       VARCHAR(255)  NOT NULL, | ||||
| 	"encname"    VARCHAR(255)  NOT NULL, | ||||
| 	"createdon"  TIMESTAMP     NOT NULL, | ||||
| 	"createdby"  VARCHAR(32)   NOT NULL, | ||||
| 	UNIQUE ("projectid", "issueid", "name"), | ||||
| CREATE TABLE "cpot_issue_file_list" ( | ||||
| 	"projectid"   VARCHAR(32)   NOT NULL, | ||||
| 	"issueid"     NUMBER(20,0)  NOT NULL, | ||||
| 	"filename"    VARCHAR(255)  NOT NULL, | ||||
| 	"encname"     VARCHAR(255)  NOT NULL, | ||||
| 	"md5sum"      CHAR(32)      NOT NULL, | ||||
| 	"description" CLOB          NOT NULL, | ||||
| 	"createdon"   TIMESTAMP     NOT NULL, | ||||
| 	"createdby"   VARCHAR(32)   NOT NULL, | ||||
| 	UNIQUE ("projectid", "issueid", "filename"), | ||||
| 	UNIQUE ("encname"), | ||||
| 	CONSTRAINT issue_attachment_projectid FOREIGN KEY ("projectid") REFERENCES "cpot_project"("id"), | ||||
| 	CONSTRAINT issue_attachment_issueid FOREIGN KEY ("projectid","issueid") REFERENCES "cpot_issue"("projectid","id") | ||||
| ); | ||||
| @ -242,7 +245,7 @@ END; | ||||
|  | ||||
| CREATE OR REPLACE TRIGGER cpot_upon_issue_id_update AFTER UPDATE OF "id" ON "cpot_issue" FOR EACH ROW | ||||
| BEGIN | ||||
| 	UPDATE "cpot_issue_attachment" SET "issueid" = :new."id" WHERE "projectid" = :old."projectid" AND "issueid" = :old."id"; | ||||
| 	UPDATE "cpot_issue_file_list" SET "issueid" = :new."id" WHERE "projectid" = :old."projectid" AND "issueid" = :old."id"; | ||||
| 	UPDATE "cpot_issue_change" SET "id" = :new."id" WHERE "projectid" = :old."projectid" AND "id" = :old."id"; | ||||
| 	UPDATE "cpot_issue_change_attachment" SET "issueid" = :new."id" WHERE "projectid" = :old."projectid" AND "issueid" = :old."id"; | ||||
| END; | ||||
|  | ||||
| @ -135,6 +135,27 @@ CREATE TABLE issue_attachment ( | ||||
| 		ON DELETE RESTRICT ON UPDATE CASCADE | ||||
| ); | ||||
|  | ||||
| CREATE TABLE issue_file_list ( | ||||
| 	projectid   VARCHAR(32)   NOT NULL, | ||||
| 	issueid     BIGINT        NOT NULL, | ||||
| 	filename    VARCHAR(255)  NOT NULL, | ||||
| 	encname     VARCHAR(255)  NOT NULL, | ||||
| 	md5sum      CHAR(32)      NOT NULL, | ||||
| 	description VARCHAR(255)  NOT NULL, | ||||
|  | ||||
| 	createdon   DATETIME      NOT NULL, | ||||
| 	createdby   VARCHAR(32)   NOT NULL, | ||||
|  | ||||
| 	UNIQUE (projectid, issueid, filename), | ||||
| 	UNIQUE (encname), | ||||
|  | ||||
| 	CONSTRAINT issue_file_list_projectid FOREIGN KEY (projectid) REFERENCES project(id) | ||||
| 		ON DELETE RESTRICT ON UPDATE CASCADE, | ||||
|  | ||||
| 	CONSTRAINT issue_file_list_issueid FOREIGN KEY (projectid,issueid) REFERENCES issue(projectid,id) | ||||
| 		ON DELETE RESTRICT ON UPDATE CASCADE | ||||
| ); | ||||
|  | ||||
| CREATE TABLE issue_change ( | ||||
| 	projectid VARCHAR(32)  NOT NULL, | ||||
| 	id        BIGINT       NOT NULL, | ||||
|  | ||||
		Reference in New Issue
	
	Block a user