Browse Source

feature-img-quan-1.0.0: 调整代码艺术家上传检测逻辑

feature-1.0-img-prototype
penny 4 years ago
parent
commit
23ff8b0c8f
  1. 2
      bnyer-services/bnyer-file/src/main/java/com/bnyer/file/constants/RedisKeyConstant.java
  2. 4
      bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/IFileService.java
  3. 10
      bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/FileServiceImpl.java
  4. 11
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
  5. 8
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorUploadDto.java
  6. 7
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/CreatorProfitService.java
  7. 12
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorProfitServiceImpl.java

2
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";
}

4
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);
}

10
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<MultipartFile> 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);
}
}

11
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()));
}
}

8
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/CreatorDownloadDto.java → 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;

7
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);
/**
* 批量删除昨日艺术家上传次数

12
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;
}
}

Loading…
Cancel
Save