Search in sources :

Example 1 with User

use of com.goodskill.entity.User in project goodsKill by techa03.

the class UserAccountController method register.

@RequestMapping(value = "/register/create", method = RequestMethod.POST)
public String register(User user) {
    User userEncrypt = new User();
    BeanUtils.copyProperties(user, userEncrypt);
    userEncrypt.setPassword(new SimpleHash("MD5", user.getPassword(), ByteSource.Util.bytes(user.getAccount()), 2).toString());
    userAccountService.register(userEncrypt);
    // 注册成功后直接登录
    login(user);
    return HttpUrlUtil.replaceRedirectUrl("redirect:/seckill/list");
}
Also used : User(com.goodskill.entity.User) SimpleHash(org.apache.shiro.crypto.hash.SimpleHash) RequestMapping(org.springframework.web.bind.annotation.RequestMapping)

Example 2 with User

use of com.goodskill.entity.User in project goodsKill by techa03.

the class UserRealm method doGetAuthenticationInfo.

/**
 * 提供账户信息返回认证信息
 */
@Override
protected AuthenticationInfo doGetAuthenticationInfo(AuthenticationToken token) throws AuthenticationException {
    String userAccount = (String) token.getPrincipal();
    User user = userService.findByUserAccount(userAccount);
    if (user == null) {
        // 用户名不存在抛出异常
        throw new UnknownAccountException();
    }
    SimpleAuthenticationInfo authenticationInfo = new SimpleAuthenticationInfo(user.getAccount(), user.getPassword(), ByteSource.Util.bytes(user.getAccount()), getName());
    return authenticationInfo;
}
Also used : User(com.goodskill.entity.User)

Example 3 with User

use of com.goodskill.entity.User in project goodsKill by techa03.

the class ChatHttpClient method main.

public static void main(String[] args) {
    ChatMessageDto dto = new ChatMessageDto();
    dto.setMessage("你好啊!!");
    User user = new User();
    user.setAccount("1as");
    user.setUsername("李四");
    user.setId(1);
    BeanUtil.beanToMap(user);
    String token = JwtUtils.createToken(BeanUtil.beanToMap(user));
    dto.setToken(token);
    new ChatHttpClient().sendMsg(dto);
}
Also used : ChatMessageDto(com.goodskill.chat.dto.ChatMessageDto) User(com.goodskill.entity.User)

Example 4 with User

use of com.goodskill.entity.User in project goodsKill by techa03.

the class ChatServerHandler method channelRead.

@Override
public void channelRead(ChannelHandlerContext ctx, Object obj) throws InterruptedException {
    ChatMessageDto msg = new ChatMessageDto();
    User user;
    if (obj instanceof FullHttpRequest) {
        String token = ((FullHttpRequest) obj).headers().get("token");
        String message = ((FullHttpRequest) obj).headers().get("msg");
        new HttpRequestDecoder();
        log.info("token: {}", token);
        Map map = JwtUtils.parseToken(token);
        user = BeanUtil.mapToBean(map, User.class, false, null);
        HttpPostRequestDecoder decoder = new HttpPostRequestDecoder((HttpRequest) obj);
        while (decoder.hasNext()) {
            InterfaceHttpData httpData = decoder.next();
            if (httpData instanceof Attribute) {
                Attribute attr = (Attribute) httpData;
                log.info("收到mutlipart属性:" + attr);
                try {
                    msg.setMessage(attr.getValue());
                } catch (IOException e) {
                    e.printStackTrace();
                }
            } else if (httpData instanceof FileUpload) {
                FileUpload fileUpload = (FileUpload) httpData;
                log.info("收到multipart文件:" + fileUpload);
            // TODO 处理文件上传
            }
        }
        decoder.destroy();
    } else {
        log.error("无法处理该数据!");
        throw new RuntimeException();
    }
    String account;
    if (user == null) {
        account = ctx.channel().remoteAddress().toString();
    } else {
        account = user.getAccount();
    }
    String inMessage = msg.getMessage();
    Channel inComing = ctx.channel();
    String outMessage;
    for (Channel channel : channels) {
        if (channel != inComing) {
            outMessage = "[用户" + account + " 说]" + inMessage + "\n";
        } else {
            outMessage = "[我说]" + inMessage + "\n";
        }
        System.out.println(outMessage);
        msg.setMessage(outMessage);
        FullHttpResponse response = getFullHttpResponse((HttpMessage) obj, outMessage);
        channel.writeAndFlush(response);
    }
}
Also used : User(com.goodskill.entity.User) Attribute(io.netty.handler.codec.http.multipart.Attribute) Channel(io.netty.channel.Channel) IOException(java.io.IOException) HttpPostRequestDecoder(io.netty.handler.codec.http.multipart.HttpPostRequestDecoder) ChatMessageDto(com.goodskill.chat.dto.ChatMessageDto) InterfaceHttpData(io.netty.handler.codec.http.multipart.InterfaceHttpData) Map(java.util.Map) FileUpload(io.netty.handler.codec.http.multipart.FileUpload)

Example 5 with User

use of com.goodskill.entity.User in project goodsKill by techa03.

the class AuthController method verifyUser.

@Override
public AuthResponseDTO verifyUser(String token, String userName) {
    User user = null;
    String errorMsg = null;
    try {
        user = BeanUtil.mapToBean(JwtUtils.parseToken(token), User.class, true, null);
    } catch (Exception e) {
        errorMsg = e.getMessage();
        log.warn(e.getMessage(), e);
    }
    if (user != null && userName.equals(user.getUsername())) {
        return AuthResponseDTO.builder().token(token).userName(userName).code("200").build();
    } else {
        return AuthResponseDTO.builder().token(token).code("500").message(errorMsg).build();
    }
}
Also used : User(com.goodskill.entity.User)

Aggregations

User (com.goodskill.entity.User)11 ChatMessageDto (com.goodskill.chat.dto.ChatMessageDto)2 SimpleHash (org.apache.shiro.crypto.hash.SimpleHash)2 Test (org.junit.jupiter.api.Test)2 UserBO (com.goodskill.api.bo.UserBO)1 Role (com.goodskill.entity.Role)1 RolePermission (com.goodskill.entity.RolePermission)1 UserAuthAccount (com.goodskill.entity.UserAuthAccount)1 UserRole (com.goodskill.entity.UserRole)1 Channel (io.netty.channel.Channel)1 Attribute (io.netty.handler.codec.http.multipart.Attribute)1 FileUpload (io.netty.handler.codec.http.multipart.FileUpload)1 HttpPostRequestDecoder (io.netty.handler.codec.http.multipart.HttpPostRequestDecoder)1 InterfaceHttpData (io.netty.handler.codec.http.multipart.InterfaceHttpData)1 IOException (java.io.IOException)1 Map (java.util.Map)1 RequestMapping (org.springframework.web.bind.annotation.RequestMapping)1