package cn.lili.modules.goods.entity.vos; import cn.lili.modules.goods.entity.enums.GoodsStatusEnum; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import java.io.Serializable; /** * 商品操作允许的范围 * * @author Bulbasaur * @since 2020-02-26 23:24:13 */ @Data @AllArgsConstructor @NoArgsConstructor public class GoodsOperateAllowable implements Serializable { /** * 上下架状态 * * @see GoodsStatusEnum */ private String marketEnable; /** * 删除状态 true 已删除 false 未删除 */ private Boolean deleteFlag; /** * 是否允许下架 */ private Boolean allowDown; /** * 是否允许放入回收站 */ private Boolean allowDelete; /** * 是否允许回收站的商品还原 */ private Boolean allowReduction; /** * 是否允许回收站的商品彻底删除 */ private Boolean allowClear; /** * 是否允许上架 */ private Boolean allowUpper; /** * 构造函数 * * @param marketEnable * @param deleteFlag */ public GoodsOperateAllowable(String marketEnable, Boolean deleteFlag) { this.marketEnable = marketEnable; this.deleteFlag = deleteFlag; } public Boolean getAllowDown() { //上架状态 不在回收站的商品可以下架 return marketEnable == GoodsStatusEnum.UPPER.name() && deleteFlag == false; } public Boolean getAllowReduction() { //下架状态 在回收站的商品可以还原 return marketEnable == GoodsStatusEnum.DOWN.name() && deleteFlag == true; } public Boolean getAllowClear() { //下架状态 在回收站的商品可以彻底删除 return marketEnable == GoodsStatusEnum.DOWN.name() && deleteFlag == true; } public Boolean getAllowUpper() { //下架状态 未删除的商品可以上架 return marketEnable == GoodsStatusEnum.DOWN.name() && deleteFlag == false; } public Boolean getAllowDelete() { //下架状态 未删除的商品可以删除 return marketEnable == GoodsStatusEnum.DOWN.name() && deleteFlag == false; } }