| Line 193... |
Line 193... |
| 193 |
|
193 |
|
| 194 |
Map<Integer, Integer> itemIdQuantity = new HashMap<>(); //this is for error
|
194 |
Map<Integer, Integer> itemIdQuantity = new HashMap<>(); //this is for error
|
| 195 |
Map<Integer, CustomFofoOrderItem> itemIdCustomFofoOrderItemMap = new HashMap<>();
|
195 |
Map<Integer, CustomFofoOrderItem> itemIdCustomFofoOrderItemMap = new HashMap<>();
|
| 196 |
Map<Integer, Float> lineItemPrice = new HashMap<>(); //this is for pricing error
|
196 |
Map<Integer, Float> lineItemPrice = new HashMap<>(); //this is for pricing error
|
| 197 |
|
197 |
|
| - |
|
198 |
|
| - |
|
199 |
|
| 198 |
float totalAmount = 0;
|
200 |
float totalAmount = 0;
|
| 199 |
for(CustomFofoOrderItem customFofoOrderItem : createOrderRequest.getFofoOrderItems()){
|
201 |
for(CustomFofoOrderItem customFofoOrderItem : createOrderRequest.getFofoOrderItems()){
|
| 200 |
//itemIds.add(customFofoOrderItem.getItemId());
|
202 |
//itemIds.add(customFofoOrderItem.getItemId());
|
| - |
|
203 |
Set<String> serialNumbers = this.serialNumberDetailsToSerialNumbers(customFofoOrderItem.getSerialNumberDetails());
|
| 201 |
if(!customFofoOrderItem.getSerialNumberDetails().isEmpty() && customFofoOrderItem.getQuantity() != customFofoOrderItem.getSerialNumberDetails().size()){
|
204 |
if(!serialNumbers.isEmpty() && customFofoOrderItem.getQuantity() != serialNumbers.size()){
|
| 202 |
itemIdQuantity.put(customFofoOrderItem.getItemId(), customFofoOrderItem.getQuantity());
|
205 |
itemIdQuantity.put(customFofoOrderItem.getItemId(), customFofoOrderItem.getQuantity());
|
| 203 |
}
|
206 |
}
|
| 204 |
if(!(customFofoOrderItem.getSellingPrice() > 0)){
|
207 |
if(!(customFofoOrderItem.getSellingPrice() > 0)){
|
| 205 |
lineItemPrice.put(customFofoOrderItem.getItemId(), customFofoOrderItem.getSellingPrice());
|
208 |
lineItemPrice.put(customFofoOrderItem.getItemId(), customFofoOrderItem.getSellingPrice());
|
| 206 |
}else{
|
209 |
}else{
|
| Line 446... |
Line 449... |
| 446 |
schemeService.processSchemeOut(fofoOrder.getId(), fofoId);
|
449 |
schemeService.processSchemeOut(fofoOrder.getId(), fofoId);
|
| 447 |
|
450 |
|
| 448 |
return fofoOrder.getId();
|
451 |
return fofoOrder.getId();
|
| 449 |
}
|
452 |
}
|
| 450 |
|
453 |
|
| - |
|
454 |
private Set<String> serialNumberDetailsToSerialNumbers(Set<SerialNumberDetail> serialNumberDetails){
|
| - |
|
455 |
Set<String> serialNumbers = new HashSet<>();
|
| - |
|
456 |
for(SerialNumberDetail serialNumberDetail : serialNumberDetails) {
|
| - |
|
457 |
if(serialNumberDetail.getSerialNumber() != null && !serialNumberDetail.getSerialNumber().isEmpty()) {
|
| - |
|
458 |
serialNumbers.add(serialNumberDetail.getSerialNumber());
|
| - |
|
459 |
}
|
| - |
|
460 |
}
|
| - |
|
461 |
return serialNumbers;
|
| - |
|
462 |
}
|
| - |
|
463 |
|
| 451 |
@Override
|
464 |
@Override
|
| 452 |
public PdfModel getInvoicePdfModel(int fofoId, int orderId) throws ProfitMandiBusinessException {
|
465 |
public PdfModel getInvoicePdfModel(int fofoId, int orderId) throws ProfitMandiBusinessException {
|
| 453 |
|
466 |
|
| 454 |
FofoOrder fofoOrder = fofoOrderRepository.selectByFofoIdAndOrderId(fofoId, orderId);
|
467 |
FofoOrder fofoOrder = fofoOrderRepository.selectByFofoIdAndOrderId(fofoId, orderId);
|
| 455 |
|
468 |
|
| Line 533... |
Line 546... |
| 533 |
float totalTaxRate = fofoOrderItem.getIgstRate() + fofoOrderItem.getSgstRate() + fofoOrderItem.getCgstRate();
|
546 |
float totalTaxRate = fofoOrderItem.getIgstRate() + fofoOrderItem.getSgstRate() + fofoOrderItem.getCgstRate();
|
| 534 |
float taxableSellingPrice = fofoOrderItem.getSellingPrice() / (1 + totalTaxRate / 100);
|
547 |
float taxableSellingPrice = fofoOrderItem.getSellingPrice() / (1 + totalTaxRate / 100);
|
| 535 |
float taxableDiscountPrice = fofoOrderItem.getDiscount() / (1 + totalTaxRate / 100);
|
548 |
float taxableDiscountPrice = fofoOrderItem.getDiscount() / (1 + totalTaxRate / 100);
|
| 536 |
|
549 |
|
| 537 |
customFofoOrderItem.setAmount(fofoOrderItem.getQuantity() * (taxableSellingPrice - taxableDiscountPrice));
|
550 |
customFofoOrderItem.setAmount(fofoOrderItem.getQuantity() * (taxableSellingPrice - taxableDiscountPrice));
|
| 538 |
customFofoOrderItem.setDescription(fofoOrderItem.getBrand() + " " + fofoOrderItem.getModelName() + " " + fofoOrderItem.getModelNumber() + "-" + fofoOrderItem.getColor() + "\n IMEIS - " + String.join(", ",this.toSerialNumbers(fofoOrderItem.getFofoLineItems())));
|
551 |
customFofoOrderItem.setDescription(fofoOrderItem.getBrand() + " " + fofoOrderItem.getModelName() + " " + fofoOrderItem.getModelNumber() + "-" + fofoOrderItem.getColor());
|
| - |
|
552 |
Set<String> serialNumbers = this.toSerialNumbers(fofoOrderItem.getFofoLineItems());
|
| - |
|
553 |
//LOGGER.info("serialNumbers {}", serialNumbers);
|
| - |
|
554 |
//LOGGER.info("serialNumbers is empty {}", serialNumbers.isEmpty());
|
| - |
|
555 |
if(!serialNumbers.isEmpty()) {
|
| - |
|
556 |
customFofoOrderItem.setDescription(customFofoOrderItem.getDescription() + "\n IMEIS - " + String.join(", ", serialNumbers));
|
| - |
|
557 |
}
|
| 539 |
customFofoOrderItem.setRate(taxableSellingPrice);
|
558 |
customFofoOrderItem.setRate(taxableSellingPrice);
|
| 540 |
customFofoOrderItem.setDiscount(taxableDiscountPrice);
|
559 |
customFofoOrderItem.setDiscount(taxableDiscountPrice);
|
| 541 |
customFofoOrderItem.setQuantity(fofoOrderItem.getQuantity());
|
560 |
customFofoOrderItem.setQuantity(fofoOrderItem.getQuantity());
|
| 542 |
customFofoOrderItem.setNetAmount((fofoOrderItem.getSellingPrice()-fofoOrderItem.getDiscount())*fofoOrderItem.getQuantity());
|
561 |
customFofoOrderItem.setNetAmount((fofoOrderItem.getSellingPrice()-fofoOrderItem.getDiscount())*fofoOrderItem.getQuantity());
|
| 543 |
float igstAmount = (customFofoOrderItem.getAmount() * fofoOrderItem.getIgstRate()) / 100;
|
562 |
float igstAmount = (customFofoOrderItem.getAmount() * fofoOrderItem.getIgstRate()) / 100;
|
| Line 730... |
Line 749... |
| 730 |
private String getValidName(String name){
|
749 |
private String getValidName(String name){
|
| 731 |
return name!=null?name:"";
|
750 |
return name!=null?name:"";
|
| 732 |
}
|
751 |
}
|
| 733 |
|
752 |
|
| 734 |
private Set<String> toSerialNumbers(Set<FofoLineItem> fofoLineItems){
|
753 |
private Set<String> toSerialNumbers(Set<FofoLineItem> fofoLineItems){
|
| 735 |
Function<FofoLineItem, String> fofoLineItemToSerialNumberFunction = new Function<FofoLineItem, String>() {
|
754 |
Set<String> serialNumbers = new HashSet<>();
|
| 736 |
@Override
|
- |
|
| 737 |
public String apply(FofoLineItem fofoLineItem) {
|
755 |
for(FofoLineItem fofoLineItem : fofoLineItems) {
|
| - |
|
756 |
if(fofoLineItem.getSerialNumber() != null && fofoLineItem.getSerialNumber().isEmpty()) {
|
| 738 |
return fofoLineItem.getSerialNumber();
|
757 |
serialNumbers.add(fofoLineItem.getSerialNumber());
|
| 739 |
}
|
758 |
}
|
| 740 |
};
|
759 |
}
|
| 741 |
return fofoLineItems.stream().map(fofoLineItemToSerialNumberFunction).collect(Collectors.toSet());
|
760 |
return serialNumbers;
|
| 742 |
}
|
761 |
}
|
| 743 |
|
762 |
|
| 744 |
|
763 |
|
| 745 |
private PolicyNumberGenerationSequence createPolicyNumberGenerationSequence(){
|
764 |
private PolicyNumberGenerationSequence createPolicyNumberGenerationSequence(){
|
| 746 |
PolicyNumberGenerationSequence policyNumberGenerationSequence = null;
|
765 |
PolicyNumberGenerationSequence policyNumberGenerationSequence = null;
|
| Line 1024... |
Line 1043... |
| 1024 |
if (i.getType().equals(ItemType.SERIALIZED)){
|
1043 |
if (i.getType().equals(ItemType.SERIALIZED)){
|
| 1025 |
if (customFofoOrderItem == null || customFofoOrderItem.getSerialNumberDetails().isEmpty()){
|
1044 |
if (customFofoOrderItem == null || customFofoOrderItem.getSerialNumberDetails().isEmpty()){
|
| 1026 |
invalidItemIdSerialNumbers.add(i.getId());
|
1045 |
invalidItemIdSerialNumbers.add(i.getId());
|
| 1027 |
}
|
1046 |
}
|
| 1028 |
}else{
|
1047 |
}else{
|
| - |
|
1048 |
Set<String> serialNumbers = this.serialNumberDetailsToSerialNumbers(customFofoOrderItem.getSerialNumberDetails());
|
| 1029 |
if (customFofoOrderItem == null || !customFofoOrderItem.getSerialNumberDetails().isEmpty()){
|
1049 |
if (customFofoOrderItem == null || !serialNumbers.isEmpty()){
|
| 1030 |
itemIdNonSerializedSerialNumbers.add(i.getId());
|
1050 |
itemIdNonSerializedSerialNumbers.add(i.getId());
|
| 1031 |
}
|
1051 |
}
|
| 1032 |
}
|
1052 |
}
|
| 1033 |
}
|
1053 |
}
|
| 1034 |
|
1054 |
|