欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

淘淘商城 项目(IDEA版)之——规格参数功能实现:后台规格参数模板管理 列表显示、新增、删除

程序员文章站 2022-05-23 11:10:11
...

后台对规格参数模板管理:列表显示、新增、删除

1、首先前台操作看一下实现后的效果

(1)默认进入显示列表
淘淘商城 项目(IDEA版)之——规格参数功能实现:后台规格参数模板管理 列表显示、新增、删除
(2)新增 规格参数模板
淘淘商城 项目(IDEA版)之——规格参数功能实现:后台规格参数模板管理 列表显示、新增、删除
(3)新增成功
淘淘商城 项目(IDEA版)之——规格参数功能实现:后台规格参数模板管理 列表显示、新增、删除
(4)新增商品-添加商品的规格参数
说明:如果给商品类目添加了规格参数模板,就会在新增商品页面下方生成规格参数模板,商品类目没有模板意味着不给该商品添加规格参数,个人认为不太合理,应该加个校验,没规格参数模板先去创建模板,感兴趣的小伙伴可以完善一下!
淘淘商城 项目(IDEA版)之——规格参数功能实现:后台规格参数模板管理 列表显示、新增、删除
(5)添加商品信息、商品描述、规格参数
淘淘商城 项目(IDEA版)之——规格参数功能实现:后台规格参数模板管理 列表显示、新增、删除
淘淘商城 项目(IDEA版)之——规格参数功能实现:后台规格参数模板管理 列表显示、新增、删除
(6)新增商品成功
淘淘商城 项目(IDEA版)之——规格参数功能实现:后台规格参数模板管理 列表显示、新增、删除
(7)前台搜索一下,去商品详情看看
淘淘商城 项目(IDEA版)之——规格参数功能实现:后台规格参数模板管理 列表显示、新增、删除
淘淘商城 项目(IDEA版)之——规格参数功能实现:后台规格参数模板管理 列表显示、新增、删除

2、业务逻辑了解之后,开始撸代码

(1)yougou-manager-web中controller接口如下

/**
 * 商品规格参数模板控制层接口
 *
 * @ProjectName: yougoushop
 * @Description: java类作用描述
 * @Author: HALEN(李智刚)
 * @CreateDate: 2018/4/23 17:50
 * <p>Copyright: Copyright (c) 2018</p>
 */
@Controller
@RequestMapping("/item/param")
public class ItemParamController {

    @Autowired
    private ItemParamService itemParamService;

    /**
     * 通过商品类目id获取规格参数模板
     * @param cid
     * @return
     */
    @RequestMapping("/query/itemcatid/{cid}")
    @ResponseBody
    public YougouResult getItemCatByCid(@PathVariable Long cid) {
        YougouResult result = itemParamService.getItemParamByCid(cid);
        return result;
    }

    /**
     * 插入规格参数模板
     * @param cid
     * @param paramData
     * @return
     */
    @RequestMapping("/save/{cid}")
    @ResponseBody
    public YougouResult insertItemParam(@PathVariable Long cid, String paramData) {
        YougouResult result = itemParamService.insertItemParam(cid, paramData);
        return result;
    }

    /**
     * 获得规格参数模板列表
     * @param page
     * @param rows
     * @return
     */
    @RequestMapping("/list")
    @ResponseBody
    public EasyUIDataGridResult getItemParamList(Integer page, Integer rows) {
        EasyUIDataGridResult result = itemParamService.getItemParamList(page, rows);
        return result;
    }
}

(2)yougou-manager-service中服务层接口如下
说明:在查询规格参数模板的时候有些问题需要注意一下,如下:


—————说明开始—————
淘淘商城 项目(IDEA版)之——规格参数功能实现:后台规格参数模板管理 列表显示、新增、删除
自定义pojo
淘淘商城 项目(IDEA版)之——规格参数功能实现:后台规格参数模板管理 列表显示、新增、删除
自定义mapper
淘淘商城 项目(IDEA版)之——规格参数功能实现:后台规格参数模板管理 列表显示、新增、删除
—————说明结束—————


继续商品服务层接口代码,getItemParamList这个方法用到了上边自定义的mapper和pojo做联表查询

/**
 * 商品规格参数模板服务层接口实现
 *
 * @ProjectName: yougoushop
 * @Description: java类作用描述
 * @Author: HALEN(李智刚)
 * @CreateDate: 2018/4/23 17:47
 * <p>Copyright: Copyright (c) 2018</p>
 */
@Service
public class ItemParamServiceImpl implements ItemParamService {

    @Autowired
    private TbItemParamMapper itemParamMapper;
    @Autowired
    private TbItemParamExtendMapper itemParamExtendMapper;

    @Override
    public YougouResult getItemParamByCid(long cid) {
        //根据cid查询规格参数模板
        TbItemParamExample example = new TbItemParamExample();
        TbItemParamExample.Criteria criteria = example.createCriteria();
        criteria.andItemCatIdEqualTo(cid);
        //执行查询
        List<TbItemParam> list = itemParamMapper.selectByExampleWithBLOBs(example);
        //判断是否查询到结果
        if(list != null && list.size() > 0){
            TbItemParam itemParam = list.get(0);
            return YougouResult.ok(itemParam);
        }

        return YougouResult.ok();
    }

    @Override
    public YougouResult insertItemParam(long cid, String paramData) {
        //创建一个pojo
        TbItemParam itemParam = new TbItemParam();
        itemParam.setItemCatId(cid);
        itemParam.setParamData(paramData);
        itemParam.setCreated(new Date());
        itemParam.setUpdated(new Date());
        //插入记录
        itemParamMapper.insert(itemParam);

        return YougouResult.ok();
    }

    @Override
    public EasyUIDataGridResult getItemParamList(int page, int rows) {
        //设置分页信息
        PageHelper.startPage(page, rows);
        //执行查询
        List<TbItemParamExtend> list = itemParamExtendMapper.selectItemParamExtendList();
        //转化格式
        PageInfo<TbItemParamExtend> pageInfo = new PageInfo<>(list);
        EasyUIDataGridResult result = new EasyUIDataGridResult();
        result.setRows(list);
        result.setTotal(pageInfo.getTotal());
        //返回结果
        return result;
    }
}

说明

(1)到这里代码就写完了,测试就ok了,后台规格参数模板管理完成,前台商品详情页面展示规格参数在下一篇博客
(2)添加商品时展示规格参数模板写个查询方法就行,感兴趣的小伙伴可以下载整个项目代码,ps:完整项目完善了很多功能以及合理性哦!

完整项目下载地址:https://download.csdn.net/download/halen001/10383616