瀏覽代碼

取消扫码还原数据库

刘立冬 1 月之前
父節點
當前提交
5e9d9a9d3b

+ 21 - 0
risk-control-core/src/main/java/com/tzld/piaoquan/risk/control/service/impl/QywxUserDataService.java

@@ -152,6 +152,27 @@ public class QywxUserDataService {
         return userBase;
     }
 
+    public void cancelScanCode(String originalJson) {
+        // 1. 解析外层数据
+        QwCallBackWrapperData wrapperData = JSON.parseObject(originalJson, QwCallBackWrapperData.class);
+        if (StringUtils.isEmpty(wrapperData.getJson())) {
+            log.warn("Empty inner json data, uuid: {}", wrapperData.getUuid());
+            return;
+        }
+        // 2. 解析内层用户数据
+        String uuid = wrapperData.getUuid();
+        //查找库并改写登录状态
+        UserBaseExample example = new UserBaseExample();
+        example.createCriteria().andUuidEqualTo(uuid);
+        List<UserBase> users = userBaseMapper.selectByExample(example);
+        UserBase user = users.isEmpty() ? null : users.get(0);
+        log.info("needVerifyCode, uuid: {}, user: {}", uuid, user);
+        if (user != null) {
+            user.setLoginStatus(Constant.LOGIN_STATUS_NO_LOGIN);
+            userBaseMapper.updateByPrimaryKeySelective(user);
+        }
+    }
+
     public void needVerifyCode(String originalJson) {
         // 1. 解析外层数据
         QwCallBackWrapperData wrapperData = JSON.parseObject(originalJson, QwCallBackWrapperData.class);

+ 2 - 0
risk-control-core/src/main/java/com/tzld/piaoquan/risk/control/service/qywx/Constant.java

@@ -43,6 +43,8 @@ public class Constant {
 
     //需要验证码回调
     public static final int QW_NEED_VERIFY_CODE = 100004; // -
+    public static final int CANCEL_SCAN_CODE = 100003; // -
+
 
     //登录状态
     public static final int LOGIN_STATUS_NO_LOGIN = 0; // 0: 未登录,

+ 4 - 0
risk-control-server/src/main/java/com/tzld/piaoquan/risk/control/controller/QwCallbackController.java

@@ -53,6 +53,10 @@ public class QwCallbackController {
                 userDataService.needVerifyCode(callbackData);
                 LOGGER.info("Login need verify code: {}", callbackData);
                 break;
+            case Constant.CANCEL_SCAN_CODE:
+                userDataService.cancelScanCode(callbackData);
+                LOGGER.info("Login need verify code: {}", callbackData);
+                break;
             default:
                 LOGGER.warn("Unknown message type: {}", wrapperData.getType());
         }