视频列表优化

This commit is contained in:
xiezhijun
2021-05-07 18:37:53 +08:00
parent 344800dcfe
commit 2033e4cb43
13 changed files with 514 additions and 47 deletions

View File

@ -65,6 +65,10 @@ public class SysNutritionalVideo extends BaseEntity
private String payLevelName;
/** 播放次数默认0 */
@Excel(name = "播放次数默认0")
private Integer playNum;
/** 删除标识0未删除 1已删除默认0 */
private Integer delFlag;
@ -72,4 +76,7 @@ public class SysNutritionalVideo extends BaseEntity
private String fileName;
private String key;
//排序方式 1 按照创建时间倒序 2按照优先级、时间倒序
private Integer sortType;
}

View File

@ -33,6 +33,8 @@ public class NutritionalVideoResponse implements Serializable {
//播放链接
public String playUrl;
//播放量
private Integer playNum;
public String createTime;

View File

@ -75,4 +75,17 @@ public interface SysNutritionalVideoMapper
* @return
*/
public int updateWxshowByIds(@Param("wxShow")Integer wxShow, @Param("array") Long[] ids);
/**
* 查询阿里云的视频ID包含已删除的
* @param ids
* @return
*/
public List<String> getVideoIdByIds(@Param("array") Long[] ids);
/**
* 更新视频播放量
* @return
*/
public int updateVideoPlayNum(@Param("videoId")String videoId);
}

View File

@ -4,6 +4,7 @@ import java.util.List;
import java.util.Map;
import com.stdiet.custom.domain.SysNutritionalVideo;
import org.apache.ibatis.annotations.Param;
/**
* 营养视频Service接口
@ -81,4 +82,10 @@ public interface ISysNutritionalVideoService
* @return
*/
public int updateWxshowByIds(Integer wxShow, Long[] ids);
/**
* 更新视频播放量
* @return
*/
public int updateVideoPlayNum(String videoId);
}

View File

@ -11,6 +11,7 @@ import com.stdiet.common.utils.AliyunVideoUtils;
import com.stdiet.common.utils.DateUtils;
import com.stdiet.common.utils.oss.AliyunOSSUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
import com.stdiet.custom.mapper.SysNutritionalVideoMapper;
import com.stdiet.custom.domain.SysNutritionalVideo;
@ -90,7 +91,23 @@ public class SysNutritionalVideoServiceImpl implements ISysNutritionalVideoServi
public int updateSysNutritionalVideo(SysNutritionalVideo sysNutritionalVideo)
{
sysNutritionalVideo.setUpdateTime(DateUtils.getNowDate());
return sysNutritionalVideoMapper.updateSysNutritionalVideo(sysNutritionalVideo);
int row = sysNutritionalVideoMapper.updateSysNutritionalVideo(sysNutritionalVideo);
if(row > 0){
updateAliyunVideo(sysNutritionalVideo.getId());
}
return row;
}
@Async
public void updateAliyunVideo(Long id){
try{
SysNutritionalVideo sysNutritionalVideo = selectSysNutritionalVideoById(id);
if(sysNutritionalVideo != null && sysNutritionalVideo.getVideoId() != null){
AliyunVideoUtils.updateVideo(sysNutritionalVideo.getVideoId(), sysNutritionalVideo.getTitle(), sysNutritionalVideo.getTags(), sysNutritionalVideo.getDescription(), null);
}
}catch (Exception e){
e.printStackTrace();
}
}
/**
@ -102,7 +119,11 @@ public class SysNutritionalVideoServiceImpl implements ISysNutritionalVideoServi
@Override
public int deleteSysNutritionalVideoByIds(Long[] ids)
{
return sysNutritionalVideoMapper.deleteSysNutritionalVideoByIds(ids);
int row = sysNutritionalVideoMapper.deleteSysNutritionalVideoByIds(ids);
if(row > 0){
updateAliyunVideoCateId(ids);
}
return row;
}
/**
@ -114,7 +135,12 @@ public class SysNutritionalVideoServiceImpl implements ISysNutritionalVideoServi
@Override
public int deleteSysNutritionalVideoById(Long id)
{
return sysNutritionalVideoMapper.deleteSysNutritionalVideoById(id);
int row = sysNutritionalVideoMapper.deleteSysNutritionalVideoById(id);
if(row > 0){
Long[] ids = {id};
updateAliyunVideoCateId(ids);
}
return row;
}
/**
@ -187,7 +213,33 @@ public class SysNutritionalVideoServiceImpl implements ISysNutritionalVideoServi
* @return
*/
public int updateWxshowByIds(Integer wxShow, Long[] ids){
return sysNutritionalVideoMapper. updateWxshowByIds(wxShow, ids);
return sysNutritionalVideoMapper.updateWxshowByIds(wxShow, ids);
}
/**
* 将删除的阿里云视频放入回收站
* @param ids
*/
@Async
public void updateAliyunVideoCateId(Long[] ids){
try {
List<String> videoIdList = sysNutritionalVideoMapper.getVideoIdByIds(ids);
if(videoIdList != null && videoIdList.size() > 0){
for (String videoId : videoIdList) {
AliyunVideoUtils.delVideo(videoId);
}
}
}catch (Exception e){
e.printStackTrace();
}
}
/**
* 更新视频播放量
* @return
*/
public int updateVideoPlayNum(String videoId){
return sysNutritionalVideoMapper.updateVideoPlayNum(videoId);
}
}