注册登录,用户等级,社交,动态,新手任务

Change-Id: I1d3183526517fb3c0dab665e0e7547eefa5c9d76
diff --git a/src/main/java/com/example/myproject/controller/LevelController.java b/src/main/java/com/example/myproject/controller/LevelController.java
new file mode 100644
index 0000000..8781246
--- /dev/null
+++ b/src/main/java/com/example/myproject/controller/LevelController.java
@@ -0,0 +1,42 @@
+package com.example.myproject.controller;
+
+import com.example.myproject.service.LevelService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.Map;
+
+@RequestMapping("/echo/level")
+@RestController
+public class LevelController {
+
+    @Autowired
+    private LevelService levelService;
+
+    @GetMapping("/getExperience")
+    public Map<String, Object> getExperience(@RequestParam Long user_id) {
+        return levelService.getUserExperience(user_id);
+    }
+
+    @PostMapping("/updateExperience")
+    public Map<String, Object> updateExperience(@RequestBody Map<String, Object> params) {
+        Long userId = Long.valueOf(params.get("user_id").toString());
+        Integer experience = Integer.valueOf(params.get("experience").toString());
+        String source = params.get("source").toString();
+
+        return levelService.updateExperience(userId, experience, source);
+    }
+
+    // 检查用户是否满足升级条件
+    @GetMapping("/upgrade-check")
+    public Map<String, Object> checkUpgrade(@RequestParam Long user_id) {
+        return levelService.checkUpgrade(user_id);
+    }
+
+    @PostMapping("/upgrades")
+    public Map<String, Object> upgradeUserLevel(@RequestBody Map<String, Object> request) {
+        Long userId = Long.valueOf(request.get("user_id").toString());
+        Boolean canUpgrade = (Boolean) request.get("can_upgrade");
+        return levelService.upgradeUserLevel(userId, canUpgrade);
+    }
+}