File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
package kr.itn.itnhub.org;
public class Organization {
private Long id;
private String orgNo;
private String orgName;
private String channelSlug;
private String deptName;
private String managerName;
private String managerTitle;
private String managerPhone;
private String managerEmail;
private String mjDeptName;
private String mjManagerName;
private String mjManagerPhone;
private String mjManagerEmail;
private String lawyerName;
private String lawyerPhone;
private String lawyerEmail;
private String lawyerAssignedDate;
private String channelIdMj;
private String channelIdLaw;
/**
* 상태는 저장하지 않고 항상 파생한다.
* 저장하면 채널ID와 상태가 어긋나는 순간이 생기고, 그 어긋남을 고칠 방법이 없다.
*/
public OrgStatus getStatus() {
boolean mj = filled(channelIdMj);
boolean law = filled(channelIdLaw);
if (mj && law) {
return OrgStatus.ACTIVE;
}
if (mj || law) {
return OrgStatus.PARTIAL;
}
return hasRequiredContact() ? OrgStatus.READY : OrgStatus.INFO_PENDING;
}
/** 직급/직함은 비어 있는 기관이 실제로 있으므로 필수에서 뺀다. */
public boolean hasRequiredContact() {
return filled(deptName)
&& filled(managerName)
&& filled(managerPhone)
&& filled(managerEmail);
}
private static boolean filled(String value) {
return value != null && !value.isBlank();
}
public Long getId() { return id; }
public void setId(Long id) { this.id = id; }
public String getOrgNo() { return orgNo; }
public void setOrgNo(String orgNo) { this.orgNo = orgNo; }
public String getOrgName() { return orgName; }
public void setOrgName(String orgName) { this.orgName = orgName; }
public String getChannelSlug() { return channelSlug; }
public void setChannelSlug(String channelSlug) { this.channelSlug = channelSlug; }
public String getDeptName() { return deptName; }
public void setDeptName(String deptName) { this.deptName = deptName; }
public String getManagerName() { return managerName; }
public void setManagerName(String managerName) { this.managerName = managerName; }
public String getManagerTitle() { return managerTitle; }
public void setManagerTitle(String managerTitle) { this.managerTitle = managerTitle; }
public String getManagerPhone() { return managerPhone; }
public void setManagerPhone(String managerPhone) { this.managerPhone = managerPhone; }
public String getManagerEmail() { return managerEmail; }
public void setManagerEmail(String managerEmail) { this.managerEmail = managerEmail; }
public String getMjDeptName() { return mjDeptName; }
public void setMjDeptName(String mjDeptName) { this.mjDeptName = mjDeptName; }
public String getMjManagerName() { return mjManagerName; }
public void setMjManagerName(String mjManagerName) { this.mjManagerName = mjManagerName; }
public String getMjManagerPhone() { return mjManagerPhone; }
public void setMjManagerPhone(String mjManagerPhone) { this.mjManagerPhone = mjManagerPhone; }
public String getMjManagerEmail() { return mjManagerEmail; }
public void setMjManagerEmail(String mjManagerEmail) { this.mjManagerEmail = mjManagerEmail; }
public String getLawyerName() { return lawyerName; }
public void setLawyerName(String lawyerName) { this.lawyerName = lawyerName; }
public String getLawyerPhone() { return lawyerPhone; }
public void setLawyerPhone(String lawyerPhone) { this.lawyerPhone = lawyerPhone; }
public String getLawyerEmail() { return lawyerEmail; }
public void setLawyerEmail(String lawyerEmail) { this.lawyerEmail = lawyerEmail; }
public String getLawyerAssignedDate() { return lawyerAssignedDate; }
public void setLawyerAssignedDate(String lawyerAssignedDate) { this.lawyerAssignedDate = lawyerAssignedDate; }
public String getChannelIdMj() { return channelIdMj; }
public void setChannelIdMj(String channelIdMj) { this.channelIdMj = channelIdMj; }
public String getChannelIdLaw() { return channelIdLaw; }
public void setChannelIdLaw(String channelIdLaw) { this.channelIdLaw = channelIdLaw; }
}