微信点餐系统(十)-卖家端通用功能和上下架

本文详细介绍了如何使用Freemarker模板引擎优化界面布局,包括边栏的复用和公共头部的提取,同时深入讲解了商品上下架功能的实现过程,涉及商品状态的枚举处理和服务层的逻辑判断。

章节感悟

1.使用freemarke的包含语句

2.复制的代码需要仔细检查才能使用

卖家端通用功能和上下架

1.实现边栏(通用界面公用)

1)将给好的边栏放入项目中,并且响应css一起放入项目

2)在之前的订单list页面引入边栏,使用freemarke的语法

 

3)提取出所有ftl文件的公共头部分

 

4)修改bootstrap版本为3.3.5,于是被分为三个部分的页面,这里其实可以把分页提取出来,但是视频没有说,我这里就不写了

 

5)对详情页进行同样的操作

 

2.实现商品列表

1)新建SellerProductController控制器

2)查找所有商品的接口(分页显示)(复制一时爽,一直复制一直爽,再也不想敲代码了)

3)商品显示页面(一直copy,稍微修改)

4)在商品类中创建get方法获取商品状态枚举对象

//对象转换成json格式将会忽略这两个字段
@JsonIgnore
public ProductStatusEnum getProductStatusEnum() {
    return EnumUtil.getByCode(productStatus, ProductStatusEnum.class);
}

5)上下架细节逻辑判断

 

3.商品上下架service

1.productService中新增上下架方法,并且进行测试

@Override
@Transactional(rollbackOn = Exception.class)
public ProductInfo onSale(String productId) {
    //判断商品是否存在
    ProductInfo productInfo = findOne(productId);
    if(productInfo == null){
        throw  new SellException(ResultEnum.PRODUCT_NOT_EXIST);
    }
    //判断状态是否正确
    if(productInfo.getProductStatusEnum() == ProductStatusEnum.UP){
        throw new SellException(ResultEnum.PRODUCT_STATUS_ERROR);
    }
    //下架操作
    productInfo.setProductStatus(ProductStatusEnum.DOWN.getCode());
    return productInfoRepository.save(productInfo);
}

@Override
@Transactional(rollbackOn = Exception.class)
public ProductInfo offSale(String productId) {
    //判断商品是否存在
    ProductInfo productInfo = findOne(productId);
    if(productInfo == null){
        throw  new SellException(ResultEnum.PRODUCT_NOT_EXIST);
    }
    //判断状态是否正确
    if(productInfo.getProductStatusEnum() == ProductStatusEnum.DOWN){
        throw new SellException(ResultEnum.PRODUCT_STATUS_ERROR);
    }
    //上架操作
    productInfo.setProductStatus(ProductStatusEnum.UP.getCode());
    return productInfoRepository.save(productInfo);
}
View Code

 

4.商品上下架controller

1.上架接口

“/sell/seller/product/on_sale”

2.下架接口

“/sell/seller/product/off_sale”

转载于:https://www.cnblogs.com/xzmxddx/p/10325931.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值