| Line 2030... |
Line 2030... |
| 2030 |
int minQty = entry.getValue().get();
|
2030 |
int minQty = entry.getValue().get();
|
| 2031 |
int inStockQty = 0;
|
2031 |
int inStockQty = 0;
|
| 2032 |
int processingQty = 0;
|
2032 |
int processingQty = 0;
|
| 2033 |
int grnPendingQty = 0;
|
2033 |
int grnPendingQty = 0;
|
| 2034 |
int allColorNetAvailability = 0;
|
2034 |
int allColorNetAvailability = 0;
|
| - |
|
2035 |
int allColorPoAvailability = 0;
|
| 2035 |
if (processingOrderMap != null) {
|
2036 |
if (processingOrderMap != null) {
|
| 2036 |
processingQty = (processingOrderMap.get(entry.getKey()) == null) ? 0
|
2037 |
processingQty = (processingOrderMap.get(entry.getKey()) == null) ? 0
|
| 2037 |
: processingOrderMap.get(entry.getKey());
|
2038 |
: processingOrderMap.get(entry.getKey());
|
| 2038 |
|
2039 |
|
| 2039 |
}
|
2040 |
}
|
| Line 2066... |
Line 2067... |
| 2066 |
List<SaholicPOItem> poItemAvailability = poItemAvailabilityMap.get(it.getId());
|
2067 |
List<SaholicPOItem> poItemAvailability = poItemAvailabilityMap.get(it.getId());
|
| 2067 |
if (currentAvailability != null) {
|
2068 |
if (currentAvailability != null) {
|
| 2068 |
allColorNetAvailability += currentAvailability.stream()
|
2069 |
allColorNetAvailability += currentAvailability.stream()
|
| 2069 |
.collect(Collectors.summingInt(SaholicCIS::getNetavailability));
|
2070 |
.collect(Collectors.summingInt(SaholicCIS::getNetavailability));
|
| 2070 |
}
|
2071 |
}
|
| - |
|
2072 |
|
| 2071 |
if (poItemAvailability != null) {
|
2073 |
if (poItemAvailability != null) {
|
| 2072 |
allColorNetAvailability += poItemAvailability.stream()
|
2074 |
allColorPoAvailability += poItemAvailability.stream()
|
| 2073 |
.collect(Collectors.summingInt(SaholicPOItem::getUnfulfilledQty));
|
2075 |
.collect(Collectors.summingInt(SaholicPOItem::getUnfulfilledQty));
|
| 2074 |
}
|
2076 |
}
|
| - |
|
2077 |
|
| 2075 |
}
|
2078 |
}
|
| 2076 |
|
2079 |
|
| 2077 |
FocusedModelShortageModel fm = new FocusedModelShortageModel();
|
2080 |
FocusedModelShortageModel fm = new FocusedModelShortageModel();
|
| 2078 |
fm.setFofoId(fofoId);
|
2081 |
fm.setFofoId(fofoId);
|
| 2079 |
fm.setStoreCode(fofoStore.getCode());
|
2082 |
fm.setStoreCode(fofoStore.getCode());
|
| 2080 |
fm.setStoreName(customRetailer.getBusinessName());
|
2083 |
fm.setStoreName(customRetailer.getBusinessName());
|
| 2081 |
fm.setBrandName(item.get(0).getBrand());
|
2084 |
fm.setBrandName(item.get(0).getBrand());
|
| 2082 |
fm.setModelName(item.get(0).getModelName());
|
2085 |
fm.setModelName(item.get(0).getModelName());
|
| 2083 |
fm.setModelNumber(item.get(0).getModelNumber());
|
2086 |
fm.setModelNumber(item.get(0).getModelNumber());
|
| 2084 |
fm.setShortageQty(shortageQty);
|
2087 |
fm.setShortageQty(shortageQty);
|
| - |
|
2088 |
fm.setPoAvailabitiy(allColorPoAvailability);
|
| 2085 |
fm.setWarehouseName(warehouseMap.get(customRetailer.getWarehouseId()));
|
2089 |
fm.setWarehouseName(warehouseMap.get(customRetailer.getWarehouseId()));
|
| 2086 |
fm.setStateManager(partnerIdSalesHeadersMap.get(fofoId).getRegionalManager());
|
2090 |
fm.setStateManager(partnerIdSalesHeadersMap.get(fofoId).getRegionalManager());
|
| 2087 |
fm.setTerritoryManager(partnerIdSalesHeadersMap.get(fofoId).getTerritoryManager());
|
2091 |
fm.setTerritoryManager(partnerIdSalesHeadersMap.get(fofoId).getTerritoryManager());
|
| 2088 |
fm.setItemName(item.get(0).getBrand() + item.get(0).getModelNumber() + item.get(0).getModelName());
|
2092 |
fm.setItemName(item.get(0).getBrand() + item.get(0).getModelNumber() + item.get(0).getModelName());
|
| 2089 |
fm.setAvailabitiy(allColorNetAvailability);
|
2093 |
fm.setAvailabitiy(allColorNetAvailability);
|
| Line 2130... |
Line 2134... |
| 2130 |
emailRowsMap.put(y.getKey(), new ArrayList<>());
|
2134 |
emailRowsMap.put(y.getKey(), new ArrayList<>());
|
| 2131 |
}
|
2135 |
}
|
| 2132 |
List<List<? extends Serializable>> fms = x.getValue().stream()
|
2136 |
List<List<? extends Serializable>> fms = x.getValue().stream()
|
| 2133 |
.map(r -> Arrays.asList(r.getStoreCode(), r.getStoreName(), r.getBrandName(),
|
2137 |
.map(r -> Arrays.asList(r.getStoreCode(), r.getStoreName(), r.getBrandName(),
|
| 2134 |
r.getModelName(), r.getModelNumber(), r.getWarehouseName(), r.getStateManager(),
|
2138 |
r.getModelName(), r.getModelNumber(), r.getWarehouseName(), r.getStateManager(),
|
| 2135 |
r.getTerritoryManager(), r.getShortageQty(), r.getAvailabitiy()))
|
2139 |
r.getTerritoryManager(), r.getShortageQty(), r.getAvailabitiy(),
|
| - |
|
2140 |
r.getPoAvailabitiy()))
|
| 2136 |
.collect(Collectors.toList());
|
2141 |
.collect(Collectors.toList());
|
| 2137 |
emailRowsMap.get(y.getKey()).addAll(fms);
|
2142 |
emailRowsMap.get(y.getKey()).addAll(fms);
|
| 2138 |
|
2143 |
|
| 2139 |
}
|
2144 |
}
|
| 2140 |
|
2145 |
|
| 2141 |
});
|
2146 |
});
|
| 2142 |
|
2147 |
|
| 2143 |
});
|
2148 |
});
|
| 2144 |
|
2149 |
|
| 2145 |
List<String> headers = Arrays.asList("Store Code", "Store Name", "Brand", "Model Name", "Model Number",
|
2150 |
List<String> headers = Arrays.asList("Store Code", "Store Name", "Brand", "Model Name", "Model Number",
|
| 2146 |
"Warehouse Name", "State Manager", "Territory Manager", "Shortage Qty", "Availability");
|
2151 |
"Warehouse Name", "State Manager", "Territory Manager", "Shortage Qty", "Availability",
|
| - |
|
2152 |
"PO Availability");
|
| 2147 |
emailRowsMap.entrySet().forEach(entry -> {
|
2153 |
emailRowsMap.entrySet().forEach(entry -> {
|
| 2148 |
|
2154 |
|
| 2149 |
ByteArrayOutputStream baos = null;
|
2155 |
ByteArrayOutputStream baos = null;
|
| 2150 |
try {
|
2156 |
try {
|
| 2151 |
baos = FileUtil.getCSVByteStream(headers, entry.getValue());
|
2157 |
baos = FileUtil.getCSVByteStream(headers, entry.getValue());
|