Subversion Repositories SmartDukaan

Rev

Rev 6135 | Rev 6603 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
6111 anupam.sin 1
package in.shop2020.serving.controllers;
2
 
3
import java.text.SimpleDateFormat;
4
import java.util.ArrayList;
5
import java.util.Arrays;
6
import java.util.Collections;
7
import java.util.Date;
8
import java.util.HashMap;
9
import java.util.List;
10
import java.util.Map;
11
 
12
import in.shop2020.logistics.Provider;
13
import in.shop2020.model.v1.order.Order;
14
import in.shop2020.model.v1.order.OrderStatus;
15
import in.shop2020.model.v1.order.OrderStatusGroups;
16
import in.shop2020.model.v1.order.RechargeOrder;
6220 rajveer 17
import in.shop2020.model.v1.order.RechargeType;
6111 anupam.sin 18
import in.shop2020.serving.utils.FormattingUtils;
6135 anupam.sin 19
import in.shop2020.serving.utils.Utils;
6111 anupam.sin 20
import in.shop2020.thrift.clients.LogisticsClient;
21
import in.shop2020.thrift.clients.TransactionClient;
22
 
23
import org.apache.log4j.Logger;
24
import org.apache.struts2.convention.annotation.InterceptorRef;
25
import org.apache.struts2.convention.annotation.InterceptorRefs;
26
import org.apache.struts2.convention.annotation.Result;
27
import org.apache.struts2.convention.annotation.Results;
28
 
29
/**
30
 * @author rajveer
31
 *
32
 */
33
 
34
@SuppressWarnings("serial")
35
@InterceptorRefs({
36
    @InterceptorRef("myDefault"),
37
    @InterceptorRef("login")
38
})
39
 
40
@Results({
41
    @Result(name="redirect", type="redirectAction", 
42
    		params = {"actionName" , "login"})
43
})
44
public class MyRechargesController extends BaseController {
45
 
46
	private static Logger logger = Logger.getLogger(Class.class);
47
 
48
    private FormattingUtils formattingUtils = new FormattingUtils();
49
 
50
    Map<Long, String> providerNames = new HashMap<Long, String>();
51
    List<RechargeOrder> rechargeOrders = null;
52
    List<String> orderDate = new ArrayList<String>();
6135 anupam.sin 53
 
54
    private static Map<Long, String> rechargeProviderMap = new HashMap<Long, String>() ;
6111 anupam.sin 55
 
56
   // private  static final OrderStatusGroups statusGroup = new OrderStatusGroups();
57
    //private  static final List<OrderStatus> openOrderStatuses = statusGroup.getOpenOrders();
58
    //private  static final List<OrderStatus> shippedOrderStatuses = statusGroup.getShippedOrders();
59
 
60
	public MyRechargesController() {
61
		super();
62
	}
63
 
64
	public String index(){
65
    	logger.info("this.request=" + this.request);
66
 
67
        try {
68
            TransactionClient transactionServiceClient = new TransactionClient();
69
            in.shop2020.model.v1.order.TransactionService.Client orderClient = transactionServiceClient.getClient();
70
            rechargeOrders = orderClient.getRechargeOrders(userinfo.getUserId());
71
            //Reverse the list of order. Last come first displayed 
72
            Collections.reverse(rechargeOrders);
73
            //LogisticsClient logisticsServiceClient = new LogisticsClient();
74
            //in.shop2020.logistics.LogisticsService.Client logisticsClient = logisticsServiceClient.getClient();
75
            //List<Provider> providers = logisticsClient.getAllProviders();
76
 
77
            //for(Provider provider: providers)
78
              //  providerNames.put(provider.getId(), provider.getName());
79
 
80
        } catch (Exception e)   {
81
            logger.error("Error while getting the recharge orders for the user", e);
82
        }
83
        if(rechargeOrders != null && !rechargeOrders.isEmpty()){
6135 anupam.sin 84
            for(RechargeOrder rechargeOrder: rechargeOrders) {
6220 rajveer 85
            	if(rechargeOrder.getRechargeType() == RechargeType.MOBILE){
86
            		rechargeProviderMap.put(rechargeOrder.getId(), Utils.getMobileProvidersMap().get(rechargeOrder.getOperatorId()));
87
            	}
88
            	if(rechargeOrder.getRechargeType() == RechargeType.DTH){
89
            		rechargeProviderMap.put(rechargeOrder.getId(), Utils.getDthProvidersMap().get(rechargeOrder.getOperatorId()));
90
            	}
6111 anupam.sin 91
            }
92
        }
93
		return "index";
94
    }
95
 
96
	public String formatDate(long timestamp){
97
        Date date = new Date(timestamp);
98
        SimpleDateFormat dateformat = new SimpleDateFormat("dd/MM/yyyy hh:mm:ss aa");
99
        return dateformat.format(date);
100
    }
101
 
102
    public List<RechargeOrder> getRechargeOrders()  {
103
        return rechargeOrders;
104
    }
105
 
106
    public List<String> getOrderDate()  {
107
        return orderDate;
108
    }
6135 anupam.sin 109
 
110
    public String getProviderName(Long rechargeOrderId) {
111
        return rechargeProviderMap.get(rechargeOrderId);
112
    }
6111 anupam.sin 113
}