zoukankan      html  css  js  c++  java
  • 我自己用

    GoodsCateVO

    package com.zjdfwl.mall.restfulapi.modular.goods.controller.vo;
    
    import java.io.Serializable;
    import java.util.List;
    
    /**
     * 产品类别 展示类
     * @author Administrator
     *
     */
    public class GoodsCateVO implements Serializable {
    
        /**
        * 
        */
        private static final long serialVersionUID = 5010898519808673759L;
        
        private Integer id;
        /**
         * 商品分类编号
         */
        private String cateSn;
        /**
         * 产品类别名字
         */
        private String name;
        /**
         * 产品类别图片
         */
        private String goodsGallery;
        /**
         * 产品类别图标
         */
        private String logo;
        /**
         * 产品类别简介
         */
        private String goodsCateDesc;
        /**
         * 产品类别id
         */
        private Integer pid;
    
        /**
         * 子列表
         */
        List<GoodsCateVO> child;
    
        public Integer getId() {
            return id;
        }
    
        public void setId(Integer id) {
            this.id = id;
        }
    
        public String getCateSn() {
            return cateSn;
        }
    
        public void setCateSn(String cateSn) {
            this.cateSn = cateSn;
        }
    
        public String getName() {
            return name;
        }
    
        public void setName(String name) {
            this.name = name;
        }
    
        public String getGoodsGallery() {
            return goodsGallery;
        }
    
        public void setGoodsGallery(String goodsGallery) {
            this.goodsGallery = goodsGallery;
        }
    
        public String getLogo() {
            return logo;
        }
    
        public void setLogo(String logo) {
            this.logo = logo;
        }
    
        public String getGoodsCateDesc() {
            return goodsCateDesc;
        }
    
        public void setGoodsCateDesc(String goodsCateDesc) {
            this.goodsCateDesc = goodsCateDesc;
        }
    
        public Integer getPid() {
            return pid;
        }
    
        public void setPid(Integer pid) {
            this.pid = pid;
        }
    
        public List<GoodsCateVO> getChild() {
            return child;
        }
    
        public void setChild(List<GoodsCateVO> child) {
            this.child = child;
        }
    
    }

    controller

        @RequestMapping("catelist")
        public ResultEntity cateList() {
            try {
                List<GoodsCateVO> resultList = (List<GoodsCateVO>) JedisUtils.getObject(CacheConsts.CACHE_GOODS_CATE);
                if (resultList == null || resultList.size() == 0) {
                    Page<GoodsCate> page = new Page<GoodsCate>(1, -1);
                    page.setSearchCount(false);
                    Wrapper<GoodsCate> wrapper = new EntityWrapper<GoodsCate>().eq("is_enable", 1).eq("is_deleted", 0)
                            .orderBy("level,sort_num", true);
                    page = goodsCateService.selectPage(page, wrapper);
                    resultList = new ArrayList<GoodsCateVO>();
                    if (page != null && page.getRecords().size() > 0) {
                        for (GoodsCate goodsCate : page.getRecords()) {
                            if (goodsCate.getPid() == 0) {
                                GoodsCateVO goodsCateVO = new GoodsCateVO();
                                BeanUtil.copyProperties(goodsCate, goodsCateVO);
                                List<GoodsCateVO> childList = new ArrayList<GoodsCateVO>();
                                forChildList(childList, page.getRecords(), goodsCate.getId());
                                goodsCateVO.setChild(childList);
                                resultList.add(goodsCateVO);
                            }
                        }
                    }
                    if (resultList.size() > 0) {
                        JedisUtils.setObject(CacheConsts.CACHE_GOODS_CATE, resultList,
                                CacheConsts.CACHE_GOODS_CATE_EXPIRE_TIME);
                    }
                }
                return success(resultList);
            } catch (Exception e) {
                logger.error("goods.catelist() --> ", e);
            }
            return error(ResultCode.SYS_ERROR);
        }

    /**
    * 分类列表:递归循环子节点
    *
    * @param childList
    * @param dataList
    * @param pId
    */
    public void forChildList(List<GoodsCateVO> childList, List<GoodsCate> dataList, Integer pId) {
    for (GoodsCate goodsCate : dataList) {
    if (pId.equals(goodsCate.getPid())) {
    GoodsCateVO goodsCateVO = new GoodsCateVO();
    BeanUtil.copyProperties(goodsCate, goodsCateVO);
    childList.add(goodsCateVO);
    }
    }
    }

     

    mapper.xml

        <select SELECT1>
            SELECT t1.id FROM m_shop_info t1 INNER JOIN m_goods_area_info t2 ON t1.id = t2.shop_id WHERE  t1.is_enable = 1
            AND t1.is_deleted = 0
            AND t2.is_enable = 1
            AND t2.is_deleted = 0
            AND t2.area = #{area}
        </select>
    
        <select SELECT2>
            SELECT t3.goods_id FROM m_shop_goods t3 INNER JOIN ( SELECT1 ) t4 ON t3.shop_id = t4.id WHERE t3.is_enable = 1 AND t3.is_deleted = 0
        </select>
    
        <select SELECT3>
    
            SELECT t5.goods_cate_id, count( t5.goods_cate_id ) AS num FROM  m_goods_base_info t5 INNER JOIN ( SELECT2 ) t6 ON t5.id = t6.goods_id
            WHERE  t5.is_enable = 1
            AND t5.is_deleted = 0
            GROUP BY
            t5.goods_cate_id
    
        </select>
        <select id="selectIndexCateList" resultType="map"
            parameterType="com.baomidou.mybatisplus.plugins.Page">
            SELECT t7.id, t7.name, t7.logo
            FROM  m_goods_cate t7
            LEFT JOIN (SELECT3) t8 ON t7.id = t8.goods_cate_id
            WHERE
            t7.is_enable = 1
            AND t7.is_deleted = 0
            ORDER BY
            t8.num DESC,
            t7.id ASC
        </select>
  • 相关阅读:
    为什么Java中字符串是不可变的
    面试问题-使用Java线程做数学运算
    Java中静态类型检查是如何进行的
    Java是如何处理别名(aliasing)的
    Java字符串中常见的10个问题
    深入理解“HelloWorld”小程序
    往文件中按行写入数据
    HashSet vs TreeSet vs LinkedHashSet
    FileOutputStream VS FileWriter
    CentOS下添加Root权限用户(超级用户)方法
  • 原文地址:https://www.cnblogs.com/dianzan/p/11305422.html
Copyright © 2011-2022 走看看