diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/SignController.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/SignController.java index 07cc83d..4177b98 100644 --- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/SignController.java +++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/SignController.java @@ -1,14 +1,80 @@ package com.bnyer.img.controller; +import com.alibaba.fastjson.JSON; import com.bnyer.common.core.web.controller.BaseController; +import com.bnyer.common.core.web.domain.AjaxResult; +import com.bnyer.common.core.web.page.TableDataInfo; +import com.bnyer.img.domain.Sign; +import com.bnyer.img.dto.SignDto; +import com.bnyer.img.dto.SignPageDto; +import com.bnyer.img.dto.StatusDto; +import com.bnyer.img.service.SignService; +import com.github.pagehelper.PageHelper; import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiParam; import lombok.extern.slf4j.Slf4j; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.List; @Api(value = "【图文平台】图片标签接口",tags = "【图文平台】图片标签接口") @RestController @RequestMapping("/img/sign") @Slf4j public class SignController extends BaseController { + + @Autowired + private SignService signService; + + //@RequiresPermissions("system:config:list") + @ApiOperation(value="查询sign分页") + @PostMapping("/page") + public TableDataInfo pageSign(@RequestBody @ApiParam("分页对象") SignPageDto dto){ + PageHelper.startPage(dto.getPageNum(), dto.getPageSize()); + List signs = signService.queryPage(dto); + return getDataTable(signs); + } + + //@RequiresPermissions("system:config:list") + @ApiOperation(value="新增sign") + @PostMapping(value = "/insert") + public AjaxResult insertSign(@Validated @RequestBody @ApiParam("sign对象") SignDto dto){ + log.debug("【图文平台后台】新增sign参数为:{}", JSON.toJSONString(dto)); + return AjaxResult.success(signService.insert(dto.extractParam())); + } + + //@RequiresPermissions("system:config:list") + @ApiOperation(value="修改sign") + @PostMapping(value = "/update") + public AjaxResult updateSign(@Validated @RequestBody @ApiParam("sign对象")SignDto dto){ + log.debug("【图文平台后台】修改sign参数为:{}", JSON.toJSONString(dto)); + return AjaxResult.success(signService.update(dto.extractParam())); + } + + //@RequiresPermissions("system:config:list") + @ApiOperation(value="删除sign") + @DeleteMapping(value = "/delete/{ids}") + public AjaxResult deleteSign(@PathVariable @ApiParam("主键ids") List ids){ + log.debug("【图文平台后台】删除sign参数为:{}", JSON.toJSONString(ids)); + return AjaxResult.success(signService.delete(ids)); + } + + //@RequiresPermissions("system:config:list") + @ApiOperation(value="查询sign详情") + @GetMapping(value = "/details/{id}") + public AjaxResult detailsSign(@PathVariable @ApiParam("主键id") Long id){ + log.debug("【图文平台后台】查询sign详情参数为:{}", id); + return AjaxResult.success(signService.queryDetails(id)); + } + + //@RequiresPermissions("system:config:list") + @ApiOperation(value="变更type显示状态") + @PostMapping(value = "/changeStatus") + public AjaxResult changeStatus(@Validated @RequestBody @ApiParam("type状态对象") StatusDto dto){ + log.debug("【图文平台后台】变更type参数为:{}", JSON.toJSONString(dto)); + return AjaxResult.success(signService.changeStatus(dto.getId(),dto.getStatus())); + } } diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/TiktokMiniController.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/TiktokMiniController.java index b32865a..c25fdfa 100644 --- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/TiktokMiniController.java +++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/TiktokMiniController.java @@ -99,14 +99,8 @@ public class TiktokMiniController extends BaseController { @PostMapping(value = "/creatorImgsPage") public TableDataInfo creatorImgsPage(@RequestBody @ApiParam("分页对象") BasePageDto dto){ PageHelper.startPage(dto.getPageNum(), dto.getPageSize()); - //List list = new ArrayList<>(); List creatorVos = creatorService.queryThreeImgCreatorList(); -// for (CreatorVo creatorVo : creatorVos) { -// if(CollectionUtil.isNotEmpty(creatorVo.getImgList())){ -// list.add(creatorVo); -// } -// } - //TODO 此处图片列表为空时,去除为空的部分分页会有BUG + //TODO 此处图片列表为空时,去除为空的部分分页会有BUG,此处改为了老的数据会优先排列,暂时解决了问题 return getDataTable(creatorVos); } diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/SignDto.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/SignDto.java new file mode 100644 index 0000000..1db0b21 --- /dev/null +++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/SignDto.java @@ -0,0 +1,29 @@ +package com.bnyer.img.dto; + +import com.bnyer.common.core.utils.bean.BeanUtils; +import com.bnyer.img.domain.Sign; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Getter; +import lombok.Setter; + +import java.io.Serializable; + + +@Getter +@Setter +@ApiModel("sign接收类") +public class SignDto implements Serializable { + + @ApiModelProperty(value="主键id") + private Long id; + + @ApiModelProperty(value="标签名称") + private String name; + + public Sign extractParam(){ + Sign sign = new Sign(); + BeanUtils.copyProperties(this,sign); + return sign; + } +} diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/SignService.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/SignService.java index 5f1d2b8..edc20a7 100644 --- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/SignService.java +++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/SignService.java @@ -1,18 +1,15 @@ package com.bnyer.img.service; -import com.bnyer.img.domain.Banner; import com.bnyer.img.domain.Sign; -import com.bnyer.img.dto.BannerPageDto; import com.bnyer.img.dto.SignPageDto; -import com.bnyer.img.vo.BannerVo; import java.util.List; public interface SignService { /** * 新增Sign - * @param sign - * @return + * @param sign 标签 + * @return - */ int insert(Sign sign); @@ -45,11 +42,11 @@ public interface SignService { Sign queryDetails(Long id); /** - * 查询小程序sign列表 + * 查询sign是否重复 * @param name 标签名字 * @return - */ - List queryList(String name); + boolean checkSign(String name); /** * 变更显示状态 diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorServiceImpl.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorServiceImpl.java index d244f14..64e64c5 100644 --- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorServiceImpl.java +++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorServiceImpl.java @@ -1,5 +1,6 @@ package com.bnyer.img.service.impl; +import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.bnyer.common.core.exception.ServiceException; @@ -32,10 +33,7 @@ import org.springframework.transaction.annotation.Transactional; import org.springframework.web.client.RestTemplate; import java.math.BigDecimal; -import java.util.Date; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.concurrent.TimeUnit; /** @@ -186,7 +184,14 @@ public class CreatorServiceImpl implements CreatorService { @Override public List queryThreeImgCreatorList() { - return creatorMapper.queryThreeImgCreatorList(); + List creatorVos = creatorMapper.queryThreeImgCreatorList(); + List list = new ArrayList<>(); + for (CreatorVo creatorVo : creatorVos) { + if(CollectionUtil.isNotEmpty(creatorVo.getImgList())){ + list.add(creatorVo); + } + } + return list; } @Override @@ -303,7 +308,14 @@ public class CreatorServiceImpl implements CreatorService { @Override public List queryHotCreatorList() { - return creatorMapper.queryHotCreatorList(); + List creatorHotVos = creatorMapper.queryHotCreatorList(); + List list = new ArrayList<>(); + for (CreatorHotVo creatorHotVo : creatorHotVos) { + if(creatorHotVo.getHotNum() > 0){ + list.add(creatorHotVo); + } + } + return list; } @Override diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/SignServiceImpl.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/SignServiceImpl.java index ef310a5..8ce4f29 100644 --- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/SignServiceImpl.java +++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/SignServiceImpl.java @@ -3,6 +3,7 @@ package com.bnyer.img.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.bnyer.common.core.exception.ServiceException; import com.bnyer.common.core.utils.StringUtils; import com.bnyer.img.domain.Banner; import com.bnyer.img.domain.Sign; @@ -24,18 +25,21 @@ import java.util.List; public class SignServiceImpl implements SignService { @Autowired private SignMapper signMapper; + @Autowired private ImgSignRelationServiceImpl imgSignRelationService; + @Override @Transactional(rollbackFor = Exception.class) public int insert(Sign sign) { - List signs = queryList(sign.getName()); - if (signs.size()<=0){ + boolean b = checkSign(sign.getName()); + if(b){ + throw new ServiceException("标签名称已存在!"); + }else{ sign.setCreateTime(new Date()); sign.setUpdateTime(new Date()); return signMapper.insert(sign); } - return 0; } @Override @@ -74,10 +78,15 @@ public class SignServiceImpl implements SignService { } @Override - public List queryList(String name) { - QueryWrapper wrapper = new QueryWrapper<>(); - wrapper.eq("name",name); - return signMapper.selectList(wrapper); + public boolean checkSign(String name) { + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(Sign::getName,name); + List signs = signMapper.selectList(wrapper); + if(signs.size() > 0){ + return true; + }else{ + return false; + } } @Override diff --git a/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/CreatorMapper.xml b/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/CreatorMapper.xml index 3237fe2..c8569af 100644 --- a/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/CreatorMapper.xml +++ b/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/CreatorMapper.xml @@ -65,7 +65,7 @@ (select sum(collection_num) from img_tiktok_img where creator_id = ic.id) as imgCollectionNum from img_creator ic where ic.is_show = '1' and ic.status = '1' - order by ic.create_time desc + order by ic.create_time asc select ic.id,ic.scan_code,ic.is_hot,ic.img, - (select sum(download_num+great_num+collection_num) from img_tiktok_img where creator_id = ic.id) as hotNum + ifnull((select sum(download_num+great_num+collection_num) from img_tiktok_img where creator_id = ic.id),0) as hotNum from img_creator ic where ic.status = '1' and ic.is_show = '1' order by hotNum desc limit 10