code15用户认证创建用户

87 阅读1分钟
public interface ApUserAuthService extends IService<ApUserAuth> { 
    /**
     * 用户认证
     * @param dto
     * @param status 2-不通过  9-通过
     */
    void userAuth(AuthDto dto, int status);
}  
@RestController
public class UserAuthController {

    @Autowired
    private ApUserAuthService apUserAuthService;

 
    /**
     * 通过
     * @param dto
     * @return
     */
    @PostMapping("/api/v1/auth/authPass")
    public ResponseResult authPass(@RequestBody AuthDto dto){
        apUserAuthService.userAuth(dto,9);
        return ResponseResult.ok();
    }

    /**
     * 不通过
     * @param dto
     * @return
     */
    @PostMapping("/api/v1/auth/authFail")
    public ResponseResult authFail(@RequestBody AuthDto dto){
        apUserAuthService.userAuth(dto,2);
        return ResponseResult.ok();
    }
}  
@Slf4j
@Service
public class ApUserAuthServiceImpl extends ServiceImpl<ApUserAuthMapper, ApUserAuth> implements ApUserAuthService {
 

    @Autowired
    private ApUserService apUserService;
    @Autowired
    private WemediaFeign wemediaFeign;
    @Autowired
    private ArticleFeign articleFeign;

    @Override
    @GlobalTransactional(rollbackFor = Exception.class)
    public void userAuth(AuthDto dto, int status) {
//        获取认证信息id
        Integer authId = dto.getId();
//        根据id 修改认证状态,原因
        ApUserAuth userAuth = new ApUserAuth();
        userAuth.setId(authId);
        userAuth.setStatus(status);
        userAuth.setReason(status==9?"":dto.getMsg());
        boolean b = updateById(userAuth);
        if(!b){
            log.error("修改用户审核状态失败,authId={}",authId);
            throw new LeadException(AppHttpCodeEnum.SERVER_ERROR);
        }
//        如果不通过,直接结束
        if(status==2){
            log.info("用户认证不通过,直接结束,authId={}",authId);
            return ;
        }
//        根据认证信息id,查询认证信息,获取ap_user_id
覆盖了ApUserAuth userAuth = new ApUserAuth();
        userAuth = getById(authId);
        Integer userId = userAuth.getUserId();
//        根据ap_user_id 查询ap_user 的数据
        ApUser apUser = apUserService.getById(userId);
//       没有就,创建自媒体用户远程调用
        WmUserDto wmUserDto = new WmUserDto();
        wmUserDto.setApUserId(userId);
        wmUserDto.setName(apUser.getName());
        wmUserDto.setPassword(apUser.getPassword());
        wmUserDto.setStatus(9);
        wmUserDto.setPhone(apUser.getPhone());
        wmUserDto.setImage(apUser.getImage()); 
   }}   
     ```
public class WmUserController {

    @Autowired
    private WmUserService wmUserService;

    /**
     * 创建自媒体用户
     * @param dto
     * @return
     */
    @PostMapping("/api/v1/wmuser/save")
    public Integer userSave(@RequestBody WmUserDto dto){
        return wmUserService.saveWmUser(dto);
    }
}  
public interface WmUserService extends IService<WmUser> {

    Integer saveWmUser(WmUserDto dto); 
}  
@Service
public class WmUserServiceImpl extends ServiceImpl<WmUserMapper, WmUser> implements WmUserService {

    @Override
    public Integer saveWmUser(WmUserDto dto) {
//        根据apUserId 查询自媒体用户信息
        LambdaQueryWrapper<WmUser> queryWrapper = new LambdaQueryWrapper();
        queryWrapper.eq(WmUser::getApUserId,dto.getApUserId());
        WmUser wmUser = getOne(queryWrapper);
        if(wmUser==null){
        没有就new一个对象 里面是不能改变的
            wmUser = new WmUser();
            wmUser.setApUserId(dto.getApUserId());
            wmUser.setName(dto.getName());
            wmUser.setStatus(dto.getStatus());
            wmUser.setCreatedTime(new Date());
        }
        外面是可以改变的
        wmUser.setPassword(dto.getPassword());
        wmUser.setPhone(dto.getPhone());
//        新增或修改用户信息都是保存
        saveOrUpdate(wmUser);
        return wmUser.getId();
    }
 }