Subversion Repositories SmartDukaan

Rev

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

Rev 9516 Rev 9517
Line 89... Line 89...
89
			e.printStackTrace();
89
			e.printStackTrace();
90
		}
90
		}
91
		for(SnapdealItemDetails snapdealItem:allSnapdealItems){
91
		for(SnapdealItemDetails snapdealItem:allSnapdealItems){
92
			snapdealItemMap.put(snapdealItem.getSkuAtSnapdeal(),snapdealItem);
92
			snapdealItemMap.put(snapdealItem.getSkuAtSnapdeal(),snapdealItem);
93
			itemSnapdealMap.put(snapdealItem.getItem_id(), snapdealItem);
93
			itemSnapdealMap.put(snapdealItem.getItem_id(), snapdealItem);
94
			System.out.println("Creating Item and Snapdeal Map " + snapdealItem.getItem_id() + " " + snapdealItem.getSkuAtSnapdeal());
94
			//System.out.println("Creating Item and Snapdeal Map " + snapdealItem.getItem_id() + " " + snapdealItem.getSkuAtSnapdeal());
95
		}
95
		}
96
		in.shop2020.model.v1.order.TransactionService.Client transactionClient = null;
96
		in.shop2020.model.v1.order.TransactionService.Client transactionClient = null;
97
		try {
97
		try {
98
			transactionClient = new TransactionClient("support_transaction_service_server_host","transaction_service_server_port").getClient();
98
			transactionClient = new TransactionClient("support_transaction_service_server_host","transaction_service_server_port").getClient();
99
			lastUpdatedInventoryTime = transactionClient.getSourceDetail(7).getLastUpdatedOn();
99
			lastUpdatedInventoryTime = transactionClient.getSourceDetail(7).getLastUpdatedOn();
Line 201... Line 201...
201
								catch(TTransportException e){
201
								catch(TTransportException e){
202
									inventoryClient = inventoryServiceClient.getClient(); 
202
									inventoryClient = inventoryServiceClient.getClient(); 
203
									nlc = inventoryClient.getNlcForWarehouse(warehouse.getId(),thriftItem.getId());
203
									nlc = inventoryClient.getNlcForWarehouse(warehouse.getId(),thriftItem.getId());
204
								}
204
								}
205
								maxnlc = catalogClient.getSnapdealItem(thriftItem.getId()).getMaxNlc();
205
								maxnlc = catalogClient.getSnapdealItem(thriftItem.getId()).getMaxNlc();
206
								System.out.println("itemId:" + thriftItem.getId() + "\tmaxnlc: " + maxnlc + "\tnlc:" + nlc + "\twid:" + warehouse.getId() );
206
								//System.out.println("itemId:" + thriftItem.getId() + "\tmaxnlc: " + maxnlc + "\tnlc:" + nlc + "\twid:" + warehouse.getId() );
207
								if(nlc !=0 && (maxnlc >= nlc)){
207
								if(nlc !=0 && (maxnlc >= nlc)){
208
									total_held = inventoryClient.getHoldInventoryDetailForItemForWarehouseIdExceptSource(thriftItem.getId(), warehouse.getId(), 0);
208
									total_held = inventoryClient.getHoldInventoryDetailForItemForWarehouseIdExceptSource(thriftItem.getId(), warehouse.getId(), 0);
209
									heldForSource = heldForSource + total_held - inventoryClient.getHoldInventoryDetailForItemForWarehouseIdExceptSource(thriftItem.getId(), warehouse.getId(), 7);
209
									heldForSource = heldForSource + total_held - inventoryClient.getHoldInventoryDetailForItemForWarehouseIdExceptSource(thriftItem.getId(), warehouse.getId(), 7);
210
									available = available + itemavailability.get(warehouse.getId()) - total_held;
210
									available = available + itemavailability.get(warehouse.getId()) - total_held;
211
									System.out.println("itemId:" + thriftItem.getId() + "\ttotal_held: " + total_held + "\theldForSource:" + heldForSource + "\tavailable:" + available);
211
									//System.out.println("itemId:" + thriftItem.getId() + "\ttotal_held: " + total_held + "\theldForSource:" + heldForSource + "\tavailable:" + available);
212
								}
212
								}
213
								else if(maxnlc==0){
213
								else if(maxnlc==0){
214
									total_held = inventoryClient.getHoldInventoryDetailForItemForWarehouseIdExceptSource(thriftItem.getId(), warehouse.getId(), 0);
214
									total_held = inventoryClient.getHoldInventoryDetailForItemForWarehouseIdExceptSource(thriftItem.getId(), warehouse.getId(), 0);
215
									heldForSource = heldForSource + total_held - inventoryClient.getHoldInventoryDetailForItemForWarehouseIdExceptSource(thriftItem.getId(), warehouse.getId(), 7);
215
									heldForSource = heldForSource + total_held - inventoryClient.getHoldInventoryDetailForItemForWarehouseIdExceptSource(thriftItem.getId(), warehouse.getId(), 7);
216
									available = available + itemavailability.get(warehouse.getId()) - total_held;
216
									available = available + itemavailability.get(warehouse.getId()) - total_held;
217
									System.out.println("itemId:" + thriftItem.getId() + "\ttotal_held: " + total_held + "\theldForSource:" + heldForSource + "\tavailable:" + available);
217
									//System.out.println("itemId:" + thriftItem.getId() + "\ttotal_held: " + total_held + "\theldForSource:" + heldForSource + "\tavailable:" + available);
218
								}
218
								}
219
							}
219
							}
220
						}
220
						}
221
					}
221
					}
222
					else{
222
					else{
Line 235... Line 235...
235
								}
235
								}
236
								catch(TTransportException e){
236
								catch(TTransportException e){
237
									catalogClient = catalogServiceClient.getClient();  
237
									catalogClient = catalogServiceClient.getClient();  
238
									maxnlc = catalogClient.getSnapdealItem(thriftItem.getId()).getMaxNlc();
238
									maxnlc = catalogClient.getSnapdealItem(thriftItem.getId()).getMaxNlc();
239
								}
239
								}
240
								System.out.println("itemId:" + thriftItem.getId() + "\tmaxnlc: " + maxnlc + "\tnlc:" + nlc + "\twid:" + entry.getKey() );
240
								//System.out.println("itemId:" + thriftItem.getId() + "\tmaxnlc: " + maxnlc + "\tnlc:" + nlc + "\twid:" + entry.getKey() );
241
								if(nlc !=0 && (maxnlc >= nlc)){
241
								if(nlc !=0 && (maxnlc >= nlc)){
242
									total_held = inventoryClient.getHoldInventoryDetailForItemForWarehouseIdExceptSource(thriftItem.getId(), entry.getKey(), 0);
242
									total_held = inventoryClient.getHoldInventoryDetailForItemForWarehouseIdExceptSource(thriftItem.getId(), entry.getKey(), 0);
243
									heldForSource = heldForSource + total_held - inventoryClient.getHoldInventoryDetailForItemForWarehouseIdExceptSource(thriftItem.getId(), entry.getKey(), 7);
243
									heldForSource = heldForSource + total_held - inventoryClient.getHoldInventoryDetailForItemForWarehouseIdExceptSource(thriftItem.getId(), entry.getKey(), 7);
244
									available =  available + entry.getValue() - total_held;
244
									available =  available + entry.getValue() - total_held;
245
									System.out.println("itemId:" + thriftItem.getId() + "\ttotal_held: " + total_held + "\theldForSource:" + heldForSource + "\tavailable:" + available);
245
									//System.out.println("itemId:" + thriftItem.getId() + "\ttotal_held: " + total_held + "\theldForSource:" + heldForSource + "\tavailable:" + available);
246
								}
246
								}
247
								else if(maxnlc==0){
247
								else if(maxnlc==0){
248
									total_held = inventoryClient.getHoldInventoryDetailForItemForWarehouseIdExceptSource(thriftItem.getId(), entry.getKey(), 0);
248
									total_held = inventoryClient.getHoldInventoryDetailForItemForWarehouseIdExceptSource(thriftItem.getId(), entry.getKey(), 0);
249
									heldForSource = heldForSource + total_held - inventoryClient.getHoldInventoryDetailForItemForWarehouseIdExceptSource(thriftItem.getId(), entry.getKey(), 7);
249
									heldForSource = heldForSource + total_held - inventoryClient.getHoldInventoryDetailForItemForWarehouseIdExceptSource(thriftItem.getId(), entry.getKey(), 7);
250
									available = available + itemavailability.get(entry.getKey()) - total_held;
250
									available = available + itemavailability.get(entry.getKey()) - total_held;
251
									System.out.println("itemId:" + thriftItem.getId() + "\ttotal_held: " + total_held + "\theldForSource:" + heldForSource + "\tavailable:" + available);
251
									//System.out.println("itemId:" + thriftItem.getId() + "\ttotal_held: " + total_held + "\theldForSource:" + heldForSource + "\tavailable:" + available);
252
								}
252
								}
253
 
253
 
254
							}
254
							}
255
						}
255
						}
256
					}
256
					}
Line 266... Line 266...
266
							ignoredItem.setItemId(thriftItem.getId());
266
							ignoredItem.setItemId(thriftItem.getId());
267
							ignoredItem.setWarehouseId(warehouse.getId());
267
							ignoredItem.setWarehouseId(warehouse.getId());
268
							if (itemreserve.get(warehouse.getId())!=null && !thirdpartywarehouseids.contains(warehouse.getId()) && !ignoreItems.contains(warehouse.getId())){
268
							if (itemreserve.get(warehouse.getId())!=null && !thirdpartywarehouseids.contains(warehouse.getId()) && !ignoreItems.contains(warehouse.getId())){
269
								nlc = inventoryClient.getNlcForWarehouse(warehouse.getId(),thriftItem.getId());
269
								nlc = inventoryClient.getNlcForWarehouse(warehouse.getId(),thriftItem.getId());
270
								maxnlc = catalogClient.getSnapdealItem(thriftItem.getId()).getMaxNlc();
270
								maxnlc = catalogClient.getSnapdealItem(thriftItem.getId()).getMaxNlc();
271
								System.out.println("itemId:" + thriftItem.getId() + "\tmaxnlc: " + maxnlc + "\tnlc:" + nlc + "\twid:" + warehouse.getId() );
271
								//System.out.println("itemId:" + thriftItem.getId() + "\tmaxnlc: " + maxnlc + "\tnlc:" + nlc + "\twid:" + warehouse.getId() );
272
								if(nlc !=0 && (maxnlc >= nlc)){
272
								if(nlc !=0 && (maxnlc >= nlc)){
273
									reserve = reserve + itemreserve.get(warehouse.getId());
273
									reserve = reserve + itemreserve.get(warehouse.getId());
274
									System.out.println("itemId:" + thriftItem.getId() + "\ttotal_held: " + total_held + "\theldForSource:" + heldForSource + "\treserve:" + reserve);
274
									//System.out.println("itemId:" + thriftItem.getId() + "\ttotal_held: " + total_held + "\theldForSource:" + heldForSource + "\treserve:" + reserve);
275
								}
275
								}
276
								else if(maxnlc==0){
276
								else if(maxnlc==0){
277
									reserve = reserve + itemreserve.get(warehouse.getId());
277
									reserve = reserve + itemreserve.get(warehouse.getId());
278
									System.out.println("itemId:" + thriftItem.getId() + "\ttotal_held: " + total_held + "\theldForSource:" + heldForSource + "\treserve:" + reserve);
278
									//System.out.println("itemId:" + thriftItem.getId() + "\ttotal_held: " + total_held + "\theldForSource:" + heldForSource + "\treserve:" + reserve);
279
								}
279
								}
280
 
280
 
281
							}
281
							}
282
						}
282
						}
283
					}else{
283
					}else{
Line 289... Line 289...
289
							ignoredItem.setItemId(thriftItem.getId());
289
							ignoredItem.setItemId(thriftItem.getId());
290
							ignoredItem.setWarehouseId(entry.getKey());
290
							ignoredItem.setWarehouseId(entry.getKey());
291
							if(!thirdpartywarehouseids.contains(entry.getKey()) && !ignoreItems.contains(ignoredItem)){
291
							if(!thirdpartywarehouseids.contains(entry.getKey()) && !ignoreItems.contains(ignoredItem)){
292
								nlc = inventoryClient.getNlcForWarehouse(entry.getKey(),thriftItem.getId());
292
								nlc = inventoryClient.getNlcForWarehouse(entry.getKey(),thriftItem.getId());
293
								maxnlc = catalogClient.getSnapdealItem(thriftItem.getId()).getMaxNlc();
293
								maxnlc = catalogClient.getSnapdealItem(thriftItem.getId()).getMaxNlc();
294
								System.out.println("itemId:" + thriftItem.getId() + "\tmaxnlc: " + maxnlc + "\tnlc:" + nlc + "\twid:" + entry.getKey() );
294
								//System.out.println("itemId:" + thriftItem.getId() + "\tmaxnlc: " + maxnlc + "\tnlc:" + nlc + "\twid:" + entry.getKey() );
295
								if(nlc !=0 && (maxnlc >= nlc)){
295
								if(nlc !=0 && (maxnlc >= nlc)){
296
									reserve =  reserve + entry.getValue();
296
									reserve =  reserve + entry.getValue();
297
									System.out.println("itemId:" + thriftItem.getId() + "\ttotal_held: " + total_held + "\theldForSource:" + heldForSource + "\treserve:" + reserve);
297
									//System.out.println("itemId:" + thriftItem.getId() + "\ttotal_held: " + total_held + "\theldForSource:" + heldForSource + "\treserve:" + reserve);
298
								}
298
								}
299
								else if(maxnlc==0){
299
								else if(maxnlc==0){
300
									reserve =  reserve + entry.getValue();
300
									reserve =  reserve + entry.getValue();
301
									System.out.println("itemId:" + thriftItem.getId() + "\ttotal_held: " + total_held + "\theldForSource:" + heldForSource + "\treserve:" + reserve);
301
									//System.out.println("itemId:" + thriftItem.getId() + "\ttotal_held: " + total_held + "\theldForSource:" + heldForSource + "\treserve:" + reserve);
302
								}
302
								}
303
 
303
 
304
							}
304
							}
305
 
305
 
306
							else{
306
							else{
Line 358... Line 358...
358
			e1.printStackTrace();
358
			e1.printStackTrace();
359
		}
359
		}
360
		String line = "";
360
		String line = "";
361
		try {
361
		try {
362
			while ((line = rd.readLine()) != null) {
362
			while ((line = rd.readLine()) != null) {
363
				System.out.println(line);
363
				//System.out.println(line);
364
			}
364
			}
365
		} catch (IOException e) {
365
		} catch (IOException e) {
366
			// TODO Auto-generated catch block
366
			// TODO Auto-generated catch block
367
			e.printStackTrace();
367
			e.printStackTrace();
368
		}
368
		}
369
		int i = 1;
369
		int i = 1;
370
		Gson gson = new Gson();
370
		Gson gson = new Gson();
371
		inventoryhistoryItemMap = new HashMap<String,InventoryHistory>();
371
		inventoryhistoryItemMap = new HashMap<String,InventoryHistory>();
372
		boolean exitfetchinghistory = true;
372
		boolean exitfetchinghistory = true;
-
 
373
		System.out.println("Fetching inventory history ");
373
		while(exitfetchinghistory){
374
		while(exitfetchinghistory){
374
			System.out.println("Fetching inventory history page " +i);
375
			//System.out.println("Fetching inventory history page " +i);
375
			get = new HttpGet("http://seller.snapdeal.com/inventory/search?gridType=history&_search=false&nd="+time+"&rows=30&page="+i+"&sidx=&sord=dsc");
376
			get = new HttpGet("http://seller.snapdeal.com/inventory/search?gridType=history&_search=false&nd="+time+"&rows=30&page="+i+"&sidx=&sord=dsc");
376
			try {
377
			try {
377
				response = client.execute(get);
378
				response = client.execute(get);
378
			} catch (ClientProtocolException e) {
379
			} catch (ClientProtocolException e) {
379
				// TODO Auto-generated catch block
380
				// TODO Auto-generated catch block
Line 491... Line 492...
491
		in.shop2020.model.v1.order.TransactionService.Client transactionClient = null;
492
		in.shop2020.model.v1.order.TransactionService.Client transactionClient = null;
492
		currentInventoryItemList = new ArrayList<Inventory>();
493
		currentInventoryItemList = new ArrayList<Inventory>();
493
		HttpGet get;
494
		HttpGet get;
494
		HttpResponse response = null;
495
		HttpResponse response = null;
495
		BufferedReader rd= null;
496
		BufferedReader rd= null;
-
 
497
		System.out.println("Fetching current inventory page ");
496
		while(true){
498
		while(true){
497
			System.out.println("Fetching current inventory page " +i);
499
			//System.out.println("Fetching current inventory page " +i);
498
			get = new HttpGet("http://seller.snapdeal.com/inventory/search?gridType=normal&_search=false&nd="+time+"&rows="+30+"&page="+i+"&sidx=&sord=asc");
500
			get = new HttpGet("http://seller.snapdeal.com/inventory/search?gridType=normal&_search=false&nd="+time+"&rows="+30+"&page="+i+"&sidx=&sord=asc");
499
			try {
501
			try {
500
				response = client.execute(get);
502
				response = client.execute(get);
501
			} catch (ClientProtocolException e) {
503
			} catch (ClientProtocolException e) {
502
				// TODO Auto-generated catch block
504
				// TODO Auto-generated catch block
Line 515... Line 517...
515
				e.printStackTrace();
517
				e.printStackTrace();
516
			}
518
			}
517
			InventoryItems inventoryitems = (InventoryItems) gson.fromJson(rd, InventoryItems.class);
519
			InventoryItems inventoryitems = (InventoryItems) gson.fromJson(rd, InventoryItems.class);
518
			if(inventoryitems.getRows().size()!=0){
520
			if(inventoryitems.getRows().size()!=0){
519
				for(Inventory inventory : inventoryitems.getRows()){
521
				for(Inventory inventory : inventoryitems.getRows()){
520
					System.out.println(inventory.getSellerSku());
522
					//System.out.println(inventory.getSellerSku());
521
					currentInventoryItemList.add(inventory);
523
					currentInventoryItemList.add(inventory);
522
					items++;
524
					items++;
523
				}
525
				}
524
			}
526
			}
525
			else{
527
			else{
526
				System.out.println("Fetched  " + items);
528
				//System.out.println("Fetched  " + items);
527
				break;
529
				break;
528
			}
530
			}
529
			i++;
531
			i++;
530
		}
532
		}
531
		in.shop2020.model.v1.catalog.CatalogService.Client catalogServiceClient = null;
533
		in.shop2020.model.v1.catalog.CatalogService.Client catalogServiceClient = null;
Line 555... Line 557...
555
					notMappedItems.add("inventory.getSellerSku() "+inventory.getProductName());
557
					notMappedItems.add("inventory.getSellerSku() "+inventory.getProductName());
556
					continue;
558
					continue;
557
				}
559
				}
558
				if(sku!=0){
560
				if(sku!=0){
559
					try{
561
					try{
-
 
562
						System.out.println("Fetching created orders");
-
 
563
						System.out.println("Last Updated on Time is  " + lastUpdatedInventoryTime);
560
						if(lastUpdatedInventoryTime > 0){
564
						if(lastUpdatedInventoryTime > 0){
561
							System.out.println("Fetching created orders for " + sku);
565
							System.out.println("Fetching created orders for " + sku);
562
							System.out.println("Last Updated on Time is  " + lastUpdatedInventoryTime);
-
 
563
							created_orders = transactionClient.getOrdersCreatedAfterTimestampForSource(lastUpdatedInventoryTime, 7, sku);
566
							created_orders = transactionClient.getOrdersCreatedAfterTimestampForSource(lastUpdatedInventoryTime, 7, sku);
564
						}
567
						}
565
					}
568
					}
566
					catch(TTransportException e){
569
					catch(TTransportException e){
567
						if(lastUpdatedInventoryTime > 0){
570
						if(lastUpdatedInventoryTime > 0){
Line 653... Line 656...
653
					heldorders = itemIdpendingOrdersMap.get(sku);
656
					heldorders = itemIdpendingOrdersMap.get(sku);
654
					if(heldorders < 0){
657
					if(heldorders < 0){
655
						heldorders = 0;
658
						heldorders = 0;
656
					}
659
					}
657
				}
660
				}
658
				System.out.println("itemId:" + inventoryItem.getId() + "\tavailable: " + inventoryItem.getAvailability() + "\treserve" + inventoryItem.getReserve() + "\theldForSource:" + inventoryItem.getHeldForSource() + "\twebsite_hold:" + inventoryItem.getHoldInventory() + "\tdefault_inv:" +inventoryItem.getDefaultInventory() + "\theldorders" + heldorders);
661
				System.out.println("itemId: " + inventoryItem.getId() + "\trisky: " + inventoryItem.getRisky()+ "\tavailable: " + inventoryItem.getAvailability() + "\treserve: " + inventoryItem.getReserve() + "\theldForSource:" + inventoryItem.getHeldForSource() + "\twebsite_hold: " + inventoryItem.getHoldInventory() + "\tdefault_inv: " +inventoryItem.getDefaultInventory() + "\theldorders " + heldorders);
659
				row =   sheet.getRow((short) iterator);
662
				row =   sheet.getRow((short) iterator);
660
				long inventoryForRiskyItem = actualavailability - holdinventory;
663
				long inventoryForRiskyItem = actualavailability - holdinventory;
661
				if(inventoryItem.getRisky()){
664
				if(inventoryItem.getRisky()){
662
					if(inventoryForRiskyItem > 0){
665
					if(inventoryForRiskyItem > 0){
663
						if((Math.round(inventoryForRiskyItem*2/3) - heldorders + inventoryItem.getHeldForSource()) > 0){
666
						if((Math.round(inventoryForRiskyItem*2/3) - heldorders + inventoryItem.getHeldForSource()) > 0){
664
							sent_inventory = Math.round(inventoryForRiskyItem*2/3) - heldorders + inventoryItem.getHeldForSource();
667
							sent_inventory = Math.round(inventoryForRiskyItem*2/3) - heldorders + inventoryItem.getHeldForSource();
-
 
668
							System.out.println("actual" + actualavailability + "\t2/3actual" + Math.round(actualavailability*2/3) +  "\theld for source" + inventoryItem.getHeldForSource() + "\theldorders" +  heldorders + "\tFinal Value is : " + (Math.round(actualavailability*2/3) +  inventoryItem.getHeldForSource() - heldorders));
665
						}
669
						}
666
						else{
670
						else{
667
							sent_inventory = 0;
671
							sent_inventory = 0;
668
						}
672
						}
669
					}
673
					}