add 数据字典和标签管理swagger

This commit is contained in:
lijiarao
2023-11-20 16:29:41 +08:00
parent 6c71e1a962
commit 6e1642e5b6
10 changed files with 694 additions and 329 deletions
@@ -30,6 +30,8 @@ import com.jero.modules.system.model.SysDictTree;
import com.jero.modules.system.model.TreeSelectModel;
import com.jero.modules.system.service.ISysDictItemService;
import com.jero.modules.system.service.ISysDictService;
import com.jero.modules.system.vo.IdMapBody;
import com.jero.modules.system.vo.IdsMapBody;
import com.jero.modules.system.vo.SysDictPage;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -412,7 +414,7 @@ public class SysDictController {
/**
* @功能:删除
* @param map
* @param body
* @return
*/
@ApiOperationSupport(order = 7)
@@ -420,8 +422,8 @@ public class SysDictController {
@PostMapping(value = "/delete")
@RequiresPermissions("sys:dict:operation")
@CacheEvict(value={CacheConstant.SYS_DICT_CACHE, CacheConstant.SYS_ENABLE_DICT_CACHE}, allEntries=true)
public Result<Object> delete(@RequestBody Map<String,String> map) {
String id = map.get("id");
public Result<Object> delete(@RequestBody IdMapBody map) {
String id = map.getId();
if(StringUtils.isBlank(id)){
return Result.error(ResultCommon.PARAMETER_NOT_RECOGNIZED);
}
@@ -446,8 +448,8 @@ public class SysDictController {
@PostMapping(value = "/deleteBatch")
@RequiresPermissions("sys:dict:operation")
@CacheEvict(value= {CacheConstant.SYS_DICT_CACHE, CacheConstant.SYS_ENABLE_DICT_CACHE}, allEntries=true)
public Result<Object> deleteBatch(@RequestBody Map<String,String> map) {
String ids = map.get("ids");
public Result<Object> deleteBatch(@RequestBody IdsMapBody map) {
String ids = map.getIds();
if(oConvertUtils.isEmpty(ids)) {
return Result.error(ResultCommon.PARAMETER_NOT_RECOGNIZED);
}
@@ -31,6 +31,8 @@ import com.jero.modules.enums.FixedFieldEnum;
import com.jero.modules.system.entity.SysDict;
import com.jero.modules.system.service.ISysDictService;
import com.jero.modules.system.util.TreeUtils;
import com.jero.modules.system.vo.IdMapBody;
import com.jero.modules.system.vo.IdsMapBody;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.collections4.CollectionUtils;
@@ -287,7 +289,6 @@ public class SysDictItemController {
/**
* @功能:删除字典数据
* @param map
* @return
*/
@ApiOperationSupport(order = 7)
@@ -295,8 +296,8 @@ public class SysDictItemController {
@PostMapping("/delete")
@RequiresPermissions("sys:dict:operation")
@CacheEvict(value={CacheConstant.SYS_DICT_CACHE, CacheConstant.SYS_ENABLE_DICT_CACHE}, allEntries=true)
public Result<T> delete(@RequestBody Map<String, String> map) {
String id = map.get("id");
public Result<T> delete(@RequestBody IdMapBody map) {
String id = map.getId();
if(StringUtils.isBlank(id)){
return Result.error(ResultCommon.PLEASE_SELECT_DATA);
}
@@ -318,7 +319,6 @@ public class SysDictItemController {
/**
* @功能:批量删除字典数据
* @param map
* @return
*/
@ApiOperationSupport(order = 8)
@@ -326,8 +326,8 @@ public class SysDictItemController {
@PostMapping("/deleteBatch")
@RequiresPermissions("sys:dict:operation")
@CacheEvict(value={CacheConstant.SYS_DICT_CACHE, CacheConstant.SYS_ENABLE_DICT_CACHE}, allEntries=true)
public Result<Object> deleteBatch(@RequestBody Map<String, String> map) {
String ids = map.get("ids");
public Result<Object> deleteBatch(@RequestBody IdsMapBody map) {
String ids = map.getIds();
if(ids==null || "".equals(ids.trim())) {
return Result.error(ResultCommon.PLEASE_SELECT_DATA);
}else {
@@ -1,132 +1,151 @@
package com.jero.modules.system.entity;
import java.io.Serializable;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.jero.common.aspect.annotation.Dict;
import com.baomidou.mybatisplus.annotation.TableName;
import com.jero.common.aspect.annotation.Dict;import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.util.Date;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecgframework.poi.excel.annotation.Excel;
/**
* <p>
* 字典表
* </p>
*
* @Author zhangweijian
* @since 2018-12-28
* @author liJiaRao
* @date 2023-11-20 15:39
*/
@ApiModel(description = "sys_dict")
@Data
@TableName(value = "sys_dict")
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class SysDict implements Serializable {
public class SysDict {
private static final long serialVersionUID = 1L;
/**
* id
*/
@TableId(type = IdType.ASSIGN_ID)
@TableId(value = "id", type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "id")
private String id;
/**
* [预留字段,暂时无用]
* 字典类型,0 string,1 number类型,2 boolean
* 前端js对stirng类型和number类型 boolean 类型敏感,需要区分。在select 标签匹配的时候会用到
* 默认为string类型
*/
private Integer type;
/**
* 字典名称
*/
@TableField(value = "dict_name")
@ApiModelProperty(value = "字典名称")
private String dictName;
/**
* 字典英文名称
*/
@TableField(value = "dict_en_name")
@ApiModelProperty(value = "字典英文名称")
private String dictEnName;
/**
* 字典编码
*/
@TableField(value = "dict_code")
@ApiModelProperty(value = "字典编码")
private String dictCode;
/**
* 描述
*/
@TableField(value = "description")
@ApiModelProperty(value = "描述")
private String description;
/**
* 删除状态
*/
@TableLogic
@TableField(value = "del_flag")
@ApiModelProperty(value = "删除状态")
private Integer delFlag;
/**
* 创建人
*/
@TableField(value = "create_by")
@ApiModelProperty(value = "创建人")
private String createBy;
/**
* 创建时间
*/
@TableField(value = "create_time")
@ApiModelProperty(value = "创建时间")
private Date createTime;
/**
* 更新人
*/
@TableField(value = "update_by")
@ApiModelProperty(value = "更新人")
private String updateBy;
/**
* 更新时间
*/
@TableField(value = "update_time")
@ApiModelProperty(value = "更新时间")
private Date updateTime;
/**
* 字典类型0为string,1为number
*/
@TableField(value = "`type`")
@ApiModelProperty(value = "字典类型0为string,1为number")
private Integer type;
/**
* 是否为标签内容-数据字典(1是 0否)
*/
@TableField(value = "is_tag_dict")
@Excel(name = "是否为标签内容-数据字典(1是 0否)", width = 15)
@ApiModelProperty(value = "是否为标签内容-数据字典(1是 0否)")
private java.lang.Integer isTagDict;
private Integer isTagDict;
/**
* 是否是只读(2字段固定,内部可配1固定字段 0非固定字段)
*/
@TableField(value = "is_read_only")
@Excel(name = "是否是只读(2字段固定,内部可配1固定字段 0非固定字段)", width = 15, dictTable = "onl_cgform_field", dicText = "is_read_only", dicCode = "is_read_only")
@Dict(dictTable = "onl_cgform_field", dicText = "is_read_only", dicCode = "is_read_only")
@ApiModelProperty(value = "是否是只读(2字段固定,内部可配1固定字段 0非固定字段)")
private java.lang.Integer isReadOnly;
private Integer isReadOnly;
/**
* 表单控件类型
* 标签类型 1下拉选择 2树形结构
*/
@TableField(value = "attribute_type")
@Excel(name = "标签类型 1下拉选择 2树形结构", width = 15,dicCode = "attribute_type")
@ApiModelProperty(value = "标签类型 1下拉选择 2树形结构")
@Dict(dicCode = "attribute_type")
private java.lang.String attributeType;
private String attributeType;
/**属性类型名称*/
/**
* 排序
*/
@TableField(value = "order_num")
@ApiModelProperty(value = "排序")
private Integer orderNum;
/**
* 属性类型名称
*/
@TableField(exist = false)
@Excel(name = "属性类型名称", width = 15,dictTable = "sys_dict_item", dicText = "item_text", dicCode ="item_text")
@Dict(dictTable = "sys_dict_item", dicText = "item_text", dicCode ="item_text")
@Excel(name = "属性类型名称", width = 15, dictTable = "sys_dict_item", dicText = "item_text", dicCode = "item_text")
@Dict(dictTable = "sys_dict_item", dicText = "item_text", dicCode = "item_text")
@ApiModelProperty(value = "属性类型名称")
private java.lang.String attributeTypeName;
/**数据字典英文名-属性类型英文名*/
private String attributeTypeName;
/**
* 数据字典英文名-属性类型英文名
*/
@TableField(exist = false)
@Excel(name = "属性类型英文名", width = 15,dictTable = "sys_dict_item", dicText = "en_name", dicCode ="en_name")
@Dict(dictTable = "sys_dict_item", dicText = "en_name", dicCode ="en_name")
@Excel(name = "属性类型英文名", width = 15, dictTable = "sys_dict_item", dicText = "en_name", dicCode = "en_name")
@Dict(dictTable = "sys_dict_item", dicText = "en_name", dicCode = "en_name")
@ApiModelProperty(value = "属性类型英文名")
private java.lang.String attributeTypeEnName;
/**排序*/
private java.lang.Integer orderNum;
}
private String attributeTypeEnName;
}
@@ -1,133 +1,165 @@
package com.jero.modules.system.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.*;
import com.jero.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.util.Date;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecgframework.poi.excel.annotation.Excel;
import java.io.Serializable;
import java.util.Date;
/**
* <p>
*
* </p>
*
* @Author zhangweijian
* @since 2018-12-28
* @author liJiaRao
* @date 2023-11-20 15:46
*/
@ApiModel(description = "sys_dict_item")
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class SysDictItem implements Serializable {
@TableName(value = "sys_dict_item")
public class SysDictItem {
private static final long serialVersionUID = 1L;
/**
* id
*/
@TableId(type = IdType.ASSIGN_ID)
@TableId(value = "id", type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "id")
private String id;
/**
* 字典id
*/
@TableField(value = "dict_id")
@ApiModelProperty(value = "字典id")
private String dictId;
/**
* 父级id
*/
@TableField(value = "parent_id")
@ApiModelProperty(value = "父级id")
private String parentId;
/**
* 父级id(树形结构使用)
*/
@TableField(exist = false)
private String pId;
/**
* 字典项文本
*/
@TableField(value = "item_text")
@Excel(name = "字典项文本", width = 20)
@ApiModelProperty(value = "字典项文本")
private String itemText;
/**
* 字典项值
*/
@Excel(name = "字典项值", width = 30)
private String itemValue;
/**
* 描述
*/
@Excel(name = "描述", width = 40)
private String description;
/**
* 排序
*/
@Excel(name = "排序", width = 15,type=4)
private Integer sortOrder;
@TableField(exist = false)
private String dictCode;
/**
* 状态(1启用 0不启用)
*/
@Dict(dicCode = "dict_item_status")
private Integer status;
private String createBy;
private Date createTime;
private String updateBy;
private Date updateTime;
/**是否为标签内容-数据字典(1是 0否)*/
@Excel(name = "是否为标签内容-数据字典(1是 0否)", width = 15)/*, dicText = "is_tag_dict", dicCode = "is_tag_dict")
@Dict(dictTable = "onl_cgform_field", dicText = "is_tag_dict", dicCode = "is_tag_dict")*/
@ApiModelProperty(value = "是否为标签内容-数据字典(1是 0否)")
private java.lang.Integer isTagDict;
/**是否是只读(2字段固定,内部可配1固定字段 0非固定字段)*/
@Excel(name = "是否是只读(2字段固定,内部可配1固定字段 0非固定字段)", width = 15, dictTable = "onl_cgform_field", dicText = "is_read_only", dicCode = "is_read_only")
@Dict(dictTable = "onl_cgform_field", dicText = "is_read_only", dicCode = "is_read_only")
@ApiModelProperty(value = "是否是只读(2字段固定,内部可配1固定字段 0非固定字段)")
private java.lang.Integer isReadOnly;
/**表单控件类型*/
@Excel(name = "标签类型 1下拉选择 2树形结构", width = 15)
@ApiModelProperty(value = "标签类型 1下拉选择 2树形结构")
@Dict(dicCode = "attribute_type")
private java.lang.String attributeType;
/**逻辑删除标识*/
/**value0可用,1逻辑删除**/
@TableLogic
public Integer delFlag;
/**
* 字典英文名称
*/
@TableField(value = "en_name")
@Excel(name = "字典英文名称", width = 15)
@ApiModelProperty(value = "字典英文名称")
private String enName;
/**
* 字典项值
*/
@TableField(value = "item_value")
@Excel(name = "字典项值", width = 30)
@ApiModelProperty(value = "字典项值")
private String itemValue;
/**
* 描述
*/
@TableField(value = "description")
@Excel(name = "描述", width = 40)
@ApiModelProperty(value = "描述")
private String description;
/**
* 排序
*/
@TableField(value = "sort_order")
@Excel(name = "排序", width = 15,type=4)
@ApiModelProperty(value = "排序")
private Integer sortOrder;
/**
* 状态(1启用 0不启用)
*/
@TableField(value = "`status`")
@Dict(dicCode = "dict_item_status")
@ApiModelProperty(value = "状态(1启用 0不启用)")
private Integer status;
/**
* createBy
*/
@TableField(value = "create_by")
@ApiModelProperty(value = "createBy")
private String createBy;
/**
* createTime
*/
@TableField(value = "create_time")
@ApiModelProperty(value = "createTime")
private Date createTime;
/**
* updateBy
*/
@TableField(value = "update_by")
@ApiModelProperty(value = "updateBy")
private String updateBy;
/**
* updateTime
*/
@TableField(value = "update_time")
@ApiModelProperty(value = "updateTime")
private Date updateTime;
/**
* 是否为标签内容-数据字典(1是 0否)
*/
@TableField(value = "is_tag_dict")
@Excel(name = "是否为标签内容-数据字典(1是 0否)", width = 15)
@ApiModelProperty(value = "是否为标签内容-数据字典(1是 0否)")
private Integer isTagDict;
/**
* 是否是只读(2字段固定,内部可配1固定字段 0非固定字段)
*/
@TableField(value = "is_read_only")
@Excel(name = "是否是只读(2字段固定,内部可配1固定字段 0非固定字段)", width = 15, dictTable = "onl_cgform_field", dicText = "is_read_only", dicCode = "is_read_only")
@Dict(dictTable = "onl_cgform_field", dicText = "is_read_only", dicCode = "is_read_only")
@ApiModelProperty(value = "是否是只读(2字段固定,内部可配1固定字段 0非固定字段)")
private Integer isReadOnly;
/**
* 表单控件类型
*/
@TableField(value = "attribute_type")
@Excel(name = "标签类型 1下拉选择 2树形结构", width = 15)
@ApiModelProperty(value = "标签类型 1下拉选择 2树形结构")
@Dict(dicCode = "attribute_type")
private String attributeType;
/**
* 逻辑删除标识
*/
@TableLogic
@TableField(value = "del_flag")
@ApiModelProperty(value = "逻辑删除标识")
private Integer delFlag;
/**
* 统计节点(主要为责任领域)
*/
@TableField(value = "stat_node")
@Excel(name = "统计节点", width = 15)
@ApiModelProperty(value = "统计节点")
@ApiModelProperty(value = "统计节点(主要为责任领域)")
private String statNode;
/**
* 父级id(树形结构使用)
*/
@TableField(exist = false)
private String cut;
}
private String pId;
@TableField(exist = false)
private String dictCode;
}
@@ -3,6 +3,7 @@ package com.jero.modules.system.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
@@ -30,35 +31,41 @@ public class SysRole implements Serializable {
/**
* id
*/
@ApiModelProperty(value = "id")
@TableId(type = IdType.ASSIGN_UUID)
private String id;
/**
* 角色名称
*/
@ApiModelProperty(value = "角色名称")
@Excel(name="角色名",width=15)
private String roleName;
/**
* 角色编码
*/
@ApiModelProperty(value = "角色编码")
@Excel(name="角色编码",width=15)
private String roleCode;
/**
* 描述
*/
@ApiModelProperty(value = "描述")
@Excel(name="描述",width=60)
private String description;
/**
* 创建人
*/
@ApiModelProperty(value = "创建人")
private String createBy;
/**
* 创建时间
*/
@ApiModelProperty(value = "创建时间")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date createTime;
@@ -66,11 +73,13 @@ public class SysRole implements Serializable {
/**
* 更新人
*/
@ApiModelProperty(value = "更新人")
private String updateBy;
/**
* 更新时间
*/
@ApiModelProperty(value = "更新时间")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date updateTime;