| Line 7... |
Line 7... |
| 7 |
import com.spice.profitmandi.common.web.util.ResponseSender;
|
7 |
import com.spice.profitmandi.common.web.util.ResponseSender;
|
| 8 |
import com.spice.profitmandi.dao.entity.fofo.InventoryItem;
|
8 |
import com.spice.profitmandi.dao.entity.fofo.InventoryItem;
|
| 9 |
import com.spice.profitmandi.dao.entity.transaction.Order;
|
9 |
import com.spice.profitmandi.dao.entity.transaction.Order;
|
| 10 |
import com.spice.profitmandi.dao.model.ImeiInoviceModel;
|
10 |
import com.spice.profitmandi.dao.model.ImeiInoviceModel;
|
| 11 |
import com.spice.profitmandi.dao.repository.fofo.InventoryItemRepository;
|
11 |
import com.spice.profitmandi.dao.repository.fofo.InventoryItemRepository;
|
| - |
|
12 |
import com.spice.profitmandi.dao.repository.fofo.PurchaseRepository;
|
| 12 |
import com.spice.profitmandi.dao.repository.transaction.OrderRepository;
|
13 |
import com.spice.profitmandi.dao.repository.transaction.OrderRepository;
|
| 13 |
import com.spice.profitmandi.service.authentication.RoleManager;
|
14 |
import com.spice.profitmandi.service.authentication.RoleManager;
|
| 14 |
import com.spice.profitmandi.service.inventory.PurchaseService;
|
15 |
import com.spice.profitmandi.service.inventory.PurchaseService;
|
| 15 |
import com.spice.profitmandi.service.transaction.invoicing.InvoiceService;
|
16 |
import com.spice.profitmandi.service.transaction.invoicing.InvoiceService;
|
| 16 |
import com.spice.profitmandi.web.model.LoginDetails;
|
17 |
import com.spice.profitmandi.web.model.LoginDetails;
|
| Line 52... |
Line 53... |
| 52 |
|
53 |
|
| 53 |
@Autowired
|
54 |
@Autowired
|
| 54 |
private PurchaseService purchaseService;
|
55 |
private PurchaseService purchaseService;
|
| 55 |
|
56 |
|
| 56 |
@Autowired
|
57 |
@Autowired
|
| - |
|
58 |
private PurchaseRepository purchaseRepository;
|
| - |
|
59 |
|
| - |
|
60 |
@Autowired
|
| 57 |
private InventoryItemRepository inventoryItemRepository;
|
61 |
private InventoryItemRepository inventoryItemRepository;
|
| 58 |
|
62 |
|
| 59 |
@Autowired
|
63 |
@Autowired
|
| 60 |
private OrderRepository orderRepository;
|
64 |
private OrderRepository orderRepository;
|
| 61 |
|
65 |
|
| Line 96... |
Line 100... |
| 96 |
private Map<String, Boolean> getImeiValidationMap(int fofoId, ImeiInoviceModel imeiInoviceModel) throws ProfitMandiBusinessException {
|
100 |
private Map<String, Boolean> getImeiValidationMap(int fofoId, ImeiInoviceModel imeiInoviceModel) throws ProfitMandiBusinessException {
|
| 97 |
LOGGER.info("serialNumbers - {}", imeiInoviceModel.getSerialNumbers());
|
101 |
LOGGER.info("serialNumbers - {}", imeiInoviceModel.getSerialNumbers());
|
| 98 |
Set<String> serialNumbers = new HashSet<>(orderRepository.selectSerialNumbers(imeiInoviceModel.getInvoiceNumber(), fofoId, imeiInoviceModel.getSerialNumbers()));
|
102 |
Set<String> serialNumbers = new HashSet<>(orderRepository.selectSerialNumbers(imeiInoviceModel.getInvoiceNumber(), fofoId, imeiInoviceModel.getSerialNumbers()));
|
| 99 |
Map<String, Boolean> imeiValidationMap = new HashMap<>();
|
103 |
Map<String, Boolean> imeiValidationMap = new HashMap<>();
|
| 100 |
imeiInoviceModel.getSerialNumbers().stream().forEach(x -> {
|
104 |
imeiInoviceModel.getSerialNumbers().stream().forEach(x -> {
|
| 101 |
imeiValidationMap.put(x, null);
|
105 |
imeiValidationMap.put(x, true);
|
| 102 |
});
|
106 |
});
|
| 103 |
if (serialNumbers.size() > 0) {
|
107 |
if (serialNumbers.size() > 0) {
|
| 104 |
List<InventoryItem> inventoryItems = inventoryItemRepository.selectByFofoIdSerialNumbers(fofoId, new HashSet<>(serialNumbers), false);
|
108 |
List<InventoryItem> inventoryItems = inventoryItemRepository.selectByFofoIdSerialNumbers(fofoId, new HashSet<>(serialNumbers), false);
|
| 105 |
Set<String> grnedSerialNumberSet = inventoryItems.stream().map(x -> x.getSerialNumber()).collect(Collectors.toSet());
|
109 |
Set<String> grnedSerialNumberSet = inventoryItems.stream().filter(x -> x.getPurchase().getPurchaseReference().equals(imeiInoviceModel.getInvoiceNumber()))
|
| - |
|
110 |
.map(x -> x.getSerialNumber()).collect(Collectors.toSet());
|
| 106 |
imeiInoviceModel.getSerialNumbers().stream().forEach(x -> {
|
111 |
imeiInoviceModel.getSerialNumbers().stream().forEach(imei -> {
|
| 107 |
imeiValidationMap.put(x, serialNumbers.contains(x) && !grnedSerialNumberSet.contains(x));
|
112 |
if (grnedSerialNumberSet.contains(imei)) {
|
| - |
|
113 |
imeiValidationMap.put(imei, false);
|
| - |
|
114 |
}
|
| 108 |
});
|
115 |
});
|
| - |
|
116 |
|
| 109 |
}
|
117 |
}
|
| 110 |
return imeiValidationMap;
|
118 |
return imeiValidationMap;
|
| 111 |
}
|
119 |
}
|
| 112 |
|
120 |
|
| 113 |
@RequestMapping(value = "/purchase/grn-imeis", method = RequestMethod.POST)
|
121 |
@RequestMapping(value = "/purchase/grn-imeis", method = RequestMethod.POST)
|