Commit 2498c2d2 by 宋祥

Merge branch 'feat-zyj' into 'master'

fix广告详情音视频转码bug

See merge request rays/pcloud-book!85
parents 8aced829 37ce09a5
...@@ -182,6 +182,12 @@ ...@@ -182,6 +182,12 @@
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.pcloud.facade</groupId>
<artifactId>pcloud-facade-convert</artifactId>
<version>${pcloud-facade-convert.version}</version>
</dependency>
<dependency>
<groupId>fakepath</groupId> <groupId>fakepath</groupId>
<artifactId>jbarcode</artifactId> <artifactId>jbarcode</artifactId>
<version>0.2.8</version> <version>0.2.8</version>
......
...@@ -17,6 +17,7 @@ import com.pcloud.book.book.entity.BookAdviser; ...@@ -17,6 +17,7 @@ import com.pcloud.book.book.entity.BookAdviser;
import com.pcloud.book.book.set.BookSet; import com.pcloud.book.book.set.BookSet;
import com.pcloud.book.consumer.app.AppConsr; import com.pcloud.book.consumer.app.AppConsr;
import com.pcloud.book.consumer.common.ExportConsr; import com.pcloud.book.consumer.common.ExportConsr;
import com.pcloud.book.consumer.convert.ConvertConsr;
import com.pcloud.book.consumer.label.LabelConsr; import com.pcloud.book.consumer.label.LabelConsr;
import com.pcloud.book.consumer.reader.ReaderConsr; import com.pcloud.book.consumer.reader.ReaderConsr;
import com.pcloud.book.consumer.resource.ProductConsr; import com.pcloud.book.consumer.resource.ProductConsr;
...@@ -53,6 +54,7 @@ import com.pcloud.common.utils.ResponseHandleUtil; ...@@ -53,6 +54,7 @@ import com.pcloud.common.utils.ResponseHandleUtil;
import com.pcloud.common.utils.aliyun.OssUtils; import com.pcloud.common.utils.aliyun.OssUtils;
import com.pcloud.common.utils.httpclient.UrlUtils; import com.pcloud.common.utils.httpclient.UrlUtils;
import com.pcloud.common.utils.string.StringUtil; import com.pcloud.common.utils.string.StringUtil;
import com.pcloud.convert.file.entity.FileUploadInfo;
import com.pcloud.facade.quartz.entity.CallBackParam; import com.pcloud.facade.quartz.entity.CallBackParam;
import com.pcloud.facade.quartz.entity.ScheduleJob; import com.pcloud.facade.quartz.entity.ScheduleJob;
import com.pcloud.facade.quartz.service.ScheduleService; import com.pcloud.facade.quartz.service.ScheduleService;
...@@ -170,6 +172,8 @@ public class AdvertisingSpaceBizImpl implements AdvertisingSpaceBiz { ...@@ -170,6 +172,8 @@ public class AdvertisingSpaceBizImpl implements AdvertisingSpaceBiz {
private WeixinQrcodeBiz weixinQrcodeBiz; private WeixinQrcodeBiz weixinQrcodeBiz;
@Autowired @Autowired
private AdvertisingDistributionBookDao distributionBookDao; private AdvertisingDistributionBookDao distributionBookDao;
@Autowired
private ConvertConsr convertConsr;
private static final String ADVERTISING_PUT_PLAN_SCHEDULE_PRE = "ADVERTISING_PUT_PALN_"; private static final String ADVERTISING_PUT_PLAN_SCHEDULE_PRE = "ADVERTISING_PUT_PALN_";
...@@ -191,8 +195,9 @@ public class AdvertisingSpaceBizImpl implements AdvertisingSpaceBiz { ...@@ -191,8 +195,9 @@ public class AdvertisingSpaceBizImpl implements AdvertisingSpaceBiz {
} }
advertisingSpaceDao.insert(advertisingSpace); advertisingSpaceDao.insert(advertisingSpace);
Long adId = advertisingSpace.getId(); Long adId = advertisingSpace.getId();
//报名表单选项新增 //CPA、非纯图片广告详情,报名表单选项新增
if (SettlementMethodEnum.CPA.code.equals(settlementMethod)) { if (SettlementMethodEnum.CPA.code.equals(settlementMethod) &&
!AdPositionModeEnum.JUST_PIC.modeCode.equals(advertisingSpace.getAdPositionMode())) {
bmBiz.addOptionList(advertisingSpace.getAdvertisingBmOptionList(), adId); bmBiz.addOptionList(advertisingSpace.getAdvertisingBmOptionList(), adId);
} }
AdvertisingSettlementMethod method = new AdvertisingSettlementMethod(); AdvertisingSettlementMethod method = new AdvertisingSettlementMethod();
...@@ -215,11 +220,29 @@ public class AdvertisingSpaceBizImpl implements AdvertisingSpaceBiz { ...@@ -215,11 +220,29 @@ public class AdvertisingSpaceBizImpl implements AdvertisingSpaceBiz {
String fileUrl = advertisingSpace.getAdDetailFileUrl(); String fileUrl = advertisingSpace.getAdDetailFileUrl();
String title = advertisingSpace.getAdDetailFileName(); String title = advertisingSpace.getAdDetailFileName();
Long seconds = advertisingSpace.getAdDetailFilePilotSecond(); Long seconds = advertisingSpace.getAdDetailFilePilotSecond();
if (StringUtil.isEmpty(fileUrl) && !StringUtil.isEmpty(fileId)) { //总时长
Integer duration = null;
if (!StringUtil.isEmpty(fileId)) {
//获取转码路径
FileUploadInfo fileUploadInfo = convertConsr.getByFileId(fileId);
if (null == fileUploadInfo) {
throw new BookBizException(BookBizException.PARAM_IS_ERROR, "文件路径为空!");
}
fileUrl = fileUploadInfo.getUrl();
duration = fileUploadInfo.getDuration();
advertisingSpace.setAdDetailFileUrl(fileUrl);
if (null != duration) {
advertisingSpace.setAdDetailFileDuration(duration.longValue());
}
}
/* if (StringUtil.isEmpty(fileUrl) && !StringUtil.isEmpty(fileId)) {
//转码通知 //转码通知
sendConvertFileQueue(fileId, 0l); sendConvertFileQueue(fileId, 0l);
advertisingSpace.setAdDetailFileConvertState(0); advertisingSpace.setAdDetailFileConvertState(0);
return advertisingSpace; return advertisingSpace;
}*/
if (null != duration && null != seconds && seconds >= duration) {
throw new BookBizException(BookBizException.PARAM_IS_ERROR, "资源时长" + duration + "s,试听/试看时长超过该时长,请重新设置");
} }
if (!StringUtil.isEmpty(fileUrl)) {//剪切文件 if (!StringUtil.isEmpty(fileUrl)) {//剪切文件
advertisingSpace.setAdDetailFileConvertState(1); advertisingSpace.setAdDetailFileConvertState(1);
...@@ -315,10 +338,10 @@ public class AdvertisingSpaceBizImpl implements AdvertisingSpaceBiz { ...@@ -315,10 +338,10 @@ public class AdvertisingSpaceBizImpl implements AdvertisingSpaceBiz {
if (StringUtil.isEmpty(advertisingSpace.getAdDetailTitle())) { if (StringUtil.isEmpty(advertisingSpace.getAdDetailTitle())) {
throw new BookBizException(BookBizException.PARAM_IS_ERROR, "标题不能为空!"); throw new BookBizException(BookBizException.PARAM_IS_ERROR, "标题不能为空!");
} }
if (null != advertisingSpace.getAdDetailFileDuration() && null != advertisingSpace.getAdDetailFilePilotSecond() /*if (null != advertisingSpace.getAdDetailFileDuration() && null != advertisingSpace.getAdDetailFilePilotSecond()
&& advertisingSpace.getAdDetailFilePilotSecond() >= advertisingSpace.getAdDetailFileDuration()) { && advertisingSpace.getAdDetailFilePilotSecond() >= advertisingSpace.getAdDetailFileDuration()) {
throw new BookBizException(BookBizException.PARAM_IS_ERROR, "试听时长超过音频时长,请重新设置"); throw new BookBizException(BookBizException.PARAM_IS_ERROR, "试听时长超过音频时长,请重新设置");
} }*/
} }
//3视频试看 //3视频试看
else if (AdDetailModeEnum.VIDEO.code.equals(advertisingSpace.getAdDetailMode())) { else if (AdDetailModeEnum.VIDEO.code.equals(advertisingSpace.getAdDetailMode())) {
...@@ -331,10 +354,10 @@ public class AdvertisingSpaceBizImpl implements AdvertisingSpaceBiz { ...@@ -331,10 +354,10 @@ public class AdvertisingSpaceBizImpl implements AdvertisingSpaceBiz {
if (StringUtil.isEmpty(advertisingSpace.getAdDetailTitle())) { if (StringUtil.isEmpty(advertisingSpace.getAdDetailTitle())) {
throw new BookBizException(BookBizException.PARAM_IS_ERROR, "标题不能为空!"); throw new BookBizException(BookBizException.PARAM_IS_ERROR, "标题不能为空!");
} }
if (null != advertisingSpace.getAdDetailFileDuration() && null != advertisingSpace.getAdDetailFilePilotSecond() /* if (null != advertisingSpace.getAdDetailFileDuration() && null != advertisingSpace.getAdDetailFilePilotSecond()
&& advertisingSpace.getAdDetailFilePilotSecond() >= advertisingSpace.getAdDetailFileDuration()) { && advertisingSpace.getAdDetailFilePilotSecond() >= advertisingSpace.getAdDetailFileDuration()) {
throw new BookBizException(BookBizException.PARAM_IS_ERROR, "试看时长超过视频时长,请重新设置"); throw new BookBizException(BookBizException.PARAM_IS_ERROR, "试看时长超过视频时长,请重新设置");
} }*/
} }
//报名设置 //报名设置
if (null == advertisingSpace.getAdFormMobileCheck()) { if (null == advertisingSpace.getAdFormMobileCheck()) {
...@@ -401,8 +424,8 @@ public class AdvertisingSpaceBizImpl implements AdvertisingSpaceBiz { ...@@ -401,8 +424,8 @@ public class AdvertisingSpaceBizImpl implements AdvertisingSpaceBiz {
advertisingSpace = equipCPA(advertisingSpace); advertisingSpace = equipCPA(advertisingSpace);
} }
advertisingSpaceDao.update(advertisingSpace); advertisingSpaceDao.update(advertisingSpace);
//报名表单选项新增 //CPA、非纯图片广告详情,报名表单选项新增
if (isCPA) { if (isCPA && !AdPositionModeEnum.JUST_PIC.modeCode.equals(advertisingSpace.getAdPositionMode())) {
bmBiz.addOptionList(advertisingSpace.getAdvertisingBmOptionList(), advertisingSpace.getId()); bmBiz.addOptionList(advertisingSpace.getAdvertisingBmOptionList(), advertisingSpace.getId());
} else {//删除可能有的报名信息 } else {//删除可能有的报名信息
bmBiz.deleteByAdId(advertisingSpace.getId()); bmBiz.deleteByAdId(advertisingSpace.getId());
......
package com.pcloud.book.consumer.convert;
import com.pcloud.common.core.aspect.ParamLog;
import com.pcloud.common.utils.ResponseHandleUtil;
import com.pcloud.convert.file.entity.FileUploadInfo;
import com.pcloud.convert.file.service.ConvertFileService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;
/**
* @描述:
* @作者:zhuyajie
* @创建时间:19:44 2019/7/31
* @版本:1.0
*/
@Repository("convertConsr")
public class ConvertConsr {
private static final Logger LOGGER = LoggerFactory.getLogger(ConvertConsr.class);
@Autowired
private ConvertFileService convertFileService;
/**
* 获取转码文件
* @param fileId
* @return
*/
@ParamLog("获取转码文件")
public FileUploadInfo getByFileId(String fileId) {
FileUploadInfo fileUploadInfo = null;
try {
fileUploadInfo = ResponseHandleUtil.parseResponse(convertFileService.getByFileId(fileId), FileUploadInfo.class);
} catch (Exception e) {
LOGGER.error("调用convertFileService.getByFileId失败" + e.getMessage(), e);
}
return fileUploadInfo;
}
}
...@@ -129,6 +129,7 @@ ...@@ -129,6 +129,7 @@
<pcloud-facade-videolesson.version>2.1.0-RELEASE</pcloud-facade-videolesson.version> <pcloud-facade-videolesson.version>2.1.0-RELEASE</pcloud-facade-videolesson.version>
<pcloud-facade-liveapp.version>2.1.0-RELEASE</pcloud-facade-liveapp.version> <pcloud-facade-liveapp.version>2.1.0-RELEASE</pcloud-facade-liveapp.version>
<pcloud-facade-shareimage.version>2.1.0-RELEASE</pcloud-facade-shareimage.version> <pcloud-facade-shareimage.version>2.1.0-RELEASE</pcloud-facade-shareimage.version>
<pcloud-facade-convert.version>2.1.0-RELEASE</pcloud-facade-convert.version>
</properties> </properties>
<dependencyManagement> <dependencyManagement>
......
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