Browse Source

绑定或换绑时校验卡状态并设置激活状态

mingfu 1 month ago
parent
commit
40a67aad09

+ 6 - 0
ie-admin/src/main/java/com/ruoyi/web/service/SysRegisterService.java

@@ -1,5 +1,6 @@
 package com.ruoyi.web.service;
 
+import com.ruoyi.common.core.domain.AjaxResult;
 import com.ruoyi.common.core.domain.model.LoginCard;
 import com.ruoyi.common.core.domain.model.LoginUser;
 import com.ruoyi.common.enums.UserRegStatus;
@@ -7,6 +8,7 @@ import com.ruoyi.common.exception.base.BaseException;
 import com.ruoyi.common.utils.bean.BeanUtils;
 import com.ruoyi.dz.domain.DzCards;
 import com.ruoyi.dz.service.IDzCardsService;
+import com.ruoyi.enums.CardStatus;
 import com.ruoyi.enums.UserTypeEnum;
 import com.ruoyi.framework.web.service.TokenService;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -149,8 +151,12 @@ public class SysRegisterService
             card.setClassId(register.getClassId());
 
             if(null == user.getCardId() || !user.getCardId().equals(card.getCardId())) { // 未绑定或换绑时激活卡
+                if(!CardStatus.Paid.getVal().equals(card.getStatus())) {
+                    throw new RuntimeException("无效卡");
+                }
                 user.setCardId(card.getCardId());
                 user.setRegStatus(UserRegStatus.Student);
+                card.setStatus(CardStatus.Active.getVal());
                 card.setActiveTime(DateUtils.getNowDate());
             }
         }