Subversion Repositories SmartDukaan

Rev

Rev 4027 | Rev 4215 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

/**
 * 
 */
package in.shop2020.util;

import in.shop2020.model.v1.order.OrderStatus;

import java.util.Arrays;
import java.util.Collections;
import java.util.List;

/**
 * @author mandeep
 *
 * Class containing constants used across CRM
 */
public class CRMConstants {
    public static final String CRM_EMAIL_SENDOR = "help@saholic.com";
    public static final String CRM_EMAIL_TYPE   = "CRMInfo";
    public static final String CRM_SUBJECT_PREFIX_FOR_TICKET_ID = "Saholic#";
    public static final long   ADMIN_AGENT_ID   = 1;

    public static final List<OrderStatus> failedStatusList = Arrays.asList(new OrderStatus[] {
            OrderStatus.SALES_RET_RESHIPPED,
            OrderStatus.PAYMENT_FAILED,
            OrderStatus.SALES_RET_REFUNDED,
            OrderStatus.DOA_INVALID_REFUNDED,
            OrderStatus.DOA_INVALID_RESHIPPED,
            OrderStatus.DOA_VALID_REFUNDED,
            OrderStatus.DOA_RESHIPPED,
            OrderStatus.REFUNDED,
            OrderStatus.REJECTED,
            OrderStatus.FAILED});

    public static enum EscalationMatrix {
        SHIPPING_AND_DELIVERY("Product shipping and delivery related issues", Collections.singletonList(2)),
        RETURN_AND_REFUND("Product return, order refund, Payment status related issues", Collections.singletonList(2)),
        CONTENT("Any questions or errors on the content about the product on our site", Collections.singletonList(10)),
        PRODUCT_AND_PRICE("Product availability and its price related enquiries", Collections.singletonList(13)),
        TECHNICAL("Any technical errors on the site (or site not working properly)", Collections.singletonList(11)),
        PROMOTION("Any promotion or discount related queries", Collections.singletonList(14)),
        BULK_DEAL("Any bulk deals related enquiries", Collections.singletonList(13)),
        MARKETING_AND_PARTNERSHIP_PROPOSAL("Any marketing or partnership proposals' related queries", Collections.singletonList(14)),
        COD_VERIFICATION("Any COD verification related tickets", Collections.singletonList(12)),
        OTHER("Any other issues", Arrays.asList(2, 15));

        private String description;
        private List<Integer> agentIds;

        EscalationMatrix(String description, List<Integer> agentIds) {
            this.description = description;
            this.agentIds    = agentIds;
        }

        public String getDescription() {
            return description;
        }

        public List<Integer> getAgentIds() {
            return agentIds;
        }
    };
}