From ee2fef6b26d25d97bb559264136a5d579b4074c6 Mon Sep 17 00:00:00 2001 From: ptijffb8p <1754749633@qq.com> Date: Thu, 20 Nov 2025 18:56:04 +0800 Subject: [PATCH] ADD file via upload --- Dept.java | 251 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 251 insertions(+) create mode 100644 Dept.java diff --git a/Dept.java b/Dept.java new file mode 100644 index 0000000..637dcce --- /dev/null +++ b/Dept.java @@ -0,0 +1,251 @@ +package com.shanzhu.market.entity.domain; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import java.io.Serializable; + +/** + * 部门实体类 + * 功能:定义系统部门的数据模型,是组织架构的基础组成单元 + * 实现方式: + * 1. 使用MyBatis-Plus提供的注解进行数据持久化 + * 2. 采用面向对象设计,封装部门的属性和行为 + * 3. 实现Serializable接口支持对象序列化和网络传输 + * 数据模型说明: + * 1. 采用自增主键策略,确保数据唯一性 + * 2. 包含部门基本信息:ID、名称、描述、状态 + * 3. 支持部门状态管理(正常/禁用) + * 4. 使用常量定义状态值,提高代码可读性和维护性 + * 用途: + * - 组织员工的归属关系 + * - 构建企业组织架构 + * - 支持基于部门的数据筛选和统计 + * - 为权限管理提供组织维度的控制 + */ +@TableName("department") // 指定映射的数据库表名 +public class Dept implements Serializable { + /** + * 部门状态常量 - 正常 + * 常量值:"0" + * 业务意义:表示部门处于正常使用状态 + * 状态特性: + * - 可正常分配员工到此部门 + * - 可参与部门树展示和业务查询 + * - 可进行部门信息修改和管理操作 + */ + public static final String STATE_NORMAL="0"; + + /** + * 部门状态常量 - 禁用 + * 常量值:"-1" + * 业务意义:表示部门已被停用/撤销 + * 状态特性: + * - 不能再分配新员工到此部门 + * - 部门内现有员工仍可保留在该部门 + * - 可用于软删除场景,保留历史数据 + * 业务场景:部门合并、撤销等情况下使用 + */ + public static final String STATE_BAN="-1"; + + /** + * 部门ID + * 数据类型:Long + * 映射关系:表主键,使用AUTO自增策略 + * 业务意义:部门在系统中的唯一标识符 + * 技术细节: + * - 注解@TableId(type = IdType.AUTO)指定使用数据库自增 + * - 数据库中应设置对应字段为AUTO_INCREMENT + * 关联作用:作为外键用于关联员工表、业务数据等 + */ + @TableId(type = IdType.AUTO) // 指定主键生成策略为自动递增 + private Long id; + + /** + * 部门名称 + * 数据类型:String + * 业务意义:部门的正式名称,用于系统中的显示和标识 + * 命名规范:通常采用企业标准部门名称,如"财务部"、"人力资源部"等 + * 约束要求: + * - 名称应具有唯一性,避免歧义 + * - 长度应适中,符合业务习惯 + * - 建议使用中文名称,便于业务人员理解 + */ + private String name; + + /** + * 部门描述信息 + * 数据类型:String + * 业务意义:记录部门的详细说明、职责范围、工作内容等信息 + * 用途: + * - 帮助系统用户了解各部门的工作内容和职责边界 + * - 为新员工提供部门信息参考 + * - 辅助管理层进行部门管理和调整 + * 最佳实践:应包含部门的主要职责、业务范围、工作目标等信息 + */ + private String info; + + /** + * 部门状态 + * 数据类型:String + * 业务意义:控制部门在系统中的可用状态 + * 取值说明: + * - 使用常量STATE_NORMAL("0")表示正常状态 + * - 使用常量STATE_BAN("-1")表示禁用状态 + * 状态管理: + * - 正常状态:可进行所有部门相关操作 + * - 禁用状态:限制部分操作,如不能新增员工 + * 建议:应使用类中定义的常量而不是直接使用字符串值,提高代码可维护性 + */ + private String state; + + /** + * 默认构造方法 + * 用途: + * 1. 支持JSON反序列化,允许从JSON字符串创建对象 + * 2. 支持MyBatis等ORM框架的对象实例化 + * 3. 支持Spring等框架的依赖注入和反射操作 + * 4. 允许通过setter方法逐步构建对象 + * 调用场景: + * - 系统启动时框架自动创建实例 + * - 反序列化过程中调用 + * - 手动创建对象并通过setter设置属性 + */ + public Dept() { + } + + /** + * 全参构造方法 + * 用途:一次性创建包含所有属性的完整部门对象 + * 适用场景: + * - 已知所有属性值时快速创建对象 + * - 测试环境中创建模拟数据 + * - 从其他数据源转换时使用 + * 参数说明: + * @param id 部门ID,可为null(新增部门时) + * @param name 部门名称,必填 + * @param info 部门描述,可选 + * @param state 部门状态,建议使用类中定义的常量 + * 注意事项:创建新部门时,通常不需要设置id,由数据库自动生成 + */ + public Dept(Long id, String name, String info, String state) { + this.id = id; + this.name = name; + this.info = info; + this.state = state; + } + + /** + * 获取部门ID + * 功能:返回部门的唯一标识符 + * 返回值:部门ID(Long类型) + * 使用场景: + * - 获取部门唯一标识 + * - 进行数据关联操作 + * - 作为参数传递给其他方法 + * @return 部门ID + */ + public Long getId() { + return id; + } + + /** + * 设置部门ID + * 功能:为部门对象设置唯一标识符 + * 参数: + * @param id 部门ID,通常由数据库生成 + * 注意事项: + * - 一般情况下不需要手动设置ID,由ORM框架自动处理 + * - 仅在特殊情况下使用,如数据迁移、导入等 + */ + public void setId(Long id) { + this.id = id; + } + + /** + * 获取部门名称 + * 功能:返回部门的名称 + * 返回值:部门名称(String类型) + * 使用场景: + * - 界面展示 + * - 数据查询和筛选 + * - 日志记录和审计 + * @return 部门名称 + */ + public String getName() { + return name; + } + + /** + * 设置部门名称 + * 功能:为部门对象设置名称 + * 参数: + * @param name 部门名称 + * 验证建议: + * - 名称不能为空 + * - 应进行唯一性检查 + * - 长度应符合数据库约束 + */ + public void setName(String name) { + this.name = name; + } + + /** + * 获取部门描述信息 + * 功能:返回部门的详细描述信息 + * 返回值:部门描述(String类型) + * 使用场景: + * - 详情页面展示 + * - 部门信息导出 + * - 数据分析和报告生成 + * @return 部门描述 + */ + public String getInfo() { + return info; + } + + /** + * 设置部门描述信息 + * 功能:为部门对象设置详细描述信息 + * 参数: + * @param info 部门描述 + * 内容建议: + * - 包含部门主要职责 + * - 描述部门业务范围 + * - 说明与其他部门的协作关系 + */ + public void setInfo(String info) { + this.info = info; + } + + /** + * 获取部门状态 + * 功能:返回部门的当前状态 + * 返回值: + * - "0":正常状态 + * - "-1":禁用状态 + * 使用场景: + * - 状态判断和业务逻辑控制 + * - 界面状态展示 + * - 数据筛选和统计 + * @return 部门状态("0"表示正常, "-1"表示禁用) + */ + public String getState() { + return state; + } + + /** + * 设置部门状态 + * 功能:修改部门的可用状态 + * 参数: + * @param state 部门状态,建议使用类中定义的常量STATE_NORMAL或STATE_BAN + * 业务影响: + * - 设置为正常:部门可正常使用,可分配员工 + * - 设置为禁用:部门暂停使用,限制部分操作 + * 最佳实践:使用常量而非直接字符串值,如dept.setState(Dept.STATE_NORMAL) + */ + public void setState(String state) { + this.state = state; + } +} -- 2.34.1