| Line 9... |
Line 9... |
| 9 |
import java.util.Collections;
|
9 |
import java.util.Collections;
|
| 10 |
import java.util.HashMap;
|
10 |
import java.util.HashMap;
|
| 11 |
import java.util.HashSet;
|
11 |
import java.util.HashSet;
|
| 12 |
import java.util.List;
|
12 |
import java.util.List;
|
| 13 |
import java.util.Map;
|
13 |
import java.util.Map;
|
| - |
|
14 |
import java.util.Optional;
|
| 14 |
import java.util.stream.Collectors;
|
15 |
import java.util.stream.Collectors;
|
| 15 |
|
16 |
|
| 16 |
import org.apache.commons.io.output.ByteArrayOutputStream;
|
17 |
import org.apache.commons.io.output.ByteArrayOutputStream;
|
| 17 |
import org.apache.commons.lang.StringUtils;
|
18 |
import org.apache.commons.lang.StringUtils;
|
| 18 |
import org.apache.logging.log4j.LogManager;
|
19 |
import org.apache.logging.log4j.LogManager;
|
| 19 |
import org.apache.logging.log4j.Logger;
|
20 |
import org.apache.logging.log4j.Logger;
|
| - |
|
21 |
import org.apache.solr.common.util.Hash;
|
| 20 |
import org.springframework.beans.factory.annotation.Autowired;
|
22 |
import org.springframework.beans.factory.annotation.Autowired;
|
| 21 |
import org.springframework.core.io.ByteArrayResource;
|
23 |
import org.springframework.core.io.ByteArrayResource;
|
| 22 |
import org.springframework.mail.javamail.JavaMailSender;
|
24 |
import org.springframework.mail.javamail.JavaMailSender;
|
| 23 |
import org.springframework.stereotype.Component;
|
25 |
import org.springframework.stereotype.Component;
|
| 24 |
import org.springframework.transaction.annotation.Transactional;
|
26 |
import org.springframework.transaction.annotation.Transactional;
|
| Line 31... |
Line 33... |
| 31 |
import com.spice.profitmandi.dao.entity.fofo.InventoryItem;
|
33 |
import com.spice.profitmandi.dao.entity.fofo.InventoryItem;
|
| 32 |
import com.spice.profitmandi.dao.entity.fofo.PartnerTargetDetails;
|
34 |
import com.spice.profitmandi.dao.entity.fofo.PartnerTargetDetails;
|
| 33 |
import com.spice.profitmandi.dao.entity.fofo.Purchase;
|
35 |
import com.spice.profitmandi.dao.entity.fofo.Purchase;
|
| 34 |
import com.spice.profitmandi.dao.entity.fofo.ScanRecord;
|
36 |
import com.spice.profitmandi.dao.entity.fofo.ScanRecord;
|
| 35 |
import com.spice.profitmandi.dao.entity.fofo.TargetSlab;
|
37 |
import com.spice.profitmandi.dao.entity.fofo.TargetSlab;
|
| - |
|
38 |
import com.spice.profitmandi.dao.entity.inventory.SaholicInventorySnapshot;
|
| - |
|
39 |
import com.spice.profitmandi.dao.entity.inventory.SaholicReservationInventorySnapshot;
|
| 36 |
import com.spice.profitmandi.dao.entity.transaction.LineItem;
|
40 |
import com.spice.profitmandi.dao.entity.transaction.LineItem;
|
| 37 |
import com.spice.profitmandi.dao.entity.transaction.LineItemImei;
|
41 |
import com.spice.profitmandi.dao.entity.transaction.LineItemImei;
|
| 38 |
import com.spice.profitmandi.dao.entity.transaction.Order;
|
42 |
import com.spice.profitmandi.dao.entity.transaction.Order;
|
| 39 |
import com.spice.profitmandi.dao.entity.transaction.SellerWarehouse;
|
43 |
import com.spice.profitmandi.dao.entity.transaction.SellerWarehouse;
|
| 40 |
import com.spice.profitmandi.dao.repository.GenericRepository;
|
44 |
import com.spice.profitmandi.dao.repository.GenericRepository;
|
| Line 49... |
Line 53... |
| 49 |
import com.spice.profitmandi.dao.repository.fofo.PurchaseRepository;
|
53 |
import com.spice.profitmandi.dao.repository.fofo.PurchaseRepository;
|
| 50 |
import com.spice.profitmandi.dao.repository.fofo.ScanRecordRepository;
|
54 |
import com.spice.profitmandi.dao.repository.fofo.ScanRecordRepository;
|
| 51 |
import com.spice.profitmandi.dao.repository.fofo.SchemeInOutRepository;
|
55 |
import com.spice.profitmandi.dao.repository.fofo.SchemeInOutRepository;
|
| 52 |
import com.spice.profitmandi.dao.repository.fofo.TargetSlabRepository;
|
56 |
import com.spice.profitmandi.dao.repository.fofo.TargetSlabRepository;
|
| 53 |
import com.spice.profitmandi.dao.repository.fofo.TargetSlabRepositoryImpl;
|
57 |
import com.spice.profitmandi.dao.repository.fofo.TargetSlabRepositoryImpl;
|
| - |
|
58 |
import com.spice.profitmandi.dao.repository.inventory.SaholicInventorySnapshotRepository;
|
| - |
|
59 |
import com.spice.profitmandi.dao.repository.inventory.SaholicReservationInventorySnapshotRepository;
|
| 54 |
import com.spice.profitmandi.dao.repository.transaction.LineItemImeisRepository;
|
60 |
import com.spice.profitmandi.dao.repository.transaction.LineItemImeisRepository;
|
| 55 |
import com.spice.profitmandi.dao.repository.transaction.LineItemRepository;
|
61 |
import com.spice.profitmandi.dao.repository.transaction.LineItemRepository;
|
| 56 |
import com.spice.profitmandi.dao.repository.transaction.OrderRepository;
|
62 |
import com.spice.profitmandi.dao.repository.transaction.OrderRepository;
|
| 57 |
import com.spice.profitmandi.dao.repository.transaction.ReturnOrderRepository;
|
63 |
import com.spice.profitmandi.dao.repository.transaction.ReturnOrderRepository;
|
| 58 |
import com.spice.profitmandi.dao.repository.transaction.SellerWarehouseRepository;
|
64 |
import com.spice.profitmandi.dao.repository.transaction.SellerWarehouseRepository;
|
| Line 65... |
Line 71... |
| 65 |
import com.spice.profitmandi.service.scheme.SchemeService;
|
71 |
import com.spice.profitmandi.service.scheme.SchemeService;
|
| 66 |
import com.spice.profitmandi.service.transaction.TransactionService;
|
72 |
import com.spice.profitmandi.service.transaction.TransactionService;
|
| 67 |
import com.spice.profitmandi.service.user.RetailerService;
|
73 |
import com.spice.profitmandi.service.user.RetailerService;
|
| 68 |
import com.spice.profitmandi.service.wallet.WalletService;
|
74 |
import com.spice.profitmandi.service.wallet.WalletService;
|
| 69 |
|
75 |
|
| - |
|
76 |
import in.shop2020.model.v1.order.OrderStatus;
|
| 70 |
import in.shop2020.model.v1.order.WalletReferenceType;
|
77 |
import in.shop2020.model.v1.order.WalletReferenceType;
|
| 71 |
|
78 |
|
| 72 |
@Component
|
79 |
@Component
|
| 73 |
@Transactional(rollbackFor = Throwable.class)
|
80 |
@Transactional(rollbackFor = Throwable.class)
|
| 74 |
public class RunOnceTasks {
|
81 |
public class RunOnceTasks {
|
| Line 77... |
Line 84... |
| 77 |
|
84 |
|
| 78 |
@Autowired
|
85 |
@Autowired
|
| 79 |
private LineItemRepository lineItemRepository;
|
86 |
private LineItemRepository lineItemRepository;
|
| 80 |
|
87 |
|
| 81 |
@Autowired
|
88 |
@Autowired
|
| - |
|
89 |
private SaholicInventorySnapshotRepository saholicInventorySnapshotRepository;
|
| - |
|
90 |
|
| - |
|
91 |
@Autowired
|
| - |
|
92 |
private SaholicReservationInventorySnapshotRepository saholicReservationInventorySnapshotRepository;
|
| - |
|
93 |
|
| - |
|
94 |
@Autowired
|
| 82 |
private TargetSlabRepository targetSlabRepository;
|
95 |
private TargetSlabRepository targetSlabRepository;
|
| 83 |
|
96 |
|
| 84 |
@Autowired
|
97 |
@Autowired
|
| 85 |
private PartnerTargetRepository partnerTargetRepository;
|
98 |
private PartnerTargetRepository partnerTargetRepository;
|
| 86 |
|
99 |
|
| Line 310... |
Line 323... |
| 310 |
}
|
323 |
}
|
| 311 |
}
|
324 |
}
|
| 312 |
}
|
325 |
}
|
| 313 |
}
|
326 |
}
|
| 314 |
}
|
327 |
}
|
| 315 |
//throw new Exception();
|
328 |
// throw new Exception();
|
| 316 |
}
|
329 |
}
|
| 317 |
|
330 |
|
| 318 |
public void migrateChallansToInvoices() throws Exception {
|
331 |
public void migrateChallansToInvoices() throws Exception {
|
| 319 |
Map<String, List<Order>> invoiceOrdersMap = orderRepository.selectAllChallans().stream()
|
332 |
Map<String, List<Order>> invoiceOrdersMap = orderRepository.selectAllChallans().stream()
|
| 320 |
.filter(x -> !x.getLineItem().getHsnCode().equals("NOGST"))
|
333 |
.filter(x -> !x.getLineItem().getHsnCode().equals("NOGST"))
|
| Line 407... |
Line 420... |
| 407 |
targetSlabRepository.persist(x);
|
420 |
targetSlabRepository.persist(x);
|
| 408 |
});
|
421 |
});
|
| 409 |
}
|
422 |
}
|
| 410 |
}
|
423 |
}
|
| 411 |
|
424 |
|
| - |
|
425 |
public void findMismatchesInIndent() {
|
| - |
|
426 |
List<SaholicInventorySnapshot> saholicInventorySnapshots = saholicInventorySnapshotRepository.selectAll();
|
| - |
|
427 |
Map<Integer, Integer> itemReservedMap = saholicInventorySnapshots.stream().filter(x -> x.getReserved() > 0)
|
| - |
|
428 |
.collect(Collectors.groupingBy(SaholicInventorySnapshot::getItemId,
|
| - |
|
429 |
Collectors.summingInt(SaholicInventorySnapshot::getReserved)));
|
| - |
|
430 |
|
| - |
|
431 |
Map<Integer, Integer> lineItemQtyMap = orderRepository.selectAllOrder(OrderStatus.SUBMITTED_FOR_PROCESSING)
|
| - |
|
432 |
.stream().collect(Collectors.groupingBy(y -> y.getLineItem().getItemId(),
|
| - |
|
433 |
Collectors.summingInt(y -> y.getLineItem().getQuantity())));
|
| - |
|
434 |
|
| - |
|
435 |
itemReservedMap.forEach((itemId, reserved)->{
|
| - |
|
436 |
if(lineItemQtyMap.containsKey(itemId)) {
|
| - |
|
437 |
int orderedQty = lineItemQtyMap.get(itemId);
|
| - |
|
438 |
System.out.printf("%d\t%d\t%d",itemId, orderedQty, reserved);
|
| - |
|
439 |
} else {
|
| - |
|
440 |
System.out.printf("%d\t%d\t%d",itemId, 0, reserved);
|
| - |
|
441 |
}
|
| - |
|
442 |
});
|
| - |
|
443 |
|
| - |
|
444 |
}
|
| - |
|
445 |
|
| 412 |
}
|
446 |
}
|
| 413 |
|
447 |
|