From f49af28c4b4933d7c7f8d00dd15e2739d251b3b3 Mon Sep 17 00:00:00 2001
From: chengkun <2500338766@qq.com>
Date: Fri, 8 Jul 2022 13:42:31 +0800
Subject: [PATCH 01/32] =?UTF-8?q?feature1.0.0-img:=E6=B7=BB=E5=8A=A0bnyer-?=
=?UTF-8?q?api-img=E6=A8=A1=E5=9D=97?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
bnyer-api/bnyer-api-img/pom.xml | 26 ++++++
.../com/bnyer/img/api/RemoteImgService.java | 30 +++++++
.../com/bnyer/img/api/domain/TiktokImg.java | 87 +++++++++++++++++++
.../bnyer/img/api/dto/TiktokImgMiniDto.java | 35 ++++++++
.../api/factory/RemoteImgFallbackFactory.java | 33 +++++++
bnyer-api/pom.xml | 1 +
.../core/constant/ServiceNameConstants.java | 7 +-
7 files changed, 218 insertions(+), 1 deletion(-)
create mode 100644 bnyer-api/bnyer-api-img/pom.xml
create mode 100644 bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/RemoteImgService.java
create mode 100644 bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/domain/TiktokImg.java
create mode 100644 bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/dto/TiktokImgMiniDto.java
create mode 100644 bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/factory/RemoteImgFallbackFactory.java
diff --git a/bnyer-api/bnyer-api-img/pom.xml b/bnyer-api/bnyer-api-img/pom.xml
new file mode 100644
index 0000000..8266a8f
--- /dev/null
+++ b/bnyer-api/bnyer-api-img/pom.xml
@@ -0,0 +1,26 @@
+
+
+
+ com.dimensionalnode
+ bnyer-api
+ 1.0.0
+
+ 4.0.0
+
+ bnyer-api-img
+
+
+ bnyer-api-img图文服务接口模块
+
+
+
+
+
+ com.dimensionalnode
+ bnyer-common-core
+
+
+
+
diff --git a/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/RemoteImgService.java b/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/RemoteImgService.java
new file mode 100644
index 0000000..6e97e57
--- /dev/null
+++ b/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/RemoteImgService.java
@@ -0,0 +1,30 @@
+package com.bnyer.img.api;
+
+import com.bnyer.common.core.constant.ServiceNameConstants;
+import com.bnyer.common.core.domain.R;
+import com.bnyer.common.core.web.domain.AjaxResult;
+import com.bnyer.img.api.dto.TiktokImgMiniDto;
+import com.bnyer.img.api.factory.RemoteImgFallbackFactory;
+import io.swagger.annotations.ApiParam;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+
+/**
+ * 图文服务
+ *
+ * @author chengkun
+ * @date 2022/7/8 11:03
+ */
+@FeignClient(contextId = "remoteImgService", value = ServiceNameConstants.IMG_SERVICE, fallbackFactory = RemoteImgFallbackFactory.class)
+public interface RemoteImgService {
+
+ /**
+ * 保存图片
+ * @param dto 图片接收类
+ * @return -
+ */
+ @PostMapping(value = "/insertTiktokImg")
+ public R insertTiktokImg(@Validated @RequestBody @ApiParam("TiktokImg对象") TiktokImgMiniDto dto);
+}
diff --git a/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/domain/TiktokImg.java b/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/domain/TiktokImg.java
new file mode 100644
index 0000000..11e8365
--- /dev/null
+++ b/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/domain/TiktokImg.java
@@ -0,0 +1,87 @@
+package com.bnyer.img.api.domain;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.*;
+
+import java.io.Serializable;
+import java.util.Date;
+
+@ApiModel("抖音图片小程序api端实体类")
+@Getter
+@Setter
+@ToString
+@AllArgsConstructor
+@NoArgsConstructor
+public class TiktokImg implements Serializable {
+ /**
+ * id
+ */
+ @ApiModelProperty(value="id")
+ private Long id;
+
+ /**
+ * 图片地址
+ */
+ @ApiModelProperty(value="图片地址")
+ private String imgUrl;
+
+ /**
+ * 艺术家id
+ */
+ @ApiModelProperty(value="艺术家id")
+ private Long creatorId;
+
+ /**
+ * 分类id
+ */
+ @ApiModelProperty(value="分类id")
+ private Long typeId;
+
+ /**
+ * 下载量
+ */
+ @ApiModelProperty(value="下载量")
+ private Integer downloadNum;
+
+ /**
+ * 点赞量
+ */
+ @ApiModelProperty(value="点赞量")
+ private Integer greatNum;
+
+ /**
+ * 收藏量
+ */
+ @ApiModelProperty(value="收藏量")
+ private Integer collectionNum;
+
+ /**
+ * 状态(0->待审核;1->审核通过)
+ */
+ @ApiModelProperty(value="状态(0->待审核;1->审核通过;2->审核拒绝)")
+ private String status;
+
+ /**
+ * 是否热门(0->冷门;1->热门)
+ */
+ @ApiModelProperty(value="是否热门(0->冷门;1->热门)")
+ private String isHot;
+
+ @ApiModelProperty(value="是否显示 (0->隐藏;1->显示)")
+ private String isShow;
+
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @ApiModelProperty(value="创建时间")
+ private Date createTime;
+
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @ApiModelProperty(value="更新时间")
+ private Date updateTime;
+
+ @ApiModelProperty(value="排序")
+ private Integer sort;
+
+ private static final long serialVersionUID = 1L;
+}
diff --git a/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/dto/TiktokImgMiniDto.java b/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/dto/TiktokImgMiniDto.java
new file mode 100644
index 0000000..848255a
--- /dev/null
+++ b/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/dto/TiktokImgMiniDto.java
@@ -0,0 +1,35 @@
+package com.bnyer.img.api.dto;
+
+import com.bnyer.common.core.utils.bean.BeanUtils;
+import com.bnyer.img.api.domain.TiktokImg;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+
+
+@Getter
+@Setter
+@ApiModel("抖音图片小程序api端接收类")
+public class TiktokImgMiniDto implements Serializable {
+
+ @ApiModelProperty(value="id")
+ private Long id;
+
+ @ApiModelProperty(value="图片地址")
+ private String imgUrl;
+
+ @ApiModelProperty(value="艺术家id")
+ private Long creatorId;
+
+ @ApiModelProperty(value="分类id")
+ private Long typeId;
+
+ public TiktokImg extractParam(){
+ TiktokImg tiktokImg = new TiktokImg();
+ BeanUtils.copyProperties(this,tiktokImg);
+ return tiktokImg;
+ }
+}
diff --git a/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/factory/RemoteImgFallbackFactory.java b/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/factory/RemoteImgFallbackFactory.java
new file mode 100644
index 0000000..d03a044
--- /dev/null
+++ b/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/factory/RemoteImgFallbackFactory.java
@@ -0,0 +1,33 @@
+package com.bnyer.img.api.factory;
+
+import com.bnyer.common.core.domain.R;
+import com.bnyer.img.api.RemoteImgService;
+import com.bnyer.img.api.dto.TiktokImgMiniDto;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.cloud.openfeign.FallbackFactory;
+import org.springframework.stereotype.Component;
+
+/**
+ * 图文服务降级处理
+ *
+ * @author penny
+ */
+@Component
+public class RemoteImgFallbackFactory implements FallbackFactory
+{
+ private static final Logger log = LoggerFactory.getLogger(RemoteImgFallbackFactory.class);
+
+
+ @Override
+ public RemoteImgService create(Throwable throwable) {
+ log.error("api图文服务调用失败:{}", throwable.getMessage());
+ return new RemoteImgService()
+ {
+ @Override
+ public R insertTiktokImg(TiktokImgMiniDto dto) {
+ return R.fail("图片保存失败:" + throwable.getMessage());
+ }
+ };
+ }
+}
diff --git a/bnyer-api/pom.xml b/bnyer-api/pom.xml
index a7e4f62..78c3b28 100644
--- a/bnyer-api/pom.xml
+++ b/bnyer-api/pom.xml
@@ -10,6 +10,7 @@
bnyer-api-system
+ bnyer-api-img
bnyer-api
diff --git a/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/constant/ServiceNameConstants.java b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/constant/ServiceNameConstants.java
index cd85ab4..dd160bb 100644
--- a/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/constant/ServiceNameConstants.java
+++ b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/constant/ServiceNameConstants.java
@@ -2,7 +2,7 @@ package com.bnyer.common.core.constant;
/**
* 服务名称
- *
+ *
* @author ruoyi
*/
public class ServiceNameConstants
@@ -21,4 +21,9 @@ public class ServiceNameConstants
* 文件服务的serviceid
*/
public static final String FILE_SERVICE = "bnyer-file";
+
+ /**
+ * 图文服务的serviceid
+ */
+ public static final String IMG_SERVICE = "bnyer-img";
}
From 027bb7ba21755cbc4220ca8b54d11f41136d7988 Mon Sep 17 00:00:00 2001
From: chengkun <2500338766@qq.com>
Date: Fri, 8 Jul 2022 13:44:22 +0800
Subject: [PATCH 02/32] =?UTF-8?q?feature1.0.0-img:=E8=A1=A5=E5=85=85bnyer-?=
=?UTF-8?q?api-img=E6=A8=A1=E5=9D=97resources=E6=A8=A1=E5=9D=97?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../src/main/java/com/bnyer/img/api/RemoteImgService.java | 1 -
.../bnyer-api-img/src/main/resources/META-INF/spring.factories | 2 ++
2 files changed, 2 insertions(+), 1 deletion(-)
create mode 100644 bnyer-api/bnyer-api-img/src/main/resources/META-INF/spring.factories
diff --git a/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/RemoteImgService.java b/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/RemoteImgService.java
index 6e97e57..ac07351 100644
--- a/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/RemoteImgService.java
+++ b/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/RemoteImgService.java
@@ -2,7 +2,6 @@ package com.bnyer.img.api;
import com.bnyer.common.core.constant.ServiceNameConstants;
import com.bnyer.common.core.domain.R;
-import com.bnyer.common.core.web.domain.AjaxResult;
import com.bnyer.img.api.dto.TiktokImgMiniDto;
import com.bnyer.img.api.factory.RemoteImgFallbackFactory;
import io.swagger.annotations.ApiParam;
diff --git a/bnyer-api/bnyer-api-img/src/main/resources/META-INF/spring.factories b/bnyer-api/bnyer-api-img/src/main/resources/META-INF/spring.factories
new file mode 100644
index 0000000..4d3de5a
--- /dev/null
+++ b/bnyer-api/bnyer-api-img/src/main/resources/META-INF/spring.factories
@@ -0,0 +1,2 @@
+org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
+ com.bnyer.img.api.factory.RemoteImgFallbackFactory
From 6d8dd1e2d7c4e7095e94bba8aa74db75375b9d26 Mon Sep 17 00:00:00 2001
From: penny <2500338766@qq.com>
Date: Sat, 9 Jul 2022 08:05:53 +0800
Subject: [PATCH 03/32] =?UTF-8?q?feature1.0.0-img:=20=E4=BC=98=E5=8C=96?=
=?UTF-8?q?=E8=89=BA=E6=9C=AF=E5=AE=B6=E7=99=BB=E5=BD=95=E6=8E=A5=E5=8F=A3?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../bnyer/img/constants/TiktokConstant.java | 15 ++
.../img/controller/CreatorController.java | 5 -
.../img/controller/CreatorMiniController.java | 2 +-
.../java/com/bnyer/img/domain/Creator.java | 19 +--
.../java/com/bnyer/img/dto/CreatorDto.java | 13 +-
.../com/bnyer/img/dto/CreatorLoginDto.java | 23 +++
.../com/bnyer/img/dto/CreatorPageDto.java | 3 -
.../com/bnyer/img/service/CreatorService.java | 7 +-
.../img/service/impl/CreatorServiceImpl.java | 141 +++++-------------
.../java/com/bnyer/img/vo/CreatorLoginVo.java | 71 +++++++++
.../com/bnyer/img/mapper/CreatorMapper.xml | 7 +-
11 files changed, 165 insertions(+), 141 deletions(-)
create mode 100644 bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorLoginDto.java
create mode 100644 bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/CreatorLoginVo.java
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/constants/TiktokConstant.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/constants/TiktokConstant.java
index f383bbd..11a342b 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/constants/TiktokConstant.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/constants/TiktokConstant.java
@@ -60,4 +60,19 @@ public class TiktokConstant {
* 调用快手授权失败
*/
public static final Integer FH_AUTH_ERROR = 105009;
+
+ /**
+ * 艺术家手机号或密码不正确
+ */
+ public static final Integer TIKTOK_CREATOR_PWD_ERROR = 105010;
+
+ /**
+ * 艺术家尚未审核
+ */
+ public static final Integer TIKTOK_CREATOR_NOT_PASS_ERROR = 105011;
+
+ /**
+ * 艺术家尚未审核
+ */
+ public static final Integer TIKTOK_CREATOR_BANED_ERROR = 105012;
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorController.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorController.java
index e7ca535..9594014 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorController.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorController.java
@@ -38,9 +38,6 @@ public class CreatorController extends BaseController {
if(StringUtils.isNotBlank(dto.getPhone())){
dto.setPhone(Sm4Util.sm4Encryption(dto.getPhone()));
}
- if(StringUtils.isNotBlank(dto.getOpenId())){
- dto.setOpenId(Sm4Util.sm4Encryption(dto.getOpenId()));
- }
PageHelper.startPage(dto.getPageNum(), dto.getPageSize());
List creators = creatorService.queryPage(dto);
if(creators.size() > 0){
@@ -49,8 +46,6 @@ public class CreatorController extends BaseController {
if(StringUtils.isNotBlank(creator.getPhone())){
creator.setPhone(Sm4Util.sm4Decrypt(creator.getPhone()));
}
- //暂时注释掉openId解密校验
- //creator.setOpenId(Sm4Util.sm4Decrypt(creator.getOpenId()));
}
}
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
index cf51840..9fd2970 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
@@ -251,7 +251,7 @@ public class CreatorMiniController extends BaseController {
//@TokenCheck
@PostMapping("/login")
@ApiOperation("小程序艺术家登录")
- public AjaxResult login(@Validated @ApiParam("艺术家数据") @RequestBody WxLoginDto param)
+ public AjaxResult login(@Validated @ApiParam("艺术家数据") @RequestBody CreatorLoginDto param)
{
log.info("小程序艺术家数据参数为:{}", JSON.toJSON(param));
return AjaxResult.success(creatorService.login(param));
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/domain/Creator.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/domain/Creator.java
index 225c036..6f9d8c9 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/domain/Creator.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/domain/Creator.java
@@ -26,11 +26,11 @@ import java.util.Date;
@AllArgsConstructor
@NoArgsConstructor
@TableName(value = "img_creator")
-public class Creator extends BaseDomain {
+public class Creator extends BaseDomain {
/**
* 主键id
*/
- @TableId(value = "id", type = IdType.INPUT)
+ @TableId(value = "id", type = IdType.AUTO)
@ApiModelProperty(value="主键id")
private Long id;
@@ -42,11 +42,11 @@ public class Creator extends BaseDomain {
private String name;
/**
- * 姓名
+ * 密码
*/
- @TableField(value = "open_id")
- @ApiModelProperty(value="微信id")
- private String openId;
+ @TableField(value = "password")
+ @ApiModelProperty(value="密码")
+ private String password;
/**
* 搜索码
@@ -111,13 +111,6 @@ public class Creator extends BaseDomain {
@ApiModelProperty(value="是否活跃(0->不活跃;1->活跃 连续10天以上更新内容)")
private String isHot;
- /**
- * 是否显示 (0->隐藏;1->显示)
- */
- @TableField(value = "is_show")
- @ApiModelProperty(value="是否显示 (0->隐藏;1->显示)")
- private String isShow;
-
/**
* 最后登录时间
*/
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorDto.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorDto.java
index df5db0c..ecb6a07 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorDto.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorDto.java
@@ -14,8 +14,9 @@ import java.io.Serializable;
@ApiModel("艺术家接收类")
public class CreatorDto implements Serializable {
- @ApiModelProperty(value="主键Id")
- private Long id;
+ @NotBlank(message = "昵称不能为空!")
+ @ApiModelProperty(value="昵称")
+ private String name;
@NotBlank(message = "搜索码不能为空!")
@ApiModelProperty(value="搜索码")
@@ -25,6 +26,14 @@ public class CreatorDto implements Serializable {
@ApiModelProperty(value="手机号")
private String phone;
+ @NotBlank(message = "密码不能为空!")
+ @ApiModelProperty(value="密码")
+ private String password;
+
+ @NotBlank(message = "头像不能为空!")
+ @ApiModelProperty(value="头像img地址")
+ private String img;
+
@ApiModelProperty(value="简介")
private String intro;
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorLoginDto.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorLoginDto.java
new file mode 100644
index 0000000..33dca23
--- /dev/null
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorLoginDto.java
@@ -0,0 +1,23 @@
+package com.bnyer.img.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+import java.io.Serializable;
+
+@Getter
+@Setter
+@ApiModel("艺术家登录入参")
+public class CreatorLoginDto implements Serializable {
+
+ @NotBlank(message = "手机号不能为空!")
+ @ApiModelProperty(value = "手机号")
+ private String phone;
+
+ @NotBlank(message = "密码不能为空!")
+ @ApiModelProperty(value = "密码")
+ private String password;
+}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorPageDto.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorPageDto.java
index 6f54590..c0957e3 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorPageDto.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorPageDto.java
@@ -16,9 +16,6 @@ public class CreatorPageDto extends BasePageDto {
@ApiModelProperty(value="昵称")
private String name;
- @ApiModelProperty(value="微信id")
- private String openId;
-
@ApiModelProperty(value="搜索码")
private String scanCode;
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorService.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorService.java
index 9d7e993..0f25f05 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorService.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorService.java
@@ -1,10 +1,7 @@
package com.bnyer.img.service;
import com.bnyer.img.domain.Creator;
-import com.bnyer.img.dto.CreatorDto;
-import com.bnyer.img.dto.CreatorPageDto;
-import com.bnyer.img.dto.VerifyCreatorDto;
-import com.bnyer.img.dto.WxLoginDto;
+import com.bnyer.img.dto.*;
import com.bnyer.img.vo.*;
import java.util.List;
@@ -98,7 +95,7 @@ public interface CreatorService {
* @param param 前端传来的参数
* @return -
*/
- Map login(WxLoginDto param);
+ Map login(CreatorLoginDto param);
/**
* 查询所有审核通过的艺术家
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 7d4ad7a..407b26a 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,6 +1,5 @@
package com.bnyer.img.service.impl;
-import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.bnyer.common.core.exception.ServiceException;
@@ -16,27 +15,30 @@ import com.bnyer.img.domain.InviteLog;
import com.bnyer.img.domain.TiktokImg;
import com.bnyer.img.domain.VerifyLog;
import com.bnyer.img.dto.CreatorDto;
+import com.bnyer.img.dto.CreatorLoginDto;
import com.bnyer.img.dto.CreatorPageDto;
import com.bnyer.img.dto.VerifyCreatorDto;
-import com.bnyer.img.dto.WxLoginDto;
import com.bnyer.img.mapper.CreatorMapper;
import com.bnyer.img.mapper.InviteLogMapper;
import com.bnyer.img.mapper.TiktokImgMapper;
import com.bnyer.img.mapper.VerifyLogMapper;
import com.bnyer.img.service.CreatorService;
-import com.bnyer.img.vo.*;
+import com.bnyer.img.vo.CreatorDetailsVo;
+import com.bnyer.img.vo.CreatorHotVo;
+import com.bnyer.img.vo.CreatorLoginVo;
+import com.bnyer.img.vo.CreatorVo;
import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.lang3.ObjectUtils;
+import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.client.RestTemplate;
-import javax.crypto.Cipher;
-import javax.crypto.spec.IvParameterSpec;
-import javax.crypto.spec.SecretKeySpec;
import java.math.BigDecimal;
-import java.util.*;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
import java.util.concurrent.TimeUnit;
/**
@@ -132,7 +134,9 @@ public class CreatorServiceImpl implements CreatorService {
throw new ServiceException("邀请码不存在,请重新编辑!",TiktokConstant.INVITE_CODE_NOT_EXIST);
}
Creator creator = new Creator();
- creator.setId(dto.getId());
+ creator.setName(dto.getName());
+ creator.setPassword(Sm4Util.sm4Encryption(dto.getPassword()));
+ creator.setImg(dto.getImg());
creator.setIntro(dto.getIntro());
creator.setScanCode(dto.getScanCode());
creator.setInviteCode(IdUtils.inviteCodeGen());
@@ -143,8 +147,9 @@ public class CreatorServiceImpl implements CreatorService {
creator.setIsShow("1");
creator.setAmt(BigDecimal.valueOf(0));
creator.setSort(0);
+ creator.setCreateTime(new Date());
creator.setUpdateTime(new Date());
- int update = creatorMapper.updateById(creator);
+ int insert = creatorMapper.insert(creator);
log.info("手机号【{}】成为艺术家成功!待审核",dto.getPhone());
//保存邀请记录
InviteLog inviteLog = new InviteLog();
@@ -157,7 +162,7 @@ public class CreatorServiceImpl implements CreatorService {
inviteLog.setSort(0);
inviteLogMapper.insert(inviteLog);
log.info("艺术家id【{}】被邀请码【{}】邀请成功!记录写入数据库完成!",creator.getId(),dto.getInviteCode());
- return update;
+ return insert;
}
@Override
@@ -267,116 +272,38 @@ public class CreatorServiceImpl implements CreatorService {
return creatorMapper.update(creator,wrapper);
}
- /**
- * 获取用户openId及sessionKey
- * @param code 登录凭证code
- * @return -
- */
- private WxSessionInfoVo getSessionInfo(String code) {
- String url = wxConfig.getSessionInfoUrl()+"?appid="+wxConfig.getAppId()+"&secret="+wxConfig.getSecret()+"&js_code="+code+"&grant_type=authorization_code";
- String forObject = restTemplate.getForObject(url, String.class);
- JSONObject sessionInfo = JSONObject.parseObject(forObject);
- if(StringUtils.isNotBlank(sessionInfo.getString("errcode"))){
- if(!sessionInfo.getString("errcode").equals(TiktokConstant.SUCCESS)){
- log.error("微信授权session接口调用失败,错误状态码为:【{}】,错误信息为:【{}】",sessionInfo.getString("errcode"),sessionInfo.getString("errmsg"));
- throw new ServiceException("微信授权session接口调用失败!",TiktokConstant.WECHAT_AUTH_ERROR);
- }
- }
- //调用成功,组装返回数据
- WxSessionInfoVo result = new WxSessionInfoVo();
- result.setSessionKey(sessionInfo.getString("session_key"));
- result.setOpenId(sessionInfo.getString("openid"));
- return result;
- }
-
- /**
- * 获取用户敏感信息
- * @param sessionKey -
- * @param encryptedData 敏感数据
- * @param iv 加密向量
- * @return -
- */
- private WxUserInfoVo getUserInfo(String sessionKey, String encryptedData, String iv){
- Base64.Decoder decoder = Base64.getDecoder();
- byte[] sessionKeyBytes = decoder.decode(sessionKey);
- byte[] ivBytes = decoder.decode(iv);
- byte[] encryptedBytes = decoder.decode(encryptedData);
-
- Cipher cipher = null;
- try {
- cipher = Cipher.getInstance("AES/CBC/PKCS5Padding");
- SecretKeySpec skeySpec = new SecretKeySpec(sessionKeyBytes, "AES");
- IvParameterSpec ivSpec = new IvParameterSpec(ivBytes);
- cipher.init(Cipher.DECRYPT_MODE, skeySpec, ivSpec);
- byte[] ret = cipher.doFinal(encryptedBytes);
- if (null != ret && ret.length > 0) {
- String result = new String(ret, "UTF-8");
- return JSONObject.parseObject(result,WxUserInfoVo.class);
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
- return null;
- }
-
- /**
- * 保存用户
- * @param creator 艺术家信息
- * @param openId 微信id
- * @param sessionKey -
- * @param encryptedData 敏感信息数据
- * @param iv 加密向量
- * @return -
- */
- private Creator saveUserInfo(Creator creator,String openId, String sessionKey, String encryptedData, String iv){
- if (ObjectUtils.isEmpty(creator)) {
- //创建用户
- creator = new Creator();
- //获取用户昵称和头像
- WxUserInfoVo userInfo = this.getUserInfo(sessionKey, encryptedData, iv);
- creator.setImg(userInfo.getAvatarUrl());
- creator.setName(userInfo.getNickName());
- creator.setOpenId(Sm4Util.sm4Encryption(openId));
- creator.setCreateTime(new Date());
- creator.setUpdateTime(new Date());
- creator.setLastLoginTime(new Date());
- creatorMapper.insert(creator);
- log.info("艺术家【{}】创建成功!", openId);
- return creator;
- }else{
- log.info("该艺术家【{}】已存在,更新登录时间",openId);
- creator.setLastLoginTime(new Date());
- creatorMapper.updateById(creator);
- return creator;
- }
- }
-
@Override
- public Map login(WxLoginDto dto) {
- WxSessionInfoVo sessionInfo = this.getSessionInfo(dto.getCode());
- //检查数据库中是否存在该openId,存在则直接设置会话状态登录;不存在则新增
+ public Map login(CreatorLoginDto dto) {
LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>();
- wrapper.eq(sessionInfo.getOpenId() != null,Creator::getOpenId,Sm4Util.sm4Encryption(sessionInfo.getOpenId()));
+ wrapper.eq(Creator::getPhone, Sm4Util.sm4Encryption(dto.getPhone()));
+ wrapper.eq(Creator::getPassword, Sm4Util.sm4Encryption(dto.getPassword()));
Creator creator = creatorMapper.selectOne(wrapper);
if(creator == null){
- //新用户,新增
- creator = this.saveUserInfo(creator,sessionInfo.getOpenId(), sessionInfo.getSessionKey(), dto.getEncryptedData(), dto.getIv());
+ throw new ServiceException("手机号或密码不正确!",TiktokConstant.TIKTOK_CREATOR_PWD_ERROR);
+ }
+ if(creator.getStatus().equals("0")){
+ throw new ServiceException("当前艺术家暂未审核,请耐心等待或联系客服!",TiktokConstant.TIKTOK_CREATOR_NOT_PASS_ERROR);
+ }
+ if(creator.getStatus().equals("2")){
+ throw new ServiceException("当前艺术家被封禁,请联系客服处理!",TiktokConstant.TIKTOK_CREATOR_BANED_ERROR);
}
- //设置会话状态
- String redisKey = RedisKeyConstant.WECHAT_CREATOR_LOGIN_KEY+Sm4Util.sm4Encryption(sessionInfo.getOpenId());
+ CreatorLoginVo creatorLoginVo = new CreatorLoginVo();
+ BeanUtils.copyProperties(creator, creatorLoginVo);
+ creatorLoginVo.setLastLoginTime(new Date());
+ //存在则设置会话状态
+ String redisKey = RedisKeyConstant.WECHAT_CREATOR_LOGIN_KEY+Sm4Util.sm4Encryption(dto.getPhone());
//存在该登录态则删除刷新
if(redisService.hasKey(redisKey)){
redisService.deleteObject(redisKey);
}
StringBuffer sb = new StringBuffer();
String randomId = IdUtils.fastSimpleUUID();
- sb.append(randomId).append("#").append(sessionInfo.getOpenId());
+ sb.append(randomId).append("#").append(Sm4Util.sm4Encryption(dto.getPhone()+randomId));
//设置登录会话
Map map = new HashMap<>(2);
map.put("token", sb.toString());
- map.put("sessionKey", sessionInfo.getSessionKey());
- map.put("userInfo",creator);
- redisService.setCacheObject(redisKey,map, 30L, TimeUnit.DAYS);
+ map.put("userInfo",creatorLoginVo);
+ redisService.setCacheObject(redisKey,map, 10L, TimeUnit.DAYS);
return map;
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/CreatorLoginVo.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/CreatorLoginVo.java
new file mode 100644
index 0000000..7032984
--- /dev/null
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/CreatorLoginVo.java
@@ -0,0 +1,71 @@
+package com.bnyer.img.vo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.util.Date;
+
+
+@Getter
+@Setter
+@ApiModel("艺术家登录响应类")
+public class CreatorLoginVo implements Serializable {
+
+ @ApiModelProperty(value="主键id")
+ private Long id;
+
+ @ApiModelProperty(value="昵称")
+ private String name;
+
+ @ApiModelProperty(value="搜索码")
+ private String scanCode;
+
+ @ApiModelProperty(value="手机号")
+ private String phone;
+
+ @ApiModelProperty(value="头像img地址")
+ private String img;
+
+ @ApiModelProperty(value="简介")
+ private String intro;
+
+ @ApiModelProperty(value="余额")
+ private BigDecimal amt;
+
+ @ApiModelProperty(value="邀请码")
+ private String inviteCode;
+
+ @ApiModelProperty(value="状态(0->待审核;1->审核通过;2->审核拒绝)")
+ private String status;
+
+ @ApiModelProperty(value="第三方平台账号详情地址")
+ private String url;
+
+ @ApiModelProperty(value="是否活跃(0->不活跃;1->活跃 连续10天以上更新内容)")
+ private String isHot;
+
+ @ApiModelProperty(value="是否显示 (0->隐藏;1->显示)")
+ private String isShow;
+
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @ApiModelProperty(value="创建时间")
+ private Date createTime;
+
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @ApiModelProperty(value="更新时间")
+ private Date updateTime;
+
+ @ApiModelProperty(value="排序")
+ private Integer sort;
+
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @ApiModelProperty(value="最后登录时间")
+ private Date lastLoginTime;
+
+ private static final long serialVersionUID = 1L;
+}
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 1079453..3237fe2 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
@@ -6,7 +6,7 @@
-
+
@@ -53,7 +53,7 @@
- id, `name`,open_id, scan_code, phone, img, intro, invite_code, url, status, is_hot, is_show, create_time,
+ id, `name`,password, scan_code, phone, img, intro, invite_code, url, status, is_hot, is_show, create_time,
update_time, sort, amt, last_login_time
@@ -79,9 +79,6 @@
and scan_code = #{params.scanCode}
-
- and open_id = #{params.openId}
-
and phone = #{params.phone}
From a73e490f8bd9c35da0374166a2adce36d3709b02 Mon Sep 17 00:00:00 2001
From: penny <2500338766@qq.com>
Date: Sat, 9 Jul 2022 20:50:17 +0800
Subject: [PATCH 04/32] =?UTF-8?q?feature1.0.0-img:=20=E4=BC=98=E5=8C=96spr?=
=?UTF-8?q?ing.factories?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../src/main/resources/META-INF/spring.factories | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/bnyer-api/bnyer-api-img/src/main/resources/META-INF/spring.factories b/bnyer-api/bnyer-api-img/src/main/resources/META-INF/spring.factories
index 4d3de5a..d9e7a5e 100644
--- a/bnyer-api/bnyer-api-img/src/main/resources/META-INF/spring.factories
+++ b/bnyer-api/bnyer-api-img/src/main/resources/META-INF/spring.factories
@@ -1,2 +1,2 @@
-org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
- com.bnyer.img.api.factory.RemoteImgFallbackFactory
+org.springframework.boot.autoconfigure.EnableAutoConfiguration = com.bnyer.img.api.factory.RemoteImgFallbackFactory
+
From dc2d7641a7e89ec40263bd87550f9aa1c74ce87e Mon Sep 17 00:00:00 2001
From: penny <2500338766@qq.com>
Date: Sat, 9 Jul 2022 22:32:41 +0800
Subject: [PATCH 05/32] =?UTF-8?q?feature1.0.0-img:=20=E4=BC=98=E5=8C=96img?=
=?UTF-8?q?=20feign=E6=9C=8D=E5=8A=A1?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../main/java/com/bnyer/img/api/RemoteImgService.java | 2 +-
bnyer-services/bnyer-file/pom.xml | 9 +++++++++
.../main/java/com/bnyer/file/BnyerFileApplication.java | 2 ++
3 files changed, 12 insertions(+), 1 deletion(-)
diff --git a/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/RemoteImgService.java b/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/RemoteImgService.java
index ac07351..7db8a5d 100644
--- a/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/RemoteImgService.java
+++ b/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/RemoteImgService.java
@@ -24,6 +24,6 @@ public interface RemoteImgService {
* @param dto 图片接收类
* @return -
*/
- @PostMapping(value = "/insertTiktokImg")
+ @PostMapping(value = "/img/mini/creator/insertTiktokImg")
public R insertTiktokImg(@Validated @RequestBody @ApiParam("TiktokImg对象") TiktokImgMiniDto dto);
}
diff --git a/bnyer-services/bnyer-file/pom.xml b/bnyer-services/bnyer-file/pom.xml
index 4ee76a5..9a75fc8 100644
--- a/bnyer-services/bnyer-file/pom.xml
+++ b/bnyer-services/bnyer-file/pom.xml
@@ -93,6 +93,15 @@
spring-mock
2.0.8
+
+ com.dimensionalnode
+ bnyer-api-img
+ 1.0.0
+
+
+ com.dimensionalnode
+ bnyer-common-security
+
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/BnyerFileApplication.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/BnyerFileApplication.java
index ef57633..a41353f 100644
--- a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/BnyerFileApplication.java
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/BnyerFileApplication.java
@@ -1,5 +1,6 @@
package com.bnyer.file;
+import com.bnyer.common.security.annotation.EnableRyFeignClients;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
@@ -11,6 +12,7 @@ import com.bnyer.common.swagger.annotation.EnableCustomSwagger2;
* @author ruoyi
*/
@EnableCustomSwagger2
+@EnableRyFeignClients
@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class })
public class BnyerFileApplication
{
From c3b3602cf597e70151a54b9cfa188ab3b4a9803c Mon Sep 17 00:00:00 2001
From: qyhdd
Date: Sat, 9 Jul 2022 22:50:27 +0800
Subject: [PATCH 06/32] =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E6=96=87=E4=BB=B6?=
=?UTF-8?q?=E4=BF=9D=E5=AD=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../bnyer/img/api/dto/TiktokImgMiniDto.java | 7 ++++
.../src/main/resources/bootstrap.yml | 2 +-
bnyer-services/bnyer-file/pom.xml | 10 +++++
.../file/controller/SysFileController.java | 26 +++++++++++--
.../com/bnyer/file/dto/FileUploadDto.java | 38 +++++++++++++++++++
.../com/bnyer/file/service/IFileService.java | 3 ++
.../file/service/impl/FileServiceImpl.java | 25 ++++++++++++
.../java/com/bnyer/file/vo/ChekFileVo.java | 3 ++
.../main/java/com/bnyer/file/vo/UploadVo.java | 9 +++++
9 files changed, 118 insertions(+), 5 deletions(-)
create mode 100644 bnyer-services/bnyer-file/src/main/java/com/bnyer/file/dto/FileUploadDto.java
create mode 100644 bnyer-services/bnyer-file/src/main/java/com/bnyer/file/vo/UploadVo.java
diff --git a/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/dto/TiktokImgMiniDto.java b/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/dto/TiktokImgMiniDto.java
index 848255a..870f465 100644
--- a/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/dto/TiktokImgMiniDto.java
+++ b/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/dto/TiktokImgMiniDto.java
@@ -27,6 +27,13 @@ public class TiktokImgMiniDto implements Serializable {
@ApiModelProperty(value="分类id")
private Long typeId;
+ /**
+ * 状态(0->待审核;1->审核通过)
+ */
+ @ApiModelProperty(value="状态(0->待审核;1->审核通过;2->审核拒绝)")
+ private String status;
+
+
public TiktokImg extractParam(){
TiktokImg tiktokImg = new TiktokImg();
BeanUtils.copyProperties(this,tiktokImg);
diff --git a/bnyer-gateway/src/main/resources/bootstrap.yml b/bnyer-gateway/src/main/resources/bootstrap.yml
index f52b854..e6b60c7 100644
--- a/bnyer-gateway/src/main/resources/bootstrap.yml
+++ b/bnyer-gateway/src/main/resources/bootstrap.yml
@@ -1,6 +1,6 @@
# Tomcat
server:
- port: 7010
+ port: 6010
# Spring
spring:
diff --git a/bnyer-services/bnyer-file/pom.xml b/bnyer-services/bnyer-file/pom.xml
index 4ee76a5..edfcb81 100644
--- a/bnyer-services/bnyer-file/pom.xml
+++ b/bnyer-services/bnyer-file/pom.xml
@@ -93,6 +93,16 @@
spring-mock
2.0.8
+
+ com.dimensionalnode
+ bnyer-api-img
+
+
+ com.dimensionalnode
+ bnyer-common-security
+
+
+
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/controller/SysFileController.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/controller/SysFileController.java
index f15f167..33666e3 100644
--- a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/controller/SysFileController.java
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/controller/SysFileController.java
@@ -1,7 +1,9 @@
package com.bnyer.file.controller;
+import cn.hutool.log.Log;
import com.bnyer.common.core.domain.R;
import com.bnyer.file.config.ImgConfig;
+import com.bnyer.file.dto.FileUploadDto;
import com.bnyer.file.service.IFileService;
import com.bnyer.file.service.IQiniuService;
import com.bnyer.file.service.MinioService;
@@ -11,12 +13,10 @@ import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.ResponseBody;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
+import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
@@ -39,6 +39,7 @@ public class SysFileController {
@Autowired
private ImgConfig imgConfig;
+
/**
* 批量上传图片
*/
@@ -108,4 +109,21 @@ public class SysFileController {
return R.ok(url);
}
+ @ApiOperation(value="图片批量检测上传保存")
+ @PostMapping("/checkUploadSave")
+ @ResponseBody
+ public R checkUploadSave(@RequestParam Long creatorId, @RequestParam Long typeId, @RequestParam ArrayList files) {
+ try {
+ FileUploadDto fileUploadDto = new FileUploadDto();
+ fileUploadDto.setFiles(files);
+ fileUploadDto.setCreatorId(creatorId);
+ fileUploadDto.setTypeId(typeId);
+ fileService.checkUploadSave(fileUploadDto);
+ } catch (Exception e) {
+ log.error("文件上传失败,原因为:【{}】", e.getMessage());
+ return R.fail("banner上传失败!");
+ }
+ return R.ok();
+ }
+
}
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/dto/FileUploadDto.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/dto/FileUploadDto.java
new file mode 100644
index 0000000..dbb439f
--- /dev/null
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/dto/FileUploadDto.java
@@ -0,0 +1,38 @@
+package com.bnyer.file.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.util.ArrayList;
+
+/**
+ * @Author qyh
+ * @Date 2022/7/9 18:24
+ * @Description
+ */
+@Getter
+@Setter
+@ApiModel("文件上传")
+public class FileUploadDto {
+
+ @ApiModelProperty(value="id")
+ private Long id;
+
+ @ApiModelProperty(value="图片地址")
+ private String imgUrl;
+
+ @ApiModelProperty(value="艺术家id")
+ private Long creatorId;
+
+ @ApiModelProperty(value="分类id")
+ private Long typeId;
+
+ @ApiModelProperty(value="状态(0->待审核;1->审核通过;2->审核拒绝)")
+ private String status;
+
+ @ApiModelProperty(value="要上传的图片")
+ private ArrayList files;
+}
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/IFileService.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/IFileService.java
index e11f7cc..d57ed55 100644
--- a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/IFileService.java
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/IFileService.java
@@ -1,5 +1,6 @@
package com.bnyer.file.service;
+import com.bnyer.file.dto.FileUploadDto;
import com.bnyer.file.vo.ChekFileVo;
import org.springframework.web.multipart.MultipartFile;
@@ -12,4 +13,6 @@ import java.util.ArrayList;
*/
public interface IFileService {
ArrayList checkImg(ArrayList multipartFiles);
+ //图片检测+图片上传+图片保存
+ void checkUploadSave(FileUploadDto fileUploadDto);
}
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/FileServiceImpl.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/FileServiceImpl.java
index 67a10a9..0394ebe 100644
--- a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/FileServiceImpl.java
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/FileServiceImpl.java
@@ -1,14 +1,20 @@
package com.bnyer.file.service.impl;
+import com.bnyer.file.dto.FileUploadDto;
import com.bnyer.file.service.IFileService;
import com.bnyer.file.service.IQiniuService;
import com.bnyer.file.service.ITikTokImage;
import com.bnyer.file.utils.ImgUtil;
import com.bnyer.file.vo.ChekFileVo;
+import com.bnyer.file.vo.TiktokImgVo;
+import com.bnyer.img.api.RemoteImgService;
+import com.bnyer.img.api.dto.TiktokImgMiniDto;
+import com.bnyer.system.api.RemoteFileService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
+import javax.annotation.Resource;
import java.util.ArrayList;
/**
@@ -22,6 +28,8 @@ public class FileServiceImpl implements IFileService {
private IQiniuService qiniuService;
@Autowired
private ITikTokImage tikTokImage;
+ @Autowired
+ private RemoteImgService remoteImgService;
@Override
public ArrayList checkImg(ArrayList multipartFiles) {
ArrayList chekFileVos = new ArrayList<>();
@@ -29,6 +37,7 @@ public class FileServiceImpl implements IFileService {
ArrayList multipartFileList = qiniuService.checkImageFormat(multipartFiles);
for (MultipartFile multipartFile : multipartFileList) {
ChekFileVo chekFileVo = new ChekFileVo();
+ chekFileVo.setFile(multipartFile);
String filename = multipartFile.getResource().getFilename();
chekFileVo.setFileName(filename);
String imageString = ImgUtil.getImageString(multipartFile);
@@ -60,4 +69,20 @@ public class FileServiceImpl implements IFileService {
}
return chekFileVos;
}
+
+ @Override
+ public void checkUploadSave(FileUploadDto fileUploadDto) {
+ //检测图片
+ for (ChekFileVo chekFileVo : checkImg(fileUploadDto.getFiles())) {
+ //图片上传
+ String imgUrl = qiniuService.userUpload(chekFileVo.getFile());
+ TiktokImgMiniDto tiktokImg = new TiktokImgMiniDto();
+ tiktokImg.setImgUrl(imgUrl);
+ tiktokImg.setStatus(chekFileVo.getStatus());
+ tiktokImg.setTypeId(fileUploadDto.getTypeId());
+ tiktokImg.setCreatorId(fileUploadDto.getCreatorId());
+ remoteImgService.insertTiktokImg(tiktokImg);
+ }
+
+ }
}
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/vo/ChekFileVo.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/vo/ChekFileVo.java
index 12f6e03..28ba930 100644
--- a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/vo/ChekFileVo.java
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/vo/ChekFileVo.java
@@ -4,6 +4,7 @@ import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
+import org.springframework.web.multipart.MultipartFile;
/**
* @Author qyh
@@ -18,4 +19,6 @@ public class ChekFileVo {
private String status;
@ApiModelProperty(value="文件名称")
private String fileName;
+ @ApiModelProperty(value = "文件")
+ private MultipartFile file;
}
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/vo/UploadVo.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/vo/UploadVo.java
new file mode 100644
index 0000000..105e70b
--- /dev/null
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/vo/UploadVo.java
@@ -0,0 +1,9 @@
+package com.bnyer.file.vo;
+
+/**
+ * @Author qyh
+ * @Date 2022/7/9 18:22
+ * @Description
+ */
+public class UploadVo {
+}
From 0b5c3b54bce3150f3ce9339751831717c5500cf9 Mon Sep 17 00:00:00 2001
From: qyhdd
Date: Sat, 9 Jul 2022 22:52:03 +0800
Subject: [PATCH 07/32] =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E6=96=87=E4=BB=B6?=
=?UTF-8?q?=E4=BF=9D=E5=AD=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../src/main/java/com/bnyer/file/BnyerFileApplication.java | 3 +++
1 file changed, 3 insertions(+)
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/BnyerFileApplication.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/BnyerFileApplication.java
index ef57633..a0617ec 100644
--- a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/BnyerFileApplication.java
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/BnyerFileApplication.java
@@ -1,9 +1,11 @@
package com.bnyer.file;
import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
import com.bnyer.common.swagger.annotation.EnableCustomSwagger2;
+import org.springframework.cloud.openfeign.EnableFeignClients;
/**
* 文件服务
@@ -12,6 +14,7 @@ import com.bnyer.common.swagger.annotation.EnableCustomSwagger2;
*/
@EnableCustomSwagger2
@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class })
+@EnableFeignClients(basePackages = "com.bnyer.img.api")
public class BnyerFileApplication
{
public static void main(String[] args)
From e8087e3409bc156679f8a7f5c4a7a7e2ddb6fb70 Mon Sep 17 00:00:00 2001
From: qyhdd
Date: Sat, 9 Jul 2022 22:53:27 +0800
Subject: [PATCH 08/32] =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E6=96=87=E4=BB=B6?=
=?UTF-8?q?=E4=BF=9D=E5=AD=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../src/main/java/com/bnyer/file/BnyerFileApplication.java | 1 -
1 file changed, 1 deletion(-)
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/BnyerFileApplication.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/BnyerFileApplication.java
index e9d38f9..1ad45cc 100644
--- a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/BnyerFileApplication.java
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/BnyerFileApplication.java
@@ -16,7 +16,6 @@ import org.springframework.cloud.openfeign.EnableFeignClients;
@EnableCustomSwagger2
@EnableRyFeignClients
@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class })
-@EnableFeignClients(basePackages = "com.bnyer.img.api")
public class BnyerFileApplication
{
public static void main(String[] args)
From 7abafa5bb27694e23f0169752d709861210ee020 Mon Sep 17 00:00:00 2001
From: qyhdd
Date: Sun, 10 Jul 2022 17:01:43 +0800
Subject: [PATCH 09/32] =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E6=96=87=E4=BB=B6?=
=?UTF-8?q?=E4=BF=9D=E5=AD=98=EF=BC=88=E5=BC=82=E6=AD=A5=EF=BC=89?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
bnyer-services/bnyer-file/pom.xml | 6 ++-
.../com/bnyer/file/BnyerFileApplication.java | 2 +
.../com/bnyer/file/config/ExecutorConfig.java | 33 ++++++++++++
.../file/controller/SysFileController.java | 17 +++++-
.../main/java/com/bnyer/file/dto/FileDto.java | 19 +++++++
.../com/bnyer/file/dto/FileUploadDto.java | 2 +-
.../com/bnyer/file/service/IFileService.java | 3 +-
.../file/service/impl/FileServiceImpl.java | 53 ++++++++++++-------
.../src/main/resources/bootstrap.yml | 2 +-
9 files changed, 113 insertions(+), 24 deletions(-)
create mode 100644 bnyer-services/bnyer-file/src/main/java/com/bnyer/file/config/ExecutorConfig.java
create mode 100644 bnyer-services/bnyer-file/src/main/java/com/bnyer/file/dto/FileDto.java
diff --git a/bnyer-services/bnyer-file/pom.xml b/bnyer-services/bnyer-file/pom.xml
index 9a75fc8..6b8458d 100644
--- a/bnyer-services/bnyer-file/pom.xml
+++ b/bnyer-services/bnyer-file/pom.xml
@@ -102,7 +102,11 @@
com.dimensionalnode
bnyer-common-security
-
+
+ org.springframework.boot
+ spring-boot-configuration-processor
+ true
+
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/BnyerFileApplication.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/BnyerFileApplication.java
index 1ad45cc..b162e1b 100644
--- a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/BnyerFileApplication.java
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/BnyerFileApplication.java
@@ -7,6 +7,7 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
import com.bnyer.common.swagger.annotation.EnableCustomSwagger2;
import org.springframework.cloud.openfeign.EnableFeignClients;
+import org.springframework.scheduling.annotation.EnableAsync;
/**
* 文件服务
@@ -15,6 +16,7 @@ import org.springframework.cloud.openfeign.EnableFeignClients;
*/
@EnableCustomSwagger2
@EnableRyFeignClients
+@EnableAsync
@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class })
public class BnyerFileApplication
{
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/config/ExecutorConfig.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/config/ExecutorConfig.java
new file mode 100644
index 0000000..cfb5c7f
--- /dev/null
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/config/ExecutorConfig.java
@@ -0,0 +1,33 @@
+package com.bnyer.file.config;
+
+import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.scheduling.annotation.EnableAsync;
+import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
+
+import java.util.concurrent.Executor;
+import java.util.concurrent.ThreadPoolExecutor;
+
+/**
+ * @Author qyh
+ * @Date 2022/7/10 15:31
+ * @Description
+ */
+@Configuration
+@EnableAsync
+public class ExecutorConfig {
+
+
+ @Bean
+ public Executor mySimpleAsync() {
+ ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
+ executor.setCorePoolSize(10);
+ executor.setMaxPoolSize(50);
+ executor.setQueueCapacity(10);
+ executor.setThreadNamePrefix("fileUpload");
+ executor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy());
+ executor.initialize();
+ return executor;
+ }
+}
\ No newline at end of file
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/controller/SysFileController.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/controller/SysFileController.java
index 33666e3..586ccc4 100644
--- a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/controller/SysFileController.java
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/controller/SysFileController.java
@@ -3,6 +3,7 @@ package com.bnyer.file.controller;
import cn.hutool.log.Log;
import com.bnyer.common.core.domain.R;
import com.bnyer.file.config.ImgConfig;
+import com.bnyer.file.dto.FileDto;
import com.bnyer.file.dto.FileUploadDto;
import com.bnyer.file.service.IFileService;
import com.bnyer.file.service.IQiniuService;
@@ -12,6 +13,7 @@ import com.bnyer.file.vo.ChekFileVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
+import org.apache.poi.util.IOUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
@@ -108,14 +110,25 @@ public class SysFileController {
}
return R.ok(url);
}
-
+ public static final String UPLOAD_PREFIX_PATH = "/opt/uploading";
@ApiOperation(value="图片批量检测上传保存")
@PostMapping("/checkUploadSave")
@ResponseBody
public R checkUploadSave(@RequestParam Long creatorId, @RequestParam Long typeId, @RequestParam ArrayList files) {
try {
+ ArrayList fileDtos = new ArrayList<>();
+ for (MultipartFile file : files) {
+ FileDto fileDto = new FileDto();
+ byte[] bytes = IOUtils.toByteArray(file.getInputStream());
+ fileDto.setBytes(bytes);
+ fileDto.setName(file.getName());
+ fileDto.setOriginalFilename(file.getOriginalFilename());
+ fileDtos.add(fileDto);
+ }
+ // 生成临时文件
+
FileUploadDto fileUploadDto = new FileUploadDto();
- fileUploadDto.setFiles(files);
+ fileUploadDto.setFiles(fileDtos);
fileUploadDto.setCreatorId(creatorId);
fileUploadDto.setTypeId(typeId);
fileService.checkUploadSave(fileUploadDto);
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/dto/FileDto.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/dto/FileDto.java
new file mode 100644
index 0000000..245240f
--- /dev/null
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/dto/FileDto.java
@@ -0,0 +1,19 @@
+package com.bnyer.file.dto;
+
+import io.swagger.annotations.ApiModel;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Author qyh
+ * @Date 2022/7/10 16:37
+ * @Description
+ */
+@Getter
+@Setter
+@ApiModel("文件信息")
+public class FileDto {
+ private byte[] bytes;
+ private String originalFilename;
+ private String name;
+}
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/dto/FileUploadDto.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/dto/FileUploadDto.java
index dbb439f..e2a8757 100644
--- a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/dto/FileUploadDto.java
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/dto/FileUploadDto.java
@@ -34,5 +34,5 @@ public class FileUploadDto {
private String status;
@ApiModelProperty(value="要上传的图片")
- private ArrayList files;
+ private ArrayList files;
}
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/IFileService.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/IFileService.java
index d57ed55..530e4e3 100644
--- a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/IFileService.java
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/IFileService.java
@@ -4,6 +4,7 @@ import com.bnyer.file.dto.FileUploadDto;
import com.bnyer.file.vo.ChekFileVo;
import org.springframework.web.multipart.MultipartFile;
+import java.io.IOException;
import java.util.ArrayList;
/**
@@ -14,5 +15,5 @@ import java.util.ArrayList;
public interface IFileService {
ArrayList checkImg(ArrayList multipartFiles);
//图片检测+图片上传+图片保存
- void checkUploadSave(FileUploadDto fileUploadDto);
+ void checkUploadSave(FileUploadDto fileUploadDto) throws IOException;
}
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/FileServiceImpl.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/FileServiceImpl.java
index 0394ebe..bd806d8 100644
--- a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/FileServiceImpl.java
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/FileServiceImpl.java
@@ -1,5 +1,6 @@
package com.bnyer.file.service.impl;
+import com.bnyer.file.dto.FileDto;
import com.bnyer.file.dto.FileUploadDto;
import com.bnyer.file.service.IFileService;
import com.bnyer.file.service.IQiniuService;
@@ -10,12 +11,19 @@ import com.bnyer.file.vo.TiktokImgVo;
import com.bnyer.img.api.RemoteImgService;
import com.bnyer.img.api.dto.TiktokImgMiniDto;
import com.bnyer.system.api.RemoteFileService;
+import org.apache.http.entity.ContentType;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.mock.web.MockMultipartFile;
+import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
+import java.io.ByteArrayInputStream;
+import java.io.IOException;
+import java.io.InputStream;
import java.util.ArrayList;
+import java.util.UUID;
/**
* @Author: Yeman
@@ -44,15 +52,15 @@ public class FileServiceImpl implements IFileService {
String checkMsg = qiniuService.checkImageContent("data:application/octet-stream;base64," +imageString);
if (checkMsg.equals("pass")){
//抖音图片检测二次检测
- if (tikTokImage.checkImageContent(multipartFile)) {
+// if (tikTokImage.checkImageContent(multipartFile)) {
//可以通过
chekFileVo.setStatus("1");
chekFileVos.add(chekFileVo);
- }else {
- //不可以通过
- chekFileVo.setStatus("2");
- chekFileVos.add(chekFileVo);
- }
+// }else {
+// //不可以通过
+// chekFileVo.setStatus("2");
+// chekFileVos.add(chekFileVo);
+// }
continue;
}
if (checkMsg.equals("review")){
@@ -71,18 +79,27 @@ public class FileServiceImpl implements IFileService {
}
@Override
- public void checkUploadSave(FileUploadDto fileUploadDto) {
- //检测图片
- for (ChekFileVo chekFileVo : checkImg(fileUploadDto.getFiles())) {
- //图片上传
- String imgUrl = qiniuService.userUpload(chekFileVo.getFile());
- TiktokImgMiniDto tiktokImg = new TiktokImgMiniDto();
- tiktokImg.setImgUrl(imgUrl);
- tiktokImg.setStatus(chekFileVo.getStatus());
- tiktokImg.setTypeId(fileUploadDto.getTypeId());
- tiktokImg.setCreatorId(fileUploadDto.getCreatorId());
- remoteImgService.insertTiktokImg(tiktokImg);
- }
+ @Async("mySimpleAsync")
+ public void checkUploadSave(FileUploadDto fileUploadDto) throws IOException {
+ ArrayList multipartFiles = new ArrayList<>();
+ for (FileDto fileDto : fileUploadDto.getFiles()) {
+ InputStream inputStream = new ByteArrayInputStream(fileDto.getBytes());
+ MultipartFile files = new MockMultipartFile(fileDto.getName(), fileDto.getOriginalFilename(), ContentType.APPLICATION_OCTET_STREAM.toString(), inputStream);
+ //System.out.println(files.getSize());
+ multipartFiles.add(files);
+ }
+ //检测图片
+ for (ChekFileVo chekFileVo : checkImg(multipartFiles)) {
+ //图片上传
+ String imgUrl = qiniuService.userUpload(chekFileVo.getFile());
+ TiktokImgMiniDto tiktokImg = new TiktokImgMiniDto();
+ tiktokImg.setImgUrl(imgUrl);
+ tiktokImg.setStatus(chekFileVo.getStatus());
+ tiktokImg.setTypeId(fileUploadDto.getTypeId());
+ tiktokImg.setCreatorId(fileUploadDto.getCreatorId());
+ remoteImgService.insertTiktokImg(tiktokImg);
+ }
}
+
}
diff --git a/bnyer-services/bnyer-file/src/main/resources/bootstrap.yml b/bnyer-services/bnyer-file/src/main/resources/bootstrap.yml
index ccea5fc..a1621ce 100644
--- a/bnyer-services/bnyer-file/src/main/resources/bootstrap.yml
+++ b/bnyer-services/bnyer-file/src/main/resources/bootstrap.yml
@@ -15,4 +15,4 @@ spring:
active: dev
servlet:
multipart:
- maxFileSize: 5MB
+ maxFileSize: 5MB
\ No newline at end of file
From 6f16aaea86a87199f20ec6654f121f1195399ff2 Mon Sep 17 00:00:00 2001
From: penny <2500338766@qq.com>
Date: Sun, 10 Jul 2022 18:26:30 +0800
Subject: [PATCH 10/32] =?UTF-8?q?feature1.0.0-img:=20=E6=96=B0=E5=A2=9E?=
=?UTF-8?q?=E6=A0=A1=E9=AA=8C=E6=96=B9=E6=B3=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../img/controller/CreatorMiniController.java | 44 ++++++++++-
.../com/bnyer/img/dto/CheckInviteCodeDto.java | 20 +++++
.../java/com/bnyer/img/dto/CheckPhoneDto.java | 20 +++++
.../com/bnyer/img/dto/CheckScanCodeDto.java | 21 ++++++
.../java/com/bnyer/img/dto/CreatorDto.java | 2 +-
.../com/bnyer/img/service/CreatorService.java | 21 ++++++
.../img/service/impl/CreatorServiceImpl.java | 73 +++++++------------
7 files changed, 153 insertions(+), 48 deletions(-)
create mode 100644 bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CheckInviteCodeDto.java
create mode 100644 bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CheckPhoneDto.java
create mode 100644 bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CheckScanCodeDto.java
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
index 9fd2970..df29efb 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
@@ -3,6 +3,7 @@ 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.img.constants.TiktokConstant;
import com.bnyer.img.domain.TiktokImg;
import com.bnyer.img.dto.*;
import com.bnyer.img.service.*;
@@ -54,10 +55,49 @@ public class CreatorMiniController extends BaseController {
private CreatorProfitService creatorProfitService;
//@TokenCheck
- @ApiOperation(value="成为艺术家")
+ @ApiOperation(value="检查手机号是否重复")
+ @PostMapping(value = "/checkPhone")
+ public AjaxResult checkPhone(@Validated @RequestBody @ApiParam("手机号对象") CheckPhoneDto dto){
+ log.debug("【艺术家小程序】检查手机号是否重复参数为:{}", JSON.toJSONString(dto));
+ boolean b = creatorService.checkPhone(dto.getPhone());
+ if(b){
+ return AjaxResult.error(TiktokConstant.BINDED_PHONE,"当前手机号已绑定艺术家,请重新编辑!");
+ }else{
+ return AjaxResult.success();
+ }
+ }
+
+ //@TokenCheck
+ @ApiOperation(value="检查搜索码是否重复")
+ @PostMapping(value = "/checkScanCode")
+ public AjaxResult checkScanCode(@Validated @RequestBody @ApiParam("搜索码对象") CheckScanCodeDto dto){
+ log.debug("【艺术家小程序】检查搜索码是否重复参数为:{}", JSON.toJSONString(dto));
+ boolean b = creatorService.checkScanCode(dto.getScanCode());
+ if(b){
+ return AjaxResult.error(TiktokConstant.SCAN_CODE_REPEAT,"搜索码重复,请重新编辑!");
+ }else{
+ return AjaxResult.success();
+ }
+ }
+
+ //@TokenCheck
+ @ApiOperation(value="检查邀请码是否存在")
+ @PostMapping(value = "/checkInviteCode")
+ public AjaxResult checkInviteCode(@Validated @RequestBody @ApiParam("邀请码对象") CheckInviteCodeDto dto){
+ log.debug("【艺术家小程序】检查邀请码是否存在参数为:{}", JSON.toJSONString(dto));
+ boolean b = creatorService.checkInviteCode(dto.getInviteCode());
+ if(b){
+ return AjaxResult.success();
+ }else{
+ return AjaxResult.error(TiktokConstant.INVITE_CODE_NOT_EXIST,"邀请码不存在,请联系客服!");
+ }
+ }
+
+ //@TokenCheck
+ @ApiOperation(value="注册艺术家")
@PostMapping(value = "/insertCreator")
public AjaxResult insertCreator(@Validated @RequestBody @ApiParam("艺术家对象") CreatorDto dto){
- log.info("【艺术家小程序】成为艺术家参数为:{}", JSON.toJSONString(dto));
+ log.info("【艺术家小程序】注册艺术家参数为:{}", JSON.toJSONString(dto));
return AjaxResult.success(creatorService.insertCreator(dto));
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CheckInviteCodeDto.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CheckInviteCodeDto.java
new file mode 100644
index 0000000..2be2fd2
--- /dev/null
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CheckInviteCodeDto.java
@@ -0,0 +1,20 @@
+package com.bnyer.img.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+import java.io.Serializable;
+
+
+@Getter
+@Setter
+@ApiModel("邀请码接收类")
+public class CheckInviteCodeDto implements Serializable {
+
+ @NotBlank(message = "邀请码不能为空!")
+ @ApiModelProperty(value="邀请码")
+ private String inviteCode;
+}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CheckPhoneDto.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CheckPhoneDto.java
new file mode 100644
index 0000000..cab16f2
--- /dev/null
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CheckPhoneDto.java
@@ -0,0 +1,20 @@
+package com.bnyer.img.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+import java.io.Serializable;
+
+
+@Getter
+@Setter
+@ApiModel("手机号接收类")
+public class CheckPhoneDto implements Serializable {
+
+ @NotBlank(message = "手机号不能为空!")
+ @ApiModelProperty(value="手机号")
+ private String phone;
+}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CheckScanCodeDto.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CheckScanCodeDto.java
new file mode 100644
index 0000000..146b9b1
--- /dev/null
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CheckScanCodeDto.java
@@ -0,0 +1,21 @@
+package com.bnyer.img.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+import java.io.Serializable;
+
+
+@Getter
+@Setter
+@ApiModel("搜索码接收类")
+public class CheckScanCodeDto implements Serializable {
+
+ @NotBlank(message = "搜索码不能为空!")
+ @ApiModelProperty(value="搜索码")
+ private String scanCode;
+}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorDto.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorDto.java
index ecb6a07..fa8eaef 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorDto.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorDto.java
@@ -30,7 +30,7 @@ public class CreatorDto implements Serializable {
@ApiModelProperty(value="密码")
private String password;
- @NotBlank(message = "头像不能为空!")
+ //@NotBlank(message = "头像不能为空!")
@ApiModelProperty(value="头像img地址")
private String img;
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorService.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorService.java
index 0f25f05..34cc14a 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorService.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorService.java
@@ -122,4 +122,25 @@ public interface CreatorService {
* @return -
*/
Map queryCreatorScanCodeById(Long id);
+
+ /**
+ * 检查用户是否绑定过手机号
+ * @param phone 手机号
+ * @return -
+ */
+ boolean checkPhone(String phone);
+
+ /**
+ * 检查搜索码是否重复
+ * @param scanCode 搜索码
+ * @return -
+ */
+ boolean checkScanCode(String scanCode);
+
+ /**
+ * 检查邀请码是否存在
+ * @param inviteCode 邀请码
+ * @return -
+ */
+ boolean checkInviteCode(String inviteCode);
}
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 407b26a..4ce856c 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
@@ -70,16 +70,10 @@ public class CreatorServiceImpl implements CreatorService {
@Autowired
private WxConfig wxConfig;
-
-
- /**
- * 检查用户是否绑定过手机号
- * @param phone 手机号
- * @return -
- */
- private boolean checkPhone(String phone){
+ @Override
+ public boolean checkPhone(String phone){
LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>();
- wrapper.eq(Creator::getPhone, phone);
+ wrapper.eq(Creator::getPhone, Sm4Util.sm4Encryption(StringUtils.trim(phone)));
List creators = creatorMapper.selectList(wrapper);
if(creators.size() > 0){
return true;
@@ -88,14 +82,10 @@ public class CreatorServiceImpl implements CreatorService {
}
}
- /**
- * 检查搜索码是否重复
- * @param scanCode 搜索码
- * @return -
- */
- private boolean checkScanCode(String scanCode){
+ @Override
+ public boolean checkScanCode(String scanCode){
LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>();
- wrapper.eq(Creator::getScanCode, scanCode);
+ wrapper.eq(Creator::getScanCode, StringUtils.trim(scanCode));
List creators = creatorMapper.selectList(wrapper);
if(creators.size() > 0){
return true;
@@ -104,44 +94,37 @@ public class CreatorServiceImpl implements CreatorService {
}
}
- /**
- * 检查邀请码是否存在
- * @param inviteCode 邀请码
- * @return -
- */
- private Creator checkInviteCode(String inviteCode){
+ @Override
+ public boolean checkInviteCode(String inviteCode){
LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>();
- wrapper.eq(Creator::getInviteCode, inviteCode);
- return creatorMapper.selectOne(wrapper);
+ wrapper.eq(Creator::getInviteCode, StringUtils.trim(inviteCode));
+ Creator creators = creatorMapper.selectOne(wrapper);
+ if(creators != null){
+ return true;
+ }else{
+ return false;
+ }
}
@Override
@Transactional(rollbackFor = Exception.class)
public int insertCreator(CreatorDto dto) {
- //检查手机号是否存在
- boolean b1 = checkPhone(Sm4Util.sm4Encryption(dto.getPhone()));
- if(b1){
- throw new ServiceException("当前手机号已绑定艺术家,请重新编辑!", TiktokConstant.BINDED_PHONE);
- }
- //检查搜索码是否重复
- boolean b = this.checkScanCode(dto.getScanCode());
- if(b){
- throw new ServiceException("搜索码重复,请重新编辑!",TiktokConstant.SCAN_CODE_REPEAT);
- }
//检查邀请码是否存在
- Creator creatorProtoType = this.checkInviteCode(dto.getInviteCode());
+ LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>();
+ wrapper.eq(Creator::getInviteCode, StringUtils.trim(dto.getInviteCode()));
+ Creator creatorProtoType = creatorMapper.selectOne(wrapper);
if(creatorProtoType == null){
throw new ServiceException("邀请码不存在,请重新编辑!",TiktokConstant.INVITE_CODE_NOT_EXIST);
}
Creator creator = new Creator();
- creator.setName(dto.getName());
- creator.setPassword(Sm4Util.sm4Encryption(dto.getPassword()));
- creator.setImg(dto.getImg());
- creator.setIntro(dto.getIntro());
- creator.setScanCode(dto.getScanCode());
+ creator.setName(StringUtils.trim(dto.getName()));
+ creator.setPassword(Sm4Util.sm4Encryption(StringUtils.trim(dto.getPassword())));
+ creator.setImg(StringUtils.trim(dto.getImg()));
+ creator.setIntro(StringUtils.trim(dto.getIntro()));
+ creator.setScanCode(StringUtils.trim(dto.getScanCode()));
creator.setInviteCode(IdUtils.inviteCodeGen());
- creator.setUrl(dto.getUrl());
- creator.setPhone(Sm4Util.sm4Encryption(dto.getPhone()));
+ creator.setUrl(StringUtils.trim(dto.getUrl()));
+ creator.setPhone(Sm4Util.sm4Encryption(StringUtils.trim(dto.getPhone())));
creator.setIsHot("0");
creator.setStatus("0");
creator.setIsShow("1");
@@ -150,10 +133,10 @@ public class CreatorServiceImpl implements CreatorService {
creator.setCreateTime(new Date());
creator.setUpdateTime(new Date());
int insert = creatorMapper.insert(creator);
- log.info("手机号【{}】成为艺术家成功!待审核",dto.getPhone());
+ log.info("手机号【{}】成为艺术家成功!待审核",StringUtils.trim(dto.getPhone()));
//保存邀请记录
InviteLog inviteLog = new InviteLog();
- inviteLog.setInviteCode(dto.getInviteCode());
+ inviteLog.setInviteCode(StringUtils.trim(dto.getInviteCode()));
inviteLog.setInvitedCreatorId(creator.getId());
inviteLog.setCreatorId(creatorProtoType.getId());
inviteLog.setCreateTime(new Date());
@@ -161,7 +144,7 @@ public class CreatorServiceImpl implements CreatorService {
inviteLog.setUpdateTime(new Date());
inviteLog.setSort(0);
inviteLogMapper.insert(inviteLog);
- log.info("艺术家id【{}】被邀请码【{}】邀请成功!记录写入数据库完成!",creator.getId(),dto.getInviteCode());
+ log.info("艺术家id【{}】被邀请码【{}】邀请成功!记录写入数据库完成!",creator.getId(),StringUtils.trim(dto.getInviteCode()));
return insert;
}
From 9c48b383165b2e53dddebbde4514660f208432ac Mon Sep 17 00:00:00 2001
From: penny <2500338766@qq.com>
Date: Sun, 10 Jul 2022 18:36:10 +0800
Subject: [PATCH 11/32] =?UTF-8?q?feature1.0.0-quan-img:=20=E8=BF=98?=
=?UTF-8?q?=E5=8E=9F=E7=BD=91=E5=85=B3port?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
bnyer-gateway/src/main/resources/bootstrap.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/bnyer-gateway/src/main/resources/bootstrap.yml b/bnyer-gateway/src/main/resources/bootstrap.yml
index e6b60c7..f52b854 100644
--- a/bnyer-gateway/src/main/resources/bootstrap.yml
+++ b/bnyer-gateway/src/main/resources/bootstrap.yml
@@ -1,6 +1,6 @@
# Tomcat
server:
- port: 6010
+ port: 7010
# Spring
spring:
From faa02762146de358cd711f20c10f11356a0ac218 Mon Sep 17 00:00:00 2001
From: penny <2500338766@qq.com>
Date: Sun, 10 Jul 2022 18:54:23 +0800
Subject: [PATCH 12/32] =?UTF-8?q?feature-img-1.0.0:=20=E8=BF=98=E5=8E=9F?=
=?UTF-8?q?=E7=BD=91=E5=85=B3port,=E5=AF=B9=E6=8E=A5=E6=96=87=E4=BB=B6?=
=?UTF-8?q?=E6=9C=8D=E5=8A=A1?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../src/main/java/com/bnyer/img/api/dto/TiktokImgMiniDto.java | 3 ---
bnyer-gateway/src/main/resources/bootstrap.yml | 2 +-
.../java/com/bnyer/img/controller/CreatorMiniController.java | 4 +---
.../src/main/java/com/bnyer/img/dto/TiktokImgMiniDto.java | 3 +++
4 files changed, 5 insertions(+), 7 deletions(-)
diff --git a/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/dto/TiktokImgMiniDto.java b/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/dto/TiktokImgMiniDto.java
index 870f465..06bcc35 100644
--- a/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/dto/TiktokImgMiniDto.java
+++ b/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/dto/TiktokImgMiniDto.java
@@ -27,9 +27,6 @@ public class TiktokImgMiniDto implements Serializable {
@ApiModelProperty(value="分类id")
private Long typeId;
- /**
- * 状态(0->待审核;1->审核通过)
- */
@ApiModelProperty(value="状态(0->待审核;1->审核通过;2->审核拒绝)")
private String status;
diff --git a/bnyer-gateway/src/main/resources/bootstrap.yml b/bnyer-gateway/src/main/resources/bootstrap.yml
index e6b60c7..f52b854 100644
--- a/bnyer-gateway/src/main/resources/bootstrap.yml
+++ b/bnyer-gateway/src/main/resources/bootstrap.yml
@@ -1,6 +1,6 @@
# Tomcat
server:
- port: 6010
+ port: 7010
# Spring
spring:
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
index df29efb..182e6ad 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
@@ -140,9 +140,7 @@ public class CreatorMiniController extends BaseController {
@PostMapping(value = "/insertTiktokImg")
public AjaxResult insertTiktokImg(@Validated @RequestBody @ApiParam("TiktokImg对象") TiktokImgMiniDto dto){
log.info("【艺术家小程序】艺术家【{}】新增图片参数为:{}",dto.getCreatorId(),JSON.toJSONString(dto));
- TiktokImg tiktokImg = dto.extractParam();
- tiktokImg.setStatus("0");
- return AjaxResult.success(tiktokImgService.insert(tiktokImg));
+ return AjaxResult.success(tiktokImgService.insert(dto.extractParam()));
}
//@TokenCheck
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/TiktokImgMiniDto.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/TiktokImgMiniDto.java
index 91ace0c..ceab1f0 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/TiktokImgMiniDto.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/TiktokImgMiniDto.java
@@ -27,6 +27,9 @@ public class TiktokImgMiniDto implements Serializable {
@ApiModelProperty(value="分类id")
private Long typeId;
+ @ApiModelProperty(value="状态(0->待审核;1->审核通过;2->审核拒绝)")
+ private String status;
+
public TiktokImg extractParam(){
TiktokImg tiktokImg = new TiktokImg();
BeanUtils.copyProperties(this,tiktokImg);
From 008317f0a6aadcb4b4c61088d33eb522f1f23e17 Mon Sep 17 00:00:00 2001
From: qyhdd
Date: Sun, 10 Jul 2022 22:59:28 +0800
Subject: [PATCH 13/32] =?UTF-8?q?=E6=A0=87=E7=AD=BEcrud+=E6=96=87=E4=BB=B6?=
=?UTF-8?q?=E5=88=A0=E9=99=A4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../file/controller/SysFileController.java | 11 +-
.../com/bnyer/file/service/IQiniuService.java | 7 ++
.../file/service/impl/QiniuServiceImpl.java | 29 ++++-
.../src/main/resources/bootstrap.yml | 2 +-
.../bnyer/img/dto/ImgSignRelationPageDto.java | 21 ++++
.../java/com/bnyer/img/dto/SignPageDto.java | 19 ++++
.../img/service/ImgSignRelationService.java | 81 ++++++++++++++
.../com/bnyer/img/service/SignService.java | 57 ++++++++++
.../impl/ImgSignRelationServiceImpl.java | 104 ++++++++++++++++++
.../img/service/impl/SignServiceImpl.java | 82 ++++++++++++++
10 files changed, 407 insertions(+), 6 deletions(-)
create mode 100644 bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/ImgSignRelationPageDto.java
create mode 100644 bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/SignPageDto.java
create mode 100644 bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/ImgSignRelationService.java
create mode 100644 bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/ImgSignRelationServiceImpl.java
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/controller/SysFileController.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/controller/SysFileController.java
index 586ccc4..4fa9161 100644
--- a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/controller/SysFileController.java
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/controller/SysFileController.java
@@ -70,7 +70,7 @@ public class SysFileController {
*/
@ApiOperation(value="批量压缩上传到七牛云")
@PostMapping("/uploadBatchCompImg")
- public R> compression(MultipartFile[] files) throws IOException {
+ public R> compression(@RequestParam MultipartFile[] files) throws IOException {
List list = new ArrayList<>();
for (MultipartFile file : files) {
MultipartFile file1 = ImgUtil.commpressPicCycle(Long.parseLong(imgConfig.getFileSize()), Double.parseDouble(imgConfig.getAccuracy()), file);
@@ -81,13 +81,20 @@ public class SysFileController {
// 上传并返回访问地址
return R.ok(list);
}
+ @ApiOperation(value="文件删除")
+ @PostMapping("/deleteFile")
+ public R deleteFile(@RequestParam String url) throws IOException {
+ String res = qiniuService.deleteFile(url);
+ // 上传并返回访问地址
+ return R.ok(res);
+ }
/**
* 批量审核
*/
@ApiOperation(value="批量图片审核")
@PostMapping("/checkBatch")
- public R> checkBatch(ArrayList files) {
+ public R> checkBatch(@RequestParam ArrayList files) {
try {
ArrayList list = fileService.checkImg(files);
// 上传并返回访问地址
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/IQiniuService.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/IQiniuService.java
index 9c845c7..9c2e9fc 100644
--- a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/IQiniuService.java
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/IQiniuService.java
@@ -20,4 +20,11 @@ public interface IQiniuService {
* @return
*/
ArrayList checkImageFormat(ArrayList multipartFiles);
+
+ /**
+ * 文件删除
+ * @param filepath 文件路径
+ * @return
+ */
+ String deleteFile(String filepath);
}
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/QiniuServiceImpl.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/QiniuServiceImpl.java
index 9425da0..b52bfa0 100644
--- a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/QiniuServiceImpl.java
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/QiniuServiceImpl.java
@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.bnyer.file.config.QiniuConfig;
import com.bnyer.file.service.IQiniuService;
+import com.bnyer.file.utils.ImgUtil;
import com.bnyer.file.utils.StringUtil;
import com.google.gson.Gson;
import com.google.gson.JsonSyntaxException;
@@ -11,6 +12,7 @@ import com.qiniu.common.QiniuException;
import com.qiniu.common.Zone;
import com.qiniu.http.Client;
import com.qiniu.http.Response;
+import com.qiniu.storage.BucketManager;
import com.qiniu.storage.Configuration;
import com.qiniu.storage.UploadManager;
import com.qiniu.storage.model.DefaultPutRet;
@@ -182,12 +184,33 @@ public class QiniuServiceImpl implements IQiniuService {
}
return null;
}
+ //删除文件
+ public String deleteFile(String filepath){
+ String[] split = filepath.split("//");
+ //构造一个带指定Region对象的配置类
+ Configuration cfg = new Configuration(zone);
+ System.out.println(split[2]);
+ String key = split[2];
+ Auth auth = Auth.create(qiniuConfig.getAccessKey(), qiniuConfig.getSecretKey());
+ BucketManager bucketManager = new BucketManager(auth, cfg);
+ try {
+ return bucketManager.delete(qiniuConfig.getBucketName(), key).toString();
+ } catch (QiniuException ex) {
+ //如果遇到异常,说明删除失败
+ System.err.println(ex.code());
+ System.err.println(ex.response.toString());
+ }
+ return "";
+ }
+ public static void main(String[] args) {
+ String url="http://rd582ra2f.hd-bkt.clouddn.com//code/duck/2022-07-10-e46bf8d168b348fd9cc8b6b39e12d3ca.png";
+ for (String s : url.split("//")) {
+ System.out.println(s);
+ }
-// public static void main(String[] args) {
-//
// String imageString = ImgUtil.getImageString("C:\\Users\\ASUS\\Documents\\WeChat Files\\wxid_vzk0z5ghy6q922\\FileStorage\\File\\2020-09\\20220608134731.png");
// JSONObject jsonObject = checkImageContent("data:application/octet-stream;base64," + imageString);
// System.out.println(JSON.parseObject(jsonObject.get("result").toString()).get("suggestion").toString());
// System.out.println(jsonObject);
-// }
+ }
}
diff --git a/bnyer-services/bnyer-file/src/main/resources/bootstrap.yml b/bnyer-services/bnyer-file/src/main/resources/bootstrap.yml
index a1621ce..687e6b7 100644
--- a/bnyer-services/bnyer-file/src/main/resources/bootstrap.yml
+++ b/bnyer-services/bnyer-file/src/main/resources/bootstrap.yml
@@ -15,4 +15,4 @@ spring:
active: dev
servlet:
multipart:
- maxFileSize: 5MB
\ No newline at end of file
+ maxFileSize: 27MB
\ No newline at end of file
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/ImgSignRelationPageDto.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/ImgSignRelationPageDto.java
new file mode 100644
index 0000000..833bd90
--- /dev/null
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/ImgSignRelationPageDto.java
@@ -0,0 +1,21 @@
+package com.bnyer.img.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+@Getter
+@Setter
+@ApiModel("imgSignRelation分页接收类")
+public class ImgSignRelationPageDto extends BasePageDto {
+
+ @ApiModelProperty(value="是否显示")
+ private String isShow;
+
+ @ApiModelProperty(value="图片id")
+ private Long imgId;
+
+ @ApiModelProperty(value="标签id")
+ private Long signId;
+}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/SignPageDto.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/SignPageDto.java
new file mode 100644
index 0000000..35b1b94
--- /dev/null
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/SignPageDto.java
@@ -0,0 +1,19 @@
+package com.bnyer.img.dto;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+@Getter
+@Setter
+@ApiModel("sign分页接收类")
+public class SignPageDto extends BasePageDto {
+
+ @ApiModelProperty(value="标签名称")
+ private String name;
+
+ @ApiModelProperty(value="是否显示")
+ private String isShow;
+}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/ImgSignRelationService.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/ImgSignRelationService.java
new file mode 100644
index 0000000..b53ba8c
--- /dev/null
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/ImgSignRelationService.java
@@ -0,0 +1,81 @@
+package com.bnyer.img.service;
+
+import com.bnyer.img.domain.ImgSignRelation;
+import com.bnyer.img.domain.Sign;
+import com.bnyer.img.dto.ImgSignRelationPageDto;
+import com.bnyer.img.dto.SignPageDto;
+
+import java.util.List;
+
+/**
+ * @Author qyh
+ * @Date 2022/7/10 21:23
+ * @Description
+ */
+public interface ImgSignRelationService {
+ /**
+ * 新增imgSignRelation
+ * @param imgSignRelation
+ * @return
+ */
+ int insert(ImgSignRelation imgSignRelation);
+
+ /**
+ * 修改imgSignRelation
+ * @param imgSignRelation -
+ * @return -
+ */
+ int update(ImgSignRelation imgSignRelation);
+
+ /**
+ * 批量删除imgSignRelation
+ * @param ids ids
+ * @return -
+ */
+ int delete(List ids);
+
+ /**
+ * 查询imgSignRelation分页
+ * @param dto 分页对象
+ * @return -
+ */
+ List queryPage(ImgSignRelationPageDto dto);
+
+ /**
+ * 查询imgSignRelation详情
+ * @param id 主键id
+ * @return -
+ */
+ ImgSignRelation queryDetails(Long id);
+
+ /**
+ * 查询小程序imgSignRelation列表
+ * @param imgId 图片id
+ * @return -
+ */
+ List queryListByImgId(String imgId);
+
+ /**
+ * 查询小程序imgSignRelation列表
+ * @param signId 标签id
+ * @return -
+ */
+ List queryListBySignId(String signId);
+
+
+ /**
+ * 变更显示状态
+ * @param id 主键id
+ * @param status 状态
+ * @return -
+ */
+ int changeStatus(Long id,String status);
+
+ /**
+ * 根据列名+条件删除
+ * @param columnName 要删除的列名
+ * @param conditions 根据什么条件删除
+ * @return
+ */
+ int deleteByColumn(String columnName,Long conditions);
+}
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 d81ade2..5f1d2b8 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,4 +1,61 @@
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
+ */
+ int insert(Sign sign);
+
+ /**
+ * 修改sign
+ * @param sign -
+ * @return -
+ */
+ int update(Sign sign);
+
+ /**
+ * 批量删除sign
+ * @param ids ids
+ * @return -
+ */
+ int delete(List ids);
+
+ /**
+ * 查询sign分页
+ * @param dto 分页对象
+ * @return -
+ */
+ List queryPage(SignPageDto dto);
+
+ /**
+ * 查询sign详情
+ * @param id 主键id
+ * @return -
+ */
+ Sign queryDetails(Long id);
+
+ /**
+ * 查询小程序sign列表
+ * @param name 标签名字
+ * @return -
+ */
+ List queryList(String name);
+
+ /**
+ * 变更显示状态
+ * @param id 主键id
+ * @param status 状态
+ * @return -
+ */
+ int changeStatus(Long id,String status);
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/ImgSignRelationServiceImpl.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/ImgSignRelationServiceImpl.java
new file mode 100644
index 0000000..f200de0
--- /dev/null
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/ImgSignRelationServiceImpl.java
@@ -0,0 +1,104 @@
+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.utils.StringUtils;
+import com.bnyer.img.domain.Banner;
+import com.bnyer.img.domain.ImgSignRelation;
+import com.bnyer.img.domain.Sign;
+import com.bnyer.img.dto.ImgSignRelationPageDto;
+import com.bnyer.img.dto.SignPageDto;
+import com.bnyer.img.mapper.ImgSignRelationMapper;
+import com.bnyer.img.service.ImgSignRelationService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.List;
+
+/**
+ * @Author qyh
+ * @Date 2022/7/10 21:22
+ * @Description
+ */
+@Service
+@Slf4j
+public class ImgSignRelationServiceImpl implements ImgSignRelationService {
+ @Autowired
+ private ImgSignRelationMapper imgSignRelationMapper;
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public int insert(ImgSignRelation imgSignRelation) {
+ return imgSignRelationMapper.insert(imgSignRelation);
+ }
+
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public int update(ImgSignRelation imgSignRelation) {
+ return imgSignRelationMapper.updateById(imgSignRelation);
+ }
+
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public int delete(List ids) {
+ return imgSignRelationMapper.deleteBatchIds(ids);
+ }
+
+ @Override
+ public List queryPage(ImgSignRelationPageDto dto) {
+ LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>();
+ if(dto.getImgId()!=null){
+ wrapper.like(ImgSignRelation::getImgId,dto.getImgId());
+ }
+ if(dto.getSignId()!=null){
+ wrapper.eq(ImgSignRelation::getSignId, dto.getSignId());
+ }
+ if(StringUtils.isNotBlank(dto.getIsShow())){
+ wrapper.eq(ImgSignRelation::getIsShow, dto.getIsShow());
+ }
+ wrapper.orderByDesc(ImgSignRelation::getSort);
+ return imgSignRelationMapper.selectList(wrapper);
+ }
+
+ @Override
+ public ImgSignRelation queryDetails(Long id) {
+ return imgSignRelationMapper.selectById(id);
+ }
+
+ @Override
+ public List queryListByImgId(String imgId) {
+ QueryWrapper wrapper = new QueryWrapper<>();
+ wrapper.eq("img_id",imgId);
+ return imgSignRelationMapper.selectList(wrapper);
+ }
+ @Override
+ public List queryListBySignId(String signId) {
+ QueryWrapper wrapper = new QueryWrapper<>();
+ wrapper.eq("sign_id",signId);
+ return imgSignRelationMapper.selectList(wrapper);
+ }
+
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public int changeStatus(Long id, String status) {
+ LambdaUpdateWrapper wrapper = new LambdaUpdateWrapper<>();
+ wrapper.eq(ImgSignRelation::getId,id);
+ ImgSignRelation imgSignRelation = new ImgSignRelation();
+ imgSignRelation.setIsShow(status);
+ return imgSignRelationMapper.update(imgSignRelation,wrapper);
+ }
+
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public int deleteByColumn(String columnName, Long conditions) {
+ QueryWrapper wrapper = new QueryWrapper<>();
+ if (conditions!=null){
+ wrapper.eq(columnName,conditions);
+ imgSignRelationMapper.delete(wrapper);
+ }
+
+ return 0;
+ }
+}
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 b11bb72..ef310a5 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
@@ -1,10 +1,92 @@
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.utils.StringUtils;
+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.mapper.SignMapper;
import com.bnyer.img.service.SignService;
+import com.bnyer.img.vo.BannerVo;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.Date;
+import java.util.List;
@Service
@Slf4j
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){
+ sign.setCreateTime(new Date());
+ sign.setUpdateTime(new Date());
+ return signMapper.insert(sign);
+ }
+ return 0;
+ }
+
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public int update(Sign sign) {
+ sign.setUpdateTime(new Date());
+ return signMapper.updateById(sign);
+ }
+
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public int delete(List ids) {
+ //先把img_sign_relation关联的数据删掉
+ for (Long id : ids) {
+ imgSignRelationService.deleteByColumn("sign_id",id);
+ }
+ return signMapper.deleteBatchIds(ids);
+ }
+
+ @Override
+ public List queryPage(SignPageDto dto) {
+ LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>();
+ if (StringUtils.isNotBlank(dto.getName())){
+ wrapper.like(Sign::getName,dto.getName());
+ }
+ if (StringUtils.isNotBlank(dto.getIsShow())){
+ wrapper.eq(Sign::getIsShow,dto.getIsShow());
+ }
+ wrapper.orderByDesc(Sign::getSort);
+ return signMapper.selectList(wrapper);
+ }
+
+ @Override
+ public Sign queryDetails(Long id) {
+ return signMapper.selectById(id);
+ }
+
+ @Override
+ public List queryList(String name) {
+ QueryWrapper wrapper = new QueryWrapper<>();
+ wrapper.eq("name",name);
+ return signMapper.selectList(wrapper);
+ }
+
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public int changeStatus(Long id, String status) {
+ LambdaUpdateWrapper wrapper = new LambdaUpdateWrapper<>();
+ wrapper.eq(Sign::getId,id);
+ Sign sign = new Sign();
+ sign.setIsShow(status);
+ return signMapper.update(sign,wrapper);
+ }
}
From 8acad4bb409aca4d0dd76209dca5d068695cffec Mon Sep 17 00:00:00 2001
From: chengkun <2500338766@qq.com>
Date: Mon, 11 Jul 2022 15:21:10 +0800
Subject: [PATCH 14/32] =?UTF-8?q?feature1.0.0-img:=E6=96=B0=E5=A2=9E?=
=?UTF-8?q?=E7=94=A8=E6=88=B7=E4=B8=8B=E8=BD=BD=E6=AC=A1=E6=95=B0=E6=8E=A7?=
=?UTF-8?q?=E5=88=B6=E6=8E=A5=E5=8F=A3=EF=BC=9B=E7=BB=9F=E8=AE=A1=E8=89=BA?=
=?UTF-8?q?=E6=9C=AF=E5=AE=B6=E5=9B=BE=E7=89=87=E5=88=86=E7=B1=BB=E6=95=B0?=
=?UTF-8?q?=E9=87=8F=E6=8E=A5=E5=8F=A3?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../bnyer/img/constants/RedisKeyConstant.java | 5 ++
.../img/controller/CreatorMiniController.java | 7 ++
.../img/controller/FhMiniController.java | 12 +++-
.../img/controller/TiktokMiniController.java | 12 +++-
.../img/controller/WxMiniController.java | 12 +++-
.../img/dto/CreatorProfitAdInsertDto.java | 10 +--
.../img/dto/CreatorProfitInviteInsertDto.java | 45 ++++++++++++
.../img/dto/checkUserCanDownloadDto.java | 27 ++++++++
.../com/bnyer/img/mapper/TiktokImgMapper.java | 8 +++
.../img/service/CreatorProfitService.java | 20 +++++-
.../bnyer/img/service/TiktokImgService.java | 8 +++
.../impl/CreatorProfitServiceImpl.java | 68 +++++++++++++++++--
.../img/service/impl/CreatorServiceImpl.java | 5 +-
.../service/impl/TiktokImgServiceImpl.java | 19 ++++++
.../bnyer/img/task/CollectionSyncTask.java | 1 +
.../CreatorProfitConfirmTypeSyncTask.java | 1 +
.../java/com/bnyer/img/task/LikeSyncTask.java | 1 +
.../bnyer/img/task/UserDownloadSyncTask.java | 29 ++++++++
.../com/bnyer/img/vo/CreatorTypeImgVo.java | 35 ++++++++++
.../com/bnyer/img/mapper/TiktokImgMapper.xml | 8 +++
20 files changed, 310 insertions(+), 23 deletions(-)
create mode 100644 bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorProfitInviteInsertDto.java
create mode 100644 bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/checkUserCanDownloadDto.java
create mode 100644 bnyer-services/bnyer-img/src/main/java/com/bnyer/img/task/UserDownloadSyncTask.java
create mode 100644 bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/CreatorTypeImgVo.java
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/constants/RedisKeyConstant.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/constants/RedisKeyConstant.java
index 0610449..72cbdf5 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/constants/RedisKeyConstant.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/constants/RedisKeyConstant.java
@@ -92,4 +92,9 @@ public class RedisKeyConstant {
* 审核收益锁键
*/
public static final String VERIFY_PROFIT_LOCK_KEY = "bnyer.img.profit.lock:";
+
+ /**
+ * 平台用户下载键
+ */
+ public static final String PLATFORM_USER_DOWNLOAD_KEY = "bnyer.img.user.download:";
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
index 182e6ad..2087bfb 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
@@ -294,4 +294,11 @@ public class CreatorMiniController extends BaseController {
log.info("小程序艺术家数据参数为:{}", JSON.toJSON(param));
return AjaxResult.success(creatorService.login(param));
}
+
+ //@TokenCheck
+ @ApiOperation(value="查询艺术家分类图片数量")
+ @GetMapping(value = "/queryCreatorTypeImgNum/{creatorId}")
+ public AjaxResult queryCreatorTypeImgNum(@PathVariable @ApiParam("艺术家id") Long creatorId){
+ return AjaxResult.success(tiktokImgService.queryCreatorTypeImgNum(creatorId));
+ }
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/FhMiniController.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/FhMiniController.java
index a494ab7..7be6d94 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/FhMiniController.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/FhMiniController.java
@@ -197,18 +197,26 @@ public class FhMiniController extends BaseController {
return getDataTable(tiktokImgVos);
}
+ //@TokenCheck
+ @ApiOperation(value="检查某平台用户当日下载次数是否超标")
+ @PostMapping(value = "/checkUserCanDownload")
+ public AjaxResult checkUserCanDownload(@Validated @RequestBody @ApiParam("检查超标对象") checkUserCanDownloadDto dto){
+ log.debug("【快手图文小程序】检查某平台用户当日下载次数是否超标参数为:{}", JSON.toJSONString(dto));
+ return AjaxResult.success(creatorProfitService.checkUserCanDownload(dto.getUserId(),dto.getPlatform(),dto.getAppType()));
+ }
+
//@TokenCheck
@ApiOperation(value="新增/更新艺术家即将入账广告收益")
@PostMapping(value = "/insertOrUpdatePreAdProfit")
public AjaxResult insertOrUpdatePreAdProfit(@Validated @RequestBody @ApiParam("即将入账广告对象") CreatorProfitAdInsertDto dto){
log.debug("【快手图文小程序】新增/更新艺术家即将入账广告收益参数为:{}", JSON.toJSONString(dto));
- return AjaxResult.success(creatorProfitService.insertCreatorProfit(dto.extractParam()));
+ return AjaxResult.success(creatorProfitService.insertCreatorProfit(dto));
}
//@TokenCheck
@ApiOperation(value="新增/更新艺术家即将入账邀请收益")
@PostMapping(value = "/insertOrUpdatePreInviteProfit")
- public AjaxResult insertOrUpdatePreInviteProfit(@Validated @RequestBody @ApiParam("即将入账邀请对象") CreatorProfitAdInsertDto dto){
+ public AjaxResult insertOrUpdatePreInviteProfit(@Validated @RequestBody @ApiParam("即将入账邀请对象") CreatorProfitInviteInsertDto dto){
log.debug("【快手图文小程序】新增/更新艺术家即将入账邀请收益参数为:{}", JSON.toJSONString(dto));
creatorProfitService.insertInvitedProfit(dto.extractParam());
return AjaxResult.success();
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 d443dc3..b32865a 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
@@ -207,18 +207,26 @@ public class TiktokMiniController extends BaseController {
return getDataTable(tiktokImgVos);
}
+ //@TokenCheck
+ @ApiOperation(value="检查某平台用户当日下载次数是否超标")
+ @PostMapping(value = "/checkUserCanDownload")
+ public AjaxResult checkUserCanDownload(@Validated @RequestBody @ApiParam("检查超标对象") checkUserCanDownloadDto dto){
+ log.debug("【抖音图文小程序】检查某平台用户当日下载次数是否超标参数为:{}", JSON.toJSONString(dto));
+ return AjaxResult.success(creatorProfitService.checkUserCanDownload(dto.getUserId(),dto.getPlatform(),dto.getAppType()));
+ }
+
//@TokenCheck
@ApiOperation(value="新增/更新艺术家即将入账广告收益")
@PostMapping(value = "/insertOrUpdatePreAdProfit")
public AjaxResult insertOrUpdatePreAdProfit(@Validated @RequestBody @ApiParam("即将入账广告对象") CreatorProfitAdInsertDto dto){
log.debug("【抖音图文小程序】新增/更新艺术家即将入账广告收益参数为:{}", JSON.toJSONString(dto));
- return AjaxResult.success(creatorProfitService.insertCreatorProfit(dto.extractParam()));
+ return AjaxResult.success(creatorProfitService.insertCreatorProfit(dto));
}
//@TokenCheck
@ApiOperation(value="新增/更新艺术家即将入账邀请收益")
@PostMapping(value = "/insertOrUpdatePreInviteProfit")
- public AjaxResult insertOrUpdatePreInviteProfit(@Validated @RequestBody @ApiParam("即将入账邀请对象") CreatorProfitAdInsertDto dto){
+ public AjaxResult insertOrUpdatePreInviteProfit(@Validated @RequestBody @ApiParam("即将入账邀请对象") CreatorProfitInviteInsertDto dto){
log.debug("【抖音图文小程序】新增/更新艺术家即将入账邀请收益参数为:{}", JSON.toJSONString(dto));
creatorProfitService.insertInvitedProfit(dto.extractParam());
return AjaxResult.success();
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/WxMiniController.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/WxMiniController.java
index 7cba15a..ed219ee 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/WxMiniController.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/WxMiniController.java
@@ -197,18 +197,26 @@ public class WxMiniController extends BaseController {
return getDataTable(tiktokImgVos);
}
+ //@TokenCheck
+ @ApiOperation(value="检查某平台用户当日下载次数是否超标")
+ @PostMapping(value = "/checkUserCanDownload")
+ public AjaxResult checkUserCanDownload(@Validated @RequestBody @ApiParam("检查超标对象") checkUserCanDownloadDto dto){
+ log.debug("【微信图文小程序】检查某平台用户当日下载次数是否超标参数为:{}", JSON.toJSONString(dto));
+ return AjaxResult.success(creatorProfitService.checkUserCanDownload(dto.getUserId(),dto.getPlatform(),dto.getAppType()));
+ }
+
//@TokenCheck
@ApiOperation(value="新增/更新艺术家即将入账广告收益")
@PostMapping(value = "/insertOrUpdatePreAdProfit")
public AjaxResult insertOrUpdatePreAdProfit(@Validated @RequestBody @ApiParam("即将入账广告对象") CreatorProfitAdInsertDto dto){
log.debug("【微信图文小程序】新增/更新艺术家即将入账广告收益参数为:{}", JSON.toJSONString(dto));
- return AjaxResult.success(creatorProfitService.insertCreatorProfit(dto.extractParam()));
+ return AjaxResult.success(creatorProfitService.insertCreatorProfit(dto));
}
//@TokenCheck
@ApiOperation(value="新增/更新艺术家即将入账邀请收益")
@PostMapping(value = "/insertOrUpdatePreInviteProfit")
- public AjaxResult insertOrUpdatePreInviteProfit(@Validated @RequestBody @ApiParam("即将入账邀请对象") CreatorProfitAdInsertDto dto){
+ public AjaxResult insertOrUpdatePreInviteProfit(@Validated @RequestBody @ApiParam("即将入账邀请对象") CreatorProfitInviteInsertDto dto){
log.debug("【微信图文小程序】新增/更新艺术家即将入账邀请收益参数为:{}", JSON.toJSONString(dto));
creatorProfitService.insertInvitedProfit(dto.extractParam());
return AjaxResult.success();
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorProfitAdInsertDto.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorProfitAdInsertDto.java
index 98251d3..8b1d41d 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorProfitAdInsertDto.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorProfitAdInsertDto.java
@@ -1,7 +1,5 @@
package com.bnyer.img.dto;
-import com.bnyer.common.core.utils.bean.BeanUtils;
-import com.bnyer.img.domain.CreatorProfit;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
@@ -37,9 +35,7 @@ public class CreatorProfitAdInsertDto implements Serializable {
@ApiModelProperty(value="应用类型(0->节点壁纸)")
private String appType;
- public CreatorProfit extractParam(){
- CreatorProfit creatorProfit = new CreatorProfit();
- BeanUtils.copyProperties(this, creatorProfit);
- return creatorProfit;
- }
+ @NotNull(message = "用户id不能为空!")
+ @ApiModelProperty(value="用户id")
+ private Long userId;
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorProfitInviteInsertDto.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorProfitInviteInsertDto.java
new file mode 100644
index 0000000..65ab180
--- /dev/null
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorProfitInviteInsertDto.java
@@ -0,0 +1,45 @@
+package com.bnyer.img.dto;
+
+import com.bnyer.common.core.utils.bean.BeanUtils;
+import com.bnyer.img.domain.CreatorProfit;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+import java.io.Serializable;
+
+
+@Getter
+@Setter
+@ApiModel("艺术家新增更新邀请收益接收类")
+public class CreatorProfitInviteInsertDto implements Serializable {
+
+ @NotNull(message = "艺术家id不能为空!")
+ @ApiModelProperty(value="艺术家id")
+ private Long creatorId;
+
+ @NotBlank(message = "收益人搜索码不能为空!")
+ @ApiModelProperty(value="收益人搜索码")
+ private String scanCode;
+
+ @NotNull(message = "图片id不能为空!")
+ @ApiModelProperty(value="图片id")
+ private Long imgId;
+
+ @NotBlank(message = "结算平台不能为空!")
+ @ApiModelProperty(value="结算平台(0->抖音;1->快手;2->微信;3->uniapp)")
+ private String platform;
+
+ @NotBlank(message = "应用类型不能为空!")
+ @ApiModelProperty(value="应用类型(0->节点壁纸)")
+ private String appType;
+
+ public CreatorProfit extractParam(){
+ CreatorProfit creatorProfit = new CreatorProfit();
+ BeanUtils.copyProperties(this, creatorProfit);
+ return creatorProfit;
+ }
+}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/checkUserCanDownloadDto.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/checkUserCanDownloadDto.java
new file mode 100644
index 0000000..1e3742c
--- /dev/null
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/checkUserCanDownloadDto.java
@@ -0,0 +1,27 @@
+package com.bnyer.img.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotNull;
+import java.io.Serializable;
+
+
+@Getter
+@Setter
+@ApiModel("检查用户下载次数接收类")
+public class checkUserCanDownloadDto implements Serializable {
+
+ @ApiModelProperty(value="用户id")
+ private Long userId;
+
+ @NotNull(message = "平台不能为空!")
+ @ApiModelProperty(value="平台")
+ private String platform;
+
+ @NotNull(message = "应用不能为空!")
+ @ApiModelProperty(value="应用")
+ private String appType;
+}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/TiktokImgMapper.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/TiktokImgMapper.java
index d61fd4d..adf13ca 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/TiktokImgMapper.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/TiktokImgMapper.java
@@ -60,4 +60,12 @@ public interface TiktokImgMapper extends BaseMapper {
* @return -
*/
List queryImgsByScanCodeAndTypeId(@Param("scanCode") String scanCode,@Param("typeId") Long typeId);
+
+ /**
+ * 查询艺术家分类图片数量
+ * @param typeId 类型id
+ * @param creatorId 艺术家id
+ * @return -
+ */
+ Integer queryCreatorTypeImgNum(@Param("typeId") Long typeId,@Param("creatorId") Long creatorId);
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorProfitService.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorProfitService.java
index bc9cc56..10569fc 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorProfitService.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorProfitService.java
@@ -1,6 +1,7 @@
package com.bnyer.img.service;
import com.bnyer.img.domain.CreatorProfit;
+import com.bnyer.img.dto.CreatorProfitAdInsertDto;
import com.bnyer.img.dto.CreatorProfitPageDto;
import com.bnyer.img.dto.ProfitInOrEndDto;
import com.bnyer.img.vo.*;
@@ -23,10 +24,10 @@ public interface CreatorProfitService {
/**
* 新增或更新广告收益记录
- * @param creatorProfit 广告收益参数
+ * @param params 广告收益参数
* @return -
*/
- int insertCreatorProfit(CreatorProfit creatorProfit);
+ int insertCreatorProfit(CreatorProfitAdInsertDto params);
/**
* 新增或更新邀请收益
@@ -90,6 +91,11 @@ public interface CreatorProfitService {
*/
void batchUpdateConfirmType();
+ /**
+ * 批量删除昨日用户下载次数
+ */
+ void batchDeleteUserDownloadNum();
+
/**
* 小程序查询收益信息
@@ -169,6 +175,16 @@ public interface CreatorProfitService {
/**
* 批量更新收益单状态为转入钱包
* @param list 订单列表
+ * @return -
*/
int batchUpdate(List list);
+
+ /**
+ * 检查某平台用户当日下载次数是否超标
+ * @param userId 用户id
+ * @param platform 平台
+ * @param appType 应用
+ * @return -
+ */
+ boolean checkUserCanDownload(Long userId,String platform,String appType);
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/TiktokImgService.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/TiktokImgService.java
index 18b54d0..361f0b4 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/TiktokImgService.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/TiktokImgService.java
@@ -2,6 +2,7 @@ package com.bnyer.img.service;
import com.bnyer.img.domain.TiktokImg;
import com.bnyer.img.dto.TiktokImgPageDto;
+import com.bnyer.img.vo.CreatorTypeImgVo;
import com.bnyer.img.vo.TiktokImgVo;
import java.util.List;
@@ -115,4 +116,11 @@ public interface TiktokImgService {
* @return -
*/
List queryImgsByScanCodeAndTypeId(String scanCode,Long typeId);
+
+ /**
+ * 查询艺术家分类图片数量
+ * @param creatorId 艺术家id
+ * @return -
+ */
+ CreatorTypeImgVo queryCreatorTypeImgNum(Long creatorId);
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorProfitServiceImpl.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorProfitServiceImpl.java
index 5ffe257..8f6541e 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorProfitServiceImpl.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorProfitServiceImpl.java
@@ -5,8 +5,10 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.bnyer.common.redis.service.RedisService;
import com.bnyer.common.redis.service.RedissonService;
+import com.bnyer.img.constants.RedisKeyConstant;
import com.bnyer.img.domain.CreatorProfit;
import com.bnyer.img.domain.InviteLog;
+import com.bnyer.img.dto.CreatorProfitAdInsertDto;
import com.bnyer.img.dto.CreatorProfitPageDto;
import com.bnyer.img.dto.ProfitInOrEndDto;
import com.bnyer.img.mapper.CreatorProfitMapper;
@@ -54,16 +56,33 @@ public class CreatorProfitServiceImpl implements CreatorProfitService {
}
}
+ /**
+ * 写入下载次数
+ * @param appType 应用
+ * @param platform 平台
+ * @param userId 用户id
+ */
+ private void writePlatformUserDownloadNum(String appType,String platform,Long userId){
+ SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
+ String date = df.format(new Date());
+ String hashKey = appType+":"+platform+":"+userId;
+ log.info("日期【{}】应用【{}】平台【{}】用户【{}】下载数+1",date,appType,platform,userId);
+ String redisKey = RedisKeyConstant.PLATFORM_USER_DOWNLOAD_KEY + date;
+ redisService.hashIncr(redisKey, hashKey, 1);
+ }
+
@Override
@Transactional(rollbackFor = Exception.class)
- public int insertCreatorProfit(CreatorProfit creatorProfit) {
+ public int insertCreatorProfit(CreatorProfitAdInsertDto params) {
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
long times = System.currentTimeMillis();
String date = format.format(times);
- String mark = creatorProfit.getCreatorId().toString() + creatorProfit.getImgId().toString() + creatorProfit.getAppType() + creatorProfit.getPlatform() +
+ String mark = params.getCreatorId().toString() + params.getImgId().toString() + params.getAppType() + params.getPlatform() +
"0" + date.replace("-", "");
//缓存中下载总数+1
- tiktokImgService.writeDownloadTotalNum(creatorProfit.getAppType(), creatorProfit.getPlatform());
+ tiktokImgService.writeDownloadTotalNum(params.getAppType(), params.getPlatform());
+ //redis累计平台用户当天下载次数,12.00后过期
+ writePlatformUserDownloadNum(params.getAppType(), params.getPlatform(), params.getUserId());
//检查收益表是否存在广告记录,存在则更新次数
boolean b = this.checkCreatorProfitExist(mark);
if (b) {
@@ -72,6 +91,12 @@ public class CreatorProfitServiceImpl implements CreatorProfitService {
return update;
}
//不存在则新增广告记录
+ CreatorProfit creatorProfit = new CreatorProfit();
+ creatorProfit.setCreatorId(params.getCreatorId());
+ creatorProfit.setScanCode(params.getScanCode());
+ creatorProfit.setImgId(params.getImgId());
+ creatorProfit.setPlatform(params.getPlatform());
+ creatorProfit.setAppType(params.getAppType());
creatorProfit.setCreateTime(new Date());
creatorProfit.setUpdateTime(new Date());
creatorProfit.setType("0");
@@ -81,7 +106,7 @@ public class CreatorProfitServiceImpl implements CreatorProfitService {
creatorProfit.setDownloadNum(1);
creatorProfit.setMark(mark);
//根据平台生成订单号
- switch (creatorProfit.getPlatform()) {
+ switch (params.getPlatform()) {
case "0":
creatorProfit.setOrderNo("DY" + IdUtil.getSnowflakeNextIdStr());
break;
@@ -231,6 +256,21 @@ public class CreatorProfitServiceImpl implements CreatorProfitService {
log.info("==============批量更新艺术家收益状态完成,耗时【{}】毫秒!===============", System.currentTimeMillis() - startTime);
}
+ @Override
+ public void batchDeleteUserDownloadNum() {
+ log.info("==============批量删除昨日用户下载次数开始!===============");
+ long startTime = System.currentTimeMillis();
+ //获取昨日日期
+ Date yesterday = new Date(startTime - 1000 * 60 * 60 * 24);
+ SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
+ String date = simpleDateFormat.format(yesterday);
+ String redisKey = RedisKeyConstant.PLATFORM_USER_DOWNLOAD_KEY + date;
+ if(redisService.hasKey(redisKey)){
+ redisService.deleteObject(redisKey);
+ }
+ log.info("==============批量删除昨日用户下载次数完成,耗时【{}】毫秒!===============", System.currentTimeMillis() - startTime);
+ }
+
@Override
public ProfitVo queryFrontProfitInfo(Long creatorId) {
//累计收益
@@ -319,4 +359,24 @@ public class CreatorProfitServiceImpl implements CreatorProfitService {
public int batchUpdate(List list) {
return creatorProfitMapper.batchUpdateTransInfo(list);
}
+
+ @Override
+ public boolean checkUserCanDownload(Long userId, String platform, String appType) {
+ SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
+ String date = df.format(new Date());
+ String hashKey = appType+":"+platform+":"+userId;
+ String redisKey = RedisKeyConstant.PLATFORM_USER_DOWNLOAD_KEY + date;
+ if(redisService.hasHashKey(redisKey,hashKey)){
+ //存在键,判断次数,次数达标则不可下载
+ Integer downloadNum = redisService.getCacheMapValue(redisKey, hashKey);
+ if(downloadNum >= 5){
+ return true;
+ }else{
+ return false;
+ }
+ }else{
+ //不存在键则可下载
+ return false;
+ }
+ }
}
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 4ce856c..d244f14 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
@@ -23,10 +23,7 @@ import com.bnyer.img.mapper.InviteLogMapper;
import com.bnyer.img.mapper.TiktokImgMapper;
import com.bnyer.img.mapper.VerifyLogMapper;
import com.bnyer.img.service.CreatorService;
-import com.bnyer.img.vo.CreatorDetailsVo;
-import com.bnyer.img.vo.CreatorHotVo;
-import com.bnyer.img.vo.CreatorLoginVo;
-import com.bnyer.img.vo.CreatorVo;
+import com.bnyer.img.vo.*;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/TiktokImgServiceImpl.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/TiktokImgServiceImpl.java
index ce32b8d..fe7e661 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/TiktokImgServiceImpl.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/TiktokImgServiceImpl.java
@@ -13,6 +13,7 @@ import com.bnyer.img.mapper.TiktokCollectionMapper;
import com.bnyer.img.mapper.TiktokImgMapper;
import com.bnyer.img.mapper.TiktokLikeMapper;
import com.bnyer.img.service.TiktokImgService;
+import com.bnyer.img.vo.CreatorTypeImgVo;
import com.bnyer.img.vo.TiktokImgVo;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
@@ -189,4 +190,22 @@ public class TiktokImgServiceImpl implements TiktokImgService {
public List queryImgsByScanCodeAndTypeId(String scanCode, Long typeId) {
return tiktokImgMapper.queryImgsByScanCodeAndTypeId(scanCode,typeId);
}
+
+ @Override
+ public CreatorTypeImgVo queryCreatorTypeImgNum(Long creatorId) {
+ Integer headNum = tiktokImgMapper.queryCreatorTypeImgNum(1L, creatorId);
+ Integer gifNum = tiktokImgMapper.queryCreatorTypeImgNum(2L, creatorId);
+ Integer backNum = tiktokImgMapper.queryCreatorTypeImgNum(3L, creatorId);
+ Integer friendNum = tiktokImgMapper.queryCreatorTypeImgNum(4L, creatorId);
+ Integer emoNum = tiktokImgMapper.queryCreatorTypeImgNum(5L, creatorId);
+ Integer watchNum = tiktokImgMapper.queryCreatorTypeImgNum(6L, creatorId);
+ CreatorTypeImgVo result = new CreatorTypeImgVo();
+ result.setHeadNum(headNum);
+ result.setGifNum(gifNum);
+ result.setBackNum(backNum);
+ result.setFriendNum(friendNum);
+ result.setEmoNum(emoNum);
+ result.setWatchNum(watchNum);
+ return result;
+ }
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/task/CollectionSyncTask.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/task/CollectionSyncTask.java
index f9f5f37..89148ec 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/task/CollectionSyncTask.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/task/CollectionSyncTask.java
@@ -9,6 +9,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
/**
+ * 同步用户收藏记录任务
* @author chengkun
* @date 2022/5/12 18:13
*/
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/task/CreatorProfitConfirmTypeSyncTask.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/task/CreatorProfitConfirmTypeSyncTask.java
index 669fbb0..8221cd0 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/task/CreatorProfitConfirmTypeSyncTask.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/task/CreatorProfitConfirmTypeSyncTask.java
@@ -9,6 +9,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
/**
+ * 更新艺术家收益状态任务
* @author chengkun
* @date 2022/5/12 18:13
*/
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/task/LikeSyncTask.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/task/LikeSyncTask.java
index 7ab7b44..c62ebd8 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/task/LikeSyncTask.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/task/LikeSyncTask.java
@@ -9,6 +9,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
/**
+ * 同步点赞任务
* @author chengkun
* @date 2022/5/12 18:13
*/
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/task/UserDownloadSyncTask.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/task/UserDownloadSyncTask.java
new file mode 100644
index 0000000..1d31f96
--- /dev/null
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/task/UserDownloadSyncTask.java
@@ -0,0 +1,29 @@
+package com.bnyer.img.task;
+
+import com.bnyer.img.service.CreatorProfitService;
+import com.xxl.job.core.biz.model.ReturnT;
+import com.xxl.job.core.handler.annotation.XxlJob;
+import com.xxl.job.core.log.XxlJobLogger;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+/**
+ * 同步删除昨日用户下载次数任务
+ * @author chengkun
+ * @date 2022/5/12 18:13
+ */
+@Component
+@Slf4j
+public class UserDownloadSyncTask {
+
+ @Autowired
+ private CreatorProfitService creatorProfitService;
+
+ @XxlJob("userDownloadSyncTask")
+ public ReturnT syncUserDownload(String param) throws Exception {
+ creatorProfitService.batchDeleteUserDownloadNum();
+ XxlJobLogger.log("{} 我执行了批量删除昨日用户下载次数任务", System.currentTimeMillis());
+ return ReturnT.SUCCESS;
+ }
+}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/CreatorTypeImgVo.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/CreatorTypeImgVo.java
new file mode 100644
index 0000000..978e5b0
--- /dev/null
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/CreatorTypeImgVo.java
@@ -0,0 +1,35 @@
+package com.bnyer.img.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+
+
+@Getter
+@Setter
+@ApiModel("艺术家分类图片数量响应体")
+public class CreatorTypeImgVo implements Serializable {
+
+ @ApiModelProperty(value="头像数量")
+ private Integer headNum;
+
+ @ApiModelProperty(value="gif动图数量")
+ private Integer gifNum;
+
+ @ApiModelProperty(value="手机壁纸数量")
+ private Integer backNum;
+
+ @ApiModelProperty(value="朋友圈背景数量")
+ private Integer friendNum;
+
+ @ApiModelProperty(value="表情包数量")
+ private Integer emoNum;
+
+ @ApiModelProperty(value="iwatch数量")
+ private Integer watchNum;
+
+ private static final long serialVersionUID = 1L;
+}
diff --git a/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/TiktokImgMapper.xml b/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/TiktokImgMapper.xml
index ae4463c..aae6a2d 100644
--- a/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/TiktokImgMapper.xml
+++ b/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/TiktokImgMapper.xml
@@ -93,4 +93,12 @@
where iti.is_show = '1' and iti.status = '1'
and ic.scan_code = #{scanCode} and iti.type_id = #{typeId}
+
+
From f01d913a03ad946ecaf2208b505358b19ca1aadc Mon Sep 17 00:00:00 2001
From: chengkun <2500338766@qq.com>
Date: Mon, 11 Jul 2022 18:28:22 +0800
Subject: [PATCH 15/32] =?UTF-8?q?feature1.0.0-img:=E4=BF=AE=E6=94=B9?=
=?UTF-8?q?=E8=89=BA=E6=9C=AF=E5=AE=B6bug=EF=BC=8C=E6=96=B0=E5=A2=9Esign?=
=?UTF-8?q?=E5=90=8E=E5=8F=B0=E6=8E=A5=E5=8F=A3?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../bnyer/img/controller/SignController.java | 70 ++++++++++++++++++-
.../img/controller/TiktokMiniController.java | 8 +--
.../main/java/com/bnyer/img/dto/SignDto.java | 29 ++++++++
.../com/bnyer/img/service/SignService.java | 11 ++-
.../img/service/impl/CreatorServiceImpl.java | 24 +++++--
.../img/service/impl/SignServiceImpl.java | 23 ++++--
.../com/bnyer/img/mapper/CreatorMapper.xml | 4 +-
7 files changed, 138 insertions(+), 31 deletions(-)
create mode 100644 bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/SignDto.java
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
@@ -74,13 +74,13 @@
select
id,img_url,creator_id,type_id,download_num, great_num, collection_num,status,is_hot
from img_tiktok_img
- where is_show = '1' and status = '1' and id = #{imgId}
+ where is_show = '1' and status = '3' and id = #{imgId}
select
id,img_url,creator_id,type_id,download_num, great_num, collection_num,status,is_hot
from img_tiktok_img
- where is_show = '1' and status = '1'
+ where is_show = '1' and status = '3'
@@ -90,7 +90,7 @@
iti.status as status,iti.is_hot as isHot
from img_tiktok_img iti
join img_creator ic on iti.creator_id = ic.id
- where iti.is_show = '1' and iti.status = '1'
+ where iti.is_show = '1' and iti.status = '3'
and ic.scan_code = #{scanCode} and iti.type_id = #{typeId}
From c6e240721ca1909527270e8be0dd1225702cc63c Mon Sep 17 00:00:00 2001
From: qyhdd
Date: Fri, 15 Jul 2022 13:35:10 +0800
Subject: [PATCH 21/32] =?UTF-8?q?=E5=85=AB=E5=AD=97=E7=AE=97=E5=91=BD?=
=?UTF-8?q?=E9=A1=B5=E9=9D=A2?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../common/redis/service/RedisService.java | 24 ++++
.../file/service/impl/QiniuServiceImpl.java | 3 +-
.../com/bnyer/img/BnyerImgApplication.java | 2 +
.../img/controller/BzDataController.java | 110 ++++++++++++++++
.../java/com/bnyer/img/domain/BzData.java | 61 +++++++++
.../main/java/com/bnyer/img/dto/BzDto.java | 35 +++++
.../com/bnyer/img/mapper/BzDataMapper.java | 15 +++
.../com/bnyer/img/service/BzDataService.java | 19 +++
.../img/service/impl/BzDataServiceImpl.java | 124 ++++++++++++++++++
.../java/com/bnyer/img/task/DateSyncTask.java | 60 +++++++++
10 files changed, 452 insertions(+), 1 deletion(-)
create mode 100644 bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/BzDataController.java
create mode 100644 bnyer-services/bnyer-img/src/main/java/com/bnyer/img/domain/BzData.java
create mode 100644 bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/BzDto.java
create mode 100644 bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/BzDataMapper.java
create mode 100644 bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/BzDataService.java
create mode 100644 bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/BzDataServiceImpl.java
create mode 100644 bnyer-services/bnyer-img/src/main/java/com/bnyer/img/task/DateSyncTask.java
diff --git a/bnyer-common/bnyer-common-redis/src/main/java/com/bnyer/common/redis/service/RedisService.java b/bnyer-common/bnyer-common-redis/src/main/java/com/bnyer/common/redis/service/RedisService.java
index 46e3515..5540dc1 100644
--- a/bnyer-common/bnyer-common-redis/src/main/java/com/bnyer/common/redis/service/RedisService.java
+++ b/bnyer-common/bnyer-common-redis/src/main/java/com/bnyer/common/redis/service/RedisService.java
@@ -327,4 +327,28 @@ public class RedisService
Long releaseStatus = (Long)this.redisTemplate.execute(redisScript, Collections.singletonList(key),value);
return releaseStatus;
}
+
+ /**
+ * pv统计
+ * @param today 统计的日期
+ * @param page 统计的页面
+ * @return pv
+ */
+ public Long pvStatistics(String today,String page){
+ //访问次数pv
+ return redisTemplate.opsForValue().increment(today +page+"PV", 1);
+
+ }
+ /**
+ * uv统计
+ * @param today 统计的日期
+ * @param page 统计的页面
+ * @param ip 进入页面的ip
+ * @return uv
+ */
+ public Long uvStatistics(String today,String page,String ip){
+ //访问次数uv
+ return redisTemplate.opsForHyperLogLog().add(today + page+"UV", ip);
+
+ }
}
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/QiniuServiceImpl.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/QiniuServiceImpl.java
index b52bfa0..337a614 100644
--- a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/QiniuServiceImpl.java
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/QiniuServiceImpl.java
@@ -166,7 +166,8 @@ public class QiniuServiceImpl implements IQiniuService {
videoSuffixList.add("mp4");
videoSuffixList.add("mov");
videoSuffixList.add("wmv");
- if (suffix != null&&imageSuffixList.contains(suffix)&&multipartFile.getSize() / 1024 < 50000&&multipartFile.getSize() / 1024 > 0) {
+ long size = multipartFile.getSize();
+ if (suffix != null&&imageSuffixList.contains(suffix)&&multipartFile.getSize() / 1024 < 3072&&multipartFile.getSize() / 1024 > 0) {
afterCheckFiles.add(multipartFile);
}
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/BnyerImgApplication.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/BnyerImgApplication.java
index 433f48d..be25728 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/BnyerImgApplication.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/BnyerImgApplication.java
@@ -5,6 +5,7 @@ import com.bnyer.common.security.annotation.EnableRyFeignClients;
import com.bnyer.common.swagger.annotation.EnableCustomSwagger2;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.scheduling.annotation.EnableAsync;
/**
* 系统模块
@@ -15,6 +16,7 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
@EnableCustomSwagger2
@EnableRyFeignClients
@SpringBootApplication
+@EnableAsync
public class BnyerImgApplication
{
public static void main(String[] args)
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/BzDataController.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/BzDataController.java
new file mode 100644
index 0000000..8ea5350
--- /dev/null
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/BzDataController.java
@@ -0,0 +1,110 @@
+package com.bnyer.img.controller;
+
+import cn.hutool.http.server.HttpServerRequest;
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.bnyer.common.core.domain.R;
+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.common.redis.service.RedisService;
+import com.bnyer.img.domain.Banner;
+import com.bnyer.img.domain.BzData;
+import com.bnyer.img.dto.BannerDto;
+import com.bnyer.img.dto.BannerPageDto;
+import com.bnyer.img.dto.BzDto;
+import com.bnyer.img.dto.StatusDto;
+import com.bnyer.img.service.BannerService;
+import com.bnyer.img.service.BzDataService;
+import com.github.pagehelper.PageHelper;
+import com.xxl.job.core.biz.model.ReturnT;
+import com.xxl.job.core.log.XxlJobLogger;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.http.HttpEntity;
+import org.apache.http.HttpResponse;
+import org.apache.http.client.methods.HttpGet;
+import org.apache.http.impl.client.CloseableHttpClient;
+import org.apache.http.impl.client.HttpClients;
+import org.apache.http.util.EntityUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Lazy;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletRequest;
+import java.io.IOException;
+import java.net.URLEncoder;
+import java.time.LocalDate;
+import java.util.List;
+import java.util.Set;
+
+@Api(value = "【图文平台】八字运势接口",tags = "【图文平台】八字运势接口")
+@RestController
+@RequestMapping("/img/bz")
+@Slf4j
+public class BzDataController extends BaseController {
+
+ @Autowired
+ private BzDataService bzDataService;
+ @Autowired
+ private RedisService redisService;
+ //@RequiresPermissions("system:config:list")
+ @ApiOperation(value = "八字算命")
+ @PostMapping("/getYs")
+ public R getYs(@RequestBody @ApiParam("八字运势") BzDto dto) {
+ JSONObject jsonObject = bzDataService.getYs(dto);
+ if (jsonObject!=null){
+ return R.ok(jsonObject);
+ }
+ return R.fail();
+ }
+
+ @ApiOperation(value = "八字页面数据统计")
+ @PostMapping("/dataStatistics")
+ public R dataStatistics(@RequestParam String source, HttpServletRequest request) {
+ String ip = getIpAddr(request);
+ bzDataService.dataStatistics(ip,source);
+ return R.ok();
+ }
+
+ private String getIpAddr(HttpServletRequest request) {
+ String ip = request.getHeader("x-forwarded-for");
+ //System.out.println("x-forwarded-for ip: " + ip);
+ if (ip != null && ip.length() != 0 && !"unknown".equalsIgnoreCase(ip)) {
+ // 多次反向代理后会有多个ip值,第一个ip才是真实ip
+ if (ip.indexOf(",") != -1) {
+ ip = ip.split(",")[0];
+ }
+ }
+ if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
+ ip = request.getHeader("Proxy-Client-IP");
+ //System.out.println("Proxy-Client-IP ip: " + ip);
+ }
+ if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
+ ip = request.getHeader("WL-Proxy-Client-IP");
+ //System.out.println("WL-Proxy-Client-IP ip: " + ip);
+ }
+ if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
+ ip = request.getHeader("HTTP_CLIENT_IP");
+ //System.out.println("HTTP_CLIENT_IP ip: " + ip);
+ }
+ if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
+ ip = request.getHeader("HTTP_X_FORWARDED_FOR");
+ //System.out.println("HTTP_X_FORWARDED_FOR ip: " + ip);
+ }
+ if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
+ ip = request.getHeader("X-Real-IP");
+ //System.out.println("X-Real-IP ip: " + ip);
+ }
+ if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
+ ip = request.getRemoteAddr();
+ //System.out.println("getRemoteAddr ip: " + ip);
+ }
+ //System.out.println("获取客户端ip: " + ip);
+ return ip;
+ }
+}
\ No newline at end of file
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/domain/BzData.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/domain/BzData.java
new file mode 100644
index 0000000..354a015
--- /dev/null
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/domain/BzData.java
@@ -0,0 +1,61 @@
+package com.bnyer.img.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.*;
+
+@ApiModel(value="com-bnyer-img-domain-BzData")
+@Getter
+@Setter
+@ToString
+@AllArgsConstructor
+@NoArgsConstructor
+@TableName(value = "img_bz_data")
+public class BzData {
+ /**
+ * 主键id
+ */
+ @TableId(value = "id", type = IdType.INPUT)
+ @ApiModelProperty(value="主键id")
+ private Long id;
+
+ /**
+ * 日期
+ */
+ @TableField(value = "date")
+ @ApiModelProperty(value="日期 年月日")
+ private String date;
+
+ /**
+ * pv
+ */
+ @TableField(value = "pv")
+ @ApiModelProperty(value="pv")
+ private Long pv;
+
+ /**
+ * uv
+ */
+ @TableField(value = "uv")
+ @ApiModelProperty(value="uv")
+ private Long uv;
+
+ /**
+ * 平台(0->Hub;1->抖音;2->快手;3->微信)
+ */
+ @TableField(value = "source")
+ @ApiModelProperty(value="source")
+ private String source;
+
+ /**
+ * 防止重复唯一标识
+ */
+ @TableField(value = "mark")
+ @ApiModelProperty(value="mark")
+ private String mark;
+ private static final long serialVersionUID = 1L;
+}
\ No newline at end of file
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/BzDto.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/BzDto.java
new file mode 100644
index 0000000..76f5470
--- /dev/null
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/BzDto.java
@@ -0,0 +1,35 @@
+package com.bnyer.img.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+
+/**
+ * @Author qyh
+ * @Date 2022/7/13 21:27
+ * @Description
+ */
+@Getter
+@Setter
+@ApiModel("八字运势接收类")
+public class BzDto {
+ @NotBlank(message = "姓不能为空!")
+ @ApiModelProperty(value="姓")
+ private String lastName;
+
+ @NotBlank(message = "名不能为空!")
+ @ApiModelProperty(value="名")
+ private String firstName;
+
+ @NotBlank(message = "性别不能为空!")
+ @ApiModelProperty(value="性别")
+ private String sex;
+
+ @NotBlank(message = "出生年月不能为空!")
+ @ApiModelProperty(value="出生年月")
+ //19990209060808这样的
+ private String birth;
+}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/BzDataMapper.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/BzDataMapper.java
new file mode 100644
index 0000000..e5006a0
--- /dev/null
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/BzDataMapper.java
@@ -0,0 +1,15 @@
+package com.bnyer.img.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.bnyer.img.domain.Banner;
+import com.bnyer.img.domain.BzData;
+import com.bnyer.img.vo.BannerVo;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+@Mapper
+public interface BzDataMapper extends BaseMapper {
+
+}
\ No newline at end of file
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/BzDataService.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/BzDataService.java
new file mode 100644
index 0000000..8d6e284
--- /dev/null
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/BzDataService.java
@@ -0,0 +1,19 @@
+package com.bnyer.img.service;
+
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.bnyer.img.domain.Banner;
+import com.bnyer.img.domain.BzData;
+import com.bnyer.img.dto.BannerPageDto;
+import com.bnyer.img.dto.BzDto;
+import com.bnyer.img.vo.BannerVo;
+
+import java.util.List;
+
+public interface BzDataService {
+ JSONObject getYs(BzDto dto);
+
+ void dataStatistics(String ip,String source);
+
+ int update(BzData bzData,UpdateWrapper updateWrapper);
+}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/BzDataServiceImpl.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/BzDataServiceImpl.java
new file mode 100644
index 0000000..b054c92
--- /dev/null
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/BzDataServiceImpl.java
@@ -0,0 +1,124 @@
+package com.bnyer.img.service.impl;
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
+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.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.bnyer.common.core.domain.R;
+import com.bnyer.common.core.utils.StringUtils;
+import com.bnyer.common.redis.service.RedisService;
+import com.bnyer.img.domain.Banner;
+import com.bnyer.img.domain.BzData;
+import com.bnyer.img.dto.BannerPageDto;
+import com.bnyer.img.dto.BzDto;
+import com.bnyer.img.mapper.BannerMapper;
+import com.bnyer.img.mapper.BzDataMapper;
+import com.bnyer.img.service.BannerService;
+import com.bnyer.img.service.BzDataService;
+import com.bnyer.img.vo.BannerVo;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.http.HttpEntity;
+import org.apache.http.HttpResponse;
+import org.apache.http.client.methods.HttpGet;
+import org.apache.http.impl.client.CloseableHttpClient;
+import org.apache.http.impl.client.HttpClients;
+import org.apache.http.util.EntityUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.io.IOException;
+import java.net.URLEncoder;
+import java.time.LocalDate;
+import java.util.Date;
+import java.util.List;
+
+@Service
+@Slf4j
+public class BzDataServiceImpl implements BzDataService {
+
+ @Autowired
+ private RedisService redisService;
+ @Autowired
+ private BzDataMapper bzDataMapper;
+
+ @Override
+ public JSONObject getYs(BzDto dto) {
+ //API产品路径
+ String requestUrl = "https://xuanxue.market.alicloudapi.com/ai_china_knowledge/bazi/v1?";
+ //阿里云APPCODE
+ String appcode = "7a37e4f4f24d4737bf48143d371a215b";
+ String lastName = dto.getLastName();
+ String firstName = dto.getFirstName();
+ String sex = dto.getSex();
+ String birth = dto.getBirth();
+ CloseableHttpClient httpClient = null;
+ try {
+ httpClient = HttpClients.createDefault();
+ String str = "SECOND_NAME=" + URLEncoder.encode(firstName, "UTF-8") + "&GENDER=" + URLEncoder.encode(sex, "UTF-8") + "&BIRTH=" + URLEncoder.encode(birth, "UTF-8") + "&FIRST_NAME=" + URLEncoder.encode(lastName, "UTF-8");
+ System.out.println(requestUrl + str);
+ // 创建一个HttpGet实例
+ HttpGet httpGet = new HttpGet(requestUrl + str);
+ httpGet.addHeader("Authorization", "APPCODE " + appcode);
+
+ // 发送GET请求
+ HttpResponse execute = httpClient.execute(httpGet);
+
+ // 获取状态码
+ int statusCode = execute.getStatusLine().getStatusCode();
+ System.out.println(statusCode);
+
+ // 获取结果
+ HttpEntity entity = execute.getEntity();
+ String result = EntityUtils.toString(entity, "utf-8");
+ //System.out.println(result);
+ return JSON.parseObject(result);
+ } catch (Exception e) {
+ e.printStackTrace();
+ } finally {
+ if (httpClient != null) {
+ try {
+ httpClient.close();
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+ return null;
+ }
+
+ @Override
+ public void dataStatistics(String ip, String source) {
+ String today = LocalDate.now() + "";
+ String page="bzPage_" + source;
+ //保存今天的key
+ redisService.redisTemplate.opsForZSet().add("bzPage_key" +today, today+page, 1.0);
+ //pv统计
+ redisService.pvStatistics(today, page);
+ //uv统计
+ redisService.uvStatistics(today, page, ip);
+ //查看是否已经有了这条数据
+ if (!redisService.hasKey(today + source)) {
+ QueryWrapper wrapper = new QueryWrapper<>();
+ wrapper.eq("date", today);
+ wrapper.eq("source", source);
+ List bzData = bzDataMapper.selectList(wrapper);
+ if (bzData.size() <= 0) {
+ BzData data = new BzData();
+ data.setDate(today);
+ data.setPv(1L);
+ data.setUv(1L);
+ data.setSource(source);
+ data.setMark(today + source);
+ bzDataMapper.insert(data);
+ }
+ }
+ }
+
+ @Override
+ public int update(BzData bzData, UpdateWrapper updateWrapper) {
+ return bzDataMapper.update(bzData,updateWrapper);
+ }
+}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/task/DateSyncTask.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/task/DateSyncTask.java
new file mode 100644
index 0000000..b54165d
--- /dev/null
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/task/DateSyncTask.java
@@ -0,0 +1,60 @@
+package com.bnyer.img.task;
+
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.bnyer.common.redis.service.RedisService;
+import com.bnyer.img.domain.BzData;
+import com.bnyer.img.service.BzDataService;
+import com.xxl.job.core.biz.model.ReturnT;
+import com.xxl.job.core.handler.annotation.XxlJob;
+import com.xxl.job.core.log.XxlJobLogger;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
+
+import java.time.LocalDate;
+import java.util.Set;
+
+/**
+ * @Author qyh
+ * @Date 2022/7/14 16:43
+ * @Description
+ */
+@Component
+@Slf4j
+public class DateSyncTask {
+ @Autowired
+ private static RedisService redisService;
+ @Autowired
+ private static BzDataService bzDataService;
+ //@XxlJob("dateSyncTask")
+ //@Scheduled(fixedDelay = 1000 * 60 * 60)
+ public static ReturnT dateSync() {
+ String day = LocalDate.now().plusDays(-1)+ "";
+ String redisKey = "bzPage_key" + day;
+ System.out.println(redisService);
+ redisService.setCacheObject("4", 2);
+ Set range = redisService.redisTemplate.opsForZSet().range(redisKey, 0, -1);
+ for (Object key : redisService.redisTemplate.opsForZSet().range(redisKey, 0, -1)) {
+ Long pv = Long.parseLong(redisService.redisTemplate.opsForValue().get(key + "PV").toString());
+ Long uv = Long.parseLong(redisService.redisTemplate.opsForHyperLogLog().size(key + "UV").toString());
+ String[] s = key.toString().split("_");
+ String source = s[1];
+ redisService.deleteObject(key + "PV");
+ redisService.deleteObject(key + "UV");
+ UpdateWrapper wrapper = new UpdateWrapper<>();
+ wrapper.set("pv",pv);
+ wrapper.set("uv",uv);
+ wrapper.eq("date",day);
+ wrapper.eq("source",source);
+ bzDataService.update(new BzData(),wrapper);
+// redisService.deleteObject(key + "PV");
+// redisService.deleteObject(key + "UV");
+ }
+ redisService.deleteObject("bzPage_key" + day);
+ XxlJobLogger.log("{} 我执行了同步pv,uv任务", System.currentTimeMillis());
+ return ReturnT.SUCCESS;
+ }
+
+
+}
From 1ae47ff84b04cb2f6885b68011f020435627479c Mon Sep 17 00:00:00 2001
From: penny <2500338766@qq.com>
Date: Sun, 17 Jul 2022 20:23:28 +0800
Subject: [PATCH 22/32] =?UTF-8?q?feature-img-1.0.0:=20=E5=AE=8C=E5=96=84?=
=?UTF-8?q?=E5=9B=BE=E7=89=87=E5=90=88=E9=9B=86=E6=8E=A5=E5=8F=A3?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../img/controller/CreatorMiniController.java | 22 ++--
.../img/controller/FhMiniController.java | 22 ++++
.../img/controller/TiktokImgController.java | 12 +-
.../img/controller/TiktokMiniController.java | 21 ++++
.../img/controller/WxMiniController.java | 22 ++++
.../com/bnyer/img/domain/ImgSignRelation.java | 23 +++-
.../main/java/com/bnyer/img/domain/Sign.java | 7 ++
.../main/java/com/bnyer/img/dto/SignDto.java | 3 +
.../com/bnyer/img/dto/SignImgPageDto.java | 22 ++++
.../com/bnyer/img/dto/SignTypePageDto.java | 18 +++
.../com/bnyer/img/dto/TiktokImgMiniDto.java | 5 +
.../img/mapper/ImgSignRelationMapper.java | 27 +++++
.../java/com/bnyer/img/mapper/SignMapper.java | 17 +++
.../com/bnyer/img/mapper/TiktokImgMapper.java | 11 +-
.../img/service/ImgSignRelationService.java | 81 --------------
.../com/bnyer/img/service/SignService.java | 17 ++-
.../bnyer/img/service/TiktokImgService.java | 16 ++-
.../impl/ImgSignRelationServiceImpl.java | 104 ------------------
.../img/service/impl/SignServiceImpl.java | 33 ++++--
.../service/impl/TiktokImgServiceImpl.java | 29 ++++-
.../main/java/com/bnyer/img/vo/ImgSignVo.java | 48 ++++++++
.../main/java/com/bnyer/img/vo/SignImgVo.java | 28 +++++
.../java/com/bnyer/img/vo/SignRelationVo.java | 25 +++++
.../main/java/com/bnyer/img/vo/SignVo.java | 22 ++++
.../com/bnyer/img/vo/TiktokCollectionVo.java | 2 +-
.../java/com/bnyer/img/vo/TiktokImgVo.java | 4 +
.../img/mapper/ImgSignRelationMapper.xml | 29 ++++-
.../com/bnyer/img/mapper/SignMapper.xml | 18 ++-
.../com/bnyer/img/mapper/TiktokImgMapper.xml | 96 +++++++++++-----
29 files changed, 530 insertions(+), 254 deletions(-)
create mode 100644 bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/SignImgPageDto.java
create mode 100644 bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/SignTypePageDto.java
delete mode 100644 bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/ImgSignRelationService.java
delete mode 100644 bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/ImgSignRelationServiceImpl.java
create mode 100644 bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/ImgSignVo.java
create mode 100644 bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/SignImgVo.java
create mode 100644 bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/SignRelationVo.java
create mode 100644 bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/SignVo.java
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
index 7797aa5..f2c5852 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
@@ -56,6 +56,9 @@ public class CreatorMiniController extends BaseController {
@Autowired
private CreatorProfitService creatorProfitService;
+ @Autowired
+ private SignService signService;
+
//@TokenCheck
@ApiOperation(value="检查手机号是否重复")
@PostMapping(value = "/checkPhone")
@@ -127,22 +130,12 @@ public class CreatorMiniController extends BaseController {
return AjaxResult.success(tiktokImgService.delete(ids));
}
- //@TokenCheck
- @ApiOperation(value="修改艺术家图片")
- @PostMapping(value = "/updateTiktokImg")
- public AjaxResult updateTiktokImg(@Validated @RequestBody @ApiParam("TiktokImg对象") TiktokImgMiniDto dto){
- log.info("【艺术家小程序】艺术家【{}】修改图片参数为:{}",dto.getCreatorId(), JSON.toJSONString(dto));
- TiktokImg tiktokImg = dto.extractParam();
- tiktokImg.setStatus("0");
- return AjaxResult.success(tiktokImgService.update(dto.extractParam()));
- }
-
//@TokenCheck
@ApiOperation(value="新增艺术家图片")
@PostMapping(value = "/insertTiktokImg")
public AjaxResult insertTiktokImg(@Validated @RequestBody @ApiParam("TiktokImg对象") TiktokImgMiniDto dto){
log.info("【艺术家小程序】艺术家【{}】新增图片参数为:{}",dto.getCreatorId(),JSON.toJSONString(dto));
- return AjaxResult.success(tiktokImgService.insert(dto.extractParam()));
+ return AjaxResult.success(tiktokImgService.insert(dto));
}
//@TokenCheck
@@ -326,4 +319,11 @@ public class CreatorMiniController extends BaseController {
return AjaxResult.success(tiktokImgService.onlineOrOfflineImg(param));
}
+ //@RequiresPermissions("system:config:list")
+ @ApiOperation(value="获取上传页面标签列表")
+ @GetMapping(value = "/signList")
+ public AjaxResult querySignList(){
+ return AjaxResult.success(signService.querySignList());
+ }
+
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/FhMiniController.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/FhMiniController.java
index 7be6d94..fbf6ea0 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/FhMiniController.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/FhMiniController.java
@@ -9,6 +9,7 @@ import com.bnyer.img.domain.Feedback;
import com.bnyer.img.dto.*;
import com.bnyer.img.service.*;
import com.bnyer.img.vo.CreatorDetailsVo;
+import com.bnyer.img.vo.SignImgVo;
import com.bnyer.img.vo.TiktokImgVo;
import com.github.pagehelper.PageHelper;
import io.swagger.annotations.Api;
@@ -55,6 +56,9 @@ public class FhMiniController extends BaseController {
@Autowired
private CreatorProfitService creatorProfitService;
+ @Autowired
+ private SignService signService;
+
//@TokenCheck
@ApiOperation(value="查询banner列表")
@GetMapping(value = "/listBanner")
@@ -240,4 +244,22 @@ public class FhMiniController extends BaseController {
return AjaxResult.error("该艺术家不存在!");
}
}
+
+ //@TokenCheck
+ @ApiOperation(value="查询小程序端标签分页")
+ @PostMapping(value = "/signImgList")
+ public TableDataInfo signImgList(@RequestBody @ApiParam("分页对象") SignTypePageDto dto){
+ PageHelper.startPage(dto.getPageNum(), dto.getPageSize());
+ List signImgVos = signService.queryFrontSignByTypeId(dto.getTypeId());
+ return getDataTable(signImgVos);
+ }
+
+ //@TokenCheck
+ @ApiOperation(value="根据分类id和便签Id查询图片分页")
+ @PostMapping(value = "/querySignImg")
+ public TableDataInfo querySignImg(@RequestBody @ApiParam("分页对象") SignImgPageDto dto){
+ PageHelper.startPage(dto.getPageNum(), dto.getPageSize());
+ List tiktokImgs = tiktokImgService.querySignImgBySignIdAndTypeId(dto.getSignId(), dto.getTypeId());
+ return getDataTable(tiktokImgs);
+ }
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/TiktokImgController.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/TiktokImgController.java
index adc43c1..92f2dc2 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/TiktokImgController.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/TiktokImgController.java
@@ -39,12 +39,12 @@ public class TiktokImgController extends BaseController {
}
//@RequiresPermissions("system:config:list")
- @ApiOperation(value="新增TiktokImg")
- @PostMapping(value = "/insert")
- public AjaxResult addTiktokImg(@Validated @RequestBody @ApiParam("TiktokImg对象") TiktokImgDto dto){
- log.debug("【图文平台后台】新增TiktokImg参数为:{}", JSON.toJSONString(dto));
- return AjaxResult.success(tiktokImgService.insert(dto.extractParam()));
- }
+// @ApiOperation(value="新增TiktokImg")
+// @PostMapping(value = "/insert")
+// public AjaxResult addTiktokImg(@Validated @RequestBody @ApiParam("TiktokImg对象") TiktokImgDto dto){
+// log.debug("【图文平台后台】新增TiktokImg参数为:{}", JSON.toJSONString(dto));
+// return AjaxResult.success(tiktokImgService.insert(dto.extractParam()));
+// }
//@RequiresPermissions("system:config:list")
@ApiOperation(value="修改TiktokImg")
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 c25fdfa..6d08e67 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
@@ -57,6 +57,9 @@ public class TiktokMiniController extends BaseController {
@Autowired
private CreatorProfitService creatorProfitService;
+ @Autowired
+ private SignService signService;
+
//@TokenCheck
@ApiOperation(value="查询banner列表")
@GetMapping(value = "/listBanner")
@@ -244,4 +247,22 @@ public class TiktokMiniController extends BaseController {
return AjaxResult.error("该艺术家不存在!");
}
}
+
+ //@TokenCheck
+ @ApiOperation(value="查询小程序端标签分页")
+ @PostMapping(value = "/signImgList")
+ public TableDataInfo signImgList(@RequestBody @ApiParam("分页对象") SignTypePageDto dto){
+ PageHelper.startPage(dto.getPageNum(), dto.getPageSize());
+ List signImgVos = signService.queryFrontSignByTypeId(dto.getTypeId());
+ return getDataTable(signImgVos);
+ }
+
+ //@TokenCheck
+ @ApiOperation(value="根据分类id和便签Id查询图片分页")
+ @PostMapping(value = "/querySignImg")
+ public TableDataInfo querySignImg(@RequestBody @ApiParam("分页对象") SignImgPageDto dto){
+ PageHelper.startPage(dto.getPageNum(), dto.getPageSize());
+ List tiktokImgs = tiktokImgService.querySignImgBySignIdAndTypeId(dto.getSignId(), dto.getTypeId());
+ return getDataTable(tiktokImgs);
+ }
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/WxMiniController.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/WxMiniController.java
index ed219ee..2f44dc2 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/WxMiniController.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/WxMiniController.java
@@ -9,6 +9,7 @@ import com.bnyer.img.domain.Feedback;
import com.bnyer.img.dto.*;
import com.bnyer.img.service.*;
import com.bnyer.img.vo.CreatorDetailsVo;
+import com.bnyer.img.vo.SignImgVo;
import com.bnyer.img.vo.TiktokImgVo;
import com.github.pagehelper.PageHelper;
import io.swagger.annotations.Api;
@@ -55,6 +56,9 @@ public class WxMiniController extends BaseController {
@Autowired
private CreatorProfitService creatorProfitService;
+ @Autowired
+ private SignService signService;
+
//@TokenCheck
@ApiOperation(value="查询banner列表")
@GetMapping(value = "/listBanner")
@@ -240,4 +244,22 @@ public class WxMiniController extends BaseController {
return AjaxResult.error("该艺术家不存在!");
}
}
+
+ //@TokenCheck
+ @ApiOperation(value="查询小程序端标签分页")
+ @PostMapping(value = "/signImgList")
+ public TableDataInfo signImgList(@RequestBody @ApiParam("分页对象") SignTypePageDto dto){
+ PageHelper.startPage(dto.getPageNum(), dto.getPageSize());
+ List signImgVos = signService.queryFrontSignByTypeId(dto.getTypeId());
+ return getDataTable(signImgVos);
+ }
+
+ //@TokenCheck
+ @ApiOperation(value="根据分类id和便签Id查询图片分页")
+ @PostMapping(value = "/querySignImg")
+ public TableDataInfo querySignImg(@RequestBody @ApiParam("分页对象") SignImgPageDto dto){
+ PageHelper.startPage(dto.getPageNum(), dto.getPageSize());
+ List tiktokImgs = tiktokImgService.querySignImgBySignIdAndTypeId(dto.getSignId(), dto.getTypeId());
+ return getDataTable(tiktokImgs);
+ }
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/domain/ImgSignRelation.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/domain/ImgSignRelation.java
index 17e8f5f..acb9b3a 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/domain/ImgSignRelation.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/domain/ImgSignRelation.java
@@ -4,10 +4,14 @@ import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;
+import java.io.Serializable;
+import java.util.Date;
+
@ApiModel(value="com-bnyer-img-domain-ImgSignRelation")
@Getter
@Setter
@@ -15,11 +19,11 @@ import lombok.*;
@AllArgsConstructor
@NoArgsConstructor
@TableName(value = "img_img_sign_relation")
-public class ImgSignRelation extends BaseDomain {
+public class ImgSignRelation implements Serializable {
/**
* 主键id
*/
- @TableId(value = "id", type = IdType.INPUT)
+ @TableId(value = "id", type = IdType.AUTO)
@ApiModelProperty(value="主键id")
private Long id;
@@ -30,6 +34,13 @@ public class ImgSignRelation extends BaseDomain {
@ApiModelProperty(value="图片id")
private Long imgId;
+ /**
+ * 分类id
+ */
+ @TableField(value = "type_id")
+ @ApiModelProperty(value="分类id")
+ private Long typeId;
+
/**
* 标签id
*/
@@ -37,5 +48,13 @@ public class ImgSignRelation extends BaseDomain {
@ApiModelProperty(value="标签id")
private Long signId;
+ /**
+ * 创建时间
+ */
+ @TableField(value = "create_time")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @ApiModelProperty(value="创建时间")
+ private Date createTime;
+
private static final long serialVersionUID = 1L;
}
\ No newline at end of file
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/domain/Sign.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/domain/Sign.java
index ff4a220..c3327ea 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/domain/Sign.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/domain/Sign.java
@@ -30,5 +30,12 @@ public class Sign extends BaseDomain{
@ApiModelProperty(value="标签名称")
private String name;
+ /**
+ * 背景图
+ */
+ @TableField(value = "img")
+ @ApiModelProperty(value="背景图")
+ private String img;
+
private static final long serialVersionUID = 1L;
}
\ No newline at end of file
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
index 1db0b21..b441ed6 100644
--- 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
@@ -21,6 +21,9 @@ public class SignDto implements Serializable {
@ApiModelProperty(value="标签名称")
private String name;
+ @ApiModelProperty(value="背景图")
+ private String img;
+
public Sign extractParam(){
Sign sign = new Sign();
BeanUtils.copyProperties(this,sign);
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/SignImgPageDto.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/SignImgPageDto.java
new file mode 100644
index 0000000..0b67cd7
--- /dev/null
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/SignImgPageDto.java
@@ -0,0 +1,22 @@
+package com.bnyer.img.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotNull;
+
+@Getter
+@Setter
+@ApiModel("标签图片分页接收类")
+public class SignImgPageDto extends BasePageDto {
+
+ @NotNull(message = "分类id不能为空!")
+ @ApiModelProperty(value="分类id")
+ private Long typeId;
+
+ @NotNull(message = "标签id不能为空!")
+ @ApiModelProperty(value="标签id")
+ private Long signId;
+}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/SignTypePageDto.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/SignTypePageDto.java
new file mode 100644
index 0000000..883695d
--- /dev/null
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/SignTypePageDto.java
@@ -0,0 +1,18 @@
+package com.bnyer.img.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotNull;
+
+@Getter
+@Setter
+@ApiModel("标签分类分页接收类")
+public class SignTypePageDto extends BasePageDto {
+
+ @NotNull(message = "分类id不能为空!")
+ @ApiModelProperty(value="分类id")
+ private Long typeId;
+}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/TiktokImgMiniDto.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/TiktokImgMiniDto.java
index ceab1f0..8bf70b7 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/TiktokImgMiniDto.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/TiktokImgMiniDto.java
@@ -2,12 +2,14 @@ package com.bnyer.img.dto;
import com.bnyer.common.core.utils.bean.BeanUtils;
import com.bnyer.img.domain.TiktokImg;
+import com.bnyer.img.vo.SignVo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import java.io.Serializable;
+import java.util.List;
@Getter
@@ -30,6 +32,9 @@ public class TiktokImgMiniDto implements Serializable {
@ApiModelProperty(value="状态(0->待审核;1->审核通过;2->审核拒绝)")
private String status;
+ @ApiModelProperty(value="标签id列表")
+ private List signList;
+
public TiktokImg extractParam(){
TiktokImg tiktokImg = new TiktokImg();
BeanUtils.copyProperties(this,tiktokImg);
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/ImgSignRelationMapper.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/ImgSignRelationMapper.java
index 19c3159..67fe0d8 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/ImgSignRelationMapper.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/ImgSignRelationMapper.java
@@ -2,8 +2,35 @@ package com.bnyer.img.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.bnyer.img.domain.ImgSignRelation;
+import com.bnyer.img.vo.SignRelationVo;
+import com.bnyer.img.vo.SignVo;
import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
@Mapper
public interface ImgSignRelationMapper extends BaseMapper {
+
+ /**
+ * 根据图片id查询标签集合
+ * @param imgId 图片id
+ * @return -
+ */
+ List querySignListByImgId(@Param("imgId") Long imgId);
+
+ /**
+ * 根据图片id查询标签集合
+ * @param imgId 图片id
+ * @return -
+ */
+ List querySignRelationByImgId(@Param("imgId") Long imgId);
+
+ /**
+ * 批量新增标签
+ * @param imgId 图片id
+ * @param typeId 分类id
+ * @param signIds 标签id列表
+ */
+ void batctInsert(@Param("imgId") Long imgId, @Param("typeId") Long typeId, @Param("signIds") List signIds);
}
\ No newline at end of file
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/SignMapper.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/SignMapper.java
index 823408d..e4df35a 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/SignMapper.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/SignMapper.java
@@ -2,8 +2,25 @@ package com.bnyer.img.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.bnyer.img.domain.Sign;
+import com.bnyer.img.vo.SignImgVo;
+import com.bnyer.img.vo.SignVo;
+import com.bnyer.img.vo.TiktokImgVo;
import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
@Mapper
public interface SignMapper extends BaseMapper {
+ /**
+ * 查询上传页面标签列表
+ * @return -
+ */
+ List querySignList();
+
+ /**
+ * 根据分类id查询小程序端标签分页
+ * @return -
+ */
+ List queryFrontSign(@Param("typeId") Long typeId);
}
\ No newline at end of file
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/TiktokImgMapper.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/TiktokImgMapper.java
index adf13ca..2b94881 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/TiktokImgMapper.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/TiktokImgMapper.java
@@ -2,6 +2,7 @@ package com.bnyer.img.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.bnyer.img.domain.TiktokImg;
+import com.bnyer.img.vo.ImgSignVo;
import com.bnyer.img.vo.TiktokImgVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@@ -16,7 +17,7 @@ public interface TiktokImgMapper extends BaseMapper {
* @param typeId 分类Id
* @return -
*/
- List queryInList(@Param("creatorId")String creatorId,@Param("typeId") String typeId);
+ List queryInList(@Param("creatorId")String creatorId, @Param("typeId") String typeId);
/**
* 查询艺术家对外图片列表
@@ -68,4 +69,12 @@ public interface TiktokImgMapper extends BaseMapper {
* @return -
*/
Integer queryCreatorTypeImgNum(@Param("typeId") Long typeId,@Param("creatorId") Long creatorId);
+
+ /**
+ * 根据分类id和便签Id查询图片分页
+ * @param signId 标签id
+ * @param typeId 分类id
+ * @return -
+ */
+ List querySignImgBySignIdAndTypeId(@Param("signId") Long signId,@Param("typeId") Long typeId);
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/ImgSignRelationService.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/ImgSignRelationService.java
deleted file mode 100644
index b53ba8c..0000000
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/ImgSignRelationService.java
+++ /dev/null
@@ -1,81 +0,0 @@
-package com.bnyer.img.service;
-
-import com.bnyer.img.domain.ImgSignRelation;
-import com.bnyer.img.domain.Sign;
-import com.bnyer.img.dto.ImgSignRelationPageDto;
-import com.bnyer.img.dto.SignPageDto;
-
-import java.util.List;
-
-/**
- * @Author qyh
- * @Date 2022/7/10 21:23
- * @Description
- */
-public interface ImgSignRelationService {
- /**
- * 新增imgSignRelation
- * @param imgSignRelation
- * @return
- */
- int insert(ImgSignRelation imgSignRelation);
-
- /**
- * 修改imgSignRelation
- * @param imgSignRelation -
- * @return -
- */
- int update(ImgSignRelation imgSignRelation);
-
- /**
- * 批量删除imgSignRelation
- * @param ids ids
- * @return -
- */
- int delete(List ids);
-
- /**
- * 查询imgSignRelation分页
- * @param dto 分页对象
- * @return -
- */
- List queryPage(ImgSignRelationPageDto dto);
-
- /**
- * 查询imgSignRelation详情
- * @param id 主键id
- * @return -
- */
- ImgSignRelation queryDetails(Long id);
-
- /**
- * 查询小程序imgSignRelation列表
- * @param imgId 图片id
- * @return -
- */
- List queryListByImgId(String imgId);
-
- /**
- * 查询小程序imgSignRelation列表
- * @param signId 标签id
- * @return -
- */
- List queryListBySignId(String signId);
-
-
- /**
- * 变更显示状态
- * @param id 主键id
- * @param status 状态
- * @return -
- */
- int changeStatus(Long id,String status);
-
- /**
- * 根据列名+条件删除
- * @param columnName 要删除的列名
- * @param conditions 根据什么条件删除
- * @return
- */
- int deleteByColumn(String columnName,Long conditions);
-}
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 edc20a7..ef2db87 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
@@ -2,12 +2,15 @@ package com.bnyer.img.service;
import com.bnyer.img.domain.Sign;
import com.bnyer.img.dto.SignPageDto;
+import com.bnyer.img.vo.SignImgVo;
+import com.bnyer.img.vo.SignVo;
+import com.bnyer.img.vo.TiktokImgVo;
import java.util.List;
public interface SignService {
/**
- * 新增Sign
+ * 后台新增Sign
* @param sign 标签
* @return -
*/
@@ -55,4 +58,16 @@ public interface SignService {
* @return -
*/
int changeStatus(Long id,String status);
+
+ /**
+ * 查询上传页面标签列表
+ * @return -
+ */
+ List querySignList();
+
+ /**
+ * 根据分类id查询小程序端标签分页
+ * @return -
+ */
+ List queryFrontSignByTypeId(Long typeId);
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/TiktokImgService.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/TiktokImgService.java
index 956fc4a..b462919 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/TiktokImgService.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/TiktokImgService.java
@@ -2,8 +2,10 @@ package com.bnyer.img.service;
import com.bnyer.img.domain.TiktokImg;
import com.bnyer.img.dto.StatusDto;
+import com.bnyer.img.dto.TiktokImgMiniDto;
import com.bnyer.img.dto.TiktokImgPageDto;
import com.bnyer.img.vo.CreatorTypeImgVo;
+import com.bnyer.img.vo.ImgSignVo;
import com.bnyer.img.vo.TiktokImgVo;
import java.util.List;
@@ -12,10 +14,10 @@ public interface TiktokImgService {
/**
* 新增图片
- * @param tiktokImg 图片
+ * @param dto 图片
* @return -
*/
- int insert(TiktokImg tiktokImg);
+ int insert(TiktokImgMiniDto dto);
/**
* 修改图片
@@ -51,7 +53,7 @@ public interface TiktokImgService {
* @param typeId 分类id
* @return -
*/
- List queryInList(String creatorId,String typeId);
+ List queryInList(String creatorId, String typeId);
/**
* 查询指定艺术家对外的图片集合(通过审核的)
@@ -131,4 +133,12 @@ public interface TiktokImgService {
* @return -
*/
int onlineOrOfflineImg(StatusDto param);
+
+ /**
+ * 根据分类id和便签Id查询图片分页
+ * @param signId 标签id
+ * @param typeId 分类id
+ * @return -
+ */
+ List querySignImgBySignIdAndTypeId(Long signId, Long typeId);
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/ImgSignRelationServiceImpl.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/ImgSignRelationServiceImpl.java
deleted file mode 100644
index f200de0..0000000
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/ImgSignRelationServiceImpl.java
+++ /dev/null
@@ -1,104 +0,0 @@
-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.utils.StringUtils;
-import com.bnyer.img.domain.Banner;
-import com.bnyer.img.domain.ImgSignRelation;
-import com.bnyer.img.domain.Sign;
-import com.bnyer.img.dto.ImgSignRelationPageDto;
-import com.bnyer.img.dto.SignPageDto;
-import com.bnyer.img.mapper.ImgSignRelationMapper;
-import com.bnyer.img.service.ImgSignRelationService;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-
-import java.util.List;
-
-/**
- * @Author qyh
- * @Date 2022/7/10 21:22
- * @Description
- */
-@Service
-@Slf4j
-public class ImgSignRelationServiceImpl implements ImgSignRelationService {
- @Autowired
- private ImgSignRelationMapper imgSignRelationMapper;
- @Override
- @Transactional(rollbackFor = Exception.class)
- public int insert(ImgSignRelation imgSignRelation) {
- return imgSignRelationMapper.insert(imgSignRelation);
- }
-
- @Override
- @Transactional(rollbackFor = Exception.class)
- public int update(ImgSignRelation imgSignRelation) {
- return imgSignRelationMapper.updateById(imgSignRelation);
- }
-
- @Override
- @Transactional(rollbackFor = Exception.class)
- public int delete(List ids) {
- return imgSignRelationMapper.deleteBatchIds(ids);
- }
-
- @Override
- public List queryPage(ImgSignRelationPageDto dto) {
- LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>();
- if(dto.getImgId()!=null){
- wrapper.like(ImgSignRelation::getImgId,dto.getImgId());
- }
- if(dto.getSignId()!=null){
- wrapper.eq(ImgSignRelation::getSignId, dto.getSignId());
- }
- if(StringUtils.isNotBlank(dto.getIsShow())){
- wrapper.eq(ImgSignRelation::getIsShow, dto.getIsShow());
- }
- wrapper.orderByDesc(ImgSignRelation::getSort);
- return imgSignRelationMapper.selectList(wrapper);
- }
-
- @Override
- public ImgSignRelation queryDetails(Long id) {
- return imgSignRelationMapper.selectById(id);
- }
-
- @Override
- public List queryListByImgId(String imgId) {
- QueryWrapper wrapper = new QueryWrapper<>();
- wrapper.eq("img_id",imgId);
- return imgSignRelationMapper.selectList(wrapper);
- }
- @Override
- public List queryListBySignId(String signId) {
- QueryWrapper wrapper = new QueryWrapper<>();
- wrapper.eq("sign_id",signId);
- return imgSignRelationMapper.selectList(wrapper);
- }
-
- @Override
- @Transactional(rollbackFor = Exception.class)
- public int changeStatus(Long id, String status) {
- LambdaUpdateWrapper wrapper = new LambdaUpdateWrapper<>();
- wrapper.eq(ImgSignRelation::getId,id);
- ImgSignRelation imgSignRelation = new ImgSignRelation();
- imgSignRelation.setIsShow(status);
- return imgSignRelationMapper.update(imgSignRelation,wrapper);
- }
-
- @Override
- @Transactional(rollbackFor = Exception.class)
- public int deleteByColumn(String columnName, Long conditions) {
- QueryWrapper wrapper = new QueryWrapper<>();
- if (conditions!=null){
- wrapper.eq(columnName,conditions);
- imgSignRelationMapper.delete(wrapper);
- }
-
- return 0;
- }
-}
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 8ce4f29..cad82a4 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
@@ -1,17 +1,18 @@
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.ImgSignRelation;
import com.bnyer.img.domain.Sign;
-import com.bnyer.img.dto.BannerPageDto;
import com.bnyer.img.dto.SignPageDto;
+import com.bnyer.img.mapper.ImgSignRelationMapper;
import com.bnyer.img.mapper.SignMapper;
import com.bnyer.img.service.SignService;
-import com.bnyer.img.vo.BannerVo;
+import com.bnyer.img.vo.SignImgVo;
+import com.bnyer.img.vo.SignVo;
+import com.bnyer.img.vo.TiktokImgVo;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -27,7 +28,7 @@ public class SignServiceImpl implements SignService {
private SignMapper signMapper;
@Autowired
- private ImgSignRelationServiceImpl imgSignRelationService;
+ private ImgSignRelationMapper imgSignRelationMapper;
@Override
@Transactional(rollbackFor = Exception.class)
@@ -52,11 +53,13 @@ public class SignServiceImpl implements SignService {
@Override
@Transactional(rollbackFor = Exception.class)
public int delete(List ids) {
- //先把img_sign_relation关联的数据删掉
- for (Long id : ids) {
- imgSignRelationService.deleteByColumn("sign_id",id);
- }
- return signMapper.deleteBatchIds(ids);
+ int i = signMapper.deleteBatchIds(ids);
+ //删除关联relation
+ LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>();
+ wrapper.in(ImgSignRelation::getSignId, ids);
+ imgSignRelationMapper.delete(wrapper);
+ //imgSignRelationMapper.batchDelete(ids);
+ return i;
}
@Override
@@ -98,4 +101,14 @@ public class SignServiceImpl implements SignService {
sign.setIsShow(status);
return signMapper.update(sign,wrapper);
}
+
+ @Override
+ public List querySignList() {
+ return signMapper.querySignList();
+ }
+
+ @Override
+ public List queryFrontSignByTypeId(Long typeId) {
+ return signMapper.queryFrontSign(typeId);
+ }
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/TiktokImgServiceImpl.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/TiktokImgServiceImpl.java
index 4c587a0..132d5a5 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/TiktokImgServiceImpl.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/TiktokImgServiceImpl.java
@@ -10,14 +10,18 @@ import com.bnyer.img.domain.TiktokCollection;
import com.bnyer.img.domain.TiktokImg;
import com.bnyer.img.domain.TiktokLike;
import com.bnyer.img.dto.StatusDto;
+import com.bnyer.img.dto.TiktokImgMiniDto;
import com.bnyer.img.dto.TiktokImgPageDto;
+import com.bnyer.img.mapper.ImgSignRelationMapper;
import com.bnyer.img.mapper.TiktokCollectionMapper;
import com.bnyer.img.mapper.TiktokImgMapper;
import com.bnyer.img.mapper.TiktokLikeMapper;
import com.bnyer.img.service.TiktokImgService;
import com.bnyer.img.vo.CreatorTypeImgVo;
+import com.bnyer.img.vo.ImgSignVo;
import com.bnyer.img.vo.TiktokImgVo;
import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -42,14 +46,28 @@ public class TiktokImgServiceImpl implements TiktokImgService {
@Autowired
private RedisService redisService;
+ @Autowired
+ private ImgSignRelationMapper imgSignRelationMapper;
+
@Override
@Transactional(rollbackFor = Exception.class)
- public int insert(TiktokImg tiktokImg) {
+ public int insert(TiktokImgMiniDto dto) {
+ TiktokImg tiktokImg = new TiktokImg();
+ tiktokImg.setImgUrl(dto.getImgUrl());
+ tiktokImg.setCreatorId(dto.getCreatorId());
+ tiktokImg.setTypeId(dto.getTypeId());
+ tiktokImg.setStatus(dto.getStatus());
tiktokImg.setCreateTime(new Date());
tiktokImg.setUpdateTime(new Date());
- return tiktokImgMapper.insert(tiktokImg);
+ int insert = tiktokImgMapper.insert(tiktokImg);
+ //保存标签
+ if(CollectionUtils.isNotEmpty(dto.getSignList())){
+ imgSignRelationMapper.batctInsert(tiktokImg.getId(),dto.getTypeId(),dto.getSignList());
+ }
+ return insert;
}
+
@Override
@Transactional(rollbackFor = Exception.class)
public int update(TiktokImg tiktokImg) {
@@ -102,7 +120,7 @@ public class TiktokImgServiceImpl implements TiktokImgService {
}
@Override
- public List queryInList(String creatorId, String typeId) {
+ public List queryInList(String creatorId, String typeId) {
return tiktokImgMapper.queryInList(creatorId,typeId);
}
@@ -229,4 +247,9 @@ public class TiktokImgServiceImpl implements TiktokImgService {
}
}
+ @Override
+ public List querySignImgBySignIdAndTypeId(Long signId, Long typeId) {
+ return tiktokImgMapper.querySignImgBySignIdAndTypeId(signId,typeId);
+ }
+
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/ImgSignVo.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/ImgSignVo.java
new file mode 100644
index 0000000..066c218
--- /dev/null
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/ImgSignVo.java
@@ -0,0 +1,48 @@
+package com.bnyer.img.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+import java.util.List;
+
+
+@Getter
+@Setter
+@ApiModel("图片标签响应类")
+public class ImgSignVo implements Serializable {
+
+ @ApiModelProperty(value="id")
+ private Long id;
+
+ @ApiModelProperty(value="图片地址")
+ private String imgUrl;
+
+ @ApiModelProperty(value="用户id")
+ private Long creatorId;
+
+ @ApiModelProperty(value="分类id")
+ private Long typeId;
+
+ @ApiModelProperty(value="下载量")
+ private Integer downloadNum;
+
+ @ApiModelProperty(value="点赞量")
+ private Integer greatNum;
+
+ @ApiModelProperty(value="收藏量")
+ private Integer collectionNum;
+
+ @ApiModelProperty(value="状态(0->待审核;1->审核通过;2->审核拒绝;3->已上架;4->已下架))")
+ private String status;
+
+ @ApiModelProperty(value="是否热门(0->冷门;1->热门)")
+ private String isHot;
+
+ @ApiModelProperty(value="标签列表")
+ private List signList;
+
+ private static final long serialVersionUID = 1L;
+}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/SignImgVo.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/SignImgVo.java
new file mode 100644
index 0000000..de8f0bf
--- /dev/null
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/SignImgVo.java
@@ -0,0 +1,28 @@
+package com.bnyer.img.vo;
+
+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 SignImgVo implements Serializable {
+ @ApiModelProperty(value="标签id")
+ private Long signId;
+
+ @ApiModelProperty(value="标签名称")
+ private String signName;
+
+ @ApiModelProperty(value="背景图")
+ private String img;
+
+ @ApiModelProperty(value="分类id")
+ private Long typeId;
+
+ private static final long serialVersionUID = 1L;
+}
\ No newline at end of file
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/SignRelationVo.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/SignRelationVo.java
new file mode 100644
index 0000000..62635b4
--- /dev/null
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/SignRelationVo.java
@@ -0,0 +1,25 @@
+package com.bnyer.img.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+
+
+@Getter
+@Setter
+@ApiModel("标签关系响应体")
+public class SignRelationVo implements Serializable {
+ @ApiModelProperty(value="标签id")
+ private Long signId;
+
+ @ApiModelProperty(value="标签名称")
+ private String signName;
+
+ @ApiModelProperty(value="标签图片主键id")
+ private Long signImgRelationId;
+
+ private static final long serialVersionUID = 1L;
+}
\ No newline at end of file
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/SignVo.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/SignVo.java
new file mode 100644
index 0000000..084f30b
--- /dev/null
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/SignVo.java
@@ -0,0 +1,22 @@
+package com.bnyer.img.vo;
+
+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 SignVo implements Serializable {
+ @ApiModelProperty(value="主键id")
+ private Long id;
+
+ @ApiModelProperty(value="标签名称")
+ private String name;
+
+ private static final long serialVersionUID = 1L;
+}
\ No newline at end of file
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/TiktokCollectionVo.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/TiktokCollectionVo.java
index 2c3915c..fa04176 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/TiktokCollectionVo.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/TiktokCollectionVo.java
@@ -11,7 +11,7 @@ import java.io.Serializable;
@Getter
@Setter
@ApiModel("抖音收藏响应类")
-public class TiktokCollectionVo implements Serializable {
+public class TiktokCollectionVo implements Serializable {
@ApiModelProperty(value="id")
private Long id;
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/TiktokImgVo.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/TiktokImgVo.java
index 255e6a4..8731943 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/TiktokImgVo.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/TiktokImgVo.java
@@ -6,6 +6,7 @@ import lombok.Getter;
import lombok.Setter;
import java.io.Serializable;
+import java.util.List;
@Getter
@@ -40,5 +41,8 @@ public class TiktokImgVo implements Serializable {
@ApiModelProperty(value="是否热门(0->冷门;1->热门)")
private String isHot;
+ @ApiModelProperty(value="标签列表")
+ private List signList;
+
private static final long serialVersionUID = 1L;
}
diff --git a/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/ImgSignRelationMapper.xml b/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/ImgSignRelationMapper.xml
index 7c05c49..8d8cac4 100644
--- a/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/ImgSignRelationMapper.xml
+++ b/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/ImgSignRelationMapper.xml
@@ -6,14 +6,35 @@
+
-
-
-
- id, img_id, sign_id, is_show, create_time, update_time, sort
+ id, img_id, type_id, sign_id, create_time
+
+ select
+ iis.id,iis.name
+ from img_img_sign_relation iisr
+ join img_sign iis on iisr.sign_id = iis.id
+ where iisr.img_id = #{imgId} and iis.is_show = '1'
+
+
+ insert into img_img_sign_relation(img_id, type_id, sign_id,create_time) values
+
+ (
+ #{imgId}, #{typeId}, #{item},now()
+ )
+
+
+
+ select
+ iis.id as signId,iis.name as signName,
+ iisr.id as signImgRelationId
+ from img_img_sign_relation iisr
+ join img_sign iis on iisr.sign_id = iis.id
+ where iisr.img_id = #{imgId} and iis.is_show = '1'
+
\ No newline at end of file
diff --git a/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/SignMapper.xml b/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/SignMapper.xml
index 43d4ee9..170b047 100644
--- a/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/SignMapper.xml
+++ b/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/SignMapper.xml
@@ -6,6 +6,7 @@
+
@@ -13,6 +14,21 @@
- id, `name`, is_show, create_time, update_time, sort
+ id, `name`, img,is_show, create_time, update_time, sort
+
+ select
+ id,name
+ from img_sign
+ where is_show = "1"
+ order by sort asc
+
+
+ select
+ iis.id as signId,iis.name as signName,iis.img as img,iisr.type_id as typeId
+ from img_sign iis
+ join img_img_sign_relation iisr on iisr.sign_id = iis.id
+ where iis.is_show = "1" and iisr.type_id = #{typeId}
+ order by sort asc
+
\ No newline at end of file
diff --git a/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/TiktokImgMapper.xml b/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/TiktokImgMapper.xml
index c6c7740..8c3df61 100644
--- a/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/TiktokImgMapper.xml
+++ b/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/TiktokImgMapper.xml
@@ -18,25 +18,52 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
id, img_url, creator_id, type_id, download_num, great_num, collection_num, `status`,
is_hot, is_show, create_time, update_time, sort
-
+
select
- id,img_url,creator_id,type_id,download_num, great_num, collection_num,status,is_hot
- from img_tiktok_img
+ iti.id as id,iti.img_url as imgUrl,iti.creator_id as creatorId,iti.type_id as typeId,
+ iti.download_num as downloadNum, iti.great_num as greatNum, iti.collection_num as collectionNum,
+ iti.status as status, iti.is_hot as isHot
+ from img_tiktok_img iti
- is_show = '1'
+ iti.is_show = '1'
- and creator_id = #{creatorId}
+ and iti.creator_id = #{creatorId}
- and type_id = #{typeId}
+ and iti.type_id = #{typeId}
- order by create_time desc
+ order by iti.create_time desc
@@ -53,37 +80,45 @@
-
+
select
- id,img_url,creator_id,type_id,download_num, great_num, collection_num,status,is_hot
- from img_tiktok_img
- where creator_id = #{creatorId} and is_show = '1' and status = '3'
- order by create_time desc
+ iti.id as id,iti.img_url as imgUrl,iti.creator_id as creatorId,iti.type_id as typeId,
+ iti.download_num as downloadNum, iti.great_num greatNum, iti.collection_num as collectionNum,
+ iti.status as status,iti.is_hot as isHot
+ from img_tiktok_img iti
+ where iti.creator_id = #{creatorId} and iti.is_show = '1' and iti.status = '3'
+ order by iti.create_time desc
limit 3
-
+
select
- id,img_url,creator_id,type_id,download_num, great_num, collection_num,status,is_hot
- from img_tiktok_img
- where creator_id = #{creatorId} and is_show = '1' and status = '3'
- order by create_time desc
+ iti.id as id,iti.img_url as imgUrl,iti.creator_id as creatorId,
+ iti.type_id as typeId,iti.download_num as downloadNum, iti.great_num as greatNum,
+ iti.collection_num as collectionNum,iti.status as status,iti.is_hot as isHot
+ from img_tiktok_img iti
+ where iti.creator_id = #{creatorId} and iti.is_show = '1' and iti.status = '3'
+ order by iti.create_time desc
-
+
select
- id,img_url,creator_id,type_id,download_num, great_num, collection_num,status,is_hot
- from img_tiktok_img
- where is_show = '1' and status = '3' and id = #{imgId}
+ iti.id as id,iti.img_url as imgUrl,iti.creator_id as creatorId,
+ iti.type_id as typeId,iti.download_num as downloadNum, iti.great_num as greatNum,
+ iti.collection_num as collectionNum,iti.status as status,iti.is_hot as isHot
+ from img_tiktok_img iti
+ where iti.is_show = '1' and iti.status = '3' and iti.id = #{imgId}
-
+
select
- id,img_url,creator_id,type_id,download_num, great_num, collection_num,status,is_hot
- from img_tiktok_img
- where is_show = '1' and status = '3'
+ iti.id as id,iti.img_url as imgUrl,iti.creator_id as creatorId,
+ iti.type_id as typeId,iti.download_num downloadNum, iti.great_num as greatNum,
+ iti.collection_num as collectionNum,iti.status as status,iti.is_hot as isHot
+ from img_tiktok_img iti
+ where iti.is_show = '1' and iti.status = '3'
-
+
select
iti.id as id,iti.img_url as imgUrl,iti.creator_id as creatorId,iti.type_id as TypeId,
iti.download_num as downloadNum,iti.great_num as greatNum,iti.collection_num as collectionNum,
@@ -101,4 +136,13 @@
where type_id = #{typeId} and creator_id = #{creatorId} and is_show = '1'
and status = '1'
+
+ select
+ iti.id as id,iti.img_url as imgUrl,iti.creator_id as creatorId,
+ iti.type_id as typeId,iti.download_num as downloadNum, iti.great_num as greatNum,
+ iti.collection_num as collectionNum,iti.status as status,iti.is_hot as isHot
+ from img_tiktok_img iti
+ where iti.id in
+ (select img_id from img_img_sign_relation where sign_id = #{signId} and type_id = #{typeId})
+
From 229d9b90d7b401d2143a5184aeff5e4f46f13e7e Mon Sep 17 00:00:00 2001
From: penny <2500338766@qq.com>
Date: Sun, 17 Jul 2022 20:42:14 +0800
Subject: [PATCH 23/32] =?UTF-8?q?feature-img-quan-1.0.0:=20=E8=B0=83?=
=?UTF-8?q?=E6=95=B4=E4=BB=A3=E7=A0=81=E9=80=BB=E8=BE=91?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../com/bnyer/img/config/AlipayConfig.java | 10 +--
.../java/com/bnyer/img/config/BzConfig.java | 25 +++++++
.../java/com/bnyer/img/config/FhConfig.java | 2 +-
.../com/bnyer/img/config/TiktokConfig.java | 6 +-
.../java/com/bnyer/img/config/WxConfig.java | 6 +-
.../img/controller/BzDataController.java | 66 +------------------
.../com/bnyer/img/service/BzDataService.java | 3 +
.../img/service/impl/BzDataServiceImpl.java | 46 ++++++++++++-
8 files changed, 85 insertions(+), 79 deletions(-)
create mode 100644 bnyer-services/bnyer-img/src/main/java/com/bnyer/img/config/BzConfig.java
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/config/AlipayConfig.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/config/AlipayConfig.java
index 7c95f63..09928e0 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/config/AlipayConfig.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/config/AlipayConfig.java
@@ -22,17 +22,17 @@ public class AlipayConfig{
private String gatewayUrl;
@Value("${alipay.appId}")
- public String appId;
+ private String appId;
@Value("${alipay.privateKey}")
- public String privateKey;
+ private String privateKey;
@Value("${alipay.certPath}")
- public String certPath;
+ private String certPath;
@Value("${alipay.alipayPublicCertPath}")
- public String alipayPublicCertPath;
+ private String alipayPublicCertPath;
@Value("${alipay.rootPath}")
- public String rootPath;
+ private String rootPath;
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/config/BzConfig.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/config/BzConfig.java
new file mode 100644
index 0000000..2fc33df
--- /dev/null
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/config/BzConfig.java
@@ -0,0 +1,25 @@
+package com.bnyer.img.config;
+
+import lombok.Getter;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.cloud.context.config.annotation.RefreshScope;
+import org.springframework.context.annotation.Configuration;
+
+/**
+ * 八字算命配置类
+ * @author chengkun
+ * @date 2022/4/21 17:43
+ */
+@Configuration
+@ConfigurationProperties(prefix = "bnyer.img.bz")
+@Getter
+@RefreshScope
+public class BzConfig {
+
+ @Value("${bnyer.img.bz.appCode}")
+ private String appCode;
+
+ @Value("${bnyer.img.bz.url}")
+ private String url;
+}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/config/FhConfig.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/config/FhConfig.java
index 9b462cc..0c39b7b 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/config/FhConfig.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/config/FhConfig.java
@@ -18,7 +18,7 @@ import org.springframework.context.annotation.Configuration;
public class FhConfig {
@Value("${bnyer.img.fasthand.appId}")
- private String appId;
+ public String appId;
@Value("${bnyer.img.fasthand.secret}")
public String secret;
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/config/TiktokConfig.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/config/TiktokConfig.java
index 0ca1522..2993230 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/config/TiktokConfig.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/config/TiktokConfig.java
@@ -26,13 +26,13 @@ public class TiktokConfig implements WebMvcConfigurer {
private String appId;
@Value("${bnyer.img.tiktok.secret}")
- public String secret;
+ private String secret;
@Value("${bnyer.img.tiktok.sessionInfoUrl}")
- public String sessionInfoUrl;
+ private String sessionInfoUrl;
@Value("${bnyer.img.tiktok.tokenUrl}")
- public String tokenUrl;
+ private String tokenUrl;
// @Resource
// private TokenCheckHandler tokenCheckHandler;
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/config/WxConfig.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/config/WxConfig.java
index 192166e..eb51a2a 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/config/WxConfig.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/config/WxConfig.java
@@ -26,12 +26,12 @@ public class WxConfig {
private String appId;
@Value("${bnyer.img.wechat.secret}")
- public String secret;
+ private String secret;
@Value("${bnyer.img.wechat.sessionInfoUrl}")
- public String sessionInfoUrl;
+ private String sessionInfoUrl;
@Value("${bnyer.img.wechat.tokenUrl}")
- public String tokenUrl;
+ private String tokenUrl;
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/BzDataController.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/BzDataController.java
index 8ea5350..d360df4 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/BzDataController.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/BzDataController.java
@@ -1,46 +1,19 @@
package com.bnyer.img.controller;
-import cn.hutool.http.server.HttpServerRequest;
-import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
-import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.bnyer.common.core.domain.R;
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.common.redis.service.RedisService;
-import com.bnyer.img.domain.Banner;
-import com.bnyer.img.domain.BzData;
-import com.bnyer.img.dto.BannerDto;
-import com.bnyer.img.dto.BannerPageDto;
import com.bnyer.img.dto.BzDto;
-import com.bnyer.img.dto.StatusDto;
-import com.bnyer.img.service.BannerService;
import com.bnyer.img.service.BzDataService;
-import com.github.pagehelper.PageHelper;
-import com.xxl.job.core.biz.model.ReturnT;
-import com.xxl.job.core.log.XxlJobLogger;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.extern.slf4j.Slf4j;
-import org.apache.http.HttpEntity;
-import org.apache.http.HttpResponse;
-import org.apache.http.client.methods.HttpGet;
-import org.apache.http.impl.client.CloseableHttpClient;
-import org.apache.http.impl.client.HttpClients;
-import org.apache.http.util.EntityUtils;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.context.annotation.Lazy;
-import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
-import java.io.IOException;
-import java.net.URLEncoder;
-import java.time.LocalDate;
-import java.util.List;
-import java.util.Set;
@Api(value = "【图文平台】八字运势接口",tags = "【图文平台】八字运势接口")
@RestController
@@ -66,45 +39,8 @@ public class BzDataController extends BaseController {
@ApiOperation(value = "八字页面数据统计")
@PostMapping("/dataStatistics")
public R dataStatistics(@RequestParam String source, HttpServletRequest request) {
- String ip = getIpAddr(request);
+ String ip = bzDataService.getIpAddr(request);
bzDataService.dataStatistics(ip,source);
return R.ok();
}
-
- private String getIpAddr(HttpServletRequest request) {
- String ip = request.getHeader("x-forwarded-for");
- //System.out.println("x-forwarded-for ip: " + ip);
- if (ip != null && ip.length() != 0 && !"unknown".equalsIgnoreCase(ip)) {
- // 多次反向代理后会有多个ip值,第一个ip才是真实ip
- if (ip.indexOf(",") != -1) {
- ip = ip.split(",")[0];
- }
- }
- if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
- ip = request.getHeader("Proxy-Client-IP");
- //System.out.println("Proxy-Client-IP ip: " + ip);
- }
- if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
- ip = request.getHeader("WL-Proxy-Client-IP");
- //System.out.println("WL-Proxy-Client-IP ip: " + ip);
- }
- if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
- ip = request.getHeader("HTTP_CLIENT_IP");
- //System.out.println("HTTP_CLIENT_IP ip: " + ip);
- }
- if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
- ip = request.getHeader("HTTP_X_FORWARDED_FOR");
- //System.out.println("HTTP_X_FORWARDED_FOR ip: " + ip);
- }
- if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
- ip = request.getHeader("X-Real-IP");
- //System.out.println("X-Real-IP ip: " + ip);
- }
- if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
- ip = request.getRemoteAddr();
- //System.out.println("getRemoteAddr ip: " + ip);
- }
- //System.out.println("获取客户端ip: " + ip);
- return ip;
- }
}
\ No newline at end of file
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/BzDataService.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/BzDataService.java
index 8d6e284..6d0365d 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/BzDataService.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/BzDataService.java
@@ -8,6 +8,7 @@ import com.bnyer.img.dto.BannerPageDto;
import com.bnyer.img.dto.BzDto;
import com.bnyer.img.vo.BannerVo;
+import javax.servlet.http.HttpServletRequest;
import java.util.List;
public interface BzDataService {
@@ -16,4 +17,6 @@ public interface BzDataService {
void dataStatistics(String ip,String source);
int update(BzData bzData,UpdateWrapper updateWrapper);
+
+ String getIpAddr(HttpServletRequest request);
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/BzDataServiceImpl.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/BzDataServiceImpl.java
index b054c92..41ee1e2 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/BzDataServiceImpl.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/BzDataServiceImpl.java
@@ -9,6 +9,7 @@ import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.bnyer.common.core.domain.R;
import com.bnyer.common.core.utils.StringUtils;
import com.bnyer.common.redis.service.RedisService;
+import com.bnyer.img.config.BzConfig;
import com.bnyer.img.domain.Banner;
import com.bnyer.img.domain.BzData;
import com.bnyer.img.dto.BannerPageDto;
@@ -29,6 +30,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
+import javax.servlet.http.HttpServletRequest;
import java.io.IOException;
import java.net.URLEncoder;
import java.time.LocalDate;
@@ -43,13 +45,15 @@ public class BzDataServiceImpl implements BzDataService {
private RedisService redisService;
@Autowired
private BzDataMapper bzDataMapper;
+ @Autowired
+ private BzConfig bzConfig;
@Override
public JSONObject getYs(BzDto dto) {
//API产品路径
- String requestUrl = "https://xuanxue.market.alicloudapi.com/ai_china_knowledge/bazi/v1?";
+ String requestUrl = bzConfig.getUrl();
//阿里云APPCODE
- String appcode = "7a37e4f4f24d4737bf48143d371a215b";
+ String appcode = bzConfig.getAppCode();
String lastName = dto.getLastName();
String firstName = dto.getFirstName();
String sex = dto.getSex();
@@ -121,4 +125,42 @@ public class BzDataServiceImpl implements BzDataService {
public int update(BzData bzData, UpdateWrapper updateWrapper) {
return bzDataMapper.update(bzData,updateWrapper);
}
+
+ @Override
+ public String getIpAddr(HttpServletRequest request) {
+ String ip = request.getHeader("x-forwarded-for");
+ //System.out.println("x-forwarded-for ip: " + ip);
+ if (ip != null && ip.length() != 0 && !"unknown".equalsIgnoreCase(ip)) {
+ // 多次反向代理后会有多个ip值,第一个ip才是真实ip
+ if (ip.indexOf(",") != -1) {
+ ip = ip.split(",")[0];
+ }
+ }
+ if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
+ ip = request.getHeader("Proxy-Client-IP");
+ //System.out.println("Proxy-Client-IP ip: " + ip);
+ }
+ if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
+ ip = request.getHeader("WL-Proxy-Client-IP");
+ //System.out.println("WL-Proxy-Client-IP ip: " + ip);
+ }
+ if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
+ ip = request.getHeader("HTTP_CLIENT_IP");
+ //System.out.println("HTTP_CLIENT_IP ip: " + ip);
+ }
+ if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
+ ip = request.getHeader("HTTP_X_FORWARDED_FOR");
+ //System.out.println("HTTP_X_FORWARDED_FOR ip: " + ip);
+ }
+ if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
+ ip = request.getHeader("X-Real-IP");
+ //System.out.println("X-Real-IP ip: " + ip);
+ }
+ if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
+ ip = request.getRemoteAddr();
+ //System.out.println("getRemoteAddr ip: " + ip);
+ }
+ //System.out.println("获取客户端ip: " + ip);
+ return ip;
+ }
}
From 5cfa11dd645054fb659a9870af3f99b1e3ef0c8c Mon Sep 17 00:00:00 2001
From: chengkun <2500338766@qq.com>
Date: Mon, 18 Jul 2022 08:41:49 +0800
Subject: [PATCH 24/32] =?UTF-8?q?feature1.0.0-img:=E5=A4=84=E7=90=86?=
=?UTF-8?q?=E5=85=AB=E5=AD=97=E7=AE=97=E5=91=BD=E6=8E=A5=E5=8F=A3?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../img/controller/CreatorMiniController.java | 14 ++++++++++++++
.../bnyer/img/controller/FhMiniController.java | 15 +++++++++++++++
.../img/controller/TiktokMiniController.java | 15 +++++++++++++++
.../bnyer/img/controller/WxMiniController.java | 16 ++++++++++++++++
4 files changed, 60 insertions(+)
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
index f2c5852..3b91dec 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
@@ -1,6 +1,7 @@
package com.bnyer.img.controller;
import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
import com.bnyer.common.core.web.controller.BaseController;
import com.bnyer.common.core.web.domain.AjaxResult;
import com.bnyer.common.core.web.page.TableDataInfo;
@@ -59,6 +60,9 @@ public class CreatorMiniController extends BaseController {
@Autowired
private SignService signService;
+ @Autowired
+ private BzDataService bzDataService;
+
//@TokenCheck
@ApiOperation(value="检查手机号是否重复")
@PostMapping(value = "/checkPhone")
@@ -326,4 +330,14 @@ public class CreatorMiniController extends BaseController {
return AjaxResult.success(signService.querySignList());
}
+ //@TokenCheck
+ @ApiOperation(value = "八字算命")
+ @PostMapping("/getYs")
+ public AjaxResult getYs(@RequestBody @ApiParam("八字运势") BzDto dto) {
+ JSONObject jsonObject = bzDataService.getYs(dto);
+ if (jsonObject!=null){
+ return AjaxResult.success(jsonObject);
+ }
+ return AjaxResult.error();
+ }
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/FhMiniController.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/FhMiniController.java
index fbf6ea0..944ca8f 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/FhMiniController.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/FhMiniController.java
@@ -1,6 +1,7 @@
package com.bnyer.img.controller;
import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
import com.bnyer.common.core.web.controller.BaseController;
import com.bnyer.common.core.web.domain.AjaxResult;
import com.bnyer.common.core.web.page.TableDataInfo;
@@ -59,6 +60,9 @@ public class FhMiniController extends BaseController {
@Autowired
private SignService signService;
+ @Autowired
+ private BzDataService bzDataService;
+
//@TokenCheck
@ApiOperation(value="查询banner列表")
@GetMapping(value = "/listBanner")
@@ -262,4 +266,15 @@ public class FhMiniController extends BaseController {
List tiktokImgs = tiktokImgService.querySignImgBySignIdAndTypeId(dto.getSignId(), dto.getTypeId());
return getDataTable(tiktokImgs);
}
+
+ //@TokenCheck
+ @ApiOperation(value = "八字算命")
+ @PostMapping("/getYs")
+ public AjaxResult getYs(@RequestBody @ApiParam("八字运势") BzDto dto) {
+ JSONObject jsonObject = bzDataService.getYs(dto);
+ if (jsonObject!=null){
+ return AjaxResult.success(jsonObject);
+ }
+ return AjaxResult.error();
+ }
}
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 6d08e67..32c8958 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
@@ -2,6 +2,7 @@ package com.bnyer.img.controller;
import cn.hutool.core.collection.CollectionUtil;
import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
import com.bnyer.common.core.exception.ServiceException;
import com.bnyer.common.core.web.controller.BaseController;
import com.bnyer.common.core.web.domain.AjaxResult;
@@ -60,6 +61,9 @@ public class TiktokMiniController extends BaseController {
@Autowired
private SignService signService;
+ @Autowired
+ private BzDataService bzDataService;
+
//@TokenCheck
@ApiOperation(value="查询banner列表")
@GetMapping(value = "/listBanner")
@@ -265,4 +269,15 @@ public class TiktokMiniController extends BaseController {
List tiktokImgs = tiktokImgService.querySignImgBySignIdAndTypeId(dto.getSignId(), dto.getTypeId());
return getDataTable(tiktokImgs);
}
+
+ //@TokenCheck
+ @ApiOperation(value = "八字算命")
+ @PostMapping("/getYs")
+ public AjaxResult getYs(@RequestBody @ApiParam("八字运势") BzDto dto) {
+ JSONObject jsonObject = bzDataService.getYs(dto);
+ if (jsonObject!=null){
+ return AjaxResult.success(jsonObject);
+ }
+ return AjaxResult.error();
+ }
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/WxMiniController.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/WxMiniController.java
index 2f44dc2..28449ac 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/WxMiniController.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/WxMiniController.java
@@ -1,6 +1,8 @@
package com.bnyer.img.controller;
import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
+import com.bnyer.common.core.domain.R;
import com.bnyer.common.core.web.controller.BaseController;
import com.bnyer.common.core.web.domain.AjaxResult;
import com.bnyer.common.core.web.page.TableDataInfo;
@@ -59,6 +61,9 @@ public class WxMiniController extends BaseController {
@Autowired
private SignService signService;
+ @Autowired
+ private BzDataService bzDataService;
+
//@TokenCheck
@ApiOperation(value="查询banner列表")
@GetMapping(value = "/listBanner")
@@ -262,4 +267,15 @@ public class WxMiniController extends BaseController {
List tiktokImgs = tiktokImgService.querySignImgBySignIdAndTypeId(dto.getSignId(), dto.getTypeId());
return getDataTable(tiktokImgs);
}
+
+ //@TokenCheck
+ @ApiOperation(value = "八字算命")
+ @PostMapping("/getYs")
+ public AjaxResult getYs(@RequestBody @ApiParam("八字运势") BzDto dto) {
+ JSONObject jsonObject = bzDataService.getYs(dto);
+ if (jsonObject!=null){
+ return AjaxResult.success(jsonObject);
+ }
+ return AjaxResult.error();
+ }
}
From 000d7a3a79004f3805f088ba15a619db749029e7 Mon Sep 17 00:00:00 2001
From: qyhdd
Date: Tue, 19 Jul 2022 16:42:13 +0800
Subject: [PATCH 25/32] =?UTF-8?q?=E4=B8=8B=E8=BD=BD=E6=AC=A1=E6=95=B0?=
=?UTF-8?q?=E9=99=90=E5=88=B6?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../file/constants/RedisKeyConstant.java | 104 ++++++++++++++++++
.../com/bnyer/file/service/IFileService.java | 6 +
.../file/service/impl/FileServiceImpl.java | 69 +++++++-----
.../bnyer/img/constants/RedisKeyConstant.java | 4 +
.../img/controller/CreatorMiniController.java | 6 +
.../com/bnyer/img/dto/CreatorDownloadDto.java | 27 +++++
.../img/service/CreatorProfitService.java | 7 ++
.../impl/CreatorProfitServiceImpl.java | 30 +++++
.../bnyer/img/task/UserDownloadSyncTask.java | 7 ++
9 files changed, 235 insertions(+), 25 deletions(-)
create mode 100644 bnyer-services/bnyer-file/src/main/java/com/bnyer/file/constants/RedisKeyConstant.java
create mode 100644 bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorDownloadDto.java
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/constants/RedisKeyConstant.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/constants/RedisKeyConstant.java
new file mode 100644
index 0000000..495eb85
--- /dev/null
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/constants/RedisKeyConstant.java
@@ -0,0 +1,104 @@
+package com.bnyer.file.constants;
+
+public class RedisKeyConstant {
+
+
+ /**
+ * 抖音小程序用户收藏图片键
+ */
+ public static final String TIKTOK_USER_COLLECT_KEY = "bnyer.img.tiktok.collect:";
+
+ /**
+ * 抖音小程序图片收藏数量键
+ */
+ public static final String TIKTOK_IMG_COLLECT_NUM_KEY = "bnyer.img.tiktok.collectNum";
+
+ /**
+ * 快手小程序图片收藏数量键
+ */
+ public static final String FAST_HAND_IMG_COLLECT_NUM_KEY = "bnyer.img.fh.collectNum";
+
+ /**
+ * 微信小程序图片收藏数量键
+ */
+ public static final String WECHAT_IMG_COLLECT_NUM_KEY = "bnyer.img.wx.collectNum";
+
+ /**
+ * 抖音小程序用户点赞图片键
+ */
+ public static final String TIKTOK_USER_LIKE_KEY = "bnyer.img.tiktok.like";
+
+ /**
+ * 快手小程序用户点赞图片键
+ */
+ public static final String FAST_HAND_USER_LIKE_KEY = "bnyer.img.fh.like";
+
+ /**
+ * 微信小程序用户点赞图片键
+ */
+ public static final String WECHAT_USER_LIKE_KEY = "bnyer.img.wx.like";
+
+ /**
+ * 抖音小程序图片点赞数量键
+ */
+ public static final String TIKTOK_IMG_LIKE_NUM_KEY = "bnyer.img.tiktok.likeNum";
+
+ /**
+ * 快手小程序图片点赞数量键
+ */
+ public static final String FAST_HAND_IMG_LIKE_NUM_KEY = "bnyer.img.fh.likeNum";
+
+ /**
+ * 微信小程序图片点赞数量键
+ */
+ public static final String WECHAT_IMG_LIKE_NUM_KEY = "bnyer.img.wx.likeNum";
+
+ /**
+ * 抖音小程序图片下载数量键
+ */
+ public static final String TIKTOK_IMG_DOWNLOAD_NUM_KEY = "bnyer.img.creator.downloadNum:";
+
+ /**
+ * 抖音小程序图片下载总数量键
+ */
+ public static final String TIKTOK_IMG_TOTAL_DOWNLOAD_NUM_KEY = "bnyer.img.date.downloadTotalNum:";
+
+ /**
+ * 抖音小程序用户登录键
+ */
+ public static final String TIKTOK_USER_LOGIN_KEY = "bnyer.img.tiktok.user:";
+
+ /**
+ * 快手小程序用户登录键
+ */
+ public static final String FH_USER_LOGIN_KEY = "bnyer.img.fh.user:";
+
+ /**
+ * 微信小程序用户登录键
+ */
+ public static final String WECHAT_USER_LOGIN_KEY = "bnyer.img.wx.user:";
+
+ /**
+ * 微信小程序艺术家登录键
+ */
+ public static final String WECHAT_CREATOR_LOGIN_KEY = "bnyer.img.wechat.creator:";
+
+ /**
+ * 微信小程序艺术家邀请键
+ */
+ public static final String WECHAT_CREATOR_INVITE_KEY = "bnyer.img.invite.creator:";
+
+ /**
+ * 审核收益锁键
+ */
+ public static final String VERIFY_PROFIT_LOCK_KEY = "bnyer.img.profit.lock:";
+
+ /**
+ * 平台用户下载键
+ */
+ public static final String PLATFORM_USER_DOWNLOAD_KEY = "bnyer.img.user.download:";
+ /**
+ * 艺术家上传键
+ */
+ public static final String CREATOR_DOWNLOAD_KEY="bnyer.img.createor.download";
+}
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/IFileService.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/IFileService.java
index 530e4e3..c56e6e0 100644
--- a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/IFileService.java
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/IFileService.java
@@ -16,4 +16,10 @@ public interface IFileService {
ArrayList checkImg(ArrayList multipartFiles);
//图片检测+图片上传+图片保存
void checkUploadSave(FileUploadDto fileUploadDto) throws IOException;
+
+ /**
+ * 写入艺术家上传次数
+ * @param creator 艺术家id
+ */
+ void writeDownloadTotalNum(Long creator);
}
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/FileServiceImpl.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/FileServiceImpl.java
index bd806d8..2b5ec5c 100644
--- a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/FileServiceImpl.java
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/FileServiceImpl.java
@@ -1,5 +1,7 @@
package com.bnyer.file.service.impl;
+import com.bnyer.common.redis.service.RedisService;
+import com.bnyer.file.constants.RedisKeyConstant;
import com.bnyer.file.dto.FileDto;
import com.bnyer.file.dto.FileUploadDto;
import com.bnyer.file.service.IFileService;
@@ -11,6 +13,7 @@ import com.bnyer.file.vo.TiktokImgVo;
import com.bnyer.img.api.RemoteImgService;
import com.bnyer.img.api.dto.TiktokImgMiniDto;
import com.bnyer.system.api.RemoteFileService;
+import lombok.extern.slf4j.Slf4j;
import org.apache.http.entity.ContentType;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.mock.web.MockMultipartFile;
@@ -22,7 +25,9 @@ import javax.annotation.Resource;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;
+import java.text.SimpleDateFormat;
import java.util.ArrayList;
+import java.util.Date;
import java.util.UUID;
/**
@@ -31,6 +36,7 @@ import java.util.UUID;
* @Description:
*/
@Service("file")
+@Slf4j
public class FileServiceImpl implements IFileService {
@Autowired
private IQiniuService qiniuService;
@@ -38,6 +44,8 @@ public class FileServiceImpl implements IFileService {
private ITikTokImage tikTokImage;
@Autowired
private RemoteImgService remoteImgService;
+ @Autowired
+ private RedisService redisService;
@Override
public ArrayList checkImg(ArrayList multipartFiles) {
ArrayList chekFileVos = new ArrayList<>();
@@ -49,13 +57,13 @@ public class FileServiceImpl implements IFileService {
String filename = multipartFile.getResource().getFilename();
chekFileVo.setFileName(filename);
String imageString = ImgUtil.getImageString(multipartFile);
- String checkMsg = qiniuService.checkImageContent("data:application/octet-stream;base64," +imageString);
- if (checkMsg.equals("pass")){
+ String checkMsg = qiniuService.checkImageContent("data:application/octet-stream;base64," + imageString);
+ if (checkMsg.equals("pass")) {
//抖音图片检测二次检测
// if (tikTokImage.checkImageContent(multipartFile)) {
- //可以通过
- chekFileVo.setStatus("1");
- chekFileVos.add(chekFileVo);
+ //可以通过
+ chekFileVo.setStatus("1");
+ chekFileVos.add(chekFileVo);
// }else {
// //不可以通过
// chekFileVo.setStatus("2");
@@ -63,13 +71,13 @@ public class FileServiceImpl implements IFileService {
// }
continue;
}
- if (checkMsg.equals("review")){
+ if (checkMsg.equals("review")) {
//人工审核
chekFileVo.setStatus("0");
chekFileVos.add(chekFileVo);
continue;
}
- if (checkMsg.equals("block")){
+ if (checkMsg.equals("block")) {
//不可通过
chekFileVo.setStatus("2");
chekFileVos.add(chekFileVo);
@@ -81,25 +89,36 @@ public class FileServiceImpl implements IFileService {
@Override
@Async("mySimpleAsync")
public void checkUploadSave(FileUploadDto fileUploadDto) throws IOException {
- ArrayList multipartFiles = new ArrayList<>();
- for (FileDto fileDto : fileUploadDto.getFiles()) {
- InputStream inputStream = new ByteArrayInputStream(fileDto.getBytes());
- MultipartFile files = new MockMultipartFile(fileDto.getName(), fileDto.getOriginalFilename(), ContentType.APPLICATION_OCTET_STREAM.toString(), inputStream);
- //System.out.println(files.getSize());
- multipartFiles.add(files);
- }
+ //redis累计平台用户当天下载次数,12.00后过期
+ writeDownloadTotalNum(fileUploadDto.getCreatorId());
+ ArrayList multipartFiles = new ArrayList<>();
+ for (FileDto fileDto : fileUploadDto.getFiles()) {
+ InputStream inputStream = new ByteArrayInputStream(fileDto.getBytes());
+ MultipartFile files = new MockMultipartFile(fileDto.getName(), fileDto.getOriginalFilename(), ContentType.APPLICATION_OCTET_STREAM.toString(), inputStream);
+ //System.out.println(files.getSize());
+ multipartFiles.add(files);
+ }
- //检测图片
- for (ChekFileVo chekFileVo : checkImg(multipartFiles)) {
- //图片上传
- String imgUrl = qiniuService.userUpload(chekFileVo.getFile());
- TiktokImgMiniDto tiktokImg = new TiktokImgMiniDto();
- tiktokImg.setImgUrl(imgUrl);
- tiktokImg.setStatus(chekFileVo.getStatus());
- tiktokImg.setTypeId(fileUploadDto.getTypeId());
- tiktokImg.setCreatorId(fileUploadDto.getCreatorId());
- remoteImgService.insertTiktokImg(tiktokImg);
- }
+ //检测图片
+ for (ChekFileVo chekFileVo : checkImg(multipartFiles)) {
+ //图片上传
+ String imgUrl = qiniuService.userUpload(chekFileVo.getFile());
+ TiktokImgMiniDto tiktokImg = new TiktokImgMiniDto();
+ tiktokImg.setImgUrl(imgUrl);
+ tiktokImg.setStatus(chekFileVo.getStatus());
+ tiktokImg.setTypeId(fileUploadDto.getTypeId());
+ tiktokImg.setCreatorId(fileUploadDto.getCreatorId());
+ remoteImgService.insertTiktokImg(tiktokImg);
+ }
+ }
+
+ @Override
+ public void writeDownloadTotalNum(Long creator) {
+ SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
+ String date = df.format(new Date());
+ log.info("日期【{}】艺术家【{}】下载数+1",date,creator);
+ String redisKey = RedisKeyConstant.CREATOR_DOWNLOAD_KEY + date;
+ redisService.hashIncr(redisKey, creator.toString(), 1);
}
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/constants/RedisKeyConstant.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/constants/RedisKeyConstant.java
index 72cbdf5..a563643 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/constants/RedisKeyConstant.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/constants/RedisKeyConstant.java
@@ -97,4 +97,8 @@ public class RedisKeyConstant {
* 平台用户下载键
*/
public static final String PLATFORM_USER_DOWNLOAD_KEY = "bnyer.img.user.download:";
+ /**
+ * 艺术家上传键
+ */
+ public static final String CREATOR_DOWNLOAD_KEY="bnyer.img.createor.download";
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
index 3b91dec..8b273fd 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
@@ -340,4 +340,10 @@ public class CreatorMiniController extends BaseController {
}
return AjaxResult.error();
}
+ @ApiOperation(value="检查某艺术家当日下载次数是否超标")
+ @PostMapping(value = "/checkCreatorCanDownload")
+ public AjaxResult checkCreatorCanDownload(@Validated @RequestBody @ApiParam("检查超标对象") CreatorDownloadDto dto){
+ log.debug("【微信图文小程序】检查艺术家当日上传次数是否超标参数为:{}", JSON.toJSONString(dto));
+ return AjaxResult.success(creatorProfitService.checkCreatorCanDownload(dto.getCreatorId()));
+ }
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorDownloadDto.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorDownloadDto.java
new file mode 100644
index 0000000..426bd1a
--- /dev/null
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorDownloadDto.java
@@ -0,0 +1,27 @@
+package com.bnyer.img.dto;
+
+import com.bnyer.common.core.annotation.Desensitized;
+import com.bnyer.common.core.enums.SensitiveTypeEnum;
+import com.bnyer.common.core.utils.Sm4Util;
+import com.bnyer.common.core.utils.StringUtils;
+import com.bnyer.img.domain.CreatorAccount;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+import java.io.Serializable;
+
+
+@Getter
+@Setter
+@ApiModel("艺术家下载次数接收类")
+public class CreatorDownloadDto implements Serializable {
+
+ @ApiModelProperty(value="艺术家id")
+ @NotBlank
+ private Long creatorId;
+
+
+}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorProfitService.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorProfitService.java
index c566413..387a1d0 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorProfitService.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorProfitService.java
@@ -194,4 +194,11 @@ public interface CreatorProfitService {
* @return -
*/
CreatorProfitEndAmtVo queryFrontEndAmtDetails(Long id);
+
+ boolean checkCreatorCanDownload(Long creatorId);
+
+ /**
+ * 批量删除昨日艺术家上传次数
+ */
+ void batchDeleteCreatorDownloadNum();
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorProfitServiceImpl.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorProfitServiceImpl.java
index b0c0fc7..345b5bb 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorProfitServiceImpl.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorProfitServiceImpl.java
@@ -384,4 +384,34 @@ public class CreatorProfitServiceImpl implements CreatorProfitService {
public CreatorProfitEndAmtVo queryFrontEndAmtDetails(Long id) {
return creatorProfitMapper.queryFrontEndAmtDetails(id);
}
+
+ @Override
+ public boolean checkCreatorCanDownload(Long creatorId) {
+ SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
+ String date = df.format(new Date());
+ String redisKey = RedisKeyConstant.CREATOR_DOWNLOAD_KEY + date;
+ if(redisService.hasHashKey(redisKey,creatorId.toString())){
+ //存在键,判断次数,次数达标则不可下载
+ Integer downloadNum = redisService.getCacheMapValue(redisKey, creatorId.toString());
+ return downloadNum >= 40;
+ }else{
+ //不存在键则可下载
+ return false;
+ }
+ }
+
+ @Override
+ public void batchDeleteCreatorDownloadNum() {
+ log.info("==============批量删除昨日艺术家上传次数开始!===============");
+ long startTime = System.currentTimeMillis();
+ //获取昨日日期
+ Date yesterday = new Date(startTime - 1000 * 60 * 60 * 24);
+ SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
+ String date = simpleDateFormat.format(yesterday);
+ String redisKey = RedisKeyConstant.CREATOR_DOWNLOAD_KEY + date;
+ if(redisService.hasKey(redisKey)){
+ redisService.deleteObject(redisKey);
+ }
+ log.info("==============批量删除昨日艺术家上传次数完成,耗时【{}】毫秒!===============", System.currentTimeMillis() - startTime);
+ }
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/task/UserDownloadSyncTask.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/task/UserDownloadSyncTask.java
index 1d31f96..e682b71 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/task/UserDownloadSyncTask.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/task/UserDownloadSyncTask.java
@@ -26,4 +26,11 @@ public class UserDownloadSyncTask {
XxlJobLogger.log("{} 我执行了批量删除昨日用户下载次数任务", System.currentTimeMillis());
return ReturnT.SUCCESS;
}
+
+ @XxlJob("creatorDownloadSyncTask")
+ public ReturnT syncCreatorDownload(String param) throws Exception {
+ creatorProfitService.batchDeleteCreatorDownloadNum();
+ XxlJobLogger.log("{} 我执行了批量删除昨日用户下载次数任务", System.currentTimeMillis());
+ return ReturnT.SUCCESS;
+ }
}
From 23ff8b0c8f253f10dfa029cfb8dc685dab6671f5 Mon Sep 17 00:00:00 2001
From: penny <2500338766@qq.com>
Date: Tue, 19 Jul 2022 21:39:28 +0800
Subject: [PATCH 26/32] =?UTF-8?q?feature-img-quan-1.0.0:=20=E8=B0=83?=
=?UTF-8?q?=E6=95=B4=E4=BB=A3=E7=A0=81=E8=89=BA=E6=9C=AF=E5=AE=B6=E4=B8=8A?=
=?UTF-8?q?=E4=BC=A0=E6=A3=80=E6=B5=8B=E9=80=BB=E8=BE=91?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../com/bnyer/file/constants/RedisKeyConstant.java | 2 +-
.../java/com/bnyer/file/service/IFileService.java | 4 ++--
.../com/bnyer/file/service/impl/FileServiceImpl.java | 10 +++++-----
.../bnyer/img/controller/CreatorMiniController.java | 11 +++++------
...CreatorDownloadDto.java => CreatorUploadDto.java} | 8 ++++----
.../com/bnyer/img/service/CreatorProfitService.java | 7 ++++++-
.../img/service/impl/CreatorProfitServiceImpl.java | 12 ++++++++----
7 files changed, 31 insertions(+), 23 deletions(-)
rename bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/{CreatorDownloadDto.java => CreatorUploadDto.java} (72%)
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/constants/RedisKeyConstant.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/constants/RedisKeyConstant.java
index 495eb85..14ea436 100644
--- a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/constants/RedisKeyConstant.java
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/constants/RedisKeyConstant.java
@@ -100,5 +100,5 @@ public class RedisKeyConstant {
/**
* 艺术家上传键
*/
- public static final String CREATOR_DOWNLOAD_KEY="bnyer.img.createor.download";
+ public static final String CREATOR_UPLOAD_KEY="bnyer.img.createor.upload";
}
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/IFileService.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/IFileService.java
index c56e6e0..12cb86b 100644
--- a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/IFileService.java
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/IFileService.java
@@ -19,7 +19,7 @@ public interface IFileService {
/**
* 写入艺术家上传次数
- * @param creator 艺术家id
+ * @param creatorId 艺术家id
*/
- void writeDownloadTotalNum(Long creator);
+ void writeUploadTotalNum(Long creatorId);
}
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/FileServiceImpl.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/FileServiceImpl.java
index 2b5ec5c..f3764f8 100644
--- a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/FileServiceImpl.java
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/FileServiceImpl.java
@@ -90,7 +90,7 @@ public class FileServiceImpl implements IFileService {
@Async("mySimpleAsync")
public void checkUploadSave(FileUploadDto fileUploadDto) throws IOException {
//redis累计平台用户当天下载次数,12.00后过期
- writeDownloadTotalNum(fileUploadDto.getCreatorId());
+ writeUploadTotalNum(fileUploadDto.getCreatorId());
ArrayList multipartFiles = new ArrayList<>();
for (FileDto fileDto : fileUploadDto.getFiles()) {
InputStream inputStream = new ByteArrayInputStream(fileDto.getBytes());
@@ -113,12 +113,12 @@ public class FileServiceImpl implements IFileService {
}
@Override
- public void writeDownloadTotalNum(Long creator) {
+ public void writeUploadTotalNum(Long creatorId) {
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
String date = df.format(new Date());
- log.info("日期【{}】艺术家【{}】下载数+1",date,creator);
- String redisKey = RedisKeyConstant.CREATOR_DOWNLOAD_KEY + date;
- redisService.hashIncr(redisKey, creator.toString(), 1);
+ log.info("日期【{}】艺术家【{}】下载数+1",date,creatorId);
+ String redisKey = RedisKeyConstant.CREATOR_UPLOAD_KEY + date;
+ redisService.hashIncr(redisKey, creatorId.toString(), 1);
}
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
index 8b273fd..b06d8e1 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
@@ -6,7 +6,6 @@ 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.constants.TiktokConstant;
-import com.bnyer.img.domain.TiktokImg;
import com.bnyer.img.dto.*;
import com.bnyer.img.service.*;
import com.github.pagehelper.PageHelper;
@@ -340,10 +339,10 @@ public class CreatorMiniController extends BaseController {
}
return AjaxResult.error();
}
- @ApiOperation(value="检查某艺术家当日下载次数是否超标")
- @PostMapping(value = "/checkCreatorCanDownload")
- public AjaxResult checkCreatorCanDownload(@Validated @RequestBody @ApiParam("检查超标对象") CreatorDownloadDto dto){
- log.debug("【微信图文小程序】检查艺术家当日上传次数是否超标参数为:{}", JSON.toJSONString(dto));
- return AjaxResult.success(creatorProfitService.checkCreatorCanDownload(dto.getCreatorId()));
+ @ApiOperation(value="检查某艺术家当日上传次数是否超标")
+ @PostMapping(value = "/checkCreatorCanUpload")
+ public AjaxResult checkCreatorCanUpload(@Validated @RequestBody @ApiParam("检查超标对象") CreatorUploadDto dto){
+ log.debug("【艺术家小程序】检查艺术家当日上传次数是否超标参数为:{}", JSON.toJSONString(dto));
+ return AjaxResult.success(creatorProfitService.checkCreatorCanUpload(dto.getCreatorId()));
}
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorDownloadDto.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorUploadDto.java
similarity index 72%
rename from bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorDownloadDto.java
rename to bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorUploadDto.java
index 426bd1a..75268f2 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorDownloadDto.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorUploadDto.java
@@ -10,17 +10,17 @@ import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
-import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
import java.io.Serializable;
@Getter
@Setter
-@ApiModel("艺术家下载次数接收类")
-public class CreatorDownloadDto implements Serializable {
+@ApiModel("艺术家上传次数接收类")
+public class CreatorUploadDto implements Serializable {
@ApiModelProperty(value="艺术家id")
- @NotBlank
+ @NotNull(message = "艺术家id不能为空!")
private Long creatorId;
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorProfitService.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorProfitService.java
index 387a1d0..0a63269 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorProfitService.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorProfitService.java
@@ -195,7 +195,12 @@ public interface CreatorProfitService {
*/
CreatorProfitEndAmtVo queryFrontEndAmtDetails(Long id);
- boolean checkCreatorCanDownload(Long creatorId);
+ /**
+ * 检查艺术家上传是否超标
+ * @param creatorId 艺术家id
+ * @return -
+ */
+ boolean checkCreatorCanUpload(Long creatorId);
/**
* 批量删除昨日艺术家上传次数
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorProfitServiceImpl.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorProfitServiceImpl.java
index 345b5bb..35c6af1 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorProfitServiceImpl.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorProfitServiceImpl.java
@@ -386,16 +386,20 @@ public class CreatorProfitServiceImpl implements CreatorProfitService {
}
@Override
- public boolean checkCreatorCanDownload(Long creatorId) {
+ public boolean checkCreatorCanUpload(Long creatorId) {
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
String date = df.format(new Date());
String redisKey = RedisKeyConstant.CREATOR_DOWNLOAD_KEY + date;
- if(redisService.hasHashKey(redisKey,creatorId.toString())){
+ if (redisService.hasHashKey(redisKey, creatorId.toString())) {
//存在键,判断次数,次数达标则不可下载
Integer downloadNum = redisService.getCacheMapValue(redisKey, creatorId.toString());
- return downloadNum >= 40;
+ if (downloadNum >= 40) {
+ return true;
+ } else {
+ return false;
+ }
}else{
- //不存在键则可下载
+ //不存在键则可上传
return false;
}
}
From 649f3b8f04fa2b0fe6f1769768bfc6158b0a221f Mon Sep 17 00:00:00 2001
From: penny <2500338766@qq.com>
Date: Tue, 19 Jul 2022 22:04:29 +0800
Subject: [PATCH 27/32] =?UTF-8?q?feature-1.0-img:=20=E8=B0=83=E6=95=B4?=
=?UTF-8?q?=E7=94=A8=E6=88=B7=E4=B8=8B=E8=BD=BD=E6=A3=80=E6=B5=8B=E9=80=BB?=
=?UTF-8?q?=E8=BE=91?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../img/controller/FhMiniController.java | 2 +-
.../img/controller/TiktokMiniController.java | 10 ++++-----
.../img/controller/WxMiniController.java | 3 +--
.../img/service/CreatorProfitService.java | 9 --------
.../com/bnyer/img/service/FhUserService.java | 9 ++++++++
.../bnyer/img/service/TiktokUserService.java | 9 ++++++++
.../com/bnyer/img/service/WxUserService.java | 9 ++++++++
.../impl/CreatorProfitServiceImpl.java | 20 ------------------
.../img/service/impl/FhUserServiceImpl.java | 21 +++++++++++++++++++
.../service/impl/TiktokUserServiceImpl.java | 21 +++++++++++++++++++
.../img/service/impl/WxUserServiceImpl.java | 21 +++++++++++++++++++
11 files changed, 97 insertions(+), 37 deletions(-)
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/FhMiniController.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/FhMiniController.java
index 944ca8f..c31bace 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/FhMiniController.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/FhMiniController.java
@@ -210,7 +210,7 @@ public class FhMiniController extends BaseController {
@PostMapping(value = "/checkUserCanDownload")
public AjaxResult checkUserCanDownload(@Validated @RequestBody @ApiParam("检查超标对象") checkUserCanDownloadDto dto){
log.debug("【快手图文小程序】检查某平台用户当日下载次数是否超标参数为:{}", JSON.toJSONString(dto));
- return AjaxResult.success(creatorProfitService.checkUserCanDownload(dto.getUserId(),dto.getPlatform(),dto.getAppType()));
+ return AjaxResult.success(fhUserService.checkUserCanDownload(dto.getUserId(),dto.getPlatform(),dto.getAppType()));
}
//@TokenCheck
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 32c8958..e4ba90a 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
@@ -1,9 +1,7 @@
package com.bnyer.img.controller;
-import cn.hutool.core.collection.CollectionUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
-import com.bnyer.common.core.exception.ServiceException;
import com.bnyer.common.core.web.controller.BaseController;
import com.bnyer.common.core.web.domain.AjaxResult;
import com.bnyer.common.core.web.page.TableDataInfo;
@@ -11,7 +9,10 @@ import com.bnyer.img.constants.TiktokConstant;
import com.bnyer.img.domain.Feedback;
import com.bnyer.img.dto.*;
import com.bnyer.img.service.*;
-import com.bnyer.img.vo.*;
+import com.bnyer.img.vo.CreatorDetailsVo;
+import com.bnyer.img.vo.CreatorVo;
+import com.bnyer.img.vo.SignImgVo;
+import com.bnyer.img.vo.TiktokImgVo;
import com.github.pagehelper.PageHelper;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -21,7 +22,6 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
-import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@@ -213,7 +213,7 @@ public class TiktokMiniController extends BaseController {
@PostMapping(value = "/checkUserCanDownload")
public AjaxResult checkUserCanDownload(@Validated @RequestBody @ApiParam("检查超标对象") checkUserCanDownloadDto dto){
log.debug("【抖音图文小程序】检查某平台用户当日下载次数是否超标参数为:{}", JSON.toJSONString(dto));
- return AjaxResult.success(creatorProfitService.checkUserCanDownload(dto.getUserId(),dto.getPlatform(),dto.getAppType()));
+ return AjaxResult.success(tiktokUserService.checkUserCanDownload(dto.getUserId(),dto.getPlatform(),dto.getAppType()));
}
//@TokenCheck
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/WxMiniController.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/WxMiniController.java
index 28449ac..f88254d 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/WxMiniController.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/WxMiniController.java
@@ -2,7 +2,6 @@ package com.bnyer.img.controller;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
-import com.bnyer.common.core.domain.R;
import com.bnyer.common.core.web.controller.BaseController;
import com.bnyer.common.core.web.domain.AjaxResult;
import com.bnyer.common.core.web.page.TableDataInfo;
@@ -211,7 +210,7 @@ public class WxMiniController extends BaseController {
@PostMapping(value = "/checkUserCanDownload")
public AjaxResult checkUserCanDownload(@Validated @RequestBody @ApiParam("检查超标对象") checkUserCanDownloadDto dto){
log.debug("【微信图文小程序】检查某平台用户当日下载次数是否超标参数为:{}", JSON.toJSONString(dto));
- return AjaxResult.success(creatorProfitService.checkUserCanDownload(dto.getUserId(),dto.getPlatform(),dto.getAppType()));
+ return AjaxResult.success(wxUserService.checkUserCanDownload(dto.getUserId(),dto.getPlatform(),dto.getAppType()));
}
//@TokenCheck
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorProfitService.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorProfitService.java
index c566413..7f66e0b 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorProfitService.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorProfitService.java
@@ -179,15 +179,6 @@ public interface CreatorProfitService {
*/
int batchUpdate(List list);
- /**
- * 检查某平台用户当日下载次数是否超标
- * @param userId 用户id
- * @param platform 平台
- * @param appType 应用
- * @return -
- */
- boolean checkUserCanDownload(Long userId,String platform,String appType);
-
/**
* 查询转入钱包收益详情
* @param id 收益id
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/FhUserService.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/FhUserService.java
index c61312a..8ae66eb 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/FhUserService.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/FhUserService.java
@@ -51,4 +51,13 @@ public interface FhUserService {
* @return -
*/
int changeStatus(Long id,String status);
+
+ /**
+ * 检查某平台用户当日下载次数是否超标
+ * @param userId 用户id
+ * @param platform 平台
+ * @param appType 应用
+ * @return -
+ */
+ boolean checkUserCanDownload(Long userId,String platform,String appType);
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/TiktokUserService.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/TiktokUserService.java
index 937fd82..a39440a 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/TiktokUserService.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/TiktokUserService.java
@@ -50,4 +50,13 @@ public interface TiktokUserService {
* @return -
*/
int changeStatus(Long id,String status);
+
+ /**
+ * 检查某平台用户当日下载次数是否超标
+ * @param userId 用户id
+ * @param platform 平台
+ * @param appType 应用
+ * @return -
+ */
+ boolean checkUserCanDownload(Long userId,String platform,String appType);
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/WxUserService.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/WxUserService.java
index ded2139..1f5ed02 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/WxUserService.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/WxUserService.java
@@ -51,4 +51,13 @@ public interface WxUserService {
* @return -
*/
int changeStatus(Long id,String status);
+
+ /**
+ * 检查某平台用户当日下载次数是否超标
+ * @param userId 用户id
+ * @param platform 平台
+ * @param appType 应用
+ * @return -
+ */
+ boolean checkUserCanDownload(Long userId,String platform,String appType);
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorProfitServiceImpl.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorProfitServiceImpl.java
index b0c0fc7..47de8b9 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorProfitServiceImpl.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorProfitServiceImpl.java
@@ -360,26 +360,6 @@ public class CreatorProfitServiceImpl implements CreatorProfitService {
return creatorProfitMapper.batchUpdateTransInfo(list);
}
- @Override
- public boolean checkUserCanDownload(Long userId, String platform, String appType) {
- SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
- String date = df.format(new Date());
- String hashKey = appType+":"+platform+":"+userId;
- String redisKey = RedisKeyConstant.PLATFORM_USER_DOWNLOAD_KEY + date;
- if(redisService.hasHashKey(redisKey,hashKey)){
- //存在键,判断次数,次数达标则不可下载
- Integer downloadNum = redisService.getCacheMapValue(redisKey, hashKey);
- if(downloadNum >= 5){
- return true;
- }else{
- return false;
- }
- }else{
- //不存在键则可下载
- return false;
- }
- }
-
@Override
public CreatorProfitEndAmtVo queryFrontEndAmtDetails(Long id) {
return creatorProfitMapper.queryFrontEndAmtDetails(id);
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/FhUserServiceImpl.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/FhUserServiceImpl.java
index 359252d..0bba4b4 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/FhUserServiceImpl.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/FhUserServiceImpl.java
@@ -31,6 +31,7 @@ import org.springframework.web.client.RestTemplate;
import javax.crypto.Cipher;
import javax.crypto.spec.IvParameterSpec;
import javax.crypto.spec.SecretKeySpec;
+import java.text.SimpleDateFormat;
import java.util.*;
import java.util.concurrent.TimeUnit;
@@ -201,4 +202,24 @@ public class FhUserServiceImpl implements FhUserService {
user.setIsShow(status);
return fhUserMapper.update(user, wrapper);
}
+
+ @Override
+ public boolean checkUserCanDownload(Long userId, String platform, String appType) {
+ SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
+ String date = df.format(new Date());
+ String hashKey = appType+":"+platform+":"+userId;
+ String redisKey = RedisKeyConstant.PLATFORM_USER_DOWNLOAD_KEY + date;
+ if(redisService.hasHashKey(redisKey,hashKey)){
+ //存在键,判断次数,次数达标则不可下载
+ Integer downloadNum = redisService.getCacheMapValue(redisKey, hashKey);
+ if(downloadNum >= 5){
+ return true;
+ }else{
+ return false;
+ }
+ }else{
+ //不存在键则可下载
+ return false;
+ }
+ }
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/TiktokUserServiceImpl.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/TiktokUserServiceImpl.java
index 511d765..edcbf39 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/TiktokUserServiceImpl.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/TiktokUserServiceImpl.java
@@ -32,6 +32,7 @@ import javax.annotation.Resource;
import javax.crypto.Cipher;
import javax.crypto.spec.IvParameterSpec;
import javax.crypto.spec.SecretKeySpec;
+import java.text.SimpleDateFormat;
import java.util.*;
import java.util.concurrent.TimeUnit;
@@ -210,4 +211,24 @@ public class TiktokUserServiceImpl implements TiktokUserService {
user.setIsShow(status);
return tiktokUserMapper.update(user,wrapper);
}
+
+ @Override
+ public boolean checkUserCanDownload(Long userId, String platform, String appType) {
+ SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
+ String date = df.format(new Date());
+ String hashKey = appType+":"+platform+":"+userId;
+ String redisKey = RedisKeyConstant.PLATFORM_USER_DOWNLOAD_KEY + date;
+ if(redisService.hasHashKey(redisKey,hashKey)){
+ //存在键,判断次数,次数达标则不可下载
+ Integer downloadNum = redisService.getCacheMapValue(redisKey, hashKey);
+ if(downloadNum >= 5){
+ return true;
+ }else{
+ return false;
+ }
+ }else{
+ //不存在键则可下载
+ return false;
+ }
+ }
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/WxUserServiceImpl.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/WxUserServiceImpl.java
index 0e13792..7253829 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/WxUserServiceImpl.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/WxUserServiceImpl.java
@@ -31,6 +31,7 @@ import org.springframework.web.client.RestTemplate;
import javax.crypto.Cipher;
import javax.crypto.spec.IvParameterSpec;
import javax.crypto.spec.SecretKeySpec;
+import java.text.SimpleDateFormat;
import java.util.*;
import java.util.concurrent.TimeUnit;
@@ -212,4 +213,24 @@ public class WxUserServiceImpl implements WxUserService {
user.setIsShow(status);
return wxUserMapper.update(user, wrapper);
}
+
+ @Override
+ public boolean checkUserCanDownload(Long userId, String platform, String appType) {
+ SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
+ String date = df.format(new Date());
+ String hashKey = appType+":"+platform+":"+userId;
+ String redisKey = RedisKeyConstant.PLATFORM_USER_DOWNLOAD_KEY + date;
+ if(redisService.hasHashKey(redisKey,hashKey)){
+ //存在键,判断次数,次数达标则不可下载
+ Integer downloadNum = redisService.getCacheMapValue(redisKey, hashKey);
+ if(downloadNum >= 5){
+ return true;
+ }else{
+ return false;
+ }
+ }else{
+ //不存在键则可下载
+ return false;
+ }
+ }
}
From 7a9e9064680e4fe2831455439030dd73a7472dc0 Mon Sep 17 00:00:00 2001
From: penny <2500338766@qq.com>
Date: Tue, 19 Jul 2022 22:18:58 +0800
Subject: [PATCH 28/32] =?UTF-8?q?feature-img-quan-1.0.0:=20=E8=B0=83?=
=?UTF-8?q?=E6=95=B4=E4=BB=A3=E7=A0=81=E8=89=BA=E6=9C=AF=E5=AE=B6=E4=B8=8A?=
=?UTF-8?q?=E4=BC=A0=E6=A3=80=E6=B5=8B=E9=80=BB=E8=BE=91?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../java/com/bnyer/file/controller/SysFileController.java | 2 --
.../java/com/bnyer/file/service/impl/FileServiceImpl.java | 8 ++------
.../java/com/bnyer/img/constants/RedisKeyConstant.java | 2 +-
.../java/com/bnyer/img/service/CreatorProfitService.java | 2 +-
.../bnyer/img/service/impl/CreatorProfitServiceImpl.java | 8 ++++----
.../java/com/bnyer/img/task/UserDownloadSyncTask.java | 6 +++---
6 files changed, 11 insertions(+), 17 deletions(-)
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/controller/SysFileController.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/controller/SysFileController.java
index f002008..9415d12 100644
--- a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/controller/SysFileController.java
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/controller/SysFileController.java
@@ -1,6 +1,5 @@
package com.bnyer.file.controller;
-import cn.hutool.log.Log;
import com.bnyer.common.core.domain.R;
import com.bnyer.file.config.ImgConfig;
import com.bnyer.file.dto.FileDto;
@@ -20,7 +19,6 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
-import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/FileServiceImpl.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/FileServiceImpl.java
index f3764f8..62d0450 100644
--- a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/FileServiceImpl.java
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/FileServiceImpl.java
@@ -9,10 +9,8 @@ import com.bnyer.file.service.IQiniuService;
import com.bnyer.file.service.ITikTokImage;
import com.bnyer.file.utils.ImgUtil;
import com.bnyer.file.vo.ChekFileVo;
-import com.bnyer.file.vo.TiktokImgVo;
import com.bnyer.img.api.RemoteImgService;
import com.bnyer.img.api.dto.TiktokImgMiniDto;
-import com.bnyer.system.api.RemoteFileService;
import lombok.extern.slf4j.Slf4j;
import org.apache.http.entity.ContentType;
import org.springframework.beans.factory.annotation.Autowired;
@@ -21,14 +19,12 @@ import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
-import javax.annotation.Resource;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
-import java.util.UUID;
/**
* @Author: Yeman
@@ -89,7 +85,7 @@ public class FileServiceImpl implements IFileService {
@Override
@Async("mySimpleAsync")
public void checkUploadSave(FileUploadDto fileUploadDto) throws IOException {
- //redis累计平台用户当天下载次数,12.00后过期
+ //redis累计艺术家当天上传次数,12.00后过期
writeUploadTotalNum(fileUploadDto.getCreatorId());
ArrayList multipartFiles = new ArrayList<>();
for (FileDto fileDto : fileUploadDto.getFiles()) {
@@ -116,7 +112,7 @@ public class FileServiceImpl implements IFileService {
public void writeUploadTotalNum(Long creatorId) {
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
String date = df.format(new Date());
- log.info("日期【{}】艺术家【{}】下载数+1",date,creatorId);
+ log.info("日期【{}】艺术家【{}】上传数+1",date,creatorId);
String redisKey = RedisKeyConstant.CREATOR_UPLOAD_KEY + date;
redisService.hashIncr(redisKey, creatorId.toString(), 1);
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/constants/RedisKeyConstant.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/constants/RedisKeyConstant.java
index a563643..e5c7bd3 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/constants/RedisKeyConstant.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/constants/RedisKeyConstant.java
@@ -100,5 +100,5 @@ public class RedisKeyConstant {
/**
* 艺术家上传键
*/
- public static final String CREATOR_DOWNLOAD_KEY="bnyer.img.createor.download";
+ public static final String CREATOR_UPLOAD_KEY="bnyer.img.creator.upload:";
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorProfitService.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorProfitService.java
index 0a63269..c7f2231 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorProfitService.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorProfitService.java
@@ -205,5 +205,5 @@ public interface CreatorProfitService {
/**
* 批量删除昨日艺术家上传次数
*/
- void batchDeleteCreatorDownloadNum();
+ void batchDeleteCreatorUploadNum();
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorProfitServiceImpl.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorProfitServiceImpl.java
index 35c6af1..d24b87c 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorProfitServiceImpl.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorProfitServiceImpl.java
@@ -389,9 +389,9 @@ public class CreatorProfitServiceImpl implements CreatorProfitService {
public boolean checkCreatorCanUpload(Long creatorId) {
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
String date = df.format(new Date());
- String redisKey = RedisKeyConstant.CREATOR_DOWNLOAD_KEY + date;
+ String redisKey = RedisKeyConstant.CREATOR_UPLOAD_KEY + date;
if (redisService.hasHashKey(redisKey, creatorId.toString())) {
- //存在键,判断次数,次数达标则不可下载
+ //存在键,判断次数,次数达标则不可上传
Integer downloadNum = redisService.getCacheMapValue(redisKey, creatorId.toString());
if (downloadNum >= 40) {
return true;
@@ -405,14 +405,14 @@ public class CreatorProfitServiceImpl implements CreatorProfitService {
}
@Override
- public void batchDeleteCreatorDownloadNum() {
+ public void batchDeleteCreatorUploadNum() {
log.info("==============批量删除昨日艺术家上传次数开始!===============");
long startTime = System.currentTimeMillis();
//获取昨日日期
Date yesterday = new Date(startTime - 1000 * 60 * 60 * 24);
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
String date = simpleDateFormat.format(yesterday);
- String redisKey = RedisKeyConstant.CREATOR_DOWNLOAD_KEY + date;
+ String redisKey = RedisKeyConstant.CREATOR_UPLOAD_KEY + date;
if(redisService.hasKey(redisKey)){
redisService.deleteObject(redisKey);
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/task/UserDownloadSyncTask.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/task/UserDownloadSyncTask.java
index e682b71..7b51221 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/task/UserDownloadSyncTask.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/task/UserDownloadSyncTask.java
@@ -28,9 +28,9 @@ public class UserDownloadSyncTask {
}
@XxlJob("creatorDownloadSyncTask")
- public ReturnT syncCreatorDownload(String param) throws Exception {
- creatorProfitService.batchDeleteCreatorDownloadNum();
- XxlJobLogger.log("{} 我执行了批量删除昨日用户下载次数任务", System.currentTimeMillis());
+ public ReturnT syncCreatorUpload(String param) throws Exception {
+ creatorProfitService.batchDeleteCreatorUploadNum();
+ XxlJobLogger.log("{} 我执行了批量删除昨日用户上传次数任务", System.currentTimeMillis());
return ReturnT.SUCCESS;
}
}
From 38b7a89e602fa02e04e15d63147a99eca9a63578 Mon Sep 17 00:00:00 2001
From: qyhdd
Date: Tue, 19 Jul 2022 16:42:13 +0800
Subject: [PATCH 29/32] =?UTF-8?q?=E4=B8=8B=E8=BD=BD=E6=AC=A1=E6=95=B0?=
=?UTF-8?q?=E9=99=90=E5=88=B6?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../file/constants/RedisKeyConstant.java | 104 ++++++++++++++++++
.../com/bnyer/file/service/IFileService.java | 6 +
.../file/service/impl/FileServiceImpl.java | 69 +++++++-----
.../bnyer/img/constants/RedisKeyConstant.java | 4 +
.../img/controller/CreatorMiniController.java | 6 +
.../com/bnyer/img/dto/CreatorDownloadDto.java | 27 +++++
.../img/service/CreatorProfitService.java | 7 ++
.../impl/CreatorProfitServiceImpl.java | 30 +++++
.../bnyer/img/task/UserDownloadSyncTask.java | 7 ++
9 files changed, 235 insertions(+), 25 deletions(-)
create mode 100644 bnyer-services/bnyer-file/src/main/java/com/bnyer/file/constants/RedisKeyConstant.java
create mode 100644 bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorDownloadDto.java
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/constants/RedisKeyConstant.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/constants/RedisKeyConstant.java
new file mode 100644
index 0000000..495eb85
--- /dev/null
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/constants/RedisKeyConstant.java
@@ -0,0 +1,104 @@
+package com.bnyer.file.constants;
+
+public class RedisKeyConstant {
+
+
+ /**
+ * 抖音小程序用户收藏图片键
+ */
+ public static final String TIKTOK_USER_COLLECT_KEY = "bnyer.img.tiktok.collect:";
+
+ /**
+ * 抖音小程序图片收藏数量键
+ */
+ public static final String TIKTOK_IMG_COLLECT_NUM_KEY = "bnyer.img.tiktok.collectNum";
+
+ /**
+ * 快手小程序图片收藏数量键
+ */
+ public static final String FAST_HAND_IMG_COLLECT_NUM_KEY = "bnyer.img.fh.collectNum";
+
+ /**
+ * 微信小程序图片收藏数量键
+ */
+ public static final String WECHAT_IMG_COLLECT_NUM_KEY = "bnyer.img.wx.collectNum";
+
+ /**
+ * 抖音小程序用户点赞图片键
+ */
+ public static final String TIKTOK_USER_LIKE_KEY = "bnyer.img.tiktok.like";
+
+ /**
+ * 快手小程序用户点赞图片键
+ */
+ public static final String FAST_HAND_USER_LIKE_KEY = "bnyer.img.fh.like";
+
+ /**
+ * 微信小程序用户点赞图片键
+ */
+ public static final String WECHAT_USER_LIKE_KEY = "bnyer.img.wx.like";
+
+ /**
+ * 抖音小程序图片点赞数量键
+ */
+ public static final String TIKTOK_IMG_LIKE_NUM_KEY = "bnyer.img.tiktok.likeNum";
+
+ /**
+ * 快手小程序图片点赞数量键
+ */
+ public static final String FAST_HAND_IMG_LIKE_NUM_KEY = "bnyer.img.fh.likeNum";
+
+ /**
+ * 微信小程序图片点赞数量键
+ */
+ public static final String WECHAT_IMG_LIKE_NUM_KEY = "bnyer.img.wx.likeNum";
+
+ /**
+ * 抖音小程序图片下载数量键
+ */
+ public static final String TIKTOK_IMG_DOWNLOAD_NUM_KEY = "bnyer.img.creator.downloadNum:";
+
+ /**
+ * 抖音小程序图片下载总数量键
+ */
+ public static final String TIKTOK_IMG_TOTAL_DOWNLOAD_NUM_KEY = "bnyer.img.date.downloadTotalNum:";
+
+ /**
+ * 抖音小程序用户登录键
+ */
+ public static final String TIKTOK_USER_LOGIN_KEY = "bnyer.img.tiktok.user:";
+
+ /**
+ * 快手小程序用户登录键
+ */
+ public static final String FH_USER_LOGIN_KEY = "bnyer.img.fh.user:";
+
+ /**
+ * 微信小程序用户登录键
+ */
+ public static final String WECHAT_USER_LOGIN_KEY = "bnyer.img.wx.user:";
+
+ /**
+ * 微信小程序艺术家登录键
+ */
+ public static final String WECHAT_CREATOR_LOGIN_KEY = "bnyer.img.wechat.creator:";
+
+ /**
+ * 微信小程序艺术家邀请键
+ */
+ public static final String WECHAT_CREATOR_INVITE_KEY = "bnyer.img.invite.creator:";
+
+ /**
+ * 审核收益锁键
+ */
+ public static final String VERIFY_PROFIT_LOCK_KEY = "bnyer.img.profit.lock:";
+
+ /**
+ * 平台用户下载键
+ */
+ public static final String PLATFORM_USER_DOWNLOAD_KEY = "bnyer.img.user.download:";
+ /**
+ * 艺术家上传键
+ */
+ public static final String CREATOR_DOWNLOAD_KEY="bnyer.img.createor.download";
+}
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/IFileService.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/IFileService.java
index 530e4e3..c56e6e0 100644
--- a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/IFileService.java
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/IFileService.java
@@ -16,4 +16,10 @@ public interface IFileService {
ArrayList checkImg(ArrayList multipartFiles);
//图片检测+图片上传+图片保存
void checkUploadSave(FileUploadDto fileUploadDto) throws IOException;
+
+ /**
+ * 写入艺术家上传次数
+ * @param creator 艺术家id
+ */
+ void writeDownloadTotalNum(Long creator);
}
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/FileServiceImpl.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/FileServiceImpl.java
index bd806d8..2b5ec5c 100644
--- a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/FileServiceImpl.java
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/FileServiceImpl.java
@@ -1,5 +1,7 @@
package com.bnyer.file.service.impl;
+import com.bnyer.common.redis.service.RedisService;
+import com.bnyer.file.constants.RedisKeyConstant;
import com.bnyer.file.dto.FileDto;
import com.bnyer.file.dto.FileUploadDto;
import com.bnyer.file.service.IFileService;
@@ -11,6 +13,7 @@ import com.bnyer.file.vo.TiktokImgVo;
import com.bnyer.img.api.RemoteImgService;
import com.bnyer.img.api.dto.TiktokImgMiniDto;
import com.bnyer.system.api.RemoteFileService;
+import lombok.extern.slf4j.Slf4j;
import org.apache.http.entity.ContentType;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.mock.web.MockMultipartFile;
@@ -22,7 +25,9 @@ import javax.annotation.Resource;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;
+import java.text.SimpleDateFormat;
import java.util.ArrayList;
+import java.util.Date;
import java.util.UUID;
/**
@@ -31,6 +36,7 @@ import java.util.UUID;
* @Description:
*/
@Service("file")
+@Slf4j
public class FileServiceImpl implements IFileService {
@Autowired
private IQiniuService qiniuService;
@@ -38,6 +44,8 @@ public class FileServiceImpl implements IFileService {
private ITikTokImage tikTokImage;
@Autowired
private RemoteImgService remoteImgService;
+ @Autowired
+ private RedisService redisService;
@Override
public ArrayList checkImg(ArrayList multipartFiles) {
ArrayList chekFileVos = new ArrayList<>();
@@ -49,13 +57,13 @@ public class FileServiceImpl implements IFileService {
String filename = multipartFile.getResource().getFilename();
chekFileVo.setFileName(filename);
String imageString = ImgUtil.getImageString(multipartFile);
- String checkMsg = qiniuService.checkImageContent("data:application/octet-stream;base64," +imageString);
- if (checkMsg.equals("pass")){
+ String checkMsg = qiniuService.checkImageContent("data:application/octet-stream;base64," + imageString);
+ if (checkMsg.equals("pass")) {
//抖音图片检测二次检测
// if (tikTokImage.checkImageContent(multipartFile)) {
- //可以通过
- chekFileVo.setStatus("1");
- chekFileVos.add(chekFileVo);
+ //可以通过
+ chekFileVo.setStatus("1");
+ chekFileVos.add(chekFileVo);
// }else {
// //不可以通过
// chekFileVo.setStatus("2");
@@ -63,13 +71,13 @@ public class FileServiceImpl implements IFileService {
// }
continue;
}
- if (checkMsg.equals("review")){
+ if (checkMsg.equals("review")) {
//人工审核
chekFileVo.setStatus("0");
chekFileVos.add(chekFileVo);
continue;
}
- if (checkMsg.equals("block")){
+ if (checkMsg.equals("block")) {
//不可通过
chekFileVo.setStatus("2");
chekFileVos.add(chekFileVo);
@@ -81,25 +89,36 @@ public class FileServiceImpl implements IFileService {
@Override
@Async("mySimpleAsync")
public void checkUploadSave(FileUploadDto fileUploadDto) throws IOException {
- ArrayList multipartFiles = new ArrayList<>();
- for (FileDto fileDto : fileUploadDto.getFiles()) {
- InputStream inputStream = new ByteArrayInputStream(fileDto.getBytes());
- MultipartFile files = new MockMultipartFile(fileDto.getName(), fileDto.getOriginalFilename(), ContentType.APPLICATION_OCTET_STREAM.toString(), inputStream);
- //System.out.println(files.getSize());
- multipartFiles.add(files);
- }
+ //redis累计平台用户当天下载次数,12.00后过期
+ writeDownloadTotalNum(fileUploadDto.getCreatorId());
+ ArrayList multipartFiles = new ArrayList<>();
+ for (FileDto fileDto : fileUploadDto.getFiles()) {
+ InputStream inputStream = new ByteArrayInputStream(fileDto.getBytes());
+ MultipartFile files = new MockMultipartFile(fileDto.getName(), fileDto.getOriginalFilename(), ContentType.APPLICATION_OCTET_STREAM.toString(), inputStream);
+ //System.out.println(files.getSize());
+ multipartFiles.add(files);
+ }
- //检测图片
- for (ChekFileVo chekFileVo : checkImg(multipartFiles)) {
- //图片上传
- String imgUrl = qiniuService.userUpload(chekFileVo.getFile());
- TiktokImgMiniDto tiktokImg = new TiktokImgMiniDto();
- tiktokImg.setImgUrl(imgUrl);
- tiktokImg.setStatus(chekFileVo.getStatus());
- tiktokImg.setTypeId(fileUploadDto.getTypeId());
- tiktokImg.setCreatorId(fileUploadDto.getCreatorId());
- remoteImgService.insertTiktokImg(tiktokImg);
- }
+ //检测图片
+ for (ChekFileVo chekFileVo : checkImg(multipartFiles)) {
+ //图片上传
+ String imgUrl = qiniuService.userUpload(chekFileVo.getFile());
+ TiktokImgMiniDto tiktokImg = new TiktokImgMiniDto();
+ tiktokImg.setImgUrl(imgUrl);
+ tiktokImg.setStatus(chekFileVo.getStatus());
+ tiktokImg.setTypeId(fileUploadDto.getTypeId());
+ tiktokImg.setCreatorId(fileUploadDto.getCreatorId());
+ remoteImgService.insertTiktokImg(tiktokImg);
+ }
+ }
+
+ @Override
+ public void writeDownloadTotalNum(Long creator) {
+ SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
+ String date = df.format(new Date());
+ log.info("日期【{}】艺术家【{}】下载数+1",date,creator);
+ String redisKey = RedisKeyConstant.CREATOR_DOWNLOAD_KEY + date;
+ redisService.hashIncr(redisKey, creator.toString(), 1);
}
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/constants/RedisKeyConstant.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/constants/RedisKeyConstant.java
index 72cbdf5..a563643 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/constants/RedisKeyConstant.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/constants/RedisKeyConstant.java
@@ -97,4 +97,8 @@ public class RedisKeyConstant {
* 平台用户下载键
*/
public static final String PLATFORM_USER_DOWNLOAD_KEY = "bnyer.img.user.download:";
+ /**
+ * 艺术家上传键
+ */
+ public static final String CREATOR_DOWNLOAD_KEY="bnyer.img.createor.download";
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
index 3b91dec..8b273fd 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
@@ -340,4 +340,10 @@ public class CreatorMiniController extends BaseController {
}
return AjaxResult.error();
}
+ @ApiOperation(value="检查某艺术家当日下载次数是否超标")
+ @PostMapping(value = "/checkCreatorCanDownload")
+ public AjaxResult checkCreatorCanDownload(@Validated @RequestBody @ApiParam("检查超标对象") CreatorDownloadDto dto){
+ log.debug("【微信图文小程序】检查艺术家当日上传次数是否超标参数为:{}", JSON.toJSONString(dto));
+ return AjaxResult.success(creatorProfitService.checkCreatorCanDownload(dto.getCreatorId()));
+ }
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorDownloadDto.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorDownloadDto.java
new file mode 100644
index 0000000..426bd1a
--- /dev/null
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorDownloadDto.java
@@ -0,0 +1,27 @@
+package com.bnyer.img.dto;
+
+import com.bnyer.common.core.annotation.Desensitized;
+import com.bnyer.common.core.enums.SensitiveTypeEnum;
+import com.bnyer.common.core.utils.Sm4Util;
+import com.bnyer.common.core.utils.StringUtils;
+import com.bnyer.img.domain.CreatorAccount;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+import java.io.Serializable;
+
+
+@Getter
+@Setter
+@ApiModel("艺术家下载次数接收类")
+public class CreatorDownloadDto implements Serializable {
+
+ @ApiModelProperty(value="艺术家id")
+ @NotBlank
+ private Long creatorId;
+
+
+}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorProfitService.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorProfitService.java
index 7f66e0b..31bfcdc 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorProfitService.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorProfitService.java
@@ -185,4 +185,11 @@ public interface CreatorProfitService {
* @return -
*/
CreatorProfitEndAmtVo queryFrontEndAmtDetails(Long id);
+
+ boolean checkCreatorCanDownload(Long creatorId);
+
+ /**
+ * 批量删除昨日艺术家上传次数
+ */
+ void batchDeleteCreatorDownloadNum();
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorProfitServiceImpl.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorProfitServiceImpl.java
index 47de8b9..4852b1d 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorProfitServiceImpl.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorProfitServiceImpl.java
@@ -364,4 +364,34 @@ public class CreatorProfitServiceImpl implements CreatorProfitService {
public CreatorProfitEndAmtVo queryFrontEndAmtDetails(Long id) {
return creatorProfitMapper.queryFrontEndAmtDetails(id);
}
+
+ @Override
+ public boolean checkCreatorCanDownload(Long creatorId) {
+ SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
+ String date = df.format(new Date());
+ String redisKey = RedisKeyConstant.CREATOR_DOWNLOAD_KEY + date;
+ if(redisService.hasHashKey(redisKey,creatorId.toString())){
+ //存在键,判断次数,次数达标则不可下载
+ Integer downloadNum = redisService.getCacheMapValue(redisKey, creatorId.toString());
+ return downloadNum >= 40;
+ }else{
+ //不存在键则可下载
+ return false;
+ }
+ }
+
+ @Override
+ public void batchDeleteCreatorDownloadNum() {
+ log.info("==============批量删除昨日艺术家上传次数开始!===============");
+ long startTime = System.currentTimeMillis();
+ //获取昨日日期
+ Date yesterday = new Date(startTime - 1000 * 60 * 60 * 24);
+ SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
+ String date = simpleDateFormat.format(yesterday);
+ String redisKey = RedisKeyConstant.CREATOR_DOWNLOAD_KEY + date;
+ if(redisService.hasKey(redisKey)){
+ redisService.deleteObject(redisKey);
+ }
+ log.info("==============批量删除昨日艺术家上传次数完成,耗时【{}】毫秒!===============", System.currentTimeMillis() - startTime);
+ }
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/task/UserDownloadSyncTask.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/task/UserDownloadSyncTask.java
index 1d31f96..e682b71 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/task/UserDownloadSyncTask.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/task/UserDownloadSyncTask.java
@@ -26,4 +26,11 @@ public class UserDownloadSyncTask {
XxlJobLogger.log("{} 我执行了批量删除昨日用户下载次数任务", System.currentTimeMillis());
return ReturnT.SUCCESS;
}
+
+ @XxlJob("creatorDownloadSyncTask")
+ public ReturnT syncCreatorDownload(String param) throws Exception {
+ creatorProfitService.batchDeleteCreatorDownloadNum();
+ XxlJobLogger.log("{} 我执行了批量删除昨日用户下载次数任务", System.currentTimeMillis());
+ return ReturnT.SUCCESS;
+ }
}
From aa25c0dff0f8830986066e7ab5a27bc36eaa9693 Mon Sep 17 00:00:00 2001
From: penny <2500338766@qq.com>
Date: Tue, 19 Jul 2022 21:39:28 +0800
Subject: [PATCH 30/32] =?UTF-8?q?feature-img-quan-1.0.0:=20=E8=B0=83?=
=?UTF-8?q?=E6=95=B4=E4=BB=A3=E7=A0=81=E8=89=BA=E6=9C=AF=E5=AE=B6=E4=B8=8A?=
=?UTF-8?q?=E4=BC=A0=E6=A3=80=E6=B5=8B=E9=80=BB=E8=BE=91?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../com/bnyer/file/constants/RedisKeyConstant.java | 2 +-
.../java/com/bnyer/file/service/IFileService.java | 4 ++--
.../com/bnyer/file/service/impl/FileServiceImpl.java | 10 +++++-----
.../bnyer/img/controller/CreatorMiniController.java | 11 +++++------
...CreatorDownloadDto.java => CreatorUploadDto.java} | 8 ++++----
.../com/bnyer/img/service/CreatorProfitService.java | 7 ++++++-
.../img/service/impl/CreatorProfitServiceImpl.java | 12 ++++++++----
7 files changed, 31 insertions(+), 23 deletions(-)
rename bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/{CreatorDownloadDto.java => CreatorUploadDto.java} (72%)
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/constants/RedisKeyConstant.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/constants/RedisKeyConstant.java
index 495eb85..14ea436 100644
--- a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/constants/RedisKeyConstant.java
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/constants/RedisKeyConstant.java
@@ -100,5 +100,5 @@ public class RedisKeyConstant {
/**
* 艺术家上传键
*/
- public static final String CREATOR_DOWNLOAD_KEY="bnyer.img.createor.download";
+ public static final String CREATOR_UPLOAD_KEY="bnyer.img.createor.upload";
}
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/IFileService.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/IFileService.java
index c56e6e0..12cb86b 100644
--- a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/IFileService.java
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/IFileService.java
@@ -19,7 +19,7 @@ public interface IFileService {
/**
* 写入艺术家上传次数
- * @param creator 艺术家id
+ * @param creatorId 艺术家id
*/
- void writeDownloadTotalNum(Long creator);
+ void writeUploadTotalNum(Long creatorId);
}
diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/FileServiceImpl.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/FileServiceImpl.java
index 2b5ec5c..f3764f8 100644
--- a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/FileServiceImpl.java
+++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/FileServiceImpl.java
@@ -90,7 +90,7 @@ public class FileServiceImpl implements IFileService {
@Async("mySimpleAsync")
public void checkUploadSave(FileUploadDto fileUploadDto) throws IOException {
//redis累计平台用户当天下载次数,12.00后过期
- writeDownloadTotalNum(fileUploadDto.getCreatorId());
+ writeUploadTotalNum(fileUploadDto.getCreatorId());
ArrayList multipartFiles = new ArrayList<>();
for (FileDto fileDto : fileUploadDto.getFiles()) {
InputStream inputStream = new ByteArrayInputStream(fileDto.getBytes());
@@ -113,12 +113,12 @@ public class FileServiceImpl implements IFileService {
}
@Override
- public void writeDownloadTotalNum(Long creator) {
+ public void writeUploadTotalNum(Long creatorId) {
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
String date = df.format(new Date());
- log.info("日期【{}】艺术家【{}】下载数+1",date,creator);
- String redisKey = RedisKeyConstant.CREATOR_DOWNLOAD_KEY + date;
- redisService.hashIncr(redisKey, creator.toString(), 1);
+ log.info("日期【{}】艺术家【{}】下载数+1",date,creatorId);
+ String redisKey = RedisKeyConstant.CREATOR_UPLOAD_KEY + date;
+ redisService.hashIncr(redisKey, creatorId.toString(), 1);
}
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
index 8b273fd..b06d8e1 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
@@ -6,7 +6,6 @@ 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.constants.TiktokConstant;
-import com.bnyer.img.domain.TiktokImg;
import com.bnyer.img.dto.*;
import com.bnyer.img.service.*;
import com.github.pagehelper.PageHelper;
@@ -340,10 +339,10 @@ public class CreatorMiniController extends BaseController {
}
return AjaxResult.error();
}
- @ApiOperation(value="检查某艺术家当日下载次数是否超标")
- @PostMapping(value = "/checkCreatorCanDownload")
- public AjaxResult checkCreatorCanDownload(@Validated @RequestBody @ApiParam("检查超标对象") CreatorDownloadDto dto){
- log.debug("【微信图文小程序】检查艺术家当日上传次数是否超标参数为:{}", JSON.toJSONString(dto));
- return AjaxResult.success(creatorProfitService.checkCreatorCanDownload(dto.getCreatorId()));
+ @ApiOperation(value="检查某艺术家当日上传次数是否超标")
+ @PostMapping(value = "/checkCreatorCanUpload")
+ public AjaxResult checkCreatorCanUpload(@Validated @RequestBody @ApiParam("检查超标对象") CreatorUploadDto dto){
+ log.debug("【艺术家小程序】检查艺术家当日上传次数是否超标参数为:{}", JSON.toJSONString(dto));
+ return AjaxResult.success(creatorProfitService.checkCreatorCanUpload(dto.getCreatorId()));
}
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorDownloadDto.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorUploadDto.java
similarity index 72%
rename from bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorDownloadDto.java
rename to bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorUploadDto.java
index 426bd1a..75268f2 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorDownloadDto.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorUploadDto.java
@@ -10,17 +10,17 @@ import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
-import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
import java.io.Serializable;
@Getter
@Setter
-@ApiModel("艺术家下载次数接收类")
-public class CreatorDownloadDto implements Serializable {
+@ApiModel("艺术家上传次数接收类")
+public class CreatorUploadDto implements Serializable {
@ApiModelProperty(value="艺术家id")
- @NotBlank
+ @NotNull(message = "艺术家id不能为空!")
private Long creatorId;
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorProfitService.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorProfitService.java
index 31bfcdc..a63e879 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorProfitService.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorProfitService.java
@@ -186,7 +186,12 @@ public interface CreatorProfitService {
*/
CreatorProfitEndAmtVo queryFrontEndAmtDetails(Long id);
- boolean checkCreatorCanDownload(Long creatorId);
+ /**
+ * 检查艺术家上传是否超标
+ * @param creatorId 艺术家id
+ * @return -
+ */
+ boolean checkCreatorCanUpload(Long creatorId);
/**
* 批量删除昨日艺术家上传次数
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorProfitServiceImpl.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorProfitServiceImpl.java
index 4852b1d..7532ecb 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorProfitServiceImpl.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorProfitServiceImpl.java
@@ -366,16 +366,20 @@ public class CreatorProfitServiceImpl implements CreatorProfitService {
}
@Override
- public boolean checkCreatorCanDownload(Long creatorId) {
+ public boolean checkCreatorCanUpload(Long creatorId) {
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
String date = df.format(new Date());
String redisKey = RedisKeyConstant.CREATOR_DOWNLOAD_KEY + date;
- if(redisService.hasHashKey(redisKey,creatorId.toString())){
+ if (redisService.hasHashKey(redisKey, creatorId.toString())) {
//存在键,判断次数,次数达标则不可下载
Integer downloadNum = redisService.getCacheMapValue(redisKey, creatorId.toString());
- return downloadNum >= 40;
+ if (downloadNum >= 40) {
+ return true;
+ } else {
+ return false;
+ }
}else{
- //不存在键则可下载
+ //不存在键则可上传
return false;
}
}
From a9fdb310f4bb5264df6a6628f31e0721c7ffc63c Mon Sep 17 00:00:00 2001
From: penny <2500338766@qq.com>
Date: Tue, 19 Jul 2022 22:30:53 +0800
Subject: [PATCH 31/32] =?UTF-8?q?feature-1.0-img:=20=E8=B0=83=E6=95=B4?=
=?UTF-8?q?=E4=BB=A3=E7=A0=81=E8=89=BA=E6=9C=AF=E5=AE=B6=E4=B8=8A=E4=BC=A0?=
=?UTF-8?q?=E6=A3=80=E6=B5=8B?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../impl/CreatorProfitServiceImpl.java | 36 +------------------
1 file changed, 1 insertion(+), 35 deletions(-)
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorProfitServiceImpl.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorProfitServiceImpl.java
index 41d3e9c..36af11b 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorProfitServiceImpl.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorProfitServiceImpl.java
@@ -365,47 +365,13 @@ public class CreatorProfitServiceImpl implements CreatorProfitService {
return creatorProfitMapper.queryFrontEndAmtDetails(id);
}
- @Override
- public boolean checkCreatorCanUpload(Long creatorId) {
- SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
- String date = df.format(new Date());
- String redisKey = RedisKeyConstant.CREATOR_DOWNLOAD_KEY + date;
- if (redisService.hasHashKey(redisKey, creatorId.toString())) {
- //存在键,判断次数,次数达标则不可下载
- Integer downloadNum = redisService.getCacheMapValue(redisKey, creatorId.toString());
- if (downloadNum >= 40) {
- return true;
- } else {
- return false;
- }
- }else{
- //不存在键则可上传
- return false;
- }
- }
-
- @Override
- public void batchDeleteCreatorDownloadNum() {
- log.info("==============批量删除昨日艺术家上传次数开始!===============");
- long startTime = System.currentTimeMillis();
- //获取昨日日期
- Date yesterday = new Date(startTime - 1000 * 60 * 60 * 24);
- SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
- String date = simpleDateFormat.format(yesterday);
- String redisKey = RedisKeyConstant.CREATOR_DOWNLOAD_KEY + date;
- if(redisService.hasKey(redisKey)){
- redisService.deleteObject(redisKey);
- }
- log.info("==============批量删除昨日艺术家上传次数完成,耗时【{}】毫秒!===============", System.currentTimeMillis() - startTime);
- }
-
@Override
public boolean checkCreatorCanUpload(Long creatorId) {
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
String date = df.format(new Date());
String redisKey = RedisKeyConstant.CREATOR_UPLOAD_KEY + date;
if (redisService.hasHashKey(redisKey, creatorId.toString())) {
- //存在键,判断次数,次数达标则不可上传
+ //存在键,判断次数,次数达标则不可下载
Integer downloadNum = redisService.getCacheMapValue(redisKey, creatorId.toString());
if (downloadNum >= 40) {
return true;
From bd541b244f9366211ac5c92d7940b0ce21529c84 Mon Sep 17 00:00:00 2001
From: penny <2500338766@qq.com>
Date: Sun, 24 Jul 2022 20:36:42 +0800
Subject: [PATCH 32/32] =?UTF-8?q?feature-1.0-img:=20=E6=96=B0=E5=A2=9E?=
=?UTF-8?q?=E5=9B=BE=E9=9B=86=E5=88=86=E9=A1=B5=E6=96=B9=E6=B3=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../img/controller/FhMiniController.java | 9 ++++++
.../img/controller/TiktokMiniController.java | 9 ++++++
.../img/controller/WxMiniController.java | 9 ++++++
.../com/bnyer/img/dto/SignImgNamePageDto.java | 19 +++++++++++
.../com/bnyer/img/mapper/TiktokImgMapper.java | 7 ++++
.../bnyer/img/service/TiktokImgService.java | 9 +++++-
.../service/impl/TiktokImgServiceImpl.java | 5 +++
.../com/bnyer/img/mapper/TiktokImgMapper.xml | 32 +++++++++++++++++++
8 files changed, 98 insertions(+), 1 deletion(-)
create mode 100644 bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/SignImgNamePageDto.java
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/FhMiniController.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/FhMiniController.java
index c31bace..9da6178 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/FhMiniController.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/FhMiniController.java
@@ -267,6 +267,15 @@ public class FhMiniController extends BaseController {
return getDataTable(tiktokImgs);
}
+ //@TokenCheck
+ @ApiOperation(value="根据标签名称查询图片分页")
+ @PostMapping(value = "/querySignImgBySignName")
+ public TableDataInfo querySignImgBySignName(@RequestBody @ApiParam("分页对象") SignImgNamePageDto dto){
+ PageHelper.startPage(dto.getPageNum(), dto.getPageSize());
+ List tiktokImgs = tiktokImgService.queryImgPageBySignName(dto.getSignName());
+ return getDataTable(tiktokImgs);
+ }
+
//@TokenCheck
@ApiOperation(value = "八字算命")
@PostMapping("/getYs")
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 e4ba90a..231df9f 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
@@ -270,6 +270,15 @@ public class TiktokMiniController extends BaseController {
return getDataTable(tiktokImgs);
}
+ //@TokenCheck
+ @ApiOperation(value="根据标签名称查询图片分页")
+ @PostMapping(value = "/querySignImgBySignName")
+ public TableDataInfo querySignImgBySignName(@RequestBody @ApiParam("分页对象") SignImgNamePageDto dto){
+ PageHelper.startPage(dto.getPageNum(), dto.getPageSize());
+ List tiktokImgs = tiktokImgService.queryImgPageBySignName(dto.getSignName());
+ return getDataTable(tiktokImgs);
+ }
+
//@TokenCheck
@ApiOperation(value = "八字算命")
@PostMapping("/getYs")
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/WxMiniController.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/WxMiniController.java
index f88254d..ceb2bfb 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/WxMiniController.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/WxMiniController.java
@@ -267,6 +267,15 @@ public class WxMiniController extends BaseController {
return getDataTable(tiktokImgs);
}
+ //@TokenCheck
+ @ApiOperation(value="根据标签名称查询图片分页")
+ @PostMapping(value = "/querySignImgBySignName")
+ public TableDataInfo querySignImgBySignName(@RequestBody @ApiParam("分页对象") SignImgNamePageDto dto){
+ PageHelper.startPage(dto.getPageNum(), dto.getPageSize());
+ List tiktokImgs = tiktokImgService.queryImgPageBySignName(dto.getSignName());
+ return getDataTable(tiktokImgs);
+ }
+
//@TokenCheck
@ApiOperation(value = "八字算命")
@PostMapping("/getYs")
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/SignImgNamePageDto.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/SignImgNamePageDto.java
new file mode 100644
index 0000000..c2b1324
--- /dev/null
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/SignImgNamePageDto.java
@@ -0,0 +1,19 @@
+package com.bnyer.img.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+
+@Getter
+@Setter
+@ApiModel("标签图片分页根据标签名称接收类")
+public class SignImgNamePageDto extends BasePageDto {
+
+ @NotBlank(message = "标签名称不能为空!")
+ @ApiModelProperty(value="标签名称")
+ private String signName;
+
+}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/TiktokImgMapper.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/TiktokImgMapper.java
index 2b94881..ddf4bad 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/TiktokImgMapper.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/TiktokImgMapper.java
@@ -77,4 +77,11 @@ public interface TiktokImgMapper extends BaseMapper {
* @return -
*/
List querySignImgBySignIdAndTypeId(@Param("signId") Long signId,@Param("typeId") Long typeId);
+
+ /**
+ * 根据标签名称查询图片
+ * @param signName 标签名称
+ * @return -
+ */
+ List queryImgPageBySignName(@Param("signName") String signName);
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/TiktokImgService.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/TiktokImgService.java
index b462919..cb9e4d4 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/TiktokImgService.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/TiktokImgService.java
@@ -135,10 +135,17 @@ public interface TiktokImgService {
int onlineOrOfflineImg(StatusDto param);
/**
- * 根据分类id和便签Id查询图片分页
+ * 根据分类id和标签Id查询图片分页
* @param signId 标签id
* @param typeId 分类id
* @return -
*/
List querySignImgBySignIdAndTypeId(Long signId, Long typeId);
+
+ /**
+ * 根据标签名称查询图片
+ * @param signName 标签名称
+ * @return -
+ */
+ List queryImgPageBySignName(String signName);
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/TiktokImgServiceImpl.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/TiktokImgServiceImpl.java
index 132d5a5..d7c340a 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/TiktokImgServiceImpl.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/TiktokImgServiceImpl.java
@@ -252,4 +252,9 @@ public class TiktokImgServiceImpl implements TiktokImgService {
return tiktokImgMapper.querySignImgBySignIdAndTypeId(signId,typeId);
}
+ @Override
+ public List queryImgPageBySignName(String signName) {
+ return tiktokImgMapper.queryImgPageBySignName(signName);
+ }
+
}
diff --git a/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/TiktokImgMapper.xml b/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/TiktokImgMapper.xml
index 8c3df61..e3a1e8a 100644
--- a/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/TiktokImgMapper.xml
+++ b/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/TiktokImgMapper.xml
@@ -43,6 +43,21 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
id, img_url, creator_id, type_id, download_num, great_num, collection_num, `status`,
@@ -145,4 +160,21 @@
where iti.id in
(select img_id from img_img_sign_relation where sign_id = #{signId} and type_id = #{typeId})
+
+ select
+ iti.id as id,iti.img_url as imgUrl,iti.creator_id as creatorId,
+ iti.type_id as typeId,iti.download_num as downloadNum, iti.great_num as greatNum,
+ iti.collection_num as collectionNum,iti.status as status,iti.is_hot as isHot,
+ iis.id as signId,iis.name as signName
+ from img_tiktok_img iti
+ join img_img_sign_relation iisr on iisr.img_id = iti.id
+ join img_sign iis on iisr.sign_id = iis.id
+
+ iis.is_show = '1' and iti.is_show = '1' and iti.status = '3'
+
+ and iis.name like concat('%', #{signName}, '%')
+
+
+ order by iti.create_time desc
+