sj
2 years ago
27 changed files with 725 additions and 25 deletions
@ -0,0 +1,45 @@
|
||||
package co.yixiang.app.modules.hotList.rest; |
||||
|
||||
import cn.iocoder.yudao.framework.common.pojo.ApiResult; |
||||
import co.yixiang.annotation.AnonymousAccess; |
||||
import co.yixiang.modules.evaluation.service.YxEvaluationService; |
||||
import co.yixiang.modules.hotList.service.YxStoreHotListService; |
||||
import co.yixiang.modules.hotList.service.dto.YxStoreHotListDto; |
||||
import co.yixiang.utils.EvaluationDTO; |
||||
import co.yixiang.utils.HotListDTO; |
||||
import io.swagger.annotations.Api; |
||||
import io.swagger.annotations.ApiOperation; |
||||
import lombok.RequiredArgsConstructor; |
||||
import lombok.extern.slf4j.Slf4j; |
||||
import org.springframework.beans.factory.annotation.Autowired; |
||||
import org.springframework.web.bind.annotation.GetMapping; |
||||
import org.springframework.web.bind.annotation.RestController; |
||||
|
||||
import java.util.List; |
||||
|
||||
/** |
||||
* <p> |
||||
* 商品热榜控制器 |
||||
* </p> |
||||
* |
||||
* @author ssj |
||||
* @since 2022-10-8 |
||||
*/ |
||||
@Slf4j |
||||
@RestController |
||||
@Api(value = "商品热门榜单", tags = "商城:热门榜单") |
||||
@RequiredArgsConstructor(onConstructor = @__(@Autowired)) |
||||
public class AppStoreHotListController { |
||||
private final YxStoreHotListService yxStoreHotListService; |
||||
|
||||
|
||||
/** |
||||
* 热门榜单列表 |
||||
*/ |
||||
@AnonymousAccess |
||||
@GetMapping("/hotList") |
||||
@ApiOperation(value = "热门榜单列表",notes = "热门榜单") |
||||
public ApiResult<List<HotListDTO>> getYxStoreHotList(){ |
||||
return ApiResult.ok(yxStoreHotListService.getList()); |
||||
} |
||||
} |
@ -0,0 +1,71 @@
|
||||
/** |
||||
* Copyright (C) 2018-2020 |
||||
* All rights reserved, Designed By www.yixiang.co |
||||
* 注意: |
||||
* 本软件为www.yixiang.co开发研制,未经购买不得使用 |
||||
* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台) |
||||
* 一经发现盗用、分享等行为,将追究法律责任,后果自负 |
||||
*/ |
||||
package co.yixiang.modules.hotList.domain; |
||||
import co.yixiang.modules.product.domain.YxStoreProduct; |
||||
import com.baomidou.mybatisplus.annotation.FieldFill; |
||||
import com.baomidou.mybatisplus.annotation.TableField; |
||||
import com.baomidou.mybatisplus.annotation.TableId; |
||||
import lombok.Data; |
||||
import com.baomidou.mybatisplus.annotation.TableName; |
||||
import cn.hutool.core.bean.BeanUtil; |
||||
import cn.hutool.core.bean.copier.CopyOptions; |
||||
import javax.validation.constraints.*; |
||||
import java.sql.Timestamp; |
||||
import java.io.Serializable; |
||||
import java.util.List; |
||||
|
||||
/** |
||||
* @author ssj |
||||
* @date 2022-10-08 |
||||
*/ |
||||
@Data |
||||
@TableName("yx_store_hot_list") |
||||
public class YxStoreHotList implements Serializable { |
||||
|
||||
/** 榜单列表ID */ |
||||
@TableId |
||||
private Integer id; |
||||
|
||||
|
||||
/** 榜单名称 */ |
||||
@NotBlank |
||||
private String listName; |
||||
|
||||
|
||||
/** 排序 */ |
||||
private Integer sort; |
||||
|
||||
|
||||
/** 商品列表 */ |
||||
private String productList; |
||||
|
||||
|
||||
/** 是否显示 */ |
||||
private Integer isShow; |
||||
|
||||
|
||||
/** 添加时间 */ |
||||
@TableField(fill= FieldFill.INSERT) |
||||
private Timestamp createTime; |
||||
|
||||
|
||||
@TableField(fill= FieldFill.INSERT_UPDATE) |
||||
private Timestamp updateTime; |
||||
|
||||
|
||||
/** 删除状态 */ |
||||
private Integer isDel; |
||||
|
||||
|
||||
private Long tenantId; |
||||
|
||||
public void copy(YxStoreHotList source){ |
||||
BeanUtil.copyProperties(source,this, CopyOptions.create().setIgnoreNullValue(true)); |
||||
} |
||||
} |
@ -0,0 +1,89 @@
|
||||
/** |
||||
* Copyright (C) 2018-2020 |
||||
* All rights reserved, Designed By www.yixiang.co |
||||
* 注意: |
||||
* 本软件为www.yixiang.co开发研制,未经购买不得使用 |
||||
* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台) |
||||
* 一经发现盗用、分享等行为,将追究法律责任,后果自负 |
||||
*/ |
||||
package co.yixiang.modules.hotList.rest; |
||||
|
||||
import co.yixiang.domain.PageResult; |
||||
import co.yixiang.dozer.service.IGenerator; |
||||
import co.yixiang.logging.aop.log.Log; |
||||
import co.yixiang.modules.hotList.domain.YxStoreHotList; |
||||
import co.yixiang.modules.hotList.service.YxStoreHotListService; |
||||
import co.yixiang.modules.hotList.service.dto.YxStoreHotListDto; |
||||
import co.yixiang.modules.hotList.service.dto.YxStoreHotListQueryCriteria; |
||||
import co.yixiang.modules.hotList.service.vo.YxStoreHotListVo; |
||||
import io.swagger.annotations.Api; |
||||
import io.swagger.annotations.ApiOperation; |
||||
import lombok.AllArgsConstructor; |
||||
import org.springframework.data.domain.Pageable; |
||||
import org.springframework.http.HttpStatus; |
||||
import org.springframework.http.ResponseEntity; |
||||
import org.springframework.security.access.prepost.PreAuthorize; |
||||
import org.springframework.validation.annotation.Validated; |
||||
import org.springframework.web.bind.annotation.*; |
||||
|
||||
import javax.servlet.http.HttpServletResponse; |
||||
import java.io.IOException; |
||||
import java.util.Arrays; |
||||
/** |
||||
* @author ssj |
||||
* @date 2022-10-08 |
||||
*/ |
||||
@AllArgsConstructor |
||||
@Api(tags = "hotList管理") |
||||
@RestController |
||||
@RequestMapping("/api/yxStoreHotList") |
||||
public class YxStoreHotListController { |
||||
|
||||
private final YxStoreHotListService yxStoreHotListService; |
||||
private final IGenerator generator; |
||||
|
||||
|
||||
@Log("导出数据") |
||||
@ApiOperation("导出数据") |
||||
@GetMapping(value = "/download") |
||||
// @PreAuthorize("@el.check('admin','yxStoreHotList:list')")
|
||||
public void download(HttpServletResponse response, YxStoreHotListQueryCriteria criteria) throws IOException { |
||||
yxStoreHotListService.download(generator.convert(yxStoreHotListService.queryAll(criteria), YxStoreHotListDto.class), response); |
||||
} |
||||
|
||||
@GetMapping |
||||
@Log("查询hotList") |
||||
@ApiOperation("查询hotList") |
||||
// @PreAuthorize("@el.check('admin','yxStoreHotList:list')")
|
||||
public ResponseEntity<PageResult<YxStoreHotListVo>> getYxStoreHotLists(YxStoreHotListQueryCriteria criteria, Pageable pageable){ |
||||
return new ResponseEntity<>(yxStoreHotListService.queryAll(criteria,pageable),HttpStatus.OK); |
||||
} |
||||
|
||||
@PostMapping |
||||
@Log("新增hotList") |
||||
@ApiOperation("新增hotList") |
||||
// @PreAuthorize("@el.check('admin','yxStoreHotList:add')")
|
||||
public ResponseEntity<Object> create(@Validated @RequestBody YxStoreHotList resources){ |
||||
return new ResponseEntity<>(yxStoreHotListService.save(resources),HttpStatus.CREATED); |
||||
} |
||||
|
||||
@PutMapping |
||||
@Log("修改hotList") |
||||
@ApiOperation("修改hotList") |
||||
// @PreAuthorize("@el.check('admin','yxStoreHotList:edit')")
|
||||
public ResponseEntity<Object> update(@Validated @RequestBody YxStoreHotList resources){ |
||||
yxStoreHotListService.updateById(resources); |
||||
return new ResponseEntity<>(HttpStatus.NO_CONTENT); |
||||
} |
||||
|
||||
@Log("删除hotList") |
||||
@ApiOperation("删除hotList") |
||||
// @PreAuthorize("@el.check('admin','yxStoreHotList:del')")
|
||||
@DeleteMapping |
||||
public ResponseEntity<Object> deleteAll(@RequestBody Integer[] ids) { |
||||
Arrays.asList(ids).forEach(id->{ |
||||
yxStoreHotListService.removeById(id); |
||||
}); |
||||
return new ResponseEntity<>(HttpStatus.OK); |
||||
} |
||||
} |
@ -0,0 +1,53 @@
|
||||
/** |
||||
* Copyright (C) 2018-2020 |
||||
* All rights reserved, Designed By www.yixiang.co |
||||
* 注意: |
||||
* 本软件为www.yixiang.co开发研制,未经购买不得使用 |
||||
* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台) |
||||
* 一经发现盗用、分享等行为,将追究法律责任,后果自负 |
||||
*/ |
||||
package co.yixiang.modules.hotList.service; |
||||
|
||||
import co.yixiang.common.service.BaseService; |
||||
import co.yixiang.domain.PageResult; |
||||
import co.yixiang.modules.hotList.domain.YxStoreHotList; |
||||
import co.yixiang.modules.hotList.service.dto.YxStoreHotListDto; |
||||
import co.yixiang.modules.hotList.service.dto.YxStoreHotListQueryCriteria; |
||||
import co.yixiang.modules.hotList.service.vo.YxStoreHotListVo; |
||||
import co.yixiang.utils.HotListDTO; |
||||
import org.springframework.data.domain.Pageable; |
||||
|
||||
import javax.servlet.http.HttpServletResponse; |
||||
import java.io.IOException; |
||||
import java.util.List; |
||||
/** |
||||
* @author ssj |
||||
* @date 2022-10-08 |
||||
*/ |
||||
public interface YxStoreHotListService extends BaseService<YxStoreHotList> { |
||||
|
||||
/** |
||||
* 查询数据分页 |
||||
* @param criteria 条件 |
||||
* @param pageable 分页参数 |
||||
* @return Map<String,Object> |
||||
*/ |
||||
PageResult<YxStoreHotListVo> queryAll(YxStoreHotListQueryCriteria criteria, Pageable pageable); |
||||
|
||||
/** |
||||
* 查询所有数据不分页 |
||||
* @param criteria 条件参数 |
||||
* @return List<YxStoreHotListDto> |
||||
*/ |
||||
List<YxStoreHotList> queryAll(YxStoreHotListQueryCriteria criteria); |
||||
|
||||
/** |
||||
* 导出数据 |
||||
* @param all 待导出的数据 |
||||
* @param response / |
||||
* @throws IOException / |
||||
*/ |
||||
void download(List<YxStoreHotListDto> all, HttpServletResponse response) throws IOException; |
||||
|
||||
List<HotListDTO> getList(); |
||||
} |
@ -0,0 +1,50 @@
|
||||
/** |
||||
* Copyright (C) 2018-2020 |
||||
* All rights reserved, Designed By www.yixiang.co |
||||
* 注意: |
||||
* 本软件为www.yixiang.co开发研制,未经购买不得使用 |
||||
* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台) |
||||
* 一经发现盗用、分享等行为,将追究法律责任,后果自负 |
||||
*/ |
||||
package co.yixiang.modules.hotList.service.dto; |
||||
|
||||
import co.yixiang.modules.product.domain.YxStoreProduct; |
||||
import lombok.Data; |
||||
|
||||
import java.io.Serializable; |
||||
import java.sql.Timestamp; |
||||
import java.util.List; |
||||
|
||||
/** |
||||
* @author ssj |
||||
* @date 2022-10-08 |
||||
*/ |
||||
@Data |
||||
public class YxStoreHotListDto implements Serializable { |
||||
|
||||
/** 榜单列表ID */ |
||||
private Integer id; |
||||
|
||||
/** 榜单名称 */ |
||||
private String listName; |
||||
|
||||
/** 排序 */ |
||||
private Integer sort; |
||||
|
||||
/**商品列表*/ |
||||
private String productList; |
||||
|
||||
/** 是否显示 */ |
||||
private Integer isShow; |
||||
|
||||
/** 添加时间 */ |
||||
private Timestamp createTime; |
||||
|
||||
private Timestamp updateTime; |
||||
|
||||
/** 删除状态 */ |
||||
private Integer isDel; |
||||
|
||||
private Long tenantId; |
||||
|
||||
} |
@ -0,0 +1,19 @@
|
||||
/** |
||||
* Copyright (C) 2018-2020 |
||||
* All rights reserved, Designed By www.yixiang.co |
||||
* 注意: |
||||
* 本软件为www.yixiang.co开发研制,未经购买不得使用 |
||||
* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台) |
||||
* 一经发现盗用、分享等行为,将追究法律责任,后果自负 |
||||
*/ |
||||
package co.yixiang.modules.hotList.service.dto; |
||||
|
||||
import lombok.Data; |
||||
|
||||
/** |
||||
* @author ssj |
||||
* @date 2022-10-08 |
||||
*/ |
||||
@Data |
||||
public class YxStoreHotListQueryCriteria{ |
||||
} |
@ -0,0 +1,130 @@
|
||||
/** |
||||
* Copyright (C) 2018-2020 |
||||
* All rights reserved, Designed By www.yixiang.co |
||||
* 注意: |
||||
* 本软件为www.yixiang.co开发研制,未经购买不得使用 |
||||
* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台) |
||||
* 一经发现盗用、分享等行为,将追究法律责任,后果自负 |
||||
*/ |
||||
package co.yixiang.modules.hotList.service.impl; |
||||
|
||||
import org.springframework.beans.BeanUtils; |
||||
import cn.hutool.json.JSONUtil; |
||||
import co.yixiang.common.service.impl.BaseServiceImpl; |
||||
import co.yixiang.common.utils.QueryHelpPlus; |
||||
import co.yixiang.domain.PageResult; |
||||
import co.yixiang.dozer.service.IGenerator; |
||||
import co.yixiang.enums.ShopCommonEnum; |
||||
import co.yixiang.modules.hotList.domain.YxStoreHotList; |
||||
import co.yixiang.modules.hotList.service.YxStoreHotListService; |
||||
import co.yixiang.modules.hotList.service.dto.YxStoreHotListDto; |
||||
import co.yixiang.modules.hotList.service.dto.YxStoreHotListQueryCriteria; |
||||
import co.yixiang.modules.hotList.service.mapper.YxStoreHotListMapper; |
||||
import co.yixiang.modules.hotList.service.vo.YxStoreHotListVo; |
||||
import co.yixiang.modules.product.domain.YxStoreProduct; |
||||
import co.yixiang.modules.product.service.YxStoreProductService; |
||||
import co.yixiang.utils.FileUtil; |
||||
import co.yixiang.utils.HotListDTO; |
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
||||
import com.github.pagehelper.PageInfo; |
||||
import lombok.AllArgsConstructor; |
||||
import lombok.SneakyThrows; |
||||
import org.springframework.data.domain.Pageable; |
||||
import org.springframework.stereotype.Service; |
||||
import org.springframework.transaction.annotation.Propagation; |
||||
import org.springframework.transaction.annotation.Transactional; |
||||
|
||||
import javax.servlet.http.HttpServletResponse; |
||||
import java.io.IOException; |
||||
import java.util.ArrayList; |
||||
import java.util.LinkedHashMap; |
||||
import java.util.List; |
||||
import java.util.Map; |
||||
|
||||
/** |
||||
* @author ssj |
||||
* @date 2022-10-08 |
||||
*/ |
||||
@Service |
||||
@AllArgsConstructor |
||||
//@CacheConfig(cacheNames = "yxStoreHotList")
|
||||
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true, rollbackFor = Exception.class) |
||||
public class YxStoreHotListServiceImpl extends BaseServiceImpl<YxStoreHotListMapper, YxStoreHotList> implements YxStoreHotListService { |
||||
|
||||
private final IGenerator generator; |
||||
private final YxStoreProductService yxStoreProductService; |
||||
|
||||
|
||||
@SneakyThrows |
||||
@Override |
||||
//@Cacheable
|
||||
public PageResult<YxStoreHotListVo> queryAll(YxStoreHotListQueryCriteria criteria, Pageable pageable) { |
||||
getPage(pageable); |
||||
PageInfo<YxStoreHotList> page = new PageInfo<>(queryAll(criteria)); |
||||
// PageInfo<YxStoreHotListVo> page1 = new PageInfo<>();
|
||||
// BeanUtils.copyProperties(page,page1);
|
||||
// BeanUtilsBean.getInstance().copyProperties(page1, page);
|
||||
page.getList().forEach(hotList->{ |
||||
List<Integer> productArr = JSONUtil.toList(hotList.getProductList(), Integer.class); |
||||
List<YxStoreProduct> list1 =new ArrayList<>(); |
||||
productArr.forEach(productId->{ |
||||
LambdaQueryWrapper<YxStoreProduct> wrapper = new LambdaQueryWrapper<>(); |
||||
wrapper.eq(YxStoreProduct::getIsShow, ShopCommonEnum.SHOW_1.getValue()) |
||||
.eq(YxStoreProduct::getId, productId); |
||||
//这里需要有一个非空判断
|
||||
YxStoreProduct yxStoreProduct = yxStoreProductService.getProductInfo(Long.valueOf(productId)); |
||||
list1.add(yxStoreProduct); |
||||
}); |
||||
hotList.setProductList(JSONUtil.toJsonStr(list1)); |
||||
// hotList.setProductInfo(list1);
|
||||
}); |
||||
return generator.convertPageInfo(page, YxStoreHotListVo.class); |
||||
} |
||||
|
||||
|
||||
@Override |
||||
//@Cacheable
|
||||
public List<YxStoreHotList> queryAll(YxStoreHotListQueryCriteria criteria){ |
||||
return baseMapper.selectList(QueryHelpPlus.getPredicate(YxStoreHotList.class, criteria)); |
||||
} |
||||
|
||||
|
||||
@Override |
||||
public void download(List<YxStoreHotListDto> all, HttpServletResponse response) throws IOException { |
||||
List<Map<String, Object>> list = new ArrayList<>(); |
||||
for (YxStoreHotListDto yxStoreHotList : all) { |
||||
Map<String,Object> map = new LinkedHashMap<>(); |
||||
map.put("榜单名称", yxStoreHotList.getListName()); |
||||
map.put("排序", yxStoreHotList.getSort()); |
||||
map.put("商品列表", yxStoreHotList.getProductList()); |
||||
map.put("是否显示", yxStoreHotList.getIsShow()); |
||||
map.put("添加时间", yxStoreHotList.getCreateTime()); |
||||
map.put(" updateTime", yxStoreHotList.getUpdateTime()); |
||||
map.put("删除状态", yxStoreHotList.getIsDel()); |
||||
map.put(" tenantId", yxStoreHotList.getTenantId()); |
||||
list.add(map); |
||||
} |
||||
FileUtil.downloadExcel(list, response); |
||||
} |
||||
|
||||
@Override |
||||
public List<HotListDTO> getList() { |
||||
LambdaQueryWrapper<YxStoreHotList> wrapper = new LambdaQueryWrapper<>(); |
||||
wrapper.eq(YxStoreHotList::getIsShow, ShopCommonEnum.SHOW_1.getValue()) |
||||
.orderByAsc(YxStoreHotList::getSort); |
||||
List<HotListDTO> list = generator.convert(baseMapper.selectList(wrapper),HotListDTO.class); |
||||
list.forEach(hotListDto->{ |
||||
List<Integer> productArr = JSONUtil.toList(hotListDto.getProductList(), Integer.class); |
||||
List<YxStoreProduct> list1 =new ArrayList<>(); |
||||
productArr.forEach(productId->{ |
||||
//这里需要有一个非空判断
|
||||
YxStoreProduct yxStoreProduct = yxStoreProductService.getProductInfo(Long.valueOf(productId)); |
||||
list1.add(yxStoreProduct); |
||||
}); |
||||
hotListDto.setProductInfo(list1); |
||||
}); |
||||
return list; |
||||
} |
||||
|
||||
|
||||
} |
@ -0,0 +1,22 @@
|
||||
/** |
||||
* Copyright (C) 2018-2020 |
||||
* All rights reserved, Designed By www.yixiang.co |
||||
* 注意: |
||||
* 本软件为www.yixiang.co开发研制,未经购买不得使用 |
||||
* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台) |
||||
* 一经发现盗用、分享等行为,将追究法律责任,后果自负 |
||||
*/ |
||||
package co.yixiang.modules.hotList.service.mapper; |
||||
|
||||
import co.yixiang.common.mapper.CoreMapper; |
||||
import co.yixiang.modules.hotList.domain.YxStoreHotList; |
||||
import org.springframework.stereotype.Repository; |
||||
|
||||
/** |
||||
* @author ssj |
||||
* @date 2022-10-08 |
||||
*/ |
||||
@Repository |
||||
public interface YxStoreHotListMapper extends CoreMapper<YxStoreHotList> { |
||||
|
||||
} |
@ -0,0 +1,37 @@
|
||||
package co.yixiang.modules.hotList.service.vo; |
||||
|
||||
import lombok.Data; |
||||
|
||||
import java.io.Serializable; |
||||
import java.sql.Timestamp; |
||||
|
||||
|
||||
@Data |
||||
public class YxStoreHotListVo implements Serializable { |
||||
/** 榜单列表ID */ |
||||
private Integer id; |
||||
|
||||
/** 榜单名称 */ |
||||
private String listName; |
||||
|
||||
/** 排序 */ |
||||
private Integer sort; |
||||
|
||||
/**商品列表*/ |
||||
private String productList; |
||||
|
||||
/** 是否显示 */ |
||||
private Integer isShow; |
||||
|
||||
/** 添加时间 */ |
||||
private Timestamp createTime; |
||||
|
||||
private Timestamp updateTime; |
||||
|
||||
/** 删除状态 */ |
||||
private Integer isDel; |
||||
|
||||
private Long tenantId; |
||||
|
||||
// private List<YxStoreProduct> productInfo;
|
||||
} |
@ -0,0 +1,47 @@
|
||||
/** |
||||
* Copyright (C) 2018-2020 |
||||
* All rights reserved, Designed By www.yixiang.co |
||||
* 注意: |
||||
* 本软件为www.yixiang.co开发研制,未经购买不得使用 |
||||
* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台) |
||||
* 一经发现盗用、分享等行为,将追究法律责任,后果自负 |
||||
*/ |
||||
package co.yixiang.modules.store.vo; |
||||
import com.baomidou.mybatisplus.annotation.FieldFill; |
||||
import com.baomidou.mybatisplus.annotation.TableField; |
||||
import com.baomidou.mybatisplus.annotation.TableId; |
||||
import lombok.Data; |
||||
import com.baomidou.mybatisplus.annotation.TableName; |
||||
import cn.hutool.core.bean.BeanUtil; |
||||
import cn.hutool.core.bean.copier.CopyOptions; |
||||
import javax.validation.constraints.*; |
||||
import java.sql.Timestamp; |
||||
import java.io.Serializable; |
||||
|
||||
/** |
||||
* @author ssj |
||||
* @date 2022-09-15 |
||||
*/ |
||||
@Data |
||||
@TableName("yx_store_brand") |
||||
public class YxStoreBrandVo implements Serializable { |
||||
|
||||
/** 商品品牌表ID */ |
||||
@TableId |
||||
private Integer id; |
||||
|
||||
|
||||
/** 品牌名称 */ |
||||
@NotBlank |
||||
private String brandName; |
||||
|
||||
/** 品牌描述*/ |
||||
private String brandDescription; |
||||
|
||||
|
||||
/** 图标 */ |
||||
private String pic; |
||||
|
||||
/** 图标 */ |
||||
private String backgroundImage; |
||||
} |
@ -0,0 +1,30 @@
|
||||
package co.yixiang.utils; |
||||
|
||||
import co.yixiang.modules.product.domain.YxStoreProduct; |
||||
import com.baomidou.mybatisplus.annotation.TableId; |
||||
import lombok.Data; |
||||
|
||||
import java.io.Serializable; |
||||
import java.sql.Array; |
||||
import java.util.List; |
||||
|
||||
@Data |
||||
public class HotListDTO implements Serializable { |
||||
|
||||
private static final long serialVersionUID = 1L; |
||||
|
||||
@TableId |
||||
/** 榜单列表ID */ |
||||
private Integer id; |
||||
|
||||
/** 榜单名称 */ |
||||
private String listName; |
||||
|
||||
/**商品数组*/ |
||||
private String productList; |
||||
|
||||
// /**商品信息数组**/
|
||||
private List<YxStoreProduct> productInfo; |
||||
|
||||
|
||||
} |
Loading…
Reference in new issue