|
|
@@ -31,12 +31,12 @@ public class UserController extends MyController {
|
|
|
JSONObject requestBodyJson = MyController.getJsonModelByRequestAndType(getRequest(), JSONObject.class);
|
|
|
|
|
|
// 从 JSON 对象中获取 mobile_number
|
|
|
- String mobile_number = requestBodyJson.getString("mobile_number");
|
|
|
+ String mobileNumber = requestBodyJson.getString("mobile_number");
|
|
|
|
|
|
// 走到这里时,EmptyInterceptor 已经保证了 mobile_number 不会是 StrKit.isBlank()
|
|
|
|
|
|
// 1. 校验手机号是否被注册
|
|
|
- if (service.isUserExists(mobile_number)) {
|
|
|
+ if (service.isUserExists(mobileNumber)) {
|
|
|
renderJson(MyRet.fail("该手机号已被注册。"));
|
|
|
return;
|
|
|
}
|
|
|
@@ -145,4 +145,32 @@ public class UserController extends MyController {
|
|
|
// 6. 调用服务层进行用户保存
|
|
|
renderJson(service.saveUser(user));
|
|
|
}
|
|
|
+
|
|
|
+ @EmptyInterface(keyArray = {"mobile_number", "pwd_md5"})
|
|
|
+ public void login() {
|
|
|
+ // --- 核心修改部分:从 JSON 请求体中获取参数 ---
|
|
|
+ JSONObject requestBodyJson = MyController.getJsonModelByRequestAndType(getRequest(), JSONObject.class);
|
|
|
+
|
|
|
+ // 因为 EmptyInterceptor 已经保证了这些字段不为空,这里可以直接获取
|
|
|
+ String mobileNumber = requestBodyJson.getString("mobile_number");
|
|
|
+ String pwdMd5 = requestBodyJson.getString("pwd_md5");
|
|
|
+
|
|
|
+ // 1. 校验手机号是否被注册
|
|
|
+ if (!service.isUserExists(mobileNumber)) {
|
|
|
+ renderJson(MyRet.fail("该手机号未注册。"));
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
+ MyRet ret = service.login(mobileNumber, HashKit.md5(pwdMd5));
|
|
|
+
|
|
|
+ if (ret.isOk()) {
|
|
|
+ ret.set("token", createToken("dl-token"));
|
|
|
+
|
|
|
+ setSessionAttr("id", ((User)ret.get("data")).getStr("id"));
|
|
|
+ setSessionAttr("mobile_number", ((User)ret.get("data")).getStr("mobile_number"));
|
|
|
+ setSessionAttr("role", ((User)ret.get("data")).getStr("role"));
|
|
|
+ }
|
|
|
+
|
|
|
+ renderJson(ret);
|
|
|
+ }
|
|
|
}
|