package book.stock; import java.math.BigDecimal; import foundation.data.entity.Entity; import foundation.util.Util; public class QtyCommand { private boolean doNothing; private BigDecimal addOperator; private BigDecimal deleteOperator; private BigDecimal freezeOperator; private BigDecimal unfreezeOperator; public QtyCommand() { doNothing = true; } public void load(Entity entity) { addOperator = parseOneValue(entity.getString("qty_add")); deleteOperator = parseOneValue(entity.getString("qty_delete")); freezeOperator = parseOneValue(entity.getString("qty_freeze")); unfreezeOperator = parseOneValue(entity.getString("qty_unfreeze")); doNothing = (addOperator == null) && (deleteOperator == null) && (freezeOperator == null) && (unfreezeOperator == null); } private BigDecimal parseOneValue(String value) { if (Util.isEmpty(value)) { return null; } if ("-".equalsIgnoreCase(value)) { return BigDecimal.valueOf(-1); } return BigDecimal.valueOf(1); } public boolean isDoNothing() { return doNothing; } public boolean isSetAdd() { return addOperator != null; } public boolean isSetDelete() { return deleteOperator != null; } public boolean isSetFreeze() { return freezeOperator != null; } public boolean isSetUnfreeze() { return unfreezeOperator != null; } public BigDecimal getAddOperator() { return addOperator; } public BigDecimal getDeleteOperator() { return deleteOperator; } public BigDecimal getFreezeOperator() { return freezeOperator; } public BigDecimal getUnfreezeOperator() { return unfreezeOperator; } }