From 912bb09b925da66515129beec98c207a199c3c52 Mon Sep 17 00:00:00 2001 From: fengxiang <110431245@qq.com> Date: Mon, 05 Feb 2018 14:41:10 +0800 Subject: [PATCH] jwt_token_version 功能 --- src/main/java/com/moral/mapper/AccountMapper.java | 1 src/main/java/com/moral/service/impl/AccountServiceImpl.java | 8 ++- src/main/java/com/moral/mapper/JwtTokenVersionMapper.java | 7 +++ src/main/resources/mapper/AccountMapper.xml | 28 ++++++++++++++ src/main/java/com/moral/entity/JwtTokenVersion.java | 15 +++++++ src/main/java/com/moral/entity/Account.java | 2 + 6 files changed, 58 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/moral/entity/Account.java b/src/main/java/com/moral/entity/Account.java index 1498df9..86f78d2 100644 --- a/src/main/java/com/moral/entity/Account.java +++ b/src/main/java/com/moral/entity/Account.java @@ -74,6 +74,8 @@ private String userName; @Transient + private JwtTokenVersion jwtTokenVersion; + @Transient private List<Role> Roles; // TODO ������������ public List<Role> getRoles(){ diff --git a/src/main/java/com/moral/entity/JwtTokenVersion.java b/src/main/java/com/moral/entity/JwtTokenVersion.java new file mode 100644 index 0000000..a69f739 --- /dev/null +++ b/src/main/java/com/moral/entity/JwtTokenVersion.java @@ -0,0 +1,15 @@ +package com.moral.entity; + +import lombok.Data; + +import java.util.Date; + +@Data +public class JwtTokenVersion { + private Integer id; + + private Integer accountName; + + private Date updateTime; + +} \ No newline at end of file diff --git a/src/main/java/com/moral/mapper/AccountMapper.java b/src/main/java/com/moral/mapper/AccountMapper.java index 3c54a7f..c3a65b1 100644 --- a/src/main/java/com/moral/mapper/AccountMapper.java +++ b/src/main/java/com/moral/mapper/AccountMapper.java @@ -8,4 +8,5 @@ public interface AccountMapper extends BaseMapper<Account> { List<Map<String, Object>> getRoleNameByAccountId(Integer accountId); + Account getByAccountName(String name); } \ No newline at end of file diff --git a/src/main/java/com/moral/mapper/JwtTokenVersionMapper.java b/src/main/java/com/moral/mapper/JwtTokenVersionMapper.java new file mode 100644 index 0000000..c16589d --- /dev/null +++ b/src/main/java/com/moral/mapper/JwtTokenVersionMapper.java @@ -0,0 +1,7 @@ +package com.moral.mapper; + +import com.moral.common.mapper.BaseMapper; +import com.moral.entity.JwtTokenVersion; + +public interface JwtTokenVersionMapper extends BaseMapper<JwtTokenVersion> { +} \ No newline at end of file diff --git a/src/main/java/com/moral/service/impl/AccountServiceImpl.java b/src/main/java/com/moral/service/impl/AccountServiceImpl.java index d441f1f..a0e4000 100644 --- a/src/main/java/com/moral/service/impl/AccountServiceImpl.java +++ b/src/main/java/com/moral/service/impl/AccountServiceImpl.java @@ -170,8 +170,10 @@ @Override public Optional<Account> queryAccountByName(String accountName) { - Account account = new Account(); - account.setAccountName(accountName); - return Optional.ofNullable(accountMapper.selectOne(account)); + Account account = accountMapper.getByAccountName(accountName); + if(account!=null){ + + } + return Optional.ofNullable(account); } } diff --git a/src/main/resources/mapper/AccountMapper.xml b/src/main/resources/mapper/AccountMapper.xml index b058fc3..715d8f4 100644 --- a/src/main/resources/mapper/AccountMapper.xml +++ b/src/main/resources/mapper/AccountMapper.xml @@ -1,6 +1,34 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.moral.mapper.AccountMapper"> + <resultMap id="BaseResultMap" type="com.moral.entity.Account"> + <id column="id" jdbcType="INTEGER" property="id" /> + <result column="account_name" jdbcType="VARCHAR" property="accountName" /> + <result column="password" jdbcType="VARCHAR" property="password" /> + <result column="organization_id" jdbcType="INTEGER" property="organizationId" /> + <result column="email" jdbcType="VARCHAR" property="email" /> + <result column="mobile" jdbcType="VARCHAR" property="mobile" /> + <result column="weixin" jdbcType="VARCHAR" property="weixin" /> + <result column="is_delete" jdbcType="CHAR" property="isDelete" /> + <result column="create_time" jdbcType="TIMESTAMP" property="createTime" /> + <result column="expire_time" jdbcType="TIMESTAMP" property="expireTime" /> + <result column="user_name" jdbcType="VARCHAR" property="userName" /> + <association property="jwtTokenVersion" javaType="com.moral.entity.JwtTokenVersion"> + <result column="jwt_token_version_id" property="id" jdbcType="INTEGER" /> + <result column="update_time" property="updateTime" jdbcType="TIMESTAMP"/> + </association> + </resultMap> + <sql id="Base_Column_List"> + id, account_name, password, organization_id, email, mobile, weixin, is_delete, create_time, + expire_time, user_name + </sql> + <select id="getByAccountName" parameterType="java.lang.String" resultMap="BaseResultMap"> + select + acc.*,jtv.id as jwt_token_version_id,jtv.update_time as update_time + from account acc + left join jwt_token_version jtv on acc.account_name = jtv.account_name + where acc.account_name = #{name,jdbcType=VARCHAR} + </select> <select id="getRoleNameByAccountId" resultType="java.util.Map"> SELECT r.role_name -- Gitblit v1.8.0