记得上下班打卡 | git大法好,push需谨慎

Commit c74cfcdf authored by anjiabin's avatar anjiabin

实现zxtnft购买功能

parent 050d89b6
package com.liquidnet.service.galaxy.dto.param;
import com.liquidnet.commons.lang.util.JsonUtils;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import java.io.Serializable;
/**
* @author AnJiabin <anjiabin@zhengzai.tv>
* @version V1.0
* @Description: TODO
* @class: GalaxyNftImageReqDto
* @Package com.liquidnet.service.galaxy.dto.param
* @Copyright: LightNet @ Copyright (c) 2021
* @date 2022/3/15 17:56
*/
@ApiModel(value = "GalaxyNftImageReqDto", description = "NFT图片检测")
@Data
public class GalaxyNftImageReqDto extends GalaxyBaseReqDto implements Serializable,Cloneable {
/**
* 素材地址(全路径)
*/
private String imageUrl;
@Override
public String toString(){
return JsonUtils.toJson(this);
}
private static final GalaxyNftImageReqDto obj = new GalaxyNftImageReqDto();
public static GalaxyNftImageReqDto getNew() {
try {
return (GalaxyNftImageReqDto) obj.clone();
} catch (CloneNotSupportedException e) {
return new GalaxyNftImageReqDto();
}
}
}
package com.liquidnet.service.galaxy.dto.param;
import com.liquidnet.commons.lang.util.JsonUtils;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import java.io.Serializable;
/**
* @author AnJiabin <anjiabin@zhengzai.tv>
* @version V1.0
* @Description: TODO
* @class: GalaxyNftImageRespDto
* @Package com.liquidnet.service.galaxy.dto.param
* @Copyright: LightNet @ Copyright (c) 2021
* @date 2022/3/15 18:05
*/
@ApiModel(value = "GalaxyNftImageRespDto", description = "NFT图片检测")
@Data
public class GalaxyNftImageRespDto implements Serializable,Cloneable {
/**
* 建议您拿到判断结果后的执行操作。建议值,Block:建议屏蔽 Review:建议复审 Pass:建议通过
*/
private String suggestion;
/**
* 恶意标签,Normal:正常 Porn:色情 Abuse:谩骂 Ad:广告。以及其他令人反感、不安全或不适宜的内容类型
*/
private String label;
/**
* 机器判断当前分类的置信度,取值范围:0-100。分数越高,表示越有可能属于当前分类(如:色情99,则该样本属于色情的置信度非常高。)
*/
private Integer score;
@Override
public String toString(){
return JsonUtils.toJson(this);
}
private static final GalaxyNftImageRespDto obj = new GalaxyNftImageRespDto();
public static GalaxyNftImageRespDto getNew() {
try {
return (GalaxyNftImageRespDto) obj.clone();
} catch (CloneNotSupportedException e) {
return new GalaxyNftImageRespDto();
}
}
}
package com.liquidnet.service.galaxy.service;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.galaxy.dto.param.GalaxyArtSeriesClaimReqDto;
import com.liquidnet.service.galaxy.dto.param.GalaxyArtSeriesClaimRespDto;
import com.liquidnet.service.galaxy.dto.param.GalaxyNftUploadReqDto;
import com.liquidnet.service.galaxy.dto.param.GalaxyNftUploadRespDto;
import com.liquidnet.service.galaxy.dto.param.*;
/**
* @author AnJiabin <anjiabin@zhengzai.tv>
......@@ -16,6 +13,8 @@ import com.liquidnet.service.galaxy.dto.param.GalaxyNftUploadRespDto;
* @date 2022/3/8 11:45
*/
public interface IGalaxyArtworkService {
ResponseDto<GalaxyNftImageRespDto> nftImageCheck(GalaxyNftImageReqDto reqDto);
ResponseDto<GalaxyNftUploadRespDto> nftUpload(GalaxyNftUploadReqDto reqDto);
ResponseDto<GalaxyArtSeriesClaimRespDto> seriesClaim(GalaxyArtSeriesClaimReqDto reqDto);
......
......@@ -3,10 +3,7 @@ package com.liquidnet.service.galaxy.controller;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.galaxy.aop.annotation.ControllerLog;
import com.liquidnet.service.galaxy.dto.param.GalaxyArtSeriesClaimReqDto;
import com.liquidnet.service.galaxy.dto.param.GalaxyArtSeriesClaimRespDto;
import com.liquidnet.service.galaxy.dto.param.GalaxyNftUploadReqDto;
import com.liquidnet.service.galaxy.dto.param.GalaxyNftUploadRespDto;
import com.liquidnet.service.galaxy.dto.param.*;
import com.liquidnet.service.galaxy.service.IGalaxyArtworkService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
......@@ -38,8 +35,16 @@ public class GalaxyArtworkController {
@Autowired
private IGalaxyArtworkService galaxyArtworkService;
@ControllerLog(description = "NFT素材上传")
@ControllerLog(description = "NFT图片风险检测")
@ApiOperationSupport(order = 1)
@ApiOperation(value = "NFT图片风险检测")
@PostMapping(value = {"nftImageCheck"})
public ResponseDto<GalaxyNftImageRespDto> nftImageCheck(@Valid @RequestBody GalaxyNftImageReqDto reqDto) {
return galaxyArtworkService.nftImageCheck(reqDto);
}
@ControllerLog(description = "NFT素材上传")
@ApiOperationSupport(order = 2)
@ApiOperation(value = "NFT素材上传")
@PostMapping(value = {"nftUpload"})
public ResponseDto<GalaxyNftUploadRespDto> nftUpload(@Valid @RequestBody GalaxyNftUploadReqDto reqDto) {
......@@ -47,7 +52,7 @@ public class GalaxyArtworkController {
}
@ControllerLog(description = "NFT系列声明")
@ApiOperationSupport(order = 2)
@ApiOperationSupport(order = 3)
@ApiOperation(value = "NFT系列声明")
@PostMapping(value = {"seriesClaim"})
public ResponseDto<GalaxyArtSeriesClaimRespDto> seriesClaim(@Valid @RequestBody GalaxyArtSeriesClaimReqDto reqDto) {
......
......@@ -15,6 +15,8 @@ import com.liquidnet.service.galaxy.dto.param.*;
public interface IGalaxyRouterStrategy {
ResponseDto<GalaxyUserRegisterRespDto> userRegister(GalaxyUserRegisterReqDto reqDto);
ResponseDto<GalaxyNftImageRespDto> nftImageCheck(GalaxyNftImageReqDto reqDto);
ResponseDto<GalaxyNftUploadRespDto> nftUpload(GalaxyNftUploadReqDto reqDto);
ResponseDto<GalaxyArtSeriesClaimRespDto> seriesClaim(GalaxyArtSeriesClaimReqDto reqDto);
......
package com.liquidnet.service.galaxy.router.strategy.impl;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.galaxy.dto.param.*;
import com.liquidnet.service.galaxy.router.strategy.IGalaxyRouterStrategy;
import lombok.extern.slf4j.Slf4j;
......@@ -16,9 +14,5 @@ import lombok.extern.slf4j.Slf4j;
*/
@Slf4j
public abstract class AbstractGalaxyRouterStrategyImpl implements IGalaxyRouterStrategy {
public abstract ResponseDto<GalaxyUserRegisterRespDto> userRegister(GalaxyUserRegisterReqDto reqDto);
public abstract ResponseDto<GalaxyNftUploadRespDto> nftUpload(GalaxyNftUploadReqDto reqDto);
public abstract ResponseDto<GalaxyNftBuyRespDto> nftBuy(GalaxyNftBuyReqDto reqDto);
}
......@@ -31,6 +31,11 @@ public class GalaxyRouterStrategyEthImpl extends AbstractGalaxyRouterStrategyImp
return null;
}
@Override
public ResponseDto<GalaxyNftImageRespDto> nftImageCheck(GalaxyNftImageReqDto reqDto) {
return null;
}
@Override
public ResponseDto<GalaxyNftUploadRespDto> nftUpload(GalaxyNftUploadReqDto reqDto) {
return null;
......
......@@ -38,6 +38,11 @@ public class GalaxyRouterStrategyZxlImpl extends AbstractGalaxyRouterStrategyImp
return zxinUserBiz.userRegister(reqDto);
}
@Override
public ResponseDto<GalaxyNftImageRespDto> nftImageCheck(GalaxyNftImageReqDto reqDto) {
return zxinArtworkBiz.nftImageCheck(reqDto);
}
@Override
public ResponseDto<GalaxyNftUploadRespDto> nftUpload(GalaxyNftUploadReqDto reqDto) {
return zxinArtworkBiz.nftUpload(reqDto);
......
......@@ -10,14 +10,12 @@ import com.liquidnet.common.third.zxlnft.dto.wallet.UploadToCosResp;
import com.liquidnet.common.third.zxlnft.exception.ZxlNftException;
import com.liquidnet.common.third.zxlnft.util.ZxlWalletSdkUtil;
import com.liquidnet.common.third.zxlnft.util.ZxlnftSdkUtil;
import com.liquidnet.commons.lang.util.BeanUtil;
import com.liquidnet.commons.lang.util.DateUtil;
import com.liquidnet.commons.lang.util.IDGenerator;
import com.liquidnet.commons.lang.util.StringUtil;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.galaxy.dto.param.GalaxyArtSeriesClaimReqDto;
import com.liquidnet.service.galaxy.dto.param.GalaxyArtSeriesClaimRespDto;
import com.liquidnet.service.galaxy.dto.param.GalaxyNftUploadReqDto;
import com.liquidnet.service.galaxy.dto.param.GalaxyNftUploadRespDto;
import com.liquidnet.service.galaxy.dto.param.*;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
......@@ -57,6 +55,20 @@ public class ZxinArtworkBiz {
@Value("${liquidnet.galaxy.temp-file-path:/Users/anjiabin/mdsky_gitlab/galaxy/tempFilePath}")
private String tempFilePath;
public ResponseDto<GalaxyNftImageRespDto> nftImageCheck(GalaxyNftImageReqDto reqDto) {
Nft008QueryImageModerationReqDto nft008ReqDto = Nft008QueryImageModerationReqDto.getNew();
nft008ReqDto.setImageUrl(reqDto.getImageUrl());
ZxlnftResponseDto<Nft008QueryImageModerationRespDto> nft008RespDto = zxlnftSdkUtil.nft008QueryImageModeration(nft008ReqDto);
if(!nft008RespDto.isSuccess()){
throw new ZxlNftException(ZxlErrorEnum.IMAGE_CHECK_ERROR.getCode(),ZxlErrorEnum.IMAGE_CHECK_ERROR.getMsg());
}
GalaxyNftImageRespDto nftImageRespDto = GalaxyNftImageRespDto.getNew();
BeanUtil.copy(nft008RespDto,nftImageRespDto);
return ResponseDto.success(nftImageRespDto);
}
public ResponseDto<GalaxyNftUploadRespDto> nftUpload(GalaxyNftUploadReqDto reqDto) {
String imageUrl = reqDto.getImageUrl();
String seriesName = "NOW_ZXL_NFT_PIC_skuId002"; //系列名字 skuId
......
package com.liquidnet.service.galaxy.service.impl;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.galaxy.dto.param.GalaxyArtSeriesClaimReqDto;
import com.liquidnet.service.galaxy.dto.param.GalaxyArtSeriesClaimRespDto;
import com.liquidnet.service.galaxy.dto.param.GalaxyNftUploadReqDto;
import com.liquidnet.service.galaxy.dto.param.GalaxyNftUploadRespDto;
import com.liquidnet.service.galaxy.dto.param.*;
import com.liquidnet.service.galaxy.router.strategy.GalaxyRouterStrategyContext;
import com.liquidnet.service.galaxy.service.IGalaxyArtworkService;
import lombok.extern.slf4j.Slf4j;
......@@ -26,6 +23,11 @@ public class GalaxyArtworkServiceImpl implements IGalaxyArtworkService {
@Autowired
private GalaxyRouterStrategyContext galaxyRouterStrategyContext;
@Override
public ResponseDto<GalaxyNftImageRespDto> nftImageCheck(GalaxyNftImageReqDto reqDto) {
return galaxyRouterStrategyContext.getStrategy(reqDto.getRouteType()).nftImageCheck(reqDto);
}
@Override
public ResponseDto<GalaxyNftUploadRespDto> nftUpload(GalaxyNftUploadReqDto reqDto) {
return galaxyRouterStrategyContext.getStrategy(reqDto.getRouteType()).nftUpload(reqDto);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment