Subversion Repositories SmartDukaan

Rev

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

Rev 27212 Rev 27213
Line 1966... Line 1966...
1966
 
1966
 
1967
		List<Integer> fofoIds = fofoStoreRepository.selectAll().stream().filter(x -> x.isActive()).map(x -> x.getId())
1967
		List<Integer> fofoIds = fofoStoreRepository.selectAll().stream().filter(x -> x.isActive()).map(x -> x.getId())
1968
				.collect(Collectors.toList());
1968
				.collect(Collectors.toList());
1969
		Map<Integer, Map<Integer, List<SaholicCIS>>> warehouseItemAvailabilityMap = saholicInventoryService
1969
		Map<Integer, Map<Integer, List<SaholicCIS>>> warehouseItemAvailabilityMap = saholicInventoryService
1970
				.getSaholicStock();
1970
				.getSaholicStock();
-
 
1971
		Map<Integer, String> warehouseMap = ProfitMandiConstants.WAREHOUSE_MAP;
-
 
1972
		Map<Integer, FofoReportingModel> partnerIdSalesHeadersMap = this.getPartnerIdSalesHeaders();
1971
 
1973
 
1972
		Map<Integer, Map<Integer, List<SaholicPOItem>>> warehousePoItemAvailabilityMap = saholicInventoryService
1974
		Map<Integer, Map<Integer, List<SaholicPOItem>>> warehousePoItemAvailabilityMap = saholicInventoryService
1973
				.getSaholicPOItems();
1975
				.getSaholicPOItems();
1974
		
-
 
1975
		Map<Integer, String> warehouseMap = ProfitMandiConstants.WAREHOUSE_MAP;
-
 
1976
 
-
 
1977
		Map<Integer, List<FocusedModelShortageModel>> focusedModelShortageReportMap = new HashMap<>();
1976
		Map<Integer, List<FocusedModelShortageModel>> focusedModelShortageReportMap = new HashMap<>();
1978
		for (Integer fofoId : fofoIds) {
1977
		for (Integer fofoId : fofoIds) {
1979
			List<FocusedModelShortageModel> focusedModelShortageList = new ArrayList<>();
1978
			List<FocusedModelShortageModel> focusedModelShortageList = new ArrayList<>();
1980
			focusedModelShortageReportMap.put(fofoId, focusedModelShortageList);
1979
			focusedModelShortageReportMap.put(fofoId, focusedModelShortageList);
1981
			CustomRetailer customRetailer = retailerService.getFofoRetailer(fofoId);
1980
			CustomRetailer customRetailer = retailerService.getFofoRetailer(fofoId);
Line 2084... Line 2083...
2084
				if (totalQty < minQty) {
2083
				if (totalQty < minQty) {
2085
 
2084
 
2086
					int shortageQty = minQty - totalQty;
2085
					int shortageQty = minQty - totalQty;
2087
					List<Item> item = itemRepository.selectAllByCatalogItemId(entry.getKey());
2086
					List<Item> item = itemRepository.selectAllByCatalogItemId(entry.getKey());
2088
					FofoStore fofoStore = fofoStoreRepository.selectByRetailerId(fofoId);
2087
					FofoStore fofoStore = fofoStoreRepository.selectByRetailerId(fofoId);
2089
					
2088
 
2090
					Map<Integer, List<SaholicCIS>> itemAvailabilityMap = warehouseItemAvailabilityMap
2089
					Map<Integer, List<SaholicCIS>> itemAvailabilityMap = warehouseItemAvailabilityMap
2091
							.get(fofoStore.getWarehouseId());
2090
							.get(fofoStore.getWarehouseId());
2092
 
2091
 
2093
					Map<Integer, List<SaholicPOItem>> poItemAvailabilityMap = warehousePoItemAvailabilityMap
2092
					Map<Integer, List<SaholicPOItem>> poItemAvailabilityMap = warehousePoItemAvailabilityMap
2094
							.get(fofoStore.getWarehouseId());
2093
							.get(fofoStore.getWarehouseId());
Line 2113... Line 2112...
2113
					fm.setBrandName(item.get(0).getBrand());
2112
					fm.setBrandName(item.get(0).getBrand());
2114
					fm.setModelName(item.get(0).getModelName());
2113
					fm.setModelName(item.get(0).getModelName());
2115
					fm.setModelNumber(item.get(0).getModelNumber());
2114
					fm.setModelNumber(item.get(0).getModelNumber());
2116
					fm.setShortageQty(shortageQty);
2115
					fm.setShortageQty(shortageQty);
2117
					fm.setWarehouseName(warehouseMap.get(customRetailer.getWarehouseId()));
2116
					fm.setWarehouseName(warehouseMap.get(customRetailer.getWarehouseId()));
-
 
2117
					fm.setStateManager(partnerIdSalesHeadersMap.get(fofoId).getRegionalManager());
-
 
2118
					fm.setTerritoryManager(partnerIdSalesHeadersMap.get(fofoId).getTerritoryManager());
2118
					// fm.setItemName(item.get(0).getBrand() + item.get(0).getModelNumber() +
2119
					// fm.setItemName(item.get(0).getBrand() + item.get(0).getModelNumber() +
2119
					// item.get(0).getModelName());
2120
					// item.get(0).getModelName());
2120
					fm.setAvailabitiy(allColorNetAvailability);
2121
					fm.setAvailabitiy(allColorNetAvailability);
2121
 
2122
 
2122
					focusedModelShortageList.add(fm);
2123
					focusedModelShortageList.add(fm);
Line 2160... Line 2161...
2160
						if (!emailRowsMap.containsKey(y.getKey())) {
2161
						if (!emailRowsMap.containsKey(y.getKey())) {
2161
							emailRowsMap.put(y.getKey(), new ArrayList<>());
2162
							emailRowsMap.put(y.getKey(), new ArrayList<>());
2162
						}
2163
						}
2163
						List<List<? extends Serializable>> fms = x.getValue().stream()
2164
						List<List<? extends Serializable>> fms = x.getValue().stream()
2164
								.map(r -> Arrays.asList(r.getStoreCode(), r.getStoreName(), r.getBrandName(),
2165
								.map(r -> Arrays.asList(r.getStoreCode(), r.getStoreName(), r.getBrandName(),
2165
										r.getModelName(), r.getModelNumber(), r.getWarehouseName(), r.getShortageQty(),
2166
										r.getModelName(), r.getModelNumber(), r.getWarehouseName(), r.getStateManager(),
2166
										r.getAvailabitiy()))
2167
										r.getTerritoryManager(), r.getShortageQty(), r.getAvailabitiy()))
2167
								.collect(Collectors.toList());
2168
								.collect(Collectors.toList());
2168
						emailRowsMap.get(y.getKey()).addAll(fms);
2169
						emailRowsMap.get(y.getKey()).addAll(fms);
2169
 
2170
 
2170
					}
2171
					}
2171
 
2172
 
2172
				});
2173
				});
2173
 
2174
 
2174
			});
2175
			});
2175
 
2176
 
2176
			List<String> headers = Arrays.asList("Store Code", "Store Name", "Brand", "Model Name", "Model Number",
2177
			List<String> headers = Arrays.asList("Store Code", "Store Name", "Brand", "Model Name", "Model Number",
2177
					"Warehouse Name", "Shortage Qty", "Availability");
2178
					"Warehouse Name", "State Manager", "Territory Manager", "Shortage Qty", "Availability");
2178
			emailRowsMap.entrySet().forEach(entry -> {
2179
			emailRowsMap.entrySet().forEach(entry -> {
2179
 
2180
 
2180
				ByteArrayOutputStream baos = null;
2181
				ByteArrayOutputStream baos = null;
2181
				try {
2182
				try {
2182
					baos = FileUtil.getCSVByteStream(headers, entry.getValue());
2183
					baos = FileUtil.getCSVByteStream(headers, entry.getValue());