Complete core functions #9
@@ -25,11 +25,6 @@ class BaseController(
|
||||
fun get(): ResponseResult<List<ToolBaseVo>> =
|
||||
ResponseResult.databaseSuccess(data = toolBaseService.get())
|
||||
|
||||
@Operation(summary = "获取基板列表")
|
||||
@GetMapping("/list")
|
||||
fun getList(): ResponseResult<List<ToolBaseVo>> =
|
||||
ResponseResult.databaseSuccess(data = toolBaseService.getList())
|
||||
|
||||
@Operation(summary = "新增基板")
|
||||
@PostMapping
|
||||
fun add(@RequestBody @Valid toolBaseAddParam: ToolBaseAddParam): ResponseResult<ToolBaseVo> =
|
||||
|
||||
@@ -7,10 +7,8 @@ object ToolTemplateConverter {
|
||||
fun toolTemplateToToolTemplateVo(toolTemplate: ToolTemplate) = ToolTemplateVo(
|
||||
id = toolTemplate.id,
|
||||
name = toolTemplate.name,
|
||||
ver = toolTemplate.ver,
|
||||
baseId = toolTemplate.baseId,
|
||||
base = toolTemplate.base?.let(ToolBaseConverter::toolBaseToToolBaseVo),
|
||||
source = toolTemplate.source?.let(ToolDataConverter::toolDataToToolDataVo),
|
||||
dist = toolTemplate.dist?.let(ToolDataConverter::toolDataToToolDataVo),
|
||||
createTime = toolTemplate.createTime,
|
||||
updateTime = toolTemplate.updateTime,
|
||||
enable = toolTemplate.enable == 1
|
||||
|
||||
@@ -29,15 +29,6 @@ class ToolTemplate {
|
||||
@TableField("name")
|
||||
var name: String? = null
|
||||
|
||||
/**
|
||||
* ver
|
||||
*
|
||||
* @author FatttSnake, fatttsnake@gmail.com
|
||||
* @since 1.0.0
|
||||
*/
|
||||
@TableField("ver")
|
||||
var ver: String? = null
|
||||
|
||||
/**
|
||||
* Base ID
|
||||
*
|
||||
@@ -56,15 +47,6 @@ class ToolTemplate {
|
||||
@TableField("source_id")
|
||||
var sourceId: Long? = null
|
||||
|
||||
/**
|
||||
* Dist ID
|
||||
*
|
||||
* @author FatttSnake, fatttsnake@gmail.com
|
||||
* @since 1.0.0
|
||||
*/
|
||||
@TableField("dist_id")
|
||||
var distId: Long? = null
|
||||
|
||||
/**
|
||||
* Enable
|
||||
*
|
||||
@@ -124,15 +106,15 @@ class ToolTemplate {
|
||||
var source: ToolData? = null
|
||||
|
||||
/**
|
||||
* Dist
|
||||
* Base
|
||||
*
|
||||
* @author FatttSnake, fatttsnake@gmail.com
|
||||
* @since 1.0.0
|
||||
*/
|
||||
@TableField(exist = false)
|
||||
var dist: ToolData? = null
|
||||
var base: ToolBase? = null
|
||||
|
||||
override fun toString(): String {
|
||||
return "ToolTemplate(id=$id, name=$name, ver=$ver, baseId=$baseId, sourceId=$sourceId, distId=$distId, createTime=$createTime, updateTime=$updateTime, deleted=$deleted, version=$version)"
|
||||
return "ToolTemplate(id=$id, name=$name, baseId=$baseId, sourceId=$sourceId, enable=$enable, createTime=$createTime, updateTime=$updateTime, deleted=$deleted, version=$version, source=$source, base=$base)"
|
||||
}
|
||||
}
|
||||
@@ -16,6 +16,4 @@ import top.fatweb.oxygen.api.entity.tool.ToolBase
|
||||
@Mapper
|
||||
interface ToolBaseMapper : BaseMapper<ToolBase> {
|
||||
fun selectOne(@Param("id") id: Long): ToolBase?
|
||||
|
||||
fun selectList(): List<ToolBase>
|
||||
}
|
||||
@@ -2,24 +2,15 @@ package top.fatweb.oxygen.api.param.tool
|
||||
|
||||
import jakarta.validation.constraints.NotBlank
|
||||
import jakarta.validation.constraints.NotNull
|
||||
import jakarta.validation.constraints.Pattern
|
||||
|
||||
data class ToolTemplateAddParam(
|
||||
@field: NotBlank(message = "Name can not be blank")
|
||||
val name: String?,
|
||||
|
||||
@field: NotBlank(message = "Ver can not be blank")
|
||||
@field: Pattern(regexp = "^\\d+\\.\\d+\\.\\d+\$", message = "Ver can only match '<number>.<number>.<number>'")
|
||||
val ver: String?,
|
||||
|
||||
@field: NotNull(message = "BaseId can not be null")
|
||||
val baseId: Long? = null,
|
||||
|
||||
@field: NotNull(message = "Source can not be null")
|
||||
val source: String?,
|
||||
|
||||
@field:NotNull(message = "Dist can not be null")
|
||||
val dist: String?,
|
||||
val source: String = "",
|
||||
|
||||
val enable: Boolean = true
|
||||
)
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
package top.fatweb.oxygen.api.param.tool
|
||||
|
||||
import jakarta.validation.constraints.NotNull
|
||||
import jakarta.validation.constraints.Pattern
|
||||
|
||||
data class ToolTemplateUpdateParam(
|
||||
@field: NotNull(message = "ID can not be null")
|
||||
@@ -9,14 +8,9 @@ data class ToolTemplateUpdateParam(
|
||||
|
||||
val name: String?,
|
||||
|
||||
@field: Pattern(regexp = "^\\d+\\.\\d+\\.\\d+\$", message = "Ver can only match '<number>.<number>.<number>'")
|
||||
val ver: String?,
|
||||
|
||||
val baseId: Long?,
|
||||
|
||||
val source: String?,
|
||||
|
||||
val dist: String?,
|
||||
|
||||
val enable: Boolean?
|
||||
)
|
||||
|
||||
@@ -19,8 +19,6 @@ interface IToolBaseService : IService<ToolBase> {
|
||||
|
||||
fun get(): List<ToolBaseVo>
|
||||
|
||||
fun getList(): List<ToolBaseVo>
|
||||
|
||||
fun add(toolBaseAddParam: ToolBaseAddParam): ToolBaseVo
|
||||
|
||||
fun update(toolBaseUpdateParam: ToolBaseUpdateParam): ToolBaseVo
|
||||
|
||||
@@ -31,8 +31,7 @@ class ToolBaseServiceImpl(
|
||||
override fun getOne(id: Long): ToolBaseVo =
|
||||
baseMapper.selectOne(id)?.let(ToolBaseConverter::toolBaseToToolBaseVo) ?: throw NoRecordFoundException()
|
||||
|
||||
override fun get(): List<ToolBaseVo> = baseMapper.selectList().map(ToolBaseConverter::toolBaseToToolBaseVo)
|
||||
override fun getList(): List<ToolBaseVo> = this.list().map(ToolBaseConverter::toolBaseToToolBaseVoByGetList)
|
||||
override fun get(): List<ToolBaseVo> = this.list().map(ToolBaseConverter::toolBaseToToolBaseVoByGetList)
|
||||
|
||||
@Transactional
|
||||
override fun add(toolBaseAddParam: ToolBaseAddParam): ToolBaseVo {
|
||||
|
||||
@@ -42,19 +42,14 @@ class ToolTemplateServiceImpl(
|
||||
toolBaseService.getOne(toolTemplateAddParam.baseId!!)
|
||||
|
||||
val newSource = ToolData().apply { data = toolTemplateAddParam.source }
|
||||
val newDist = ToolData().apply { data = toolTemplateAddParam.dist }
|
||||
|
||||
toolDataService.save(newSource)
|
||||
toolDataService.save(newDist)
|
||||
|
||||
val toolTemplate = ToolTemplate().apply {
|
||||
name = toolTemplateAddParam.name
|
||||
ver = toolTemplateAddParam.ver
|
||||
baseId = toolTemplateAddParam.baseId
|
||||
sourceId = newSource.id
|
||||
distId = newDist.id
|
||||
source = newSource
|
||||
dist = newDist
|
||||
enable = if (toolTemplateAddParam.enable) 1 else 0
|
||||
}
|
||||
|
||||
@@ -73,15 +68,9 @@ class ToolTemplateServiceImpl(
|
||||
data = toolTemplateUpdateParam.source
|
||||
})
|
||||
|
||||
toolDataService.updateById(ToolData().apply {
|
||||
id = toolTemplate.distId
|
||||
data = toolTemplateUpdateParam.dist
|
||||
})
|
||||
|
||||
this.updateById(ToolTemplate().apply {
|
||||
id = toolTemplateUpdateParam.id
|
||||
name = toolTemplateUpdateParam.name
|
||||
ver = toolTemplateUpdateParam.ver
|
||||
baseId = toolTemplateUpdateParam.baseId
|
||||
enable = toolTemplateUpdateParam.enable?.let { if (it) 1 else 0 }
|
||||
})
|
||||
@@ -93,7 +82,7 @@ class ToolTemplateServiceImpl(
|
||||
override fun delete(id: Long): Boolean {
|
||||
val toolTemplate = this.getById(id)
|
||||
|
||||
return toolDataService.removeBatchByIds(listOf(toolTemplate.sourceId, toolTemplate.distId))
|
||||
return toolDataService.removeById(toolTemplate.sourceId)
|
||||
&& this.removeById(id)
|
||||
}
|
||||
}
|
||||
@@ -10,15 +10,10 @@ data class ToolTemplateVo(
|
||||
|
||||
val name: String?,
|
||||
|
||||
val ver: String?,
|
||||
|
||||
@JsonSerialize(using = ToStringSerializer::class)
|
||||
val baseId: Long?,
|
||||
val base: ToolBaseVo?,
|
||||
|
||||
val source: ToolDataVo?,
|
||||
|
||||
val dist: ToolDataVo?,
|
||||
|
||||
val enable: Boolean?,
|
||||
|
||||
val createTime: LocalDateTime?,
|
||||
|
||||
@@ -4,10 +4,8 @@ create table if not exists t_b_tool_template
|
||||
(
|
||||
id bigint not null primary key,
|
||||
name varchar(40) not null comment '模板名',
|
||||
ver varchar(20) not null comment '版本',
|
||||
base_id bigint not null comment '基板 ID',
|
||||
source_id bigint not null comment '源码 ID',
|
||||
dist_id bigint not null comment '产物 ID',
|
||||
enable int not null default 1 comment '启用',
|
||||
create_time datetime not null default (utc_timestamp()) comment '创建时间',
|
||||
update_time datetime not null default (utc_timestamp()) comment '修改时间',
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<?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.oxygen.api.mapper.tool.ToolBaseMapper">
|
||||
<select id="selectOne" resultMap="toolBaseMap">
|
||||
<select id="selectOne" resultMap="toolBaseWithDataMap">
|
||||
select t_b_tool_base.id as tool_base_id,
|
||||
t_b_tool_base.name as tool_base_name,
|
||||
t_b_tool_base.source_id as tool_base_source_id,
|
||||
@@ -29,33 +29,6 @@
|
||||
and t_b_tool_base.id = #{id}
|
||||
</select>
|
||||
|
||||
<select id="selectList" resultMap="toolBaseMap">
|
||||
select t_b_tool_base.id as tool_base_id,
|
||||
t_b_tool_base.name as tool_base_name,
|
||||
t_b_tool_base.source_id as tool_base_source_id,
|
||||
t_b_tool_base.dist_id as tool_base_dist_id,
|
||||
t_b_tool_base.enable as tool_base_enable,
|
||||
t_b_tool_base.create_time as tool_base_create_time,
|
||||
t_b_tool_base.update_time as tool_base_update_time,
|
||||
t_b_tool_base.deleted as tool_base_deleted,
|
||||
t_b_tool_base.version as tool_base_version,
|
||||
tbtds.data as tool_base_source_data,
|
||||
tbtds.create_time as tool_base_source_create_time,
|
||||
tbtds.update_time as tool_base_source_update_time,
|
||||
tbtds.deleted as tool_base_source_delete,
|
||||
tbtds.version as tool_base_source_version,
|
||||
tbtdd.data as tool_base_dist_data,
|
||||
tbtdd.create_time as tool_base_dist_create_time,
|
||||
tbtdd.update_time as tool_base_dist_update_time,
|
||||
tbtdd.deleted as tool_base_dist_delete,
|
||||
tbtdd.version as tool_base_dist_version
|
||||
from t_b_tool_base
|
||||
left join (select * from t_b_tool_data where deleted = 0) as tbtds
|
||||
on tbtds.id = t_b_tool_base.source_id
|
||||
left join (select * from t_b_tool_data where deleted = 0) as tbtdd on tbtdd.id = t_b_tool_base.dist_id
|
||||
where t_b_tool_base.deleted = 0
|
||||
</select>
|
||||
|
||||
<resultMap id="toolBaseMap" type="toolBase">
|
||||
<id property="id" column="tool_base_id"/>
|
||||
<result property="name" column="tool_base_name"/>
|
||||
@@ -66,6 +39,9 @@
|
||||
<result property="updateTime" column="tool_base_update_time"/>
|
||||
<result property="deleted" column="tool_base_deleted"/>
|
||||
<result property="version" column="tool_base_version"/>
|
||||
</resultMap>
|
||||
|
||||
<resultMap id="toolBaseWithDataMap" extends="toolBaseMap" type="toolBase">
|
||||
<association property="source">
|
||||
<id property="id" column="tool_base_source_id"/>
|
||||
<result property="data" column="tool_base_source_data"/>
|
||||
|
||||
@@ -1,13 +1,11 @@
|
||||
<?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.oxygen.api.mapper.tool.ToolTemplateMapper">
|
||||
<select id="selectOne" resultMap="toolTemplateMap">
|
||||
<select id="selectOne" resultMap="toolTemplateWithDataMap">
|
||||
select t_b_tool_template.id as tool_template_id,
|
||||
t_b_tool_template.name as tool_template_name,
|
||||
t_b_tool_template.ver as tool_template_ver,
|
||||
t_b_tool_template.base_id as tool_template_base_id,
|
||||
t_b_tool_template.source_id as tool_template_source_id,
|
||||
t_b_tool_template.dist_id as tool_template_dist_id,
|
||||
t_b_tool_template.enable as tool_template_enable,
|
||||
t_b_tool_template.create_time as tool_template_create_time,
|
||||
t_b_tool_template.update_time as tool_template_update_time,
|
||||
@@ -18,16 +16,13 @@
|
||||
tbtds.update_time as tool_template_source_update_time,
|
||||
tbtds.deleted as tool_template_source_delete,
|
||||
tbtds.version as tool_template_source_version,
|
||||
tbtdd.data as tool_template_dist_data,
|
||||
tbtdd.create_time as tool_template_dist_create_time,
|
||||
tbtdd.update_time as tool_template_dist_update_time,
|
||||
tbtdd.deleted as tool_template_dist_delete,
|
||||
tbtdd.version as tool_template_dist_version
|
||||
tbtb.name as tool_template_base_name,
|
||||
tbtb.enable as tool_template_base_enable
|
||||
from t_b_tool_template
|
||||
left join (select * from t_b_tool_data where deleted = 0) as tbtds
|
||||
on tbtds.id = t_b_tool_template.source_id
|
||||
left join (select * from t_b_tool_data where deleted = 0) as tbtdd
|
||||
on tbtdd.id = t_b_tool_template.dist_id
|
||||
left join (select * from t_b_tool_base where deleted = 0) as tbtb
|
||||
on tbtb.id = t_b_tool_template.base_id
|
||||
where t_b_tool_template.deleted = 0
|
||||
and t_b_tool_template.id = #{id}
|
||||
</select>
|
||||
@@ -35,45 +30,39 @@
|
||||
<select id="selectList" resultMap="toolTemplateMap">
|
||||
select t_b_tool_template.id as tool_template_id,
|
||||
t_b_tool_template.name as tool_template_name,
|
||||
t_b_tool_template.ver as tool_template_ver,
|
||||
t_b_tool_template.base_id as tool_template_base_id,
|
||||
t_b_tool_template.source_id as tool_template_source_id,
|
||||
t_b_tool_template.dist_id as tool_template_dist_id,
|
||||
t_b_tool_template.enable as tool_template_enable,
|
||||
t_b_tool_template.create_time as tool_template_create_time,
|
||||
t_b_tool_template.update_time as tool_template_update_time,
|
||||
t_b_tool_template.deleted as tool_template_deleted,
|
||||
t_b_tool_template.version as tool_template_version,
|
||||
tbtds.data as tool_template_source_data,
|
||||
tbtds.create_time as tool_template_source_create_time,
|
||||
tbtds.update_time as tool_template_source_update_time,
|
||||
tbtds.deleted as tool_template_source_delete,
|
||||
tbtds.version as tool_template_source_version,
|
||||
tbtdd.data as tool_template_dist_data,
|
||||
tbtdd.create_time as tool_template_dist_create_time,
|
||||
tbtdd.update_time as tool_template_dist_update_time,
|
||||
tbtdd.deleted as tool_template_dist_delete,
|
||||
tbtdd.version as tool_template_dist_version
|
||||
tbtb.name as tool_template_base_name,
|
||||
tbtb.enable as tool_template_base_enable
|
||||
from t_b_tool_template
|
||||
left join (select * from t_b_tool_data where deleted = 0) as tbtds
|
||||
on tbtds.id = t_b_tool_template.source_id
|
||||
left join (select * from t_b_tool_data where deleted = 0) as tbtdd
|
||||
on tbtdd.id = t_b_tool_template.dist_id
|
||||
left join (select * from t_b_tool_base where deleted = 0) as tbtb
|
||||
on tbtb.id = t_b_tool_template.base_id
|
||||
where t_b_tool_template.deleted = 0
|
||||
</select>
|
||||
|
||||
<resultMap id="toolTemplateMap" type="toolTemplate">
|
||||
<id property="id" column="tool_template_id"/>
|
||||
<result property="name" column="tool_template_name"/>
|
||||
<result property="ver" column="tool_template_ver"/>
|
||||
<result property="baseId" column="tool_template_base_id"/>
|
||||
<result property="sourceId" column="tool_template_source_id"/>
|
||||
<result property="distId" column="tool_template_dist_id"/>
|
||||
<result property="enable" column="tool_template_enable"/>
|
||||
<result property="createTime" column="tool_template_create_time"/>
|
||||
<result property="updateTime" column="tool_template_update_time"/>
|
||||
<result property="deleted" column="tool_template_deleted"/>
|
||||
<result property="version" column="tool_template_version"/>
|
||||
<association property="base">
|
||||
<id property="id" column="tool_template_base_id"/>
|
||||
<result property="name" column="tool_template_base_name"/>
|
||||
<result property="enable" column="tool_template_base_enable"/>
|
||||
</association>
|
||||
</resultMap>
|
||||
|
||||
<resultMap id="toolTemplateWithDataMap" type="toolTemplate" extends="toolTemplateMap">
|
||||
<association property="source">
|
||||
<id property="id" column="tool_template_source_id"/>
|
||||
<result property="data" column="tool_template_source_data"/>
|
||||
@@ -82,13 +71,5 @@
|
||||
<result property="deleted" column="tool_template_source_deleted"/>
|
||||
<result property="version" column="tool_template_source_version"/>
|
||||
</association>
|
||||
<association property="dist">
|
||||
<id property="id" column="tool_template_dist_id"/>
|
||||
<result property="data" column="tool_template_dist_data"/>
|
||||
<result property="createTime" column="tool_template_dist_create_time"/>
|
||||
<result property="updateTime" column="tool_template_dist_update_time"/>
|
||||
<result property="deleted" column="tool_template_dist_deleted"/>
|
||||
<result property="version" column="tool_template_dist_version"/>
|
||||
</association>
|
||||
</resultMap>
|
||||
</mapper>
|
||||
|
||||
Reference in New Issue
Block a user