소스 검색

新用户注册,插入发券任务

Evan 2 년 전
부모
커밋
35b0714446

+ 23 - 0
mp-admin/src/main/java/com/qs/mp/web/controller/api/common/UserController.java

@@ -22,6 +22,7 @@ import com.qs.mp.channel.service.IChannelService;
 import com.qs.mp.common.core.domain.AjaxResult;
 import com.qs.mp.common.domain.vo.AliPhoneDecryptVO;
 import com.qs.mp.common.enums.AppSourceEnum;
+import com.qs.mp.common.enums.AsyncTaskTypeEnum;
 import com.qs.mp.common.enums.UserIdentityEnum;
 import com.qs.mp.common.enums.WxActTypeEnum;
 import com.qs.mp.common.jsms.JSMSUtils;
@@ -31,9 +32,11 @@ import com.qs.mp.common.utils.StringUtils;
 import com.qs.mp.common.utils.UUIDUtils;
 import com.qs.mp.common.utils.http.HttpUtils;
 import com.qs.mp.core.domain.LoginUser;
+import com.qs.mp.framework.domain.AsyncTask;
 import com.qs.mp.framework.domain.WxAccount;
 import com.qs.mp.framework.security.handle.HostHolder;
 import com.qs.mp.framework.service.IAppTokenService;
+import com.qs.mp.framework.service.IAsyncTaskService;
 import com.qs.mp.framework.service.IWxAccountService;
 import com.qs.mp.framework.web.service.SysLoginService;
 import com.qs.mp.system.domain.SysUser;
@@ -129,6 +132,9 @@ public class UserController extends BaseApiController {
     @Autowired
     private SysLoginService sysLoginService;
 
+    @Autowired
+    private IAsyncTaskService asyncTaskService;
+
     private static final String CBC_CIPHER_ALGORITHM = "AES/CBC/PKCS5Padding";
     private static final String KEY_ALGORITHM = "AES";
     private static final String UTF8 = "UTF-8";
@@ -208,6 +214,14 @@ public class UserController extends BaseApiController {
             sysUser.setNickName(mobile);
             sysUser.setPhonenumber(mobile);
             sysUserService.registerUser(sysUser);
+
+            // 插入新用户发券任务
+            AsyncTask asyncTask = new AsyncTask();
+            asyncTask.setBizId(String.valueOf(sysUser.getUserId()));
+            asyncTask.setType(AsyncTaskTypeEnum.NEW_USER_SEND_COUPON.getValue());
+            if (!asyncTaskService.save(asyncTask)) {
+                logger.error("插入新用户发券任务失败,userId:{}", sysUser.getUserId());
+            }
         }
         Map<String, String> result = sysLoginService.wxAuthLogin(mobile, wxLoginParams.getIdentity());
         for (String key : result.keySet()) {
@@ -448,6 +462,15 @@ public class UserController extends BaseApiController {
             sysUser.setNickName(phoneNumber);
             sysUser.setPhonenumber(phoneNumber);
             sysUserService.registerUser(sysUser);
+
+            // 插入新用户发券任务
+            AsyncTask asyncTask = new AsyncTask();
+            asyncTask.setBizId(String.valueOf(sysUser.getUserId()));
+            asyncTask.setType(AsyncTaskTypeEnum.NEW_USER_SEND_COUPON.getValue());
+            if (!asyncTaskService.save(asyncTask)) {
+                logger.error("插入新用户发券任务失败,userId:{}", sysUser.getUserId());
+            }
+
         }
         Map<String, String> result = sysLoginService.wxAuthLogin(phoneNumber, wxLoginParams.getIdentity());
         for (String key : result.keySet()) {

+ 19 - 0
mp-admin/src/main/java/com/qs/mp/web/controller/system/SysLoginController.java

@@ -4,8 +4,11 @@ package com.qs.mp.web.controller.system;
 import com.qs.mp.common.constant.Constants;
 import com.qs.mp.common.core.domain.AjaxResult;
 import com.qs.mp.common.core.domain.model.LoginBody;
+import com.qs.mp.common.enums.AsyncTaskTypeEnum;
 import com.qs.mp.common.enums.UserIdentityEnum;
+import com.qs.mp.framework.domain.AsyncTask;
 import com.qs.mp.framework.security.handle.HostHolder;
+import com.qs.mp.framework.service.IAsyncTaskService;
 import com.qs.mp.framework.web.service.SysLoginService;
 import com.qs.mp.framework.web.service.SysPermissionService;
 import com.qs.mp.sms.domain.SmsCode;
@@ -20,6 +23,8 @@ import java.util.List;
 import java.util.Map;
 import java.util.Set;
 import java.util.regex.Pattern;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
@@ -34,6 +39,9 @@ import org.springframework.web.bind.annotation.RestController;
 @RestController
 public class SysLoginController
 {
+
+    protected final Logger logger = LoggerFactory.getLogger(this.getClass());
+
     @Autowired
     private SysLoginService loginService;
 
@@ -49,6 +57,9 @@ public class SysLoginController
     @Autowired
     private HostHolder hostHolder;
 
+    @Autowired
+    private IAsyncTaskService asyncTaskService;
+
     /**
      * 登录方法
      *
@@ -103,6 +114,14 @@ public class SysLoginController
             sysUser.setNickName(smsCode.getMobile());
             sysUser.setPhonenumber(smsCode.getMobile());
             sysUserService.registerUser(sysUser);
+
+            // 插入新用户发券任务
+            AsyncTask asyncTask = new AsyncTask();
+            asyncTask.setBizId(String.valueOf(sysUser.getUserId()));
+            asyncTask.setType(AsyncTaskTypeEnum.NEW_USER_SEND_COUPON.getValue());
+            if (!asyncTaskService.save(asyncTask)) {
+                logger.error("插入新用户发券任务失败,userId:{}", sysUser.getUserId());
+            }
         }
 
         AjaxResult ajax = AjaxResult.success();

+ 4 - 1
mp-common/src/main/java/com/qs/mp/common/enums/AsyncTaskTypeEnum.java

@@ -14,7 +14,10 @@ public enum AsyncTaskTypeEnum implements IEnum<Integer> {
     CHANNEL_CONFIRM_RECEIPT(1,"经销商确认收货任务"),
     TICKET_PAY(2,"盲票付款任务"),
     TICKET_GENERATE(3, "盲票生成任务"),
-    CARD_ORDER_DELIVER(4, "卡密订单自动发货");
+    CARD_ORDER_DELIVER(4, "卡密订单自动发货"),
+
+    NEW_USER_SEND_COUPON(5, "新用户发券"),
+    ;
 
     private Integer value;
     private String desc;