ContentServiceImpl.java
4.43 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
package com.hui.iqiyi.service.impl;
import com.hui.iqiyi.Util.ReturnBean;
import com.hui.iqiyi.entity.Content;
import com.hui.iqiyi.entity.Media;
import com.hui.iqiyi.entity.Movie;
import com.hui.iqiyi.entity.Program;
import com.hui.iqiyi.mapper.ContentMapper;
import com.hui.iqiyi.request.ContentRequest;
import com.hui.iqiyi.request.ProgramRequest;
import com.hui.iqiyi.response.ContentResponse;
import com.hui.iqiyi.service.IContentService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.hui.iqiyi.service.IMovieService;
import com.hui.iqiyi.service.IProgramService;
import org.apache.commons.lang3.ObjectUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Primary;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.List;
import java.util.stream.Collectors;
/**
* <p>
* 服务实现类
* </p>
*
* @author jobob
* @since 2021-06-03
*/
@Service
@Primary
public class ContentServiceImpl extends ServiceImpl<ContentMapper, Content> implements IContentService {
@Resource
private ContentMapper contentMapper;
@Autowired
private IContentService iContentService;
@Autowired
private IProgramService iProgramService;
@Autowired
private IMovieService iMovieService;
@Override
public ReturnBean updateContent(Content content) {
System.out.println("---------------------更新" + content.toString());
if (ObjectUtils.isEmpty(content))
throw new RuntimeException("传入的信息不能为空!");
try {
if (contentMapper.updateContent(content) == 0)
ReturnBean.errorSuccessInfo("更新失败!");
} catch (Exception e) {
throw new RuntimeException("更新表头出现错误!错误信息如下" + e.getMessage());
}
return ReturnBean.setSuccessInfo("更新成功!");
}
//查询单集列表
@Override
public List<Content> selectAllSingle(ContentRequest request, Long id) {
return contentMapper.selectAllSingle(request, id);
}
@Override
public List<ContentResponse> selectAllType(ContentResponse contentResponse) {
return contentMapper.selectAllType(contentResponse);
}
@Override
public ContentResponse selectAllCont() {
List<Integer> integers = contentMapper.selectAllCont();
ContentResponse response = new ContentResponse();
response.setDrama(integers.get(1));
response.setMonolithic(integers.get(0));
return response;
}
@Override
public List<Content> selectAllContenten(ContentRequest contentRequest) {
List<Content> list = null;
try {
list = contentMapper.selectAllContenten(contentRequest);
if (list.size() == 0)
return list;
ProgramRequest programRequest = new ProgramRequest();
programRequest.setContentIdList(list.stream().map(Long -> Long.getId()).collect(Collectors.toList()));
List<ProgramRequest> listPro = iProgramService.selectDownload(programRequest);
for (Content content : list) {
for (ProgramRequest pro : listPro) {
if (content.getId().compareTo(pro.getIqiyiContentId()) == 0) {
//如果剧头的总集数与下载量一至则显示全部下载完成
if (content.getCurrCount().compareTo(pro.getDownloadCount()) == 0) {
content.setDownloadStatus("全部下载完成");
continue;
}
//如果剧头的总集数 大于 下载量 就显示未全部下载
if (content.getCurrCount().compareTo(pro.getDownloadCount()) > 0) {
content.setDownloadStatus("未全部下载");
continue;
}
}
}
//里面是关联查询匹配,如果没有下载记录,就塞入未下载
if (ObjectUtils.isEmpty(content.getDownloadStatus()))
content.setDownloadStatus("未下载");
}
} catch (Exception e) {
throw new RuntimeException("服务器错误,错误原因是:" + e.getMessage() + "请联系运维!");
}
return list;
}
}