提交 01896fcd authored 作者: zhouzhigang's avatar zhouzhigang

--no commit message

上级 b336e230
......@@ -32,6 +32,7 @@ import org.springframework.web.bind.annotation.RestController;
import com.zrqx.core.client.form.order.OrderInfo;
import com.zrqx.core.client.form.resource.GoodsBuyVo;
import com.zrqx.core.client.form.resource.OrderInfoForm;
import com.zrqx.core.client.sysuser.fg.FgSysuserClient;
import com.zrqx.core.commons.redis.Redis;
import com.zrqx.core.enums.AllResourceTypeEnum;
......@@ -96,6 +97,7 @@ import com.zrqx.resource.fg.service.searchHistory.FgSearchHistoryService;
import com.zrqx.resource.fg.service.videolibrary.FgVideoLibraryDiyTypeService;
import com.zrqx.resource.fg.service.videolibrary.FgVideoLibraryLabelContentDiyTypeService;
import com.zrqx.resource.fg.service.videolibrary.FgVideoLibraryService;
import com.zrqx.resource.fg.service.videolibrary.FgVideoLookLibraryService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
......@@ -153,6 +155,9 @@ public class FgResourceLibraryController {
private FgAnnexLibraryService annexLibraryService;
@Autowired
private FgAnnexLibraryDiyTypeService annexLibraryDiyTypeService;
@Autowired
private FgVideoLookLibraryService fgVideoLookLibraryService;
@Autowired
private FgPromotionService promotionService;
......@@ -1517,9 +1522,9 @@ public class FgResourceLibraryController {
@ApiOperation(value = "新增视频播放记录", notes = "新增一个")
@PostMapping(value = "/save")
public CallBack<Boolean> saveLookRecord(@RequestBody FgVideoLookForm form) {
if (!fgVideoLookLibraryService.saveVideoLook(form)) {
@PostMapping(value = "/add/look/record")
public CallBack<Boolean> saveLookRecord(@RequestBody List<OrderInfoForm> list) {
if (!fgVideoLookLibraryService.saveLookRecord(list)) {
throw new BaseException("操作失败");
}
return CallBack.success();
......
......@@ -70,15 +70,14 @@ public interface FgVideoLookLibraryMapper extends BaseMapper<VideoLookLibrary> {
@Select("<script>"
+ " SELECT timeSpeed from res_video_look_library v "
+ " SELECT * from res_video_look_library v "
+ " where 1=1 "
+ " eq(v.courseId,courseId) "
+ " eq(v.resourceType,resourceType) "
+ " eq(v.videoId,videoId) "
+ " eq(v.memberId,memberId) "
+ " order by uploadTime desc "
+ " limit 1 "
+ "</script>")
BigDecimal queryTimeSpeed(@Param("courseId")String courseId,@Param("resourceType")Integer resourceType,@Param("memberId")Integer memberId);
List<VideoLookLibrary> queryTimeSpeed(@Param("courseId")String courseId,@Param("resourceType")Integer resourceType,@Param("memberId")Integer memberId,@Param("videoId")String videoId);
}
......@@ -11,9 +11,11 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.zrqx.core.client.form.order.GoodsForm;
import com.zrqx.core.client.form.resource.OrderInfoForm;
import com.zrqx.core.client.order.fg.FgOrderClient;
import com.zrqx.core.commons.model.member.Member;
import com.zrqx.core.commons.redis.Redis;
import com.zrqx.core.enums.AllResourceTypeEnum;
import com.zrqx.core.mapper.BaseMapper;
import com.zrqx.core.service.BaseServiceImpl;
import com.zrqx.core.util.datatype.ArrayUtils;
......@@ -73,6 +75,59 @@ public class FgVideoLookLibrarySerivceImpl extends BaseServiceImpl<VideoLookLibr
mapper.insert(look);
return true;
}
@Override
public boolean saveLookRecord(List<OrderInfoForm> list) {
for (OrderInfoForm orderInfoForm : list) {
//课程
if(AllResourceTypeEnum.COURSE.getCode().toString().equals(orderInfoForm.getType())) {
//通过课程id查询课程绑定的视频
List<FgRelationResourceListVo> relationList = resourceRelationService
.queryByRrelationResource(orderInfoForm.getGoodsid());
//若课程列表有被学习过的视频则不保存,反之保存
for (FgRelationResourceListVo relation : relationList) {
List<VideoLookLibrary> voList =
mapper.queryTimeSpeed(orderInfoForm.getGoodsid(),Integer.parseInt(orderInfoForm.getType()), redis.getMemberW().getId(), relation.getResourceId());
if(ArrayUtils.isNotEmpty(voList)) {
continue;
}else {
this.saveRecord(orderInfoForm, relation.getResourceId());
}
}
}else {
//查询此视频/音频有未学习过,若学习过则跳过,若未学习过则保存记录,默认进度为0
List<VideoLookLibrary> voList =
mapper.queryTimeSpeed(orderInfoForm.getGoodsid(),Integer.parseInt(orderInfoForm.getType()), redis.getMemberW().getId(), null);
if(ArrayUtils.isNotEmpty(voList)) {
continue;
}else {//保存
this.saveRecord(orderInfoForm, null);
}
}
}
return true;
}
public void saveRecord(OrderInfoForm orderInfoForm,String videoId) {
FgVideoLookForm form = new FgVideoLookForm();
form.setCourseId(orderInfoForm.getGoodsid());
form.setLooKTimeLength("0秒");
form.setName(orderInfoForm.getName());
form.setResourceType(Integer.parseInt(orderInfoForm.getType()));
form.setSpeed("0%");
form.setTimeSpeed(0);
if(AllResourceTypeEnum.COURSE.getCode().toString().equals(orderInfoForm.getType())) {
form.setVideoId(videoId);
}else {
form.setVideoId(orderInfoForm.getGoodsid());
}
this.saveVideoLook(form);
}
@Override
public List<FgVideoLookLibraryVO> querybyLookVideo() {
......
......@@ -2,7 +2,10 @@ package com.zrqx.resource.fg.service.videolibrary;
import java.util.List;
import org.springframework.web.bind.annotation.RequestBody;
import com.zrqx.core.client.form.order.GoodsForm;
import com.zrqx.core.client.form.resource.OrderInfoForm;
import com.zrqx.core.service.BaseService;
import com.zrqx.core.util.page.PageInfo;
import com.zrqx.core.util.page.PageParam;
......@@ -23,6 +26,8 @@ public interface FgVideoLookLibraryService extends BaseService<VideoLookLibrary,
PageInfo<FgQueryCourseInfoForm> querybyLook(PageParam pageParam);
boolean saveLookRecord(@RequestBody List<OrderInfoForm> list);
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论