商品管理模块开发

该博客详细介绍了商品管理模块的开发过程,包括商品的修改、新增操作,产品详情页管理,使用properties文件实现前后端分离和热部署。商品列表采用分页工具PageHelper,商品搜索功能利用Mybatis进行SQL编写,特别强调了where和if条件的使用以优化SQL语句。业务实现中,普通用户可以通过关键字和分类搜索商品。
摘要由CSDN通过智能技术生成

1.修改和新增商品操作

public ServerResponse saveOrUpdateProduct(Product product){
        if(product!=null){
            ``` 
            if(StringUtils.isNotBlank(product.getSubImages())) {
                String[] subImageArray = product.getSubImages().split(",");
                if (subImageArray.length > 0) {
                    product.setMainImage(subImageArray[0]);
                }
            ```
            if(product.getId()!=null){
                int resultCount = productMapper.updateByPrimaryKey(product);
                if(resultCount>0){
                    return ServerResponse.createBySuccessMessage("更新商品成功");
                }else{
                    return ServerResponse.createByErrorMessage("更新商品失败");
                }
            }else{
                int resultCount = productMapper.insertSelective(product);
                if(resultCount>0){
                    return ServerResponse.createBySuccessMessage("新增商品成功");
                }else{
                    return ServerResponse.createByErrorMessage("新增更新商品失败");
                }
            }
        }
        return ServerResponse.createByErrorMessage("新增或更新产品参数不正确");
    }

2.产品详情页管理
配置内容都是用properties文件统一编写,便于前后端分离,以及后期的维护,同时这样也更方便于进行热部署。

    public ServerResponse<ProductDetailVo> manageProductDetail(Integer productId){
        if(productId==null){
            return ServerResponse.createByErrorCodeMessage(ResponseCode.ILLEGAL_ARGUMENT.getCode(),ResponseCode.ILLEGAL_ARGUMENT.getDesc());
        }
        Product product=productMapper.selectByPrimaryKey(productId);
        if(product==null){
            return ServerResponse.createByErrorMessage("产品已经下架或删除");
        }
        ProductDetailVo productDetailVo=assembleProductDetailVo(product);
        return ServerResponse.createBySuccess(productDetailVo);
    }

    private ProductDetailVo assembleProductDetailVo(Product product){
        ProductDetailVo productDetailVo=new ProductDetailVo();
        productDetailVo.setId(product.getId());
        productDetailVo.setSubtitle(product.getSubtitle());
        productDetailVo.setPrice(product.getPrice());
        productDetailVo.setMainImage(product.getMainImage());
        productDetailVo.setSubImage(product.getSubI
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值