(improvement)(headless) add TagObject logic (#829)

This commit is contained in:
daikon
2024-03-19 11:13:11 +08:00
committed by GitHub
parent 8733231976
commit 8994a6ddca
22 changed files with 641 additions and 6 deletions

View File

@@ -251,4 +251,23 @@ alter table s2_plugin change `view` data_set varchar(200);
alter table s2_data_set change view_detail data_set_detail text;
--20240311
alter table s2_data_set add column query_type varchar(100) DEFAULT NULL;
alter table s2_data_set add column query_type varchar(100) DEFAULT NULL;
--20240319
CREATE TABLE IF NOT EXISTS `s2_tag_object`
(
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`domain_id` bigint(20) DEFAULT NULL,
`name` varchar(255) NOT NULL COMMENT '名称',
`biz_name` varchar(255) NOT NULL COMMENT '英文名称',
`description` varchar(500) DEFAULT NULL COMMENT '描述',
`status` int(10) NOT NULL COMMENT '状态',
`sensitive_level` int(10) NOT NULL COMMENT '敏感级别',
`created_at` datetime NOT NULL COMMENT '创建时间',
`created_by` varchar(100) NOT NULL COMMENT '创建人',
`updated_at` datetime NULL COMMENT '更新时间',
`updated_by` varchar(100) NULL COMMENT '更新人',
`ext` text DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE = InnoDB
DEFAULT CHARSET = utf8 COMMENT ='标签表对象';

View File

@@ -120,6 +120,7 @@ CREATE TABLE IF NOT EXISTS `s2_model` (
`name` varchar(255) DEFAULT NULL , -- domain name
`biz_name` varchar(255) DEFAULT NULL , -- internal name
`domain_id` INT DEFAULT '0' , -- parent domain ID
`tag_object_id` INT DEFAULT '0' ,
`alias` varchar(255) DEFAULT NULL , -- internal name
`status` INT DEFAULT NULL,
`description` varchar(500) DEFAULT NULL ,
@@ -593,4 +594,21 @@ CREATE TABLE IF NOT EXISTS `s2_tag` (
`ext` LONGVARCHAR DEFAULT NULL ,
PRIMARY KEY (`id`)
);
COMMENT ON TABLE s2_tag IS 'tag information';
COMMENT ON TABLE s2_tag IS 'tag information';
CREATE TABLE IF NOT EXISTS `s2_tag_object` (
`id` INT NOT NULL AUTO_INCREMENT,
`domain_id` INT NOT NULL ,
`name` varchar(255) NOT NULL ,
`biz_name` varchar(255) NOT NULL ,
`description` varchar(500) DEFAULT NULL ,
`status` INT NOT NULL ,
`sensitive_level` INT NOT NULL ,
`created_at` TIMESTAMP NOT NULL ,
`created_by` varchar(100) NOT NULL ,
`updated_at` TIMESTAMP DEFAULT NULL ,
`updated_by` varchar(100) DEFAULT NULL ,
`ext` LONGVARCHAR DEFAULT NULL ,
PRIMARY KEY (`id`)
);
COMMENT ON TABLE s2_tag IS 'tag object information';

View File

@@ -517,4 +517,22 @@ CREATE TABLE `s2_tag`
`ext` text DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE = InnoDB
DEFAULT CHARSET = utf8 COMMENT ='标签表';
DEFAULT CHARSET = utf8 COMMENT ='标签表';
CREATE TABLE IF NOT EXISTS `s2_tag_object`
(
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`domain_id` bigint(20) DEFAULT NULL,
`name` varchar(255) NOT NULL COMMENT '名称',
`biz_name` varchar(255) NOT NULL COMMENT '英文名称',
`description` varchar(500) DEFAULT NULL COMMENT '描述',
`status` int(10) NOT NULL COMMENT '状态',
`sensitive_level` int(10) NOT NULL COMMENT '敏感级别',
`created_at` datetime NOT NULL COMMENT '创建时间',
`created_by` varchar(100) NOT NULL COMMENT '创建人',
`updated_at` datetime NULL COMMENT '更新时间',
`updated_by` varchar(100) NULL COMMENT '更新人',
`ext` text DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE = InnoDB
DEFAULT CHARSET = utf8 COMMENT ='标签表对象';

View File

@@ -0,0 +1,57 @@
package com.tencent.supersonic.headless;
import com.tencent.supersonic.auth.api.authentication.pojo.User;
import com.tencent.supersonic.headless.api.pojo.request.TagObjectReq;
import com.tencent.supersonic.headless.api.pojo.response.TagObjectResp;
import com.tencent.supersonic.headless.server.pojo.TagObjectFilter;
import com.tencent.supersonic.headless.server.service.TagObjectService;
import org.junit.jupiter.api.Test;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import java.util.List;
public class TagObjectTest extends BaseTest {
@Autowired
private TagObjectService tagObjectService;
@Test
void testCreateTagObject() throws Exception {
User user = User.getFakeUser();
TagObjectReq tagObjectReq = newTagObjectReq();
TagObjectResp tagObjectResp = tagObjectService.create(tagObjectReq, user);
tagObjectService.delete(tagObjectResp.getId(), user);
}
@Test
void testUpdateTagObject() throws Exception {
TagObjectReq tagObjectReq = newTagObjectReq();
TagObjectResp tagObjectResp = tagObjectService.create(tagObjectReq, User.getFakeUser());
TagObjectReq tagObjectReqUpdate = new TagObjectReq();
BeanUtils.copyProperties(tagObjectResp, tagObjectReqUpdate);
tagObjectReqUpdate.setName("艺人1");
tagObjectService.update(tagObjectReqUpdate, User.getFakeUser());
TagObjectResp tagObject = tagObjectService.getTagObject(tagObjectReqUpdate.getId(), User.getFakeUser());
tagObjectService.delete(tagObject.getId(), User.getFakeUser());
}
@Test
void testQueryTagObject() throws Exception {
TagObjectReq tagObjectReq = newTagObjectReq();
TagObjectResp tagObjectResp = tagObjectService.create(tagObjectReq, User.getFakeUser());
TagObjectFilter filter = new TagObjectFilter();
List<TagObjectResp> tagObjects = tagObjectService.getTagObjects(filter, User.getFakeUser());
tagObjects.size();
tagObjectService.delete(tagObjectResp.getId(), User.getFakeUser());
}
private TagObjectReq newTagObjectReq() {
TagObjectReq tagObjectReq = new TagObjectReq();
tagObjectReq.setDomainId(2L);
tagObjectReq.setName("艺人");
tagObjectReq.setBizName("singer");
return tagObjectReq;
}
}

View File

@@ -120,6 +120,7 @@ CREATE TABLE IF NOT EXISTS `s2_model` (
`name` varchar(255) DEFAULT NULL , -- domain name
`biz_name` varchar(255) DEFAULT NULL , -- internal name
`domain_id` INT DEFAULT '0' , -- parent domain ID
`tag_object_id` INT DEFAULT '0' ,
`alias` varchar(255) DEFAULT NULL , -- internal name
`status` INT DEFAULT NULL,
`description` varchar(500) DEFAULT NULL ,
@@ -594,4 +595,22 @@ CREATE TABLE IF NOT EXISTS `s2_tag` (
`ext` LONGVARCHAR DEFAULT NULL ,
PRIMARY KEY (`id`)
);
COMMENT ON TABLE s2_tag IS 'tag information';
COMMENT ON TABLE s2_tag IS 'tag information';
CREATE TABLE IF NOT EXISTS `s2_tag_object` (
`id` INT NOT NULL AUTO_INCREMENT,
`domain_id` INT NOT NULL ,
`name` varchar(255) NOT NULL ,
`biz_name` varchar(255) NOT NULL ,
`description` varchar(500) DEFAULT NULL ,
`status` INT NOT NULL ,
`sensitive_level` INT NOT NULL ,
`created_at` TIMESTAMP NOT NULL ,
`created_by` varchar(100) NOT NULL ,
`updated_at` TIMESTAMP DEFAULT NULL ,
`updated_by` varchar(100) DEFAULT NULL ,
`ext` LONGVARCHAR DEFAULT NULL ,
PRIMARY KEY (`id`)
);
COMMENT ON TABLE s2_tag IS 'tag object information';