Subversion Repositories SmartDukaan

Rev

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

Rev 18929 Rev 19072
Line 94... Line 94...
94
    private String            customerName;
94
    private String            customerName;
95
    private String            customerMobileNumber;
95
    private String            customerMobileNumber;
96
    private User              user;
96
    private User              user;
97
    private String            orderStatus;
97
    private String            orderStatus;
98
    private List<Order>       orders;
98
    private List<Order>       orders;
99
    private Map<Long, Order>       transactions;
99
    private Map<Long, Order>  transactions;
100
	private Map<Long, Long>    transactionShipping;
100
	private Map<Long, Long>   transactionShipping;
101
    private Map<Long, Long>    transactionTotal;
101
    private Map<Long, Long>   transactionTotal;
102
    private List<Payment>     payments;
102
    private List<Payment>     payments;
103
    private String            escalate;
103
    private String            escalate;
104
    private String            cancelReason;
104
    private String            cancelReason;
105
    private String            transactionId;
105
    private String            transactionId;
106
    private String            pickupExtension;
106
    private String            pickupExtension;
107
    private Map<String, Long> ticketCategorycountMap;
107
    private Map<String, Long> ticketCategorycountMap;
108
    private String premises = "";
108
    private String premises = "";
109
    private String closureType = "";
109
    private String closureType = "";
110
    private String paymentId;
110
    private String paymentId;
111
    private List<Agent> 	  crmAgents = new ArrayList<Agent>();
111
    private String 			  quantity;
112
    private List<Agent>       pmAgents = new ArrayList<Agent>();
-
 
113
 
112
 
114
    private HashMap<String, String> allAttachmentsForTicket;
113
    private HashMap<String, String> allAttachmentsForTicket;
115
 
114
 
116
    public String index() {
115
    public String index() {
117
        try {
116
        try {
Line 177... Line 176...
177
                        .getOrdersForCustomer(ticket.getCustomerId(), 0, 0,
176
                        .getOrdersForCustomer(ticket.getCustomerId(), 0, 0,
178
                                Collections.singletonList(OrderStatus.COD_VERIFICATION_PENDING))) {
177
                                Collections.singletonList(OrderStatus.COD_VERIFICATION_PENDING))) {
179
                    log.info("Processing Order: " + order);
178
                    log.info("Processing Order: " + order);
180
                    if (order.isCod()) {
179
                    if (order.isCod()) {
181
                    	transactions.put(order.getTransactionId(), order);
180
                    	transactions.put(order.getTransactionId(), order);
182
                    	if (transactionShipping.get(order.getTransactionId()) == null){
181
                    	if (!transactionShipping.containsKey(order.getTransactionId())){
183
                    		transactionShipping.put(order.getTransactionId(), (long)order.getShippingCost());
182
                    		transactionShipping.put(order.getTransactionId(), (long)order.getShippingCost());
184
                    	} else {
183
                    	} else {
185
                    		transactionShipping.put(order.getTransactionId(), transactionShipping.get(order.getTransactionId()).longValue() + (long)order.getShippingCost());
184
                    		transactionShipping.put(order.getTransactionId(), transactionShipping.get(order.getTransactionId()).longValue() + (long)order.getShippingCost());
186
                    	}
185
                    	}
187
                    	if (transactionTotal.get(order.getTransactionId()) == null){
186
                    	if (!transactionTotal.containsKey(order.getTransactionId())){
188
                    		transactionTotal.put(order.getTransactionId(), (long)order.getTotal_amount()-(long)order.getGvAmount());
187
                    		transactionTotal.put(order.getTransactionId(), (long)order.getTotal_amount()-(long)order.getGvAmount());
189
                    	} else {
188
                    	} else {
190
                    		transactionTotal.put(order.getTransactionId(), transactionTotal.get(order.getTransactionId()).longValue() + (long)order.getTotal_amount()-(long)order.getGvAmount());
189
                    		transactionTotal.put(order.getTransactionId(), transactionTotal.get(order.getTransactionId()).longValue() + (long)order.getTotal_amount()-(long)order.getGvAmount());
191
                    	}
190
                    	}
192
                    	transactions.put(order.getTransactionId(), order);
-
 
193
                        orders.add(order);
191
                    	orders.add(order);
194
                    }
192
                    }
195
                }
193
                }
196
                
194
                
197
            }
195
            }
198
 
196
 
Line 996... Line 994...
996
        }
994
        }
997
 
995
 
998
        return edit();
996
        return edit();
999
    }
997
    }
1000
    
998
    
-
 
999
    public String updateTxnStatus() {
-
 
1000
    	long creatorId;
-
 
1001
        OrderStatus orderStatusEnum = null;
-
 
1002
        try {
-
 
1003
            creatorId = CRMAuthorizingRealm.getAgent(currentAgentEmailId).getId();
-
 
1004
            
-
 
1005
            orderStatusEnum = OrderStatus.valueOf(orderStatus);
-
 
1006
            transactionServiceClient = new TransactionClient().getClient();
-
 
1007
 
-
 
1008
            if (OrderStatus.SUBMITTED_FOR_PROCESSING.equals(orderStatusEnum)) {
-
 
1009
                transactionServiceClient.verifyOrderForTransaction(Long.parseLong(transactionId));
-
 
1010
                transactionServiceClient.updateCODAgent(currentAgentEmailId, Long.parseLong(orderId));
-
 
1011
            }
-
 
1012
            else if (OrderStatus.COD_VERIFICATION_FAILED.equals(orderStatusEnum)) {
-
 
1013
                transactionServiceClient.refundTransaction(Long.parseLong(transactionId), currentAgentEmailId, cancelReason);
-
 
1014
                transactionServiceClient.updateCODAgent(currentAgentEmailId, Long.parseLong(orderId));
-
 
1015
            }
-
 
1016
            else {
-
 
1017
                throw new UnsupportedOperationException("Cannot update status of transactionId: " + transactionId + " to: " + orderStatus);
-
 
1018
            }
-
 
1019
            
-
 
1020
            SearchFilter searchFilter = new SearchFilter();
-
 
1021
            searchFilter.setTicketId(Long.parseLong(id));
-
 
1022
            crmServiceClient = new CRMClient().getClient();
-
 
1023
            Ticket ticket = crmServiceClient.getTickets(searchFilter).get(0);
-
 
1024
 
-
 
1025
            // Inserting activity
-
 
1026
            Activity activity = new Activity();
-
 
1027
            activity.setDescription("Status updated for Transaction Id: " + transactionId
-
 
1028
                    + " to " + orderStatus + ", Reason: " + cancelReason + body);
-
 
1029
            activity.setType(ActivityType.OTHER);
-
 
1030
            activity.setTicketPriority(ticket.getPriority());
-
 
1031
            activity.setTicketStatus(ticket.getStatus());
-
 
1032
            activity.setCreatorId(creatorId);
-
 
1033
            activity.setTicketCategory(ticket.getCategory());
-
 
1034
            activity.setTicketDescription(ticket.getDescription());
-
 
1035
            activity.setCustomerId(ticket.getCustomerId());
-
 
1036
            activity.setTicketAssigneeId(ticket.getAssigneeId());
-
 
1037
 
-
 
1038
            crmServiceClient = new CRMClient().getClient();
-
 
1039
            crmServiceClient.updateTicket(ticket, activity);
-
 
1040
            
-
 
1041
        } catch (TException e) {
-
 
1042
            log.info("Thrift exception", e);
-
 
1043
        } catch (NumberFormatException e) {
-
 
1044
            log.info("Could not convert to long", e);
-
 
1045
        } catch (TransactionServiceException e) {
-
 
1046
            log.info("Transaction client exception", e);
-
 
1047
        }
-
 
1048
        
-
 
1049
    	return edit();
-
 
1050
    }
-
 
1051
    
1001
    public User getUser(Long userId) {
1052
    public User getUser(Long userId) {
1002
        User user = null;
1053
        User user = null;
1003
 
1054
 
1004
        try {
1055
        try {
1005
            userContextServiceClient = new UserClient().getClient();
1056
            userContextServiceClient = new UserClient().getClient();
Line 1705... Line 1756...
1705
    }
1756
    }
1706
 
1757
 
1707
    public void setClosureType(String closureType) {
1758
    public void setClosureType(String closureType) {
1708
        this.closureType = closureType;
1759
        this.closureType = closureType;
1709
    }
1760
    }
-
 
1761
 
-
 
1762
 
-
 
1763
	public String getQuantity() {
-
 
1764
		return quantity;
-
 
1765
	}
-
 
1766
 
-
 
1767
	public void setQuantity(String quantity) {
-
 
1768
		this.quantity = quantity;
-
 
1769
	}
-
 
1770
 
1710
    
1771
    
1711
    public Map<Long, Order> getTransactions() {
1772
    public Map<Long, Order> getTransactions() {
1712
		return transactions;
1773
		return transactions;
1713
	}
1774
	}
1714
 
1775