Rev 20991 | Blame | Compare with Previous | Last modification | View Log | RSS feed
package in.shop2020.serving.controllers;import java.text.SimpleDateFormat;import java.util.ArrayList;import java.util.Arrays;import java.util.Calendar;import java.util.HashMap;import java.util.List;import java.util.Map;import org.apache.shiro.SecurityUtils;import org.apache.struts2.convention.annotation.InterceptorRef;import org.apache.struts2.convention.annotation.InterceptorRefs;import org.apache.thrift.TException;import org.apache.thrift.transport.TTransportException;import org.json.JSONArray;import in.shop2020.model.v1.order.Order;import in.shop2020.model.v1.order.OrderStatus;import in.shop2020.model.v1.order.RefundType;import in.shop2020.model.v1.order.ReplacementShippingType;import in.shop2020.model.v1.order.ReturnAction;import in.shop2020.model.v1.order.ReturnOrderInfo;import in.shop2020.model.v1.order.ReturnPickupRequest;import in.shop2020.model.v1.order.ReturnPickupType;import in.shop2020.model.v1.order.ReturnTransaction;import in.shop2020.model.v1.order.ReturnTransactionStatus;import in.shop2020.model.v1.order.ReturnTxnPickupStatus;import in.shop2020.model.v1.order.ReturnTxnResolutionStatus;import in.shop2020.model.v1.order.TransactionService.Client;import in.shop2020.model.v1.order.TransactionServiceException;import in.shop2020.model.v1.user.Address;import in.shop2020.model.v1.user.AddressType;import in.shop2020.model.v1.user.User;import in.shop2020.model.v1.user.UserContextException;import in.shop2020.payments.Payment;import in.shop2020.payments.PaymentException;import in.shop2020.thrift.clients.PaymentClient;import in.shop2020.thrift.clients.TransactionClient;import in.shop2020.thrift.clients.UserClient;@InterceptorRefs({@InterceptorRef("myDefault"),@InterceptorRef("returnTransactionValidator")})public class ReturnTransactionsController extends BaseController {/****/private static final long serialVersionUID = 1L;private static final String VIEW = "return-transactions-view";private static final String CONFIRM = "confirm-return-transaction";private static final String VIEW_RETURN_TRANSACTION = "view-return-transaction";private static final String VIEW_RETURN_ORDER = "view-return-order";private static final String PICKUP_VIEW = "pickup-view";private String userId;private String returnType;private List<Order> orders;private String result;private String tableData;private List<Address> addresses;private String name;private String line1;private String line2;private String landmark;private String city;private String state;private String country;private String pincode;private String phone;private String addressType;private String addressId;private ReturnTransaction returnTransaction;private String newReturnTransactionStatus;private String returnTransactionId;private String returnOrderId;private ReturnOrderInfo returnOrderInfo;private List<ReturnOrderInfo> returnOrderInfoList;private String returnOrderIdsForPickUp;private String pickupRequestId;private ReturnPickupRequest returnPickupRequest;private String pickupRequestNo;private String logisticProviderId;private String pickupStatus;private String promised_pickup_timestamp;private String pickedUpAt;private List<ReturnTransaction> returnTransactions;private String receivedQty;private String receivedCondition;private String[] serialNumbers;private String scanFreebie;private String productUsable;private String splitOrderQuantity;private String refundAmount;private String refundType;private String refundReason;private String chequeDetails;private String refundDescription;private String couponDetails;private String shippingType;private Order order;public String index() {return INDEX;}public String view() throws NumberFormatException, TException {transactionServiceClient = new TransactionClient().getClient();setOrders(transactionServiceClient.getEligibleOrdersForReturn(Long.valueOf(userId), returnType, canOverideWarranty()));return VIEW;}private boolean canOverideWarranty(){return SecurityUtils.getSubject().hasRole("TeamLead")?true:false;}public String getReturnTransactionsForUser() throws TransactionServiceException, NumberFormatException, TException{transactionServiceClient = new TransactionClient().getClient();transactionServiceClient.getReturnTransactionsForCustomer(null, null, null, 0l, Long.valueOf(userId));setReturnTransactions(transactionServiceClient.getReturnTransactionsForCustomer(null, null, null, 0l, Long.valueOf(userId)));return "return-transaction-all";}public String viewPickUp() throws NumberFormatException, TException{transactionServiceClient = new TransactionClient().getClient();setReturnOrderInfoList(transactionServiceClient.getEligibleReturnOrdersForPickup(Long.valueOf(userId)));return PICKUP_VIEW;}public String validateReturn() throws NumberFormatException,UserContextException, TException {result = "true";List<ReturnOrderInfo> returnOrderList = getTableData();Map<Long, Long> returnOrdersMap = new HashMap<Long, Long>();for (ReturnOrderInfo r : returnOrderList){if (r.getReturnPickupType() == ReturnPickupType.NOT_REQUIRED && r.getReturnAction() == ReturnAction.REPLACEMENT){result = "false";}returnOrdersMap.put(r.getOrderId(), r.getReturnQuantity());}transactionServiceClient = new TransactionClient().getClient();boolean t_result = transactionServiceClient.validateReturnTransaction(Long.valueOf(userId), returnOrdersMap, returnType, canOverideWarranty());if(!t_result){result = "false";}if (!Boolean.valueOf(result)) {return "result";}userContextServiceClient = new UserClient().getClient();setAddresses(userContextServiceClient.getAllAddressesForUser(Long.valueOf(userId)));return CONFIRM;}public String createReturnPickup() throws TransactionServiceException, TException{String[] returnOrderIds = returnOrderIdsForPickUp.split(",");List<Long> returnOrders = new ArrayList<Long>();for (String s : returnOrderIds){returnOrders.add(Long.valueOf(s));}transactionServiceClient = new TransactionClient().getClient();long t_requestPickupId = transactionServiceClient.createReturnPickupRequest(returnOrders);if (t_requestPickupId==0){throw new TransactionServiceException();}setPickupRequestId(String.valueOf(t_requestPickupId));setReturnPickupRequest(transactionServiceClient.getReturnPickupRequest(t_requestPickupId));setReturnOrderInfoList(transactionServiceClient.getAllReturnOrdersForReturnPickupRequest(t_requestPickupId));return "pick-up-index";}public String viewReturnPickup() throws NumberFormatException, TException, TransactionServiceException{transactionServiceClient = new TransactionClient().getClient();ReturnPickupRequest t_retuenPickuprequest = transactionServiceClient.getReturnPickupRequest(Long.valueOf(pickupRequestId));setPickupRequestId(String.valueOf(t_retuenPickuprequest.getId()));setReturnPickupRequest(t_retuenPickuprequest);setReturnOrderInfoList(transactionServiceClient.getAllReturnOrdersForReturnPickupRequest(t_retuenPickuprequest.getId()));return "pick-up-index";}public String refundReceivedOrder() throws NumberFormatException, TransactionServiceException, TException, PaymentException{try{transactionServiceClient = new TransactionClient().getClient();returnOrderInfo = transactionServiceClient.getReturnOrderInfo(Long.valueOf(returnOrderId));returnOrderInfo.setRefundType(RefundType.findByValue(Integer.valueOf(refundType)));returnOrderInfo.setRefundedBy(getAgentName());if (returnOrderInfo.getRefundType() == RefundType.INIT){setResult("Illegal refund type");return "result";}in.shop2020.model.v1.order.Order t_order = transactionServiceClient.getOrder(returnOrderInfo.getOrderId());PaymentClient paymentServiceClient = new PaymentClient();List<Payment> orderPayments =null;if(!t_order.isCod()){orderPayments =paymentServiceClient.getClient().getPaymentForTxnId(t_order.getTransactionId());}List<in.shop2020.model.v1.order.Attribute> attrList = new ArrayList<in.shop2020.model.v1.order.Attribute>();in.shop2020.model.v1.order.Attribute attr1 = new in.shop2020.model.v1.order.Attribute();attr1.setName("Refund_Option");in.shop2020.model.v1.order.Attribute attr2 = new in.shop2020.model.v1.order.Attribute();attr2.setName("Refund_Amount");in.shop2020.model.v1.order.Attribute attr3 = new in.shop2020.model.v1.order.Attribute();attr3.setName("Refund_TimeStamp");SimpleDateFormat timestmapFormat = new SimpleDateFormat("dd-MMM-yyyy HH:mm:ss");attr2.setValue(refundAmount);attr3.setValue(timestmapFormat.format(Calendar.getInstance().getTime()));if (RECEIVE_PICKUP_STATE_CHECK.contains(returnOrderInfo.getReturnStatus()) && returnOrderInfo.getReturnTxnResolutionStatus() == ReturnTxnResolutionStatus.QUALITY_CHECK){if (returnOrderInfo.getReturnAction() == ReturnAction.REPLACEMENT){if (returnOrderInfo.getRefundType() != RefundType.REPLACEMENT){setResult("Refund type should be replacement");return "result";}returnOrderInfo.setRefundType(RefundType.REPLACEMENT);returnOrderInfo.setShippingType(ReplacementShippingType.findByValue(Integer.valueOf(shippingType)));if (returnOrderInfo.getShippingType() != ReplacementShippingType.IMMEDIATE){setResult("Shipping type should be immediate");return "result";}}else{if(!(SecurityUtils.getSubject().hasRole("TeamLead"))){setResult("Admin rights are required to process this operation");return "result";}if (returnOrderInfo.getRefundType() == null){setResult("Illegal refund type");return "result";}if (returnOrderInfo.getRefundType() == RefundType.CHEQUE){if (chequeDetails == null || chequeDetails.trim().isEmpty()){setResult("Cheque details should be filled out");return "result";}returnOrderInfo.setRefundType(RefundType.CHEQUE);attr1.setValue("Refund By Cheque: "+chequeDetails);attrList.add(attr1);attrList.add(attr2);attrList.add(attr3);}if (returnOrderInfo.getRefundType() == RefundType.COUPON){if (couponDetails == null || couponDetails.trim().isEmpty()){setResult("Coupon details should be filled out");return "result";}attr1.setValue("Refund By Coupon: "+couponDetails);attrList.add(attr1);attrList.add(attr2);attrList.add(attr3);returnOrderInfo.setRefundType(RefundType.COUPON);}if (returnOrderInfo.getRefundType() == RefundType.GATEWAY){returnOrderInfo.setRefundType(RefundType.GATEWAY);attr1.setValue("Refund By Payment Gatway: "+refundDescription);attrList.add(attr2);attrList.add(attr3);attrList.add(attr1);}if (Double.valueOf(refundAmount) > returnOrderInfo.getLineitem().getTotal_price()){setResult("Refund amount can;t be greater than order amount");return "result";}}if (refundReason == null || refundReason.trim().isEmpty()){setResult("Refund Reason should be filled out");return "result";}if (refundDescription == null || refundDescription.trim().isEmpty()){setResult("Refund Reason should be filled out");return "result";}returnOrderInfo.setRefundReason(refundReason);returnOrderInfo.setRefundDescription(refundDescription);returnOrderInfo.setRefundAmount(Double.valueOf(refundAmount));boolean t_result = transactionServiceClient.refundReturnOrder(returnOrderInfo, attrList);if(t_result){setResult("Refunded successfully");return "result";}setResult("Unable to refund or replace");return "result";}setResult("Illegal operation");return "result";}catch(Exception e){e.printStackTrace();setResult("Some exception occured");return "result";}}public String markReturnNotPickedUp() throws TransactionServiceException, TException{transactionServiceClient = new TransactionClient().getClient();returnOrderInfo = transactionServiceClient.getReturnOrderInfo(Long.valueOf(returnOrderId));if ((returnOrderInfo.getReturnStatus().equalsIgnoreCase("RET_REQUEST_AUTHORIZED") || returnOrderInfo.getReturnStatus().equalsIgnoreCase("DOA_REQUEST_AUTHORIZED"))&& returnOrderInfo.getReturnPickupType() == ReturnPickupType.NOT_REQUIRED){if(refundReason.trim()==null || refundReason.trim().isEmpty()){setResult("Refund reason can't be empty");return "result";}returnOrderInfo.setRefundReason(refundReason.trim());returnOrderInfo.setRefundAmount(Double.valueOf(refundAmount));if (returnOrderInfo.getRefundAmount() > returnOrderInfo.getLineitem().getTotal_price()){setResult("Refund amount can;t be greater than order amount");return "result";}returnOrderInfo.setRefundType(RefundType.findByValue(Integer.valueOf(refundType)));if (returnOrderInfo.getRefundType() != RefundType.WALLET){setResult("Refund type should be wallet");return "result";}returnOrderInfo.setRefundedBy(getAgentName());boolean t_result = transactionServiceClient.markReturnNotRequiredOrdersProcessed(returnOrderInfo);if (t_result){setResult("Refund processed successfully");return "result";}setResult("Unable to process refund");return "result";}setResult("Illegal operation");return "result";}public String updateReturnPickup() throws TransactionServiceException, TException{transactionServiceClient = new TransactionClient().getClient();ReturnPickupRequest t_retuenPickuprequest = transactionServiceClient.getReturnPickupRequest(Long.valueOf(pickupRequestId));ReturnPickupRequest rpr = new ReturnPickupRequest();rpr.setId(Long.valueOf(pickupRequestId));rpr.setPickupStatus(ReturnTxnPickupStatus.findByValue(Integer.valueOf(pickupStatus)));if (ReturnTxnPickupStatus.PICKUP_CONFIRMED == rpr.getPickupStatus()){rpr.setLogisticsProviderId(Long.valueOf(logisticProviderId));rpr.setPickupRequestNo(pickupRequestNo);}if (ReturnTxnPickupStatus.PICKUP_SCHEDULED == rpr.getPickupStatus()){try{rpr.setPromised_pickup_timestamp(Long.valueOf(promised_pickup_timestamp));}catch(Exception e){setResult("Illegal promised pickup timestamp");return "result";}}if (ReturnTxnPickupStatus.PICKUP_IN_TRANSIT == rpr.getPickupStatus()){try{rpr.setPickedUpAt(Long.valueOf(pickedUpAt));}catch(Exception e){setResult("Illegal Pickedup timestamp");return "result";}}String validation_result = validateReturnPickupUpdateRequest(rpr,t_retuenPickuprequest);if (validation_result.isEmpty()){transactionServiceClient.updateReturnPickupRequest(rpr);setResult("Status updated successfully");return "result";}setResult(validation_result);return "result";}public String receiveItem() throws TransactionServiceException, TException{transactionServiceClient = new TransactionClient().getClient();returnOrderInfo = transactionServiceClient.getReturnOrderInfo(Long.valueOf(returnOrderId));if (returnOrderInfo.getReturnQuantity() != Long.valueOf(receivedQty)){setResult("Received Qty is not equal to return quantity");return "result";}if (returnOrderInfo.getFreebieItemId() == 0 && Long.valueOf(scanFreebie)==1){setResult("No freebie was given.");return "result";}Map<String,String> info = new HashMap<String,String>();Map<Long, Map<String,String>> returnOrderMap = new HashMap<Long,Map<String,String>>();info.put("ReceiveCondition", receivedCondition);info.put("Quantity", receivedQty);info.put("ScanFreebie",Long.valueOf(scanFreebie)==1?"yes":"no");info.put("productUsable",Long.valueOf(productUsable)==1?"true":"false");String serialNumberValues = "";for(String s : serialNumbers){serialNumberValues = serialNumberValues+s.trim()+",";}info.put("SerialNumbers", serialNumberValues);returnOrderMap.put(returnOrderInfo.getId(), info);boolean receiveResult = transactionServiceClient.receiveReturnPickup(returnOrderMap, 0l);setResult(String.valueOf(receiveResult));return "result";}private String validateReturnPickupUpdateRequest(ReturnPickupRequest rpr, ReturnPickupRequest t_retuenPickuprequest) throws TransactionServiceException, TException{StringBuilder sb = new StringBuilder();if (ReturnTxnPickupStatus.PICKUP_REQUESTED == rpr.getPickupStatus()){if(!(t_retuenPickuprequest.getPickupStatus() == ReturnTxnPickupStatus.PENDING)){sb.append("Illegal operation -Pickup Status check failed");}}if (ReturnTxnPickupStatus.PICKUP_CONFIRMED == rpr.getPickupStatus()){if(!(t_retuenPickuprequest.getPickupStatus() == ReturnTxnPickupStatus.PICKUP_REQUESTED)){sb.append("Illegal operation -Pickup Status check failed");}if (providerNameMap.get(rpr.getLogisticsProviderId())==null){sb.append("Logistic provider is not valid");}if(rpr.getPickupRequestNo()==null || rpr.getPickupRequestNo().trim().isEmpty() ){sb.append("Request pickup number can't be empty");}}if (ReturnTxnPickupStatus.PICKUP_RECEIVED == rpr.getPickupStatus()){if(!(t_retuenPickuprequest.getPickupStatus() == ReturnTxnPickupStatus.PICKUP_IN_TRANSIT)){sb.append("Illegal operation -Pickup Status check failed");}List<ReturnOrderInfo> all_return_orders = transactionServiceClient.getAllReturnOrdersForReturnPickupRequest(t_retuenPickuprequest.getId());for (ReturnOrderInfo r : all_return_orders){if (!RECEIVE_PICKUP_STATE_CHECK.contains(r.getReturnStatus())){sb.append("Return Order "+r.getId()+" is not marked received.\n");}}}return sb.toString();}public String addNewAddress() throws NumberFormatException,UserContextException, TException {Address address = new Address();address.setLine1(line1);address.setLine2(line2);address.setLandmark(landmark);address.setCity(city);address.setState(state);address.setPin(pincode);address.setCountry(country);address.setEnabled(true);address.setType(AddressType.findByValue(Integer.valueOf(addressType)));address.setName(name);address.setPhone(phone);String sb = validateAddress(address);if (sb.length() == 0) {userContextServiceClient = new UserClient().getClient();userContextServiceClient.addAddressForUser(Long.valueOf(userId),address, false);}setResult(sb);return "result";}private String validateAddress(Address t_address) {StringBuilder sb = new StringBuilder();if (t_address.getLine1().trim().length() == 0) {sb.append("Line1 can't be empty.");}if (t_address.getLine2().trim().length() == 0) {sb.append("Line2 can't be empty.");}if (t_address.getCity().trim().length() == 0) {sb.append("City can't be empty.");}if (t_address.getState().trim().length() == 0) {sb.append("State can't be empty.");}if (t_address.getPin().trim().length() < 6) {sb.append("Not valid pincode");}if (t_address.getPhone().trim().length() < 10) {sb.append("Not valid phone number");}if (t_address.getName().trim().length() == 0) {sb.append("Not valid name");}return sb.toString();}public String createReturnTransaction() throws UserContextException,TException, TransactionServiceException {ReturnTransaction t_returnTransaction = new ReturnTransaction();t_returnTransaction.setAddress_id(Long.valueOf(addressId));userContextServiceClient = new UserClient().getClient();Address address = userContextServiceClient.getAddressById(t_returnTransaction.getAddress_id());User user = userContextServiceClient.getUserById(Long.valueOf(userId));t_returnTransaction.setCustomer_id(user.getUserId());t_returnTransaction.setCustomer_name(address.getName());t_returnTransaction.setCustomer_email(user.getEmail());t_returnTransaction.setPincode(address.getPin());t_returnTransaction.setCustomerPhone(address.getPhone());t_returnTransaction.setCustomerCity(address.getCity());t_returnTransaction.setCustomerState(address.getState());t_returnTransaction.setCustomerAddress(address.getLine1() + " "+ address.getLine2());List<ReturnOrderInfo> returnOrders = getTableData();t_returnTransaction.setReturnOrders(returnOrders);transactionServiceClient = new TransactionClient().getClient();returnTransaction = transactionServiceClient.createReturnTransaction(t_returnTransaction, returnType, canOverideWarranty());if (returnTransaction.getId() == 0) {setResult(String.valueOf(returnTransaction.getId()));return "result";}return VIEW_RETURN_TRANSACTION;}public String viewReturnTransaction() throws NumberFormatException, TransactionServiceException, TException {returnTransaction = getReturnTransaction(Long.valueOf(returnTransactionId));return VIEW_RETURN_TRANSACTION;}public String viewReturnOrder() throws NumberFormatException, TransactionServiceException, TException {returnTransaction = getReturnTransaction(Long.valueOf(returnTransactionId));return VIEW_RETURN_TRANSACTION;}private ReturnTransaction getReturnTransaction(long id) throws TransactionServiceException, TException{transactionServiceClient = new TransactionClient().getClient();ReturnTransaction t_returnTransaction = transactionServiceClient.getReturnTransaction(id);return t_returnTransaction;}public String changeStatusForReturnTransaction() throws NumberFormatException, TransactionServiceException, TException{ReturnTransaction t_returnTransaction = getReturnTransaction(Long.valueOf(returnTransactionId));//Check forward_state_map to validate new statusList<ReturnTransactionStatus> further_states = FORWARD_STATE_MAP.get(t_returnTransaction.getStatus());if (further_states.contains(ReturnTransactionStatus.findByValue(Integer.valueOf(newReturnTransactionStatus)))){transactionServiceClient = new TransactionClient().getClient();transactionServiceClient.changeReturnTransactionStatus(t_returnTransaction.getId(), ReturnTransactionStatus.findByValue(Integer.valueOf(newReturnTransactionStatus)), null);setResult("Status changed successfully");}else{setResult("Illegal operation");}return "result";}public String getReturnOrderInfoForId() throws NumberFormatException, TransactionServiceException, TException{transactionServiceClient = new TransactionClient().getClient();setReturnOrderInfo(transactionServiceClient.getReturnOrderInfo(Long.valueOf(returnOrderId)));setOrder(transactionServiceClient.getOrder(returnOrderInfo.getOrderId()));return VIEW_RETURN_ORDER;}public String splitReturnOrder() throws TransactionServiceException, NumberFormatException, TException{transactionServiceClient = new TransactionClient().getClient();ReturnOrderInfo new_return_order = transactionServiceClient.splitReturnOrderInfo(Long.valueOf(returnOrderId), Long.valueOf(splitOrderQuantity));if (new_return_order.getId()==0){throw new TransactionServiceException();}setResult("Splitted return order Id "+new_return_order.getId());return "result";}public void setUserId(String userId) {this.userId = userId;}public String getUserId() {return userId;}public void setOrders(List<Order> orders) {this.orders = orders;}public List<Order> getOrders() {return orders;}public void setResult(String result) {this.result = result;}public String getResult() {return result;}public void setTableData(String tableData) {this.tableData = tableData;}public List<ReturnOrderInfo> getTableData() {JSONArray jsonTableData = new JSONArray(tableData);ArrayList<ReturnOrderInfo> returnOrderInfoList = new ArrayList<ReturnOrderInfo>();for (int i = 0; i < jsonTableData.length(); i++) {ReturnOrderInfo r = new ReturnOrderInfo();r.setOrderId(Long.valueOf(jsonTableData.getJSONObject(i).getString("orderId")));r.setReturnQuantity(Long.valueOf(jsonTableData.getJSONObject(i).getString("returnQty")));if (r.getReturnQuantity() == 0) {continue;}r.setReturnAction(ReturnAction.findByValue(Integer.valueOf(jsonTableData.getJSONObject(i).getString("action"))));r.setReturnPickupType(ReturnPickupType.findByValue(Integer.valueOf(jsonTableData.getJSONObject(i).getString("returnPickupType"))));returnOrderInfoList.add(r);}return returnOrderInfoList;}public int checkForOriginalOrders(){try{if(order.getOriginalOrderId()!=0l && order.getOriginalOrderId() > 0l){transactionServiceClient = new TransactionClient().getClient();in.shop2020.model.v1.order.Order old_order = transactionServiceClient.getOrder(order.getOriginalOrderId());if(old_order.isCod()){return 1;}else{return 2;}}}catch(Exception e){log.error(e);}return 0;}public void setAddresses(List<Address> addresses) {this.addresses = addresses;}public List<Address> getAddresses() {return addresses;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getLine1() {return line1;}public void setLine1(String line1) {this.line1 = line1;}public String getLine2() {return line2;}public void setLine2(String line2) {this.line2 = line2;}public String getLandmark() {return landmark;}public void setLandmark(String landmark) {this.landmark = landmark;}public String getCity() {return city;}public void setCity(String city) {this.city = city;}public String getState() {return state;}public void setState(String state) {this.state = state;}public String getCountry() {return country;}public void setCountry(String country) {this.country = country;}public String getPincode() {return pincode;}public void setPincode(String pincode) {this.pincode = pincode;}public String getPhone() {return phone;}public void setPhone(String phone) {this.phone = phone;}public String getAddressType() {return addressType;}public void setAddressType(String addressType) {this.addressType = addressType;}public void setReturnType(String returnType) {this.returnType = returnType;}public String getReturnType() {return returnType;}public void setAddressId(String addressId) {this.addressId = addressId;}public String getAddressId() {return addressId;}public void setReturnTransaction(ReturnTransaction returnTransaction) {this.returnTransaction = returnTransaction;}public ReturnTransaction getReturnTransaction() {return returnTransaction;}public void setNewReturnTransactionStatus(String newReturnTransactionStatus) {this.newReturnTransactionStatus = newReturnTransactionStatus;}public String getNewReturnTransactionStatus() {return newReturnTransactionStatus;}public void setReturnTransactionId(String returnTransactionId) {this.returnTransactionId = returnTransactionId;}public String getReturnTransactionId() {return returnTransactionId;}public String getReturnOrderId() {return returnOrderId;}public void setReturnOrderId(String returnOrderId) {this.returnOrderId = returnOrderId;}public void setReturnOrderInfo(ReturnOrderInfo returnOrderInfo) {this.returnOrderInfo = returnOrderInfo;}public ReturnOrderInfo getReturnOrderInfo() {return returnOrderInfo;}public static void main(String[] args){ReturnTransactionsController r = new ReturnTransactionsController();System.out.println(r.getForwardStatusForStatus(ReturnTransactionStatus.REJECTED));System.out.println(r.getForwardStatusForStatus(ReturnTransactionStatus.INPROCESS));}public void setReturnOrderInfoList(List<ReturnOrderInfo> returnOrderInfoList) {this.returnOrderInfoList = returnOrderInfoList;}public List<ReturnOrderInfo> getReturnOrderInfoList() {return returnOrderInfoList;}public void setReturnOrderIdsForPickUp(String returnOrderIdsForPickUp) {this.returnOrderIdsForPickUp = returnOrderIdsForPickUp;}public String getReturnOrderIdsForPickUp() {return returnOrderIdsForPickUp;}public void setPickupRequestId(String pickupRequestId) {this.pickupRequestId = pickupRequestId;}public String getPickupRequestId() {return pickupRequestId;}public void setReturnPickupRequest(ReturnPickupRequest returnPickupRequest) {this.returnPickupRequest = returnPickupRequest;}public ReturnPickupRequest getReturnPickupRequest() {return returnPickupRequest;}public Map<Long, String> getAvailableLogisticsPartner(){return providerNameMap;}public String getLogisticProviderName(long providerId){return providerNameMap.get(providerId);}public String getPickupRequestNo() {return pickupRequestNo;}public void setPickupRequestNo(String pickupRequestNo) {this.pickupRequestNo = pickupRequestNo;}public String getLogisticProviderId() {return logisticProviderId;}public void setLogisticProviderId(String logisticProviderId) {this.logisticProviderId = logisticProviderId;}public String getPickupStatus() {return pickupStatus;}public void setPickupStatus(String pickupStatus) {this.pickupStatus = pickupStatus;}public String getPromised_pickup_timestamp() {return promised_pickup_timestamp;}public void setPromised_pickup_timestamp(String promised_pickup_timestamp) {this.promised_pickup_timestamp = promised_pickup_timestamp;}public String getPickedUpAt() {return pickedUpAt;}public void setPickedUpAt(String pickedUpAt) {this.pickedUpAt = pickedUpAt;}public void setReturnTransactions(List<ReturnTransaction> returnTransactions) {this.returnTransactions = returnTransactions;}public List<ReturnTransaction> getReturnTransactions() {return returnTransactions;}public String getReceivedQty() {return receivedQty;}public void setReceivedQty(String receivedQty) {this.receivedQty = receivedQty;}public String getReceivedCondition() {return receivedCondition;}public void setReceivedCondition(String receivedCondition) {this.receivedCondition = receivedCondition;}public String[] getSerialNumbers() {return serialNumbers;}public void setSerialNumbers(String[] serialNumbers) {this.serialNumbers = serialNumbers;}public String getScanFreebie() {return scanFreebie;}public void setScanFreebie(String scanFreebie) {this.scanFreebie = scanFreebie;}public String getProductUsable() {return productUsable;}public void setProductUsable(String productUsable) {this.productUsable = productUsable;}public void setSplitOrderQuantity(String splitOrderQuantity) {this.splitOrderQuantity = splitOrderQuantity;}public String getSplitOrderQuantity() {return splitOrderQuantity;}public void setRefundType(String refundType) {this.refundType = refundType;}public String getRefundType() {return refundType;}public void setRefundAmount(String refundAmount) {this.refundAmount = refundAmount;}public String getRefundAmount() {return refundAmount;}public void setRefundReason(String refundReason) {this.refundReason = refundReason;}public String getRefundReason() {return refundReason;}public void setOrder(Order order) {this.order = order;}public Order getOrder() {return order;}public String getRefundDescription() {return refundDescription;}public void setRefundDescription(String refundDescription) {this.refundDescription = refundDescription;}public String getChequeDetails() {return chequeDetails;}public void setChequeDetails(String chequeDetails) {this.chequeDetails = chequeDetails;}public String getShippingType() {return shippingType;}public void setShippingType(String shippingType) {this.shippingType = shippingType;}public String getCouponDetails() {return couponDetails;}public void setCouponDetails(String couponDetails) {this.couponDetails = couponDetails;}}