Subversion Repositories SmartDukaan

Rev

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

Rev 12515 Rev 12516
Line 32... Line 32...
32
public class FlipkartOrderStatusReconciliation{
32
public class FlipkartOrderStatusReconciliation{
33
	static String emailFromAddress;
33
	static String emailFromAddress;
34
	static String password;
34
	static String password;
35
	static GmailUtils mailer;
35
	static GmailUtils mailer;
36
	static String sendTo[];
36
	static String sendTo[];
37
	
37
 
38
	static {
38
	static {
39
		emailFromAddress = "build-staging@shop2020.in";
39
		emailFromAddress = "build-staging@shop2020.in";
40
		password = "shop2020";
40
		password = "shop2020";
41
		mailer = new GmailUtils();
41
		mailer = new GmailUtils();
42
		sendTo = new String[] { "kshitij.sood@shop2020.in", "manish.sharma@shop2020.in", "amit.gupta@shop2020.in" };
42
		sendTo = new String[] { "kshitij.sood@shop2020.in", "manish.sharma@shop2020.in", "amit.gupta@shop2020.in" };
43
	}
43
	}
44
	
44
 
45
	public static void main(String[] args) throws MessagingException {
45
	public static void main(String[] args) throws MessagingException {
46
		HttpClient client = new DefaultHttpClient();
46
		HttpClient client = new DefaultHttpClient();
47
		HttpPost post = new HttpPost("https://seller.flipkart.com/login");
47
		HttpPost post = new HttpPost("https://seller.flipkart.com/login");
48
		BufferedReader rd= null;
48
		BufferedReader rd= null;
49
		
49
 
50
		List<List<String>> deliveredOrderDataList = new ArrayList<List<String>>();
50
		List<List<String>> deliveredOrderDataList = new ArrayList<List<String>>();
51
		SimpleDateFormat gotFlipkartDateFormat = new SimpleDateFormat("MMM dd, yyyy");
51
		SimpleDateFormat gotFlipkartDateFormat = new SimpleDateFormat("MMM dd, yyyy");
52
		//SimpleDateFormat createDateFormatter = new SimpleDateFormat("MMM dd, yyyy hh:mm aaa");
52
		//SimpleDateFormat createDateFormatter = new SimpleDateFormat("MMM dd, yyyy hh:mm aaa");
53
		SimpleDateFormat ourDBDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
53
		SimpleDateFormat ourDBDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
54
		long minCreationDate = 0l;
54
		long minCreationDate = 0l;
Line 70... Line 70...
70
			String line = "";
70
			String line = "";
71
			Gson gson;
71
			Gson gson;
72
			List<Order> orders = new ArrayList<Order>();
72
			List<Order> orders = new ArrayList<Order>();
73
			OrderItems new_orders;
73
			OrderItems new_orders;
74
			HttpGet get_new;
74
			HttpGet get_new;
75
			
75
 
76
			long time;
76
			long time;
77
			int i=1;
77
			int i=1;
78
			while ((line = rd.readLine()) != null) {
78
			while ((line = rd.readLine()) != null) {
79
				System.out.println(line);
79
				System.out.println(line);
80
			}
80
			}
81
			time = System.currentTimeMillis();
81
			time = System.currentTimeMillis();
82
			
82
 
83
			while(true){
83
			outer:while(true){
84
				get_new = new HttpGet("https://seller.flipkart.com/dashboard/som/shipped_order_items?status=delivered&page="+i+"&page_size=50&_="+time);
84
				get_new = new HttpGet("https://seller.flipkart.com/dashboard/som/shipped_order_items?status=delivered&page="+i+"&page_size=50&_="+time);
85
				response = client.execute(get_new);
85
				response = client.execute(get_new);
86
				rd = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));
86
				rd = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));
87
				line = "";
87
				line = "";
88
				gson = new Gson();
88
				gson = new Gson();
89
				
89
 
90
				JSONObject jsonDataObj = null;
90
				JSONObject jsonDataObj = null;
91
				line = rd.readLine();
91
				line = rd.readLine();
92
				
92
 
93
				JSONArray jsonObjArr = null;
93
				JSONArray jsonObjArr = null;
94
				
94
 
95
				if(line == null || line.isEmpty()){
95
				if(line == null || line.isEmpty()){
96
					if(i==120)
96
					if(i==120)
97
						break;
97
						break;
98
					i++;
98
					i++;
99
					continue;
99
					continue;
100
				}
100
				}
101
				
101
 
102
				jsonDataObj = new JSONObject(line);
102
				jsonDataObj = new JSONObject(line);
103
				jsonObjArr = new JSONArray(jsonDataObj.get("order_items").toString());
103
				jsonObjArr = new JSONArray(jsonDataObj.get("order_items").toString());
104
				
104
 
105
				if(jsonObjArr==null || jsonObjArr.length()==0){
105
				if(jsonObjArr==null || jsonObjArr.length()==0){
106
					break;
106
					break;
107
				}
107
				}
108
				
108
 
109
				if(jsonObjArr!=null && jsonObjArr.length()>0){
109
				if(jsonObjArr!=null && jsonObjArr.length()>0){
110
					for(int k=0; k< jsonObjArr.length(); k++){
110
					for(int k=0; k< jsonObjArr.length(); k++){
111
						JSONObject jsonObj = null;
111
						JSONObject jsonObj = null;
112
						jsonObj = jsonObjArr.getJSONObject(k);
112
						jsonObj = jsonObjArr.getJSONObject(k);
113
						
113
 
114
						if(jsonObj!=null){
114
						if(jsonObj!=null){
115
							/*System.out.println("jsonObj..... "+ jsonObj);*/
115
							/*System.out.println("jsonObj..... "+ jsonObj);*/
116
							if(minCreationDate > 0l && gotFlipkartDateFormat.parse(gotFlipkartDateFormat.format(minCreationDate)).getTime() <= gotFlipkartDateFormat.parse(jsonObj.get("created_date").toString()).getTime()){
116
							if(minCreationDate > 0l && gotFlipkartDateFormat.parse(gotFlipkartDateFormat.format(minCreationDate)).getTime() <= gotFlipkartDateFormat.parse(jsonObj.get("created_date").toString()).getTime()){
117
								List<String> delivered_dataList = new ArrayList<String>();
117
								List<String> delivered_dataList = new ArrayList<String>();
118
								String externalId = jsonObj.get("external_id").toString();
118
								String externalId = jsonObj.get("external_id").toString();
119
								String orderItemId = jsonObj.get("order_item_id").toString();
119
								String orderItemId = jsonObj.get("order_item_id").toString();
120
								String modifiedDate = jsonObj.get("modified_date").toString();
120
								String modifiedDate = jsonObj.get("modified_date").toString();
121
								delivered_dataList.add(externalId);
121
								delivered_dataList.add(externalId);
122
								delivered_dataList.add(orderItemId);
122
								delivered_dataList.add(orderItemId);
123
								
123
 
124
								delivered_dataList.add(ourDBDateFormat.format(gotFlipkartDateFormat.parse(modifiedDate).getTime()));
124
								delivered_dataList.add(ourDBDateFormat.format(gotFlipkartDateFormat.parse(modifiedDate).getTime()));
125
								System.out.println("Flipkart Order Id... "+externalId + " ... Flipkart Sub Order Code... "+ orderItemId +" ... Delivery Date ... "+ ourDBDateFormat.format(gotFlipkartDateFormat.parse(modifiedDate).getTime()) + "....Created Date..... "+ jsonObj.get("created_date").toString());
125
								System.out.println("Flipkart Order Id... "+externalId + " ... Flipkart Sub Order Code... "+ orderItemId +" ... Delivery Date ... "+ ourDBDateFormat.format(gotFlipkartDateFormat.parse(modifiedDate).getTime()) + "....Created Date..... "+ jsonObj.get("created_date").toString());
126
								deliveredOrderDataList.add(delivered_dataList);
126
								deliveredOrderDataList.add(delivered_dataList);
127
							}
127
							}
-
 
128
							else{
-
 
129
								break outer;
-
 
130
							}
128
						}
131
						}
129
					}
132
					}
130
				}
133
				}
131
				
134
 
132
				i++;
135
				i++;
133
			}
136
			}
134
			
137
 
135
			System.out.println("deliveredOrderDataList size... "+deliveredOrderDataList.size());
138
			System.out.println("deliveredOrderDataList size... "+deliveredOrderDataList.size());
136
			if(deliveredOrderDataList!=null && deliveredOrderDataList.size()>0){
139
			if(deliveredOrderDataList!=null && deliveredOrderDataList.size()>0){
137
				new TransactionClient().getClient().updateFlipkartOrdersStatus(deliveredOrderDataList);
140
				new TransactionClient().getClient().updateFlipkartOrdersStatus(deliveredOrderDataList);
138
			}
141
			}
139
			
142
 
140
		} catch(Exception e){
143
		} catch(Exception e){
141
			e.printStackTrace();
144
			e.printStackTrace();
142
			mailer.sendSSLMessage(sendTo, "Error in Flipkart Order Status Recon", emailFromAddress, password, "<html><body><p>Please check log</p></body></html>");
145
			mailer.sendSSLMessage(sendTo, "Error in Flipkart Order Status Recon", emailFromAddress, password, "<html><body><p>Please check log</p></body></html>");
143
		}
146
		}
144
	}
147
	}