admin
2025-02-25 30d8e227e8d823b6c38c3b9c90ac2df03b63befe
fanli/src/main/java/com/yeshi/fanli/service/impl/user/ForbiddenUserIdentifyCodeServiceImpl.java
@@ -1,65 +1,118 @@
package com.yeshi.fanli.service.impl.user;
import java.util.Date;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import com.yeshi.fanli.dao.mybatis.user.ForbiddenUserIdentifyCodeMapper;
import com.yeshi.fanli.entity.bus.user.ForbiddenUserIdentifyCode;
import com.yeshi.fanli.entity.bus.user.ForbiddenUserIdentifyCode.ForbiddenUserIdentifyCodeTypeEnum;
import com.yeshi.fanli.exception.user.ForbiddenUserIdentifyCodeException;
import com.yeshi.fanli.service.inter.user.ForbiddenUserIdentifyCodeService;
import com.yeshi.fanli.util.StringUtil;
@Service
public class ForbiddenUserIdentifyCodeServiceImpl implements ForbiddenUserIdentifyCodeService {
   @Resource
   private ForbiddenUserIdentifyCodeMapper forbiddenUserIdentifyCodeMapper;
   @Override
   public void addIdentifyCode(ForbiddenUserIdentifyCode identifyCode) throws ForbiddenUserIdentifyCodeException {
      if (identifyCode == null || identifyCode.getType() == null
            || StringUtil.isNullOrEmpty(identifyCode.getIdentifyCode()))
         throw new ForbiddenUserIdentifyCodeException(1, "信息不完整");
      ForbiddenUserIdentifyCode old = listByTypeAndIdentifyCode(identifyCode.getType(),
            identifyCode.getIdentifyCode());
      if (old != null)
         throw new ForbiddenUserIdentifyCodeException(2, "信息已存在");
      identifyCode.setCreateTime(new Date());
      identifyCode.setEffective(true);
      forbiddenUserIdentifyCodeMapper.insertSelective(identifyCode);
   }
   @Override
   public ForbiddenUserIdentifyCode listByTypeAndIdentifyCode(ForbiddenUserIdentifyCodeTypeEnum type,
         String identifyCode) {
      List<ForbiddenUserIdentifyCode> list = forbiddenUserIdentifyCodeMapper.listByTypeAndIdentifyCode(type,
            identifyCode);
      if (list != null && list.size() > 0)
         return list.get(0);
      else
         return null;
   }
   @Override
   public void update(ForbiddenUserIdentifyCode identifyCode) {
      if (identifyCode == null)
         return;
      identifyCode.setUpdateTime(new Date());
      forbiddenUserIdentifyCodeMapper.updateByPrimaryKeySelective(identifyCode);
   }
   @Override
   public void delete(ForbiddenUserIdentifyCode identifyCode) {
      if (identifyCode == null || identifyCode.getId() == null)
         return;
      forbiddenUserIdentifyCodeMapper.deleteByPrimaryKey(identifyCode.getId());
   }
}
package com.yeshi.fanli.service.impl.user;
import java.util.Date;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import com.yeshi.fanli.dao.mybatis.user.ForbiddenUserIdentifyCodeMapper;
import com.yeshi.fanli.entity.bus.user.ForbiddenUserIdentifyCode;
import com.yeshi.fanli.entity.bus.user.ForbiddenUserIdentifyCode.ForbiddenUserIdentifyCodeTypeEnum;
import com.yeshi.fanli.exception.user.ForbiddenUserIdentifyCodeException;
import com.yeshi.fanli.service.inter.user.ForbiddenUserIdentifyCodeService;
import com.yeshi.fanli.util.StringUtil;
@Service
public class ForbiddenUserIdentifyCodeServiceImpl implements ForbiddenUserIdentifyCodeService {
   @Resource
   private ForbiddenUserIdentifyCodeMapper forbiddenUserIdentifyCodeMapper;
   @Override
   public void forbiddenIdentifyCode(ForbiddenUserIdentifyCode identifyCode) throws ForbiddenUserIdentifyCodeException {
      if (identifyCode == null || identifyCode.getType() == null
            || StringUtil.isNullOrEmpty(identifyCode.getIdentifyCode()))
         throw new ForbiddenUserIdentifyCodeException(1, "信息不完整");
      ForbiddenUserIdentifyCode old = listByTypeAndIdentifyCode(identifyCode.getType(),
            identifyCode.getIdentifyCode());
      if (old != null) {
         identifyCode.setId(old.getId());
      }
      identifyCode.setCreateTime(new Date());
      identifyCode.setEffective(true);
      forbiddenUserIdentifyCodeMapper.insertSelective(identifyCode);
   }
   @Override
   public ForbiddenUserIdentifyCode listByTypeAndIdentifyCode(ForbiddenUserIdentifyCodeTypeEnum type,
         String identifyCode) {
      List<ForbiddenUserIdentifyCode> list = forbiddenUserIdentifyCodeMapper.listByTypeAndIdentifyCode(type,
            identifyCode);
      if (list != null && list.size() > 0)
         return list.get(0);
      else
         return null;
   }
   @Override
   public void update(ForbiddenUserIdentifyCode identifyCode) {
      if (identifyCode == null)
         return;
      identifyCode.setUpdateTime(new Date());
      forbiddenUserIdentifyCodeMapper.updateByPrimaryKeySelective(identifyCode);
   }
   @Override
   public void delete(ForbiddenUserIdentifyCode identifyCode) {
      if (identifyCode == null || identifyCode.getId() == null)
         return;
      forbiddenUserIdentifyCodeMapper.deleteByPrimaryKey(identifyCode.getId());
   }
   @Override
   public void saveForbiddenInfo(String identifyCode, Integer type) throws ForbiddenUserIdentifyCodeException{
      ForbiddenUserIdentifyCodeTypeEnum typeEnum = null;
      switch(type) {
         case 1: // 微信账号
            typeEnum = ForbiddenUserIdentifyCodeTypeEnum.wxUnionId;
            break;
         case 2: // 淘宝账号
            typeEnum = ForbiddenUserIdentifyCodeTypeEnum.taobaoUid;
            break;
         case 3: // 电话号码
            typeEnum = ForbiddenUserIdentifyCodeTypeEnum.phone;
            break;
         case 4: // 支付宝账号
            typeEnum = ForbiddenUserIdentifyCodeTypeEnum.alipayAccount;
            break;
         default:
            throw new ForbiddenUserIdentifyCodeException(1, "类型不匹配");
      }
      ForbiddenUserIdentifyCode codeObject = listByTypeAndIdentifyCode(typeEnum ,identifyCode);
      if (codeObject == null) {
         // 封禁
         codeObject = new ForbiddenUserIdentifyCode();
         codeObject.setType(typeEnum);
         codeObject.setIdentifyCode(identifyCode);
         codeObject.setEffective(true);
         codeObject.setCreateTime(new Date());
         codeObject.setUpdateTime(new Date());
         forbiddenUserIdentifyCodeMapper.insertSelective(codeObject);
      } else {
         Boolean effective = codeObject.getEffective();
         if (effective) {
            // 解封
            codeObject.setEffective(false);
         } else {
            // 封禁
            codeObject.setEffective(true);
         }
         codeObject.setUpdateTime(new Date());
         forbiddenUserIdentifyCodeMapper.updateByPrimaryKeySelective(codeObject);
      }
   }
}