From 3da5260ddd136314879b16c3156ed591ca274dcb Mon Sep 17 00:00:00 2001 From: FatttSnake Date: Fri, 19 Jan 2024 18:27:34 +0800 Subject: [PATCH] Add enable field to ToolBase and ToolTemplate --- .../api/controller/tool/BaseController.kt | 5 +++ .../api/converter/tool/ToolBaseConverter.kt | 14 ++++++- .../converter/tool/ToolTemplateConverter.kt | 3 +- .../fatweb/oxygen/api/entity/tool/ToolBase.kt | 9 ++++ .../oxygen/api/entity/tool/ToolTemplate.kt | 9 ++++ .../oxygen/api/param/tool/ToolBaseAddParam.kt | 9 ++-- .../api/param/tool/ToolBaseUpdateParam.kt | 4 +- .../api/param/tool/ToolTemplateAddParam.kt | 4 +- .../api/param/tool/ToolTemplateUpdateParam.kt | 4 +- .../api/service/tool/IToolBaseService.kt | 2 + .../service/tool/impl/ToolBaseServiceImpl.kt | 3 ++ .../tool/impl/ToolTemplateServiceImpl.kt | 2 + .../fatweb/oxygen/api/vo/tool/ToolBaseVo.kt | 2 + .../oxygen/api/vo/tool/ToolTemplateVo.kt | 2 + ..._240119__Add_table_'t_b_tool_template'.sql | 1 + ..._0_0_240120__Add_table_'t_b_tool_base'.sql | 1 + .../resources/mapper/tool/ToolBaseMapper.xml | 42 ++++++++++--------- .../mapper/tool/ToolTemplateMapper.xml | 3 ++ 18 files changed, 90 insertions(+), 29 deletions(-) diff --git a/src/main/kotlin/top/fatweb/oxygen/api/controller/tool/BaseController.kt b/src/main/kotlin/top/fatweb/oxygen/api/controller/tool/BaseController.kt index 5d14167..48d5cb4 100644 --- a/src/main/kotlin/top/fatweb/oxygen/api/controller/tool/BaseController.kt +++ b/src/main/kotlin/top/fatweb/oxygen/api/controller/tool/BaseController.kt @@ -25,6 +25,11 @@ class BaseController( fun get(): ResponseResult> = ResponseResult.databaseSuccess(data = toolBaseService.get()) + @Operation(summary = "获取基板列表") + @GetMapping("/list") + fun getList(): ResponseResult> = + ResponseResult.databaseSuccess(data = toolBaseService.getList()) + @Operation(summary = "新增基板") @PostMapping fun add(@RequestBody @Valid toolBaseAddParam: ToolBaseAddParam): ResponseResult = diff --git a/src/main/kotlin/top/fatweb/oxygen/api/converter/tool/ToolBaseConverter.kt b/src/main/kotlin/top/fatweb/oxygen/api/converter/tool/ToolBaseConverter.kt index ba16e30..923a315 100644 --- a/src/main/kotlin/top/fatweb/oxygen/api/converter/tool/ToolBaseConverter.kt +++ b/src/main/kotlin/top/fatweb/oxygen/api/converter/tool/ToolBaseConverter.kt @@ -2,6 +2,7 @@ package top.fatweb.oxygen.api.converter.tool import top.fatweb.oxygen.api.entity.tool.ToolBase import top.fatweb.oxygen.api.vo.tool.ToolBaseVo +import top.fatweb.oxygen.api.vo.tool.ToolDataVo object ToolBaseConverter { fun toolBaseToToolBaseVo(toolBase: ToolBase) = ToolBaseVo( @@ -10,6 +11,17 @@ object ToolBaseConverter { source = toolBase.source?.let(ToolDataConverter::toolDataToToolDataVo), dist = toolBase.dist?.let(ToolDataConverter::toolDataToToolDataVo), createTime = toolBase.createTime, - updateTime = toolBase.updateTime + updateTime = toolBase.updateTime, + enable = toolBase.enable == 1 + ) + + fun toolBaseToToolBaseVoByGetList(toolBase: ToolBase) = ToolBaseVo( + id = toolBase.id, + name = toolBase.name, + source = ToolDataVo(id = toolBase.sourceId, data = null, createTime = null, updateTime = null), + dist = ToolDataVo(id = toolBase.distId, data = null, createTime = null, updateTime = null), + createTime = toolBase.createTime, + updateTime = toolBase.updateTime, + enable = toolBase.enable == 1 ) } \ No newline at end of file diff --git a/src/main/kotlin/top/fatweb/oxygen/api/converter/tool/ToolTemplateConverter.kt b/src/main/kotlin/top/fatweb/oxygen/api/converter/tool/ToolTemplateConverter.kt index 3a665e9..391a857 100644 --- a/src/main/kotlin/top/fatweb/oxygen/api/converter/tool/ToolTemplateConverter.kt +++ b/src/main/kotlin/top/fatweb/oxygen/api/converter/tool/ToolTemplateConverter.kt @@ -12,6 +12,7 @@ object ToolTemplateConverter { source = toolTemplate.source?.let(ToolDataConverter::toolDataToToolDataVo), dist = toolTemplate.dist?.let(ToolDataConverter::toolDataToToolDataVo), createTime = toolTemplate.createTime, - updateTime = toolTemplate.updateTime + updateTime = toolTemplate.updateTime, + enable = toolTemplate.enable == 1 ) } \ No newline at end of file diff --git a/src/main/kotlin/top/fatweb/oxygen/api/entity/tool/ToolBase.kt b/src/main/kotlin/top/fatweb/oxygen/api/entity/tool/ToolBase.kt index ba9b5b5..c74bc40 100644 --- a/src/main/kotlin/top/fatweb/oxygen/api/entity/tool/ToolBase.kt +++ b/src/main/kotlin/top/fatweb/oxygen/api/entity/tool/ToolBase.kt @@ -47,6 +47,15 @@ class ToolBase { @TableField("dist_id") var distId: Long? = null + /** + * Enable + * + * @author FatttSnake, fatttsnake@gmail.com + * @since 1.0.0 + */ + @TableField("enable") + var enable: Int? = null + /** * Create time * diff --git a/src/main/kotlin/top/fatweb/oxygen/api/entity/tool/ToolTemplate.kt b/src/main/kotlin/top/fatweb/oxygen/api/entity/tool/ToolTemplate.kt index 7d47149..ad1a41e 100644 --- a/src/main/kotlin/top/fatweb/oxygen/api/entity/tool/ToolTemplate.kt +++ b/src/main/kotlin/top/fatweb/oxygen/api/entity/tool/ToolTemplate.kt @@ -65,6 +65,15 @@ class ToolTemplate { @TableField("dist_id") var distId: Long? = null + /** + * Enable + * + * @author FatttSnake, fatttsnake@gmail.com + * @since 1.0.0 + */ + @TableField("enable") + var enable: Int? = null + /** * Create time * diff --git a/src/main/kotlin/top/fatweb/oxygen/api/param/tool/ToolBaseAddParam.kt b/src/main/kotlin/top/fatweb/oxygen/api/param/tool/ToolBaseAddParam.kt index 77f4bfa..b0962b9 100644 --- a/src/main/kotlin/top/fatweb/oxygen/api/param/tool/ToolBaseAddParam.kt +++ b/src/main/kotlin/top/fatweb/oxygen/api/param/tool/ToolBaseAddParam.kt @@ -1,15 +1,14 @@ package top.fatweb.oxygen.api.param.tool import jakarta.validation.constraints.NotBlank -import jakarta.validation.constraints.NotNull data class ToolBaseAddParam( @field: NotBlank(message = "Name can not be blank") val name: String?, - @field: NotNull(message = "Source can not be null") - val source: String?, + val source: String = "", - @field:NotNull(message = "Dist can not be null") - val dist: String? + val dist: String = "", + + val enable: Boolean = true ) diff --git a/src/main/kotlin/top/fatweb/oxygen/api/param/tool/ToolBaseUpdateParam.kt b/src/main/kotlin/top/fatweb/oxygen/api/param/tool/ToolBaseUpdateParam.kt index 6287b11..cbd1918 100644 --- a/src/main/kotlin/top/fatweb/oxygen/api/param/tool/ToolBaseUpdateParam.kt +++ b/src/main/kotlin/top/fatweb/oxygen/api/param/tool/ToolBaseUpdateParam.kt @@ -10,5 +10,7 @@ data class ToolBaseUpdateParam( val source: String?, - val dist: String? + val dist: String?, + + val enable: Boolean? ) diff --git a/src/main/kotlin/top/fatweb/oxygen/api/param/tool/ToolTemplateAddParam.kt b/src/main/kotlin/top/fatweb/oxygen/api/param/tool/ToolTemplateAddParam.kt index 49839d0..ad96aec 100644 --- a/src/main/kotlin/top/fatweb/oxygen/api/param/tool/ToolTemplateAddParam.kt +++ b/src/main/kotlin/top/fatweb/oxygen/api/param/tool/ToolTemplateAddParam.kt @@ -19,5 +19,7 @@ data class ToolTemplateAddParam( val source: String?, @field:NotNull(message = "Dist can not be null") - val dist: String? + val dist: String?, + + val enable: Boolean = true ) diff --git a/src/main/kotlin/top/fatweb/oxygen/api/param/tool/ToolTemplateUpdateParam.kt b/src/main/kotlin/top/fatweb/oxygen/api/param/tool/ToolTemplateUpdateParam.kt index d170e3e..1d90f3f 100644 --- a/src/main/kotlin/top/fatweb/oxygen/api/param/tool/ToolTemplateUpdateParam.kt +++ b/src/main/kotlin/top/fatweb/oxygen/api/param/tool/ToolTemplateUpdateParam.kt @@ -16,5 +16,7 @@ data class ToolTemplateUpdateParam( val source: String?, - val dist: String? + val dist: String?, + + val enable: Boolean? ) diff --git a/src/main/kotlin/top/fatweb/oxygen/api/service/tool/IToolBaseService.kt b/src/main/kotlin/top/fatweb/oxygen/api/service/tool/IToolBaseService.kt index f4e9fbb..894ad43 100644 --- a/src/main/kotlin/top/fatweb/oxygen/api/service/tool/IToolBaseService.kt +++ b/src/main/kotlin/top/fatweb/oxygen/api/service/tool/IToolBaseService.kt @@ -19,6 +19,8 @@ interface IToolBaseService : IService { fun get(): List + fun getList(): List + fun add(toolBaseAddParam: ToolBaseAddParam): ToolBaseVo fun update(toolBaseUpdateParam: ToolBaseUpdateParam): ToolBaseVo diff --git a/src/main/kotlin/top/fatweb/oxygen/api/service/tool/impl/ToolBaseServiceImpl.kt b/src/main/kotlin/top/fatweb/oxygen/api/service/tool/impl/ToolBaseServiceImpl.kt index 445c830..ea68d32 100644 --- a/src/main/kotlin/top/fatweb/oxygen/api/service/tool/impl/ToolBaseServiceImpl.kt +++ b/src/main/kotlin/top/fatweb/oxygen/api/service/tool/impl/ToolBaseServiceImpl.kt @@ -32,6 +32,7 @@ class ToolBaseServiceImpl( baseMapper.selectOne(id)?.let(ToolBaseConverter::toolBaseToToolBaseVo) ?: throw NoRecordFoundException() override fun get(): List = baseMapper.selectList().map(ToolBaseConverter::toolBaseToToolBaseVo) + override fun getList(): List = this.list().map(ToolBaseConverter::toolBaseToToolBaseVoByGetList) @Transactional override fun add(toolBaseAddParam: ToolBaseAddParam): ToolBaseVo { @@ -47,6 +48,7 @@ class ToolBaseServiceImpl( distId = newDist.id source = newSource dist = newDist + enable = if (toolBaseAddParam.enable) 1 else 0 } this.save(toolBase) @@ -71,6 +73,7 @@ class ToolBaseServiceImpl( this.updateById(ToolBase().apply { id = toolBaseUpdateParam.id name = toolBaseUpdateParam.name + enable = toolBaseUpdateParam.enable?.let { if (it) 1 else 0 } }) return this.getOne(toolBase.id!!) diff --git a/src/main/kotlin/top/fatweb/oxygen/api/service/tool/impl/ToolTemplateServiceImpl.kt b/src/main/kotlin/top/fatweb/oxygen/api/service/tool/impl/ToolTemplateServiceImpl.kt index 872b24a..229a46a 100644 --- a/src/main/kotlin/top/fatweb/oxygen/api/service/tool/impl/ToolTemplateServiceImpl.kt +++ b/src/main/kotlin/top/fatweb/oxygen/api/service/tool/impl/ToolTemplateServiceImpl.kt @@ -55,6 +55,7 @@ class ToolTemplateServiceImpl( distId = newDist.id source = newSource dist = newDist + enable = if (toolTemplateAddParam.enable) 1 else 0 } this.save(toolTemplate) @@ -82,6 +83,7 @@ class ToolTemplateServiceImpl( name = toolTemplateUpdateParam.name ver = toolTemplateUpdateParam.ver baseId = toolTemplateUpdateParam.baseId + enable = toolTemplateUpdateParam.enable?.let { if (it) 1 else 0 } }) return this.getOne(toolTemplate.id!!) diff --git a/src/main/kotlin/top/fatweb/oxygen/api/vo/tool/ToolBaseVo.kt b/src/main/kotlin/top/fatweb/oxygen/api/vo/tool/ToolBaseVo.kt index cc92560..4cc2f65 100644 --- a/src/main/kotlin/top/fatweb/oxygen/api/vo/tool/ToolBaseVo.kt +++ b/src/main/kotlin/top/fatweb/oxygen/api/vo/tool/ToolBaseVo.kt @@ -14,6 +14,8 @@ data class ToolBaseVo( val dist: ToolDataVo?, + val enable: Boolean?, + val createTime: LocalDateTime?, val updateTime: LocalDateTime? diff --git a/src/main/kotlin/top/fatweb/oxygen/api/vo/tool/ToolTemplateVo.kt b/src/main/kotlin/top/fatweb/oxygen/api/vo/tool/ToolTemplateVo.kt index cce4be4..235d5ae 100644 --- a/src/main/kotlin/top/fatweb/oxygen/api/vo/tool/ToolTemplateVo.kt +++ b/src/main/kotlin/top/fatweb/oxygen/api/vo/tool/ToolTemplateVo.kt @@ -19,6 +19,8 @@ data class ToolTemplateVo( val dist: ToolDataVo?, + val enable: Boolean?, + val createTime: LocalDateTime?, val updateTime: LocalDateTime? diff --git a/src/main/resources/db/migration/master/V1_0_0_240119__Add_table_'t_b_tool_template'.sql b/src/main/resources/db/migration/master/V1_0_0_240119__Add_table_'t_b_tool_template'.sql index d5317b0..b5b6451 100644 --- a/src/main/resources/db/migration/master/V1_0_0_240119__Add_table_'t_b_tool_template'.sql +++ b/src/main/resources/db/migration/master/V1_0_0_240119__Add_table_'t_b_tool_template'.sql @@ -8,6 +8,7 @@ create table if not exists t_b_tool_template 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 '修改时间', deleted bigint not null default 0, diff --git a/src/main/resources/db/migration/master/V1_0_0_240120__Add_table_'t_b_tool_base'.sql b/src/main/resources/db/migration/master/V1_0_0_240120__Add_table_'t_b_tool_base'.sql index d6e1c17..4d02b98 100644 --- a/src/main/resources/db/migration/master/V1_0_0_240120__Add_table_'t_b_tool_base'.sql +++ b/src/main/resources/db/migration/master/V1_0_0_240120__Add_table_'t_b_tool_base'.sql @@ -6,6 +6,7 @@ create table if not exists t_b_tool_base name varchar(20) not null comment '基板名', 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 '修改时间', deleted bigint not null default 0, diff --git a/src/main/resources/mapper/tool/ToolBaseMapper.xml b/src/main/resources/mapper/tool/ToolBaseMapper.xml index d940e45..d6a4a5f 100644 --- a/src/main/resources/mapper/tool/ToolBaseMapper.xml +++ b/src/main/resources/mapper/tool/ToolBaseMapper.xml @@ -6,6 +6,7 @@ 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, @@ -29,27 +30,29 @@ @@ -58,6 +61,7 @@ + diff --git a/src/main/resources/mapper/tool/ToolTemplateMapper.xml b/src/main/resources/mapper/tool/ToolTemplateMapper.xml index cd73755..3b7ca5c 100644 --- a/src/main/resources/mapper/tool/ToolTemplateMapper.xml +++ b/src/main/resources/mapper/tool/ToolTemplateMapper.xml @@ -8,6 +8,7 @@ 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, @@ -38,6 +39,7 @@ 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, @@ -67,6 +69,7 @@ +