595 override fun insertHistoryEvent(issue: Issue, newId: Int) { |
595 override fun insertHistoryEvent(issue: Issue, newId: Int) { |
596 val type = if (newId > 0) IssueHistoryType.New else IssueHistoryType.Update |
596 val type = if (newId > 0) IssueHistoryType.New else IssueHistoryType.Update |
597 val issueid = if (newId > 0) newId else issue.id |
597 val issueid = if (newId > 0) newId else issue.id |
598 |
598 |
599 val eventid = |
599 val eventid = |
600 withStatement("insert into lpit_issue_history_event(issueid, type) values (?,?::issue_history_event) returning eventid") { |
600 withStatement("insert into lpit_issue_history_event(issueid, subject, type) values (?,?,?::issue_history_event) returning eventid") { |
601 setInt(1, issueid) |
601 setInt(1, issueid) |
602 setEnum(2, type) |
602 setString(2, issue.subject) |
|
603 setEnum(3, type) |
603 querySingle { it.getInt(1) }!! |
604 querySingle { it.getInt(1) }!! |
604 } |
605 } |
605 withStatement( |
606 withStatement( |
606 """ |
607 """ |
607 insert into lpit_issue_history_data (component, status, category, subject, description, assignee, assignee_username, eta, affected, resolved, eventid) |
608 insert into lpit_issue_history_data (component, status, category, description, assignee, eta, affected, resolved, eventid) |
608 values (?, ?::issue_status, ?::issue_category, ?, ?, ?, ?, ?, ?, ?, ?) |
609 values (?, ?::issue_status, ?::issue_category, ?, ?, ?, ?, ?, ?) |
609 """.trimIndent() |
610 """.trimIndent() |
610 ) { |
611 ) { |
611 setStringOrNull(1, issue.component?.name) |
612 setStringOrNull(1, issue.component?.name) |
612 setEnum(2, issue.status) |
613 setEnum(2, issue.status) |
613 setEnum(3, issue.category) |
614 setEnum(3, issue.category) |
614 setString(4, issue.subject) |
615 setStringOrNull(4, issue.description) |
615 setStringOrNull(5, issue.description) |
616 setStringOrNull(5, issue.assignee?.shortDisplayname) |
616 setStringOrNull(6, issue.assignee?.shortDisplayname) |
617 setDateOrNull(6, issue.eta) |
617 setStringOrNull(7, issue.assignee?.username) |
618 setStringOrNull(7, issue.affected?.name) |
618 setDateOrNull(8, issue.eta) |
619 setStringOrNull(8, issue.resolved?.name) |
619 setStringOrNull(9, issue.affected?.name) |
620 setInt(9, eventid) |
620 setStringOrNull(10, issue.resolved?.name) |
|
621 setInt(11, eventid) |
|
622 executeUpdate() |
621 executeUpdate() |
623 } |
622 } |
624 } |
623 } |
625 |
624 |
626 //</editor-fold> |
625 //</editor-fold> |
676 } |
675 } |
677 } |
676 } |
678 } |
677 } |
679 |
678 |
680 |
679 |
681 override fun insertHistoryEvent(issueComment: IssueComment, newId: Int) { |
680 override fun insertHistoryEvent(issue: Issue, issueComment: IssueComment, newId: Int) { |
682 val type = if (newId > 0) IssueHistoryType.NewComment else IssueHistoryType.UpdateComment |
681 val type = if (newId > 0) IssueHistoryType.NewComment else IssueHistoryType.UpdateComment |
683 val commentid = if (newId > 0) newId else issueComment.id |
682 val commentid = if (newId > 0) newId else issueComment.id |
684 |
683 |
685 val eventid = |
684 val eventid = |
686 withStatement("insert into lpit_issue_history_event(issueid, type) values (?,?::issue_history_event) returning eventid") { |
685 withStatement("insert into lpit_issue_history_event(issueid, subject, type) values (?,?,?::issue_history_event) returning eventid") { |
687 setInt(1, issueComment.issueid) |
686 setInt(1, issueComment.issueid) |
688 setEnum(2, type) |
687 setString(1, issue.subject) |
|
688 setEnum(3, type) |
689 querySingle { it.getInt(1) }!! |
689 querySingle { it.getInt(1) }!! |
690 } |
690 } |
691 withStatement("insert into lpit_issue_comment_history (commentid, eventid, comment) values (?,?,?)") { |
691 withStatement("insert into lpit_issue_comment_history (commentid, eventid, comment) values (?,?,?,?)") { |
692 setInt(1, commentid) |
692 setInt(1, commentid) |
693 setInt(2, eventid) |
693 setInt(2, eventid) |
694 setString(3, issueComment.comment) |
694 setString(3, issueComment.comment) |
695 executeUpdate() |
695 executeUpdate() |
696 } |
696 } |
716 setInt(1, projectId) |
716 setInt(1, projectId) |
717 setInt(2, days) |
717 setInt(2, days) |
718 queryAll { rs-> |
718 queryAll { rs-> |
719 with(rs) { |
719 with(rs) { |
720 IssueHistoryEntry( |
720 IssueHistoryEntry( |
721 getTimestamp("time"), |
721 subject = getString("subject"), |
722 getEnum("type"), |
722 time = getTimestamp("time"), |
723 getString("current_assignee"), |
723 type = getEnum("type"), |
724 IssueHistoryData(getInt("issueid"), |
724 currentAssignee = getString("current_assignee"), |
725 component = getString("component") ?: "", |
725 issueid = getInt("issueid"), |
726 status = getEnum("status"), |
726 component = getString("component") ?: "", |
727 category = getEnum("category"), |
727 status = getEnum("status"), |
728 subject = getString("subject"), |
728 category = getEnum("category"), |
729 description = getString("description") ?: "", |
729 description = getString("description") ?: "", |
730 assignee = getString("assignee") ?: "", |
730 assignee = getString("assignee") ?: "", |
731 eta = getDate("eta"), |
731 eta = getDate("eta"), |
732 affected = getString("affected") ?: "", |
732 affected = getString("affected") ?: "", |
733 resolved = getString("resolved") ?: "" |
733 resolved = getString("resolved") ?: "" |
734 ) |
|
735 ) |
734 ) |
736 } |
735 } |
737 } |
736 } |
738 } |
737 } |
739 |
738 |
753 setInt(1, projectId) |
752 setInt(1, projectId) |
754 setInt(2, days) |
753 setInt(2, days) |
755 queryAll { rs-> |
754 queryAll { rs-> |
756 with(rs) { |
755 with(rs) { |
757 IssueCommentHistoryEntry( |
756 IssueCommentHistoryEntry( |
758 getTimestamp("time"), |
757 subject = getString("subject"), |
759 getEnum("type"), |
758 time = getTimestamp("time"), |
760 getString("current_assignee"), |
759 type = getEnum("type"), |
761 IssueCommentHistoryData( |
760 currentAssignee = getString("current_assignee"), |
762 getInt("commentid"), |
761 issueid = getInt("issueid"), |
763 getString("comment") |
762 commentid = getInt("commentid"), |
764 ) |
763 comment = getString("comment") |
765 ) |
764 ) |
766 } |
765 } |
767 } |
766 } |
768 } |
767 } |
769 |
768 |