UserMapper.java 5.37 KB
Newer Older
eddie.woo's avatar
eddie.woo committed
1 2 3 4 5 6 7 8 9
package pwc.taxtech.atms.dao;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Result;
import org.apache.ibatis.annotations.Results;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.session.RowBounds;
import pwc.taxtech.atms.MyMapper;
10 11 12
import pwc.taxtech.atms.dpo.RoleInfo;
import pwc.taxtech.atms.dpo.UserDto;
import pwc.taxtech.atms.dpo.UserOrgRoleDto;
13 14
import pwc.taxtech.atms.entity.User;
import pwc.taxtech.atms.entity.UserExample;
eddie.woo's avatar
eddie.woo committed
15

16 17
import java.util.List;

eddie.woo's avatar
eddie.woo committed
18 19 20 21
@Mapper
public interface UserMapper extends MyMapper {
    /**
     * This method was generated by MyBatis Generator.
22
     * This method corresponds to the database table TAX_ADMIN.USER
eddie.woo's avatar
eddie.woo committed
23 24 25 26 27 28 29
     *
     * @mbg.generated
     */
    long countByExample(UserExample example);

    /**
     * This method was generated by MyBatis Generator.
30
     * This method corresponds to the database table TAX_ADMIN.USER
eddie.woo's avatar
eddie.woo committed
31 32 33 34 35 36 37
     *
     * @mbg.generated
     */
    int deleteByExample(UserExample example);

    /**
     * This method was generated by MyBatis Generator.
38
     * This method corresponds to the database table TAX_ADMIN.USER
eddie.woo's avatar
eddie.woo committed
39 40 41
     *
     * @mbg.generated
     */
42
    int deleteByPrimaryKey(String id);
eddie.woo's avatar
eddie.woo committed
43 44 45

    /**
     * This method was generated by MyBatis Generator.
46
     * This method corresponds to the database table TAX_ADMIN.USER
eddie.woo's avatar
eddie.woo committed
47 48 49 50 51 52 53
     *
     * @mbg.generated
     */
    int insert(User record);

    /**
     * This method was generated by MyBatis Generator.
54
     * This method corresponds to the database table TAX_ADMIN.USER
eddie.woo's avatar
eddie.woo committed
55 56 57 58 59 60 61
     *
     * @mbg.generated
     */
    int insertSelective(User record);

    /**
     * This method was generated by MyBatis Generator.
62
     * This method corresponds to the database table TAX_ADMIN.USER
eddie.woo's avatar
eddie.woo committed
63 64 65 66 67 68 69
     *
     * @mbg.generated
     */
    List<User> selectByExampleWithRowbounds(UserExample example, RowBounds rowBounds);

    /**
     * This method was generated by MyBatis Generator.
70
     * This method corresponds to the database table TAX_ADMIN.USER
eddie.woo's avatar
eddie.woo committed
71 72 73 74 75 76 77
     *
     * @mbg.generated
     */
    List<User> selectByExample(UserExample example);

    /**
     * This method was generated by MyBatis Generator.
78
     * This method corresponds to the database table TAX_ADMIN.USER
eddie.woo's avatar
eddie.woo committed
79 80 81
     *
     * @mbg.generated
     */
82
    User selectByPrimaryKey(String id);
eddie.woo's avatar
eddie.woo committed
83 84 85

    /**
     * This method was generated by MyBatis Generator.
86
     * This method corresponds to the database table TAX_ADMIN.USER
eddie.woo's avatar
eddie.woo committed
87 88 89 90 91 92 93
     *
     * @mbg.generated
     */
    int updateByExampleSelective(@Param("record") User record, @Param("example") UserExample example);

    /**
     * This method was generated by MyBatis Generator.
94
     * This method corresponds to the database table TAX_ADMIN.USER
eddie.woo's avatar
eddie.woo committed
95 96 97 98 99 100 101
     *
     * @mbg.generated
     */
    int updateByExample(@Param("record") User record, @Param("example") UserExample example);

    /**
     * This method was generated by MyBatis Generator.
102
     * This method corresponds to the database table TAX_ADMIN.USER
eddie.woo's avatar
eddie.woo committed
103 104 105 106 107 108 109
     *
     * @mbg.generated
     */
    int updateByPrimaryKeySelective(User record);

    /**
     * This method was generated by MyBatis Generator.
110
     * This method corresponds to the database table TAX_ADMIN.USER
eddie.woo's avatar
eddie.woo committed
111 112 113 114
     *
     * @mbg.generated
     */
    int updateByPrimaryKey(User record);
eddie.woo's avatar
eddie.woo committed
115

eddie.woo's avatar
eddie.woo committed
116 117 118 119
    /**
     * select one user record by user name
     */
    User selectByUserName(String userName);
120

eddie.woo's avatar
eddie.woo committed
121 122 123 124
    /**
     * select one user record by user name with ingore case
     */
    User selectByUserNameIgnoreCase(String userName);
125

eddie.woo's avatar
eddie.woo committed
126
    /**
127
     * select one user record by user name with ingore case and different user id
eddie.woo's avatar
eddie.woo committed
128 129
     */
    User selectUserWithSameUserName(UserDto userDto);
130

eddie.woo's avatar
eddie.woo committed
131
    /**
132
     * select one user record by email with ingore case and different user id
eddie.woo's avatar
eddie.woo committed
133 134
     */
    User selectUserWithSameEmail(UserDto userDto);
135

eddie.woo's avatar
eddie.woo committed
136 137 138 139
    /**
     * select one user record by email with ingore case
     */
    User selectByEmailIgnoreCase(String email);
140

eddie.woo's avatar
eddie.woo committed
141
    /**
142
     * select one user record with its related organization information by user id
eddie.woo's avatar
eddie.woo committed
143
     */
144 145 146
    @Select("select u.USER_NAME as UserName, o.id as Organization_ID, o.Name as OrganizationName, "
            + "u.EMAIL as Email, u.STATUS as Status, u.ATTEMPT_TIMES as AttemptTimes, u.CREATE_TIME as CreateTime, "
            + "u.EXPIRATION_DATE as ExpirationDate, u.IS_ADMIN as IsAdmin, u.ID as id, u.LOCKED_TIME as LockedTime, "
147 148
            + "u.LOGIN_TYPE as LoginType, u.PASSWORD as Password, u.PASSWORD_UPDATE_TIME as Password_UpdateTime, u.UPDATE_TIME as UpdateTime from \"USER\" u "
            + "left join ORGANIZATION o on u.ORGANIZATION_ID = o.id "
149
            + "where u.ID = #{userId}")
150
    List<UserDto> selectUserWithOrgInfoById(@Param(value = "userId") String userId);
eddie.woo's avatar
eddie.woo committed
151

frank.xa.zhang's avatar
frank.xa.zhang committed
152 153
    @Select("select R.ID AS id, R.NAME AS name FROM USER_ROLE U "
            + "JOIN ROLE R ON U.ROLE_ID = R.ID "
154
            + "WHERE U.USER_ID = #{userId}")
155
    List<RoleInfo> selectUserRoleInfoById(@Param(value = "userId") String userId);
eddie.woo's avatar
eddie.woo committed
156

157
    @Select("select udv.ROLE_ID as roleID, r.NAME as roleName, udv.USER_DIMENSION_VALUE_ID as id "
frank.xa.zhang's avatar
frank.xa.zhang committed
158 159
            + "FROM USER_DIMENSION_VALUE_ROLE UDV "
            + "JOIN ROLE R ON UDV.ROLE_ID = R.ID")
eddie.woo's avatar
eddie.woo committed
160
    List<UserOrgRoleDto> selectUserDimensionValueRole();
eddie.woo's avatar
eddie.woo committed
161

162
    @Select("select q.ROLE_ID as roleID, r.NAME as roleName, q.USER_ORGANIZATION_ID as id "
frank.xa.zhang's avatar
frank.xa.zhang committed
163 164
            + "from USER_ORGANIZATION_ROLE q "
            + "join ROLE r on q.ROLE_ID = r.id")
eddie.woo's avatar
eddie.woo committed
165 166
    List<UserOrgRoleDto> selectUserOrganizationRole();
}