| Line 37... |
Line 37... |
| 37 |
import com.spice.profitmandi.dao.entity.transaction.LineItemImei;
|
37 |
import com.spice.profitmandi.dao.entity.transaction.LineItemImei;
|
| 38 |
import com.spice.profitmandi.dao.entity.transaction.Order;
|
38 |
import com.spice.profitmandi.dao.entity.transaction.Order;
|
| 39 |
import com.spice.profitmandi.dao.entity.transaction.SellerWarehouse;
|
39 |
import com.spice.profitmandi.dao.entity.transaction.SellerWarehouse;
|
| 40 |
import com.spice.profitmandi.dao.enumuration.fofo.ScanType;
|
40 |
import com.spice.profitmandi.dao.enumuration.fofo.ScanType;
|
| 41 |
import com.spice.profitmandi.dao.repository.GenericRepository;
|
41 |
import com.spice.profitmandi.dao.repository.GenericRepository;
|
| - |
|
42 |
import com.spice.profitmandi.dao.repository.catalog.ItemRepository;
|
| 42 |
import com.spice.profitmandi.dao.repository.dtr.FofoStoreRepository;
|
43 |
import com.spice.profitmandi.dao.repository.dtr.FofoStoreRepository;
|
| 43 |
import com.spice.profitmandi.dao.repository.fofo.CurrentInventorySnapshotRepository;
|
44 |
import com.spice.profitmandi.dao.repository.fofo.CurrentInventorySnapshotRepository;
|
| 44 |
import com.spice.profitmandi.dao.repository.fofo.DebitNoteRepository;
|
45 |
import com.spice.profitmandi.dao.repository.fofo.DebitNoteRepository;
|
| 45 |
import com.spice.profitmandi.dao.repository.fofo.FofoOrderItemRepository;
|
46 |
import com.spice.profitmandi.dao.repository.fofo.FofoOrderItemRepository;
|
| 46 |
import com.spice.profitmandi.dao.repository.fofo.FofoOrderRepository;
|
47 |
import com.spice.profitmandi.dao.repository.fofo.FofoOrderRepository;
|
| Line 78... |
Line 79... |
| 78 |
|
79 |
|
| 79 |
@Autowired
|
80 |
@Autowired
|
| 80 |
private LineItemRepository lineItemRepository;
|
81 |
private LineItemRepository lineItemRepository;
|
| 81 |
|
82 |
|
| 82 |
@Autowired
|
83 |
@Autowired
|
| - |
|
84 |
private ItemRepository itemRepository;
|
| - |
|
85 |
|
| - |
|
86 |
@Autowired
|
| 83 |
private TargetSlabRepository targetSlabRepository;
|
87 |
private TargetSlabRepository targetSlabRepository;
|
| 84 |
|
88 |
|
| 85 |
@Autowired
|
89 |
@Autowired
|
| 86 |
private PartnerTargetRepository partnerTargetRepository;
|
90 |
private PartnerTargetRepository partnerTargetRepository;
|
| 87 |
|
91 |
|
| Line 287... |
Line 291... |
| 287 |
int ourSale = ourSaleItemQtyMap.get(itemQtyEntry.getKey());
|
291 |
int ourSale = ourSaleItemQtyMap.get(itemQtyEntry.getKey());
|
| 288 |
int quantityToReduce = itemQtyEntry.getValue() - ourSale;
|
292 |
int quantityToReduce = itemQtyEntry.getValue() - ourSale;
|
| 289 |
List<InventoryItem> itemIis = itemIdInventoryMap.get(itemQtyEntry.getKey());
|
293 |
List<InventoryItem> itemIis = itemIdInventoryMap.get(itemQtyEntry.getKey());
|
| 290 |
if (itemIdInventoryMap != null) {
|
294 |
if (itemIdInventoryMap != null) {
|
| 291 |
for (InventoryItem ii : itemIis) {
|
295 |
for (InventoryItem ii : itemIis) {
|
| 292 |
if (quantityToReduce > 0 && ii.getGoodQuantity() > 0) {
|
296 |
if (ii.getSerialNumber() != null && quantityToReduce > 0) {
|
| 293 |
LOGGER.info("Changed in inventoryItems {}, {}, {}, {}, {}, {}",
|
297 |
LOGGER.info("Changed in inventoryItems {}, {}, {}, {}, {}, {}",
|
| 294 |
purchase.getPurchaseReference(), ii.getId(), ii.getItemId(),
|
298 |
purchase.getPurchaseReference(), ii.getId(), ii.getItemId(),
|
| 295 |
ii.getInitialQuantity(), ii.getGoodQuantity(), quantityToReduce);
|
299 |
ii.getInitialQuantity(), ii.getGoodQuantity(), quantityToReduce);
|
| 296 |
if (ii.getGoodQuantity() > 0) {
|
- |
|
| 297 |
List<ScanRecord> scanRecords = scanRecordRepository.selectByInventoryItemId(ii.getId());
|
300 |
List<ScanRecord> scanRecords = scanRecordRepository.selectByInventoryItemId(ii.getId());
|
| 298 |
for (ScanRecord scanRecord : scanRecords) {
|
301 |
for (ScanRecord scanRecord : scanRecords) {
|
| 299 |
if (scanRecord.getType().equals(ScanType.PURCHASE)) {
|
302 |
if (scanRecord.getType().equals(ScanType.PURCHASE)) {
|
| - |
|
303 |
if (scanRecord.getQuantity() == 0) {
|
| - |
|
304 |
scanRecordRepository.delete(scanRecord);
|
| - |
|
305 |
purchase.setUnfullfilledNonSerializedQuantity(ii.getInitialQuantity());
|
| 300 |
CurrentInventorySnapshot cis = currentInventorySnapshotRepository
|
306 |
CurrentInventorySnapshot cis = currentInventorySnapshotRepository
|
| 301 |
.selectByItemIdAndFofoId(itemQtyEntry.getKey(), purchase.getFofoId());
|
307 |
.selectByItemIdAndFofoId(itemQtyEntry.getKey(), purchase.getFofoId());
|
| 302 |
scanRecord.setQuantity(scanRecord.getQuantity() - ii.getGoodQuantity());
|
- |
|
| 303 |
ii.setInitialQuantity(ii.getInitialQuantity() - ii.getBadQuantity());
|
- |
|
| 304 |
quantityToReduce = quantityToReduce - ii.getGoodQuantity();
|
308 |
quantityToReduce = quantityToReduce - ii.getInitialQuantity();
|
| 305 |
ii.setGoodQuantity(0);
|
- |
|
| 306 |
cis.setAvailability(cis.getAvailability() - ii.getGoodQuantity());
|
309 |
cis.setAvailability(cis.getAvailability() - ii.getGoodQuantity());
|
| 307 |
purchase.setUnfullfilledNonSerializedQuantity(
|
310 |
purchase.setUnfullfilledNonSerializedQuantity(
|
| 308 |
purchase.getUnfullfilledNonSerializedQuantity() + quantityToReduce);
|
311 |
purchase.getUnfullfilledNonSerializedQuantity() + quantityToReduce);
|
| - |
|
312 |
ii.setInitialQuantity(0);
|
| 309 |
LOGGER.info("Rectified {}, {}, {}, {}, {}, {}", purchase.getPurchaseReference(),
|
313 |
LOGGER.info("Rectified {}, {}, {}, {}, {}, {}", purchase.getPurchaseReference(),
|
| 310 |
ii.getId(), ii.getItemId(), ii.getInitialQuantity(),
|
314 |
ii.getId(), ii.getItemId(), ii.getInitialQuantity(),
|
| 311 |
ii.getGoodQuantity(), quantityToReduce);
|
315 |
ii.getGoodQuantity(), quantityToReduce);
|
| 312 |
break;
|
316 |
break;
|
| - |
|
317 |
|
| 313 |
}
|
318 |
}
|
| 314 |
}
|
319 |
}
|
| 315 |
}
|
320 |
}
|
| 316 |
}
|
321 |
}
|
| 317 |
}
|
322 |
}
|
| 318 |
}
|
323 |
}
|
| 319 |
}
|
324 |
}
|
| 320 |
}
|
325 |
}
|
| 321 |
//throw new Exception();
|
326 |
throw new Exception();
|
| 322 |
}
|
327 |
}
|
| 323 |
|
328 |
|
| 324 |
public void migrateChallansToInvoices() throws Exception {
|
329 |
public void migrateChallansToInvoices() throws Exception {
|
| 325 |
Map<String, List<Order>> invoiceOrdersMap = orderRepository.selectAllChallans().stream()
|
330 |
Map<String, List<Order>> invoiceOrdersMap = orderRepository.selectAllChallans().stream()
|
| 326 |
.filter(x -> !x.getLineItem().getHsnCode().equals("NOGST"))
|
331 |
.filter(x -> !x.getLineItem().getHsnCode().equals("NOGST"))
|