| Line 119... |
Line 119... |
| 119 |
@Autowired
|
119 |
@Autowired
|
| 120 |
private SaholicInventorySnapshotRepository saholicInventorySnapshotRepository;
|
120 |
private SaholicInventorySnapshotRepository saholicInventorySnapshotRepository;
|
| 121 |
|
121 |
|
| 122 |
@Autowired
|
122 |
@Autowired
|
| 123 |
private CsService csService;
|
123 |
private CsService csService;
|
| 124 |
|
124 |
|
| 125 |
@Autowired
|
125 |
@Autowired
|
| 126 |
private SamsungIMEIActivationService samsungActivationService;
|
126 |
private SamsungIMEIActivationService samsungActivationService;
|
| 127 |
|
127 |
|
| 128 |
@Autowired
|
128 |
@Autowired
|
| 129 |
private PrebookingOrderRepository prebookingOrderRepository;
|
129 |
private PrebookingOrderRepository prebookingOrderRepository;
|
| 130 |
|
130 |
|
| 131 |
@Autowired
|
131 |
@Autowired
|
| 132 |
private SaholicReservationInventorySnapshotRepository saholicReservationInventorySnapshotRepository;
|
132 |
private SaholicReservationInventorySnapshotRepository saholicReservationInventorySnapshotRepository;
|
| Line 164... |
Line 164... |
| 164 |
@Autowired
|
164 |
@Autowired
|
| 165 |
private InventoryService inventoryService;
|
165 |
private InventoryService inventoryService;
|
| 166 |
|
166 |
|
| 167 |
@Autowired
|
167 |
@Autowired
|
| 168 |
private TransactionService transactionService;
|
168 |
private TransactionService transactionService;
|
| 169 |
|
169 |
|
| 170 |
@Autowired
|
170 |
@Autowired
|
| 171 |
private PurchaseService purchaseService;
|
171 |
private PurchaseService purchaseService;
|
| 172 |
|
172 |
|
| 173 |
|
- |
|
| 174 |
// Service for Tertiary/Partner Orders
|
173 |
// Service for Tertiary/Partner Orders
|
| 175 |
@Autowired
|
174 |
@Autowired
|
| 176 |
private OrderService orderService;
|
175 |
private OrderService orderService;
|
| 177 |
|
176 |
|
| 178 |
@Autowired
|
177 |
@Autowired
|
| Line 290... |
Line 289... |
| 290 |
}
|
289 |
}
|
| 291 |
}
|
290 |
}
|
| 292 |
|
291 |
|
| 293 |
}
|
292 |
}
|
| 294 |
|
293 |
|
| 295 |
public void fetchImeiActivation( ) throws Exception{
|
294 |
public void fetchImeiActivation() throws Exception {
|
| 296 |
samsungActivationService.getActivationsBetweenNew(LocalDate.now().minusDays(30), LocalDate.now());
|
295 |
samsungActivationService.getActivationsBetweenNew(LocalDate.now().minusDays(30), LocalDate.now());
|
| 297 |
}
|
296 |
}
|
| - |
|
297 |
|
| 298 |
public void migarateLineItemsToNewTable() throws Exception {
|
298 |
public void migarateLineItemsToNewTable() throws Exception {
|
| 299 |
LOGGER.info("Before Migrated LineItems Successfully");
|
299 |
LOGGER.info("Before Migrated LineItems Successfully");
|
| 300 |
int lineItemImeiId = 0;
|
300 |
int lineItemImeiId = 0;
|
| 301 |
LocalDateTime startDate = null;
|
301 |
LocalDateTime startDate = null;
|
| 302 |
try {
|
302 |
try {
|
| Line 717... |
Line 717... |
| 717 |
LOGGER.info("Sent mail to {}", email);
|
717 |
LOGGER.info("Sent mail to {}", email);
|
| 718 |
}
|
718 |
}
|
| 719 |
driver.quit();
|
719 |
driver.quit();
|
| 720 |
}
|
720 |
}
|
| 721 |
|
721 |
|
| 722 |
//Rollout prebooking orders amount in case the order is grned.
|
722 |
// Rollout prebooking orders amount in case the order is grned.
|
| 723 |
public void pbfix() throws ProfitMandiBusinessException {
|
723 |
public void pbfix() throws ProfitMandiBusinessException {
|
| 724 |
List<Item> items = itemRepository.selectAllByCatalogItemId(1022304);
|
724 |
List<Item> items = itemRepository.selectAllByCatalogItemId(1022304);
|
| 725 |
for(Item item : items) {
|
725 |
for (Item item : items) {
|
| 726 |
List<InventoryItem> inventoryItems = inventoryItemRepository.selectByItemId(item.getId(), 0, 500);
|
726 |
List<InventoryItem> inventoryItems = inventoryItemRepository.selectByItemId(item.getId(), 0, 500);
|
| 727 |
for(InventoryItem inventoryItem : inventoryItems) {
|
727 |
for (InventoryItem inventoryItem : inventoryItems) {
|
| 728 |
List<PrebookingOrder> prebookingOrders = prebookingOrderRepository
|
728 |
List<PrebookingOrder> prebookingOrders = prebookingOrderRepository
|
| 729 |
.selectByFofoIdAndCatalogIds(inventoryItem.getFofoId(), item.getCatalogItemId())
|
729 |
.selectByFofoIdAndCatalogIds(inventoryItem.getFofoId(), item.getCatalogItemId()).stream()
|
| 730 |
.stream().collect(Collectors.toList());
|
730 |
.collect(Collectors.toList());
|
| 731 |
if(prebookingOrders.size() > 0) {
|
731 |
if (prebookingOrders.size() > 0) {
|
| 732 |
purchaseService.sendPrebookingNotifyMessage(prebookingOrders.get(0));
|
732 |
purchaseService.sendPrebookingNotifyMessage(prebookingOrders.get(0));
|
| 733 |
}
|
733 |
}
|
| 734 |
//inventoryItem.getFofoId()
|
734 |
// inventoryItem.getFofoId()
|
| 735 |
}
|
735 |
}
|
| 736 |
}
|
736 |
}
|
| 737 |
//throw new ProfitMandiBusinessException("", "", "");
|
737 |
// throw new ProfitMandiBusinessException("", "", "");
|
| 738 |
//prebookingOrderRepository.select
|
738 |
// prebookingOrderRepository.select
|
| 739 |
// TODO Auto-generated method stub
|
739 |
// TODO Auto-generated method stub
|
| 740 |
|
740 |
|
| 741 |
}
|
741 |
}
|
| 742 |
|
742 |
|
| 743 |
public void fixGrn() throws Exception {
|
743 |
public void fixGrn() throws Exception {
|
| 744 |
List<Purchase> incompletePurchases = purchaseRepository.selectIncompletePurchase();
|
744 |
List<Purchase> incompletePurchases = purchaseRepository.selectIncompletePurchase();
|
| 745 |
for(Purchase incompletePurchase : incompletePurchases) {
|
745 |
for (Purchase incompletePurchase : incompletePurchases) {
|
| - |
|
746 |
List<Order> orders = orderRepository.selectByAirwayBillOrInvoiceNumber(
|
| 746 |
List<Order> orders = orderRepository.selectByAirwayBillOrInvoiceNumber(incompletePurchase.getPurchaseReference(), incompletePurchase.getFofoId());
|
747 |
incompletePurchase.getPurchaseReference(), incompletePurchase.getFofoId());
|
| 747 |
List<InventoryItem> inventoryItems = inventoryItemRepository.selectByPurchaseId(incompletePurchase.getId());
|
748 |
List<InventoryItem> inventoryItems = inventoryItemRepository.selectByPurchaseId(incompletePurchase.getId());
|
| 748 |
Map<Integer, Integer> grnedItems = inventoryItems.stream().collect(
|
749 |
Map<Integer, Integer> grnedItems = inventoryItems.stream().collect(
|
| 749 |
Collectors.groupingBy(x->x.getItemId(),
|
- |
|
| 750 |
Collectors.summingInt(x->x.getInitialQuantity())));
|
750 |
Collectors.groupingBy(x -> x.getItemId(), Collectors.summingInt(x -> x.getInitialQuantity())));
|
| 751 |
Map<Integer, Integer> billedItems = orders.stream().collect(
|
751 |
Map<Integer, Integer> billedItems = orders.stream().collect(Collectors.groupingBy(
|
| 752 |
Collectors.groupingBy(x->x.getLineItem().getItemId(),
|
- |
|
| 753 |
Collectors.summingInt(x->x.getLineItem().getQuantity())));
|
752 |
x -> x.getLineItem().getItemId(), Collectors.summingInt(x -> x.getLineItem().getQuantity())));
|
| 754 |
for(Integer billedItemId : billedItems.keySet()) {
|
753 |
for (Integer billedItemId : billedItems.keySet()) {
|
| 755 |
if(grnedItems.containsKey(billedItemId)) {
|
754 |
if (grnedItems.containsKey(billedItemId)) {
|
| 756 |
if(grnedItems.get(billedItemId) > billedItems.get(billedItemId)) {
|
755 |
if (grnedItems.get(billedItemId) > billedItems.get(billedItemId)) {
|
| 757 |
LOGGER.info("Billed Qty {} ---- Grned {}, ItemId {}, Invoice Number {}({}), Grn Date {}",
|
756 |
LOGGER.info("Billed Qty {} ---- Grned {}, ItemId {}, Invoice Number {}({}), Grn Date {}",
|
| 758 |
billedItems.get(billedItemId), grnedItems.get(billedItemId), billedItemId, incompletePurchase.getPurchaseReference(), incompletePurchase.getId(), incompletePurchase.getCreateTimestamp());
|
757 |
billedItems.get(billedItemId), grnedItems.get(billedItemId), billedItemId,
|
| - |
|
758 |
incompletePurchase.getPurchaseReference(), incompletePurchase.getId(),
|
| - |
|
759 |
incompletePurchase.getCreateTimestamp());
|
| 759 |
Item item = itemRepository.selectById(billedItemId);
|
760 |
Item item = itemRepository.selectById(billedItemId);
|
| 760 |
if(item.getType().equals(ItemType.SERIALIZED)) {
|
761 |
if (item.getType().equals(ItemType.SERIALIZED)) {
|
| 761 |
|
762 |
|
| 762 |
} else {
|
763 |
} else {
|
| 763 |
for(InventoryItem inventoryItem : inventoryItems) {
|
764 |
for (InventoryItem inventoryItem : inventoryItems) {
|
| 764 |
if(inventoryItem.getItemId()==billedItemId && inventoryItem.getGoodQuantity()==0) {
|
765 |
if (inventoryItem.getItemId() == billedItemId && inventoryItem.getGoodQuantity() == 0) {
|
| 765 |
List<ScanRecord> scanRecords = scanRecordRepository.selectByInventoryItemId(inventoryItem.getId());
|
766 |
List<ScanRecord> scanRecords = scanRecordRepository
|
| - |
|
767 |
.selectByInventoryItemId(inventoryItem.getId());
|
| 766 |
if(scanRecords.size() == 1 && scanRecords.get(0).getQuantity()==0) {
|
768 |
if (scanRecords.size() == 1 && scanRecords.get(0).getQuantity() == 0) {
|
| 767 |
LOGGER.info("Safe to remove InventoryItem Id {}", inventoryItem.getId());
|
769 |
LOGGER.info("Safe to remove InventoryItem Id {}", inventoryItem.getId());
|
| 768 |
scanRecordRepository.delete(scanRecords.get(0));
|
770 |
scanRecordRepository.delete(scanRecords.get(0));
|
| 769 |
inventoryItemRepository.delete(inventoryItem);
|
771 |
inventoryItemRepository.delete(inventoryItem);
|
| - |
|
772 |
incompletePurchase.setUnfullfilledNonSerializedQuantity(
|
| 770 |
incompletePurchase.setUnfullfilledNonSerializedQuantity(incompletePurchase.getUnfullfilledNonSerializedQuantity()+inventoryItem.getInitialQuantity());
|
773 |
incompletePurchase.getUnfullfilledNonSerializedQuantity()
|
| - |
|
774 |
+ inventoryItem.getInitialQuantity());
|
| 771 |
}
|
775 |
}
|
| 772 |
}
|
776 |
}
|
| 773 |
}
|
777 |
}
|
| 774 |
}
|
778 |
}
|
| 775 |
}
|
779 |
}
|
| 776 |
}
|
780 |
}
|
| 777 |
}
|
781 |
}
|
| 778 |
|
782 |
|
| 779 |
}
|
783 |
}
|
| 780 |
|
784 |
|
| 781 |
}
|
785 |
}
|
| 782 |
|
786 |
|
| 783 |
public void fixDupGrns() throws Exception {
|
787 |
public void fixDupGrns() throws Exception {
|
| 784 |
List<Integer> duplicatePurchaseIds = Arrays.asList(11655,13615, 13616, 13617, 13625, 13626, 8227);
|
788 |
List<Integer> duplicatePurchaseIds = Arrays.asList(11655, 13615, 13616, 13617, 13625, 13626, 8227);
|
| 785 |
for(int duplicatePurchaseId : duplicatePurchaseIds) {
|
789 |
for (int duplicatePurchaseId : duplicatePurchaseIds) {
|
| 786 |
Purchase purchase = purchaseRepository.selectById(duplicatePurchaseId);
|
790 |
Purchase purchase = purchaseRepository.selectById(duplicatePurchaseId);
|
| 787 |
List<InventoryItem> inventoryItems = inventoryItemRepository.selectByPurchaseId(duplicatePurchaseId);
|
791 |
List<InventoryItem> inventoryItems = inventoryItemRepository.selectByPurchaseId(duplicatePurchaseId);
|
| 788 |
if(inventoryItems.size()==0) {
|
792 |
if (inventoryItems.size() == 0) {
|
| 789 |
LOGGER.info("Could not find InventoryItems for {}", duplicatePurchaseId);
|
793 |
LOGGER.info("Could not find InventoryItems for {}", duplicatePurchaseId);
|
| 790 |
continue;
|
794 |
continue;
|
| 791 |
}
|
795 |
}
|
| 792 |
schemeService.rollbackSchemes(inventoryItems.stream().map(x->x.getId()).collect(Collectors.toList()), duplicatePurchaseId, "Rolled back duplicate grn for Purchase Invoice " + purchase.getPurchaseReference());
|
796 |
schemeService.rollbackSchemes(inventoryItems.stream().map(x -> x.getId()).collect(Collectors.toList()),
|
| - |
|
797 |
duplicatePurchaseId,
|
| - |
|
798 |
"Rolled back duplicate grn for Purchase Invoice " + purchase.getPurchaseReference());
|
| 793 |
for(InventoryItem inventoryItem : inventoryItems) {
|
799 |
for (InventoryItem inventoryItem : inventoryItems) {
|
| 794 |
inventoryItemRepository.delete(inventoryItem);
|
800 |
inventoryItemRepository.delete(inventoryItem);
|
| 795 |
List<ScanRecord> scanRecords = scanRecordRepository.selectByInventoryItemId(inventoryItem.getId());
|
801 |
List<ScanRecord> scanRecords = scanRecordRepository.selectByInventoryItemId(inventoryItem.getId());
|
| 796 |
for(ScanRecord scanRecord : scanRecords) {
|
802 |
for (ScanRecord scanRecord : scanRecords) {
|
| 797 |
scanRecordRepository.delete(scanRecord);
|
803 |
scanRecordRepository.delete(scanRecord);
|
| 798 |
}
|
804 |
}
|
| - |
|
805 |
List<SchemeInOut> sios = schemeInOutRepository
|
| 799 |
List<SchemeInOut> sios = schemeInOutRepository.selectByInventoryItemIds(new HashSet<>(Arrays.asList(inventoryItem.getId())));
|
806 |
.selectByInventoryItemIds(new HashSet<>(Arrays.asList(inventoryItem.getId())));
|
| 800 |
for(SchemeInOut sio : sios) {
|
807 |
for (SchemeInOut sio : sios) {
|
| 801 |
LOGGER.info("SIO - {}", sio);
|
808 |
LOGGER.info("SIO - {}", sio);
|
| 802 |
schemeInOutRepository.delete(sio);
|
809 |
schemeInOutRepository.delete(sio);
|
| 803 |
}
|
810 |
}
|
| 804 |
|
811 |
|
| 805 |
}
|
812 |
}
|
| 806 |
}
|
813 |
}
|
| 807 |
//throw new Exception();
|
814 |
// throw new Exception();
|
| 808 |
}
|
815 |
}
|
| 809 |
}
|
816 |
}
|
| 810 |
|
817 |
|
| 811 |
//7015845171
|
818 |
//7015845171
|
| 812 |
|
819 |
|