From d1bd4c8b43721eb24711e2f51c65b41fe3298f17 Mon Sep 17 00:00:00 2001 From: liushujing Date: Fri, 13 Dec 2024 11:20:46 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=B6=E8=97=8F=E8=A1=A8=E5=88=9D=E5=A7=8B?= =?UTF-8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../flxai/base/service/CrudService.java | 2 +- .../base/service/impl/CrudServiceImpl.java | 2 +- .../controller/AppAiAssistantController.java | 90 +++++++++++++++++++ .../flxai/dao/AppAiAssistantDao.java | 16 ++++ .../flxai/dto/AppAiAssistantDTO.java | 59 ++++++++++++ .../flxai/entity/AppAiAssistantEntity.java | 66 ++++++++++++++ .../flxai/service/AppAiAssistantService.java | 15 ++++ .../impl/AppAiAssistantServiceImpl.java | 34 +++++++ .../mapper/postgres/AppAiAssistantDao.xml | 22 +++++ 9 files changed, 304 insertions(+), 2 deletions(-) create mode 100644 flx-ai/src/main/java/com/pjilisense/flxai/controller/AppAiAssistantController.java create mode 100644 flx-ai/src/main/java/com/pjilisense/flxai/dao/AppAiAssistantDao.java create mode 100644 flx-ai/src/main/java/com/pjilisense/flxai/dto/AppAiAssistantDTO.java create mode 100644 flx-ai/src/main/java/com/pjilisense/flxai/entity/AppAiAssistantEntity.java create mode 100644 flx-ai/src/main/java/com/pjilisense/flxai/service/AppAiAssistantService.java create mode 100644 flx-ai/src/main/java/com/pjilisense/flxai/service/impl/AppAiAssistantServiceImpl.java create mode 100644 flx-ai/src/main/resources/mapper/postgres/AppAiAssistantDao.xml diff --git a/flx-ai/src/main/java/com/pjilisense/flxai/base/service/CrudService.java b/flx-ai/src/main/java/com/pjilisense/flxai/base/service/CrudService.java index bb1be54..e5d1f57 100644 --- a/flx-ai/src/main/java/com/pjilisense/flxai/base/service/CrudService.java +++ b/flx-ai/src/main/java/com/pjilisense/flxai/base/service/CrudService.java @@ -31,6 +31,6 @@ public interface CrudService extends BaseService { void update(D dto); - void delete(Long[] ids); + void delete(Serializable[] ids); } \ No newline at end of file diff --git a/flx-ai/src/main/java/com/pjilisense/flxai/base/service/impl/CrudServiceImpl.java b/flx-ai/src/main/java/com/pjilisense/flxai/base/service/impl/CrudServiceImpl.java index 3c8a754..24075f4 100644 --- a/flx-ai/src/main/java/com/pjilisense/flxai/base/service/impl/CrudServiceImpl.java +++ b/flx-ai/src/main/java/com/pjilisense/flxai/base/service/impl/CrudServiceImpl.java @@ -75,7 +75,7 @@ public abstract class CrudServiceImpl, T, D> extends Bas } @Override - public void delete(Long[] ids) { + public void delete(Serializable[] ids) { baseDao.deleteBatchIds(Arrays.asList(ids)); } } \ No newline at end of file diff --git a/flx-ai/src/main/java/com/pjilisense/flxai/controller/AppAiAssistantController.java b/flx-ai/src/main/java/com/pjilisense/flxai/controller/AppAiAssistantController.java new file mode 100644 index 0000000..d935b56 --- /dev/null +++ b/flx-ai/src/main/java/com/pjilisense/flxai/controller/AppAiAssistantController.java @@ -0,0 +1,90 @@ +package com.pjilisense.flxai.controller; + +import com.pjilisense.flxai.base.constant.Constant; +import com.pjilisense.flxai.page.PageData; +import com.pjilisense.flxai.utils.Result; +import com.pjilisense.flxai.dto.AppAiAssistantDTO; +import com.pjilisense.flxai.service.AppAiAssistantService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import springfox.documentation.annotations.ApiIgnore; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; +import java.util.Map; + + +/** + * AI助手表 + * + * @author liushujing liushujing@philisense.com + * @since 1.0.0 2024-12-13 + */ +@RestController +@RequestMapping("robot/appaiassistant") +@Api(tags="AI助手表") +public class AppAiAssistantController { + + private static Logger logger = LoggerFactory.getLogger(AppAiAssistantController.class); + + @Autowired + private AppAiAssistantService appAiAssistantService; + + @GetMapping("page") + @ApiOperation("分页") + @ApiImplicitParams({ + @ApiImplicitParam(name = Constant.PAGE, value = "当前页码,从1开始", paramType = "query", required = true, dataType="Integer", dataTypeClass =Integer.class) , + @ApiImplicitParam(name = Constant.LIMIT, value = "每页显示记录数", paramType = "query",required = true, dataType="Integer", dataTypeClass =Integer.class) , + @ApiImplicitParam(name = Constant.ORDER_FIELD, value = "排序字段", paramType = "query", dataType="String", dataTypeClass =String.class) , + @ApiImplicitParam(name = Constant.ORDER, value = "排序方式,可选值(asc、desc)", paramType = "query", dataType="String", dataTypeClass =String.class) + }) + public Result> page(@ApiIgnore @RequestParam Map params){ + PageData page = appAiAssistantService.page(params); + + return new Result>().ok(page); + } + + @GetMapping("{id}") + @ApiOperation("信息") + public Result get(@PathVariable("id") Long id){ + AppAiAssistantDTO data = appAiAssistantService.get(id); + + return new Result().ok(data); + } + + @PostMapping + @ApiOperation("保存") + public Result save(@RequestBody AppAiAssistantDTO dto){ + //效验数据 + + appAiAssistantService.save(dto); + + return new Result(); + } + + @PutMapping + @ApiOperation("修改") + public Result update(@RequestBody AppAiAssistantDTO dto){ + //效验数据 + + appAiAssistantService.update(dto); + + return new Result(); + } + + @DeleteMapping + @ApiOperation("删除") + public Result delete(@RequestBody Long[] ids){ + //效验数据 + appAiAssistantService.delete(ids); + + return new Result(); + } + +} \ No newline at end of file diff --git a/flx-ai/src/main/java/com/pjilisense/flxai/dao/AppAiAssistantDao.java b/flx-ai/src/main/java/com/pjilisense/flxai/dao/AppAiAssistantDao.java new file mode 100644 index 0000000..256fb72 --- /dev/null +++ b/flx-ai/src/main/java/com/pjilisense/flxai/dao/AppAiAssistantDao.java @@ -0,0 +1,16 @@ +package com.pjilisense.flxai.dao; + +import com.pjilisense.flxai.base.dao.BaseDao; +import com.pjilisense.flxai.entity.AppAiAssistantEntity; +import org.apache.ibatis.annotations.Mapper; + +/** + * AI助手表 + * + * @author liushujing liushujing@philisense.com + * @since 1.0.0 2024-12-13 + */ +@Mapper +public interface AppAiAssistantDao extends BaseDao { + +} \ No newline at end of file diff --git a/flx-ai/src/main/java/com/pjilisense/flxai/dto/AppAiAssistantDTO.java b/flx-ai/src/main/java/com/pjilisense/flxai/dto/AppAiAssistantDTO.java new file mode 100644 index 0000000..4f78eb7 --- /dev/null +++ b/flx-ai/src/main/java/com/pjilisense/flxai/dto/AppAiAssistantDTO.java @@ -0,0 +1,59 @@ +package com.pjilisense.flxai.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + + +/** + * AI助手表 + * + * @author liushujing liushujing@philisense.com + * @since 1.0.0 2024-12-13 + */ +@Data +@ApiModel(value = "AI助手表") +public class AppAiAssistantDTO implements Serializable { + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键") + private String id; + + @ApiModelProperty(value = "作者") + private String author; + + @ApiModelProperty(value = "主页地址") + private String homepage; + + @ApiModelProperty(value = "标识") + private String identifier; + + @ApiModelProperty(value = "avatar") + private String avatar; + + @ApiModelProperty(value = "描述") + private String description; + + @ApiModelProperty(value = "标签") + private String tags; + + @ApiModelProperty(value = "标题") + private String title; + + @ApiModelProperty(value = "分类") + private String category; + + @ApiModelProperty(value = "Version") + private String schemaVersion; + + @ApiModelProperty(value = "创建时间") + private String createAt; + + @ApiModelProperty(value = "时间") + private String createdAt; + + +} \ No newline at end of file diff --git a/flx-ai/src/main/java/com/pjilisense/flxai/entity/AppAiAssistantEntity.java b/flx-ai/src/main/java/com/pjilisense/flxai/entity/AppAiAssistantEntity.java new file mode 100644 index 0000000..5aeed2e --- /dev/null +++ b/flx-ai/src/main/java/com/pjilisense/flxai/entity/AppAiAssistantEntity.java @@ -0,0 +1,66 @@ +package com.pjilisense.flxai.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +/** + * AI助手表 + * + * @author liushujing liushujing@philisense.com + * @since 1.0.0 2024-12-13 + */ +@Data +@TableName("app_ai_assistant") +public class AppAiAssistantEntity { + + /** + * 主键 + */ + private String id; + /** + * 作者 + */ + private String author; + /** + * 主页地址 + */ + private String homepage; + /** + * 标识 + */ + private String identifier; + /** + * avatar + */ + private String avatar; + /** + * 描述 + */ + private String description; + /** + * 标签 + */ + private String tags; + /** + * 标题 + */ + private String title; + /** + * 分类 + */ + private String category; + /** + * Version + */ + private String schemaVersion; + /** + * 创建时间 + */ + private String createAt; + /** + * 时间 + */ + private String createdAt; +} \ No newline at end of file diff --git a/flx-ai/src/main/java/com/pjilisense/flxai/service/AppAiAssistantService.java b/flx-ai/src/main/java/com/pjilisense/flxai/service/AppAiAssistantService.java new file mode 100644 index 0000000..e48cae3 --- /dev/null +++ b/flx-ai/src/main/java/com/pjilisense/flxai/service/AppAiAssistantService.java @@ -0,0 +1,15 @@ +package com.pjilisense.flxai.service; + +import com.pjilisense.flxai.base.service.CrudService; +import com.pjilisense.flxai.dto.AppAiAssistantDTO; +import com.pjilisense.flxai.entity.AppAiAssistantEntity; + +/** + * AI助手表 + * + * @author liushujing liushujing@philisense.com + * @since 1.0.0 2024-12-13 + */ +public interface AppAiAssistantService extends CrudService { + +} \ No newline at end of file diff --git a/flx-ai/src/main/java/com/pjilisense/flxai/service/impl/AppAiAssistantServiceImpl.java b/flx-ai/src/main/java/com/pjilisense/flxai/service/impl/AppAiAssistantServiceImpl.java new file mode 100644 index 0000000..81aec49 --- /dev/null +++ b/flx-ai/src/main/java/com/pjilisense/flxai/service/impl/AppAiAssistantServiceImpl.java @@ -0,0 +1,34 @@ +package com.pjilisense.flxai.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.pjilisense.flxai.base.service.impl.CrudServiceImpl; +import com.pjilisense.flxai.dao.AppAiAssistantDao; +import com.pjilisense.flxai.dto.AppAiAssistantDTO; +import com.pjilisense.flxai.entity.AppAiAssistantEntity; +import com.pjilisense.flxai.service.AppAiAssistantService; +import cn.hutool.core.util.StrUtil; +import org.springframework.stereotype.Service; + +import java.util.Map; + +/** + * AI助手表 + * + * @author liushujing liushujing@philisense.com + * @since 1.0.0 2024-12-13 + */ +@Service +public class AppAiAssistantServiceImpl extends CrudServiceImpl implements AppAiAssistantService { + + @Override + public QueryWrapper getWrapper(Map params){ + String id = (String)params.get("id"); + + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(StrUtil.isNotBlank(id), "id", id); + + return wrapper; + } + + +} \ No newline at end of file diff --git a/flx-ai/src/main/resources/mapper/postgres/AppAiAssistantDao.xml b/flx-ai/src/main/resources/mapper/postgres/AppAiAssistantDao.xml new file mode 100644 index 0000000..a4ba149 --- /dev/null +++ b/flx-ai/src/main/resources/mapper/postgres/AppAiAssistantDao.xml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file