浏览代码

ADD: get user by username

zhangxin 7 年之前
父节点
当前提交
354f33ce9f

+ 7 - 7
mooctest-user-server/pom.xml

@@ -24,7 +24,7 @@
         <dependency>
             <groupId>cn.iselab.mooctest</groupId>
             <artifactId>user-dubbo-api</artifactId>
-            <version>1.0.8</version>
+            <version>1.0.10</version>
         </dependency>
         <dependency>
             <groupId>cn.iselab.mooctest</groupId>
@@ -92,12 +92,12 @@
                 </exclusion>
             </exclusions>
         </dependency>
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-devtools</artifactId>
-            <version>${spring.boot.version}</version>
-            <optional>true</optional>
-        </dependency>
+        <!--<dependency>-->
+            <!--<groupId>org.springframework.boot</groupId>-->
+            <!--<artifactId>spring-boot-devtools</artifactId>-->
+            <!--<version>${spring.boot.version}</version>-->
+            <!--<optional>true</optional>-->
+        <!--</dependency>-->
 
         <dependency>
             <groupId>org.jboss.spec.javax.servlet</groupId>

+ 2 - 0
mooctest-user-server/src/main/java/cn/iselab/mooctest/user/constants/UrlConstants.java

@@ -11,4 +11,6 @@ public class UrlConstants {
     public static final String API_INTEGRAL="/api/integral";
 
     public static final String API_MEDAL="/api/medal";
+
+    public static final String API="/api/";
 }

+ 17 - 2
mooctest-user-server/src/main/java/cn/iselab/mooctest/user/rpc/UserRPC.java

@@ -2,6 +2,7 @@ package cn.iselab.mooctest.user.rpc;
 
 import cn.iselab.mooctest.rpc.user.api.UserService;
 import cn.iselab.mooctest.rpc.user.data.UserDTO;
+import cn.iselab.mooctest.user.web.exception.HttpBadRequestException;
 import cn.iselab.mooctest.user.web.logic.UserLogic;
 import com.alibaba.dubbo.config.annotation.Service;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -39,8 +40,7 @@ public class UserRPC implements UserService {
     }
 
     @Override
-    public UserDTO save(UserDTO userDTO)
-    {
+    public UserDTO save(UserDTO userDTO) {
         return userLogic.save(userDTO);
     }
 
@@ -48,4 +48,19 @@ public class UserRPC implements UserService {
     public UserDTO updateUser(UserDTO userDTO) {
         return userLogic.updateUser(userDTO);
     }
+
+    @Override
+    public UserDTO getUserByUsername(String s) {
+        UserDTO userDTO = userLogic.getUserByEmail(s);
+        if (userDTO != null) {
+            return userDTO;
+        } else {
+            userDTO = userLogic.getUserByMobile(s);
+            if (userDTO != null) {
+                return userDTO;
+            } else {
+                throw new HttpBadRequestException("user not exist");
+            }
+        }
+    }
 }

+ 26 - 0
mooctest-user-server/src/main/java/cn/iselab/mooctest/user/web/ctrl/UserController.java

@@ -0,0 +1,26 @@
+package cn.iselab.mooctest.user.web.ctrl;
+
+import cn.iselab.mooctest.rpc.user.data.UserDTO;
+import cn.iselab.mooctest.user.constants.UrlConstants;
+import cn.iselab.mooctest.user.web.logic.UserLogic;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * @author sean
+ * @date 2018-03-05.
+ */
+@RestController
+public class UserController extends BaseController {
+
+    @Autowired
+    private UserLogic userLogic;
+
+    @RequestMapping(value = UrlConstants.API + "user/{id:\\d+}", method = RequestMethod.GET)
+    public UserDTO getUserById(@PathVariable("id") Long id) {
+        return userLogic.getUserById(id);
+    }
+}

+ 3 - 3
mooctest-user-server/src/main/resources/application.yaml

@@ -34,14 +34,14 @@ spring:
         registry.address: zookeeper://118.178.131.206:2181
         protocol.name: dubbo
         protocol.port: 20900
-        protocol.host: 127.0.0.1
+#        protocol.host: 127.0.0.1
         scan: cn.iselab.mooctest.user.rpc
         monitor.protocal: registry
         provider.timeout: 120000
-        provider.retries: 0
+#        provider.retries: 0
 
 server:
-    port: 8080
+    port: 8081
 
 logging.config: classpath:log4j2.yaml