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 9aaf8ed..3da3f8c 100644 --- a/suimangAdmin/src/main/java/com/iformall/controller/sm/ServiceInfoController.java +++ b/suimangAdmin/src/main/java/com/iformall/controller/sm/ServiceInfoController.java @@ -2,6 +2,7 @@ package com.iformall.controller.sm; import com.github.pagehelper.PageInfo; import com.iformall.annotation.ApiVersion; +import com.iformall.common.ErrorCode; import com.iformall.common.R; import com.iformall.common.ResultData; import com.iformall.constant.SwaggerConstant; @@ -10,12 +11,15 @@ import com.iformall.domain.dto.sm.SaveServiceInfoDTO; import com.iformall.domain.dto.sm.UpdateServiceInfoDTO; import com.iformall.domain.dto.sm.UpdateServiceInfoStatusDTO; import com.iformall.domain.po.sm.ServiceInfo; +import com.iformall.exception.BizException; import com.iformall.service.sm.ServiceInfoService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import java.util.List; + @RestController @RequestMapping("/serviceInfo") @Api(tags = "合作商接口") @@ -31,6 +35,16 @@ public class ServiceInfoController extends BaseController { return R.ok(serviceInfoService.pageServiceInfo(serviceInfo, pageNum, pageSize)); } + @ApiVersion(group = SwaggerConstant.V_1_0_0) + @ApiOperation("单个查询合作商") + @GetMapping("/get") + public R getServiceInfo(Long id) { + if (id == null) { + throw new BizException(ErrorCode.SYS_PARAMETER_NOT_NULL); + } + return R.ok(serviceInfoService.getServiceInfo(id)); + } + @ApiVersion(group = SwaggerConstant.V_1_0_0) @ApiOperation("新增合作商") @PostMapping("/save") diff --git a/suimangService/src/main/java/com/iformall/domain/vo/sm/PreviewVoiceVO.java b/suimangService/src/main/java/com/iformall/domain/vo/sm/PreviewVoiceVO.java new file mode 100644 index 0000000..c8cf05f --- /dev/null +++ b/suimangService/src/main/java/com/iformall/domain/vo/sm/PreviewVoiceVO.java @@ -0,0 +1,11 @@ +package com.iformall.domain.vo.sm; + +import io.swagger.annotations.ApiModel; +import lombok.Data; + +@ApiModel(value = "音色预览请求参数") +@Data +public class PreviewVoiceVO { + private Double time; + private String url; +} diff --git a/suimangService/src/main/java/com/iformall/service/sm/ServiceInfoService.java b/suimangService/src/main/java/com/iformall/service/sm/ServiceInfoService.java index abd0179..66f7e48 100644 --- a/suimangService/src/main/java/com/iformall/service/sm/ServiceInfoService.java +++ b/suimangService/src/main/java/com/iformall/service/sm/ServiceInfoService.java @@ -7,6 +7,8 @@ import com.iformall.domain.dto.sm.UpdateServiceInfoStatusDTO; import com.iformall.domain.po.sm.ServiceInfo; import com.iformall.domain.vo.neuver.PageServiceInfoVO; +import java.util.List; + /** * 接入商service * @@ -44,4 +46,6 @@ public interface ServiceInfoService { * @param dto */ void updateServiceInfoStatus(UpdateServiceInfoStatusDTO dto); + + ServiceInfo getServiceInfo(Long id); } diff --git a/suimangService/src/main/java/com/iformall/service/sm/VoiceInfoService.java b/suimangService/src/main/java/com/iformall/service/sm/VoiceInfoService.java index 00ed921..d285b2d 100644 --- a/suimangService/src/main/java/com/iformall/service/sm/VoiceInfoService.java +++ b/suimangService/src/main/java/com/iformall/service/sm/VoiceInfoService.java @@ -1,10 +1,8 @@ package com.iformall.service.sm; -import com.iformall.common.ErrorCode; -import com.iformall.common.ResultData; +import com.iformall.domain.vo.sm.PreviewVoiceVO; import com.iformall.domain.po.sm.VoiceInfo; -import com.iformall.domain.po.sm.VoiceLanguage; import com.iformall.sm.AiPreviewParam; import java.util.List; @@ -15,5 +13,5 @@ public interface VoiceInfoService { VoiceInfo getById(Long voiceMouldId); - Double previewVoice(AiPreviewParam aiPreviewParam); + PreviewVoiceVO previewVoice(AiPreviewParam aiPreviewParam); } diff --git a/suimangService/src/main/java/com/iformall/service/sm/impl/ServiceInfoServiceImpl.java b/suimangService/src/main/java/com/iformall/service/sm/impl/ServiceInfoServiceImpl.java index 4aea26b..3d3c2cd 100644 --- a/suimangService/src/main/java/com/iformall/service/sm/impl/ServiceInfoServiceImpl.java +++ b/suimangService/src/main/java/com/iformall/service/sm/impl/ServiceInfoServiceImpl.java @@ -14,10 +14,13 @@ import com.iformall.mapper.ServiceInfoMapper; import com.iformall.mapper.WxThirdPartyApiMapper; import com.iformall.service.WxThirdPartyApiService; import com.iformall.service.sm.ServiceInfoService; +import org.apache.commons.collections.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.util.List; + @Service public class ServiceInfoServiceImpl implements ServiceInfoService { @@ -76,4 +79,12 @@ public class ServiceInfoServiceImpl implements ServiceInfoService { .eq(WxThirdPartyApi::getServiceId, dto.getId())); } } + + @Override + public ServiceInfo getServiceInfo(Long id) { + ServiceInfo serviceInfo = new ServiceInfo(); + serviceInfo.setId(id); + List serviceInfos = serviceInfoMapper.listServiceInfo(serviceInfo); + return !CollectionUtils.isEmpty(serviceInfos) ? serviceInfos.get(0) : null; + } } diff --git a/suimangService/src/main/java/com/iformall/service/sm/impl/VoiceInfoServiceImpl.java b/suimangService/src/main/java/com/iformall/service/sm/impl/VoiceInfoServiceImpl.java index 496ce20..41bd14e 100644 --- a/suimangService/src/main/java/com/iformall/service/sm/impl/VoiceInfoServiceImpl.java +++ b/suimangService/src/main/java/com/iformall/service/sm/impl/VoiceInfoServiceImpl.java @@ -2,14 +2,12 @@ package com.iformall.service.sm.impl; import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.google.common.collect.Lists; import com.iformall.common.ErrorCode; -import com.iformall.common.ResultData; +import com.iformall.domain.vo.sm.PreviewVoiceVO; import com.iformall.domain.po.sm.VoiceInfo; import com.iformall.domain.vo.VoiceInfoVo; -import com.iformall.enums.EnumSex; import com.iformall.enums.EnumSpeakType; import com.iformall.exception.BizException; import com.iformall.file.aliyun.bean.AliyunOSSConfig; @@ -20,7 +18,6 @@ import com.iformall.utils.Constant; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import org.springframework.util.ObjectUtils; import java.util.ArrayList; import java.util.List; @@ -79,7 +76,7 @@ public class VoiceInfoServiceImpl implements VoiceInfoService { } @Override - public Double previewVoice(AiPreviewParam aiPreviewParam) { + public PreviewVoiceVO previewVoice(AiPreviewParam aiPreviewParam) { VoiceInfo voiceInfo = voiceMapper.selectOne(new LambdaQueryWrapper() .eq(VoiceInfo::getIsDel, 0) .eq(VoiceInfo::getId, aiPreviewParam.getVoice_id())); @@ -92,7 +89,10 @@ public class VoiceInfoServiceImpl implements VoiceInfoService { param.setGender(voiceInfo.getSex() == 1 ? "male" : "female"); AiPreviewResult result = AiVideoHelper.voicePreview(param); if (result.isSuccess()){ - return result.getTime(); + PreviewVoiceVO vo = new PreviewVoiceVO(); + vo.setTime(result.getTime()); + vo.setUrl(result.getUrl()); + return vo; } throw new BizException(result.getCode(), result.getMsgInfo(result.getCode(),result.getMsg())); }