From 477991ba843684020cb1882b3c7e385c1ea8f4ce Mon Sep 17 00:00:00 2001 From: winter Date: Tue, 7 Nov 2023 01:13:06 +0800 Subject: [PATCH] fix --- .../controller/ApiServiceInfoController.java | 47 +++++++++++++++++++ .../controller/sm/ServiceInfoController.java | 31 +++++++++++- .../com/iformall/smsdk/SmSdkConstant.java | 10 ++++ .../java/com/iformall/smsdk/SmSdkUtils.java | 21 +++++++++ 4 files changed, 108 insertions(+), 1 deletion(-) create mode 100644 open-api/src/main/java/com/iformall/controller/ApiServiceInfoController.java diff --git a/open-api/src/main/java/com/iformall/controller/ApiServiceInfoController.java b/open-api/src/main/java/com/iformall/controller/ApiServiceInfoController.java new file mode 100644 index 0000000..76c136f --- /dev/null +++ b/open-api/src/main/java/com/iformall/controller/ApiServiceInfoController.java @@ -0,0 +1,47 @@ +package com.iformall.controller; + +import com.iformall.common.ResultData; +import com.iformall.domain.po.sm.ServiceVideoRecord; +import com.iformall.dto.PageServiceVideoRecordDTO; +import com.iformall.service.sm.ServiceInfoService; +import com.iformall.service.sm.ServiceVideoRecordService; + +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * 数字人模板api + * + * @author xmzhao71 + * @date 2023-10-17 + */ +@Api(tags = "接入方api") +@RestController +@RequestMapping("/api/serviceInfo") +public class ApiServiceInfoController extends BaseController { + + @Autowired + private ServiceInfoService serviceInfoService; + + @Autowired + private ServiceVideoRecordService serviceVideoRecordService; + + @ApiOperation("当前接入方信息") + @GetMapping("current") + public ResultData pagePersonMould() { + return new ResultData(serviceInfoService.getServiceInfo(getServiceId())); + } + + @ApiOperation("当前接入方生成视频记录") + @GetMapping("currentVideoRecords") + public ResultData currentVideoRecords(PageServiceVideoRecordDTO dto) { + ServiceVideoRecord svr = new ServiceVideoRecord(); + svr.setServiceId(getServiceId()); + return new ResultData(serviceVideoRecordService.listAsPage(svr, dto.getPageNum(), dto.getPageSize())); + } + +} diff --git a/suimangAdmin/src/main/java/com/iformall/controller/sm/ServiceInfoController.java b/suimangAdmin/src/main/java/com/iformall/controller/sm/ServiceInfoController.java index 1ddcc77..5383f16 100644 --- a/suimangAdmin/src/main/java/com/iformall/controller/sm/ServiceInfoController.java +++ b/suimangAdmin/src/main/java/com/iformall/controller/sm/ServiceInfoController.java @@ -26,6 +26,8 @@ import com.iformall.service.MallUserInfoService; import com.iformall.service.sm.PersonMouldService; import com.iformall.service.sm.ServiceInfoService; import com.iformall.service.sm.ServiceVideoRecordService; +import com.iformall.sm.AiVideoHelper; +import com.iformall.smsdk.SmSdkUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; @@ -164,7 +166,7 @@ public class ServiceInfoController extends MallUserInfoBaseController{ } @ApiVersion(group = SwaggerConstant.V_1_0_0) - @ApiOperation("当前") + @ApiOperation("当前视频生成记录") @GetMapping("/currentVideoRecords") @ApiImplicitParams({ @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), @@ -177,4 +179,31 @@ public class ServiceInfoController extends MallUserInfoBaseController{ PageInfo personMouldPage = serviceVideoRecordService.listAsPage(svr, pageNum, pageSize); return new ResultData(personMouldPage); } + + @ApiVersion(group = SwaggerConstant.V_1_0_0) + @ApiOperation("私有化部署管理员当前") + @GetMapping("/privateDeployAdminCurrent") + public ResultData privateDeployAdminCurrent() { + MallUserInfo user = this.getUser(); + if (AiVideoHelper.localDeploy && user.checkAdmin()) { + return new ResultData(SmSdkUtils.getCurrentServiceInfo()); + }else { + return new ResultData(Result.ERROR,"当前访问非法"); + } + } + + @ApiVersion(group = SwaggerConstant.V_1_0_0) + @ApiOperation("私有化部署管理员当前视频生成记录") + @GetMapping("/privateDeployAdminCurrentVideoRecords") + @ApiImplicitParams({ + @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), + @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)}) + public ResultData privateDeployAdminCurrentVideoRecords(Integer pageNum, Integer pageSize) { + MallUserInfo user = this.getUser(); + if (AiVideoHelper.localDeploy && user.checkAdmin()) { + return new ResultData(SmSdkUtils.currentVideoRecords(pageNum,pageSize)); + }else { + return new ResultData(Result.ERROR,"当前访问非法"); + } + } } diff --git a/suimangService/src/main/java/com/iformall/smsdk/SmSdkConstant.java b/suimangService/src/main/java/com/iformall/smsdk/SmSdkConstant.java index 7d6b254..93c08a7 100644 --- a/suimangService/src/main/java/com/iformall/smsdk/SmSdkConstant.java +++ b/suimangService/src/main/java/com/iformall/smsdk/SmSdkConstant.java @@ -29,4 +29,14 @@ public interface SmSdkConstant { * 生成视频 */ String GENERATE_VIDEO = "/api/video/generateVideo"; + + /** + * 当前接入方 + */ + String CURRENT_SERVICE_INFO = "/api/serviceInfo/current"; + + /** + * 当前接入方生成视频记录 + */ + String CURRENT_SERVICE_VIDEO_RECORDS = "/api/serviceInfo/currentVideoRecords"; } diff --git a/suimangService/src/main/java/com/iformall/smsdk/SmSdkUtils.java b/suimangService/src/main/java/com/iformall/smsdk/SmSdkUtils.java index 30b2ebb..a73f9af 100644 --- a/suimangService/src/main/java/com/iformall/smsdk/SmSdkUtils.java +++ b/suimangService/src/main/java/com/iformall/smsdk/SmSdkUtils.java @@ -2,6 +2,9 @@ package com.iformall.smsdk; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; +import com.github.pagehelper.PageInfo; +import com.iformall.domain.po.sm.ServiceInfo; +import com.iformall.domain.po.sm.ServiceVideoRecord; import com.iformall.sm.AiPreviewResult; import com.iformall.sm.AiVideoParam; import com.iformall.sm.AiVideoResult; @@ -55,4 +58,22 @@ public class SmSdkUtils { String data = resultObject.getString("data"); return StringUtils.isNotBlank(data) ? JSON.parseObject(data, AiVideoResult.class) : new AiVideoResult(); } + + public static ServiceInfo getCurrentServiceInfo() { + String url = smSdkUtils.smSdkProperties.getBaseUrl() + SmSdkConstant.CURRENT_SERVICE_INFO; + ResponseEntity response = smSdkUtils.restTemplate.exchange(url, HttpMethod.GET, null, String.class); + log.info("(遂芒api)【查询当前接入方】接口的响应数据:{}", JSON.toJSON(response.getBody())); + JSONObject resultObject = JSON.parseObject(response.getBody()); + String data = resultObject.getString("data"); + return StringUtils.isNotBlank(data) ? JSON.parseObject(data, ServiceInfo.class) : new ServiceInfo(); + } + + public static PageInfo currentVideoRecords(int pageNum,int pageSize) { + String url = smSdkUtils.smSdkProperties.getBaseUrl() + SmSdkConstant.CURRENT_SERVICE_VIDEO_RECORDS+"?pageNum="+pageNum+"&pageSize="+pageSize; + ResponseEntity response = smSdkUtils.restTemplate.exchange(url, HttpMethod.GET, null, String.class); + log.info("(遂芒api)【查询当前接入方】接口的响应数据:{}", JSON.toJSON(response.getBody())); + JSONObject resultObject = JSON.parseObject(response.getBody()); + String data = resultObject.getString("data"); + return StringUtils.isNotBlank(data) ? JSON.parseObject(data, PageInfo.class) : new PageInfo(); + } }