Subversion Repositories SmartDukaan

Rev

Rev 28350 | Rev 28356 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 28350 Rev 28352
Line 1101... Line 1101...
1101
		model.addAttribute("response", mvcResponseSender.createResponseString(true));
1101
		model.addAttribute("response", mvcResponseSender.createResponseString(true));
1102
 
1102
 
1103
		return "response";
1103
		return "response";
1104
	}
1104
	}
1105
 
1105
 
1106
	@RequestMapping(value = "/cancelPendingOrderItem", method = RequestMethod.POST)
1106
	@RequestMapping(value = "/getPendingOrderItemById", method = RequestMethod.GET)
1107
	public String cancelPendingOrderItem(HttpServletRequest request, @RequestParam int id, Model model)
1107
	public String getPendingOrderItemById(HttpServletRequest request, @RequestParam int id, Model model)
1108
			throws Exception {
1108
			throws Exception {
1109
 
1109
 
-
 
1110
		PendingOrderItem pendingOrderItem = pendingOrderItemRepository.selectById(id);
-
 
1111
		model.addAttribute("pendingOrderItem", pendingOrderItem);
-
 
1112
		return "cancel-pending-order";
-
 
1113
	}
-
 
1114
 
-
 
1115
	@RequestMapping(value = "/cancelPendingOrderItem", method = RequestMethod.POST)
-
 
1116
	public String cancelPendingOrderItem(HttpServletRequest request, @RequestParam int id, @RequestParam String reason,
-
 
1117
			Model model) throws Exception {
-
 
1118
 
1110
		LoginDetails loginDetails = cookiesProcessor.getCookiesObject(request);
1119
		LoginDetails loginDetails = cookiesProcessor.getCookiesObject(request);
1111
		PendingOrderItem pendingOrderItem = pendingOrderItemRepository.selectById(id);
1120
		PendingOrderItem pendingOrderItem = pendingOrderItemRepository.selectById(id);
1112
 
1121
 
1113
		pendingOrderItem.setStatus(OrderStatus.CANCELLED);
1122
		pendingOrderItem.setStatus(OrderStatus.CANCELLED);
1114
		pendingOrderItem.setStatusDescription(loginDetails.getEmailId());
1123
		pendingOrderItem.setStatusDescription(loginDetails.getEmailId());
-
 
1124
		pendingOrderItem.setRemark(reason);
-
 
1125
		pendingOrderItem.setCancelledTimestamp(LocalDateTime.now());
1115
		PendingOrder pendingOrder = pendingOrderRepository.selectById(pendingOrderItem.getOrderId());
1126
		PendingOrder pendingOrder = pendingOrderRepository.selectById(pendingOrderItem.getOrderId());
1116
 
1127
 
1117
		List<OrderStatus> status = pendingOrderItemRepository.selectByOrderId(pendingOrderItem.getOrderId()).stream()
1128
		List<OrderStatus> status = pendingOrderItemRepository.selectByOrderId(pendingOrderItem.getOrderId()).stream()
1118
				.map(x -> x.getStatus()).collect(Collectors.toList());
1129
				.map(x -> x.getStatus()).collect(Collectors.toList());
1119
 
1130
 
-
 
1131
		Customer customer = customerRepository.selectById(pendingOrder.getCustomerId());
-
 
1132
 
-
 
1133
		List<Integer> catalogIds = new ArrayList<>();
-
 
1134
 
-
 
1135
		Item item = itemRepository.selectById(pendingOrderItem.getItemId());
-
 
1136
		pendingOrderItem.setItemName(item.getItemDescription());
-
 
1137
		catalogIds.add(item.getCatalogItemId());
-
 
1138
 
-
 
1139
		Map<Integer, JSONObject> contentMap = commonSolrService.getContentByCatalogIds(catalogIds);
-
 
1140
		JSONObject jsonObj = contentMap.get(item.getCatalogItemId());
-
 
1141
		pendingOrderItem.setImgUrl(jsonObj.getString("imageUrl_s"));
-
 
1142
		pendingOrder.setPendingOrderItems(Arrays.asList(pendingOrderItem));
-
 
1143
		CustomerAddress customerAddress = customerAddressRepository.selectById(pendingOrder.getCustomerAddressId());
-
 
1144
 
-
 
1145
		DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("dd/MM/yyyy h:mm a");
-
 
1146
 
-
 
1147
		Map<String, Object> emailModel = new HashMap<>();
-
 
1148
		emailModel.put("customer", customerAddress);
-
 
1149
		emailModel.put("pendingOrder", pendingOrder);
-
 
1150
		emailModel.put("date", dateTimeFormatter);
-
 
1151
 
-
 
1152
		String[] customerEmail = null;
-
 
1153
		if (customer.getEmailId() != null) {
-
 
1154
			customerEmail = new String[] { customer.getEmailId(), "tejbeer.kaur@smartdukaan.com" };
-
 
1155
 
-
 
1156
			emailService.sendMailWithAttachments("Order Cancellation", "order-pending-cancel.vm", emailModel,
-
 
1157
					customerEmail, null, null);
-
 
1158
 
-
 
1159
		}
-
 
1160
 
1120
		if (!status.contains(OrderStatus.PENDING) && !status.contains(OrderStatus.PROCESSING)
1161
		if (!status.contains(OrderStatus.PENDING) && !status.contains(OrderStatus.PROCESSING)
1121
				&& !status.contains(OrderStatus.BILLED) && !status.contains(OrderStatus.UNSETTLED)
1162
				&& !status.contains(OrderStatus.BILLED) && !status.contains(OrderStatus.UNSETTLED)
1122
				&& !status.contains(OrderStatus.CLAIMED)) {
1163
				&& !status.contains(OrderStatus.CLAIMED)) {
1123
			pendingOrder.setStatus(OrderStatus.CLOSED);
1164
			pendingOrder.setStatus(OrderStatus.CLOSED);
1124
		}
1165
		}
1125
		pendingOrderItemRepository.persist(pendingOrderItem);
1166
		pendingOrderItemRepository.persist(pendingOrderItem);
-
 
1167
 
1126
		model.addAttribute("response", mvcResponseSender.createResponseString(true));
1168
		model.addAttribute("response", mvcResponseSender.createResponseString(true));
1127
 
1169
 
1128
		return "response";
1170
		return "response";
1129
	}
1171
	}
1130
 
1172