CostGroupValue.java
package com.tradecloud.domain.costing.clean;
import com.tradecloud.common.base.HibernateUtils;
import com.tradecloud.common.base.PersistenceBase;
import com.tradecloud.domain.costing.CostGroup;
import org.apache.commons.lang3.builder.EqualsBuilder;
import org.apache.commons.lang3.builder.HashCodeBuilder;
import javax.persistence.*;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import java.math.BigDecimal;
@Entity
@Access(AccessType.FIELD)
@XmlAccessorType(XmlAccessType.FIELD)
public class CostGroupValue extends PersistenceBase implements Comparable<CostGroupValue> {
private static final long serialVersionUID = 1L;
@Enumerated(EnumType.STRING)
private CostGroup costGroup;
private BigDecimal totalCost = new BigDecimal(0.0);
public CostGroup getCostGroup() {
return costGroup;
}
public void setCostGroup(CostGroup costGroup) {
this.costGroup = costGroup;
}
public BigDecimal getTotalCost() {
return totalCost;
}
public void setTotalCost(BigDecimal totalCost) {
this.totalCost = totalCost;
}
@Override
public int hashCode() {
return new HashCodeBuilder()
.append(costGroup)
.append(totalCost)
.hashCode();
}
@Override
public boolean equals(Object obj) {
if (this == obj) {
return true;
}
if (!HibernateUtils.proxyClassEquals(this, obj)) {
return false;
}
CostGroupValue other = (CostGroupValue) obj;
return new EqualsBuilder()
.append(costGroup, other.getCostGroup())
.append(totalCost, other.getTotalCost())
.isEquals();
}
@Override
public int compareTo(CostGroupValue costGroupValue) {
// TODO Auto-generated method stub
return this.costGroup.toString().compareTo(costGroupValue.getCostGroup().toString());
}
}