“linengliang”
2023-11-06 c6b25668f3c53d9448df2c68904db4bf673d1eb7
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
package org.jeecg.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.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecg.common.constant.CommonConstant;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;
 
import java.io.Serializable;
import java.util.Date;
import java.util.Objects;
 
/**
 * <p>
 * 部门表
 * <p>
 *
 * @Author Steve
 * @Since  2019-01-22
 */
@Data
@TableName("sys_depart")
public class SysDepart implements Serializable {
    private static final long serialVersionUID = 1L;
 
    /**ID*/
    @TableId(type = IdType.ASSIGN_ID)
    private String id;
    /**父机构ID*/
    private String parentId;
    /**机构/部门名称*/
    @Excel(name="机构/部门名称",width=15)
    private String departName;
    /**英文名*/
    @Excel(name="英文名",width=15)
    private String departNameEn;
    /**缩写*/
    private String departNameAbbr;
    /**排序*/
    @Excel(name="排序",width=15)
    private Integer departOrder;
    /**描述*/
    @Excel(name="描述",width=15)
    private String description;
    /**机构类别 1=公司,2=组织机构,3=岗位*/
    @Excel(name="机构类别",width=15,dicCode="org_category")
    private String orgCategory;
    /**机构类型*/
    private String orgType;
    /**机构编码*/
    @Excel(name="机构编码",width=15)
    private String orgCode;
    /**手机号*/
    @Excel(name="手机号",width=15)
    private String mobile;
    /**传真*/
    @Excel(name="传真",width=15)
    private String fax;
    /**地址*/
    @Excel(name="地址",width=15)
    private String address;
    /**备注*/
    @Excel(name="备注",width=15)
    private String memo;
    /**状态(1启用,0不启用)*/
    @Dict(dicCode = "depart_status")
    private String status;
    /**删除状态(0,正常,1已删除)*/
    @Dict(dicCode = "del_flag")
    private String delFlag = String.valueOf(CommonConstant.DEL_FLAG_0);
    /**对接企业微信的ID*/
    private String qywxIdentifier;
    /**创建人*/
    private String createBy;
    /**创建日期*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private Date createTime;
    /**更新人*/
    private String updateBy;
    /**更新日期*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private Date updateTime;
 
    /**使用部门编码*/
    private String useDepartNum;
 
    /**维修部门编码*/
    private String repairDepartNum;
 
    //update-begin---author:wangshuai ---date:20200308  for:[JTC-119]在部门管理菜单下设置部门负责人,新增字段负责人ids和旧的负责人ids
    /**部门负责人的ids*/
    @TableField(exist = false)
    private String directorUserIds;
    /**旧的部门负责人的ids(用于比较删除和新增)*/
    @TableField(exist = false)
    private String oldDirectorUserIds;
    //update-end---author:wangshuai ---date:20200308  for:[JTC-119]新增字段负责人ids和旧的负责人ids
 
    /**
     * 重写equals方法
     */
    @Override
    public boolean equals(Object o) {
        if (this == o) {
            return true;
        }
        if (o == null || getClass() != o.getClass()) {
            return false;
        }
        if (!super.equals(o)) {
            return false;
        }
        SysDepart depart = (SysDepart) o;
        return Objects.equals(id, depart.id) &&
                Objects.equals(parentId, depart.parentId) &&
                Objects.equals(departName, depart.departName) &&
                Objects.equals(departNameEn, depart.departNameEn) &&
                Objects.equals(departNameAbbr, depart.departNameAbbr) &&
                Objects.equals(departOrder, depart.departOrder) &&
                Objects.equals(description, depart.description) &&
                Objects.equals(orgCategory, depart.orgCategory) &&
                Objects.equals(orgType, depart.orgType) &&
                Objects.equals(orgCode, depart.orgCode) &&
                Objects.equals(mobile, depart.mobile) &&
                Objects.equals(fax, depart.fax) &&
                Objects.equals(address, depart.address) &&
                Objects.equals(memo, depart.memo) &&
                Objects.equals(status, depart.status) &&
                Objects.equals(delFlag, depart.delFlag) &&
                Objects.equals(createBy, depart.createBy) &&
                Objects.equals(createTime, depart.createTime) &&
                Objects.equals(updateBy, depart.updateBy) &&
                Objects.equals(useDepartNum, depart.useDepartNum) &&
                Objects.equals(repairDepartNum, depart.repairDepartNum) &&
                Objects.equals(updateTime, depart.updateTime);
    }
 
    /**
     * 重写hashCode方法
     */
    @Override
    public int hashCode() {
 
        return Objects.hash(super.hashCode(), id, parentId, departName,
                departNameEn, departNameAbbr, departOrder, description,orgCategory,
                orgType, orgCode, mobile, fax, address, memo, status,
                delFlag, createBy, createTime, updateBy, updateTime,useDepartNum,repairDepartNum);
    }
}