Blame | Last modification | View Log | RSS feed
package in.shop2020.recharge.controllers;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import in.shop2020.model.v1.order.FRC;import in.shop2020.model.v1.order.RechargeType;import in.shop2020.model.v1.order.TelecomCircle;import in.shop2020.thrift.clients.TransactionClient;public class AddFrcController extends BaseController{/****/private long circle;private long operatorId = 0l;List<FRC> frcs = new ArrayList<FRC>();private String message = "";private static List<TelecomCircle> circles = new ArrayList<TelecomCircle>();private static Map<Long, String> operatorsMap = new HashMap<Long, String>();private ArrayList<Long> frcIdToDelete = new ArrayList<Long>();private long denomination = 0l;private long maxDiscount = 0l;private static final long serialVersionUID = 1L;static{try {TransactionClient tcl = new TransactionClient();circles = tcl.getClient().getAllCircles();operatorsMap = tcl.getClient().getServiceProviders(RechargeType.MOBILE, true);} catch (Exception e) {// TODO Auto-generated catch blocklog.error("Exception", e);}}public String index() {if(circles.size() == 0 || operatorsMap.keySet().size() == 0) {try{TransactionClient tcl = new TransactionClient();circles = tcl.getClient().getAllCircles();operatorsMap = tcl.getClient().getServiceProviders(RechargeType.MOBILE, true);} catch (Exception e) {log.error("Unable to get all circles", e);setMessage("Internal Error. Please try again.");}}return "index";}public String add() {try{if(denomination < 1) {setMessage("Invalid denomination");return create();}if(maxDiscount < 1) {setMessage("Cannots add zero discount FRC");return create();}if(maxDiscount > denomination) {setMessage("Discount cannot be more than denomination");return create();}TransactionClient tcl = new TransactionClient();boolean success = tcl.getClient().addFrc(circle, operatorId, denomination, maxDiscount);if(!success) {setMessage("Could not add FRC. Please try again");}} catch (Exception e) {log.error("Unable to get all circles", e);}return create();}public String create(){try{if(circle == 0 || operatorId == 0) {setMessage("No FRC available for this circle/Operator combination");return index();}TransactionClient tcl = new TransactionClient();frcs = tcl.getClient().getFRCs(circle, operatorId);if(frcs.size() == 0) {setMessage("No FRC available for this circle");}} catch (Exception e) {log.error("Unable to get FRC for circle and operator : " + circle + ", " + operatorId + " resp.", e);setMessage("Internal error. Please try again");}return index();}public long getCircle() {return circle;}public void setCircle(long circle) {this.circle = circle;}public long getOperatorId() {return operatorId;}public void setOperatorId(long operatorId) {this.operatorId = operatorId;}public List<FRC> getFrcs() {return frcs;}public void setFrcs(List<FRC> frcs) {this.frcs = frcs;}public String getMessage() {return message;}public void setMessage(String message) {this.message = message;}public List<TelecomCircle> getCircles() {return circles;}public static void setCircles(List<TelecomCircle> circles) {AddFrcController.circles = circles;}public Map<Long, String> getOperatorsMap() {return operatorsMap;}public static void setOperatorsMap(Map<Long, String> operatorsMap) {AddFrcController.operatorsMap = operatorsMap;}public void setFrcIdToDelete(ArrayList<Long> frcIdToDelete) {this.frcIdToDelete = frcIdToDelete;}public ArrayList<Long> getFrcIdToDelete() {return frcIdToDelete;}public long getDenomination() {return denomination;}public void setDenomination(long denomination) {this.denomination = denomination;}public long getMaxDiscount() {return maxDiscount;}public void setMaxDiscount(long maxDiscount) {this.maxDiscount = maxDiscount;}}