chenxz před 7 roky
rodič
revize
d35d9d2599

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

@@ -24,7 +24,7 @@
         <dependency>
             <groupId>cn.iselab.mooctest</groupId>
             <artifactId>user-dubbo-api</artifactId>
-            <version>1.0.11</version>
+            <version>1.0.12</version>
         </dependency>
         <dependency>
             <groupId>cn.iselab.mooctest</groupId>

+ 1 - 1
mooctest-user-server/src/main/java/cn/iselab/mooctest/user/rpc/MedalRPC.java

@@ -57,7 +57,7 @@ public class MedalRPC implements MedalService{
     }
 
     /**
-     * save medal list
+     * get medal list
      * @param keyword
      * @return medalTO
      */

+ 12 - 0
mooctest-user-server/src/main/java/cn/iselab/mooctest/user/web/logic/impl/IntegralLogicImpl.java

@@ -42,6 +42,18 @@ public class IntegralLogicImpl extends BaseLogic implements IntegralLogic {
         User2Integral integral= integralCaughtWrapper.unwrap(dto);
         integral.setCreateTime(new Timestamp(System.currentTimeMillis()));
         integral=integralService.saveUser2Integral(integral);
+
+        UserIntegral userIntegral=integralService.findByUserId(dto.getUserId());
+        if(userIntegral!=null) {
+            userIntegral.setTotal(userIntegral.getTotal() + integral.getPoints());
+        }else {
+            UserIntegral integral1=new UserIntegral();
+            integral1.setUserId(dto.getUserId());
+            integral1.setTotal(integral.getPoints());
+            integral1.setCreateTime(new Timestamp(System.currentTimeMillis()));
+            integral1.setEnabled(true);
+            integralService.saveIntegral(integral1);
+        }
         return integralCaughtWrapper.wrap(integral);
     }
 

+ 31 - 3
mooctest-user-server/src/main/java/cn/iselab/mooctest/user/web/logic/impl/UserLogicImpl.java

@@ -3,6 +3,8 @@ package cn.iselab.mooctest.user.web.logic.impl;
 import cn.iselab.mooctest.rpc.user.data.UserDTO;
 import cn.iselab.mooctest.user.constants.Converter;
 import cn.iselab.mooctest.user.model.User;
+import cn.iselab.mooctest.user.model.UserIntegral;
+import cn.iselab.mooctest.user.service.IntegralService;
 import cn.iselab.mooctest.user.service.UserService;
 import cn.iselab.mooctest.user.web.exception.HttpBadRequestException;
 import cn.iselab.mooctest.user.web.logic.BaseLogic;
@@ -11,6 +13,8 @@ import cn.iselab.mooctest.user.web.wrapper.UserWrapper;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.sql.Timestamp;
+
 /**
  * @author sean
  * @date 2018-03-04.
@@ -24,13 +28,18 @@ public class UserLogicImpl extends BaseLogic implements UserLogic {
     @Autowired
     private UserWrapper userWrapper;
 
+    @Autowired
+    private IntegralService integralService;
+
     @Override
     public UserDTO getUserByEmail(String s) {
         User user = userService.findByEmail(s);
         if (user == null) {
             return null;
         }
-        return userWrapper.wrap(user);
+        UserDTO dto = userWrapper.wrap(user);
+        setIntegral(dto,user);
+        return dto;
     }
 
     @Override
@@ -39,7 +48,9 @@ public class UserLogicImpl extends BaseLogic implements UserLogic {
         if (user == null) {
             return null;
         }
-        return userWrapper.wrap(user);
+        UserDTO dto = userWrapper.wrap(user);
+        setIntegral(dto,user);
+        return dto;
     }
 
     @Override
@@ -48,7 +59,9 @@ public class UserLogicImpl extends BaseLogic implements UserLogic {
         if (user == null) {
             return null;
         }
-        return userWrapper.wrap(user);
+        UserDTO dto = userWrapper.wrap(user);
+        setIntegral(dto,user);
+        return dto;
     }
 
     @Override
@@ -86,4 +99,19 @@ public class UserLogicImpl extends BaseLogic implements UserLogic {
         user = userService.update(user);
         return Converter.convert(UserDTO.class, user);
     }
+
+    private void setIntegral(UserDTO dto,User user){
+        UserIntegral integral=integralService.findByUserId(user.getId());
+        if (integral == null) {
+            UserIntegral integral1 = new UserIntegral();
+            integral1.setEnabled(true);
+            integral1.setTotal(0);
+            integral1.setUserId(user.getId());
+            integral1.setCreateTime(new Timestamp(System.currentTimeMillis()));
+            integralService.saveIntegral(integral1);
+            dto.setIntegral(integral1.getTotal());
+        }else {
+            dto.setIntegral(integral.getTotal());
+        }
+    }
 }

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

@@ -28,10 +28,10 @@ spring:
     datasource:
         url: jdbc:mysql://127.0.0.1:3306/mooctest_user?useUnicode=yes&characterEncoding=UTF-8
         username: root
-        password: zhangxin
+        password: cxz6518
     dubbo:
         application.name: user-service-provider
-        registry.address: zookeeper://118.178.131.206:2181
+        registry.address: zookeeper://127.0.0.1:2181
         protocol.name: dubbo
         protocol.port: 20900
 #        protocol.host: 127.0.0.1