Subversion Repositories SmartDukaan

Rev

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