package my.project.easyrecharge.model; import my.project.easyrecharge.F; /** * Recharge order * * @author roy * @email onecoders@gmail.com */ public abstract class Order { protected static final String SUBJECT = "智电宝电费充值"; // 充值金额 protected int price; public abstract void setSchool(School school); public abstract School getSchool(); // 获取学校id public String getSchoolId() { return getSchool().getSchoolID(); } // 获取学校名称 public String getSchoolName() { return getSchool().getSchoolName(); } public abstract void setApart(Apart apart); public abstract Apart getApart(); // 获取公寓id public String getApartId() { return getApart().getApartID(); } // 获取公寓名称 public String getApartName() { return getApart().getApartName(); } // 获取房间号 public abstract String getRoomNum(); public abstract void setRoomNum(String roomNum); // 设置充值金额 public void setPrice(int price) { this.price = price; } // 获取充值金额 public int getPrice() { return price; } // 支付主题(用于支付说明) public String getSubject() { return SUBJECT; } // 支付信息描述(用于支付说明) public String getBody() { OrderInfo info = getOrderInfo(); return "电费充值详情" + " 学校:" + getSchoolName() + ",楼号:" + getApartName() + ",房间号:" + getRoomNum() + ",充值金额:" + getPrice() + ",参数:" + F.toJson(info); } // 用于商户服务端解析 private OrderInfo getOrderInfo() { OrderInfo info = new OrderInfo(); info.setSchoolID(getSchoolId()); info.setApartID(getApartId()); info.setRoomNum(getRoomNum()); info.setPrice(getPrice()); return info; } // 获取partner id public abstract String getPartnerId(); // 获取支付宝帐号 public abstract String getSellerAccount(); // 获取private key public abstract String getPrivateKey(); }