Skip to content
Toggle navigation
Toggle navigation
This project
Loading...
Sign in
吕剑
/
iqiyi-inject-management
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Issue Boards
Files
Commits
Network
Compare
Branches
Tags
Commit
dd096b4c
...
dd096b4ca2b416c0bedcf0f09909c757371d4e24
authored
2021-06-16 09:29:51 +0800
by
姬傲辉
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
添加了导出excel并发送邮件功能
修改了查询全部
1 parent
ad69ee0d
Show whitespace changes
Inline
Side-by-side
Showing
31 changed files
with
1298 additions
and
172 deletions
src/main/java/com/hui/iqiyi/Util/MailUtil.java
src/main/java/com/hui/iqiyi/Util/TestFileUtil.java
src/main/java/com/hui/iqiyi/controller/ContentController.java
src/main/java/com/hui/iqiyi/controller/MediaController.java
src/main/java/com/hui/iqiyi/controller/MovieController.java
src/main/java/com/hui/iqiyi/controller/ProgramController.java
src/main/java/com/hui/iqiyi/entity/Content.java
src/main/java/com/hui/iqiyi/entity/Program.java
src/main/java/com/hui/iqiyi/excel/DownloadExcel.java
src/main/java/com/hui/iqiyi/excel/MoveExcel.java
src/main/java/com/hui/iqiyi/excel/ProgramAllExcel.java
src/main/java/com/hui/iqiyi/excel/ProgramsExcel.java
src/main/java/com/hui/iqiyi/excel/ProsevenDownload.java
src/main/java/com/hui/iqiyi/excel/jlSheetExcel.java
src/main/java/com/hui/iqiyi/excel/jujiExecl.java
src/main/java/com/hui/iqiyi/mapper/ContentMapper.java
src/main/java/com/hui/iqiyi/mapper/ProgramMapper.java
src/main/java/com/hui/iqiyi/request/ByIdsRequest.java
src/main/java/com/hui/iqiyi/request/ContentRequest.java
src/main/java/com/hui/iqiyi/request/ProgramExcelRequest.java
src/main/java/com/hui/iqiyi/request/ProgramRequest.java
src/main/java/com/hui/iqiyi/response/ProgramCalcu.java
src/main/java/com/hui/iqiyi/response/ProgramXRespone.java
src/main/java/com/hui/iqiyi/schedule/Timedtask.java
src/main/java/com/hui/iqiyi/service/IContentService.java
src/main/java/com/hui/iqiyi/service/IProgramService.java
src/main/java/com/hui/iqiyi/service/impl/ContentServiceImpl.java
src/main/java/com/hui/iqiyi/service/impl/ProgramServiceImpl.java
src/main/resources/mail.setting
src/main/resources/mapper/iqiyi/ContentMapper.xml
src/main/resources/mapper/iqiyi/ProgramMapper.xml
src/main/java/com/hui/iqiyi/Util/MailUtil.java
0 → 100644
View file @
dd096b4
package
com
.
hui
.
iqiyi
.
Util
;
import
java.io.File
;
import
java.io.InputStream
;
import
java.util.Collection
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Map.Entry
;
import
cn.hutool.core.collection.CollUtil
;
import
cn.hutool.core.io.IoUtil
;
import
cn.hutool.core.map.MapUtil
;
import
cn.hutool.core.util.StrUtil
;
import
cn.hutool.extra.mail.GlobalMailAccount
;
import
cn.hutool.extra.mail.Mail
;
import
cn.hutool.extra.mail.MailAccount
;
/**
* 邮件工具类,基于javax.mail封装
*
* @author looly
* @since 3.1.2
*/
public
class
MailUtil
{
/**
* 使用配置文件中设置的账户发送文本邮件,发送给单个或多个收件人<br>
* 多个收件人可以使用逗号“,”分隔,也可以通过分号“;”分隔
*
* @param to 收件人
* @param subject 标题
* @param content 正文
* @param files 附件列表
* @since 3.2.0
*/
public
static
void
sendText
(
String
to
,
String
subject
,
String
content
,
File
...
files
)
{
send
(
to
,
subject
,
content
,
false
,
files
);
}
/**
* 使用配置文件中设置的账户发送HTML邮件,发送给单个或多个收件人<br>
* 多个收件人可以使用逗号“,”分隔,也可以通过分号“;”分隔
*
* @param to 收件人
* @param subject 标题
* @param content 正文
* @param files 附件列表
* @since 3.2.0
*/
public
static
void
sendHtml
(
String
to
,
String
subject
,
String
content
,
File
...
files
)
{
send
(
to
,
subject
,
content
,
true
,
files
);
}
/**
* 使用配置文件中设置的账户发送邮件,发送单个或多个收件人<br>
* 多个收件人可以使用逗号“,”分隔,也可以通过分号“;”分隔
*
* @param to 收件人
* @param subject 标题
* @param content 正文
* @param isHtml 是否为HTML
* @param files 附件列表
*/
public
static
void
send
(
String
to
,
String
subject
,
String
content
,
boolean
isHtml
,
File
...
files
)
{
send
(
splitAddress
(
to
),
subject
,
content
,
isHtml
,
files
);
}
/**
* 使用配置文件中设置的账户发送邮件,发送单个或多个收件人<br>
* 多个收件人、抄送人、密送人可以使用逗号“,”分隔,也可以通过分号“;”分隔
*
* @param to 收件人,可以使用逗号“,”分隔,也可以通过分号“;”分隔
* @param cc 抄送人,可以使用逗号“,”分隔,也可以通过分号“;”分隔
* @param bcc 密送人,可以使用逗号“,”分隔,也可以通过分号“;”分隔
* @param subject 标题
* @param content 正文
* @param isHtml 是否为HTML
* @param files 附件列表
* @since 4.0.3
*/
public
static
void
send
(
String
to
,
String
cc
,
String
bcc
,
String
subject
,
String
content
,
boolean
isHtml
,
File
...
files
)
{
send
(
splitAddress
(
to
),
splitAddress
(
cc
),
splitAddress
(
bcc
),
subject
,
content
,
isHtml
,
files
);
}
/**
* 使用配置文件中设置的账户发送文本邮件,发送给多人
*
* @param tos 收件人列表
* @param subject 标题
* @param content 正文
* @param files 附件列表
*/
public
static
void
sendText
(
Collection
<
String
>
tos
,
String
subject
,
String
content
,
File
...
files
)
{
send
(
tos
,
subject
,
content
,
false
,
files
);
}
/**
* 使用配置文件中设置的账户发送HTML邮件,发送给多人
*
* @param tos 收件人列表
* @param subject 标题
* @param content 正文
* @param files 附件列表
* @since 3.2.0
*/
public
static
void
sendHtml
(
Collection
<
String
>
tos
,
String
subject
,
String
content
,
File
...
files
)
{
send
(
tos
,
subject
,
content
,
true
,
files
);
}
/**
* 使用配置文件中设置的账户发送邮件,发送给多人
*
* @param tos 收件人列表
* @param subject 标题
* @param content 正文
* @param isHtml 是否为HTML
* @param files 附件列表
*/
public
static
void
send
(
Collection
<
String
>
tos
,
String
subject
,
String
content
,
boolean
isHtml
,
File
...
files
)
{
send
(
tos
,
null
,
null
,
subject
,
content
,
isHtml
,
files
);
}
/**
* 使用配置文件中设置的账户发送邮件,发送给多人
*
* @param tos 收件人列表
* @param ccs 抄送人列表,可以为null或空
* @param bccs 密送人列表,可以为null或空
* @param subject 标题
* @param content 正文
* @param isHtml 是否为HTML
* @param files 附件列表
* @since 4.0.3
*/
public
static
void
send
(
Collection
<
String
>
tos
,
Collection
<
String
>
ccs
,
Collection
<
String
>
bccs
,
String
subject
,
String
content
,
boolean
isHtml
,
File
...
files
)
{
send
(
GlobalMailAccount
.
INSTANCE
.
getAccount
(),
true
,
tos
,
ccs
,
bccs
,
subject
,
content
,
null
,
isHtml
,
files
);
}
// ------------------------------------------------------------------------------------------------------------------------------- Custom MailAccount
/**
* 发送邮件给多人
*
* @param mailAccount 邮件认证对象
* @param to 收件人,多个收件人逗号或者分号隔开
* @param subject 标题
* @param content 正文
* @param isHtml 是否为HTML格式
* @param files 附件列表
* @since 3.2.0
*/
public
static
void
send
(
MailAccount
mailAccount
,
String
to
,
String
subject
,
String
content
,
boolean
isHtml
,
File
...
files
)
{
send
(
mailAccount
,
splitAddress
(
to
),
subject
,
content
,
isHtml
,
files
);
}
/**
* 发送邮件给多人
*
* @param mailAccount 邮件帐户信息
* @param tos 收件人列表
* @param subject 标题
* @param content 正文
* @param isHtml 是否为HTML格式
* @param files 附件列表
*/
public
static
void
send
(
MailAccount
mailAccount
,
Collection
<
String
>
tos
,
String
subject
,
String
content
,
boolean
isHtml
,
File
...
files
)
{
send
(
mailAccount
,
tos
,
null
,
null
,
subject
,
content
,
isHtml
,
files
);
}
/**
* 发送邮件给多人
*
* @param mailAccount 邮件帐户信息
* @param tos 收件人列表
* @param ccs 抄送人列表,可以为null或空
* @param bccs 密送人列表,可以为null或空
* @param subject 标题
* @param content 正文
* @param isHtml 是否为HTML格式
* @param files 附件列表
* @since 4.0.3
*/
public
static
void
send
(
MailAccount
mailAccount
,
Collection
<
String
>
tos
,
Collection
<
String
>
ccs
,
Collection
<
String
>
bccs
,
String
subject
,
String
content
,
boolean
isHtml
,
File
...
files
)
{
send
(
mailAccount
,
false
,
tos
,
ccs
,
bccs
,
subject
,
content
,
null
,
isHtml
,
files
);
}
/**
* 使用配置文件中设置的账户发送HTML邮件,发送给单个或多个收件人<br>
* 多个收件人可以使用逗号“,”分隔,也可以通过分号“;”分隔
*
* @param to 收件人
* @param subject 标题
* @param content 正文
* @param files 附件列表
* @param imageMap 图片与占位符,占位符格式为cid:$IMAGE_PLACEHOLDER
* @since 3.2.0
*/
public
static
void
sendHtml
(
String
to
,
String
subject
,
String
content
,
Map
<
String
,
InputStream
>
imageMap
,
File
...
files
)
{
send
(
to
,
subject
,
content
,
imageMap
,
true
,
files
);
}
/**
* 使用配置文件中设置的账户发送邮件,发送单个或多个收件人<br>
* 多个收件人可以使用逗号“,”分隔,也可以通过分号“;”分隔
*
* @param to 收件人
* @param subject 标题
* @param content 正文
* @param imageMap 图片与占位符,占位符格式为cid:$IMAGE_PLACEHOLDER
* @param isHtml 是否为HTML
* @param files 附件列表
*/
public
static
void
send
(
String
to
,
String
subject
,
String
content
,
Map
<
String
,
InputStream
>
imageMap
,
boolean
isHtml
,
File
...
files
)
{
send
(
splitAddress
(
to
),
subject
,
content
,
imageMap
,
isHtml
,
files
);
}
/**
* 使用配置文件中设置的账户发送邮件,发送单个或多个收件人<br>
* 多个收件人、抄送人、密送人可以使用逗号“,”分隔,也可以通过分号“;”分隔
*
* @param to 收件人,可以使用逗号“,”分隔,也可以通过分号“;”分隔
* @param cc 抄送人,可以使用逗号“,”分隔,也可以通过分号“;”分隔
* @param bcc 密送人,可以使用逗号“,”分隔,也可以通过分号“;”分隔
* @param subject 标题
* @param content 正文
* @param imageMap 图片与占位符,占位符格式为cid:$IMAGE_PLACEHOLDER
* @param isHtml 是否为HTML
* @param files 附件列表
* @since 4.0.3
*/
public
static
void
send
(
String
to
,
String
cc
,
String
bcc
,
String
subject
,
String
content
,
Map
<
String
,
InputStream
>
imageMap
,
boolean
isHtml
,
File
...
files
)
{
send
(
splitAddress
(
to
),
splitAddress
(
cc
),
splitAddress
(
bcc
),
subject
,
content
,
imageMap
,
isHtml
,
files
);
}
/**
* 使用配置文件中设置的账户发送HTML邮件,发送给多人
*
* @param tos 收件人列表
* @param subject 标题
* @param content 正文
* @param imageMap 图片与占位符,占位符格式为cid:$IMAGE_PLACEHOLDER
* @param files 附件列表
* @since 3.2.0
*/
public
static
void
sendHtml
(
Collection
<
String
>
tos
,
String
subject
,
String
content
,
Map
<
String
,
InputStream
>
imageMap
,
File
...
files
)
{
send
(
tos
,
subject
,
content
,
imageMap
,
true
,
files
);
}
/**
* 使用配置文件中设置的账户发送邮件,发送给多人
*
* @param tos 收件人列表
* @param subject 标题
* @param content 正文
* @param imageMap 图片与占位符,占位符格式为cid:$IMAGE_PLACEHOLDER
* @param isHtml 是否为HTML
* @param files 附件列表
*/
public
static
void
send
(
Collection
<
String
>
tos
,
String
subject
,
String
content
,
Map
<
String
,
InputStream
>
imageMap
,
boolean
isHtml
,
File
...
files
)
{
send
(
tos
,
null
,
null
,
subject
,
content
,
imageMap
,
isHtml
,
files
);
}
/**
* 使用配置文件中设置的账户发送邮件,发送给多人
*
* @param tos 收件人列表
* @param ccs 抄送人列表,可以为null或空
* @param bccs 密送人列表,可以为null或空
* @param subject 标题
* @param content 正文
* @param imageMap 图片与占位符,占位符格式为cid:$IMAGE_PLACEHOLDER
* @param isHtml 是否为HTML
* @param files 附件列表
* @since 4.0.3
*/
public
static
void
send
(
Collection
<
String
>
tos
,
Collection
<
String
>
ccs
,
Collection
<
String
>
bccs
,
String
subject
,
String
content
,
Map
<
String
,
InputStream
>
imageMap
,
boolean
isHtml
,
File
...
files
)
{
send
(
GlobalMailAccount
.
INSTANCE
.
getAccount
(),
true
,
tos
,
ccs
,
bccs
,
subject
,
content
,
imageMap
,
isHtml
,
files
);
}
// ------------------------------------------------------------------------------------------------------------------------------- Custom MailAccount
/**
* 发送邮件给多人
*
* @param mailAccount 邮件认证对象
* @param to 收件人,多个收件人逗号或者分号隔开
* @param subject 标题
* @param content 正文
* @param imageMap 图片与占位符,占位符格式为cid:$IMAGE_PLACEHOLDER
* @param isHtml 是否为HTML格式
* @param files 附件列表
* @since 3.2.0
*/
public
static
void
send
(
MailAccount
mailAccount
,
String
to
,
String
subject
,
String
content
,
Map
<
String
,
InputStream
>
imageMap
,
boolean
isHtml
,
File
...
files
)
{
send
(
mailAccount
,
splitAddress
(
to
),
subject
,
content
,
imageMap
,
isHtml
,
files
);
}
/**
* 发送邮件给多人
*
* @param mailAccount 邮件帐户信息
* @param tos 收件人列表
* @param subject 标题
* @param content 正文
* @param imageMap 图片与占位符,占位符格式为cid:$IMAGE_PLACEHOLDER
* @param isHtml 是否为HTML格式
* @param files 附件列表
* @since 4.6.3
*/
public
static
void
send
(
MailAccount
mailAccount
,
Collection
<
String
>
tos
,
String
subject
,
String
content
,
Map
<
String
,
InputStream
>
imageMap
,
boolean
isHtml
,
File
...
files
)
{
send
(
mailAccount
,
tos
,
null
,
null
,
subject
,
content
,
imageMap
,
isHtml
,
files
);
}
/**
* 发送邮件给多人
*
* @param mailAccount 邮件帐户信息
* @param tos 收件人列表
* @param ccs 抄送人列表,可以为null或空
* @param bccs 密送人列表,可以为null或空
* @param subject 标题
* @param content 正文
* @param imageMap 图片与占位符,占位符格式为cid:$IMAGE_PLACEHOLDER
* @param isHtml 是否为HTML格式
* @param files 附件列表
* @since 4.6.3
*/
public
static
void
send
(
MailAccount
mailAccount
,
Collection
<
String
>
tos
,
Collection
<
String
>
ccs
,
Collection
<
String
>
bccs
,
String
subject
,
String
content
,
Map
<
String
,
InputStream
>
imageMap
,
boolean
isHtml
,
File
...
files
)
{
send
(
mailAccount
,
false
,
tos
,
ccs
,
bccs
,
subject
,
content
,
imageMap
,
isHtml
,
files
);
}
// ------------------------------------------------------------------------------------------------------------------------ Private method start
/**
* 发送邮件给多人
*
* @param mailAccount 邮件帐户信息
* @param useGlobalSession 是否全局共享Session
* @param tos 收件人列表
* @param ccs 抄送人列表,可以为null或空
* @param bccs 密送人列表,可以为null或空
* @param subject 标题
* @param content 正文
* @param imageMap 图片与占位符,占位符格式为cid:${cid}
* @param isHtml 是否为HTML格式
* @param files 附件列表
* @since 4.6.3
*/
private
static
void
send
(
MailAccount
mailAccount
,
boolean
useGlobalSession
,
Collection
<
String
>
tos
,
Collection
<
String
>
ccs
,
Collection
<
String
>
bccs
,
String
subject
,
String
content
,
Map
<
String
,
InputStream
>
imageMap
,
boolean
isHtml
,
File
...
files
)
{
final
Mail
mail
=
Mail
.
create
(
mailAccount
).
setUseGlobalSession
(
useGlobalSession
);
// 可选抄送人
if
(
CollUtil
.
isNotEmpty
(
ccs
))
{
mail
.
setCcs
(
ccs
.
toArray
(
new
String
[
ccs
.
size
()]));
}
// 可选密送人
if
(
CollUtil
.
isNotEmpty
(
bccs
))
{
mail
.
setBccs
(
bccs
.
toArray
(
new
String
[
bccs
.
size
()]));
}
mail
.
setTos
(
tos
.
toArray
(
new
String
[
tos
.
size
()]));
mail
.
setTitle
(
subject
);
mail
.
setContent
(
content
);
mail
.
setHtml
(
isHtml
);
mail
.
setFiles
(
files
);
// 图片
if
(
MapUtil
.
isNotEmpty
(
imageMap
))
{
for
(
Entry
<
String
,
InputStream
>
entry
:
imageMap
.
entrySet
())
{
mail
.
addImage
(
entry
.
getKey
(),
entry
.
getValue
());
// 关闭流
IoUtil
.
close
(
entry
.
getValue
());
}
}
mail
.
send
();
}
/**
* 将多个联系人转为列表,分隔符为逗号或者分号
*
* @param addresses 多个联系人,如果为空返回null
* @return 联系人列表
*/
private
static
List
<
String
>
splitAddress
(
String
addresses
)
{
if
(
StrUtil
.
isBlank
(
addresses
))
{
return
null
;
}
List
<
String
>
result
;
if
(
StrUtil
.
contains
(
addresses
,
','
))
{
result
=
StrUtil
.
splitTrim
(
addresses
,
','
);
}
else
if
(
StrUtil
.
contains
(
addresses
,
';'
))
{
result
=
StrUtil
.
splitTrim
(
addresses
,
';'
);
}
else
{
result
=
CollUtil
.
newArrayList
(
addresses
);
}
return
result
;
}
}
src/main/java/com/hui/iqiyi/Util/TestFileUtil.java
0 → 100644
View file @
dd096b4
package
com
.
hui
.
iqiyi
.
Util
;
import
java.io.File
;
import
java.io.InputStream
;
public
class
TestFileUtil
{
public
static
InputStream
getResourcesFileInputStream
(
String
fileName
)
{
return
Thread
.
currentThread
().
getContextClassLoader
().
getResourceAsStream
(
""
+
fileName
);
}
public
static
String
getPath
()
{
return
TestFileUtil
.
class
.
getResource
(
"/"
).
getPath
();
}
public
static
File
createNewFile
(
String
pathName
)
{
File
file
=
new
File
(
getPath
()
+
pathName
);
if
(
file
.
exists
())
{
file
.
delete
();
}
else
{
if
(!
file
.
getParentFile
().
exists
())
{
file
.
getParentFile
().
mkdirs
();
}
}
return
file
;
}
public
static
File
readFile
(
String
pathName
)
{
return
new
File
(
getPath
()
+
pathName
);
}
public
static
File
readUserHomeFile
(
String
pathName
)
{
return
new
File
(
System
.
getProperty
(
"user.home"
)
+
File
.
separator
+
pathName
);
}
}
src/main/java/com/hui/iqiyi/controller/ContentController.java
View file @
dd096b4
...
...
@@ -10,6 +10,7 @@ import com.hui.iqiyi.entity.Media;
import
com.hui.iqiyi.entity.Movie
;
import
com.hui.iqiyi.request.ContentRequest
;
import
com.hui.iqiyi.request.MediaRequest
;
import
com.hui.iqiyi.request.ProgramExcelRequest
;
import
com.hui.iqiyi.request.ProgramRequest
;
import
com.hui.iqiyi.response.ContentResponse
;
import
com.hui.iqiyi.service.IContentService
;
...
...
@@ -70,18 +71,21 @@ public class ContentController {
@ResponseBody
public
PageInfo
<
Content
>
selectAllIqIy
(
ContentRequest
contentRequest
)
{
PageHelper
.
startPage
(
contentRequest
.
getPageNo
(),
contentRequest
.
getPageSize
());
ProgramRequest
programRequest
=
new
ProgramRequest
();
if
(
contentRequest
.
getType
()
==
0
)
{
return
new
PageInfo
(
iProgramService
.
selectAllProgra
(
programRequest
));
if
(
contentRequest
.
getType
()==
0
)
{
return
new
PageInfo
(
iProgramService
.
selectAllProgra
(
contentRequest
));
}
else
if
(
contentRequest
.
getType
()
==
1
)
{
return
new
PageInfo
(
iContentService
.
selectAllContenten
(
contentRequest
));
}
return
null
;
}
@GetMapping
(
"/selectAllCont11"
)
@ApiOperation
(
"吉林片单22222222222"
)
@ResponseBody
public
List
<
ProgramExcelRequest
>
selectAllCont111
()
{
return
iContentService
.
selectAllDramaExcel
();
}
}
...
...
src/main/java/com/hui/iqiyi/controller/MediaController.java
View file @
dd096b4
...
...
@@ -30,27 +30,27 @@ import java.util.List;
@RestController
@RequestMapping
(
"/iqiyi/media"
)
public
class
MediaController
{
@Autowired
private
IMediaService
iMediaService
;
@GetMapping
(
"/selectAllIqIy"
)
@ApiOperation
(
"查询全部剧集信息"
)
@ResponseBody
public
PageInfo
<
Media
>
selectAllIqIy
(
MediaRequest
request
)
{
PageHelper
.
startPage
(
request
.
getPageNo
(),
request
.
getPageSize
());
return
new
PageInfo
(
iMediaService
.
selectAllIqIyList
(
request
));
}
@GetMapping
(
"/selectAllfollow"
)
@ApiOperation
(
"查询关注平台的信息"
)
@ResponseBody
public
List
<
Media
>
selectAllfollow
(
Long
info
)
{
MediaRequest
mediaRequest
=
new
MediaRequest
();
mediaRequest
.
setPlatformInfo
(
info
);
return
iMediaService
.
selectAllfollow
(
mediaRequest
);
}
//
//
@Autowired
//
private IMediaService iMediaService;
//
//
@GetMapping("/selectAllIqIy")
//
@ApiOperation("查询全部剧集信息")
//
@ResponseBody
//
public PageInfo<Media> selectAllIqIy(MediaRequest request) {
//
PageHelper.startPage(request.getPageNo(), request.getPageSize());
//
//
return new PageInfo(iMediaService.selectAllIqIyList(request));
//
}
//
//
//
@GetMapping("/selectAllfollow")
//
@ApiOperation("查询关注平台的信息")
//
@ResponseBody
//
public List<Media> selectAllfollow(Long info) {
//
MediaRequest mediaRequest = new MediaRequest();
//
mediaRequest.setPlatformInfo(info);
//
return iMediaService.selectAllfollow(mediaRequest);
//
}
}
...
...
src/main/java/com/hui/iqiyi/controller/MovieController.java
View file @
dd096b4
package
com
.
hui
.
iqiyi
.
controller
;
import
com.alibaba.excel.EasyExcel
;
import
com.alibaba.excel.ExcelWriter
;
import
com.alibaba.excel.write.metadata.WriteSheet
;
import
com.alibaba.excel.write.metadata.style.WriteCellStyle
;
import
com.github.pagehelper.PageHelper
;
import
com.github.pagehelper.PageInfo
;
import
com.hui.iqiyi.Util.TestFileUtil
;
import
com.hui.iqiyi.entity.Content
;
import
com.hui.iqiyi.entity.Movie
;
import
com.hui.iqiyi.excel.*
;
import
com.hui.iqiyi.request.ContentRequest
;
import
com.hui.iqiyi.request.ProRequest
;
import
com.hui.iqiyi.response.ContentResponse
;
import
com.hui.iqiyi.response.MovieResponse
;
import
com.hui.iqiyi.response.ProgramSyResponse
;
import
com.hui.iqiyi.service.IMovieService
;
import
com.hui.iqiyi.service.IProgramService
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.apache.poi.ss.usermodel.HorizontalAlignment
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
import
org.testng.collections.Lists
;
import
javax.annotation.Resource
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.Map
;
/**
* <p>
...
...
@@ -56,52 +41,6 @@ public class MovieController {
return
iMovieService
.
selectAllPopulation
();
}
// @GetMapping("/selectAllPopulationn")
// @ApiOperation("查询总下载")
// @ResponseBody
// public void selectAllPopulationn(Movie Movie) {
//
// try {
// String path = "D:\\java\\爱奇艺下载情况.xlsx\\";
// //新建ExcelWriter
// ExcelWriter excelWriter = EasyExcel.write(path).build();
// //获取sheet0对象
// WriteSheet mainSheet = EasyExcel.writerSheet(0, "介质文件下载统计文件").head(DownloadExcel.class).build();
// //向sheet0写入数据 传入空list这样只导出表头
// excelWriter.write(iMovieService.selectAllPopulation(), mainSheet);
//
// //获取sheet1对象
// WriteSheet detailSheet = EasyExcel.writerSheet(1, "吉林关注片单").head(ProgramsExcel.class).build();
// //向sheet1写入数据 传入空list这样只导出表头
// List<ProgramSyResponse> programSyResponses = new ArrayList<>();
// programSyResponses.add(iProgramService.selectAllProgramCount());
// excelWriter.write(programSyResponses, detailSheet);
//
// //获取sheet1对象
// WriteSheet detailSheet1 = EasyExcel.writerSheet(2, "剧集单片数量").head(ProgramAllExcel.class).build();
// //向sheet1写入数据 传入空list这样只导出表头
// List<ContentResponse> contentResponses = new ArrayList<>();
// contentResponses.add(iProgramService.selectAllPrograms());
// excelWriter.write(contentResponses, detailSheet1);
//
// //获取sheet2对象
// WriteSheet SevenSheetDownload = EasyExcel.writerSheet(3, "近七日下载情况").head(ProsevenDownload.class).build();
// //向sheet0写入数据 传入空list这样只导出表头
// ProRequest proRequest = new ProRequest();
// excelWriter.write(iProgramService.selectAllSeven(proRequest), SevenSheetDownload);
//
// //获取sheet2对象
// WriteSheet SevenSheetzation= EasyExcel.writerSheet(4, "近七日同步情况").head(MoveExcel.class).build();
// //向sheet0写入数据 传入空list这样只导出表头
// ProRequest proRequest1 = new ProRequest();
// excelWriter.write(iMovieService.selectAllSevenxz(proRequest1), SevenSheetzation);
// //关闭流
// excelWriter.finish();
// } catch (Exception e) {
// System.out.println("导出异常"+ e.getMessage());
// }
// }
@GetMapping
(
"/selectAllSevenXz"
)
@ApiOperation
(
"近七日同步情况"
)
@ResponseBody
...
...
src/main/java/com/hui/iqiyi/controller/ProgramController.java
View file @
dd096b4
...
...
@@ -2,33 +2,25 @@ package com.hui.iqiyi.controller;
import
com.alibaba.excel.EasyExcel
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.excel.ExcelWriter
;
import
com.alibaba.excel.write.metadata.WriteSheet
;
import
com.github.pagehelper.PageHelper
;
import
com.github.pagehelper.PageInfo
;
import
com.hui.iqiyi.Util.ReturnBean
;
import
com.hui.iqiyi.entity.Content
;
import
com.hui.iqiyi.entity.Program
;
import
com.hui.iqiyi.excel.DownloadExcel
;
import
com.hui.iqiyi.excel.ProgramsExcel
;
import
com.hui.iqiyi.excel.ProsevenDownload
;
import
com.hui.iqiyi.request.ByIdsRequest
;
import
com.hui.iqiyi.request.ContentRequest
;
import
com.hui.iqiyi.request.ProRequest
;
import
com.hui.iqiyi.request.ProgramRequest
;
import
com.hui.iqiyi.response.ContentResponse
;
import
com.hui.iqiyi.response.ProgramResponse
;
import
com.hui.iqiyi.response.ProgramSyResponse
;
import
com.hui.iqiyi.response.ProgramXRespone
;
import
com.hui.iqiyi.excel.jlSheetExcel
;
import
com.hui.iqiyi.excel.jujiExecl
;
import
com.hui.iqiyi.request.*
;
import
com.hui.iqiyi.response.*
;
import
com.hui.iqiyi.service.IContentService
;
import
com.hui.iqiyi.service.IProgramService
;
import
com.sun.org.apache.bcel.internal.generic.RETURN
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Qualifier
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
import
java.util.ArrayList
;
import
java.util.List
;
/**
...
...
@@ -46,6 +38,8 @@ public class ProgramController {
@Resource
private
IProgramService
iProgramService
;
@Autowired
private
IContentService
iContentService
;
@PostMapping
(
"/addFollow"
)
@ApiOperation
(
"添加关注"
)
...
...
@@ -54,20 +48,20 @@ public class ProgramController {
}
@PostMapping
(
"/selectFollow"
)
@ApiOperation
(
"查看关注"
)
public
Object
selectProMov
(
@RequestBody
String
platFormInfo
,
int
PageNo
,
int
PageSize
)
{
return
iProgramService
.
selectProMov
(
new
Program
().
setPlatformInfo
(
platFormInfo
),
PageNo
,
PageSize
);
}
//
@PostMapping("/selectFollow")
//
@ApiOperation("查看关注")
//
public Object selectProMov(@RequestBody String platFormInfo, int PageNo, int PageSize) {
//
return iProgramService.selectProMov(new Program().setPlatformInfo(platFormInfo), PageNo, PageSize);
//
}
@GetMapping
(
"/selectAllSingle"
)
@ApiOperation
(
"查询单集"
)
@ResponseBody
public
PageInfo
<
ProgramResponse
>
selectAllSingle
(
ProgramRequest
request
)
{
PageHelper
.
startPage
(
request
.
getPageNo
(),
request
.
getPageSize
());
return
new
PageInfo
(
iProgramService
.
selectProgramDloadList
(
request
));
}
//
@GetMapping("/selectAllSingle")
//
@ApiOperation("查询单集")
//
@ResponseBody
//
public PageInfo<ProgramResponse> selectAllSingle(ProgramRequest request) {
//
PageHelper.startPage(request.getPageNo(), request.getPageSize());
//
return new PageInfo(iProgramService.selectProgramDloadList(request));
//
}
@GetMapping
(
"/selectAllSeven"
)
...
...
@@ -77,21 +71,63 @@ public class ProgramController {
return
iProgramService
.
selectAllSeven
(
proRequest
);
}
//
// @GetMapping("/selectAllProgramCount")
// @ApiOperation("关注平台数据")
// @ResponseBody
// public ProgramSyResponse selectAllProgramCount() {
// return iProgramService.selectAllProgramCount();
// }
@GetMapping
(
"/selectAll
ProgramCount
"
)
@ApiOperation
(
"
关注平台数据
"
)
@GetMapping
(
"/selectAll
monolithic
"
)
@ApiOperation
(
"
查询全部单片信息
"
)
@ResponseBody
public
ProgramSyResponse
selectAllProgramCount
()
{
return
iProgramService
.
selectAllProgramCount
();
public
PageInfo
<
Program
>
selectAllIqIy
(
ContentRequest
contentRequest
)
{
PageHelper
.
startPage
(
contentRequest
.
getPageNo
(),
contentRequest
.
getPageSize
());
return
new
PageInfo
(
iProgramService
.
selectAllProgra
(
contentRequest
));
}
@GetMapping
(
"/selectAllMonolithic"
)
@ApiOperation
(
"查询全部单片信息"
)
@GetMapping
(
"/selectAllExcel"
)
@ApiOperation
(
"导出关注单片信息"
)
@ResponseBody
public
PageInfo
<
Program
>
selectAllIqIy
(
ProgramRequest
programRequest
)
{
PageHelper
.
startPage
(
programRequest
.
getPageNo
(),
programRequest
.
getPageSize
());
return
new
PageInfo
(
iProgramService
.
selectAllProgra
(
programRequest
));
public
void
selectAllExcel
()
{
try
{
String
path
=
"D:\\java\\吉林关注剧集片单.xlsx\\"
;
//新建ExcelWriter
ExcelWriter
excelWriter
=
EasyExcel
.
write
(
path
).
build
();
//获取sheet0对象
WriteSheet
mainSheet
=
EasyExcel
.
writerSheet
(
0
,
"吉林关注单片"
).
head
(
jlSheetExcel
.
class
).
build
();
//向sheet0写入数据 传入空list这样只导出表头
excelWriter
.
write
(
iProgramService
.
selectAllExcel
(),
mainSheet
);
//新建ExcelWriter
ExcelWriter
excelWriter1
=
EasyExcel
.
write
(
path
).
build
();
//获取sheet0对象
WriteSheet
mainSheet1
=
EasyExcel
.
writerSheet
(
1
,
"吉林关注剧集"
).
head
(
jujiExecl
.
class
).
build
();
//向sheet0写入数据 传入空list这样只导出表头
excelWriter
.
write
(
iContentService
.
selectAllDramaExcel
(),
mainSheet1
);
//关闭流
excelWriter
.
finish
();
}
catch
(
Exception
e
)
{
System
.
out
.
println
(
"导出异常"
+
e
.
getMessage
());
}
}
@GetMapping
(
"/selectAllmonolithicsss"
)
@ApiOperation
(
"查询全部单片ss"
)
@ResponseBody
public
List
<
ProgramExcelRequest
>
selectAllIqIy11
()
{
return
iProgramService
.
selectAllExcel
();
}
...
...
src/main/java/com/hui/iqiyi/entity/Content.java
View file @
dd096b4
...
...
@@ -287,6 +287,13 @@ public class Content implements Serializable {
*/
private
String
downloadStatus
;
/**
* 标识调用哪个方法
* 0单片
* 1剧集
*/
private
Long
type
=
1L
;
}
...
...
src/main/java/com/hui/iqiyi/entity/Program.java
View file @
dd096b4
...
...
@@ -312,4 +312,10 @@ public class Program implements Serializable {
* 标识下载状态
*/
private
String
downloadStatus
;
/**
* 标识调用哪个方法
* 0单片
* 1剧集
*/
private
Long
type
=
0L
;
}
...
...
src/main/java/com/hui/iqiyi/excel/DownloadExcel.java
0 → 100644
View file @
dd096b4
package
com
.
hui
.
iqiyi
.
excel
;
import
com.alibaba.excel.annotation.ExcelProperty
;
import
com.alibaba.excel.annotation.write.style.ColumnWidth
;
import
com.alibaba.excel.annotation.write.style.ContentStyle
;
import
com.alibaba.excel.annotation.write.style.HeadStyle
;
import
lombok.Data
;
import
org.apache.poi.ss.usermodel.HorizontalAlignment
;
@Data
@HeadStyle
(
horizontalAlignment
=
HorizontalAlignment
.
CENTER
)
//表头样式
@ContentStyle
(
horizontalAlignment
=
HorizontalAlignment
.
CENTER
)
//内容样式
@ColumnWidth
(
20
)
//表头宽度
public
class
DownloadExcel
{
@ExcelProperty
(
"下载情况"
)
private
String
localStatuss
;
@ExcelProperty
(
"下载数量"
)
private
Long
number
;
@ExcelProperty
(
"下载容量"
)
private
Long
capacity
;
@ExcelProperty
(
"下载时长"
)
private
Integer
duration
;
}
src/main/java/com/hui/iqiyi/excel/MoveExcel.java
0 → 100644
View file @
dd096b4
package
com
.
hui
.
iqiyi
.
excel
;
import
com.alibaba.excel.annotation.ExcelProperty
;
import
com.alibaba.excel.annotation.write.style.ColumnWidth
;
import
com.alibaba.excel.annotation.write.style.ContentStyle
;
import
com.alibaba.excel.annotation.write.style.HeadStyle
;
import
lombok.Data
;
import
org.apache.poi.ss.usermodel.HorizontalAlignment
;
import
java.util.Date
;
@Data
@HeadStyle
(
horizontalAlignment
=
HorizontalAlignment
.
CENTER
)
//表头样式
@ContentStyle
(
horizontalAlignment
=
HorizontalAlignment
.
CENTER
)
//内容样式
@ColumnWidth
(
20
)
//表头宽度
public
class
MoveExcel
{
@ExcelProperty
(
"日期"
)
private
String
day1
;
@ExcelProperty
(
"节目同步数量"
)
private
Long
totlFee3
;
@ExcelProperty
(
"下载容量"
)
private
Double
totlSize2
;
@ExcelProperty
(
"下载时长"
)
private
Double
totlDuration4
;
}
src/main/java/com/hui/iqiyi/excel/ProgramAllExcel.java
0 → 100644
View file @
dd096b4
package
com
.
hui
.
iqiyi
.
excel
;
import
com.alibaba.excel.annotation.ExcelProperty
;
import
com.alibaba.excel.annotation.write.style.ColumnWidth
;
import
com.alibaba.excel.annotation.write.style.ContentStyle
;
import
com.alibaba.excel.annotation.write.style.HeadStyle
;
import
lombok.Data
;
import
org.apache.poi.ss.usermodel.HorizontalAlignment
;
@Data
@HeadStyle
(
horizontalAlignment
=
HorizontalAlignment
.
CENTER
)
//表头样式
@ContentStyle
(
horizontalAlignment
=
HorizontalAlignment
.
CENTER
)
//内容样式
@ColumnWidth
(
20
)
//表头宽度
public
class
ProgramAllExcel
{
@ExcelProperty
(
"剧集数量"
)
private
Integer
drama
;
@ExcelProperty
(
"单片数量"
)
private
Integer
monolithic
;
}
src/main/java/com/hui/iqiyi/excel/ProgramsExcel.java
0 → 100644
View file @
dd096b4
package
com
.
hui
.
iqiyi
.
excel
;
import
com.alibaba.excel.annotation.ExcelProperty
;
import
com.alibaba.excel.annotation.write.style.ColumnWidth
;
import
com.alibaba.excel.annotation.write.style.ContentStyle
;
import
com.alibaba.excel.annotation.write.style.HeadStyle
;
import
lombok.Data
;
import
org.apache.poi.ss.usermodel.HorizontalAlignment
;
@Data
@HeadStyle
(
horizontalAlignment
=
HorizontalAlignment
.
CENTER
)
//表头样式
@ContentStyle
(
horizontalAlignment
=
HorizontalAlignment
.
CENTER
)
//内容样式
@ColumnWidth
(
20
)
//表头宽度
public
class
ProgramsExcel
{
//剧集
@ExcelProperty
(
"剧集数量"
)
private
Integer
drama
;
//单片
@ExcelProperty
(
"单片数量"
)
private
Integer
monolithic
;
//下载数量
@ExcelProperty
(
"已下载数量"
)
private
Long
xzNumbe
;
//下载容量
@ExcelProperty
(
"已下载容量(G)"
)
private
Double
xzSize
;
//下载时长
@ExcelProperty
(
"已下载时长"
)
private
Double
totlDuration
;
//下载失败的数量
@ExcelProperty
(
"下载失败数量"
)
private
Long
failSum
;
//同步未下载数量
@ExcelProperty
(
"同步未下载数量"
)
private
Long
totlSize
;
//未同步介质数量
@ExcelProperty
(
"未同步介质数量"
)
private
Long
totlFee
;
}
src/main/java/com/hui/iqiyi/excel/ProsevenDownload.java
0 → 100644
View file @
dd096b4
package
com
.
hui
.
iqiyi
.
excel
;
import
com.alibaba.excel.annotation.ExcelProperty
;
import
com.alibaba.excel.annotation.write.style.ColumnWidth
;
import
com.alibaba.excel.annotation.write.style.ContentStyle
;
import
com.alibaba.excel.annotation.write.style.HeadStyle
;
import
lombok.Data
;
import
org.apache.poi.ss.usermodel.HorizontalAlignment
;
@Data
@HeadStyle
(
horizontalAlignment
=
HorizontalAlignment
.
CENTER
)
//表头样式
@ContentStyle
(
horizontalAlignment
=
HorizontalAlignment
.
CENTER
)
//内容样式
@ColumnWidth
(
20
)
//表头宽度
public
class
ProsevenDownload
{
@ExcelProperty
(
"日期"
)
private
String
day
;
@ExcelProperty
(
"已下载数量"
)
private
Long
totlFee
;
@ExcelProperty
(
"已下载容量(G)"
)
private
Double
totlSize
;
@ExcelProperty
(
"已下载时长"
)
private
Double
totlDuration
;
}
src/main/java/com/hui/iqiyi/excel/jlSheetExcel.java
0 → 100644
View file @
dd096b4
package
com
.
hui
.
iqiyi
.
excel
;
import
com.alibaba.excel.annotation.ExcelProperty
;
import
com.alibaba.excel.annotation.write.style.ColumnWidth
;
import
com.alibaba.excel.annotation.write.style.ContentStyle
;
import
com.alibaba.excel.annotation.write.style.HeadStyle
;
import
lombok.Data
;
import
org.apache.poi.ss.usermodel.HorizontalAlignment
;
@Data
@HeadStyle
(
horizontalAlignment
=
HorizontalAlignment
.
CENTER
)
//表头样式
@ContentStyle
(
horizontalAlignment
=
HorizontalAlignment
.
CENTER
)
//内容样式
@ColumnWidth
(
40
)
//表头宽度
public
class
jlSheetExcel
{
//节目名称
@ExcelProperty
(
"节目名称"
)
private
String
name
;
//节目类型
@ExcelProperty
(
"节目类型"
)
private
String
elementType
;
//爱奇艺id
@ExcelProperty
(
"爱奇艺id"
)
private
Long
externalId
;
//节目内容分类
@ExcelProperty
(
"节目内容分类"
)
private
String
cname
;
//上映年份
@ExcelProperty
(
"上映年份"
)
private
String
year
;
//首播日期
@ExcelProperty
(
"首播日期"
)
private
String
publishTime
;
//节目描述
@ExcelProperty
(
"节目描述"
)
private
String
desc
;
//节目标签
@ExcelProperty
(
"节目标签"
)
private
String
tags
;
//节目图片路径
@ExcelProperty
(
"节目图片路径"
)
private
String
picUrl
;
//导演
@ExcelProperty
(
"导演"
)
private
String
directors
;
//主演
@ExcelProperty
(
"主演"
)
private
String
mainActors
;
//编剧
@ExcelProperty
(
"编剧"
)
private
String
writers
;
//明星
@ExcelProperty
(
"明星"
)
private
String
stars
;
//索引名称
@ExcelProperty
(
"索引名称"
)
private
String
searchName
;
//评分
@ExcelProperty
(
"评分"
)
private
String
score
;
//地区
@ExcelProperty
(
"地区"
)
private
String
country
;
//语言
@ExcelProperty
(
"语言"
)
private
String
language
;
//爱奇艺节目id
@ExcelProperty
(
"爱奇艺节目id"
)
private
Long
iqiyiContentId
;
//码流id
@ExcelProperty
(
"码流id"
)
private
String
vid
;
//清晰度
@ExcelProperty
(
"清晰度"
)
private
String
bitrate
;
//时长
@ExcelProperty
(
"时长"
)
private
String
duration
;
//tar包大小
@ExcelProperty
(
"tar包大小"
)
private
String
fileSize
;
//下载状态
@ExcelProperty
(
"下载状态"
)
private
Long
localStatus
;
//下载地址
@ExcelProperty
(
"下载地址"
)
private
String
localPath
;
}
src/main/java/com/hui/iqiyi/excel/jujiExecl.java
0 → 100644
View file @
dd096b4
package
com
.
hui
.
iqiyi
.
excel
;
import
com.alibaba.excel.annotation.ExcelProperty
;
import
com.alibaba.excel.annotation.write.style.ColumnWidth
;
import
com.alibaba.excel.annotation.write.style.ContentStyle
;
import
com.alibaba.excel.annotation.write.style.HeadStyle
;
import
lombok.Data
;
import
org.apache.poi.ss.usermodel.HorizontalAlignment
;
@Data
@HeadStyle
(
horizontalAlignment
=
HorizontalAlignment
.
CENTER
)
//表头样式
@ContentStyle
(
horizontalAlignment
=
HorizontalAlignment
.
CENTER
)
//内容样式
@ColumnWidth
(
40
)
//表头宽度
public
class
jujiExecl
{
//节目名称
@ExcelProperty
(
"节目名称"
)
private
String
name
;
//节目类型
@ExcelProperty
(
"节目类型"
)
private
String
elementType
;
//爱奇艺id
@ExcelProperty
(
"爱奇艺id"
)
private
Long
externalId
;
//节目内容分类
@ExcelProperty
(
"节目内容分类"
)
private
String
cname
;
//上映年份
@ExcelProperty
(
"上映年份"
)
private
String
year
;
//首播日期
@ExcelProperty
(
"首播日期"
)
private
String
publishTime
;
//节目描述
@ExcelProperty
(
"节目描述"
)
private
String
desc
;
//节目标签
@ExcelProperty
(
"节目标签"
)
private
String
tags
;
//节目图片路径
@ExcelProperty
(
"节目图片路径"
)
private
String
picUrl
;
//导演
@ExcelProperty
(
"导演"
)
private
String
directors
;
//主演
@ExcelProperty
(
"主演"
)
private
String
mainActors
;
//编剧
@ExcelProperty
(
"编剧"
)
private
String
writers
;
//明星
@ExcelProperty
(
"明星"
)
private
String
stars
;
//索引名称
@ExcelProperty
(
"索引名称"
)
private
String
searchName
;
//评分
@ExcelProperty
(
"评分"
)
private
String
score
;
//地区
@ExcelProperty
(
"地区"
)
private
String
country
;
//语言
@ExcelProperty
(
"语言"
)
private
String
language
;
//爱奇艺节目id
@ExcelProperty
(
"爱奇艺节目id"
)
private
Long
iqiyiContentId
;
//码流id
@ExcelProperty
(
"码流id"
)
private
String
vid
;
//单集名称
@ExcelProperty
(
"单集名称"
)
private
String
Sname
;
//清晰度
@ExcelProperty
(
"清晰度"
)
private
String
bitrate
;
//时长
@ExcelProperty
(
"时长"
)
private
String
duration
;
//tar包大小
@ExcelProperty
(
"tar包大小"
)
private
String
fileSize
;
//下载状态
@ExcelProperty
(
"下载状态"
)
private
Long
localStatus
;
//下载地址
@ExcelProperty
(
"下载地址"
)
private
String
localPath
;
//总集数
@ExcelProperty
(
"总集数"
)
private
Long
total
;
}
src/main/java/com/hui/iqiyi/mapper/ContentMapper.java
View file @
dd096b4
...
...
@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import
com.hui.iqiyi.entity.Media
;
import
com.hui.iqiyi.request.ContentRequest
;
import
com.hui.iqiyi.request.MediaRequest
;
import
com.hui.iqiyi.request.ProgramExcelRequest
;
import
com.hui.iqiyi.response.ContentResponse
;
import
java.util.List
;
...
...
@@ -63,4 +64,12 @@ public interface ContentMapper extends BaseMapper<Content> {
List
<
Content
>
selectAllContenten
(
ContentRequest
contentRequest
);
/**
* 导出关注剧集
* @return
*/
List
<
ProgramExcelRequest
>
selectAllDramaExcel
();
}
...
...
src/main/java/com/hui/iqiyi/mapper/ProgramMapper.java
View file @
dd096b4
package
com
.
hui
.
iqiyi
.
mapper
;
import
com.hui.iqiyi.entity.Content
;
import
com.hui.iqiyi.entity.Program
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.hui.iqiyi.request.ByIdsRequest
;
import
com.hui.iqiyi.request.ContentRequest
;
import
com.hui.iqiyi.request.ProRequest
;
import
com.hui.iqiyi.request.ProgramRequest
;
import
com.hui.iqiyi.request.*
;
import
com.hui.iqiyi.response.*
;
import
org.apache.ibatis.annotations.Param
;
import
org.springframework.context.annotation.Primary
;
import
sun.rmi.runtime.Log
;
import
java.util.List
;
...
...
@@ -29,17 +23,17 @@ public interface ProgramMapper extends BaseMapper<Program> {
* 根据 给电影添加关注
*/
int
updateFilm
(
Long
id
);
int
updateFilm
(
Long
id
,
Long
platformInfo
);
/**
* 根据 id给
*/
int
updatePla
(
Long
id
);
int
updatePla
(
Long
id
,
Long
platformInfo
);
/**
*
*/
int
updateTeleplay
(
Long
id
);
int
updateTeleplay
(
Long
id
,
Long
platformInfo
);
/**
* 获取每一集的下载状态
...
...
@@ -85,12 +79,26 @@ public interface ProgramMapper extends BaseMapper<Program> {
/**
* 查询所有单片
* @param
program
Request
* @param
content
Request
* @return
*/
List
<
Program
>
selectAllProgra
(
ProgramRequest
program
Request
);
List
<
Program
>
selectAllProgra
(
ContentRequest
content
Request
);
/**
* 导出关注单片数据
* @return
*/
List
<
ProgramExcelRequest
>
selectAllMonolithicExcel
();
/**
* 计算预计容量预计时长
*
* @param
* @return
*/
List
<
ProgramCalcu
>
selectCalculation
();
}
...
...
src/main/java/com/hui/iqiyi/request/ByIdsRequest.java
View file @
dd096b4
...
...
@@ -12,4 +12,8 @@ public class ByIdsRequest {
@ApiModelProperty
(
value
=
"type"
,
required
=
true
)
private
Integer
type
;
@ApiModelProperty
(
value
=
"type"
,
required
=
true
)
private
Long
platformInfo
;
}
...
...
src/main/java/com/hui/iqiyi/request/ContentRequest.java
View file @
dd096b4
...
...
@@ -292,5 +292,9 @@ public class ContentRequest extends AppPagingRequest {
*/
private
Integer
downloadStatus
;
/**
* 扩展字段
*/
private
Long
downloadCount
;
}
...
...
src/main/java/com/hui/iqiyi/request/ProgramExcelRequest.java
0 → 100644
View file @
dd096b4
package
com
.
hui
.
iqiyi
.
request
;
import
lombok.Data
;
import
java.time.LocalDateTime
;
@Data
public
class
ProgramExcelRequest
{
private
Long
id
;
//节目名称
private
String
name
;
//节目类型
private
String
elementType
;
//爱奇艺id
private
Long
externalId
;
//节目内容分类
private
String
cname
;
//上映年份
private
String
year
;
//首播日期
private
String
publishTime
;
//节目描述
private
String
desc
;
//节目标签
private
String
tags
;
//节目图片路径
private
String
picUrl
;
//导演
private
String
directors
;
//主演
private
String
mainActors
;
//编剧
private
String
writers
;
//明星
private
String
stars
;
//索引名称
private
String
searchName
;
//评分
private
String
score
;
//地区
private
String
country
;
//语言
private
String
language
;
//爱奇艺节目id
private
Long
iqiyiContentId
;
//码流id
private
String
vid
;
//单集名称
private
String
Sname
;
//清晰度
private
String
bitrate
;
//时长
private
String
duration
;
//tar包大小
private
String
fileSize
;
//下载状态
private
Long
localStatus
;
//下载地址
private
String
localPath
;
//总集数
private
Long
total
;
/**
* 创建时间
*/
private
LocalDateTime
createTime
;
//开始时间
private
String
beginTime
;
//结束时间
private
String
EndTime
;
//标识下载状态
private
String
LocalStatuss
;
}
src/main/java/com/hui/iqiyi/request/ProgramRequest.java
View file @
dd096b4
...
...
@@ -268,6 +268,11 @@ public class ProgramRequest extends AppPagingRequest {
*/
private
String
score
;
// /**
// * 用户评分2
// */
// private String score2;
/**
* 同步标识 0:未进行同步,1:同步成功,-1: 同步失败
*/
...
...
src/main/java/com/hui/iqiyi/response/ProgramCalcu.java
0 → 100644
View file @
dd096b4
package
com
.
hui
.
iqiyi
.
response
;
import
lombok.Data
;
@Data
public
class
ProgramCalcu
{
//下载容量
private
Long
xzSize
;
//下载时长
private
Long
totlDuration
;
}
src/main/java/com/hui/iqiyi/response/ProgramXRespone.java
0 → 100644
View file @
dd096b4
package
com
.
hui
.
iqiyi
.
response
;
import
lombok.Data
;
@Data
public
class
ProgramXRespone
{
//时间
private
String
day
;
//下载数量
private
Long
TotlFee
;
//下载容量
private
Double
TotlSize
;
//下载时长
private
Double
TotlDuration
;
}
src/main/java/com/hui/iqiyi/schedule/Timedtask.java
0 → 100644
View file @
dd096b4
package
com
.
hui
.
iqiyi
.
schedule
;
import
com.alibaba.excel.EasyExcel
;
import
com.alibaba.excel.ExcelWriter
;
import
com.alibaba.excel.write.metadata.WriteSheet
;
import
com.alibaba.excel.write.metadata.style.WriteCellStyle
;
import
com.hui.iqiyi.Util.MailUtil
;
import
com.hui.iqiyi.entity.Movie
;
import
com.hui.iqiyi.excel.*
;
import
com.hui.iqiyi.request.ProRequest
;
import
com.hui.iqiyi.response.ContentResponse
;
import
com.hui.iqiyi.response.ProgramCalcu
;
import
com.hui.iqiyi.response.ProgramSyResponse
;
import
com.hui.iqiyi.service.IMovieService
;
import
com.hui.iqiyi.service.IProgramService
;
import
org.apache.poi.ss.usermodel.HorizontalAlignment
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.scheduling.annotation.Scheduled
;
import
org.springframework.stereotype.Component
;
import
java.io.File
;
import
java.text.SimpleDateFormat
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.stream.Collectors
;
@Component
//注入bean
public
class
Timedtask
{
@Autowired
private
IMovieService
iMovieService
;
@Autowired
private
IProgramService
iProgramService
;
@Value
(
"${recievers.shoujianren}"
)
private
String
Youxiang
;
@Value
(
"${filePath}"
)
private
String
path
;
//添加定时任务
//@Scheduled(cron = "0 20 16 * * 5 ")//每周五16时20分发送
// @Scheduled(cron = "0/5 * * * * ?")
public
void
Timedtask
()
{
try
{
//新建ExcelWriter
ExcelWriter
excelWriter
=
EasyExcel
.
write
(
path
).
build
();
//获取sheet0对象
WriteSheet
mainSheet
=
EasyExcel
.
writerSheet
(
0
,
"介质文件下载统计文件"
).
head
(
DownloadExcel
.
class
).
build
();
//向sheet0写入数据 传入空list这样只导出表头
List
<
Movie
>
movies
=
iMovieService
.
selectAllPopulation
().
stream
().
filter
(
item
->
item
.
getLocalStatus
()==
100
).
collect
(
Collectors
.
toList
());
excelWriter
.
write
(
movies
,
mainSheet
);
//获取sheet1对象
WriteSheet
detailSheet
=
EasyExcel
.
writerSheet
(
1
,
"吉林关注片单"
).
head
(
ProgramsExcel
.
class
).
build
();
//向sheet1写入数据 传入空list这样只导出表头
List
<
ProgramSyResponse
>
programSyResponses
=
new
ArrayList
<>();
programSyResponses
.
add
(
iProgramService
.
selectAllProgramCount
());
excelWriter
.
write
(
programSyResponses
,
detailSheet
);
//获取sheet1对象
WriteSheet
detailSheet1
=
EasyExcel
.
writerSheet
(
2
,
"剧集单片数量"
).
head
(
ProgramAllExcel
.
class
).
build
();
//向sheet1写入数据 传入空list这样只导出表头
List
<
ContentResponse
>
contentResponses
=
new
ArrayList
<>();
contentResponses
.
add
(
iProgramService
.
selectAllPrograms
());
excelWriter
.
write
(
contentResponses
,
detailSheet1
);
//获取sheet2对象
WriteSheet
SevenSheetDownload
=
EasyExcel
.
writerSheet
(
3
,
"近七日下载情况"
).
head
(
ProsevenDownload
.
class
).
build
();
//向sheet0写入数据 传入空list这样只导出表头
ProRequest
proRequest
=
new
ProRequest
();
excelWriter
.
write
(
iProgramService
.
selectAllSeven
(
proRequest
),
SevenSheetDownload
);
//获取sheet2对象
WriteSheet
SevenSheetzation
=
EasyExcel
.
writerSheet
(
4
,
"近七日同步情况"
).
head
(
MoveExcel
.
class
).
build
();
//向sheet0写入数据 传入空list这样只导出表头
ProRequest
proRequest1
=
new
ProRequest
();
excelWriter
.
write
(
iMovieService
.
selectAllSevenxz
(
proRequest1
),
SevenSheetzation
);
//关闭流
excelWriter
.
finish
();
try
{
List
<
ProgramCalcu
>
integers
=
iProgramService
.
selectCalculation
();
//接收人放到配置文件里
//String to="2292269071@qq.com";
File
file
=
new
File
(
path
);
MailUtil
.
sendText
(
Youxiang
,
"爱奇艺统计"
,
"各位好:\n"
+
" 截止至 "
+
new
SimpleDateFormat
(
"yyyy-MM-dd"
).
format
(
new
Date
())
+
"日 爱奇艺同步下载统计如下\n"
+
" 剧集数量:"
+
contentResponses
.
get
(
0
).
getDrama
()+
"部;\n"
+
" 单片数量:"
+
contentResponses
.
get
(
0
).
getMonolithic
()+
"部;\n"
+
" 介质下载 数量:"
+
movies
.
get
(
0
).
getNumber
()+
"集\n"
+
" 容量"
+
movies
.
get
(
0
).
getCapacity
()+
" G\n"
+
" 时长:"
+
movies
.
get
(
0
).
getDuration
()+
" 小时\n"
+
" 下载速度 大约 5 M/s\n"
+
" 吉林片单中 :\n"
+
" 剧集:"
+
programSyResponses
.
get
(
0
).
getDrama
()+
"部\n"
+
" 单片:"
+
programSyResponses
.
get
(
0
).
getMonolithic
()+
"部\n"
+
" 已下载数量:"
+
programSyResponses
.
get
(
0
).
getXzNumbe
()+
"集\n"
+
" 已下载容量:"
+
programSyResponses
.
get
(
0
).
getXzSize
()+
"G\n"
+
" 已下载时长:"
+
programSyResponses
.
get
(
0
).
getTotlDuration
()+
"小时\n"
+
" 未下载数量:"
+
programSyResponses
.
get
(
0
).
getFailSum
()+
"集\n"
+
" 未同步数量:"
+
programSyResponses
.
get
(
0
).
getTotlFee
()+
"集\n"
+
" \n"
+
" 未下载预计容量: "
+
integers
.
get
(
0
).
getXzSize
()+
"G\n"
+
" 未下载预计时长:"
+
integers
.
get
(
0
).
getTotlDuration
()+
"小时\n"
+
" 预计需要下载时间:10天\n"
+
"\n"
+
"详情见以下附件:"
,
file
);
}
catch
(
Exception
e
)
{
System
.
out
.
println
(
"发送邮件失败{}"
+
e
);
}
}
catch
(
Exception
e
)
{
System
.
out
.
println
(
"导出异常"
+
e
.
getMessage
());
}
}
}
src/main/java/com/hui/iqiyi/service/IContentService.java
View file @
dd096b4
...
...
@@ -4,6 +4,7 @@ import com.hui.iqiyi.Util.ReturnBean;
import
com.hui.iqiyi.entity.Content
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.hui.iqiyi.request.ContentRequest
;
import
com.hui.iqiyi.request.ProgramExcelRequest
;
import
com.hui.iqiyi.response.ContentResponse
;
import
java.util.List
;
...
...
@@ -64,6 +65,11 @@ public interface IContentService extends IService<Content> {
/**
* 导出关注剧集
* @return
*/
List
<
ProgramExcelRequest
>
selectAllDramaExcel
();
...
...
src/main/java/com/hui/iqiyi/service/IProgramService.java
View file @
dd096b4
...
...
@@ -4,13 +4,8 @@ import com.hui.iqiyi.Util.ReturnBean;
import
com.hui.iqiyi.entity.Movie
;
import
com.hui.iqiyi.entity.Program
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.hui.iqiyi.request.ByIdsRequest
;
import
com.hui.iqiyi.request.ProRequest
;
import
com.hui.iqiyi.request.ProgramRequest
;
import
com.hui.iqiyi.response.ContentResponse
;
import
com.hui.iqiyi.response.ProgramResponse
;
import
com.hui.iqiyi.response.ProgramSyResponse
;
import
com.hui.iqiyi.response.ProgramXRespone
;
import
com.hui.iqiyi.request.*
;
import
com.hui.iqiyi.response.*
;
import
java.util.List
;
import
java.util.Map
;
...
...
@@ -82,11 +77,29 @@ public interface IProgramService extends IService<Program> {
/**
* 查询所有单片
* @param
program
Request
* @param
content
Request
* @return
*/
List
<
Program
>
selectAllProgra
(
ProgramRequest
programRequest
);
List
<
Program
>
selectAllProgra
(
ContentRequest
contentRequest
);
/**
* 导出关注单片数据
* @return
*/
List
<
ProgramExcelRequest
>
selectAllExcel
();
/**
* 计算预计容量预计时长
*
* @param
* @return
*/
List
<
ProgramCalcu
>
selectCalculation
();
...
...
src/main/java/com/hui/iqiyi/service/impl/ContentServiceImpl.java
View file @
dd096b4
...
...
@@ -7,6 +7,7 @@ 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.ProgramExcelRequest
;
import
com.hui.iqiyi.request.ProgramRequest
;
import
com.hui.iqiyi.response.ContentResponse
;
import
com.hui.iqiyi.service.IContentService
;
...
...
@@ -119,6 +120,17 @@ public class ContentServiceImpl extends ServiceImpl<ContentMapper, Content> impl
return
list
;
}
@Override
public
List
<
ProgramExcelRequest
>
selectAllDramaExcel
()
{
List
<
ProgramExcelRequest
>
list
=
contentMapper
.
selectAllDramaExcel
();
// list.stream().forEach(item->{
// if (item.getLocalStatus()==0)
// item.setLocalStatuss("未下载");
// if (item.getLocalStatus()==100)
// item.setLocalStatuss("已下载");
// });
return
list
;
}
}
...
...
src/main/java/com/hui/iqiyi/service/impl/ProgramServiceImpl.java
View file @
dd096b4
...
...
@@ -5,20 +5,16 @@ import com.github.pagehelper.PageHelper;
import
com.github.pagehelper.PageInfo
;
import
com.hui.iqiyi.Util.ReturnBean
;
import
com.hui.iqiyi.Util.ReturnProgram
;
import
com.hui.iqiyi.entity.Content
;
import
com.hui.iqiyi.entity.Movie
;
import
com.hui.iqiyi.entity.Program
;
import
com.hui.iqiyi.mapper.ContentMapper
;
import
com.hui.iqiyi.mapper.MovieMapper
;
import
com.hui.iqiyi.mapper.ProgramMapper
;
import
com.hui.iqiyi.request.ByIdsRequest
;
import
com.hui.iqiyi.request.ProRequest
;
import
com.hui.iqiyi.request.ProgramRequest
;
import
com.hui.iqiyi.request.*
;
import
com.hui.iqiyi.response.*
;
import
com.hui.iqiyi.service.IProgramService
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
org.apache.commons.lang3.ObjectUtils
;
import
org.apache.xmlbeans.impl.xb.xsdschema.Public
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.context.annotation.Primary
;
...
...
@@ -26,6 +22,7 @@ import org.springframework.stereotype.Service;
import
org.springframework.transaction.annotation.Transactional
;
import
javax.annotation.Resource
;
import
javax.mail.FetchProfile
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
...
...
@@ -62,17 +59,16 @@ public class ProgramServiceImpl extends ServiceImpl<ProgramMapper, Program> impl
try
{
if
(
ObjectUtils
.
isEmpty
(
requests
))
returnBean
.
errorSuccessInfo
(
"传入的ID不能为空"
);
// requests.stream().filter(item->item.getType().equals(0)).
for
(
ByIdsRequest
id
:
requests
)
{
if
(
id
.
getType
()
==
0
)
{
//电影
int
i1
=
programMapper
.
updateFilm
(
id
.
getId
());
int
i1
=
programMapper
.
updateFilm
(
id
.
getId
()
,
id
.
getPlatformInfo
()
);
if
(
i1
==
0
)
{
throw
new
RuntimeException
(
"添加关注失败!"
);
}
}
else
if
(
id
.
getType
()
==
1
)
{
//剧集
//MyBatisPlus 的通过id查询
int
i1
=
programMapper
.
updatePla
(
id
.
getId
());
int
pla
=
programMapper
.
updateTeleplay
(
id
.
getId
());
int
i1
=
programMapper
.
updatePla
(
id
.
getId
()
,
id
.
getPlatformInfo
()
);
int
pla
=
programMapper
.
updateTeleplay
(
id
.
getId
()
,
id
.
getPlatformInfo
()
);
if
(
i1
==
0
&&
pla
==
0
)
{
throw
new
RuntimeException
(
"添加关注失败!"
);
}
...
...
@@ -235,16 +231,16 @@ public class ProgramServiceImpl extends ServiceImpl<ProgramMapper, Program> impl
}
@Override
public
List
<
Program
>
selectAllProgra
(
ProgramRequest
program
Request
)
{
public
List
<
Program
>
selectAllProgra
(
ContentRequest
content
Request
)
{
CurrCount
=
1L
;
List
<
Program
>
list
=
null
;
try
{
list
=
programMapper
.
selectAllProgra
(
program
Request
);
list
=
programMapper
.
selectAllProgra
(
content
Request
);
if
(
list
.
size
()
==
0
)
return
list
;
ProgramRequest
request
=
new
ProgramRequest
();
programR
equest
.
setContentIdList
(
list
.
stream
().
map
(
Long
->
Long
.
getId
()).
collect
(
Collectors
.
toList
()));
List
<
ProgramRequest
>
listPro
=
programMapper
.
selectDownload
(
programR
equest
);
r
equest
.
setContentIdList
(
list
.
stream
().
map
(
Long
->
Long
.
getId
()).
collect
(
Collectors
.
toList
()));
List
<
ProgramRequest
>
listPro
=
programMapper
.
selectDownload
(
r
equest
);
for
(
Program
program
:
list
)
{
for
(
ProgramRequest
pro
:
listPro
)
{
if
(
program
.
getId
().
compareTo
(
pro
.
getIqiyiContentId
())
==
0
)
{
...
...
@@ -270,5 +266,25 @@ public class ProgramServiceImpl extends ServiceImpl<ProgramMapper, Program> impl
return
list
;
}
@Override
public
List
<
ProgramExcelRequest
>
selectAllExcel
()
{
// List<ProgramExcelRequest> list = programMapper.selectAllMonolithicExcel();
// list.stream().forEach(item->{
// if (item.getLocalStatus()==0)
// item.setLocalStatuss("未下载");
// if (item.getLocalStatus()==100)
// item.setLocalStatuss("已下载");
// });
return
programMapper
.
selectAllMonolithicExcel
();
}
@Override
public
List
<
ProgramCalcu
>
selectCalculation
()
{
List
<
ProgramCalcu
>
programCalcus
=
programMapper
.
selectCalculation
();
return
programCalcus
;
}
}
\ No newline at end of file
...
...
src/main/resources/mail.setting
0 → 100644
View file @
dd096b4
# 邮件服务器的SMTP地址
host = smtp.ym.163.com
# 邮件服务器的SMTP端口
port = 25
# 发件人(必须正确,否则发送失败)
from = test@topdraw.cn
# 用户名(注意:如果使用foxmail邮箱,此处user为qq号)
user = test@topdraw.cn
# 密码(注意,某些邮箱需要为SMTP服务单独设置密码,详情查看相关帮助)
pass = 123456789
src/main/resources/mapper/iqiyi/ContentMapper.xml
View file @
dd096b4
...
...
@@ -48,7 +48,7 @@
and cid = #{cid}
</if>
<if
test=
"name!= null and name!= ''"
>
AND name like
#{name}
AND name like
CONCAT('%',CONCAT(#{name},'%'))
</if>
<if
test=
"cname!= null and cname!= ''"
>
AND cname = #{cname}
...
...
@@ -68,9 +68,18 @@
<if
test=
"downloadStatus !=null"
>
and local_status=#{downloadStatus}
</if>
ORDER BY create_time desc
ORDER BY create_time
,score
desc
</select>
<select
id=
"selectAllDramaExcel"
resultType=
"com.hui.iqiyi.request.ProgramExcelRequest"
>
select a.`name`,a.element_type,a.external_id,a.cname,a.`year`,a.publish_time,a.`desc`,a.tags,a.pic_url,a.directors,a.main_actors,a.writers,a.stars,a.search_name,a.score,a.country,a.`language`,a.total,b.sname,b.iqiyi_content_id,
c.vid,c.bitrate,c.duration,c.file_size,c.local_status,c.local_path
from iqiyi_content as a
LEFT JOIN iqiyi_program as b on a.id =b.iqiyi_content_id
LEFT JOIN iqiyi_movie as c on b.id =c.iqiyi_program_id
where a.platform_info=1
ORDER BY a.platform_info
</select>
<sql
id=
"Where_Cloumn"
>
<where>
...
...
src/main/resources/mapper/iqiyi/ProgramMapper.xml
View file @
dd096b4
...
...
@@ -6,20 +6,35 @@
<update
id=
"updateFilm"
>
UPDATE iqiyi_program as a
LEFT JOIN iqiyi_movie as c on c.iqiyi_program_id=a.id
set a.platform_info=1,c.priority=10
set a.platform_info = (
CASE WHEN IFNULL(platform_info,'') = '' THEN
#{platformInfo}
else
CONCAT(platform_info,',',#{platformInfo})
END ),c.priority=10
where a.id = #{id}
</update>
<update
id=
"updatePla"
>
UPDATE iqiyi_content AS b
set b.platform_info=1
set b.platform_info=(
CASE WHEN IFNULL(platform_info,'') = '' THEN
#{platformInfo}
else
CONCAT(platform_info,',',#{platformInfo})
END )
where b.id = #{id}
</update>
<update
id=
"updateTeleplay"
>
UPDATE iqiyi_program as a
LEFT JOIN iqiyi_movie as c on c.iqiyi_program_id=a.id
set a.platform_info=1,c.priority=10
set a.platform_info= (
CASE WHEN IFNULL(platform_info,'') = '' THEN
#{platformInfo}
else
CONCAT(platform_info,',',#{platformInfo})
END ),c.priority=10
where a.iqiyi_content_id = #{id}
</update>
...
...
@@ -94,7 +109,6 @@
select a.*
from iqiyi_program as a
LEFT JOIN iqiyi_movie as b on a.id=b.iqiyi_program_id
<where>
<if
test=
"id != null and id != ''"
>
and id = #{id}
...
...
@@ -103,7 +117,7 @@
and cid = #{cid}
</if>
<if
test=
"name!= null and name!= ''"
>
AND name like
#{name}
AND name like
CONCAT('%',CONCAT(#{name},'%'))
</if>
<if
test=
"cname!= null and cname!= ''"
>
AND cname = #{cname}
...
...
@@ -115,20 +129,63 @@
and create_time
<
= #{EndTime}
</if>
<if
test=
"score != null"
>
and score = #{score}
and score
>
= #{score}
</if>
<!-- <if test="score2 != null">-->
<!-- and score <= #{score2}-->
<!-- </if>-->
<if
test=
"platformInfo != null"
>
and platform_info = #{platformInfo}
</if>
<if
test=
"downloadStatus !=null"
>
and local_status=#{downloadStatus}
</if>
and series_flag=0
</where>
ORDER BY create_time desc
ORDER BY create_time
,score
desc
</select>
<select
id=
"selectAllMonolithicExcel"
parameterType=
"com.hui.iqiyi.request.ProgramExcelRequest"
resultType=
"com.hui.iqiyi.request.ProgramExcelRequest"
>
select a.`name`,a.element_type,a.external_id,a.cname,a.`year`,a.publish_time,a.`desc`,a.tags,a.pic_url,a.directors,a.main_actors,a.writers,a.stars,a.search_name,a.score,a.country,a.`language`,
c.vid,c.bitrate,c.duration,c.file_size,c.local_status,c.local_path
from iqiyi_program as a
LEFT JOIN iqiyi_movie as c on a.id =c.iqiyi_program_id
<where>
<if
test=
"id != null and id != ''"
>
and id = #{id}
</if>
<if
test=
"cid != null and cid != ''"
>
and cid = #{cid}
</if>
<if
test=
"name!= null and name!= ''"
>
AND name like CONCAT('%',CONCAT(#{name},'%'))
</if>
<if
test=
"cname!= null and cname!= ''"
>
AND cname = #{cname}
</if>
<if
test=
"beginTime != null"
>
and create_time
>
= #{beginTime}
</if>
<if
test=
"EndTime != null"
>
and create_time
<
= #{EndTime}
</if>
<if
test=
"platformInfo != null"
>
and platform_info = #{platformInfo}
</if>
and a.platform_info=1
</where>
ORDER BY a.platform_info
</select>
<select
id=
"selectCalculation"
resultType=
"com.hui.iqiyi.response.ProgramCalcu"
>
SELECT
sum( im.file_size )/ 1024 / 1024 / 1024 AS 'xzSize',
sum( im.duration )/ 60 / 60 AS 'totlDuration'
FROM
iqiyi_movie im
LEFT JOIN iqiyi_program AS ip ON im.iqiyi_program_id = ip.id
WHERE
ip.platform_info = '1'
AND im.local_status = '0'
</select>
<sql
id=
"Pro_Cloumn"
>
...
...
Please
register
or
sign in
to post a comment