DealCreationPoint.java
package com.tradecloud.domain.model.deal;
public enum DealCreationPoint {
ORDER_CONSIGNED("Order Consigned"),
ORDER_FINALISED("Order Finalise"),
ORDER_SIGNED_OFF("Order Sign Off"),
DOCUMENT_FINALISED("Document Finalise"),
DOCUMENT_SIGNED_OFF("Document Sign Off"),
ORDER_DELETED("Order Deletion"),
SPLIT_PAYMENT_CHANGE("split Payment Change"),
MANUAL_DEAL_UPDATED_SOURCE("Manual Deal Updated"),
MANUAL_DEAL_CREATED_SOURCE("Manual Deal Created");
private String stringValue;
DealCreationPoint(String stringValue) {
this.stringValue = stringValue;
}
@Override
public String toString() {
return stringValue;
}
/**
* Redbox Deal Creation Point Wording may differ from TC, e.g redbox send us "Order Consignment" and TC expect "Order Consigned".
* This method will ensure any refactor should keep redox integration working.
*
* @param redBoxString Deal Creation Point from Redbox.
* @return
*/
public static DealCreationPoint fromRedbox(String redBoxString) {
switch (redBoxString) {
case "Order Consignment":
return ORDER_CONSIGNED;
case "Order Finalise":
return ORDER_FINALISED;
case "Order Sign Off":
return ORDER_SIGNED_OFF;
case "Document Finalise":
return DOCUMENT_FINALISED;
case "Order Deletion":
return ORDER_DELETED;
default:
return null;
}
}
}