package cn.com.lzt.contractreports.dto; import java.math.BigDecimal; import java.util.ArrayList; import java.util.Date; import java.util.List; import org.apache.commons.lang3.StringUtils; import org.jeecgframework.poi.excel.annotation.Excel; public class Contract4FinanceRptDto implements Comparable{ @Excel(name="财务核算编码",width=15) private String fincode; @Excel(name="管理处",width=30) private String projectname; @Excel(name="合同支出",width=15) private BigDecimal totalamount; @Excel(name="今年已付",width=15) private BigDecimal totalpayment; @Excel(name="今年未付",width=15) private BigDecimal nopay; @Excel(name="每月合同支出",width=15) private BigDecimal permonthamount; @Excel(name="本季预提",width=15) private BigDecimal quarterlyNoPay; // @Excel(name="合同支出",width=15) // private BigDecimal bdtotalamount; // // @Excel(name="今年已付",width=15) // private BigDecimal bdtotalpayment; // // @Excel(name="今年未付",width=15) // private BigDecimal bdnopay; // // @Excel(name="每月合同支出",width=15) // private BigDecimal bdpermonthamount; // // @Excel(name="本季预提",width=15) // private BigDecimal bdquarterlyNoPay; private String partnername; private String servicename; private Date start; private Date end; private String contractid; private String paytype; /**上年度***/ private String contractidlast; private Date startlast; private Date endlast; private Double totalamountlast; /**下年度***/ private String contractidnext; private Date startnext; private Date endnext; private Double totalamountnext; private String startyear; private String endyear; public String getProjectname() { return projectname; } public void setProjectname(String projectname) { this.projectname = projectname; } public String getPartnername() { return partnername; } public void setPartnername(String partnername) { this.partnername = partnername; } public String getServicename() { return servicename; } public void setServicename(String servicename) { this.servicename = servicename; } public Date getStart() { return start; } public void setStart(Date start) { this.start = start; } public Date getEnd() { return end; } public void setEnd(Date end) { this.end = end; } public BigDecimal getTotalamount() { return totalamount; } public void setTotalamount(BigDecimal totalamount) { this.totalamount = totalamount; } public BigDecimal getTotalpayment() { if(totalpayment == null) { return BigDecimal.ZERO; } return totalpayment; } public void setTotalpayment(BigDecimal totalpayment) { this.totalpayment = totalpayment; } public BigDecimal getPermonthamount() { return permonthamount; } public void setPermonthamount(BigDecimal permonthamount) { this.permonthamount = permonthamount; } public BigDecimal getNopay() { return nopay; } public void setNopay(BigDecimal nopay) { this.nopay = nopay; } public BigDecimal getQuarterlyNoPay() { return quarterlyNoPay; } public void setQuarterlyNoPay(BigDecimal quarterlyNoPay) { this.quarterlyNoPay = quarterlyNoPay; } public String getContractid() { return contractid; } public void setContractid(String contractid) { this.contractid = contractid; } public String getPaytype() { return paytype; } public void setPaytype(String paytype) { this.paytype = paytype; } public String getContractidlast() { return contractidlast; } public void setContractidlast(String contractidlast) { this.contractidlast = contractidlast; } public Date getStartlast() { return startlast; } public void setStartlast(Date startlast) { this.startlast = startlast; } public Date getEndlast() { return endlast; } public void setEndlast(Date endlast) { this.endlast = endlast; } public Double getTotalamountlast() { return totalamountlast; } public void setTotalamountlast(Double totalamountlast) { this.totalamountlast = totalamountlast; } public String getContractidnext() { return contractidnext; } public void setContractidnext(String contractidnext) { this.contractidnext = contractidnext; } public Date getStartnext() { return startnext; } public void setStartnext(Date startnext) { this.startnext = startnext; } public Date getEndnext() { return endnext; } public void setEndnext(Date endnext) { this.endnext = endnext; } public Double getTotalamountnext() { return totalamountnext; } public void setTotalamountnext(Double totalamountnext) { this.totalamountnext = totalamountnext; } public String getStartyear() { return startyear; } public void setStartyear(String startyear) { this.startyear = startyear; } public String getEndyear() { return endyear; } public void setEndyear(String endyear) { this.endyear = endyear; } public List getServiceNameList(){ ArrayList names = new ArrayList(); if(StringUtils.isEmpty(this.servicename)) return names; for(String name: this.servicename.split(",")) { names.add(name); }; return names; } /** * 供应商相同、项目相同、服务名字有交集,则为相同 * */ @Override public int compareTo(Contract4FinanceRptDto o) { if(!this.projectname.equals(o.projectname)) { return -1; } if(!this.partnername.equals(o.partnername)) { return -1; } List thisName = getServiceNameList(); List otherName = o.getServiceNameList(); thisName.retainAll(otherName); if(thisName.size() > 0) { return 0; }else { return -1; } } public String getFincode() { return fincode; } public void setFincode(String fincode) { this.fincode = fincode; } }