diff --git a/src/main/resources/update/1_3.sql b/src/main/resources/update/1_3.sql index 00c020e..4227448 100644 --- a/src/main/resources/update/1_3.sql +++ b/src/main/resources/update/1_3.sql @@ -2,14 +2,3 @@ ALTER TABLE REPOSITORY ADD COLUMN ORIGIN_USER_NAME VARCHAR(100); ALTER TABLE REPOSITORY ADD COLUMN ORIGIN_REPOSITORY_NAME VARCHAR(100); - -CREATE TABLE PULL_REQUEST( - PULL_REQUEST_ID INT AUTO_INCREMENT, - USER_NAME VARCHAR(100) NOT NULL, - REPOSITORY_NAME VARCHAR(100) NOT NULL, - ISSUE_ID INT NOT NULL, - COMMIT_ID VARCHAR(40) NOT NULL -); - -ALTER TABLE PULL_REQUEST ADD CONSTRAINT IDX_PULL_REQUEST_PK PRIMARY KEY (PULL_REQUEST_ID); -ALTER TABLE PULL_REQUEST ADD CONSTRAINT IDX_PULL_REQUEST_1 UNIQUE ISSUE (USER_NAME, REPOSITORY_NAME, ISSUE_ID); diff --git a/src/main/resources/update/1_4.sql b/src/main/resources/update/1_4.sql new file mode 100644 index 0000000..749e9aa --- /dev/null +++ b/src/main/resources/update/1_4.sql @@ -0,0 +1,13 @@ +CREATE TABLE PULL_REQUEST( + PULL_REQUEST_ID INT AUTO_INCREMENT, + USER_NAME VARCHAR(100) NOT NULL, + REPOSITORY_NAME VARCHAR(100) NOT NULL, + ISSUE_ID INT NOT NULL, + REQUEST_USER_NAME VARCHAR(100) NOT NULL, + REQUEST_REPOSITORY_NAME VARCHAR(100) NOT NULL, + REQUEST_COMMIT_ID VARCHAR(40) NOT NULL +); + +ALTER TABLE PULL_REQUEST ADD CONSTRAINT IDX_PULL_REQUEST_PK PRIMARY KEY (PULL_REQUEST_ID); +ALTER TABLE PULL_REQUEST ADD CONSTRAINT IDX_PULL_REQUEST_FK0 FOREIGN KEY (USER_NAME, REPOSITORY_NAME, ISSUE_ID) REFERENCES ISSUE (USER_NAME, REPOSITORY_NAME, ISSUE_ID); +ALTER TABLE PULL_REQUEST ADD CONSTRAINT IDX_PULL_REQUEST_FK1 FOREIGN KEY (REQUEST_USER_NAME, REQUEST_REPOSITORY_NAME) REFERENCES REPOSITORY (USER_NAME, REPOSITORY_NAME); diff --git a/src/main/scala/model/PullRequest.scala b/src/main/scala/model/PullRequest.scala index cce669d..950ebbf 100644 --- a/src/main/scala/model/PullRequest.scala +++ b/src/main/scala/model/PullRequest.scala @@ -4,10 +4,12 @@ object PullRequests extends Table[PullRequest]("PULL_REQUEST") with IssueTemplate { def pullRequestId = column[Int]("PULL_REQUEST_ID") - def commitId = column[String]("COMMIT_ID") - def * = pullRequestId ~ userName ~ repositoryName ~ issueId ~ commitId <> (PullRequest, PullRequest.unapply _) + def requestUserName = column[String]("REQUEST_USER_NAME") + def requestRepositoryName = column[String]("REQUEST_REPOSITORY_NAME") + def requestCommitId = column[String]("REQUEST_COMMIT_ID") + def * = pullRequestId ~ userName ~ repositoryName ~ issueId ~ requestUserName ~ requestRepositoryName ~ requestCommitId <> (PullRequest, PullRequest.unapply _) - def autoinc = userName ~ repositoryName ~ issueId ~ commitId returning pullRequestId + def autoinc = userName ~ repositoryName ~ issueId ~ requestUserName ~ requestRepositoryName ~ requestCommitId returning pullRequestId def byPrimaryKey(pullRequestId: Int) = this.pullRequestId is pullRequestId.bind } @@ -16,4 +18,6 @@ userName: String, repositoryName: String, issueId: Int, - commitId: String) \ No newline at end of file + requestUserName: String, + requestRepositoryName: String, + requestCommitId: String) \ No newline at end of file