package com.norteksoft.acs.entity.organization; import java.util.HashSet; import java.util.Set; import javax.persistence.CascadeType; import javax.persistence.Entity; import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; import javax.persistence.OneToMany; import javax.persistence.OrderBy; import javax.persistence.Table; import org.apache.commons.lang.builder.ToStringBuilder; import com.norteksoft.acs.entity.IdEntity; import com.norteksoft.acs.entity.authorization.RoleWorkgroup; /** * 工作组管理 * */ @Entity @Table(name = "ACS_WORKGROUP") public class Workgroup extends IdEntity { private static final long serialVersionUID = 1L; /** * 公司属性 */ private Company company = null; /** * 工作组编号 */ private String code; /** * 工作组名称 */ private String name; /** * 工作组描述 */ private String description; private Integer weight; //权重 /** *设置工作组和(用户-工作组)中间表一对多的关系 */ private Set<WorkgroupUser> workgroupUsers = new HashSet<WorkgroupUser>(0); private Set<RoleWorkgroup> roleWorkgroups = new HashSet<RoleWorkgroup>(0); /** * 公司和工作组的一对多关系 * * @param company */ @ManyToOne(cascade = { CascadeType.PERSIST, CascadeType.MERGE }) @JoinColumn(name = "FK_COMPANY_ID") public Company getCompany() { return company; } public void setCompany(Company company) { this.company = company; } public String getCode() { return code; } public void setCode(String code) { this.code = code; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getDescription() { return description; } public void setDescription(String description) { this.description = description; } /** * 设置用户与(工作组-用户)中间表关系(一对多) */ @OneToMany(mappedBy="workgroup") @OrderBy("id") public Set<WorkgroupUser> getWorkgroupUsers() { return workgroupUsers; } public void setWorkgroupUsers(Set<WorkgroupUser> workgroupUsers) { this.workgroupUsers = workgroupUsers; } @Override public String toString() { return ToStringBuilder.reflectionToString(this); } @OneToMany(mappedBy="workgroup") public Set<RoleWorkgroup> getRoleWorkgroups() { return roleWorkgroups; } public void setRoleWorkgroups(Set<RoleWorkgroup> roleWorkgroups) { this.roleWorkgroups = roleWorkgroups; } public Integer getWeight() { return weight; } public void setWeight(Integer weight) { this.weight = weight; } }