| Line 70... |
Line 70... |
| 70 |
import com.spice.profitmandi.dao.entity.fofo.InventoryItem;
|
70 |
import com.spice.profitmandi.dao.entity.fofo.InventoryItem;
|
| 71 |
import com.spice.profitmandi.dao.entity.fofo.InvoiceNumberGenerationSequence;
|
71 |
import com.spice.profitmandi.dao.entity.fofo.InvoiceNumberGenerationSequence;
|
| 72 |
import com.spice.profitmandi.dao.entity.fofo.PaymentOption;
|
72 |
import com.spice.profitmandi.dao.entity.fofo.PaymentOption;
|
| 73 |
import com.spice.profitmandi.dao.entity.fofo.ScanRecord;
|
73 |
import com.spice.profitmandi.dao.entity.fofo.ScanRecord;
|
| 74 |
import com.spice.profitmandi.dao.entity.user.Address;
|
74 |
import com.spice.profitmandi.dao.entity.user.Address;
|
| - |
|
75 |
import com.spice.profitmandi.dao.entity.user.Counter;
|
| - |
|
76 |
import com.spice.profitmandi.dao.entity.user.PrivateDealUser;
|
| 75 |
import com.spice.profitmandi.dao.enumuration.fofo.ScanType;
|
77 |
import com.spice.profitmandi.dao.enumuration.fofo.ScanType;
|
| 76 |
import com.spice.profitmandi.dao.repository.catalog.ItemRepository;
|
78 |
import com.spice.profitmandi.dao.repository.catalog.ItemRepository;
|
| 77 |
import com.spice.profitmandi.dao.repository.dtr.InsurancePolicyRepository;
|
79 |
import com.spice.profitmandi.dao.repository.dtr.InsurancePolicyRepository;
|
| 78 |
import com.spice.profitmandi.dao.repository.dtr.InsuranceProviderRepository;
|
80 |
import com.spice.profitmandi.dao.repository.dtr.InsuranceProviderRepository;
|
| 79 |
import com.spice.profitmandi.dao.repository.dtr.PolicyNumberGenerationSequenceRepository;
|
81 |
import com.spice.profitmandi.dao.repository.dtr.PolicyNumberGenerationSequenceRepository;
|
| Line 91... |
Line 93... |
| 91 |
import com.spice.profitmandi.dao.repository.fofo.InvoiceNumberGenerationSequenceRepository;
|
93 |
import com.spice.profitmandi.dao.repository.fofo.InvoiceNumberGenerationSequenceRepository;
|
| 92 |
import com.spice.profitmandi.dao.repository.fofo.PaymentOptionRepository;
|
94 |
import com.spice.profitmandi.dao.repository.fofo.PaymentOptionRepository;
|
| 93 |
import com.spice.profitmandi.dao.repository.fofo.ScanRecordRepository;
|
95 |
import com.spice.profitmandi.dao.repository.fofo.ScanRecordRepository;
|
| 94 |
import com.spice.profitmandi.dao.repository.transaction.OrderRepository;
|
96 |
import com.spice.profitmandi.dao.repository.transaction.OrderRepository;
|
| 95 |
import com.spice.profitmandi.dao.repository.user.AddressRepository;
|
97 |
import com.spice.profitmandi.dao.repository.user.AddressRepository;
|
| - |
|
98 |
import com.spice.profitmandi.dao.repository.user.CounterRepository;
|
| - |
|
99 |
import com.spice.profitmandi.dao.repository.user.PrivateDealUserRepository;
|
| 96 |
import com.spice.profitmandi.service.pricing.PricingService;
|
100 |
import com.spice.profitmandi.service.pricing.PricingService;
|
| 97 |
import com.spice.profitmandi.web.model.LoginDetails;
|
101 |
import com.spice.profitmandi.web.model.LoginDetails;
|
| 98 |
import com.spice.profitmandi.web.request.CreateOrderRequest;
|
102 |
import com.spice.profitmandi.web.request.CreateOrderRequest;
|
| 99 |
import com.spice.profitmandi.web.request.CustomPaymentOption;
|
103 |
import com.spice.profitmandi.web.request.CustomPaymentOption;
|
| 100 |
import com.spice.profitmandi.web.response.ItemIdQuantityAvailability;
|
104 |
import com.spice.profitmandi.web.response.ItemIdQuantityAvailability;
|
| Line 177... |
Line 181... |
| 177 |
CookiesProcessor cookiesProcessor;
|
181 |
CookiesProcessor cookiesProcessor;
|
| 178 |
|
182 |
|
| 179 |
@Autowired
|
183 |
@Autowired
|
| 180 |
PricingService pricingService;
|
184 |
PricingService pricingService;
|
| 181 |
|
185 |
|
| - |
|
186 |
@Autowired
|
| - |
|
187 |
PrivateDealUserRepository privateDealUserRepository;
|
| - |
|
188 |
|
| - |
|
189 |
@Autowired
|
| - |
|
190 |
CounterRepository counterRepository;
|
| - |
|
191 |
|
| 182 |
|
192 |
|
| 183 |
@Autowired
|
193 |
@Autowired
|
| 184 |
ResponseSender<?> responseSender;
|
194 |
ResponseSender<?> responseSender;
|
| 185 |
|
195 |
|
| 186 |
@RequestMapping(value = "/order")
|
196 |
@RequestMapping(value = "/order")
|
| Line 979... |
Line 989... |
| 979 |
pdfModel.setCustomer(customCustomer);
|
989 |
pdfModel.setCustomer(customCustomer);
|
| 980 |
pdfModel.setInvoiceNumber(fofoOrder.getInvoiceNumber());
|
990 |
pdfModel.setInvoiceNumber(fofoOrder.getInvoiceNumber());
|
| 981 |
pdfModel.setTotalAmount(fofoOrder.getTotalAmount());
|
991 |
pdfModel.setTotalAmount(fofoOrder.getTotalAmount());
|
| 982 |
|
992 |
|
| 983 |
Retailer retailer = retailerRepository.selectById(fofoDetails.getFofoId());
|
993 |
Retailer retailer = retailerRepository.selectById(fofoDetails.getFofoId());
|
| - |
|
994 |
PrivateDealUser privateDealUser = privateDealUserRepository.selectById(retailer.getId());
|
| - |
|
995 |
|
| 984 |
User user = userRepository.selectById(userAccountRepository.selectUserIdByRetailerId(retailer.getId()));
|
996 |
User user = userRepository.selectById(userAccountRepository.selectUserIdByRetailerId(retailer.getId()));
|
| 985 |
CustomRetailer customRetailer = new CustomRetailer();
|
997 |
CustomRetailer customRetailer = new CustomRetailer();
|
| 986 |
customRetailer.setBusinessName(retailer.getName());
|
998 |
customRetailer.setBusinessName(retailer.getName());
|
| 987 |
customRetailer.setMobileNumber(user.getMobileNumber());
|
999 |
customRetailer.setMobileNumber(user.getMobileNumber());
|
| 988 |
customRetailer.setTinNumber(retailer.getNumber());
|
1000 |
customRetailer.setTinNumber(retailer.getNumber());
|
| - |
|
1001 |
if(privateDealUser.getCounterId() != null){
|
| - |
|
1002 |
Counter counter = counterRepository.selectById(privateDealUser.getCounterId());
|
| - |
|
1003 |
customRetailer.setGstNumber(counter.getGstin());
|
| - |
|
1004 |
}
|
| 989 |
Address retailerAddress = addressRepository.selectById(retailerRegisteredAddressRepository.selectAddressIdByRetailerId(retailer.getId()));
|
1005 |
Address retailerAddress = addressRepository.selectById(retailerRegisteredAddressRepository.selectAddressIdByRetailerId(retailer.getId()));
|
| 990 |
customRetailer.setAddress(this.createCustomAddress(retailerAddress));
|
1006 |
customRetailer.setAddress(this.createCustomAddress(retailerAddress));
|
| 991 |
pdfModel.setRetailer(customRetailer);
|
1007 |
pdfModel.setRetailer(customRetailer);
|
| 992 |
List<FofoLineItem> fofoLineItems = fofoLineItemRepository.selectByOrderId(fofoOrder.getId());
|
1008 |
List<FofoLineItem> fofoLineItems = fofoLineItemRepository.selectByOrderId(fofoOrder.getId());
|
| 993 |
|
1009 |
|
| Line 996... |
Line 1012... |
| 996 |
CustomFofoOrderItem customFofoOrderItem = new CustomFofoOrderItem();
|
1012 |
CustomFofoOrderItem customFofoOrderItem = new CustomFofoOrderItem();
|
| 997 |
float totalTaxRate = fofoLineItem.getIgstRate() + fofoLineItem.getSgstRate() + fofoLineItem.getCgstRate();
|
1013 |
float totalTaxRate = fofoLineItem.getIgstRate() + fofoLineItem.getSgstRate() + fofoLineItem.getCgstRate();
|
| 998 |
float taxableSellingPrice = fofoLineItem.getSellingPrice() / (1 + totalTaxRate / 100);
|
1014 |
float taxableSellingPrice = fofoLineItem.getSellingPrice() / (1 + totalTaxRate / 100);
|
| 999 |
|
1015 |
|
| 1000 |
customFofoOrderItem.setAmount(fofoLineItem.getQuantity() * taxableSellingPrice);
|
1016 |
customFofoOrderItem.setAmount(fofoLineItem.getQuantity() * taxableSellingPrice);
|
| 1001 |
customFofoOrderItem.setDescription(fofoLineItem.getBrand() + " " + fofoLineItem.getModelName() + " " + fofoLineItem.getModelNumber() + " " + fofoLineItem.getColor());
|
1017 |
customFofoOrderItem.setDescription(fofoLineItem.getBrand() + " " + fofoLineItem.getModelName() + " " + fofoLineItem.getModelNumber() + " " + fofoLineItem.getColor() + " (" + String.join(", ",this.toSerialNumbers(fofoLineItem.getFofoLineItemSerialNumbers())) + ")");
|
| 1002 |
customFofoOrderItem.setRate(taxableSellingPrice);
|
1018 |
customFofoOrderItem.setRate(taxableSellingPrice);
|
| 1003 |
customFofoOrderItem.setQuantity(fofoLineItem.getQuantity());
|
1019 |
customFofoOrderItem.setQuantity(fofoLineItem.getQuantity());
|
| 1004 |
float igstAmount = (customFofoOrderItem.getAmount() * fofoLineItem.getIgstRate()) / 100;
|
1020 |
float igstAmount = (customFofoOrderItem.getAmount() * fofoLineItem.getIgstRate()) / 100;
|
| 1005 |
float cgstAmount = (customFofoOrderItem.getAmount() * fofoLineItem.getCgstRate()) / 100;
|
1021 |
float cgstAmount = (customFofoOrderItem.getAmount() * fofoLineItem.getCgstRate()) / 100;
|
| 1006 |
float sgstAmount = (customFofoOrderItem.getAmount() * fofoLineItem.getSgstRate()) / 100;
|
1022 |
float sgstAmount = (customFofoOrderItem.getAmount() * fofoLineItem.getSgstRate()) / 100;
|
| Line 1009... |
Line 1025... |
| 1009 |
customFofoOrderItem.setCgstRate(fofoLineItem.getCgstRate());
|
1025 |
customFofoOrderItem.setCgstRate(fofoLineItem.getCgstRate());
|
| 1010 |
customFofoOrderItem.setCgstAmount(cgstAmount);
|
1026 |
customFofoOrderItem.setCgstAmount(cgstAmount);
|
| 1011 |
customFofoOrderItem.setSgstRate(fofoLineItem.getSgstRate());
|
1027 |
customFofoOrderItem.setSgstRate(fofoLineItem.getSgstRate());
|
| 1012 |
customFofoOrderItem.setSgstAmount(sgstAmount);
|
1028 |
customFofoOrderItem.setSgstAmount(sgstAmount);
|
| 1013 |
customFofoOrderItem.setHsnCode(fofoLineItem.getHsnCode());
|
1029 |
customFofoOrderItem.setHsnCode(fofoLineItem.getHsnCode());
|
| 1014 |
customFofoOrderItem.setSerialNumbers(String.join(", ",this.toSerialNumbers(fofoLineItem.getFofoLineItemSerialNumbers())));
|
- |
|
| 1015 |
customerFofoOrderItems.add(customFofoOrderItem);
|
1030 |
customerFofoOrderItems.add(customFofoOrderItem);
|
| 1016 |
}
|
1031 |
}
|
| 1017 |
pdfModel.setOrderItems(customerFofoOrderItems);
|
1032 |
pdfModel.setOrderItems(customerFofoOrderItems);
|
| 1018 |
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
|
1033 |
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
|
| 1019 |
PdfUtils.generateAndWrite(pdfModel, byteArrayOutputStream);
|
1034 |
PdfUtils.generateAndWrite(pdfModel, byteArrayOutputStream);
|