From edd78aa0cab568ace9f1e93a0a494848ea976a6c Mon Sep 17 00:00:00 2001 From: ziin Date: Wed, 11 Feb 2026 19:14:07 +0800 Subject: [PATCH] =?UTF-8?q?feat(notice):=20=E6=96=B0=E5=A2=9E=E7=B3=BB?= =?UTF-8?q?=E7=BB=9F=E5=85=AC=E5=91=8A=E6=8E=A5=E5=8F=A3=E5=8F=8A=E5=90=8E?= =?UTF-8?q?=E5=8F=B0=E5=AE=9E=E7=8E=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/CommonController.java | 12 ++ .../mapper/SystemNoticeMapper.java | 12 ++ .../model/entity/SystemNotice.java | 107 ++++++++++++++++++ .../service/SystemNoticeService.java | 20 ++++ .../service/impl/SystemNoticeServiceImpl.java | 25 ++++ .../resources/mapper/SystemNoticeMapper.xml | 25 ++++ tk-data-user.2026-02-10.0.gz | Bin 0 -> 2866 bytes 7 files changed, 201 insertions(+) create mode 100644 src/main/java/com/yupi/springbootinit/mapper/SystemNoticeMapper.java create mode 100644 src/main/java/com/yupi/springbootinit/model/entity/SystemNotice.java create mode 100644 src/main/java/com/yupi/springbootinit/service/SystemNoticeService.java create mode 100644 src/main/java/com/yupi/springbootinit/service/impl/SystemNoticeServiceImpl.java create mode 100644 src/main/resources/mapper/SystemNoticeMapper.xml create mode 100644 tk-data-user.2026-02-10.0.gz diff --git a/src/main/java/com/yupi/springbootinit/controller/CommonController.java b/src/main/java/com/yupi/springbootinit/controller/CommonController.java index 3416869..8b84bd7 100644 --- a/src/main/java/com/yupi/springbootinit/controller/CommonController.java +++ b/src/main/java/com/yupi/springbootinit/controller/CommonController.java @@ -10,6 +10,8 @@ import com.yupi.springbootinit.service.AiCommentService; import com.yupi.springbootinit.service.AiTemplateService; import com.yupi.springbootinit.service.CommonService; import com.yupi.springbootinit.service.CountryInfoService; +import com.yupi.springbootinit.service.SystemNoticeService; +import com.yupi.springbootinit.model.entity.SystemNotice; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.*; @@ -39,6 +41,9 @@ public class CommonController { @Resource private AiCommentService aiCommentService; + @Resource + private SystemNoticeService systemNoticeService; + @PostMapping("country_info") public BaseResponse> countryInfo() { @@ -74,4 +79,11 @@ public class CommonController { public BaseResponse health(){ return ResultUtils.success("ok"); } + + @GetMapping("notice") + public BaseResponse> getActiveNotice(){ + return ResultUtils.success(systemNoticeService.getActiveNoticeList()); + } + + } diff --git a/src/main/java/com/yupi/springbootinit/mapper/SystemNoticeMapper.java b/src/main/java/com/yupi/springbootinit/mapper/SystemNoticeMapper.java new file mode 100644 index 0000000..179b495 --- /dev/null +++ b/src/main/java/com/yupi/springbootinit/mapper/SystemNoticeMapper.java @@ -0,0 +1,12 @@ +package com.yupi.springbootinit.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.yupi.springbootinit.model.entity.SystemNotice; + +/* +* @author: ziin +* @date: 2026/2/10 20:25 +*/ + +public interface SystemNoticeMapper extends BaseMapper { +} \ No newline at end of file diff --git a/src/main/java/com/yupi/springbootinit/model/entity/SystemNotice.java b/src/main/java/com/yupi/springbootinit/model/entity/SystemNotice.java new file mode 100644 index 0000000..395132c --- /dev/null +++ b/src/main/java/com/yupi/springbootinit/model/entity/SystemNotice.java @@ -0,0 +1,107 @@ +package com.yupi.springbootinit.model.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import java.util.Date; +import lombok.Data; + +/* +* @author: ziin +* @date: 2026/2/10 20:25 +*/ + +/** + * 通知公告表 + */ +@ApiModel(description="通知公告表") +@Data +@TableName(value = "system_notice") +public class SystemNotice { + /** + * 公告ID + */ + @TableId(value = "id", type = IdType.AUTO) + @ApiModelProperty(value="公告ID") + private Long id; + + /** + * 公告标题 + */ + @TableField(value = "title") + @ApiModelProperty(value="公告标题") + private String title; + + /** + * 公告内容 + */ + @TableField(value = "content") + @ApiModelProperty(value="公告内容") + private String content; + + /** + * 公告类型(1通知 2公告) + */ + @TableField(value = "`type`") + @ApiModelProperty(value="公告类型(1通知 2公告)") + private Byte type; + + /** + * 公告状态(0正常 1关闭) + */ + @TableField(value = "`status`") + @ApiModelProperty(value="公告状态(0正常 1关闭)") + private Byte status; + + /** + * 创建者 + */ + @TableField(value = "creator") + @ApiModelProperty(value="创建者") + private String creator; + + /** + * 创建时间 + */ + @TableField(value = "create_time") + @ApiModelProperty(value="创建时间") + private Date createTime; + + /** + * 更新者 + */ + @TableField(value = "updater") + @ApiModelProperty(value="更新者") + private String updater; + + /** + * 更新时间 + */ + @TableField(value = "update_time") + @ApiModelProperty(value="更新时间") + private Date updateTime; + + /** + * 是否删除 + */ + @TableField(value = "deleted") + @ApiModelProperty(value="是否删除") + private Boolean deleted; + + /** + * 租户编号 + */ + @TableField(value = "tenant_id") + @ApiModelProperty(value="租户编号") + private Long tenantId; + + /** + * 分类 + */ + @TableField(value = "category") + @ApiModelProperty(value="分类") + private String category; +} \ No newline at end of file diff --git a/src/main/java/com/yupi/springbootinit/service/SystemNoticeService.java b/src/main/java/com/yupi/springbootinit/service/SystemNoticeService.java new file mode 100644 index 0000000..5a7aedd --- /dev/null +++ b/src/main/java/com/yupi/springbootinit/service/SystemNoticeService.java @@ -0,0 +1,20 @@ +package com.yupi.springbootinit.service; + +import com.yupi.springbootinit.model.entity.SystemNotice; +import com.baomidou.mybatisplus.extension.service.IService; + +import java.util.List; + + /* +* @author: ziin +* @date: 2026/2/10 20:25 +*/ + +public interface SystemNoticeService extends IService{ + + /** + * 查询当前状态为开启的公告列表 + */ + List getActiveNoticeList(); + +} diff --git a/src/main/java/com/yupi/springbootinit/service/impl/SystemNoticeServiceImpl.java b/src/main/java/com/yupi/springbootinit/service/impl/SystemNoticeServiceImpl.java new file mode 100644 index 0000000..e1f1adf --- /dev/null +++ b/src/main/java/com/yupi/springbootinit/service/impl/SystemNoticeServiceImpl.java @@ -0,0 +1,25 @@ +package com.yupi.springbootinit.service.impl; + +import org.springframework.stereotype.Service; +import java.util.List; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.yupi.springbootinit.model.entity.SystemNotice; +import com.yupi.springbootinit.mapper.SystemNoticeMapper; +import com.yupi.springbootinit.service.SystemNoticeService; +/* +* @author: ziin +* @date: 2026/2/10 20:25 +*/ + +@Service +public class SystemNoticeServiceImpl extends ServiceImpl implements SystemNoticeService{ + + @Override + public List getActiveNoticeList() { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(SystemNotice::getStatus, 0); + return this.list(queryWrapper); + } + +} diff --git a/src/main/resources/mapper/SystemNoticeMapper.xml b/src/main/resources/mapper/SystemNoticeMapper.xml new file mode 100644 index 0000000..e79b693 --- /dev/null +++ b/src/main/resources/mapper/SystemNoticeMapper.xml @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + id, title, content, `type`, `status`, creator, create_time, updater, update_time, + deleted, tenant_id, category + + \ No newline at end of file diff --git a/tk-data-user.2026-02-10.0.gz b/tk-data-user.2026-02-10.0.gz new file mode 100644 index 0000000000000000000000000000000000000000..afe1765281dd591e1cca4a4aee369e0aa64890e5 GIT binary patch literal 2866 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