Subversion Repositories SmartDukaan

Rev

Rev 2714 | Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
2674 vikas 1
package in.shop2020.serving.controllers;
2
 
3
import in.shop2020.model.v1.order.Order;
4
import in.shop2020.thrift.clients.TransactionServiceClient;
5
 
6
import java.text.SimpleDateFormat;
7
import java.util.ArrayList;
8
import java.util.Date;
9
import java.util.HashMap;
10
import java.util.List;
11
import java.util.Map;
12
import java.util.TimeZone;
13
 
14
import org.apache.log4j.Logger;
15
 
16
/**
17
 * @author vikas
18
 *
19
 */
20
@SuppressWarnings("serial")
21
public class UserOrdersController extends BaseController {
22
    private static Logger log = Logger.getLogger(Class.class);
23
    private long userId;
24
    private List<Map<String, String>> userOrders;
25
 
26
    public UserOrdersController(){
27
        super();
28
    }
29
 
30
    public String index() throws Exception {
31
        TransactionServiceClient transactionServiceClient = new TransactionServiceClient();
32
 
33
        List<Order> orders = transactionServiceClient.getClient().getOrdersForCustomer(userId, 0, (new Date().getTime()), null);
34
        userOrders = new ArrayList<Map<String,String>>();
35
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
36
        sdf.setTimeZone(TimeZone.getTimeZone("IST"));
37
        for (Order order : orders) {
38
            Map<String, String> orderMap = new HashMap<String, String>();
39
            orderMap.put("id", Long.toString(order.getId()));
40
            orderMap.put("received", sdf.format(new Date(order.getCreated_timestamp())));
41
            if (order.getDelivery_timestamp() != 0) {
42
                orderMap.put("delivered", sdf.format(new Date(order.getDelivery_timestamp())));
43
            }
44
 
45
            StringBuilder address = new StringBuilder();
46
            if (order.getCustomer_address1() != null) {
47
                address.append(order.getCustomer_address1() + ", ");
48
            }
49
            if (order.getCustomer_address2() != null) {
50
                address.append(order.getCustomer_address2() + ", ");
51
            }
52
            if (order.getCustomer_city() != null) {
53
                address.append(order.getCustomer_city() + ", ");
54
            }
55
            if (order.getCustomer_state() != null) {
56
                address.append(order.getCustomer_state() + "-");
57
            }
58
            if (order.getCustomer_pincode() != null) {
59
                address.append(order.getCustomer_pincode());
60
            }
61
            orderMap.put("shipping", address.toString());
62
            orderMap.put("city", order.getCustomer_city());
63
            orderMap.put("amount", Double.toString(order.getTotal_amount()));
64
            userOrders.add(orderMap);
65
        }
66
        return "index";
67
    }
68
 
69
    public void setUserId(String userId) {
70
        try {
71
            this.userId = Long.parseLong(userId);
72
        }
73
        catch (NumberFormatException e) {
74
            log.error(e);
75
        }
76
    }
77
 
78
    public Long getUserId() {
79
        return userId;
80
    }
81
 
82
    public List<Map<String, String>> getUserOrders() {
83
        return userOrders;
84
    }
85
}