Subversion Repositories SmartDukaan

Rev

Rev 20167 | Rev 20305 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 20167 Rev 20295
Line 13... Line 13...
13
import java.util.List;
13
import java.util.List;
14
import java.util.Map;
14
import java.util.Map;
15
 
15
 
16
/**
16
/**
17
 * @author mandeep
17
 * @author mandeep
18
 *
18
 * 
19
 * Class containing constants used across CRM
19
 *         Class containing constants used across CRM
20
 */
20
 */
21
public class CRMConstants {
21
public class CRMConstants {
22
    public static final String ATTACHMENTS_ARCHIVE_DIR = "/var/crm/archive/";
22
	public static final String ATTACHMENTS_ARCHIVE_DIR = "/var/crm/archive/";
23
    public static final String CRM_EMAIL_SENDOR = "Saholic <help@saholic.com>";
23
	public static final String CRM_EMAIL_SENDOR = "Saholic <help@saholic.com>";
24
    public static final String PROFIT_MANDI_EMAIL_SENDER = "ProfitMandi <help@profitmandi.com>";
24
	public static final String PROFIT_MANDI_EMAIL_SENDER = "ProfitMandi <help@profitmandi.com>";
25
    public static final String CRM_EMAIL_TYPE   = "CRMInfo";
25
	public static final String CRM_EMAIL_TYPE = "CRMInfo";
26
    public static final String PROFIT_MANDI_EMAIL_TYPE   = "ProfitMandiInfo";
26
	public static final String PROFIT_MANDI_EMAIL_TYPE = "ProfitMandiInfo";
27
    public static final String CRM_SUBJECT_PREFIX_FOR_TICKET_ID = "Saholic#";
27
	public static final String CRM_SUBJECT_PREFIX_FOR_TICKET_ID = "Saholic#";
28
    public static final String PROFIT_MANDI_SUBJECT_PREFIX_FOR_TICKET_ID = "ProfitMandi#";
28
	public static final String PROFIT_MANDI_SUBJECT_PREFIX_FOR_TICKET_ID = "ProfitMandi#";
29
    public static final long   ADMIN_AGENT_ID   = 1;
29
	public static final long ADMIN_AGENT_ID = 1;
30
    public static final int DESCRIPTION_MAX_WIDTH = 8000;
30
	public static final int DESCRIPTION_MAX_WIDTH = 8000;
31
    public static final String ADWORDS_EMAIL = "adwords@shop2020.in";
31
	public static final String ADWORDS_EMAIL = "adwords@shop2020.in";
32
    public static final String ADWORDS_PASSWORD = "adwords_shop2020";
32
	public static final String ADWORDS_PASSWORD = "adwords_shop2020";
33
    
33
 
34
 
34
	public static final List<OrderStatus> failedStatusList = Arrays
35
    public static final List<OrderStatus> failedStatusList = Arrays.asList(new OrderStatus[] {
35
			.asList(new OrderStatus[] { OrderStatus.RTO_RESHIPPED,
36
            OrderStatus.RTO_RESHIPPED,
36
					OrderStatus.PAYMENT_FAILED, OrderStatus.RTO_REFUNDED,
37
            OrderStatus.PAYMENT_FAILED,
37
					OrderStatus.DOA_INVALID_REFUNDED,
38
            OrderStatus.RTO_REFUNDED,
38
					OrderStatus.DOA_INVALID_RESHIPPED,
39
            OrderStatus.DOA_INVALID_REFUNDED,
39
					OrderStatus.DOA_VALID_REFUNDED,
40
            OrderStatus.DOA_INVALID_RESHIPPED,
40
					OrderStatus.DOA_VALID_RESHIPPED,
41
            OrderStatus.DOA_VALID_REFUNDED,
41
					OrderStatus.CANCELLED_DUE_TO_LOW_INVENTORY,
42
            OrderStatus.DOA_VALID_RESHIPPED,
42
					OrderStatus.REJECTED, OrderStatus.FAILED });
43
            OrderStatus.CANCELLED_DUE_TO_LOW_INVENTORY,
43
 
44
            OrderStatus.REJECTED,
44
	@SuppressWarnings("serial")
45
            OrderStatus.FAILED});
45
	public static final Map<Long, String> PAYMENT_GATEWAYS = Collections
46
    
46
			.unmodifiableMap(new HashMap<Long, String>() {
47
    @SuppressWarnings("serial")
47
				{
48
	public static final Map<Long, String> PAYMENT_GATEWAYS = Collections.unmodifiableMap(
48
					put(1l, "hdfc");
49
    		new HashMap<Long, String>(){
49
					put(2l, "ebs");
50
	    		{
50
					put(3l, "Cheque");
51
	    			put(1l,"hdfc");
51
					put(4l, "COD");
52
	    			put(2l,"ebs");
52
					put(5l, "hdfc-emi-3");
53
	    			put(3l,"Cheque");
53
					put(6l, "rtgs");
54
	    			put(4l,"COD");
54
					put(8l, "Wallet");
55
	    			put(5l,"hdfc-emi-3");
55
					put(9l, "GiftVoucher");
56
	    			put(6l,"rtgs");
56
					put(10l, "hdfc-emi-6");
57
	    			put(8l,"Wallet");
57
					put(11l, "hdfc-emi-9");
58
	    			put(9l,"GiftVoucher");
58
					put(12l, "hdfc-emi-12");
59
	    			put(10l,"hdfc-emi-6");
59
					put(13l, "innoviti");
60
	    			put(11l,"hdfc-emi-9");
60
					put(14l, "hdfc-emi-18");
61
	    			put(12l,"hdfc-emi-12");
61
					put(15l, "Amazon");
62
	    			put(13l,"innoviti");
62
					put(16l, "Ebay");
63
	    			put(14l,"hdfc-emi-18");
63
					put(17l, "Flipkart");
64
	    			put(15l,"Amazon");
64
					put(18l, "Snapdeal");
65
	    			put(16l,"Ebay");
65
					put(19l, "PAYU");
66
	    			put(17l,"Flipkart");
66
				}
67
	    			put(18l,"Snapdeal");
67
			});
68
	    			put(19l,"PAYU");
68
 
69
	    		}
69
	public static enum EscalationMatrix {
70
    		});
70
		SHIPPING_AND_DELIVERY("Product shipping and delivery related issues",
71
 
71
				Arrays.asList(34, 65, 47, 33)), RETURN_AND_REFUND(
72
    public static enum EscalationMatrix {
72
				"Product return, order refund, Payment status related issues",
73
        SHIPPING_AND_DELIVERY("Product shipping and delivery related issues", Arrays.asList(34, 65, 47, 51)),
73
				Arrays.asList(34)), CONTENT(
74
        RETURN_AND_REFUND("Product return, order refund, Payment status related issues", Arrays.asList(34)),
74
				"Any questions or errors on the content about the product on our site",
75
        CONTENT("Any questions or errors on the content about the product on our site", Arrays.asList(34, 10)),
75
				Arrays.asList(34, 10)), PRODUCT_AND_PRICE(
76
        PRODUCT_AND_PRICE("Product availability and its price related enquiries", Arrays.asList(34, 13)),
76
				"Product availability and its price related enquiries", Arrays
77
        TECHNICAL("Any technical errors on the site (or site not working properly)", Arrays.asList(34, 35)),
77
						.asList(34, 13)), TECHNICAL(
78
        ORDER_CANCELLATION("Cancelling an order", Arrays.asList(65, 34, 51)),
78
				"Any technical errors on the site (or site not working properly)",
79
        BULK_DEAL("Any bulk deals related enquiries", Arrays.asList(34)),
79
				Arrays.asList(34, 35)), ORDER_CANCELLATION(
80
        PROMOTION_MARKETING_PARTNERSHIP("Any promotion, marketing or partnership proposals' related queries", Arrays.asList(34, 41)),
80
				"Cancelling an order", Arrays.asList(65, 34, 33)), BULK_DEAL(
81
        COD_VERIFICATION("Any COD verification related tickets", Arrays.asList(34, 51)),
81
				"Any bulk deals related enquiries", Arrays.asList(34)), PROMOTION_MARKETING_PARTNERSHIP(
82
        ON_TIME_GUARANTEE("On Time Guarantee related enquiries",Arrays.asList(65, 47, 34)),
82
				"Any promotion, marketing or partnership proposals' related queries",
83
        RECHARGE_RELATED("Recharge related", Arrays.asList(34, 51)),
83
				Arrays.asList(34, 41)), COD_VERIFICATION(
84
        DELIVERY_PROBLEM("", Arrays.asList(34, 47, 65, 51)),
84
				"Any COD verification related tickets", Arrays.asList(34, 33)), ON_TIME_GUARANTEE(
85
        OTHER("Any other issues", Arrays.asList(65, 34, 51));
85
				"On Time Guarantee related enquiries", Arrays
86
 
86
						.asList(65, 47, 34)), RECHARGE_RELATED(
87
        private String description;
87
				"Recharge related", Arrays.asList(34, 33)), DELIVERY_PROBLEM(
88
        private List<Integer> agentIds;
88
				"", Arrays.asList(34, 47, 65, 33)), OTHER("Any other issues",
89
 
89
				Arrays.asList(65, 34, 33));
90
        EscalationMatrix(String description, List<Integer> agentIds) {
90
 
91
            this.description = description;
91
		private String description;
92
            this.agentIds    = agentIds;
92
		private List<Integer> agentIds;
93
        }
93
 
94
 
94
		EscalationMatrix(String description, List<Integer> agentIds) {
95
        public String getDescription() {
95
			this.description = description;
96
            return description;
96
			this.agentIds = agentIds;
97
        }
97
		}
98
 
98
 
99
        public List<Integer> getAgentIds() {
99
		public String getDescription() {
100
            return agentIds;
100
			return description;
101
        }
101
		}
102
    };
102
 
103
    
103
		public List<Integer> getAgentIds() {
104
    
104
			return agentIds;
105
    public static enum PMEscalationMatrix {
105
		}
106
    	PM_CASH_BACK_INQUIRY("Customer wanted to know about cash back", Arrays.asList(34, 51)),
106
	};
107
    	PM_RECHARGE_FAILED_OR_COMPLAINT("Customer complaint about recharge", Arrays.asList(34, 51)),
107
 
108
    	PM_WALLET_AMOUNT_ISSUE("Some issue in wallet amount", Arrays.asList(34, 51)),
108
	public static enum PMEscalationMatrix {
109
    	PM_ORDER_NOT_SHOWING("Customer Order not showing at App", Arrays.asList(34, 51)),
109
		PM_CASH_BACK_INQUIRY("Customer wanted to know about cash back", Arrays
110
    	PM_BULK_INQUIRY("Customer wanted to know about bulk purchase inquiry", Arrays.asList(34, 51)),
110
				.asList(34, 33)), PM_RECHARGE_FAILED_OR_COMPLAINT(
111
    	PM_TAX_INVOICE_ISSUE("Customer wanted to complaint about tax invoice", Arrays.asList(34, 51)),
111
				"Customer complaint about recharge", Arrays.asList(34, 33)), PM_WALLET_AMOUNT_ISSUE(
112
        PM_ORDER_STATUS_SAHOLIC_ORDER("Customer wanted to know status of order", Arrays.asList(34, 51)),
112
				"Some issue in wallet amount", Arrays.asList(34, 33)), PM_ORDER_NOT_SHOWING(
113
        PM_PRODUCT_DEMAND("Customer wanted information about any product demand", Arrays.asList(34, 51)),
113
				"Customer Order not showing at App", Arrays.asList(34, 33)), PM_BULK_INQUIRY(
114
        PM_PRICING_ERROR("Customer wanted to ask questions about some error in pricing", Arrays.asList(34, 51)),
114
				"Customer wanted to know about bulk purchase inquiry", Arrays
115
        PM_TECHNICAL_ISSUE("Some technical issue at app", Arrays.asList(34, 51));
115
						.asList(34, 33)), PM_TAX_INVOICE_ISSUE(
116
 
116
				"Customer wanted to complaint about tax invoice", Arrays
117
        private String description;
117
						.asList(34, 33)), PM_ORDER_STATUS_SAHOLIC_ORDER(
118
        private List<Integer> agentIds;
118
				"Customer wanted to know status of order", Arrays
119
 
119
						.asList(34, 33)), PM_PRODUCT_DEMAND(
120
        PMEscalationMatrix(String description, List<Integer> agentIds) {
120
				"Customer wanted information about any product demand", Arrays
121
            this.description = description;
121
						.asList(34, 33)), PM_PRICING_ERROR(
122
            this.agentIds    = agentIds;
122
				"Customer wanted to ask questions about some error in pricing",
123
        }
123
				Arrays.asList(34, 33)), PM_TECHNICAL_ISSUE(
124
 
124
				"Some technical issue at app", Arrays.asList(34, 33));
125
        public String getDescription() {
125
 
126
            return description;
126
		private String description;
127
        }
127
		private List<Integer> agentIds;
128
 
128
 
129
        public List<Integer> getAgentIds() {
129
		PMEscalationMatrix(String description, List<Integer> agentIds) {
130
            return agentIds;
130
			this.description = description;
131
        }
131
			this.agentIds = agentIds;
132
    };
132
		}
133
    
133
 
134
    public static enum CODCancelMatrix {
134
		public String getDescription() {
135
    	INVALID_ADDRESS_PIN_CODE_PHONE("Address/PinCode/Phone number provided by customer"),
135
			return description;
136
    	NOT_PICKING("Customer is not picking the call"),
136
		}
137
    	NOT_REACHABLE_SWITCHED_OFF("Customer number is not reachable or switched off"),
137
 
138
        LOWER_PRICE_AVAILABLE_ELSEWHERE("Customer getting better price elsewhere"),
138
		public List<Integer> getAgentIds() {
139
        CUSTOMER_TESTING_WEBSITE("Customer is testing the site"),
139
			return agentIds;
140
        DUPLICATE_BOOKING("Customer booked an order twice by mistake"),
140
		}
141
        DEALER_ORDER("Order was place by a dealer"),
141
	};
142
        OUT_OF_STOCK("Ordered item is out of stock"),
142
 
143
        CUSTOMER_WANTS_EARLY_DELIVERY("Customer wants order to be delivered before promised and expected date"),
143
	public static enum CODCancelMatrix {
144
        NOT_INTERESTED_THIS_TIME("Customer decided against buying the product"),
144
		INVALID_ADDRESS_PIN_CODE_PHONE(
145
        WANT_SOME_OTHER_PRODUCT("Customer wants to buy different product"),
145
				"Address/PinCode/Phone number provided by customer"), NOT_PICKING(
146
        PLACED_ANOTHER_ORDER("Customer has placed another order buying different product"),
146
				"Customer is not picking the call"), NOT_REACHABLE_SWITCHED_OFF(
147
        USER_WANTS_DELAYED_DELIVERY("Customer wants order to be delivered after promised and expected date"),
147
				"Customer number is not reachable or switched off"), LOWER_PRICE_AVAILABLE_ELSEWHERE(
148
        COLOR_OUT_OF_STOCK("Order Item(s) not present in the requested color"),
148
				"Customer getting better price elsewhere"), CUSTOMER_TESTING_WEBSITE(
149
        CUSTOMER_WANTS_OPEN_DELIVERY("Customer wants to pay money after seeing the product"),
149
				"Customer is testing the site"), DUPLICATE_BOOKING(
150
        CUSTOMER_DENIED_PLACING_ORDER("Customer denied placing any order on our site"),
150
				"Customer booked an order twice by mistake"), DEALER_ORDER(
151
        PAYMENT_FLAGGED_BY_GATEWAY("This payment is flagged"),
151
				"Order was place by a dealer"), OUT_OF_STOCK(
152
        OTHER("Order cancelled because of some miscellaneous reason");
152
				"Ordered item is out of stock"), CUSTOMER_WANTS_EARLY_DELIVERY(
153
 
153
				"Customer wants order to be delivered before promised and expected date"), NOT_INTERESTED_THIS_TIME(
154
        private String description;
154
				"Customer decided against buying the product"), WANT_SOME_OTHER_PRODUCT(
155
 
155
				"Customer wants to buy different product"), PLACED_ANOTHER_ORDER(
156
        CODCancelMatrix(String description) {
156
				"Customer has placed another order buying different product"), USER_WANTS_DELAYED_DELIVERY(
157
            this.description = description;
157
				"Customer wants order to be delivered after promised and expected date"), COLOR_OUT_OF_STOCK(
158
        }
158
				"Order Item(s) not present in the requested color"), CUSTOMER_WANTS_OPEN_DELIVERY(
159
 
159
				"Customer wants to pay money after seeing the product"), CUSTOMER_DENIED_PLACING_ORDER(
160
        public String getDescription() {
160
				"Customer denied placing any order on our site"), PAYMENT_FLAGGED_BY_GATEWAY(
161
            return description;
161
				"This payment is flagged"), OTHER(
162
        }
162
				"Order cancelled because of some miscellaneous reason");
163
    };
163
 
164
    
164
		private String description;
165
    public static enum ActivityCommonDescriptionMatrix{
165
 
166
    	BULK_INQUIRY("Customer wanted to know about bulk order"),
166
		CODCancelMatrix(String description) {
167
    	CALL_HUNGUP_DISCONNECTED("Call got disconnected or was hung up by customer"),
167
			this.description = description;
168
    	COD_VERIFICATION("Call to customer to verify COD"),
168
		}
169
        COMPLAINT_OR_DELIVERY_ISSUE("Call for complaint or delivery issue from customer"),
169
 
170
        COURIER_PARTNER_DETAIL("Customer wanted to know about courier partner"),
170
		public String getDescription() {
171
        ORDER_CANCELLATION("Customer wanted to cancel order"),
171
			return description;
172
        ORDER_STATUS("Customer wanted to know status of order"),
172
		}
173
        PAYMENT_MODE_QUERY("Customer wantedinformation about payment mode"),
173
	};
174
        PRODUCT_QUERY("Customer wanted to ask questions about product"),
174
 
175
        PROMOTION_CALL("Promotion call"),
175
	public static enum ActivityCommonDescriptionMatrix {
176
        RETURN_OR_REFUND("Return or Refund"),
176
		BULK_INQUIRY("Customer wanted to know about bulk order"), CALL_HUNGUP_DISCONNECTED(
177
        TEST_CALL("test call"),
177
				"Call got disconnected or was hung up by customer"), COD_VERIFICATION(
178
        VOICE_ISSUE_OR_TECHNICAL_ISSUE("voice issue or technical issue"),
178
				"Call to customer to verify COD"), COMPLAINT_OR_DELIVERY_ISSUE(
179
        WRONG_CALL("wrong call");
179
				"Call for complaint or delivery issue from customer"), COURIER_PARTNER_DETAIL(
180
 
180
				"Customer wanted to know about courier partner"), ORDER_CANCELLATION(
181
        private String description;
181
				"Customer wanted to cancel order"), ORDER_STATUS(
182
 
182
				"Customer wanted to know status of order"), PAYMENT_MODE_QUERY(
183
        ActivityCommonDescriptionMatrix(String description) {
183
				"Customer wantedinformation about payment mode"), PRODUCT_QUERY(
184
            this.description = description;
184
				"Customer wanted to ask questions about product"), PROMOTION_CALL(
185
        }
185
				"Promotion call"), RETURN_OR_REFUND("Return or Refund"), TEST_CALL(
186
 
186
				"test call"), VOICE_ISSUE_OR_TECHNICAL_ISSUE(
187
        public String getDescription() {
187
				"voice issue or technical issue"), WRONG_CALL("wrong call");
188
            return description;
188
 
189
        }
189
		private String description;
190
 
190
 
191
    };
191
		ActivityCommonDescriptionMatrix(String description) {
192
    
192
			this.description = description;
193
    public static enum ActivityPMCommonDescriptionMatrix{
193
		}
194
    	CASH_BACK_INQUIRY("Customer wanted to know about cash back"),
194
 
195
    	RECHARGE_FAILED_OR_COMPLAINT("Customer complaint about recharge"),
195
		public String getDescription() {
196
    	WALLET_AMOUNT_ISSUE("Some issue in wallet amount"),
196
			return description;
197
    	ORDER_NOT_SHOWING("Customer Order not showing at App"),
197
		}
198
    	BULK_INQUIRY("Customer wanted to know about bulk purchase inquiry"),
198
 
199
    	TAX_INVOICE_ISSUE("Customer wanted to complaint about tax invoice"),
199
	};
200
        ORDER_STATUS_SAHOLIC_ORDER("Customer wanted to know status of order"),
200
 
201
        PRODUCT_DEMAND("Customer wanted information about any product demand"),
201
	public static enum ActivityPMCommonDescriptionMatrix {
202
        PRICING_ERROR("Customer wanted to ask questions about some error in pricing"),
202
		CASH_BACK_INQUIRY("Customer wanted to know about cash back"), RECHARGE_FAILED_OR_COMPLAINT(
203
        TECHNICAL_ISSUE("Some technical issue at app");
203
				"Customer complaint about recharge"), WALLET_AMOUNT_ISSUE(
204
 
204
				"Some issue in wallet amount"), ORDER_NOT_SHOWING(
205
        private String description;
205
				"Customer Order not showing at App"), BULK_INQUIRY(
206
 
206
				"Customer wanted to know about bulk purchase inquiry"), TAX_INVOICE_ISSUE(
207
        ActivityPMCommonDescriptionMatrix(String description) {
207
				"Customer wanted to complaint about tax invoice"), ORDER_STATUS_SAHOLIC_ORDER(
208
            this.description = description;
208
				"Customer wanted to know status of order"), PRODUCT_DEMAND(
209
        }
209
				"Customer wanted information about any product demand"), PRICING_ERROR(
210
 
210
				"Customer wanted to ask questions about some error in pricing"), TECHNICAL_ISSUE(
211
        public String getDescription() {
211
				"Some technical issue at app");
212
            return description;
212
 
213
        }
213
		private String description;
214
 
214
 
215
    };
215
		ActivityPMCommonDescriptionMatrix(String description) {
216
    
216
			this.description = description;
217
    public enum Actionable{
217
		}
218
    	NO_ACTION(0),
218
 
219
    	EMAIL_PROVIDER_REATTEMPT_DELIVERY(1);
219
		public String getDescription() {
220
    	
220
			return description;
221
    	private int value;
221
		}
222
    	Actionable(int value){
222
 
223
    		this.value = value;
223
	};
224
    	}
224
 
225
    	
225
	public enum Actionable {
226
    	public int getValue(){
226
		NO_ACTION(0), EMAIL_PROVIDER_REATTEMPT_DELIVERY(1);
227
    		return value;
227
 
228
    	}
228
		private int value;
229
    };
229
 
230
    
230
		Actionable(int value) {
231
    @SuppressWarnings("serial")
231
			this.value = value;
232
	public static final Map<TicketCategory, List<String>> CATEGORY_ACTION_MAP = Collections.unmodifiableMap(
232
		}
233
    		new HashMap<TicketCategory, List<String>>(){
233
 
234
    			{
234
		public int getValue() {
235
	    			
235
			return value;
236
	    			for(TicketCategory category : TicketCategory.values()){
236
		}
237
	    				put(category, new ArrayList<String>());
237
	};
238
	    			}
238
 
239
	    			put(TicketCategory.UNDELIVERED, 
239
	@SuppressWarnings("serial")
240
	    					Arrays.asList(
240
	public static final Map<TicketCategory, List<String>> CATEGORY_ACTION_MAP = Collections
241
	    							new String[]{
241
			.unmodifiableMap(new HashMap<TicketCategory, List<String>>() {
242
	    									Actionable.NO_ACTION.toString(),
242
				{
243
	    									Actionable.EMAIL_PROVIDER_REATTEMPT_DELIVERY.toString()
243
 
244
	    									}
244
					for (TicketCategory category : TicketCategory.values()) {
245
	    							));
245
						put(category, new ArrayList<String>());
246
	    			put(TicketCategory.DELIVERY_ATTEMPT_FAILED, 
246
					}
247
	    					Arrays.asList(
247
					put(TicketCategory.UNDELIVERED, Arrays.asList(new String[] {
248
	    							new String[]{
248
							Actionable.NO_ACTION.toString(),
249
	    									Actionable.NO_ACTION.toString(),
249
							Actionable.EMAIL_PROVIDER_REATTEMPT_DELIVERY
250
	    									Actionable.EMAIL_PROVIDER_REATTEMPT_DELIVERY.toString()
250
									.toString() }));
251
	    									}
251
					put(TicketCategory.DELIVERY_ATTEMPT_FAILED,
252
	    							));
252
							Arrays.asList(new String[] {
253
	    			
253
									Actionable.NO_ACTION.toString(),
254
	    			
254
									Actionable.EMAIL_PROVIDER_REATTEMPT_DELIVERY
255
    		}
255
											.toString() }));
256
	    		
256
 
257
    		});
257
				}
258
    
258
 
259
    public static enum LogisticProvider{
259
			});
260
    	BLUEDART(1),
260
 
261
    	ARAMEX(2),
261
	public static enum LogisticProvider {
262
    	DELHIVERY(3),
262
		BLUEDART(1), ARAMEX(2), DELHIVERY(3), REDEXPRESS(6), FEDEX(7), FEDEX_SURFACE(
263
    	REDEXPRESS(6),
263
				46);
264
    	FEDEX(7),
264
 
265
    	FEDEX_SURFACE(46);
265
		private long value;
266
    	
266
 
267
    	private long value;
267
		private LogisticProvider(long value) {
268
    	
268
			this.value = value;
269
    	private LogisticProvider(long value){
269
		}
270
    		this.value = value;
270
 
271
    	}
271
		public long getValue() {
272
    	public long getValue(){
272
			return value;
273
    		return value;
273
		}
274
    	}
274
 
275
    	
275
		public static LogisticProvider findByValue(long value) {
276
    	  public static LogisticProvider findByValue(long value) { 
276
			int v = (int) value;
277
    		  int v = (int) value;
277
			switch (v) {
278
    		    switch (v) {
278
			case 1:
279
    		      case 1:
279
				return BLUEDART;
280
    		        return BLUEDART;
280
			case 2:
281
    		      case 2:
281
				return ARAMEX;
282
    		        return ARAMEX;
282
			case 3:
283
    		      case 3:
283
				return DELHIVERY;
284
    		        return DELHIVERY;
284
			case 6:
285
    		      case 6:
285
				return REDEXPRESS;
286
    		        return REDEXPRESS;
286
			case 7:
287
    		      case 7:
287
				return FEDEX;
288
    		        return FEDEX;
288
			case 46:
289
    		      case 46:
289
				return FEDEX_SURFACE;
290
    		        return FEDEX_SURFACE;
290
			default:
291
    		      default:
291
				return null;
292
    		        return null;
292
			}
293
    		    }
293
		}
294
    		  }
294
	}
295
    }
295
 
296
    
296
	@SuppressWarnings("serial")
297
    @SuppressWarnings("serial")
297
	public static final Map<LogisticProvider, List<String>> LOGISTIC_PROVIDER_MAP = Collections
298
	public static final Map<LogisticProvider, List<String> > LOGISTIC_PROVIDER_MAP = Collections.unmodifiableMap(
298
			.unmodifiableMap(new HashMap<LogisticProvider, List<String>>() {
299
    		new HashMap<LogisticProvider, List<String>>(){
299
				{
300
    			{
300
					put(LogisticProvider.BLUEDART,
301
	    			put(LogisticProvider.BLUEDART, 
301
							Arrays.asList(new String[] {
302
	    					Arrays.asList(
302
									"SunilB@bluedart.com,AnilKumar@bluedart.com,HarshaK@bluedart.com,AveekP@bluedart.com",
303
	    							new String[]{"SunilB@bluedart.com,AnilKumar@bluedart.com,HarshaK@bluedart.com,AveekP@bluedart.com",
303
									"khushal.bhatia@shop2020.in,amit.sirohi@shop2020.in,himanshu.pandey@shop2020.in,shiv.kumar@shop2020.in,shailesh.kumar@saholic.com" }));
304
	    									"khushal.bhatia@shop2020.in,amit.sirohi@shop2020.in,himanshu.pandey@shop2020.in,shiv.kumar@shop2020.in,shailesh.kumar@saholic.com"}));
304
					put(LogisticProvider.DELHIVERY,
305
	    			put(LogisticProvider.DELHIVERY, 
305
							Arrays.asList(new String[] {
306
	    					Arrays.asList(
306
									"client.support@delhivery.com,aakershit.gupta@delhivery.com,mamta.bhandari@delhivery.com,shinu.mathew@delhivery.com,ohm.chaudhury@delhivery.com",
307
	    							new String[]{"client.support@delhivery.com,aakershit.gupta@delhivery.com,mamta.bhandari@delhivery.com,shinu.mathew@delhivery.com,ohm.chaudhury@delhivery.com",
307
									"khushal.bhatia@shop2020.in,amit.sirohi@shop2020.in,himanshu.pandey@shop2020.in,shiv.kumar@shop2020.in,shailesh.kumar@saholic.com" }));
308
	    									"khushal.bhatia@shop2020.in,amit.sirohi@shop2020.in,himanshu.pandey@shop2020.in,shiv.kumar@shop2020.in,shailesh.kumar@saholic.com"}));
308
					put(LogisticProvider.FEDEX,
309
	    			put(LogisticProvider.FEDEX, 
309
							Arrays.asList(new String[] {
310
	    					Arrays.asList(
310
									"india@fedex.com,adesh.kumar@fedex.com,priyap@fedex.com",
311
	    							new String[]{"india@fedex.com,adesh.kumar@fedex.com,priyap@fedex.com",
311
									"khushal.bhatia@shop2020.in,amit.sirohi@shop2020.in,himanshu.pandey@shop2020.in,shiv.kumar@shop2020.in,shailesh.kumar@saholic.com" }));
312
	    									"khushal.bhatia@shop2020.in,amit.sirohi@shop2020.in,himanshu.pandey@shop2020.in,shiv.kumar@shop2020.in,shailesh.kumar@saholic.com"}));
312
					put(LogisticProvider.FEDEX_SURFACE,
313
	    			put(LogisticProvider.FEDEX_SURFACE, 
313
							Arrays.asList(new String[] {
314
	    					Arrays.asList(
314
									"india@fedex.com,adesh.kumar@fedex.com,priyap@fedex.com",
315
	    							new String[]{"india@fedex.com,adesh.kumar@fedex.com,priyap@fedex.com",
315
									"khushal.bhatia@shop2020.in,amit.sirohi@shop2020.in,himanshu.pandey@shop2020.in,shiv.kumar@shop2020.in,shailesh.kumar@saholic.com" }));
316
	    									"khushal.bhatia@shop2020.in,amit.sirohi@shop2020.in,himanshu.pandey@shop2020.in,shiv.kumar@shop2020.in,shailesh.kumar@saholic.com"}));
316
 
317
	    			
317
				}
318
 
318
			});
319
	    			
-
 
320
	    			
-
 
321
    		
-
 
322
    			}
-
 
323
    		});
-
 
324
 
-
 
325
 
319
 
326
}
320
}