登录逻辑
This commit is contained in:
@@ -1,6 +1,7 @@
|
|||||||
package com.synebula.zeus.query.contr
|
package com.synebula.zeus.query.contr
|
||||||
|
|
||||||
import com.synebula.gaea.data.message.Message
|
import com.synebula.gaea.data.message.Message
|
||||||
|
import com.synebula.zeus.query.view.SignUserView
|
||||||
|
|
||||||
interface IUserQuery {
|
interface IUserQuery {
|
||||||
/**
|
/**
|
||||||
@@ -11,5 +12,5 @@ interface IUserQuery {
|
|||||||
*
|
*
|
||||||
* @return 返回消息体, 200为登录成功, data为用户ID
|
* @return 返回消息体, 200为登录成功, data为用户ID
|
||||||
*/
|
*/
|
||||||
fun signIn(name: String, password: String): Message<String>
|
fun signIn(name: String, password: String): Message<SignUserView>
|
||||||
}
|
}
|
||||||
@@ -6,6 +6,7 @@ import com.synebula.gaea.extension.toMd5
|
|||||||
import com.synebula.gaea.mongo.query.MongoGenericQuery
|
import com.synebula.gaea.mongo.query.MongoGenericQuery
|
||||||
import com.synebula.gaea.mongo.query.MongoQuery
|
import com.synebula.gaea.mongo.query.MongoQuery
|
||||||
import com.synebula.zeus.query.contr.IUserQuery
|
import com.synebula.zeus.query.contr.IUserQuery
|
||||||
|
import com.synebula.zeus.query.view.SignUserView
|
||||||
import com.synebula.zeus.query.view.UserView
|
import com.synebula.zeus.query.view.UserView
|
||||||
import org.springframework.data.mongodb.core.MongoTemplate
|
import org.springframework.data.mongodb.core.MongoTemplate
|
||||||
import org.springframework.data.mongodb.core.query.Criteria
|
import org.springframework.data.mongodb.core.query.Criteria
|
||||||
@@ -15,7 +16,7 @@ import org.springframework.data.mongodb.core.query.isEqualTo
|
|||||||
class UserQuery(template: MongoTemplate) :
|
class UserQuery(template: MongoTemplate) :
|
||||||
MongoGenericQuery<UserView>("user", UserView::class.java, template), IUserQuery {
|
MongoGenericQuery<UserView>("user", UserView::class.java, template), IUserQuery {
|
||||||
|
|
||||||
override fun signIn(name: String, password: String): Message<String> {
|
override fun signIn(name: String, password: String): Message<SignUserView> {
|
||||||
this.check()
|
this.check()
|
||||||
val query = Query.query(
|
val query = Query.query(
|
||||||
Criteria.where("name").isEqualTo(name)
|
Criteria.where("name").isEqualTo(name)
|
||||||
@@ -24,7 +25,7 @@ class UserQuery(template: MongoTemplate) :
|
|||||||
)
|
)
|
||||||
val user = this.template.findOne(query, this.clazz!!)
|
val user = this.template.findOne(query, this.clazz!!)
|
||||||
return if (user != null)
|
return if (user != null)
|
||||||
Message(user.id)
|
Message(SignUserView(user.id, user.name, user.role ?: ""))
|
||||||
else
|
else
|
||||||
Message(Status.Failure, "用户名或密码错误")
|
Message(Status.Failure, "用户名或密码错误")
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,7 @@
|
|||||||
|
package com.synebula.zeus.query.view
|
||||||
|
|
||||||
|
class SignUserView(
|
||||||
|
var id: String = "",
|
||||||
|
var name: String = "",
|
||||||
|
var role: String = ""
|
||||||
|
)
|
||||||
Reference in New Issue
Block a user