在添加店铺Service层编写之前,要先编写添加店铺的返回类型
存储在Dto中
记录添加店铺成功或失败的状态
public class ShopExecution {
/**
* 状态 为枚举类型,在ShopStateEnum.java中定义
*/
//结果状态
private int state;
//状态标识(以文字的形式解释state的作用)
private String stateInfo;
//店铺数量
private int count;
//操作的shop(增删改店铺的时候用到)
private Shop shop;
//shop列表(查询店铺列表的时候使用)
private List<Shop> shopList;
public ShopExecution() {
}
//在店铺操作失败时使用的构造器--生成ShopExecution对象
public ShopExecution(ShopStateEnum stateEnum) {
this.state = stateEnum.getState();
this.stateInfo = stateEnum.getStateInfo();
}
//在店铺操作在成功时使用的构造器-返回一个店铺对象
public ShopExecution(ShopStateEnum stateEnum,Shop shop) {
this.state = stateEnum.getState();
this.stateInfo = stateEnum.getStateInfo();
}
//在店铺操作在成功时使用的构造器-返回一个店铺对象列表
public ShopExecution(ShopStateEnum stateEnum,List<Shop> shopList) {
this.state = stateEnum.getState();
this.stateInfo = stateEnum.getStateInfo();
this.shopList = shopList;
}
public int getState() {
return state;
}
public void setState(int state) {
this.state = state;
}
public String getStateInfo() {
return stateInfo;
}
public void setStateInfo(String stateInfo) {
this.stateInfo = stateInfo;
}
public int getCount() {
return count;
}
public void setCount(int count) {
this.count = count;
}
public Shop getShop() {
return shop;
}
public void setShop(Shop shop) {
this.shop = shop;
}
public List<Shop> getShopList() {
return shopList;
}
public void setShopList(List<Shop> shopList) {
this.shopList = shopList;
}
}
枚举类型在ShopStateEnum类中定义
public enum ShopStateEnum {
CHECK(0, "审核中"), OFFLINE(-1, "非法店铺"), SUCCESS(1, "操作成功"), PASS(2, "通过认证"), INNER_ERROR(-1001, "内部系统错误"),
NULL_SHOPID(-1002, "ShopId为空"),NULL_SHOP(-1003,"shop信息为空");
private int state;
private String stateInfo;
// 创建构造器,是私有的原因:不希望外部能够改变枚举的值,即把它们当做常量
private ShopStateEnum(int state, String stateInfo) {
this.state = state;
this.stateInfo = stateInfo;
}
/**
* 依据传入的state返回响应的enum值
*/
public static ShopStateEnum stateOf(int state) {
for (ShopStateEnum stateEnum : values()) {
if (stateEnum.getState() == state) {
return stateEnum;
}
}
return null;
}
public int getState() {
return state;
}
public String getStateInfo() {
return stateInfo;
}
}