Subversion Repositories SmartDukaan

Rev

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

Rev Author Line No. Line
9651 manish.sha 1
package in.shop2020.serving.services;
2
 
3
import in.shop2020.serving.model.Order;
4
import in.shop2020.serving.model.OrderItems;
5
import in.shop2020.thrift.clients.TransactionClient;
6
 
7
import java.io.BufferedReader;
8
import java.io.InputStreamReader;
9
import java.text.SimpleDateFormat;
10
import java.util.ArrayList;
11
import java.util.List;
12
 
13
import org.apache.http.HttpResponse;
14
import org.apache.http.NameValuePair;
15
import org.apache.http.client.HttpClient;
16
import org.apache.http.client.entity.UrlEncodedFormEntity;
17
import org.apache.http.client.methods.HttpGet;
18
import org.apache.http.client.methods.HttpPost;
19
import org.apache.http.impl.client.DefaultHttpClient;
20
import org.apache.http.message.BasicNameValuePair;
21
 
22
import com.google.gson.Gson;
23
 
24
public class FlipkartOrderStatusReconciliation{
25
	public static void main(String[] args) {
26
		HttpClient client = new DefaultHttpClient();
27
		HttpPost post = new HttpPost("https://seller.flipkart.com/login");
28
		BufferedReader rd= null;
29
 
30
		List<List<String>> deliveredOrderDataList = new ArrayList<List<String>>();
31
		SimpleDateFormat gotFlipkartDateFormat = new SimpleDateFormat("MMM dd, yyyy");
32
		SimpleDateFormat ourDBDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
33
		try {
34
			List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
35
			nameValuePairs.add(new BasicNameValuePair("authName",
36
			"flipkart"));
37
			nameValuePairs.add(new BasicNameValuePair("username",
38
			"flipkart-support@saholic.com"));
39
			nameValuePairs.add(new BasicNameValuePair("password",
40
			"076c27ee24d7596b06608a8ed2559f87"));
41
			post.setEntity(new UrlEncodedFormEntity(nameValuePairs,"utf-8"));
42
			HttpResponse response = client.execute(post);
43
			rd = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));
44
			String line = "";
45
			Gson gson;
46
			List<Order> orders = new ArrayList<Order>();
47
			OrderItems new_orders;
48
			HttpGet get_new;
49
 
50
			long time;
51
			int i=1;
52
			while ((line = rd.readLine()) != null) {
53
				System.out.println(line);
54
			}
55
			time = System.currentTimeMillis();
56
 
57
			while(true){
58
				get_new = new HttpGet("https://seller.flipkart.com/dashboard/som/shipped_order_items?status=delivered&page="+i+"&page_size=100&_="+time);
59
				response = client.execute(get_new);
60
				rd = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));
61
				line = "";
62
				gson = new Gson();
63
				//System.out.println("RD....."+rd.readLine());
64
				new_orders = (OrderItems) gson.fromJson(rd, OrderItems.class);
65
				if(new_orders.getOrder_items().size()>0){
66
					orders.addAll(new_orders.getOrder_items());
67
				}
68
				else{
69
					break;
70
				}
71
				i++;
72
			}
73
 
74
			for(Order order:orders){
75
				List<String> delivered_dataList = new ArrayList<String>();
76
				delivered_dataList.add(order.getExternalId());
77
				delivered_dataList.add(order.getOrderItemId());
78
				delivered_dataList.add(ourDBDateFormat.format(gotFlipkartDateFormat.parse(order.getModifiedDate()).getTime()));
79
				//System.out.println("Flipkart Order Id... "+order.getExternalId() + " ... Flipkart Sub Order Code... "+ order.getOrderItemId() +" ... Delivery Date ... "+ ourDBDateFormat.format(gotFlipkartDateFormat.parse(order.getModifiedDate()).getTime()));
80
				deliveredOrderDataList.add(delivered_dataList);
81
			}
82
			//System.out.println("deliveredOrderDataList size... "+deliveredOrderDataList.size());
83
			if(deliveredOrderDataList!=null && deliveredOrderDataList.size()>0){
84
				new TransactionClient().getClient().updateFlipkartOrdersStatus(deliveredOrderDataList);
85
			}
86
 
87
		} catch(Exception e){
88
			e.printStackTrace();
89
		}
90
	}
91
}