Add table t_user_info
This commit is contained in:
5
pom.xml
5
pom.xml
@@ -164,6 +164,11 @@
|
||||
<artifactId>flyway-mysql</artifactId>
|
||||
<version>${flyway.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.talanlabs</groupId>
|
||||
<artifactId>avatar-generator</artifactId>
|
||||
<version>1.1.0</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
|
||||
@@ -6,7 +6,7 @@ import org.springframework.web.bind.annotation.RestController
|
||||
import top.fatweb.api.converter.UserConverter
|
||||
import top.fatweb.api.entity.common.ResponseResult
|
||||
import top.fatweb.api.service.permission.IUserService
|
||||
import top.fatweb.api.vo.authentication.UserInfoVo
|
||||
import top.fatweb.api.vo.authentication.UserWithInfoVo
|
||||
|
||||
/**
|
||||
* <p>
|
||||
@@ -22,7 +22,7 @@ class UserController(
|
||||
private val userService: IUserService
|
||||
) {
|
||||
@GetMapping("info")
|
||||
fun getInfo(): ResponseResult<UserInfoVo> {
|
||||
fun getInfo(): ResponseResult<UserWithInfoVo> {
|
||||
userService.getInfo()?.let {
|
||||
return ResponseResult.databaseSuccess(data = UserConverter.userToUserInfoVo(it))
|
||||
} ?: let { return ResponseResult.databaseFail() }
|
||||
|
||||
@@ -14,7 +14,7 @@ object UserConverter {
|
||||
return user
|
||||
}
|
||||
|
||||
fun userToUserInfoVo(user: User) = UserInfoVo(
|
||||
fun userToUserInfoVo(user: User) = UserWithInfoVo(
|
||||
id = user.id,
|
||||
username = user.username,
|
||||
locking = user.locking?.let { it == 1 },
|
||||
|
||||
62
src/main/kotlin/top/fatweb/api/entity/permission/UserInfo.kt
Normal file
62
src/main/kotlin/top/fatweb/api/entity/permission/UserInfo.kt
Normal file
@@ -0,0 +1,62 @@
|
||||
package top.fatweb.api.entity.permission
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.*
|
||||
import java.io.Serializable
|
||||
import java.time.LocalDateTime
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 用户信息表
|
||||
* </p>
|
||||
*
|
||||
* @author FatttSnake
|
||||
* @since 2023-10-30
|
||||
*/
|
||||
@TableName("t_user_info")
|
||||
class UserInfo : Serializable {
|
||||
|
||||
@TableId("id")
|
||||
var id: Long? = null
|
||||
|
||||
/**
|
||||
* 昵称
|
||||
*/
|
||||
@TableField("nick_name")
|
||||
var nickName: String? = null
|
||||
|
||||
/**
|
||||
* 头像
|
||||
*/
|
||||
@TableField("avatar")
|
||||
var avatar: String? = null
|
||||
|
||||
/**
|
||||
* 邮箱
|
||||
*/
|
||||
@TableField("email")
|
||||
var email: String? = null
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@TableField("create_time", fill = FieldFill.INSERT)
|
||||
var createTime: LocalDateTime? = null
|
||||
|
||||
/**
|
||||
* 修改时间
|
||||
*/
|
||||
@TableField("update_time", fill = FieldFill.INSERT_UPDATE)
|
||||
var updateTime: LocalDateTime? = null
|
||||
|
||||
@TableField("deleted")
|
||||
@TableLogic
|
||||
var deleted: Long? = null
|
||||
|
||||
@TableField("version")
|
||||
@Version
|
||||
var version: Int? = null
|
||||
|
||||
override fun toString(): String {
|
||||
return "UserInfo(id=$id, nickName=$nickName, avatar=$avatar, email=$email, createTime=$createTime, updateTime=$updateTime, deleted=$deleted, version=$version)"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
package top.fatweb.api.handler
|
||||
|
||||
import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler
|
||||
import org.apache.ibatis.reflection.MetaObject
|
||||
import org.springframework.stereotype.Component
|
||||
import java.time.LocalDateTime
|
||||
import java.time.ZoneOffset
|
||||
|
||||
@Component
|
||||
class DataMetaObjectHandler : MetaObjectHandler {
|
||||
override fun insertFill(metaObject: MetaObject?) {
|
||||
this.strictInsertFill(metaObject, "createTime", LocalDateTime::class.java, LocalDateTime.now(ZoneOffset.UTC))
|
||||
this.strictInsertFill(metaObject, "updateTime", LocalDateTime::class.java, LocalDateTime.now(ZoneOffset.UTC))
|
||||
}
|
||||
|
||||
override fun updateFill(metaObject: MetaObject?) {
|
||||
this.strictUpdateFill(metaObject, "updateTime", LocalDateTime::class.java, LocalDateTime.now(ZoneOffset.UTC))
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package top.fatweb.api.mapper.permission
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper
|
||||
import org.apache.ibatis.annotations.Mapper
|
||||
import top.fatweb.api.entity.permission.UserInfo
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 用户信息表 Mapper 接口
|
||||
* </p>
|
||||
*
|
||||
* @author FatttSnake
|
||||
* @since 2023-10-30
|
||||
*/
|
||||
@Mapper
|
||||
interface UserInfoMapper : BaseMapper<UserInfo>
|
||||
@@ -0,0 +1,14 @@
|
||||
package top.fatweb.api.service.permission
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService
|
||||
import top.fatweb.api.entity.permission.UserInfo
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 用户信息表 服务类
|
||||
* </p>
|
||||
*
|
||||
* @author FatttSnake
|
||||
* @since 2023-10-30
|
||||
*/
|
||||
interface IUserInfoService : IService<UserInfo>
|
||||
@@ -0,0 +1,18 @@
|
||||
package top.fatweb.api.service.permission.impl
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
|
||||
import org.springframework.stereotype.Service
|
||||
import top.fatweb.api.entity.permission.UserInfo
|
||||
import top.fatweb.api.mapper.permission.UserInfoMapper
|
||||
import top.fatweb.api.service.permission.IUserInfoService
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 用户信息表 服务实现类
|
||||
* </p>
|
||||
*
|
||||
* @author FatttSnake
|
||||
* @since 2023-10-30
|
||||
*/
|
||||
@Service
|
||||
class UserInfoServiceImpl : ServiceImpl<UserInfoMapper, UserInfo>(), IUserInfoService
|
||||
@@ -1,10 +1,13 @@
|
||||
package top.fatweb.api.vo.authentication
|
||||
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize
|
||||
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer
|
||||
import io.swagger.v3.oas.annotations.media.Schema
|
||||
import java.time.LocalDateTime
|
||||
|
||||
@Schema(description = "获取用户信息返回参数")
|
||||
data class UserInfoVo(
|
||||
data class UserWithInfoVo(
|
||||
@JsonSerialize(using = ToStringSerializer::class)
|
||||
val id: Long?,
|
||||
|
||||
@Schema(description = "用户名", example = "User")
|
||||
@@ -0,0 +1,13 @@
|
||||
drop table if exists t_user_info;
|
||||
|
||||
create table if not exists t_user_info
|
||||
(
|
||||
id bigint not null primary key,
|
||||
nick_name varchar(50) null comment '昵称',
|
||||
avatar varchar(500) null comment '头像',
|
||||
email varchar(100) null comment '邮箱',
|
||||
create_time datetime not null default (utc_timestamp()) comment '创建时间',
|
||||
update_time datetime not null default (utc_timestamp()) comment '修改时间',
|
||||
deleted bigint not null default 0,
|
||||
version int not null default 0
|
||||
) comment '用户信息表';
|
||||
5
src/main/resources/mapper/permission/UserInfoMapper.xml
Normal file
5
src/main/resources/mapper/permission/UserInfoMapper.xml
Normal file
@@ -0,0 +1,5 @@
|
||||
<?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="top.fatweb.api.mapper.permission.UserInfoMapper">
|
||||
|
||||
</mapper>
|
||||
Reference in New Issue
Block a user