Subversion Repositories SmartDukaan

Rev

Rev 6201 | Rev 6270 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
6050 anupam.sin 1
package in.shop2020.serving.controllers;
2
 
6066 amit.gupta 3
import in.shop2020.model.v1.order.RechargeType;
6178 anupam.sin 4
import in.shop2020.serving.utils.Utils;
6066 amit.gupta 5
import in.shop2020.thrift.clients.TransactionClient;
6
 
6050 anupam.sin 7
import java.util.Map;
8
 
9
import org.apache.log4j.Logger;
10
 
6178 anupam.sin 11
import com.google.gson.Gson;
12
 
6050 anupam.sin 13
public class RechargeController extends BaseController {
14
 
15
    /**
16
     * 
17
     */
6204 rajveer 18
    private String serviceType = null; //Default is Mobile , 2 is for DTH
6103 amit.gupta 19
    private String deviceNumber = "";
6050 anupam.sin 20
    private String form = "";
6057 anupam.sin 21
    private Map<Long, String> providers;
6103 amit.gupta 22
    private String error = "";
6204 rajveer 23
    private String uri;
24
    private String operatorId;
25
    private String operatorName;
26
    private String serviceName;
6050 anupam.sin 27
    private static final long serialVersionUID = 2079308723099307749L;
28
 
29
    private static Logger log = Logger.getLogger(Class.class);
30
 
6204 rajveer 31
 
6050 anupam.sin 32
    public String index() {
6204 rajveer 33
    	uri = request.getRequestURI();
34
		uri = uri.replace("/", "");
35
	    log.info("Uri: " + uri);
36
	    Map<String, String> valueMap = Utils.getOperatorByUri(uri);
37
	    operatorId  = valueMap.get("Id");
38
        operatorName = valueMap.get("Name"); 
39
        serviceName  = valueMap.get("ServiceName");
40
	    if(serviceType == null){
41
	        serviceType  = valueMap.get("ServiceType");
42
	    }
43
        if(error.equals("ServiceDown")){
6174 rajveer 44
    		error = "Oops! There seems to be a problem. Please try after some time";
6103 amit.gupta 45
    	}else{
46
    		error = "";
47
    	}
6050 anupam.sin 48
        return "index";
49
    }
50
 
51
    public String create() {
52
        if(form.equals("serviceSelect")) {
53
            return index();
54
        }
55
        return "hello";
56
    }
6057 anupam.sin 57
 
58
    public Map<Long, String> getProviderMap() {
6201 rajveer 59
        if(serviceType.equals("1"))
60
            providers = Utils.getMobileProvidersMap();
61
        else
62
            providers = Utils.getDthProvidersMap();
6057 anupam.sin 63
        return providers;
64
    }
6100 anupam.sin 65
 
6103 amit.gupta 66
    public String getServiceProvider() {
67
    	return "service-provider";
6100 anupam.sin 68
    }
6103 amit.gupta 69
 
70
    public String getProvider(){
71
    	TransactionClient tcl;
72
    	try {
73
    		tcl = new TransactionClient();
74
    		return tcl.getClient().getServiceProviderForDevice(RechargeType.findByValue(Integer.parseInt(this.serviceType)), deviceNumber) + "";
75
    	} catch (Exception e) {
76
    		log.error("Unable to get service provider for Device number " + deviceNumber + " and rechargeType : " +  serviceType, e);
77
    	}
78
    	return 0 + "";
79
    }
6178 anupam.sin 80
 
81
    public String getPlanMapInJson() {
82
        Gson gson = new Gson();
83
            return (gson.toJson(Utils.getOperatorPlanMap()));
84
    }
6050 anupam.sin 85
 
6057 anupam.sin 86
    public void setServiceType(String incomingServiceType) {
87
        serviceType = incomingServiceType;
88
    }
6103 amit.gupta 89
 
90
    public void setDeviceNumber(String deviceNumber){
91
    	this.deviceNumber = deviceNumber;
92
    }
6057 anupam.sin 93
 
6050 anupam.sin 94
    public String getServiceType() {
95
        return serviceType;
96
    }
97
 
98
    public String getForm() {
99
        return form;
100
    }
101
 
102
    public void setForm(String form) {
103
        this.form = form;
104
    }
6103 amit.gupta 105
 
106
	public String getError() {
107
		return error;
108
	}
109
 
110
	public void setError(String error) {
111
		this.error = error;
112
	}
113
 
6204 rajveer 114
	public String getPageName() {
115
    	return operatorName  + " online recharge";
116
    }
117
 
118
	public String getPageTitle() {
119
		return operatorName  + " online recharge";
120
    }
121
 
122
    public String getPageMetaDesc() {
123
    	return "Recharge your " + this.operatorName +  " " + this.serviceName +  " online for all cities using Credit/Debit card & net banking. Fast, Secure and Hassle Free Recharge";
124
    }
125
 
126
    public String getPageMetaKeywords() {
127
    	return "mobile, recharge";
128
    }
129
 
130
    public long getOperatorId(){
131
    	return Long.parseLong(this.operatorId);
132
    }
6050 anupam.sin 133
}