Subversion Repositories SmartDukaan

Rev

Blame | Last modification | View Log | RSS feed

package in.shop2020.model.v1.order;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class OrderStatusGroups {

    private final List<OrderStatus> codCancellable;
    private final List<OrderStatus> prepaidCancellableBeforeBilled;
    private final List<OrderStatus> prepaidCancellableAfterBilled;
    private final List<OrderStatus> openOrders;
    private final List<OrderStatus> refundedOrders;
    private final List<OrderStatus> shippedOrders;
    private final List<OrderStatus> failedOrders;

    public OrderStatusGroups() {
        this.codCancellable = new ArrayList<>(Arrays.asList(
                OrderStatus.COD_VERIFICATION_PENDING,
                OrderStatus.SUBMITTED_FOR_PROCESSING,
                OrderStatus.ACCEPTED,
                OrderStatus.INVENTORY_LOW,
                OrderStatus.LOW_INV_PO_RAISED,
                OrderStatus.LOW_INV_REVERSAL_IN_PROCESS,
                OrderStatus.LOW_INV_NOT_AVAILABLE_AT_HOTSPOT,
                OrderStatus.BILLED,
                OrderStatus.PAYMENT_FLAGGED
        ));

        this.prepaidCancellableBeforeBilled = new ArrayList<>(Arrays.asList(
                OrderStatus.COD_VERIFICATION_PENDING,
                OrderStatus.SUBMITTED_FOR_PROCESSING,
                OrderStatus.ACCEPTED,
                OrderStatus.INVENTORY_LOW,
                OrderStatus.LOW_INV_PO_RAISED,
                OrderStatus.LOW_INV_REVERSAL_IN_PROCESS,
                OrderStatus.LOW_INV_NOT_AVAILABLE_AT_HOTSPOT
        ));

        this.prepaidCancellableAfterBilled = new ArrayList<>(Arrays.asList(
                OrderStatus.BILLED,
                OrderStatus.PAYMENT_FLAGGED
        ));

        this.openOrders = new ArrayList<>(Arrays.asList(
                OrderStatus.PAYMENT_PENDING,
                OrderStatus.COD_VERIFICATION_PENDING,
                OrderStatus.SUBMITTED_FOR_PROCESSING,
                OrderStatus.ACCEPTED,
                OrderStatus.INVENTORY_LOW,
                OrderStatus.BILLED,
                OrderStatus.PAYMENT_FLAGGED,
                OrderStatus.SHIPPED_FROM_WH,
                OrderStatus.SHIPPED_TO_LOGST,
                OrderStatus.PAYMENT_FLAGGED_DENIED,
                OrderStatus.SHIPPED_TO_DESTINATION_CITY,
                OrderStatus.REACHED_DESTINATION_CITY,
                OrderStatus.CANCEL_REQUEST_RECEIVED,
                OrderStatus.CANCEL_REQUEST_CONFIRMED,
                OrderStatus.RTO_IN_TRANSIT,
                OrderStatus.RTO_RECEIVED_PRESTINE,
                OrderStatus.DOA_PICKUP_REQUEST_RAISED,
                OrderStatus.DOA_PICKUP_CONFIRMED,
                OrderStatus.DOA_RETURN_IN_TRANSIT,
                OrderStatus.DOA_RECEIVED_PRESTINE,
                OrderStatus.DOA_CERT_INVALID,
                OrderStatus.DOA_CERT_VALID,
                OrderStatus.LOW_INV_PO_RAISED,
                OrderStatus.LOW_INV_REVERSAL_IN_PROCESS,
                OrderStatus.LOW_INV_NOT_AVAILABLE_AT_HOTSPOT,
                OrderStatus.LOW_INV_PO_RAISED_TIMEOUT,
                OrderStatus.LOW_INV_REVERSAL_TIMEOUT,
                OrderStatus.FIRST_DELIVERY_ATTEMPT_MADE,
                OrderStatus.CAPTURE_IN_PROCESS,
                OrderStatus.DOA_REQUEST_RECEIVED,
                OrderStatus.DOA_REQUEST_AUTHORIZED,
                OrderStatus.DOA_RECEIVED_DAMAGED,
                OrderStatus.DOA_LOST_IN_TRANSIT,
                OrderStatus.RTO_RECEIVED_DAMAGED,
                OrderStatus.RTO_LOST_IN_TRANSIT,
                OrderStatus.RTO_INVENTORY_REVERSED,
                OrderStatus.RET_REQUEST_RECEIVED,
                OrderStatus.RET_REQUEST_AUTHORIZED,
                OrderStatus.RET_PICKUP_REQUEST_RAISED,
                OrderStatus.RET_PICKUP_DENIED,
                OrderStatus.RET_PICKUP_CONFIRMED,
                OrderStatus.RET_RETURN_IN_TRANSIT,
                OrderStatus.RET_RECEIVED_PRESTINE,
                OrderStatus.RET_RECEIVED_DAMAGED,
                OrderStatus.RET_LOST_IN_TRANSIT,
                OrderStatus.RET_PRODUCT_USABLE,
                OrderStatus.DELIVERED_AT_STORE,
                OrderStatus.RECEIVED_AT_STORE
        ));

        this.refundedOrders = new ArrayList<>(Arrays.asList(
                OrderStatus.CANCELLED_ON_CUSTOMER_REQUEST,
                OrderStatus.RTO_REFUNDED,
                OrderStatus.DOA_VALID_REFUNDED,
                OrderStatus.DOA_INVALID_REFUNDED,
                OrderStatus.CANCELLED_DUE_TO_LOW_INVENTORY,
                OrderStatus.DOA_REFUNDED_RCVD_DAMAGED,
                OrderStatus.DOA_REFUNDED_LOST_IN_TRANSIT,
                OrderStatus.RTO_DAMAGED_REFUNDED,
                OrderStatus.RTO_LOST_IN_TRANSIT_REFUNDED,
                OrderStatus.RET_PRODUCT_USABLE_REFUNDED,
                OrderStatus.RET_PRODUCT_UNUSABLE_REFUNDED,
                OrderStatus.RET_REFUNDED_LOST_IN_TRANSIT,
                OrderStatus.RET_REFUNDED_RCVD_DAMAGED,
                OrderStatus.LOST_IN_TRANSIT_REFUNDED
        ));

        this.shippedOrders = new ArrayList<>(Arrays.asList(
                OrderStatus.SHIPPED_FROM_WH,
                OrderStatus.SHIPPED_TO_LOGST,
                OrderStatus.SHIPPED_TO_DESTINATION_CITY,
                OrderStatus.REACHED_DESTINATION_CITY,
                OrderStatus.RTO_IN_TRANSIT,
                OrderStatus.RTO_RECEIVED_PRESTINE,
                OrderStatus.DOA_PICKUP_REQUEST_RAISED,
                OrderStatus.DOA_PICKUP_CONFIRMED,
                OrderStatus.DOA_RETURN_IN_TRANSIT,
                OrderStatus.DOA_RECEIVED_PRESTINE,
                OrderStatus.DOA_CERT_INVALID,
                OrderStatus.DOA_CERT_VALID,
                OrderStatus.FIRST_DELIVERY_ATTEMPT_MADE,
                OrderStatus.DOA_REQUEST_RECEIVED,
                OrderStatus.DOA_REQUEST_AUTHORIZED,
                OrderStatus.DOA_RECEIVED_DAMAGED,
                OrderStatus.DOA_LOST_IN_TRANSIT,
                OrderStatus.RTO_RECEIVED_DAMAGED,
                OrderStatus.RTO_LOST_IN_TRANSIT,
                OrderStatus.RTO_INVENTORY_REVERSED,
                OrderStatus.RET_REQUEST_RECEIVED,
                OrderStatus.RET_REQUEST_AUTHORIZED,
                OrderStatus.RET_PICKUP_REQUEST_RAISED,
                OrderStatus.RET_PICKUP_DENIED,
                OrderStatus.RET_PICKUP_CONFIRMED,
                OrderStatus.RET_RETURN_IN_TRANSIT,
                OrderStatus.RET_RECEIVED_PRESTINE,
                OrderStatus.RET_RECEIVED_DAMAGED,
                OrderStatus.RET_LOST_IN_TRANSIT,
                OrderStatus.RET_PRODUCT_USABLE,
                OrderStatus.RET_PRODUCT_UNUSABLE,
                OrderStatus.LOST_IN_TRANSIT,
                OrderStatus.DELIVERED_AT_STORE,
                OrderStatus.RECEIVED_AT_STORE
        ));

        this.failedOrders = new ArrayList<>(Arrays.asList(
                OrderStatus.PAYMENT_FAILED,
                OrderStatus.CANCELLED_DUE_TO_LOW_INVENTORY,
                OrderStatus.REJECTED,
                OrderStatus.DOA_INVALID_REFUNDED,
                OrderStatus.DOA_INVALID_RESHIPPED,
                OrderStatus.DOA_VALID_REFUNDED,
                OrderStatus.DOA_VALID_RESHIPPED,
                OrderStatus.RTO_REFUNDED,
                OrderStatus.RTO_RESHIPPED,
                OrderStatus.COD_VERIFICATION_FAILED
        ));
    }

    public List<OrderStatus> getCodCancellable() { return codCancellable; }
    public List<OrderStatus> getPrepaidCancellableBeforeBilled() { return prepaidCancellableBeforeBilled; }
    public List<OrderStatus> getPrepaidCancellableAfterBilled() { return prepaidCancellableAfterBilled; }
    public List<OrderStatus> getOpenOrders() { return openOrders; }
    public List<OrderStatus> getRefundedOrders() { return refundedOrders; }
    public List<OrderStatus> getShippedOrders() { return shippedOrders; }
    public List<OrderStatus> getFailedOrders() { return failedOrders; }
}