Subversion Repositories SmartDukaan

Rev

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

Rev 11886 Rev 11889
Line 63... Line 63...
63
	//static java.text.SimpleDateFormat sdf;
63
	//static java.text.SimpleDateFormat sdf;
64
	static String emailFromAddress;
64
	static String emailFromAddress;
65
	static String password;
65
	static String password;
66
	static GmailUtils mailer;
66
	static GmailUtils mailer;
67
	static String sendTo[];
67
	static String sendTo[];
68
	private static List<NlcLeftOutInventory> nlcLeftOutInventoryItemsSD = new ArrayList<NlcLeftOutInventory>();
68
	private static Map<String, Map<Long, NlcLeftOutInventory>> nlcLoiItemsMapSD = new HashMap<String, Map<Long, NlcLeftOutInventory>>();
69
	private static List<NlcLeftOutInventory> nlcLeftOutInventoryItemsFK = new ArrayList<NlcLeftOutInventory>();
69
	private static Map<String, Map<Long, NlcLeftOutInventory>> nlcLoiItemsMapFK = new HashMap<String, Map<Long, NlcLeftOutInventory>>();
70
 
70
 
71
	static{
71
	static{
72
		emailFromAddress = "build@shop2020.in";
72
		emailFromAddress = "build@shop2020.in";
73
		password = "cafe@nes";
73
		password = "cafe@nes";
74
		mailer = new GmailUtils();
74
		mailer = new GmailUtils();
Line 154... Line 154...
154
			List<Vendor> allVendors = inventoryClient.getAllVendors();
154
			List<Vendor> allVendors = inventoryClient.getAllVendors();
155
			for(Vendor v: allVendors){
155
			for(Vendor v: allVendors){
156
				vendorDataMap.put(v.getId(), v.getName());
156
				vendorDataMap.put(v.getId(), v.getName());
157
			}
157
			}
158
			List<in.shop2020.model.v1.inventory.IgnoredInventoryUpdateItems> ignoreItems = inventoryClient.getIgnoredWarehouseidsAndItemids();
158
			List<in.shop2020.model.v1.inventory.IgnoredInventoryUpdateItems> ignoreItems = inventoryClient.getIgnoredWarehouseidsAndItemids();
159
			
159
 
160
			availability = inventoryClient.getInventorySnapshot(0);
160
			availability = inventoryClient.getInventorySnapshot(0);
161
			List<Warehouse> allwarehouses = inventoryClient.getWarehouses(null,null,0,0,0);
161
			List<Warehouse> allwarehouses = inventoryClient.getWarehouses(null,null,0,0,0);
162
			Map<Long,Warehouse> allWarehousesMap = new HashMap<Long,Warehouse>();
162
			Map<Long,Warehouse> allWarehousesMap = new HashMap<Long,Warehouse>();
163
			for(Warehouse warehouse:allwarehouses){
163
			for(Warehouse warehouse:allwarehouses){
164
				allWarehousesMap.put(warehouse.getId(),warehouse);
164
				allWarehousesMap.put(warehouse.getId(),warehouse);
Line 268... Line 268...
268
											nlcLOISD.setVendorAvailability(available);
268
											nlcLOISD.setVendorAvailability(available);
269
											nlcLOISD.setVendorNlc(nlc);
269
											nlcLOISD.setVendorNlc(nlc);
270
											nlcLOISD.setVendorWarehouseId(warehouse.getId());
270
											nlcLOISD.setVendorWarehouseId(warehouse.getId());
271
											if(!nlcLoiMapSD.containsKey(warehouse.getId()))
271
											if(!nlcLoiMapSD.containsKey(warehouse.getId()))
272
												nlcLoiMapSD.put(warehouse.getId(), nlcLOISD);
272
												nlcLoiMapSD.put(warehouse.getId(), nlcLOISD);
273
											
273
 
274
										}
274
										}
275
									}
275
									}
276
								}
276
								}
277
 
277
 
278
								if(flipkartItem!=null){
278
								if(flipkartItem!=null){
Line 450... Line 450...
450
										//continue;
450
										//continue;
451
									}
451
									}
452
									else{
452
									else{
453
										if(snapdealLeftInvDataMap.containsKey(snapdealItem.getSkuAtSnapdeal())){
453
										if(snapdealLeftInvDataMap.containsKey(snapdealItem.getSkuAtSnapdeal())){
454
											Map<Long, NlcLeftOutInventory> newNlcObjMap = snapdealLeftInvDataMap.get(snapdealItem.getSkuAtSnapdeal());
454
											Map<Long, NlcLeftOutInventory> newNlcObjMap = snapdealLeftInvDataMap.get(snapdealItem.getSkuAtSnapdeal());
455
												if(newNlcObjMap.containsKey(warehouse.getId())){
455
											if(newNlcObjMap.containsKey(warehouse.getId())){
456
													NlcLeftOutInventory newObj = newNlcObjMap.get(warehouse.getId());
456
												NlcLeftOutInventory newObj = newNlcObjMap.get(warehouse.getId());
457
													newObj.setReserved(itemreserve.get(warehouse.getId()));
457
												newObj.setReserved(itemreserve.get(warehouse.getId()));
458
													newObj.setTotalAvailability(newObj.getVendorAvailability()-itemreserve.get(warehouse.getId()));
458
												newObj.setTotalAvailability(newObj.getVendorAvailability()-itemreserve.get(warehouse.getId()));
459
													newNlcObjMap.remove(warehouse.getId());
459
												newNlcObjMap.remove(warehouse.getId());
460
													newNlcObjMap.put(warehouse.getId(), newObj);
460
												newNlcObjMap.put(warehouse.getId(), newObj);
461
													
461
 
462
												}
462
											}
463
												nlcLoiMapSD = newNlcObjMap;
463
											nlcLoiMapSD = newNlcObjMap;
464
										}
464
										}
465
									}
465
									}
466
								}
466
								}
467
 
467
 
468
								if(flipkartItem!=null){
468
								if(flipkartItem!=null){
Line 477... Line 477...
477
										//continue;
477
										//continue;
478
									}
478
									}
479
									else{
479
									else{
480
										if(flipkartLeftInvDataMap.containsKey(flipkartItem.getSkuAtFlipkart())){
480
										if(flipkartLeftInvDataMap.containsKey(flipkartItem.getSkuAtFlipkart())){
481
											Map<Long, NlcLeftOutInventory> newNlcObjMap = flipkartLeftInvDataMap.get(flipkartItem.getSkuAtFlipkart());
481
											Map<Long, NlcLeftOutInventory> newNlcObjMap = flipkartLeftInvDataMap.get(flipkartItem.getSkuAtFlipkart());
482
												if(newNlcObjMap.containsKey(warehouse.getId())){
482
											if(newNlcObjMap.containsKey(warehouse.getId())){
483
													NlcLeftOutInventory newObj = newNlcObjMap.get(warehouse.getId());
483
												NlcLeftOutInventory newObj = newNlcObjMap.get(warehouse.getId());
484
													newObj.setReserved(itemreserve.get(warehouse.getId()));
484
												newObj.setReserved(itemreserve.get(warehouse.getId()));
485
													newObj.setTotalAvailability(newObj.getVendorAvailability()-itemreserve.get(warehouse.getId()));
485
												newObj.setTotalAvailability(newObj.getVendorAvailability()-itemreserve.get(warehouse.getId()));
486
													newNlcObjMap.remove(warehouse.getId());
486
												newNlcObjMap.remove(warehouse.getId());
487
													newNlcObjMap.put(warehouse.getId(), newObj);
487
												newNlcObjMap.put(warehouse.getId(), newObj);
488
													
488
 
489
												}
489
											}
490
												nlcLoiMapFK = newNlcObjMap;
490
											nlcLoiMapFK = newNlcObjMap;
491
										}
491
										}
492
									}
492
									}
493
								}
493
								}
494
 
494
 
495
 
495
 
496
							}
496
							}
497
						}
497
						}
498
						
498
 
499
						if(nlcLoiMapSD!=null && nlcLoiMapSD.size()>0){
499
						if(nlcLoiMapSD!=null && nlcLoiMapSD.size()>0){
500
							snapdealLeftInvDataMap.put(snapdealItem.getSkuAtSnapdeal(), nlcLoiMapSD);
500
							snapdealLeftInvDataMap.put(snapdealItem.getSkuAtSnapdeal(), nlcLoiMapSD);
501
						}
501
						}
502
						if(nlcLoiMapFK!=null && nlcLoiMapFK.size()>0){
502
						if(nlcLoiMapFK!=null && nlcLoiMapFK.size()>0){
503
							flipkartLeftInvDataMap.put(flipkartItem.getSkuAtFlipkart(), nlcLoiMapFK);
503
							flipkartLeftInvDataMap.put(flipkartItem.getSkuAtFlipkart(), nlcLoiMapFK);
504
						}
504
						}
505
					
505
 
506
					}else{
506
					}else{
507
						for (Map.Entry<Long,Long> entry : itemreserve.entrySet()) {
507
						for (Map.Entry<Long,Long> entry : itemreserve.entrySet()) {
508
							if(allWarehousesMap.get(entry.getKey()).getBillingWarehouseId()!=7){
508
							if(allWarehousesMap.get(entry.getKey()).getBillingWarehouseId()!=7){
509
								if(allWarehousesMap.get(entry.getKey()).getLogisticsLocation().equals(WarehouseLocation.Delhi) && allWarehousesMap.get(entry.getKey()).getWarehouseType().equals(WarehouseType.THIRD_PARTY) && allWarehousesMap.get(entry.getKey()).getVendor().getId()!=1){
509
								if(allWarehousesMap.get(entry.getKey()).getLogisticsLocation().equals(WarehouseLocation.Delhi) && allWarehousesMap.get(entry.getKey()).getWarehouseType().equals(WarehouseType.THIRD_PARTY) && allWarehousesMap.get(entry.getKey()).getVendor().getId()!=1){
510
 
510
 
Line 531... Line 531...
531
										//continue;
531
										//continue;
532
									}
532
									}
533
									else{
533
									else{
534
										if(snapdealLeftInvDataMap.containsKey(snapdealItem.getSkuAtSnapdeal())){
534
										if(snapdealLeftInvDataMap.containsKey(snapdealItem.getSkuAtSnapdeal())){
535
											Map<Long, NlcLeftOutInventory> newNlcObjMap = snapdealLeftInvDataMap.get(snapdealItem.getSkuAtSnapdeal());
535
											Map<Long, NlcLeftOutInventory> newNlcObjMap = snapdealLeftInvDataMap.get(snapdealItem.getSkuAtSnapdeal());
536
												if(newNlcObjMap.containsKey(entry.getKey())){
536
											if(newNlcObjMap.containsKey(entry.getKey())){
537
													NlcLeftOutInventory newObj = newNlcObjMap.get(entry.getKey());
537
												NlcLeftOutInventory newObj = newNlcObjMap.get(entry.getKey());
538
													newObj.setReserved(itemreserve.get(entry.getKey()));
538
												newObj.setReserved(itemreserve.get(entry.getKey()));
539
													newObj.setTotalAvailability(newObj.getVendorAvailability()-itemreserve.get(entry.getKey()));
539
												newObj.setTotalAvailability(newObj.getVendorAvailability()-itemreserve.get(entry.getKey()));
540
													newNlcObjMap.remove(entry.getKey());
540
												newNlcObjMap.remove(entry.getKey());
541
													newNlcObjMap.put(entry.getKey(), newObj);
541
												newNlcObjMap.put(entry.getKey(), newObj);
542
													
542
 
543
												}
543
											}
544
												nlcLoiMapSD = newNlcObjMap;
544
											nlcLoiMapSD = newNlcObjMap;
545
										}
545
										}
546
									}
546
									}
547
								}
547
								}
548
								if(flipkartItem!=null){
548
								if(flipkartItem!=null){
549
									if(nlc !=0 && (maxnlcFK >= nlc)){
549
									if(nlc !=0 && (maxnlcFK >= nlc)){
Line 557... Line 557...
557
										//continue;
557
										//continue;
558
									}
558
									}
559
									else{
559
									else{
560
										if(flipkartLeftInvDataMap.containsKey(flipkartItem.getSkuAtFlipkart())){
560
										if(flipkartLeftInvDataMap.containsKey(flipkartItem.getSkuAtFlipkart())){
561
											Map<Long, NlcLeftOutInventory> newNlcObjMap = flipkartLeftInvDataMap.get(flipkartItem.getSkuAtFlipkart());
561
											Map<Long, NlcLeftOutInventory> newNlcObjMap = flipkartLeftInvDataMap.get(flipkartItem.getSkuAtFlipkart());
562
												if(newNlcObjMap.containsKey(entry.getKey())){
562
											if(newNlcObjMap.containsKey(entry.getKey())){
563
													NlcLeftOutInventory newObj = newNlcObjMap.get(entry.getKey());
563
												NlcLeftOutInventory newObj = newNlcObjMap.get(entry.getKey());
564
													newObj.setReserved(itemreserve.get(entry.getKey()));
564
												newObj.setReserved(itemreserve.get(entry.getKey()));
565
													newObj.setTotalAvailability(newObj.getVendorAvailability()-itemreserve.get(entry.getKey()));
565
												newObj.setTotalAvailability(newObj.getVendorAvailability()-itemreserve.get(entry.getKey()));
566
													newNlcObjMap.remove(entry.getKey());
566
												newNlcObjMap.remove(entry.getKey());
567
													newNlcObjMap.put(entry.getKey(), newObj);
567
												newNlcObjMap.put(entry.getKey(), newObj);
568
													
568
 
569
												}
569
											}
570
												nlcLoiMapFK = newNlcObjMap;
570
											nlcLoiMapFK = newNlcObjMap;
571
										}
571
										}
572
									}
572
									}
573
								}
573
								}
574
 
574
 
575
							}
575
							}
576
 
576
 
577
							else{
577
							else{
578
								//System.out.println("skipping inventory for warehouse id " + entry.getKey());
578
								//System.out.println("skipping inventory for warehouse id " + entry.getKey());
579
							}
579
							}
580
						}
580
						}
581
						
581
 
582
						if(nlcLoiMapSD!=null && nlcLoiMapSD.size()>0){
582
						if(nlcLoiMapSD!=null && nlcLoiMapSD.size()>0){
583
							snapdealLeftInvDataMap.put(snapdealItem.getSkuAtSnapdeal(), nlcLoiMapSD);
583
							snapdealLeftInvDataMap.put(snapdealItem.getSkuAtSnapdeal(), nlcLoiMapSD);
584
						}
584
						}
585
						if(nlcLoiMapFK!=null && nlcLoiMapFK.size()>0){
585
						if(nlcLoiMapFK!=null && nlcLoiMapFK.size()>0){
586
							flipkartLeftInvDataMap.put(flipkartItem.getSkuAtFlipkart(), nlcLoiMapFK);
586
							flipkartLeftInvDataMap.put(flipkartItem.getSkuAtFlipkart(), nlcLoiMapFK);
Line 588... Line 588...
588
					}
588
					}
589
 
589
 
590
 
590
 
591
				}
591
				}
592
 
592
 
-
 
593
				nlcLoiItemsMapSD = snapdealLeftInvDataMap;
-
 
594
				nlcLoiItemsMapFK = flipkartLeftInvDataMap;
593
				for (Map.Entry<String,Map<Long, NlcLeftOutInventory>> entry : snapdealLeftInvDataMap.entrySet()){
595
				/*for (Map.Entry<String,Map<Long, NlcLeftOutInventory>> entry : snapdealLeftInvDataMap.entrySet()){
594
					for(NlcLeftOutInventory nlcLOI : entry.getValue().values()){
596
					for(NlcLeftOutInventory nlcLOI : entry.getValue().values()){
595
						nlcLeftOutInventoryItemsSD.add(nlcLOI);
597
						nlcLeftOutInventoryItemsSD.add(nlcLOI);
596
					}
598
					}
597
				}
599
				}
598
				for (Map.Entry<String,Map<Long, NlcLeftOutInventory>> entry : flipkartLeftInvDataMap.entrySet()){
600
				for (Map.Entry<String,Map<Long, NlcLeftOutInventory>> entry : flipkartLeftInvDataMap.entrySet()){
599
					for(NlcLeftOutInventory nlcLOI : entry.getValue().values()){
601
					for(NlcLeftOutInventory nlcLOI : entry.getValue().values()){
600
						nlcLeftOutInventoryItemsFK.add(nlcLOI);
602
						nlcLeftOutInventoryItemsFK.add(nlcLOI);
601
					}
603
					}
602
				}
604
				}*/
603
 
605
 
604
			}
606
			}
605
		} catch (TException e) {
607
		} catch (TException e) {
606
			// TODO Auto-generated catch block
608
			// TODO Auto-generated catch block
607
			e.printStackTrace();
609
			e.printStackTrace();
608
		}
610
		}
609
 
611
 
610
	}
612
	}
611
 
613
 
612
	private static void createAndSendLeftOutInventoryFile(List<NlcLeftOutInventory> nlcLeftoutInventoryItems, String fileName){
614
	private static void createAndSendLeftOutInventoryFile(Map<String, Map<Long, NlcLeftOutInventory>> nlcLeftoutInventoryItems, String fileName){
613
		try {
615
		try {
614
			File file = new File("/tmp/" + fileName +"-leftOutInv.xls");
616
			File file = new File("/tmp/" + fileName +"-leftOutInv.xls");
615
			BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter(file));
617
			BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter(file));
616
			bufferedWriter.write(StringUtils.join(new String[] {
618
			bufferedWriter.write(StringUtils.join(new String[] {
617
					"ItemId", 
619
					"ItemId", 
Line 623... Line 625...
623
					"Availability Count",
625
					"Availability Count",
624
					"Reserved Count",
626
					"Reserved Count",
625
					"Total Availabilty"
627
					"Total Availabilty"
626
			}, '\t'));
628
			}, '\t'));
627
 
629
 
-
 
630
			System.out.println(fileName+ " Main Map Size "+nlcLeftoutInventoryItems.size());
-
 
631
			
628
			for(NlcLeftOutInventory nlcLOI : nlcLeftoutInventoryItems){
632
			for(Map<Long, NlcLeftOutInventory> nlcLOImap : nlcLeftoutInventoryItems.values()){
-
 
633
				System.out.println("Inner Map Size "+nlcLOImap.size());
-
 
634
				for(NlcLeftOutInventory nlcLOI : nlcLOImap.values()){
629
				bufferedWriter.newLine();
635
					bufferedWriter.newLine();
630
 
636
 
631
				bufferedWriter.write(StringUtils.join(
637
					bufferedWriter.write(StringUtils.join(
632
						new String[] {
638
							new String[] {
633
								String.valueOf(nlcLOI.getItemId()),
639
									String.valueOf(nlcLOI.getItemId()),
634
								nlcLOI.getProductName(),
640
									nlcLOI.getProductName(),
635
								nlcLOI.getSkuAtSource(),
641
									nlcLOI.getSkuAtSource(),
636
								nlcLOI.getVendorName(),
642
									nlcLOI.getVendorName(),
637
								String.valueOf(nlcLOI.getOurNlc()),
643
									String.valueOf(nlcLOI.getOurNlc()),
638
								String.valueOf(nlcLOI.getVendorNlc()),
644
									String.valueOf(nlcLOI.getVendorNlc()),
639
								String.valueOf(nlcLOI.getVendorAvailability()),
645
									String.valueOf(nlcLOI.getVendorAvailability()),
640
								String.valueOf(nlcLOI.getReserved()),
646
									String.valueOf(nlcLOI.getReserved()),
641
								String.valueOf(nlcLOI.getTotalAvailability())}, '\t'));
647
									String.valueOf(nlcLOI.getTotalAvailability())}, '\t'));
642
 
648
 
-
 
649
				}
643
			}
650
			}
644
			bufferedWriter.close();
651
			bufferedWriter.close();
645
 
652
 
646
			List<File> files = new ArrayList<File>();
653
			List<File> files = new ArrayList<File>();
647
			files.add(file);
654
			files.add(file);
Line 659... Line 666...
659
 
666
 
660
	//private static DefaultHttpClient client = new DefaultHttpClient();
667
	//private static DefaultHttpClient client = new DefaultHttpClient();
661
 
668
 
662
	public static void main(String[] args) throws Exception {
669
	public static void main(String[] args) throws Exception {
663
		calculateinventory();
670
		calculateinventory();
664
		createAndSendLeftOutInventoryFile(nlcLeftOutInventoryItemsSD, "SNAPDEAL");
671
		createAndSendLeftOutInventoryFile(nlcLoiItemsMapSD, "SNAPDEAL");
665
		createAndSendLeftOutInventoryFile(nlcLeftOutInventoryItemsFK, "FLIPKART");
672
		createAndSendLeftOutInventoryFile(nlcLoiItemsMapFK, "FLIPKART");
666
 
673
 
667
 
674
 
668
		/*HttpPost post = new HttpPost("http://selleraccounts.snapdeal.com/keymaker/login");
675
		/*HttpPost post = new HttpPost("http://selleraccounts.snapdeal.com/keymaker/login");
669
		HttpGet get = new HttpGet("http://seller.snapdeal.com/pricing/search?gridType=normal&_search=false&nd=1392188583467&rows=30&page=1&sidx=&sord=asc");
676
		HttpGet get = new HttpGet("http://seller.snapdeal.com/pricing/search?gridType=normal&_search=false&nd=1392188583467&rows=30&page=1&sidx=&sord=asc");
670
		BufferedReader rd= null;
677
		BufferedReader rd= null;