修正save函数的小问题

master
lyf666 2017-10-11 17:22:21 +08:00
parent 7e4b1662be
commit 7da99848a1
4 changed files with 13 additions and 17 deletions

View File

@ -1,8 +1,6 @@
import com.jfinal.plugin.activerecord.ActiveRecordPlugin
import com.jfinal.plugin.druid.DruidPlugin
import model.JFinalModelMenu
import model.JFinalModelUser
import model.JSONResponse
import model.*
import org.slf4j.LoggerFactory
import ro.pippo.controller.ControllerApplication
import ro.pippo.core.Pippo
@ -91,6 +89,9 @@ class BasicApplication : ControllerApplication() {
val arp = ActiveRecordPlugin(dp)
arp.addMapping("menu", JFinalModelMenu::class.java)
arp.addMapping("user", JFinalModelUser::class.java)
arp.addMapping("group", JFinalModelGroup::class.java)
arp.addMapping("perm", JFinalModelPerm::class.java)
arp.addMapping("role", JFinalModelRole::class.java)
dp.start()
arp.start()

View File

@ -29,12 +29,13 @@ data class ModelUser(val id: Int?, var name: String?, var passwd: String?, val g
constructor() : this(null, null, null, -1, -1, null)
}
data class ModelGroup(val id: Int?, val description: String, val createTime: Timestamp?) {
data class ModelGroup(val id: Int?, val description: String, val parentId: Int?, val createTime: Timestamp?) {
companion object {
fun fromJFinal(model: Model<*>): ModelGroup {
return ModelGroup(
id = model.getInt("id"),
description = model.getStr("description"),
parentId = model.getInt("parentId"),
createTime = model.getTimestamp("createTime")
)
}
@ -48,7 +49,7 @@ data class ModelGroup(val id: Int?, val description: String, val createTime: Tim
return model
}
constructor() : this(null, "", null)
constructor() : this(null, "", -1, null)
}
data class ModelPerm(val id: Int?, val description: String?, val perm: String?, val createTime: Timestamp?) {

View File

@ -7,6 +7,8 @@ import com.jfinal.plugin.activerecord.Record
import model.*
import sun.reflect.generics.reflectiveObjects.NotImplementedException
import util.*
import java.sql.Timestamp
import java.util.*
import kotlin.reflect.KClass
import kotlin.reflect.full.companionObjectInstance
import kotlin.reflect.full.functions
@ -43,6 +45,8 @@ class Service {
fun save(cls: KClass<*>, instance: Any): Boolean {
val model = instance::class.functions.filter { "toJFinal" == it.name }.first().call(instance) as Model<*>
model.set("createTime", Timestamp(Date().time))
model.remove("id")
return model.save()
}
@ -304,18 +308,7 @@ class Service {
@Deprecated("")
fun saveGroup(group: ModelGroup): Boolean {
val conn = DBUtil.getConnection()
try {
println(groupToInsertSQL(group))
conn.createStatement()
.execute(groupToInsertSQL(group))
return true
} catch (e: Exception) {
e.printStackTrace()
return false
} finally {
conn.close()
}
return save(ModelGroup::class, group)
}
@Deprecated("")

View File

@ -76,6 +76,7 @@ fun rsToGroup(rs: ResultSet): ModelGroup {
return ModelGroup(
id = rs.getInt("id"),
description = rs.getString("description"),
parentId = rs.getInt("parentId"),
createTime = rs.getTimestamp("createTime")
)
}