/** * @Project: hehenian-biz-common * @Package com.hehenian.biz.common.loan.dataobject * @Title: LoanDetailDo.java * @Description: TODO * @author: liuzgmf * @date 2014年12月10日 下午6:47:28 * @Copyright: HEHENIAN Co.,Ltd. All rights reserved. * @version V1.0 */ package com.hehenian.biz.common.loan.dataobject; import java.io.Serializable; import java.util.Date; import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.time.DateFormatUtils; import com.hehenian.biz.common.account.dataobject.AccountUserDo; import com.hehenian.biz.common.account.dataobject.BankCardDo; import com.hehenian.biz.common.account.dataobject.PersonDo; import com.hehenian.biz.common.trade.dataobject.BorrowDo; import com.hehenian.biz.common.util.StringUtil; /** * * @author: liuzgmf * @date 2014年12月10日 下午6:47:28 */ public class LoanDetailDo implements Serializable { private static final long serialVersionUID = 1L; private Long loanId; // 借款ID private Long userId; // 用户ID private String realName; // 真实姓名 private String idNo; // 身份证号 private String mobile; // 手机号码 private Double income; // 月收入 private LoanUsage loanUsage; // 贷款用途 private String loanUsageDesc; // 用途描叙 private Integer loanPeriod; // 借款期限 private Double loanAmount; // 借款金额 private String checkDesc; // 校验描叙 private String remark; // 备注 private LoanStatus loanStatus; // 借款状态 private Date createTime; // 创建日期 private Date updateTime; // 最后修改日期 private AccountUserDo userDo; // 借款人信息 private PersonDo personDo; // 借款详细信息 private BorrowDo borrowDo; // 借款标的信息 private BankCardDo bankCardDo; // 银行卡信息 /** 贷款用途(CONSUME-消费,OTHER-其他) */ public enum LoanUsage { CONSUME, OTHER; } /** 借款状态(PROCESSING-申请中,CHECKED-校验通过,UNCHECKED-校验不通过,LOANS-放款) PENDING-待处理,AUDITED-已审核,TREATY-已签约,SUBJECTED 已上标 REPAYING还款中 REPAYED已还清 * ,NOPASS-拒绝*/ public enum LoanStatus { PROCESSING, CHECKED, UNCHECKED, LOANS,PENDING, AUDITED, TREATY, SUBJECTED, NOPASS ,REPAYING ,REPAYED; } /** * @return loanId */ public Long getLoanId() { return loanId; } /** * @param loanId * the loanId to set */ public void setLoanId(Long loanId) { this.loanId = loanId; } /** * @return userId */ public Long getUserId() { return userId; } /** * @param userId * the userId to set */ public void setUserId(Long userId) { this.userId = userId; } /** * @return realName */ public String getRealName() { return realName; } /** * @param realName * the realName to set */ public void setRealName(String realName) { this.realName = realName; } /** * @return idNo */ public String getIdNo() { return idNo; } /** * @param idNo * the idNo to set */ public void setIdNo(String idNo) { this.idNo = idNo; } /** * @return mobile */ public String getMobile() { return mobile; } /** * @param mobile * the mobile to set */ public void setMobile(String mobile) { this.mobile = mobile; } /** * @return income */ public Double getIncome() { return income; } /** * @param income * the income to set */ public void setIncome(Double income) { this.income = income; } /** * @return loanUsage */ public LoanUsage getLoanUsage() { return loanUsage; } /** * @param loanUsage * the loanUsage to set */ public void setLoanUsage(LoanUsage loanUsage) { this.loanUsage = loanUsage; } /** * @return loanUsageDesc */ public String getLoanUsageDesc() { return loanUsageDesc; } /** * @param loanUsageDesc * the loanUsageDesc to set */ public void setLoanUsageDesc(String loanUsageDesc) { this.loanUsageDesc = StringUtil.filterDangerString(loanUsageDesc); } /** * @return loanPeriod */ public Integer getLoanPeriod() { return loanPeriod; } /** * @param loanPeriod * the loanPeriod to set */ public void setLoanPeriod(Integer loanPeriod) { this.loanPeriod = loanPeriod; } /** * @return loanAmount */ public Double getLoanAmount() { return loanAmount; } /** * @param loanAmount * the loanAmount to set */ public void setLoanAmount(Double loanAmount) { this.loanAmount = loanAmount; } /** * @return checkDesc */ public String getCheckDesc() { return checkDesc; } /** * @param checkDesc * the checkDesc to set */ public void setCheckDesc(String checkDesc) { this.checkDesc = checkDesc; } /** * @return remark */ public String getRemark() { return remark; } /** * @param remark * the remark to set */ public void setRemark(String remark) { this.remark = remark; } /** * @return loanStatus */ public LoanStatus getLoanStatus() { return loanStatus; } /** * @param loanStatus * the loanStatus to set */ public void setLoanStatus(LoanStatus loanStatus) { this.loanStatus = loanStatus; } /** * @return createTime */ public Date getCreateTime() { return createTime; } /** * @param createTime * the createTime to set */ public void setCreateTime(Date createTime) { this.createTime = createTime; } /** * @return updateTime */ public Date getUpdateTime() { return updateTime; } /** * @param updateTime * the updateTime to set */ public void setUpdateTime(Date updateTime) { this.updateTime = updateTime; } /** * @return userDo */ public AccountUserDo getUserDo() { return userDo; } /** * @param userDo * the userDo to set */ public void setUserDo(AccountUserDo userDo) { this.userDo = userDo; } /** * @return personDo */ public PersonDo getPersonDo() { return personDo; } /** * @param personDo * the personDo to set */ public void setPersonDo(PersonDo personDo) { this.personDo = personDo; } /** * @return borrowDo */ public BorrowDo getBorrowDo() { return borrowDo; } /** * @param borrowDo * the borrowDo to set */ public void setBorrowDo(BorrowDo borrowDo) { this.borrowDo = borrowDo; } /** * @return bankCardDo */ public BankCardDo getBankCardDo() { return bankCardDo; } /** * @param bankCardDo * the bankCardDo to set */ public void setBankCardDo(BankCardDo bankCardDo) { this.bankCardDo = bankCardDo; } /** * @return sex */ public String getSex() { if (StringUtils.isBlank(idNo) || (idNo.length() != 15 && idNo.length() != 18)) { return ""; } if (this.idNo.length() == 15) { return (this.idNo.charAt(13) % 2 == 0 ? "女" : "男"); } if (this.idNo.length() == 18) { return (this.idNo.charAt(16) % 2 == 0 ? "女" : "男"); } return ""; } /** * @return age */ public Integer getAge() { if (this.idNo.length() == 15) { int date = 1900 + Integer.parseInt(idNo.substring(6, 8)); return Integer.parseInt(DateFormatUtils.format(new Date(), "yyyy")) - date; } if (this.idNo.length() == 18) { int date = Integer.parseInt(idNo.substring(6, 10)); return Integer.parseInt(DateFormatUtils.format(new Date(), "yyyy")) - date; } return 0; } @Override public String toString() { return "LoanDetailDo [loanId=" + loanId + ", userId=" + userId + ", realName=" + realName + ", idNo=" + idNo + ", mobile=" + mobile + ", income=" + income + ", loanUsage=" + loanUsage + ", loanUsageDesc=" + loanUsageDesc + ", loanPeriod=" + loanPeriod + ", loanAmount=" + loanAmount + ", checkDesc=" + checkDesc + ", remark=" + remark + ", loanStatus=" + loanStatus + ", createTime=" + createTime + ", updateTime=" + updateTime + "]"; } }