Browse Source

增加系统配置

master
白凤吉 4 months ago
parent
commit
7b8ad61f8c
  1. 18
      app/src/main/java/com/iflytop/profilometer/api/auth/AuthApi.java
  2. 4
      app/src/main/java/com/iflytop/profilometer/api/auth/AuthRoutes.kt
  3. 16
      app/src/main/java/com/iflytop/profilometer/api/record/RecordApi.java
  4. 5
      app/src/main/java/com/iflytop/profilometer/api/record/RecordRoutes.kt
  5. 31
      app/src/main/java/com/iflytop/profilometer/core/system/SystemState.java

18
app/src/main/java/com/iflytop/profilometer/api/auth/AuthApi.java

@ -3,6 +3,7 @@ package com.iflytop.profilometer.api.auth;
import android.content.Context;
import com.iflytop.profilometer.common.result.Result;
import com.iflytop.profilometer.core.system.SystemState;
import com.iflytop.profilometer.dao.UserDao;
import com.iflytop.profilometer.model.entity.AppUser;
@ -23,9 +24,26 @@ public class AuthApi {
UserDao userDao = new UserDao(context);
AppUser user = userDao.login(username, password);
if (user != null) {
SystemState.getInstance().setCurrentUser(user);
return Result.success(user);
} else {
return Result.failed();
}
}
/**
* 登出
*/
public String logout() {
SystemState.getInstance().setCurrentUser(null);
return Result.success();
}
/**
* 获取当前登录用户
*/
public String current() {
AppUser user = SystemState.getInstance().getCurrentUser();
return Result.success(user);
}
}

4
app/src/main/java/com/iflytop/profilometer/api/auth/AuthRoutes.kt

@ -24,12 +24,16 @@ fun Routing.authRoutes(context: Context) {
*
*/
post("/api/auth/logout") {
val jsonResponse = api.logout()
call.respondText(jsonResponse, ContentType.Application.Json)
}
/**
*
*/
post("/api/auth/current") {
val jsonResponse = api.current()
call.respondText(jsonResponse, ContentType.Application.Json)
}
}

16
app/src/main/java/com/iflytop/profilometer/api/record/RecordApi.java

@ -11,6 +11,8 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import cn.hutool.json.JSONArray;
/**
* 测量记录接口
*/
@ -35,9 +37,21 @@ public class RecordApi {
/**
* 测量记录详情
*/
public String detail(Long id){
public String detail(Long id) {
ProfileRecordPointSetDao profileRecordPointSetDao = new ProfileRecordPointSetDao(context);
ProfileRecordPointSet pointSet = profileRecordPointSetDao.getProfileRecordPointSetById(id);
return Result.success(pointSet);
}
/**
* 删除测量记录
*/
public String delete(JSONArray ids) {
ProfileRecordDao profileRecordDao = new ProfileRecordDao(context);
for (int i = 0; i < ids.size(); i++) {
Long id = ids.getLong(i);
profileRecordDao.deleteProfileRecord(id);
}
return Result.success();
}
}

5
app/src/main/java/com/iflytop/profilometer/api/record/RecordRoutes.kt

@ -43,6 +43,11 @@ fun Routing.recordRoutes(context: Context) {
*
*/
post("/api/record/delete") {
val requestBody = call.receiveText()
val jsonObj = JSONUtil.parseObj(requestBody)
val ids = jsonObj.getJSONArray("ids")
val jsonResponse = api.delete(ids)
call.respondText(jsonResponse, ContentType.Application.Json)
}
}

31
app/src/main/java/com/iflytop/profilometer/core/system/SystemState.java

@ -0,0 +1,31 @@
package com.iflytop.profilometer.core.system;
import com.iflytop.profilometer.model.entity.AppUser;
/**
* 全局系统状态
*/
public class SystemState {
private SystemState() {
}
private static final SystemState instance = new SystemState();
// 提供获取单例实例的全局访问点
public static SystemState getInstance() {
return instance;
}
/**
* 系统当前登录用户
*/
private AppUser currentUser;
public synchronized AppUser getCurrentUser() {
return currentUser;
}
public synchronized void setCurrentUser(AppUser currentUser) {
this.currentUser = currentUser;
}
}
Loading…
Cancel
Save