Explorar el Código

修改新闻结构

DESKTOP-USV654P\pc hace 2 años
padre
commit
84164ced41

+ 13 - 0
src/main/java/com/xjrsoft/module/oa/dto/AddNewsAppendixDto.java

@@ -0,0 +1,13 @@
+package com.xjrsoft.module.oa.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+public class AddNewsAppendixDto {
+    @ApiModelProperty("新闻主键")
+    private Long newsId;
+
+    @ApiModelProperty("文件主键")
+    private Long fileId;
+}

+ 67 - 0
src/main/java/com/xjrsoft/module/oa/dto/AddNewsDto.java

@@ -1,5 +1,7 @@
 package com.xjrsoft.module.oa.dto;
 
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.github.yulichang.annotation.EntityMapping;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import org.hibernate.validator.constraints.Length;
@@ -7,6 +9,7 @@ import org.hibernate.validator.constraints.Length;
 import javax.validation.constraints.Min;
 import javax.validation.constraints.NotNull;
 import java.time.LocalDateTime;
+import java.util.List;
 
 /**
  * @author Zexy
@@ -124,4 +127,68 @@ public class AddNewsDto {
      */
     @ApiModelProperty("备注")
     private String remark;
+
+    /**
+     * 紧急程度  1=一般 2=紧急
+     */
+    @ApiModelProperty("紧急程度  1=一般 2=紧急")
+    private Integer emergent;
+
+    /**
+     * 发送部门
+     */
+    @ApiModelProperty("发送部门")
+    private Long sendDeptId;
+
+    /**
+     * 张贴开起时间
+     */
+    @ApiModelProperty("张贴开起时间")
+    private LocalDateTime sendStartDate;
+
+    /**
+     * 张贴结束时间
+     */
+    @ApiModelProperty("张贴结束时间")
+    private LocalDateTime sendEndDate;
+
+    /**
+     * 接收人回复要求 1=必须回复 2=不允许回复 3=可以回复 (不强制要求)
+     */
+    @ApiModelProperty("接收人回复要求 1=必须回复 2=不允许回复 3=可以回复 (不强制要求)")
+    private Integer openReply;
+
+    /**
+     * 是否允许接收人转发 0=不能转发 1=允许转发
+     */
+    @ApiModelProperty("是否允许接收人转发 0=不能转发 1=允许转发")
+    private Integer openForward;
+
+    /**
+     * 是否允许接收人查看其他接收人 0=不允许查看 1=允许查看
+     */
+    @ApiModelProperty("是否允许接收人查看其他接收人 0=不允许查看 1=允许查看")
+    private Integer openViewOther;
+
+    /**
+     * 级别 1=校级 2=班级
+     */
+    @ApiModelProperty("级别 1=校级 2=班级")
+    private Integer level;
+
+    /**
+     * 附件子表
+     */
+    @ApiModelProperty("附件子表")
+    @TableField(exist = false)
+    @EntityMapping(thisField = "id", joinField = "newsId")
+    private List<AddNewsAppendixDto> appendixList;
+
+    /**
+     * 关系子表
+     */
+    @ApiModelProperty("关系子表")
+    @TableField(exist = false)
+    @EntityMapping(thisField = "id", joinField = "newsId")
+    private List<AddNewsRelationDto> relationList;
 }

+ 14 - 0
src/main/java/com/xjrsoft/module/oa/dto/AddNewsRelationDto.java

@@ -0,0 +1,14 @@
+package com.xjrsoft.module.oa.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+public class AddNewsRelationDto {
+
+    @ApiModelProperty("部门ID")
+    private Long deptId;
+
+    @ApiModelProperty("新闻主键")
+    private Long newsId;
+}

+ 67 - 0
src/main/java/com/xjrsoft/module/oa/dto/UpdateNewsDto.java

@@ -1,5 +1,7 @@
 package com.xjrsoft.module.oa.dto;
 
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.github.yulichang.annotation.EntityMapping;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import org.hibernate.validator.constraints.Length;
@@ -7,6 +9,7 @@ import org.hibernate.validator.constraints.Length;
 import javax.validation.constraints.Min;
 import javax.validation.constraints.NotNull;
 import java.time.LocalDateTime;
+import java.util.List;
 
 /**
  * @Author: tzx
@@ -121,4 +124,68 @@ public class UpdateNewsDto {
      */
     @ApiModelProperty("备注")
     private String remark;
+
+    /**
+     * 紧急程度  1=一般 2=紧急
+     */
+    @ApiModelProperty("紧急程度  1=一般 2=紧急")
+    private Integer emergent;
+
+    /**
+     * 发送部门
+     */
+    @ApiModelProperty("发送部门")
+    private Long sendDeptId;
+
+    /**
+     * 张贴开起时间
+     */
+    @ApiModelProperty("张贴开起时间")
+    private LocalDateTime sendStartDate;
+
+    /**
+     * 张贴结束时间
+     */
+    @ApiModelProperty("张贴结束时间")
+    private LocalDateTime sendEndDate;
+
+    /**
+     * 接收人回复要求 1=必须回复 2=不允许回复 3=可以回复 (不强制要求)
+     */
+    @ApiModelProperty("接收人回复要求 1=必须回复 2=不允许回复 3=可以回复 (不强制要求)")
+    private Integer openReply;
+
+    /**
+     * 是否允许接收人转发 0=不能转发 1=允许转发
+     */
+    @ApiModelProperty("是否允许接收人转发 0=不能转发 1=允许转发")
+    private Integer openForward;
+
+    /**
+     * 是否允许接收人查看其他接收人 0=不允许查看 1=允许查看
+     */
+    @ApiModelProperty("是否允许接收人查看其他接收人 0=不允许查看 1=允许查看")
+    private Integer openViewOther;
+
+    /**
+     * 级别 1=校级 2=班级
+     */
+    @ApiModelProperty("级别 1=校级 2=班级")
+    private Integer level;
+
+    /**
+     * 附件子表
+     */
+    @ApiModelProperty("附件子表")
+    @TableField(exist = false)
+    @EntityMapping(thisField = "id", joinField = "newsId")
+    private List<AddNewsAppendixDto> newsAppendixList;
+
+    /**
+     * 关系子表
+     */
+    @ApiModelProperty("关系子表")
+    @TableField(exist = false)
+    @EntityMapping(thisField = "id", joinField = "newsId")
+    private List<AddNewsRelationDto> newsRelationList;
 }

+ 34 - 0
src/main/java/com/xjrsoft/module/oa/entity/News.java

@@ -1,6 +1,8 @@
 package com.xjrsoft.module.oa.entity;
 
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableName;
+import com.github.yulichang.annotation.EntityMapping;
 import com.xjrsoft.common.model.base.AuditEntity;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
@@ -9,6 +11,7 @@ import lombok.EqualsAndHashCode;
 
 import java.io.Serializable;
 import java.time.LocalDateTime;
+import java.util.List;
 
 /**
  * <p>
@@ -86,4 +89,35 @@ public class News extends AuditEntity implements Serializable {
     @ApiModelProperty("备注")
     private String remark;
 
+    @ApiModelProperty("紧急程度  1=一般 2=紧急")
+    private Integer emergent;
+
+    @ApiModelProperty("发送部门")
+    private Long sendDeptId;
+
+    @ApiModelProperty("张贴开起时间")
+    private LocalDateTime sendStartDate;
+
+    @ApiModelProperty("张贴结束时间")
+    private LocalDateTime sendEndDate;
+
+    @ApiModelProperty("接收人回复要求 1=必须回复 2=不允许回复 3=可以回复 (不强制要求)")
+    private Integer openReply;
+
+    @ApiModelProperty("是否允许接收人转发 0=不能转发 1=允许转发")
+    private Integer openForward;
+
+    @ApiModelProperty("是否允许接收人查看其他接收人 0=不允许查看 1=允许查看")
+    private Integer openViewOther;
+
+    @ApiModelProperty("级别 1=校级 2=班级")
+    private Integer level;
+
+    /**
+     * 附件子表
+     */
+    @ApiModelProperty("附件子表")
+    @TableField(exist = false)
+    @EntityMapping(thisField = "id", joinField = "newsId")
+    private List<NewsAppendix> newsAppendixList;
 }

+ 32 - 0
src/main/java/com/xjrsoft/module/oa/entity/NewsAppendix.java

@@ -0,0 +1,32 @@
+package com.xjrsoft.module.oa.entity;
+
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.LocalDateTime;
+
+@TableName("xjr_oa_news_appendix")
+@ApiModel(value = "NewsRelation对象", description = "新闻中心附件表")
+@Data
+@EqualsAndHashCode(callSuper = false)
+public class NewsAppendix {
+
+    private static final long serialVersionUID = 1L;
+
+    @ApiModelProperty("主键")
+    private Long id;
+
+    @ApiModelProperty("新闻主键")
+    private Long newsId;
+
+    @ApiModelProperty("文件主键")
+    private Long fileId;
+
+    @TableField(fill = FieldFill.INSERT)
+    private LocalDateTime createDate;
+}

+ 9 - 0
src/main/java/com/xjrsoft/module/oa/entity/NewsRelation.java

@@ -39,4 +39,13 @@ public class NewsRelation implements Serializable {
 
     @TableField(fill = FieldFill.INSERT)
     private LocalDateTime createDate;
+
+    @ApiModelProperty("阅读标记  0=未读 1=已读")
+    private Integer readMark;
+
+    @ApiModelProperty("阅读时间")
+    private LocalDateTime readDate;
+
+    @ApiModelProperty("回复内容")
+    private String replyContent;
 }

+ 49 - 0
src/main/java/com/xjrsoft/module/oa/vo/NewsPageVo.java

@@ -124,4 +124,53 @@ public class NewsPageVo {
      */
     @ApiModelProperty("班级(base_class)")
     private Long classId;
+
+
+    /**
+     * 紧急程度  1=一般 2=紧急
+     */
+    @ApiModelProperty("紧急程度  1=一般 2=紧急")
+    private Integer emergent;
+
+    /**
+     * 发送部门
+     */
+    @ApiModelProperty("发送部门")
+    private Long sendDeptId;
+
+    /**
+     * 张贴开起时间
+     */
+    @ApiModelProperty("张贴开起时间")
+    private LocalDateTime sendStartDate;
+
+    /**
+     * 张贴结束时间
+     */
+    @ApiModelProperty("张贴结束时间")
+    private LocalDateTime sendEndDate;
+
+    /**
+     * 接收人回复要求 1=必须回复 2=不允许回复 3=可以回复 (不强制要求)
+     */
+    @ApiModelProperty("接收人回复要求 1=必须回复 2=不允许回复 3=可以回复 (不强制要求)")
+    private Integer openReply;
+
+    /**
+     * 是否允许接收人转发 0=不能转发 1=允许转发
+     */
+    @ApiModelProperty("是否允许接收人转发 0=不能转发 1=允许转发")
+    private Integer openForward;
+
+    /**
+     * 是否允许接收人查看其他接收人 0=不允许查看 1=允许查看
+     */
+    @ApiModelProperty("是否允许接收人查看其他接收人 0=不允许查看 1=允许查看")
+    private Integer openViewOther;
+
+    /**
+     * 级别 1=校级 2=班级
+     */
+    @ApiModelProperty("级别 1=校级 2=班级")
+    private Integer level;
 }

+ 53 - 0
src/main/java/com/xjrsoft/module/oa/vo/NewsVo.java

@@ -1,9 +1,14 @@
 package com.xjrsoft.module.oa.vo;
 
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.github.yulichang.annotation.EntityMapping;
+import com.xjrsoft.module.oa.entity.NewsAppendix;
+import com.xjrsoft.module.student.entity.BaseStudentSubsidize;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.time.LocalDateTime;
+import java.util.List;
 
 /**
  * @Author: tzx
@@ -63,4 +68,52 @@ public class NewsVo {
     @ApiModelProperty("班级(base_class)")
     private Long classId;
 
+    /**
+     * 紧急程度  1=一般 2=紧急
+     */
+    @ApiModelProperty("紧急程度  1=一般 2=紧急")
+    private Integer emergent;
+
+    /**
+     * 发送部门
+     */
+    @ApiModelProperty("发送部门")
+    private Long sendDeptId;
+
+    /**
+     * 张贴开起时间
+     */
+    @ApiModelProperty("张贴开起时间")
+    private LocalDateTime sendStartDate;
+
+    /**
+     * 张贴结束时间
+     */
+    @ApiModelProperty("张贴结束时间")
+    private LocalDateTime sendEndDate;
+
+    /**
+     * 接收人回复要求 1=必须回复 2=不允许回复 3=可以回复 (不强制要求)
+     */
+    @ApiModelProperty("接收人回复要求 1=必须回复 2=不允许回复 3=可以回复 (不强制要求)")
+    private Integer openReply;
+
+    /**
+     * 是否允许接收人转发 0=不能转发 1=允许转发
+     */
+    @ApiModelProperty("是否允许接收人转发 0=不能转发 1=允许转发")
+    private Integer openForward;
+
+    /**
+     * 是否允许接收人查看其他接收人 0=不允许查看 1=允许查看
+     */
+    @ApiModelProperty("是否允许接收人查看其他接收人 0=不允许查看 1=允许查看")
+    private Integer openViewOther;
+
+    /**
+     * 级别 1=校级 2=班级
+     */
+    @ApiModelProperty("级别 1=校级 2=班级")
+    private Integer level;
+
 }

+ 27 - 0
src/main/resources/sqlScript/init_sql.sql

@@ -5,6 +5,33 @@ SET FOREIGN_KEY_CHECKS = 0;
 ALTER TABLE xjr_user ADD COLUMN `credential_type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '证件类型(xjr_dictionary_item[credential_type])' AFTER sort_code;
 ALTER TABLE xjr_user ADD COLUMN `credential_number` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '证件号码' AFTER sort_code;
 
+-- 新闻添加字段
+ALTER TABLE xjr_oa_news ADD COLUMN `emergent` int NULL DEFAULT NULL COMMENT '紧急程度  1=一般 2=紧急';
+ALTER TABLE xjr_oa_news ADD COLUMN `send_dept_id` bigint NULL DEFAULT NULL COMMENT '发送部门';
+ALTER TABLE xjr_oa_news ADD COLUMN `send_start_date` datetime NULL DEFAULT NULL COMMENT '张贴开起时间';
+ALTER TABLE xjr_oa_news ADD COLUMN `send_end_date` datetime NULL DEFAULT NULL COMMENT '张贴结束时间';
+ALTER TABLE xjr_oa_news ADD COLUMN `open_reply` int NULL DEFAULT NULL COMMENT '接收人回复要求 1=必须回复 2=不允许回复 3=可以回复 (不强制要求)';
+ALTER TABLE xjr_oa_news ADD COLUMN `open_forward` int NULL DEFAULT NULL COMMENT '是否允许接收人转发 0=不能转发 1=允许转发';
+ALTER TABLE xjr_oa_news ADD COLUMN `open_view_other` int NULL DEFAULT NULL COMMENT '是否允许接收人查看其他接收人 0=不允许查看 1=允许查看';
+ALTER TABLE xjr_oa_news ADD COLUMN `level` int NULL DEFAULT NULL COMMENT '级别 1=校级 2=班级';
+
+-- 新闻关联
+ALTER TABLE xjr_oa_news_relation ADD COLUMN `read_mark` int NULL DEFAULT NULL COMMENT '阅读标记  0=未读 1=已读';
+ALTER TABLE xjr_oa_news_relation ADD COLUMN `read_date` datetime NULL DEFAULT NULL COMMENT '阅读时间';
+ALTER TABLE xjr_oa_news_relation ADD COLUMN `reply_content` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '回复内容';
+
+-- ----------------------------
+-- 新闻附件
+-- ----------------------------
+DROP TABLE IF EXISTS `xjr_oa_news_appendix`;
+CREATE TABLE `xjr_oa_news_appendix` (
+    `id` bigint NOT NULL COMMENT '主键',
+    `news_id` bigint NULL DEFAULT NULL COMMENT '新闻ID',
+    `file_id` bigint NULL DEFAULT NULL COMMENT '文件ID(xjr_file)',
+    `create_date` date NULL DEFAULT NULL COMMENT '创建时间',
+    PRIMARY KEY (`id`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT '新闻附件'
+
 -- ----------------------------
 -- 接口文件
 -- ----------------------------