Rev 13410 | Blame | Compare with Previous | Last modification | View Log | RSS feed
package in.shop2020.serving.controllers;import in.shop2020.model.v1.order.DenominationType;import in.shop2020.model.v1.order.DeviceNumberInfo;import in.shop2020.model.v1.order.RechargeDenomination;import in.shop2020.model.v1.order.RechargeType;import in.shop2020.serving.utils.Utils;import in.shop2020.thrift.clients.TransactionClient;import java.util.List;import java.util.Map;import org.apache.log4j.Logger;import com.google.gson.Gson;public class RechargeController extends BaseController {/****/private String serviceType = null; //Default is Mobile , 2 is for DTHprivate String deviceNumber = "";private String form = "";private Map<Long, String> providers;private String error = "";private String uri;private String operatorId;private String operatorName;private String serviceName;private String denominationType;private String circleCode;private List<RechargeDenomination> rechargeDenominations = null;private static final long serialVersionUID = 2079308723099307749L;private static Logger log = Logger.getLogger(Class.class);public String index() {uri = request.getRequestURI();uri = uri.replace("/", "");log.info("Uri: " + uri);Map<String, String> valueMap = Utils.getOperatorByUri(uri);operatorId = valueMap.get("Id");operatorName = valueMap.get("Name");serviceName = valueMap.get("ServiceName");if(serviceType == null){serviceType = valueMap.get("ServiceType");}return "index";}public String create() {if(form.equals("serviceSelect")) {return index();}return index();}public Map<Long, String> getProviderMap() {if(serviceType.equals("1"))providers = Utils.getMobileProvidersMap();elseproviders = Utils.getDthProvidersMap();return providers;}public String getServiceProvider() {return "service-provider";}public String getProvider(){TransactionClient tcl;try {tcl = new TransactionClient();DeviceNumberInfo deviceInfo = tcl.getClient().getServiceProviderForDevice(RechargeType.findByValue(Integer.parseInt(this.serviceType)), deviceNumber);return deviceInfo.getOperatorId() + ":" + deviceInfo.getCircleCode();} catch (Exception e) {log.error("Unable to get service provider for Device number " + deviceNumber + " and rechargeType : " + serviceType, e);return ":";}}public String getAllDenominations() {TransactionClient tcl;try {tcl = new TransactionClient();rechargeDenominations = tcl.getClient().getRechargeDenominations(Long.parseLong(operatorId), circleCode, DenominationType.findByValue(Integer.parseInt(denominationType)));if(rechargeDenominations == null || rechargeDenominations.isEmpty()) {setError("This information is unavailable for now.<br>You can recharge with the amount you normally use or you can try later.");}} catch (Exception e) {log.error("Unable to get rechargeDenominations for operatorId " + operatorId + " and circleCode : " + circleCode + " and DenominationType : " + denominationType, e);setError("This information is unavailable for now.<br>You can recharge with the amount you normally use or you can try later.");}return "recharge-denomination";}public String getPlanMapInJson() {Gson gson = new Gson();return (gson.toJson(Utils.getOperatorPlanMap()));}public void setServiceType(String incomingServiceType) {serviceType = incomingServiceType;}public void setDeviceNumber(String deviceNumber){this.deviceNumber = deviceNumber;}public String getServiceType() {return serviceType;}public String getForm() {return form;}public void setForm(String form) {this.form = form;}public String getError() {return error;}public void setError(String error) {this.error = error;}public String getPageName() {return operatorName + " online recharge";}public String getPageTitle() {return operatorName + " online recharge";}public String getPageMetaDesc() {return "Recharge your " + this.operatorName + " " + this.serviceName + " online for all cities using Credit/Debit card & net banking. Fast, Secure and Hassle Free Recharge";}public String getPageMetaKeywords() {return "mobile, recharge";}public long getOperatorId(){return Long.parseLong(this.operatorId);}public String getDenominationType() {return denominationType;}public void setDenominationType(String denominationType) {this.denominationType = denominationType;}public String getCircleCode() {return circleCode;}public void setCircleCode(String circleCode) {this.circleCode = circleCode;}public List<RechargeDenomination> getRechargeDenominations() {return rechargeDenominations;}public void setRechargeDenominations(List<RechargeDenomination> rechargeDenominations) {this.rechargeDenominations = rechargeDenominations;}public void setOperatorId(String operatorId) {this.operatorId = operatorId;}}