Rev 167 | Blame | Last modification | View Log | RSS feed
package in.shop2020.hotspot.dashbaord.server.handler;import java.util.Date;import java.util.List;import in.shop2020.hotspot.dashbaord.shared.actions.DetailsMask;import in.shop2020.hotspot.dashbaord.shared.actions.Order;import in.shop2020.hotspot.dashbaord.shared.actions.OrderDetailsRequest;import in.shop2020.hotspot.dashbaord.shared.actions.OrderDetailsResponse;import in.shop2020.hotspot.dashbaord.shared.actions.Shipment;import in.shop2020.model.v1.order.Billing;import in.shop2020.model.v1.order.BillingInfo;import in.shop2020.model.v1.order.ExtraOrderInfo;import in.shop2020.model.v1.order.Payment;import in.shop2020.model.v1.order.PaymentInfo;import in.shop2020.model.v1.order.ShipmentInfo;import in.shop2020.model.v1.order.Transaction;import in.shop2020.model.v1.order.TransactionStatus;import in.shop2020.model.v1.order.TransactionService.Client;import in.shop2020.thrift.clients.TransactionServiceClient;import net.customware.gwt.dispatch.server.ActionHandler;import net.customware.gwt.dispatch.server.ExecutionContext;import net.customware.gwt.dispatch.shared.ActionException;public class OrderDetailsHandler implements ActionHandler<OrderDetailsRequest, OrderDetailsResponse>{@Overridepublic OrderDetailsResponse execute(OrderDetailsRequest request,ExecutionContext context) throws ActionException {// TODO Auto-generated method stubtry{TransactionServiceClient client = new TransactionServiceClient();Client c = client.getClient();Transaction t = c.getTransaction(request.getOrderId());DetailsMask mask = DetailsMask.ALL;if(t.getTransactionStatus() == TransactionStatus.INIT){mask = DetailsMask.NEW;}if(t.getTransactionStatus() == TransactionStatus.SUBMITTED_FOR_PROCESSING){mask = DetailsMask.ACCEPT;}if(t.getTransactionStatus() == TransactionStatus.BILLED){mask = DetailsMask.BILL;}if(t.getTransactionStatus() == TransactionStatus.READY_FOR_SHIPPING){mask = DetailsMask.SHIP;}if(t.getTransactionStatus() == TransactionStatus.SHIPPED){mask = DetailsMask.SHIP;}if(t.getTransactionStatus() == TransactionStatus.ORDER_FULFILLMENT){mask =DetailsMask.REJECT;}//Get extra detailslong sku_id;String model;String vendor;String colour;ExtraOrderInfo eoi = c.getExtraInfo(t.getId());if(eoi == null){sku_id = 34;model = "N 72";colour = "Black";vendor = "Nokia";}else{sku_id = eoi.getSku_id();model = eoi.getModel_name();vendor = eoi.getVendor_info();colour = eoi.getColour();}Order o = new Order(t.getCustomer_id(), t.getId(), t.getCreatedOn(), t.getExpectedDeliveryTime(), t.getTransactionStatus().toString(), t.getStatusDescription(),model, colour, vendor, sku_id);Shipment shipment = new Shipment("");ShipmentInfo info = t.getShipmentInfo();if(info != null && info.getShipments() != null && info.getShipments().size() !=0){in.shop2020.model.v1.order.Shipment sp = info.getShipments().iterator().next();shipment.setAddress(sp.getAddress());shipment.setShipmentStatus(sp.getStatus().toString());shipment.setValue(sp.getValue()+"");shipment.setWeight(sp.getWeight()+"");shipment.setOrderPlaced(new Date(t.getCreatedOn()).toString());shipment.setDeliveryTime("");PaymentInfo pi = t.getPaymentInfo();Payment p = pi.getPayments().entrySet().iterator().next().getValue();shipment.setPaymentMode(p.getMode());shipment.setPaymentTime(new Date(p.getCompletionTimestamp()).toString());shipment.setBank_tx_id(p.getBank_tx_id());if(t.getTransactionStatus() == TransactionStatus.SHIPPED || t.getTransactionStatus() == TransactionStatus.READY_FOR_SHIPPING){shipment.setAirwayNo(sp.getAirwayBillNo());shipment.setProvider(sp.getProvider());shipment.setTracker(sp.getTrackingId());shipment.setShippedOn(new Date(sp.getShipmentTimestamp()).toString());Billing billing = t.getBillingInfo().getBillings().iterator().next();shipment.setBillNo(billing.getBillNumber());shipment.setBillCreatedBy(billing.getGeneratedBy());shipment.setBillCreatedOn(new Date(billing.getGeneratedTimestamp()).toString());}if(t.getTransactionStatus() == TransactionStatus.BILLED){Billing billing = t.getBillingInfo().getBillings().iterator().next();shipment.setBillNo(billing.getBillNumber());shipment.setBillCreatedBy(billing.getGeneratedBy());shipment.setBillCreatedOn(new Date(billing.getGeneratedTimestamp()).toString());}o.setShipment(shipment);}return new OrderDetailsResponse(o, mask);}catch(Exception e){System.out.println(e);}return new OrderDetailsResponse(null, DetailsMask.ALL);}@Overridepublic Class<OrderDetailsRequest> getActionType() {// TODO Auto-generated method stubreturn OrderDetailsRequest.class;}@Overridepublic void rollback(OrderDetailsRequest arg0, OrderDetailsResponse arg1,ExecutionContext arg2) throws ActionException {// TODO Auto-generated method stub}}