mirror of
https://github.com/gitbucket/gitbucket.git
synced 2025-11-07 14:05:52 +01:00
Create java.util.Date TypeMapper. And add the currentDate method.
This commit is contained in:
@@ -2,15 +2,15 @@ package model
|
||||
|
||||
import scala.slick.driver.H2Driver.simple._
|
||||
|
||||
object Accounts extends Table[Account]("ACCOUNT") {
|
||||
object Accounts extends Table[Account]("ACCOUNT") with Functions {
|
||||
def userName = column[String]("USER_NAME", O PrimaryKey)
|
||||
def mailAddress = column[String]("MAIL_ADDRESS")
|
||||
def password = column[String]("PASSWORD")
|
||||
def isAdmin = column[Boolean]("ADMINISTRATOR")
|
||||
def url = column[String]("URL")
|
||||
def registeredDate = column[java.sql.Timestamp]("REGISTERED_DATE") // TODO convert java.util.Date later
|
||||
def updatedDate = column[java.sql.Timestamp]("UPDATED_DATE")
|
||||
def lastLoginDate = column[java.sql.Timestamp]("LAST_LOGIN_DATE")
|
||||
def registeredDate = column[java.util.Date]("REGISTERED_DATE")
|
||||
def updatedDate = column[java.util.Date]("UPDATED_DATE")
|
||||
def lastLoginDate = column[java.util.Date]("LAST_LOGIN_DATE")
|
||||
def * = userName ~ mailAddress ~ password ~ isAdmin ~ url.? ~ registeredDate ~ updatedDate ~ lastLoginDate.? <> (Account, Account.unapply _)
|
||||
}
|
||||
|
||||
@@ -20,16 +20,7 @@ case class Account(
|
||||
password: String,
|
||||
isAdmin: Boolean,
|
||||
url: Option[String],
|
||||
registeredDate: java.sql.Timestamp,
|
||||
updatedDate: java.sql.Timestamp,
|
||||
lastLoginDate: Option[java.sql.Timestamp]
|
||||
registeredDate: java.util.Date,
|
||||
updatedDate: java.util.Date,
|
||||
lastLoginDate: Option[java.util.Date]
|
||||
)
|
||||
|
||||
class AccountDao {
|
||||
import Database.threadLocalSession
|
||||
|
||||
def insert(o: Account): Long = Accounts insert o
|
||||
|
||||
def select(key: String): Option[Account] = Query(Accounts) filter(_.userName is key.bind) firstOption
|
||||
|
||||
}
|
||||
|
||||
17
src/main/scala/model/Functions.scala
Normal file
17
src/main/scala/model/Functions.scala
Normal file
@@ -0,0 +1,17 @@
|
||||
package model
|
||||
|
||||
import scala.slick.lifted.MappedTypeMapper
|
||||
|
||||
protected[model] trait Functions {
|
||||
// java.util.Date TypeMapper
|
||||
implicit val dateTypeMapper = MappedTypeMapper.base[java.util.Date, java.sql.Timestamp](
|
||||
d => new java.sql.Timestamp(d.getTime),
|
||||
t => new java.util.Date(t.getTime)
|
||||
)
|
||||
|
||||
/**
|
||||
* Returns system date.
|
||||
*/
|
||||
def currentDate = new java.util.Date()
|
||||
|
||||
}
|
||||
@@ -9,7 +9,7 @@ object IssueId extends Table[(String, String, Int)]("ISSUE_ID") {
|
||||
def * = userName ~ repositoryName ~ issueId
|
||||
}
|
||||
|
||||
object Issues extends Table[Issue]("ISSUE") {
|
||||
object Issues extends Table[Issue]("ISSUE") with Functions {
|
||||
def userName = column[String]("USER_NAME", O PrimaryKey)
|
||||
def repositoryName = column[String]("REPOSITORY_NAME", O PrimaryKey)
|
||||
def issueId = column[Int]("ISSUE_ID", O PrimaryKey)
|
||||
@@ -19,8 +19,8 @@ object Issues extends Table[Issue]("ISSUE") {
|
||||
def title = column[String]("TITLE")
|
||||
def content = column[String]("CONTENT")
|
||||
def closed = column[Boolean]("CLOSED")
|
||||
def registeredDate = column[java.sql.Date]("REGISTERED_DATE") // TODO convert java.util.Date later
|
||||
def updatedDate = column[java.sql.Date]("UPDATED_DATE")
|
||||
def registeredDate = column[java.util.Date]("REGISTERED_DATE")
|
||||
def updatedDate = column[java.util.Date]("UPDATED_DATE")
|
||||
def * = userName ~ repositoryName ~ issueId ~ openedUserName ~ milestoneId.? ~ assignedUserName.? ~ title ~ content.? ~ closed ~ registeredDate ~ updatedDate <> (Issue, Issue.unapply _)
|
||||
}
|
||||
|
||||
@@ -34,5 +34,5 @@ case class Issue(
|
||||
title: String,
|
||||
content: Option[String],
|
||||
closed: Boolean,
|
||||
registeredDate: java.sql.Date,
|
||||
updatedDate: java.sql.Date)
|
||||
registeredDate: java.util.Date,
|
||||
updatedDate: java.util.Date)
|
||||
@@ -2,17 +2,17 @@ package model
|
||||
|
||||
import scala.slick.driver.H2Driver.simple._
|
||||
|
||||
object Milestones extends Table[Milestone]("MILESTONE") {
|
||||
object Milestones extends Table[Milestone]("MILESTONE") with Functions {
|
||||
def userName = column[String]("USER_NAME", O PrimaryKey)
|
||||
def repositoryName = column[String]("REPOSITORY_NAME", O PrimaryKey)
|
||||
def milestoneId = column[Int]("MILESTONE_ID", O PrimaryKey)
|
||||
def milestoneId = column[Int]("MILESTONE_ID", O PrimaryKey, O AutoInc)
|
||||
def title = column[String]("TITLE")
|
||||
def description = column[String]("DESCRIPTION")
|
||||
def dueDate = column[java.sql.Date]("DUE_DATE") // TODO convert java.util.Date later
|
||||
def closedDate = column[java.sql.Timestamp]("CLOSED_DATE")
|
||||
|
||||
def ins = userName ~ repositoryName ~ title ~ description.? ~ dueDate.? ~ closedDate.?
|
||||
def dueDate = column[java.util.Date]("DUE_DATE")
|
||||
def closedDate = column[java.util.Date]("CLOSED_DATE")
|
||||
def * = userName ~ repositoryName ~ milestoneId ~ title ~ description.? ~ dueDate.? ~ closedDate.? <> (Milestone, Milestone.unapply _)
|
||||
|
||||
def autoInc = userName ~ repositoryName ~ title ~ description.? ~ dueDate.? ~ closedDate.? returning milestoneId
|
||||
}
|
||||
|
||||
case class Milestone(
|
||||
@@ -21,5 +21,5 @@ case class Milestone(
|
||||
milestoneId: Int,
|
||||
title: String,
|
||||
description: Option[String],
|
||||
dueDate: Option[java.sql.Date],
|
||||
closedDate: Option[java.sql.Timestamp])
|
||||
dueDate: Option[java.util.Date],
|
||||
closedDate: Option[java.util.Date])
|
||||
|
||||
@@ -2,15 +2,15 @@ package model
|
||||
|
||||
import scala.slick.driver.H2Driver.simple._
|
||||
|
||||
object Repositories extends Table[Repository]("REPOSITORY") {
|
||||
object Repositories extends Table[Repository]("REPOSITORY") with Functions {
|
||||
def repositoryName= column[String]("REPOSITORY_NAME", O PrimaryKey)
|
||||
def userName = column[String]("USER_NAME", O PrimaryKey)
|
||||
def isPrivate = column[Boolean]("PRIVATE")
|
||||
def description = column[String]("DESCRIPTION")
|
||||
def defaultBranch = column[String]("DEFAULT_BRANCH")
|
||||
def registeredDate = column[java.sql.Timestamp]("REGISTERED_DATE") // TODO convert java.util.Date later
|
||||
def updatedDate = column[java.sql.Timestamp]("UPDATED_DATE")
|
||||
def lastActivityDate = column[java.sql.Timestamp]("LAST_ACTIVITY_DATE")
|
||||
def registeredDate = column[java.util.Date]("REGISTERED_DATE")
|
||||
def updatedDate = column[java.util.Date]("UPDATED_DATE")
|
||||
def lastActivityDate = column[java.util.Date]("LAST_ACTIVITY_DATE")
|
||||
def * = repositoryName ~ userName ~ isPrivate ~ description.? ~ defaultBranch ~ registeredDate ~ updatedDate ~ lastActivityDate <> (Repository, Repository.unapply _)
|
||||
}
|
||||
|
||||
@@ -20,7 +20,7 @@ case class Repository(
|
||||
isPrivate: Boolean,
|
||||
description: Option[String],
|
||||
defaultBranch: String,
|
||||
registeredDate: java.sql.Timestamp,
|
||||
updatedDate: java.sql.Timestamp,
|
||||
lastActivityDate: java.sql.Timestamp
|
||||
registeredDate: java.util.Date,
|
||||
updatedDate: java.util.Date,
|
||||
lastActivityDate: java.util.Date
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user