| Line 40... |
Line 40... |
| 40 |
import com.spice.profitmandi.dao.repository.user.UserRepository;
|
40 |
import com.spice.profitmandi.dao.repository.user.UserRepository;
|
| 41 |
import com.spice.profitmandi.dao.repository.warehouse.WarehousePurchaseOrderRepository;
|
41 |
import com.spice.profitmandi.dao.repository.warehouse.WarehousePurchaseOrderRepository;
|
| 42 |
import com.spice.profitmandi.dao.repository.warehouse.WarehouseScanRepository;
|
42 |
import com.spice.profitmandi.dao.repository.warehouse.WarehouseScanRepository;
|
| 43 |
import com.spice.profitmandi.service.NotificationService;
|
43 |
import com.spice.profitmandi.service.NotificationService;
|
| 44 |
import com.spice.profitmandi.service.catalog.BrandsService;
|
44 |
import com.spice.profitmandi.service.catalog.BrandsService;
|
| - |
|
45 |
import com.spice.profitmandi.service.catalog.ComboService;
|
| 45 |
import com.spice.profitmandi.service.inventory.Combo;
|
46 |
import com.spice.profitmandi.service.inventory.Combo;
|
| 46 |
import com.spice.profitmandi.service.inventory.ComboOptionModel;
|
47 |
import com.spice.profitmandi.service.inventory.ComboOptionModel;
|
| 47 |
import com.spice.profitmandi.service.inventory.InventoryService;
|
48 |
import com.spice.profitmandi.service.inventory.InventoryService;
|
| 48 |
import com.spice.profitmandi.service.inventory.MappedComboModel;
|
49 |
import com.spice.profitmandi.service.inventory.MappedComboModel;
|
| 49 |
import com.spice.profitmandi.service.order.OrderService;
|
50 |
import com.spice.profitmandi.service.order.OrderService;
|
| Line 878... |
Line 879... |
| 878 |
}
|
879 |
}
|
| 879 |
|
880 |
|
| 880 |
@Autowired
|
881 |
@Autowired
|
| 881 |
SDCreditService sdCreditService;
|
882 |
SDCreditService sdCreditService;
|
| 882 |
|
883 |
|
| - |
|
884 |
@Autowired
|
| - |
|
885 |
ComboService comboService;
|
| 883 |
|
886 |
|
| 884 |
@RequestMapping(value = "/cancelOrder", method = RequestMethod.POST)
|
887 |
@RequestMapping(value = "/cancelOrder", method = RequestMethod.POST)
|
| 885 |
public String cancelOrder(HttpServletRequest request, @RequestBody OrderCancellationModel orderCancellationModel, Model model) throws Exception {
|
888 |
public String cancelOrder(HttpServletRequest request, @RequestBody OrderCancellationModel orderCancellationModel,
|
| - |
|
889 |
@RequestParam(required = false, defaultValue = "false") boolean confirmed,
|
| - |
|
890 |
Model model) throws Exception {
|
| 886 |
LoginDetails loginDetails = cookiesProcessor.getCookiesObject(request);
|
891 |
LoginDetails loginDetails = cookiesProcessor.getCookiesObject(request);
|
| 887 |
LOGGER.info("orderId" + orderCancellationModel.getOrderIds());
|
892 |
LOGGER.info("orderId" + orderCancellationModel.getOrderIds());
|
| 888 |
|
893 |
|
| 889 |
try {
|
894 |
try {
|
| 890 |
// List<Order> orders =
|
- |
|
| 891 |
// orderRepository.selectByOrderIds(orderCancellationModel.getOrderIds());
|
- |
|
| 892 |
|
- |
|
| 893 |
List<Order> orders = orderRepository.selectByOrderIdsOrdersStatus(orderCancellationModel.getOrderIds(), OrderStatus.SUBMITTED_FOR_PROCESSING);
|
895 |
List<Order> orders = orderRepository.selectByOrderIdsOrdersStatus(orderCancellationModel.getOrderIds(), OrderStatus.SUBMITTED_FOR_PROCESSING);
|
| 894 |
if (!orders.isEmpty()) {
|
896 |
if (!orders.isEmpty()) {
|
| - |
|
897 |
ComboCancellationResult comboCheck = comboService.checkOrderCancellationForCombo(orders);
|
| - |
|
898 |
|
| - |
|
899 |
if (comboCheck.isConfirmationRequired() && !confirmed) {
|
| - |
|
900 |
model.addAttribute("response1", mvcResponseSender.createResponseString(comboCheck));
|
| - |
|
901 |
return "response";
|
| - |
|
902 |
}
|
| - |
|
903 |
|
| - |
|
904 |
List<Integer> allOrderIds = comboCheck.getAllOrderIdsToCancel(orderCancellationModel.getOrderIds());
|
| - |
|
905 |
List<Order> allOrders = allOrderIds.size() > orderCancellationModel.getOrderIds().size()
|
| - |
|
906 |
? orderRepository.selectByOrderIdsOrdersStatus(allOrderIds, OrderStatus.SUBMITTED_FOR_PROCESSING)
|
| 895 |
for (Order order : orders) {
|
907 |
: orders;
|
| 896 |
|
908 |
|
| - |
|
909 |
for (Order order : allOrders) {
|
| 897 |
orderRepository.refundOrder(order.getId(), loginDetails.getEmailId(), orderCancellationModel.getReason(), OrderStatus.CANCELLED_DUE_TO_LOW_INVENTORY);
|
910 |
orderRepository.refundOrder(order.getId(), loginDetails.getEmailId(), orderCancellationModel.getReason(), OrderStatus.CANCELLED_DUE_TO_LOW_INVENTORY);
|
| 898 |
List<NotifyOrder> notifyOrders = notifyOrderRespository.selectByOrder(order.getId());
|
911 |
List<NotifyOrder> notifyOrders = notifyOrderRespository.selectByOrder(order.getId());
|
| 899 |
for (NotifyOrder notifyOrder : notifyOrders) {
|
912 |
for (NotifyOrder notifyOrder : notifyOrders) {
|
| 900 |
if (notifyOrder.getStatus().equals(NotifyStatus.pending)) {
|
913 |
if (notifyOrder.getStatus().equals(NotifyStatus.pending)) {
|
| 901 |
notifyOrder.setStatus(NotifyStatus.rejected);
|
914 |
notifyOrder.setStatus(NotifyStatus.rejected);
|
| 902 |
}
|
915 |
}
|
| 903 |
}
|
916 |
}
|
| 904 |
sendCancellationNotificationToPartner(order, orderCancellationModel.getReason());
|
917 |
sendCancellationNotificationToPartner(order, orderCancellationModel.getReason());
|
| 905 |
model.addAttribute("response1", mvcResponseSender.createResponseString(true));
|
- |
|
| 906 |
|
918 |
|
| 907 |
sdCreditService.settleBlockedLoan(order.getTransactionId(), order.getWalletAmount());
|
919 |
sdCreditService.settleBlockedLoan(order.getTransactionId(), order.getWalletAmount());
|
| 908 |
}
|
920 |
}
|
| - |
|
921 |
model.addAttribute("response1", mvcResponseSender.createResponseString(true));
|
| 909 |
}
|
922 |
}
|
| 910 |
} catch (Exception e) {
|
923 |
} catch (Exception e) {
|
| 911 |
model.addAttribute("response1", mvcResponseSender.createResponseString(false));
|
924 |
model.addAttribute("response1", mvcResponseSender.createResponseString(false));
|
| 912 |
|
- |
|
| 913 |
}
|
925 |
}
|
| 914 |
|
926 |
|
| 915 |
return "response";
|
927 |
return "response";
|
| 916 |
}
|
928 |
}
|
| 917 |
|
929 |
|