Rev 7125 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
package in.shop2020.recharge.controllers;import in.shop2020.model.v1.order.DeviceNumberInfo;import in.shop2020.model.v1.order.FRC;import in.shop2020.model.v1.order.HotspotStore;import in.shop2020.model.v1.order.RechargeDenomination;import in.shop2020.model.v1.order.RechargePlan;import in.shop2020.model.v1.order.RechargeType;import in.shop2020.thrift.clients.TransactionClient;import java.util.HashMap;import java.util.List;import java.util.Map;import org.apache.log4j.Logger;import org.apache.struts2.convention.annotation.Result;import org.apache.struts2.convention.annotation.Results;import com.google.gson.Gson;@Results({@Result(name = "redirect", location = "${redirectUrl}", type = "redirect")})public class HomeController extends BaseController {/****/private String deviceType = null; //Default is Mobile , 2 is for DTHprivate String deviceNumber = "";private String form = "";private String error = "";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);private static Map<Long, String> mobileProvidersMap;private static Map<Long, String> dthProvidersMap;private static Map<Long, List<RechargePlan>> operatorPlanMap;private String errorMsg = "";private String redirectUrl;static {TransactionClient tcl;try {operatorPlanMap = new HashMap<Long, List<RechargePlan>>();tcl = new TransactionClient();mobileProvidersMap = tcl.getClient().getServiceProviders(RechargeType.MOBILE, true);setDthProvidersMap(tcl.getClient().getServiceProviders(RechargeType.DTH, true));for (Long operatorId : mobileProvidersMap.keySet()) {List<RechargePlan> plans = tcl.getClient().getPlansForOperator(operatorId);if (!plans.isEmpty()) {operatorPlanMap.put(operatorId, plans);}}} catch(Exception e) {;}}public String getPlanMapInJson() {Gson gson = new Gson();return (gson.toJson(operatorPlanMap));}public String index() {String loginStatus = (String) request.getSession().getAttribute("LOGGED_IN");if(loginStatus != null && loginStatus.equals("TRUE")){storeId = Long.parseLong((String) request.getSession().getAttribute("STORE_ID"));if(!hotspotStores.containsKey(storeId)){try{HotspotStore hotSpotStore = (new TransactionClient()).getClient().getHotspotStore(storeId, "");hotspotStores.put(storeId, hotSpotStore);} catch (Exception e) {log.error("Unable to get store", e);}}return "index";}return "authfail";}public String create() {return index();}// public Map<Long, String> getProviderMap() {// if(deviceType.equals("1"))// providers = Utils.getMobileProvidersMap();// else// providers = Utils.getDthProvidersMap();// return providers;// }//public String getServiceProvider() {return "service-provider";}public String getFRC() {return "frc-result";}public String getFRCJSONString(){long circleId = Long.parseLong((String)(request.getSession().getAttribute("CIRCLE_ID")));TransactionClient tcl;try {tcl = new TransactionClient();List<FRC> frcList = tcl.getClient().getFRCs(circleId, Long.parseLong(operatorId));return new Gson().toJson(frcList);} catch (Exception e) {log.error("Unable to get service provider for Device number " + deviceNumber + " and rechargeType : " + deviceType, e);return "";}}public String getProvider(){TransactionClient tcl;try {tcl = new TransactionClient();DeviceNumberInfo deviceInfo = tcl.getClient().getServiceProviderForDevice(RechargeType.findByValue(Integer.parseInt(this.deviceType)), deviceNumber);return deviceInfo.getOperatorId() + ":" + deviceInfo.getCircleCode();} catch (Exception e) {log.error("Unable to get service provider for Device number " + deviceNumber + " and rechargeType : " + deviceType, e);return ":";}}public void setDeviceType(String incomingdeviceType) {deviceType = incomingdeviceType;}public void setDeviceNumber(String deviceNumber){this.deviceNumber = deviceNumber;}public String getDeviceType() {return deviceType;}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;}public void setErrorMsg(String errorMsg) {this.errorMsg = errorMsg;}public String getErrorMsg() {return errorMsg;}public static void setDthProvidersMap(Map<Long, String> dthProvidersMap) {HomeController.dthProvidersMap = dthProvidersMap;}public static Map<Long, String> getDthProvidersMap() {return dthProvidersMap;}public static void setMobileProvidersMap(Map<Long, String> mobileProvidersMap) {HomeController.mobileProvidersMap = mobileProvidersMap;}public static Map<Long, String> getMobileProvidersMap() {return mobileProvidersMap;}public String getStoreCircleCode() {return (String)(request.getSession().getAttribute("STORE_CIRCLE_CODE"));}public String getRedirectUrl() {return redirectUrl;}public void setRedirectUrl(String redirectUrl) {this.redirectUrl = redirectUrl;}}