登录逻辑

This commit is contained in:
2020-05-27 17:22:19 +08:00
parent 378f6dcb19
commit 3d3d6099fe
3 changed files with 12 additions and 3 deletions

View File

@@ -1,6 +1,7 @@
package com.synebula.zeus.query.contr
import com.synebula.gaea.data.message.Message
import com.synebula.zeus.query.view.SignUserView
interface IUserQuery {
/**
@@ -11,5 +12,5 @@ interface IUserQuery {
*
* @return 返回消息体, 200为登录成功, data为用户ID
*/
fun signIn(name: String, password: String): Message<String>
fun signIn(name: String, password: String): Message<SignUserView>
}

View File

@@ -6,6 +6,7 @@ import com.synebula.gaea.extension.toMd5
import com.synebula.gaea.mongo.query.MongoGenericQuery
import com.synebula.gaea.mongo.query.MongoQuery
import com.synebula.zeus.query.contr.IUserQuery
import com.synebula.zeus.query.view.SignUserView
import com.synebula.zeus.query.view.UserView
import org.springframework.data.mongodb.core.MongoTemplate
import org.springframework.data.mongodb.core.query.Criteria
@@ -15,7 +16,7 @@ import org.springframework.data.mongodb.core.query.isEqualTo
class UserQuery(template: MongoTemplate) :
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()
val query = Query.query(
Criteria.where("name").isEqualTo(name)
@@ -24,7 +25,7 @@ class UserQuery(template: MongoTemplate) :
)
val user = this.template.findOne(query, this.clazz!!)
return if (user != null)
Message(user.id)
Message(SignUserView(user.id, user.name, user.role ?: ""))
else
Message(Status.Failure, "用户名或密码错误")
}

View File

@@ -0,0 +1,7 @@
package com.synebula.zeus.query.view
class SignUserView(
var id: String = "",
var name: String = "",
var role: String = ""
)