| | |
| | | package cc.mrbird.febs.ai.service.impl; |
| | | |
| | | import cc.mrbird.febs.ai.entity.AiMemberRole; |
| | | import cc.mrbird.febs.ai.entity.AiProductCategory; |
| | | import cc.mrbird.febs.ai.enumerates.ProductCategoryLevelEnum; |
| | | import cc.mrbird.febs.ai.mapper.AiProductCategoryMapper; |
| | | import cc.mrbird.febs.ai.req.productCategory.ApiProductCategoryAllDto; |
| | | import cc.mrbird.febs.ai.req.productCategory.ApiProductCategoryHotDto; |
| | | import cc.mrbird.febs.ai.req.productCategory.ApiProductCategoryPageDto; |
| | | import cc.mrbird.febs.ai.res.productCategory.ApiProductCategoryVo; |
| | | import cc.mrbird.febs.ai.service.AiProductCategoryService; |
| | | import cc.mrbird.febs.common.entity.FebsResponse; |
| | | import cc.mrbird.febs.mall.vo.ApiActivityInfoVo; |
| | | import cn.hutool.core.collection.CollUtil; |
| | | import cn.hutool.core.util.StrUtil; |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | |
| | | } |
| | | |
| | | @Override |
| | | public FebsResponse hotV1(ApiProductCategoryHotDto dto) { |
| | | |
| | | List<ApiProductCategoryVo> list = new ArrayList<>(); |
| | | |
| | | LambdaQueryWrapper<AiProductCategory> query = Wrappers.lambdaQuery(AiProductCategory.class); |
| | | if (StrUtil.isNotEmpty(dto.getCompanyId())){ |
| | | query.eq(AiProductCategory::getCompanyId, dto.getCompanyId()); |
| | | }else{ |
| | | query.isNull(AiProductCategory::getCompanyId); |
| | | } |
| | | query.eq(AiProductCategory::getLevel, ProductCategoryLevelEnum.LEVEL_TWO.getLevel()); |
| | | query.eq(AiProductCategory::getState, 1); |
| | | query.eq(AiProductCategory::getHotState, 1); |
| | | query.orderByAsc(AiProductCategory::getSort); |
| | | List<AiProductCategory> listByQuery = this.getListByQuery(query); |
| | | if (CollUtil.isNotEmpty(listByQuery)){ |
| | | for (AiProductCategory aiProductCategory : listByQuery){ |
| | | ApiProductCategoryVo apiProductCategoryVo = new ApiProductCategoryVo(); |
| | | apiProductCategoryVo.setId(aiProductCategory.getId()); |
| | | apiProductCategoryVo.setName(aiProductCategory.getName()); |
| | | apiProductCategoryVo.setBackImg(aiProductCategory.getBackImg()); |
| | | apiProductCategoryVo.setIconImg(aiProductCategory.getIconImg()); |
| | | list.add(apiProductCategoryVo); |
| | | } |
| | | } |
| | | return new FebsResponse().success().data(list); |
| | | } |
| | | |
| | | @Override |
| | | public FebsResponse categoryList(ApiProductCategoryPageDto dto) { |
| | | // 创建分页对象,传入当前页和每页大小 |
| | | Page<ApiProductCategoryVo> page = new Page<>(dto.getPageNow(), dto.getPageSize()); |
| | |
| | | public String getDefaultProductCategoryId() { |
| | | LambdaQueryWrapper<AiProductCategory> query = Wrappers.lambdaQuery(AiProductCategory.class); |
| | | query.eq(AiProductCategory::getState, 1); |
| | | query.isNull(AiProductCategory::getCompanyId); |
| | | query.eq(AiProductCategory::getHotState, 1); |
| | | query.orderByAsc(AiProductCategory::getSort); |
| | | query.last("limit 1"); |
| | |
| | | } |
| | | |
| | | @Override |
| | | public FebsResponse allList() { |
| | | public FebsResponse allList(ApiProductCategoryAllDto dto) { |
| | | List<ApiProductCategoryVo> list = new ArrayList<>(); |
| | | LambdaQueryWrapper<AiProductCategory> query = Wrappers.lambdaQuery(AiProductCategory.class); |
| | | if (StrUtil.isNotEmpty(dto.getCompanyId())){ |
| | | query.eq(AiProductCategory::getCompanyId, dto.getCompanyId()); |
| | | }else{ |
| | | query.isNull(AiProductCategory::getCompanyId); |
| | | } |
| | | query.eq(AiProductCategory::getState, 1); |
| | | query.eq(AiProductCategory::getLevel, ProductCategoryLevelEnum.LEVEL_ONE.getLevel()); |
| | | query.orderByAsc(AiProductCategory::getSort); |