Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
C
chnmuseum-party
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
liqin
chnmuseum-party
Commits
93db1527
Commit
93db1527
authored
Apr 01, 2021
by
liqin
💬
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
bug fixed
parent
7f3e7a0f
Hide whitespace changes
Inline
Side-by-side
Showing
34 changed files
with
1245 additions
and
533 deletions
+1245
-533
FastDFSUtils.java
...cn/wisenergy/chnmuseum/party/common/dfs/FastDFSUtils.java
+16
-27
AuditTypeEnum.java
...wisenergy/chnmuseum/party/common/enums/AuditTypeEnum.java
+8
-9
FileCatEnum.java
...n/wisenergy/chnmuseum/party/common/enums/FileCatEnum.java
+36
-0
FileTypeEnum.java
.../wisenergy/chnmuseum/party/common/enums/FileTypeEnum.java
+4
-4
MysqlGenerator.java
...energy/chnmuseum/party/common/mybatis/MysqlGenerator.java
+2
-2
ImportExcelUtil.java
...isenergy/chnmuseum/party/common/util/ImportExcelUtil.java
+1
-1
BasePageOrderParam.java
...senergy/chnmuseum/party/common/vo/BasePageOrderParam.java
+4
-4
BatchUploadResVO.java
...wisenergy/chnmuseum/party/common/vo/BatchUploadResVO.java
+4
-2
VideoContentCatMapper.java
...senergy/chnmuseum/party/mapper/VideoContentCatMapper.java
+16
-0
VideoContentMapper.java
.../wisenergy/chnmuseum/party/mapper/VideoContentMapper.java
+16
-0
Asset.java
src/main/java/cn/wisenergy/chnmuseum/party/model/Asset.java
+40
-47
ExhibitionBoard.java
...a/cn/wisenergy/chnmuseum/party/model/ExhibitionBoard.java
+36
-34
VideoContent.java
...java/cn/wisenergy/chnmuseum/party/model/VideoContent.java
+96
-0
VideoContentCat.java
...a/cn/wisenergy/chnmuseum/party/model/VideoContentCat.java
+9
-9
LearningContentBoardService.java
.../chnmuseum/party/service/LearningContentBoardService.java
+1
-1
VideoContentCatService.java
...nergy/chnmuseum/party/service/VideoContentCatService.java
+16
-0
VideoContentService.java
...isenergy/chnmuseum/party/service/VideoContentService.java
+16
-0
AssetServiceImpl.java
...energy/chnmuseum/party/service/impl/AssetServiceImpl.java
+1
-1
LearningContentBoardServiceImpl.java
...m/party/service/impl/LearningContentBoardServiceImpl.java
+1
-1
VideoContentCatServiceImpl.java
...museum/party/service/impl/VideoContentCatServiceImpl.java
+22
-0
VideoContentServiceImpl.java
...chnmuseum/party/service/impl/VideoContentServiceImpl.java
+28
-0
ChinaMobileRestApiController.java
...um/party/web/controller/ChinaMobileRestApiController.java
+40
-62
CopyrightOwnerController.java
...museum/party/web/controller/CopyrightOwnerController.java
+8
-8
ExhibitionBoardController.java
...useum/party/web/controller/ExhibitionBoardController.java
+108
-149
FileUploadController.java
.../chnmuseum/party/web/controller/FileUploadController.java
+194
-106
LearningContentController.java
...useum/party/web/controller/LearningContentController.java
+29
-29
VideoContentCatController.java
...useum/party/web/controller/VideoContentCatController.java
+143
-0
VideoContentController.java
...hnmuseum/party/web/controller/VideoContentController.java
+266
-0
AssetMapper.xml
src/main/resources/mapper/AssetMapper.xml
+17
-14
AuditMapper.xml
src/main/resources/mapper/AuditMapper.xml
+1
-1
BoardTalkingMapper.xml
src/main/resources/mapper/BoardTalkingMapper.xml
+2
-2
ExhibitionBoardMapper.xml
src/main/resources/mapper/ExhibitionBoardMapper.xml
+20
-20
VideoContentCatMapper.xml
src/main/resources/mapper/VideoContentCatMapper.xml
+20
-0
VideoContentMapper.xml
src/main/resources/mapper/VideoContentMapper.xml
+24
-0
No files found.
src/main/java/cn/wisenergy/chnmuseum/party/common/dfs/FastDFSUtils.java
View file @
93db1527
package
cn
.
wisenergy
.
chnmuseum
.
party
.
common
.
dfs
;
package
cn
.
wisenergy
.
chnmuseum
.
party
.
common
.
dfs
;
import
cn.wisenergy.chnmuseum.party.common.mvc.InterfaceException
;
import
cn.wisenergy.chnmuseum.party.common.mvc.InterfaceException
;
import
cn.wisenergy.chnmuseum.party.common.util.*
;
import
cn.wisenergy.chnmuseum.party.common.util.CopyStreamUtils
;
import
cn.wisenergy.chnmuseum.party.common.util.FileTypeUtil
;
import
cn.wisenergy.chnmuseum.party.common.util.FileUtil
;
import
com.github.tobato.fastdfs.domain.fdfs.FileInfo
;
import
com.github.tobato.fastdfs.domain.fdfs.FileInfo
;
import
com.github.tobato.fastdfs.domain.fdfs.MetaData
;
import
com.github.tobato.fastdfs.domain.fdfs.MetaData
;
import
com.github.tobato.fastdfs.domain.fdfs.StorePath
;
import
com.github.tobato.fastdfs.domain.fdfs.StorePath
;
...
@@ -23,9 +25,7 @@ import java.io.ByteArrayInputStream;
...
@@ -23,9 +25,7 @@ import java.io.ByteArrayInputStream;
import
java.io.ByteArrayOutputStream
;
import
java.io.ByteArrayOutputStream
;
import
java.io.IOException
;
import
java.io.IOException
;
import
java.io.InputStream
;
import
java.io.InputStream
;
import
java.time.LocalDateTime
;
import
java.util.HashMap
;
import
java.util.HashMap
;
import
java.util.HashSet
;
import
java.util.Map
;
import
java.util.Map
;
import
java.util.Set
;
import
java.util.Set
;
...
@@ -53,23 +53,13 @@ public class FastDFSUtils {
...
@@ -53,23 +53,13 @@ public class FastDFSUtils {
FastDFSUtils
.
imageConfig
=
thumbImageConfig
;
FastDFSUtils
.
imageConfig
=
thumbImageConfig
;
}
}
public
static
String
uploadFile
(
InputStream
inputStream
,
long
size
,
String
fileName
)
{
final
Set
<
MetaData
>
metaDataSet
=
new
HashSet
<>();
metaDataSet
.
add
(
new
MetaData
(
"fileName"
,
fileName
));
metaDataSet
.
add
(
new
MetaData
(
"fileSize"
,
size
+
""
));
metaDataSet
.
add
(
new
MetaData
(
"fileExtName"
,
FilenameUtils
.
getExtension
(
fileName
)));
metaDataSet
.
add
(
new
MetaData
(
"updateTime"
,
TimeUtils
.
format
(
LocalDateTime
.
now
(),
TimeUtils
.
FORMAT_ONE
)));
final
StorePath
storePath
=
storageClient
.
uploadFile
(
inputStream
,
size
,
FilenameUtils
.
getExtension
(
fileName
),
metaDataSet
);
return
dfsFileAccessBasePath
+
"/"
+
storePath
.
getFullPath
();
}
public
static
Map
<
String
,
Object
>
uploadUeImage
(
InputStream
inputStream
,
long
fileSize
,
String
fileName
)
{
public
static
Map
<
String
,
Object
>
uploadUeImage
(
InputStream
inputStream
,
long
fileSize
,
String
fileName
)
{
boolean
isImage
=
FileTypeUtil
.
isImageByExtension
(
fileName
);
boolean
isImage
=
FileTypeUtil
.
isImageByExtension
(
fileName
);
if
(
isImage
)
{
if
(
isImage
)
{
String
mimeType
=
FileUtil
.
getMimeType
(
fileName
);
String
mimeType
=
FileUtil
.
getMimeType
(
fileName
);
final
String
storePath
=
FastDFSUtils
.
uploadFile
(
inputStream
,
fileSize
,
fileName
);
final
String
storePath
=
FastDFSUtils
.
uploadFile
(
inputStream
,
fileSize
,
fileName
,
null
);
Map
<
String
,
Object
>
uploadResult
=
new
HashMap
<>();
Map
<
String
,
Object
>
uploadResult
=
new
HashMap
<>();
uploadResult
.
put
(
"url"
,
dfsFileAccessBasePath
+
"/"
+
storePath
);
uploadResult
.
put
(
"url"
,
storePath
);
uploadResult
.
put
(
"status"
,
true
);
uploadResult
.
put
(
"status"
,
true
);
uploadResult
.
put
(
"message"
,
"文件上传成功!"
);
uploadResult
.
put
(
"message"
,
"文件上传成功!"
);
uploadResult
.
put
(
"title"
,
fileName
);
uploadResult
.
put
(
"title"
,
fileName
);
...
@@ -80,16 +70,16 @@ public class FastDFSUtils {
...
@@ -80,16 +70,16 @@ public class FastDFSUtils {
throw
new
InterfaceException
(
"400"
,
"文件不是图片类型"
);
throw
new
InterfaceException
(
"400"
,
"文件不是图片类型"
);
}
}
public
static
String
uploadVideo
(
InputStream
inputStream
,
long
size
,
String
fileName
)
{
public
static
String
uploadFile
(
InputStream
inputStream
,
long
size
,
String
fileName
,
Set
<
MetaData
>
metaDataSet
)
{
final
StorePath
storePath
=
storageClient
.
uploadFile
(
inputStream
,
size
,
FilenameUtils
.
getExtension
(
fileName
),
metaDataSet
);
return
dfsFileAccessBasePath
+
"/"
+
storePath
.
getFullPath
();
}
public
static
String
uploadVideo
(
InputStream
inputStream
,
long
size
,
String
fileName
,
Set
<
MetaData
>
metaDataSet
)
{
Map
<
String
,
Object
>
map
=
CopyStreamUtils
.
copyInputStream
(
inputStream
);
Map
<
String
,
Object
>
map
=
CopyStreamUtils
.
copyInputStream
(
inputStream
);
String
md5
=
(
String
)
map
.
get
(
"md5"
);
String
md5
=
(
String
)
map
.
get
(
"md5"
);
InputStream
is
=
(
InputStream
)
map
.
get
(
"inputStream"
);
final
Set
<
MetaData
>
metaDataSet
=
new
HashSet
<>();
metaDataSet
.
add
(
new
MetaData
(
"fileName"
,
fileName
));
metaDataSet
.
add
(
new
MetaData
(
"fileSize"
,
size
+
""
));
metaDataSet
.
add
(
new
MetaData
(
"updateTime"
,
TimeUtils
.
format
(
LocalDateTime
.
now
(),
TimeUtils
.
FORMAT_ONE
)));
metaDataSet
.
add
(
new
MetaData
(
"MD5"
,
md5
));
metaDataSet
.
add
(
new
MetaData
(
"MD5"
,
md5
));
InputStream
is
=
(
InputStream
)
map
.
get
(
"inputStream"
);
final
StorePath
storePath
=
storageClient
.
uploadFile
(
is
,
size
,
FilenameUtils
.
getExtension
(
fileName
),
metaDataSet
);
final
StorePath
storePath
=
storageClient
.
uploadFile
(
is
,
size
,
FilenameUtils
.
getExtension
(
fileName
),
metaDataSet
);
return
dfsFileAccessBasePath
+
"/"
+
storePath
.
getFullPath
();
return
dfsFileAccessBasePath
+
"/"
+
storePath
.
getFullPath
();
}
}
...
@@ -97,12 +87,11 @@ public class FastDFSUtils {
...
@@ -97,12 +87,11 @@ public class FastDFSUtils {
/**
/**
* 使用 FastDFS 提供的客户端 storageClient 来进行文件上传,最后将上传结果返回。
* 使用 FastDFS 提供的客户端 storageClient 来进行文件上传,最后将上传结果返回。
* 根据 groupName 和文件名获取文件信息。
* 根据 groupName 和文件名获取文件信息。
*
* @param groupName
* @param path
* @return
*/
*/
public
static
FileInfo
getFileInfo
(
String
groupName
,
String
path
)
{
public
static
FileInfo
getFileInfo
(
String
fileUrl
)
{
fileUrl
=
fileUrl
.
replace
(
dfsFileAccessBasePath
+
"/"
,
""
);
String
groupName
=
fileUrl
.
substring
(
0
,
fileUrl
.
indexOf
(
"/"
));
String
path
=
fileUrl
.
substring
(
fileUrl
.
indexOf
(
"/"
)
+
1
);
return
storageClient
.
queryFileInfo
(
groupName
,
path
);
return
storageClient
.
queryFileInfo
(
groupName
,
path
);
}
}
...
...
src/main/java/cn/wisenergy/chnmuseum/party/common/enums/AuditTypeEnum.java
View file @
93db1527
...
@@ -5,7 +5,7 @@ package cn.wisenergy.chnmuseum.party.common.enums;
...
@@ -5,7 +5,7 @@ package cn.wisenergy.chnmuseum.party.common.enums;
*/
*/
public
enum
AuditTypeEnum
{
public
enum
AuditTypeEnum
{
ASSE
T
(
1
,
"视频内容"
),
VIDEO_CONTEN
T
(
1
,
"视频内容"
),
EXHIBITION_BOARD
(
2
,
"展板内容"
),
EXHIBITION_BOARD
(
2
,
"展板内容"
),
LEARNING_CONTENT
(
3
,
"学习内容"
),
LEARNING_CONTENT
(
3
,
"学习内容"
),
ACCOUNT
(
4
,
"账户"
);
ACCOUNT
(
4
,
"账户"
);
...
@@ -13,12 +13,12 @@ public enum AuditTypeEnum {
...
@@ -13,12 +13,12 @@ public enum AuditTypeEnum {
// 错误编码
// 错误编码
private
Integer
code
;
private
Integer
code
;
// 信息
// 信息
private
String
operation
;
private
String
type
;
// 相应编码有参构造函数
// 相应编码有参构造函数
AuditTypeEnum
(
Integer
code
,
String
operation
)
{
AuditTypeEnum
(
Integer
code
,
String
type
)
{
this
.
code
=
code
;
this
.
code
=
code
;
this
.
operation
=
operation
;
this
.
type
=
type
;
}
}
public
Integer
getCode
()
{
public
Integer
getCode
()
{
...
@@ -29,12 +29,11 @@ public enum AuditTypeEnum {
...
@@ -29,12 +29,11 @@ public enum AuditTypeEnum {
this
.
code
=
code
;
this
.
code
=
code
;
}
}
public
String
get
Operation
()
{
public
String
get
Type
()
{
return
operation
;
return
type
;
}
}
public
void
set
Operation
(
String
operation
)
{
public
void
set
Type
(
String
type
)
{
this
.
operation
=
operation
;
this
.
type
=
type
;
}
}
}
}
src/main/java/cn/wisenergy/chnmuseum/party/common/enums/FileCatEnum.java
0 → 100644
View file @
93db1527
package
cn
.
wisenergy
.
chnmuseum
.
party
.
common
.
enums
;
public
enum
FileCatEnum
{
VIDEO_CONTENT
(
"VIDEO_CONTENT"
,
"视频内容"
),
EXHIBITION_BOARD_AUDIO
(
"EXHIBITION_BOARD_AUDIO"
,
"展板音频"
),
EXHIBITION_BOARD_VIDEO
(
"EXHIBITION_BOARD_VIDEO"
,
"展板视频"
),
EXHIBITION_BOARD_DATUM
(
"EXHIBITION_BOARD_DATUM"
,
"展板参考资料"
),
LEARNING_CONTENT
(
"LEARNING_CONTENT"
,
"学习内容"
),
LEARNING_PROJECT
(
"LEARNING_PROJECT"
,
"学习项目"
);
private
String
cat
;
private
String
name
;
FileCatEnum
(
String
cat
,
String
name
)
{
this
.
cat
=
cat
;
this
.
name
=
name
;
}
public
String
getCat
()
{
return
cat
;
}
public
void
setCat
(
String
cat
)
{
this
.
cat
=
cat
;
}
public
String
getName
()
{
return
name
;
}
public
void
setName
(
String
name
)
{
this
.
name
=
name
;
}
}
src/main/java/cn/wisenergy/chnmuseum/party/common/enums/FileTypeEnum.java
View file @
93db1527
...
@@ -2,10 +2,10 @@ package cn.wisenergy.chnmuseum.party.common.enums;
...
@@ -2,10 +2,10 @@ package cn.wisenergy.chnmuseum.party.common.enums;
public
enum
FileTypeEnum
{
public
enum
FileTypeEnum
{
D
ATUM
(
"Datum"
,
"资料
"
),
D
OCUMENT
(
"DOCUMENT"
,
"文档
"
),
IMAGE
(
"I
mage
"
,
"图片"
),
IMAGE
(
"I
MAGE
"
,
"图片"
),
AUDIO
(
"A
udio
"
,
"音频"
),
AUDIO
(
"A
UDIO
"
,
"音频"
),
VIDEO
(
"V
ideo
"
,
"视频"
);
VIDEO
(
"V
IDEO
"
,
"视频"
);
// 错误编码
// 错误编码
private
String
type
;
private
String
type
;
...
...
src/main/java/cn/wisenergy/chnmuseum/party/common/mybatis/MysqlGenerator.java
View file @
93db1527
...
@@ -3,9 +3,9 @@ package cn.wisenergy.chnmuseum.party.common.mybatis;
...
@@ -3,9 +3,9 @@ package cn.wisenergy.chnmuseum.party.common.mybatis;
public
class
MysqlGenerator
{
public
class
MysqlGenerator
{
private
static
final
String
[]
tableNames
=
new
String
[]{
private
static
final
String
[]
tableNames
=
new
String
[]{
"
t_audi
t"
"
asset"
,
"video_content"
,
"video_content_ca
t"
};
};
// private static final String projectPath = "D:\\develop\\Project\\chnmuseum-party";
// private static final String projectPath = "D:\\develop\\Project\\chnmuseum-party";
private
static
final
String
projectPath
=
"/opt/ss"
;
private
static
final
String
projectPath
=
"/opt/ss"
;
public
static
void
main
(
String
[]
args
)
{
public
static
void
main
(
String
[]
args
)
{
...
...
src/main/java/cn/wisenergy/chnmuseum/party/common/util/ImportExcelUtil.java
View file @
93db1527
...
@@ -11,7 +11,7 @@ import java.util.List;
...
@@ -11,7 +11,7 @@ import java.util.List;
import
java.util.Map
;
import
java.util.Map
;
public
class
ImportExcelUtil
{
public
class
ImportExcelUtil
{
// abc.xls
public
static
boolean
isXls
(
String
fileName
)
{
public
static
boolean
isXls
(
String
fileName
)
{
// (?i)忽略大小写
// (?i)忽略大小写
if
(
fileName
.
matches
(
"^.+\\.(?i)(xls)$"
))
{
if
(
fileName
.
matches
(
"^.+\\.(?i)(xls)$"
))
{
...
...
src/main/java/cn/wisenergy/chnmuseum/party/common/vo/BasePageOrderParam.java
View file @
93db1527
...
@@ -45,11 +45,11 @@ public abstract class BasePageOrderParam extends BasePageParam {
...
@@ -45,11 +45,11 @@ public abstract class BasePageOrderParam extends BasePageParam {
@ApiModelProperty
(
"版权方类型"
)
@ApiModelProperty
(
"版权方类型"
)
private
String
ownerType
;
private
String
ownerType
;
@ApiModelProperty
(
"视频分类ID"
)
@ApiModelProperty
(
"视频
内容
分类ID"
)
private
String
assetType
Id
;
private
String
videoContentCat
Id
;
@ApiModelProperty
(
"视频版权方ID"
)
@ApiModelProperty
(
"视频
内容
版权方ID"
)
private
String
asse
tCopyrightOwnerId
;
private
String
videoConten
tCopyrightOwnerId
;
@ApiModelProperty
(
"展板版权方ID"
)
@ApiModelProperty
(
"展板版权方ID"
)
private
String
boardCopyrightOwnerId
;
private
String
boardCopyrightOwnerId
;
...
...
src/main/java/cn/wisenergy/chnmuseum/party/common/vo/BatchUploadResVO.java
View file @
93db1527
package
cn
.
wisenergy
.
chnmuseum
.
party
.
common
.
vo
;
package
cn
.
wisenergy
.
chnmuseum
.
party
.
common
.
vo
;
import
cn.wisenergy.chnmuseum.party.model.Asset
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.Data
;
...
@@ -17,6 +18,7 @@ import java.util.List;
...
@@ -17,6 +18,7 @@ import java.util.List;
@Accessors
(
chain
=
true
)
@Accessors
(
chain
=
true
)
@ApiModel
(
value
=
"批量操作响应参数"
,
description
=
"批量操作响应参数"
)
@ApiModel
(
value
=
"批量操作响应参数"
,
description
=
"批量操作响应参数"
)
public
class
BatchUploadResVO
{
public
class
BatchUploadResVO
{
private
static
final
long
serialVersionUID
=
51873394122822866L
;
private
static
final
long
serialVersionUID
=
51873394122822866L
;
@ApiModelProperty
(
"成功数量"
)
@ApiModelProperty
(
"成功数量"
)
...
@@ -31,8 +33,8 @@ public class BatchUploadResVO {
...
@@ -31,8 +33,8 @@ public class BatchUploadResVO {
@ApiModelProperty
(
"处理结果集合"
)
@ApiModelProperty
(
"处理结果集合"
)
private
List
<
HandleResult
>
handleList
;
private
List
<
HandleResult
>
handleList
;
@ApiModelProperty
(
"成功上传的
URL
集合"
)
@ApiModelProperty
(
"成功上传的
文件
集合"
)
private
List
<
String
>
url
List
;
private
List
<
Asset
>
file
List
;
@Data
@Data
public
static
class
HandleResult
{
public
static
class
HandleResult
{
...
...
src/main/java/cn/wisenergy/chnmuseum/party/mapper/VideoContentCatMapper.java
0 → 100644
View file @
93db1527
package
cn
.
wisenergy
.
chnmuseum
.
party
.
mapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
cn.wisenergy.chnmuseum.party.model.VideoContentCat
;
/**
* <pre>
* 视频内容分类 Mapper 接口
* </pre>
*
* @author Danny Lee
* @since 2021-04-01
*/
public
interface
VideoContentCatMapper
extends
BaseMapper
<
VideoContentCat
>
{
}
src/main/java/cn/wisenergy/chnmuseum/party/mapper/
AssetType
Mapper.java
→
src/main/java/cn/wisenergy/chnmuseum/party/mapper/
VideoContent
Mapper.java
View file @
93db1527
package
cn
.
wisenergy
.
chnmuseum
.
party
.
mapper
;
package
cn
.
wisenergy
.
chnmuseum
.
party
.
mapper
;
import
cn.wisenergy.chnmuseum.party.model.AssetType
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
cn.wisenergy.chnmuseum.party.model.VideoContent
;
/**
/**
* <p>
* <p
re
>
* 视频
分类
Mapper 接口
* 视频
内容
Mapper 接口
* </p>
* </p
re
>
*
*
* @author Danny Lee
* @author Danny Lee
* @since 2021-0
3-16
* @since 2021-0
4-01
*/
*/
public
interface
AssetTypeMapper
extends
BaseMapper
<
AssetType
>
{
public
interface
VideoContentMapper
extends
BaseMapper
<
VideoContent
>
{
}
}
src/main/java/cn/wisenergy/chnmuseum/party/model/Asset.java
View file @
93db1527
package
cn
.
wisenergy
.
chnmuseum
.
party
.
model
;
package
cn
.
wisenergy
.
chnmuseum
.
party
.
model
;
import
cn.wisenergy.chnmuseum.party.common.validator.groups.Add
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
cn.wisenergy.chnmuseum.party.common.validator.groups.Update
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.baomidou.mybatisplus.annotation.*
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.*
;
import
lombok.*
;
import
lombok.experimental.Accessors
;
import
lombok.experimental.Accessors
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotNull
;
import
java.io.Serializable
;
import
java.io.Serializable
;
import
java.time.LocalDateTime
;
import
java.time.LocalDateTime
;
import
java.util.List
;
/**
/**
* <p>
* <p>
*
视频
*
文件资产
* </p>
* </p>
*
*
* @author Danny Lee
* @author Danny Lee
* @since 2021-0
3-16
* @since 2021-0
4-01
*/
*/
@Data
@Data
@Builder
@Builder
...
@@ -29,64 +27,59 @@ import java.util.List;
...
@@ -29,64 +27,59 @@ import java.util.List;
@Accessors
(
chain
=
true
)
@Accessors
(
chain
=
true
)
@EqualsAndHashCode
(
callSuper
=
false
)
@EqualsAndHashCode
(
callSuper
=
false
)
@TableName
(
"asset"
)
@TableName
(
"asset"
)
@ApiModel
(
value
=
"
视频"
,
description
=
"视频
"
)
@ApiModel
(
value
=
"
文件资产"
,
description
=
"文件资产
"
)
public
class
Asset
implements
Serializable
{
public
class
Asset
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
private
static
final
long
serialVersionUID
=
1L
;
@ApiModelProperty
(
"
视频
ID"
)
@ApiModelProperty
(
"
文件资产
ID"
)
@TableId
(
value
=
"id"
,
type
=
IdType
.
ASSIGN_ID
)
@TableId
(
value
=
"id"
,
type
=
IdType
.
ASSIGN_ID
)
@NotNull
(
message
=
"视频ID不能为空"
,
groups
=
{
Update
.
class
})
private
String
id
;
private
String
id
;
@ApiModelProperty
(
"视频名称"
)
@ApiModelProperty
(
"所属项ID"
)
@TableField
(
"name"
)
@TableField
(
"ref_item_id"
)
@NotBlank
(
message
=
"视频名称不能为空"
,
groups
=
{
Add
.
class
,
Update
.
class
})
private
String
refItemId
;
private
String
name
;
@ApiModelProperty
(
"视频缩略图"
)
@ApiModelProperty
(
"文件名"
)
@TableField
(
"thumbnail"
)
@TableField
(
"file_name"
)
@NotBlank
(
message
=
"视频缩略图不能为空"
,
groups
=
{
Add
.
class
,
Update
.
class
})
private
String
fileName
;
private
String
thumbnail
;
@ApiModelProperty
(
"
视频类别ID
"
)
@ApiModelProperty
(
"
扩展名
"
)
@TableField
(
"
asset_type_id
"
)
@TableField
(
"
file_ext_name
"
)
private
String
assetTypeId
;
private
String
fileExtName
;
@ApiModelProperty
(
"视频版权方ID"
)
@ApiModelProperty
(
"多媒体类型"
)
@TableField
(
"asset_copyright_owner_id"
)
@TableField
(
"file_type"
)
private
String
assetCopyrightOwnerId
;
private
String
fileType
;
@ApiModelProperty
(
"文件大小(B)"
)
@TableField
(
"file_size"
)
private
Long
fileSize
;
@ApiModelProperty
(
"文件分类"
)
@TableField
(
"file_cat"
)
private
String
fileCat
;
@ApiModelProperty
(
"下载链接"
)
@ApiModelProperty
(
"下载链接"
)
@TableField
(
"video_url"
)
@TableField
(
"file_url"
)
private
String
videoUrl
;
private
String
fileUrl
;
@ApiModelProperty
(
"视频缩略图"
)
@TableField
(
"thumbnail"
)
private
String
thumbnail
;
@ApiModelProperty
(
"
审核状态
"
)
@ApiModelProperty
(
"
语言
"
)
@TableField
(
"
audit_status
"
)
@TableField
(
"
language
"
)
private
String
auditStatus
;
private
String
language
;
@ApiModelProperty
(
"
是否上架
"
)
@ApiModelProperty
(
"
MD5
"
)
@TableField
(
"
is_published
"
)
@TableField
(
"
md5
"
)
private
Boolean
published
;
private
String
md5
;
@ApiModelProperty
(
"创建日期"
)
@ApiModelProperty
(
"创建日期"
)
@TableField
(
value
=
"create_time"
,
fill
=
FieldFill
.
INSERT
)
private
LocalDateTime
createTime
;
private
LocalDateTime
createTime
;
@ApiModelProperty
(
"修改日期"
)
@ApiModelProperty
(
"修改日期"
)
@TableField
(
value
=
"update_time"
,
fill
=
FieldFill
.
INSERT_UPDATE
)
private
LocalDateTime
updateTime
;
private
LocalDateTime
updateTime
;
@ApiModelProperty
(
"视频分类"
)
@TableField
(
exist
=
false
)
private
String
assetTypeName
;
@ApiModelProperty
(
"视频版权方名称"
)
@TableField
(
exist
=
false
)
private
String
assetCopyrightOwnerName
;
@ApiModelProperty
(
"视频URL列表"
)
@TableField
(
exist
=
false
)
private
List
<
String
>
videoUrlList
;
}
}
src/main/java/cn/wisenergy/chnmuseum/party/model/ExhibitionBoard.java
View file @
93db1527
...
@@ -29,7 +29,7 @@ import java.util.List;
...
@@ -29,7 +29,7 @@ import java.util.List;
@Accessors
(
chain
=
true
)
@Accessors
(
chain
=
true
)
@EqualsAndHashCode
(
callSuper
=
false
)
@EqualsAndHashCode
(
callSuper
=
false
)
@TableName
(
"exhibition_board"
)
@TableName
(
"exhibition_board"
)
@ApiModel
(
value
=
"展板
"
,
description
=
"展板
"
)
@ApiModel
(
value
=
"展板
内容"
,
description
=
"展板内容
"
)
public
class
ExhibitionBoard
implements
Serializable
{
public
class
ExhibitionBoard
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
private
static
final
long
serialVersionUID
=
1L
;
...
@@ -67,31 +67,25 @@ public class ExhibitionBoard implements Serializable {
...
@@ -67,31 +67,25 @@ public class ExhibitionBoard implements Serializable {
@NotBlank
(
message
=
"简介不能为空"
,
groups
=
{
Add
.
class
,
Update
.
class
})
@NotBlank
(
message
=
"简介不能为空"
,
groups
=
{
Add
.
class
,
Update
.
class
})
private
String
remarks
;
private
String
remarks
;
@ApiModelProperty
(
"视频版权方ID"
)
@ApiModelProperty
(
"视频内容版权方ID"
)
@TableField
(
"asset_copyright_owner_id"
)
@TableField
(
"video_content_copyright_owner_id"
)
private
String
assetCopyrightOwnerId
;
@NotBlank
(
message
=
"视频内容版权方ID不能为空"
,
groups
=
{
Add
.
class
,
Update
.
class
})
private
String
videoContentCopyrightOwnerId
;
@ApiModelProperty
(
"视频类别ID"
)
@ApiModelProperty
(
"视频类别ID"
)
@TableField
(
"asset_type_id"
)
@TableField
(
"video_content_cat_id"
)
private
String
assetTypeId
;
@NotBlank
(
message
=
"视频类别ID不能为空"
,
groups
=
{
Add
.
class
,
Update
.
class
})
private
String
videoContentCatId
;
@ApiModelProperty
(
"视频ID"
)
@ApiModelProperty
(
"视频内容ID"
)
@TableField
(
"asset_id"
)
@TableField
(
"video_content_id"
)
@NotBlank
(
message
=
"视频ID不能为空"
,
groups
=
{
Add
.
class
,
Update
.
class
})
@NotBlank
(
message
=
"视频内容ID不能为空"
,
groups
=
{
Add
.
class
,
Update
.
class
})
private
String
assetId
;
private
String
videoContentId
;
@ApiModelProperty
(
"导览音频URL"
)
@TableField
(
"guide_audio_url"
)
private
String
guideAudioUrl
;
@ApiModelProperty
(
"参考资料文件夹"
)
@ApiModelProperty
(
"参考资料文件夹"
)
@TableField
(
"ref_material_dir"
)
@TableField
(
"ref_material_dir"
)
private
String
refMaterialDir
;
private
String
refMaterialDir
;
@ApiModelProperty
(
"参考资料URL"
)
@TableField
(
"ref_material_url"
)
private
String
refMaterialUrl
;
@ApiModelProperty
(
"审核状态"
)
@ApiModelProperty
(
"审核状态"
)
@TableField
(
"audit_status"
)
@TableField
(
"audit_status"
)
private
String
auditStatus
;
private
String
auditStatus
;
...
@@ -108,40 +102,48 @@ public class ExhibitionBoard implements Serializable {
...
@@ -108,40 +102,48 @@ public class ExhibitionBoard implements Serializable {
@TableField
(
value
=
"update_time"
,
fill
=
FieldFill
.
INSERT_UPDATE
)
@TableField
(
value
=
"update_time"
,
fill
=
FieldFill
.
INSERT_UPDATE
)
private
LocalDateTime
updateTime
;
private
LocalDateTime
updateTime
;
@ApiModelProperty
(
"展板
版权方名称
"
)
@ApiModelProperty
(
"展板
音频文件ID列表(添加或更新使用)
"
)
@TableField
(
exist
=
false
)
@TableField
(
exist
=
false
)
private
String
boardCopyrightOwnerName
;
private
List
<
String
>
audioIdList
;
@ApiModelProperty
(
"参考资料文件ID列表(添加或更新使用)"
)
@TableField
(
exist
=
false
)
private
List
<
String
>
datumIdList
;
@ApiModelProperty
(
"所属学习内容ID"
)
@TableField
(
exist
=
false
)
private
String
learningContentId
;
@ApiModelProperty
(
"
视频
版权方名称"
)
@ApiModelProperty
(
"
展板
版权方名称"
)
@TableField
(
exist
=
false
)
@TableField
(
exist
=
false
)
private
String
asset
CopyrightOwnerName
;
private
String
board
CopyrightOwnerName
;
@ApiModelProperty
(
"展板分类名称"
)
@ApiModelProperty
(
"展板分类名称"
)
@TableField
(
exist
=
false
)
@TableField
(
exist
=
false
)
private
String
exhibitionBoardCatName
;
private
String
exhibitionBoardCatName
;
@ApiModelProperty
(
"
关联视频
名称"
)
@ApiModelProperty
(
"
视频资料-视频内容版权方
名称"
)
@TableField
(
exist
=
false
)
@TableField
(
exist
=
false
)
private
String
asset
Name
;
private
String
videoContentCopyrightOwner
Name
;
@ApiModelProperty
(
"
展板视频URL
"
)
@ApiModelProperty
(
"
视频资料-视频内容分类名称
"
)
@TableField
(
exist
=
false
)
@TableField
(
exist
=
false
)
private
String
video
Url
;
private
String
video
ContentCatName
;
@ApiModelProperty
(
"
展板视频URL列表
"
)
@ApiModelProperty
(
"
视频资料-视频内容名称
"
)
@TableField
(
exist
=
false
)
@TableField
(
exist
=
false
)
private
List
<
String
>
videoUrlList
;
private
String
videoContentName
;
@ApiModelProperty
(
"展板
音频URL列表
"
)
@ApiModelProperty
(
"展板
视频
"
)
@TableField
(
exist
=
false
)
@TableField
(
exist
=
false
)
private
List
<
String
>
audioUrl
List
;
private
List
<
Asset
>
video
List
;
@ApiModelProperty
(
"
参考资料URL列表
"
)
@ApiModelProperty
(
"
展板视频
"
)
@TableField
(
exist
=
false
)
@TableField
(
exist
=
false
)
private
List
<
String
>
materialUrl
List
;
private
List
<
Asset
>
audio
List
;
@ApiModelProperty
(
"
所属学习内容ID
"
)
@ApiModelProperty
(
"
参考资料列表
"
)
@TableField
(
exist
=
false
)
@TableField
(
exist
=
false
)
private
String
learningContentId
;
private
List
<
Asset
>
datumList
;
}
}
src/main/java/cn/wisenergy/chnmuseum/party/model/VideoContent.java
0 → 100644
View file @
93db1527
package
cn
.
wisenergy
.
chnmuseum
.
party
.
model
;
import
cn.wisenergy.chnmuseum.party.common.validator.groups.Add
;
import
cn.wisenergy.chnmuseum.party.common.validator.groups.Update
;
import
com.baomidou.mybatisplus.annotation.*
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.*
;
import
lombok.experimental.Accessors
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotNull
;
import
java.io.Serializable
;
import
java.time.LocalDateTime
;
import
java.util.List
;
/**
* <p>
* 视频
* </p>
*
* @author Danny Lee
* @since 2021-03-16
*/
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Accessors
(
chain
=
true
)
@EqualsAndHashCode
(
callSuper
=
false
)
@TableName
(
"video_content"
)
@ApiModel
(
value
=
"视频内容"
,
description
=
"视频内容"
)
public
class
VideoContent
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
@ApiModelProperty
(
"视频内容ID"
)
@TableId
(
value
=
"id"
,
type
=
IdType
.
ASSIGN_ID
)
@NotNull
(
message
=
"视频内容ID不能为空"
,
groups
=
{
Update
.
class
})
private
String
id
;
@ApiModelProperty
(
"视频内容名称"
)
@TableField
(
"name"
)
@NotBlank
(
message
=
"视频内容名称不能为空"
,
groups
=
{
Add
.
class
,
Update
.
class
})
private
String
name
;
@ApiModelProperty
(
"视频内容版权方ID"
)
@TableField
(
"video_content_copyright_owner_id"
)
private
String
videoContentCopyrightOwnerId
;
@ApiModelProperty
(
"视频内容分类ID"
)
@TableField
(
"video_content_cat_id"
)
private
String
videoContentCatId
;
@ApiModelProperty
(
"视频内容缩略图"
)
@TableField
(
"thumbnail"
)
@NotBlank
(
message
=
"视频内容缩略图不能为空"
,
groups
=
{
Add
.
class
})
private
String
thumbnail
;
@ApiModelProperty
(
"审核状态"
)
@TableField
(
"audit_status"
)
private
String
auditStatus
;
@ApiModelProperty
(
"是否上架"
)
@TableField
(
"is_published"
)
private
Boolean
published
;
@ApiModelProperty
(
"是否已删除"
)
@TableField
(
"is_deleted"
)
private
Boolean
deleted
;
@ApiModelProperty
(
"创建日期"
)
@TableField
(
value
=
"create_time"
,
fill
=
FieldFill
.
INSERT
)
private
LocalDateTime
createTime
;
@ApiModelProperty
(
"修改日期"
)
@TableField
(
value
=
"update_time"
,
fill
=
FieldFill
.
INSERT_UPDATE
)
private
LocalDateTime
updateTime
;
@ApiModelProperty
(
"视频内容分类名称"
)
@TableField
(
exist
=
false
)
private
String
videoContentCatName
;
@ApiModelProperty
(
"视频内容版权方名称"
)
@TableField
(
exist
=
false
)
private
String
videoContentCopyrightOwnerName
;
@ApiModelProperty
(
"视频ID列表(添加/更新使用)"
)
@TableField
(
exist
=
false
)
private
List
<
String
>
videoIdList
;
@ApiModelProperty
(
"视频文件信息列表"
)
@TableField
(
exist
=
false
)
private
List
<
Asset
>
videoFileList
;
}
src/main/java/cn/wisenergy/chnmuseum/party/model/
AssetType
.java
→
src/main/java/cn/wisenergy/chnmuseum/party/model/
VideoContentCat
.java
View file @
93db1527
...
@@ -15,7 +15,7 @@ import java.time.LocalDateTime;
...
@@ -15,7 +15,7 @@ import java.time.LocalDateTime;
/**
/**
* <p>
* <p>
* 视频分类
* 视频
内容
分类
* </p>
* </p>
*
*
* @author Danny Lee
* @author Danny Lee
...
@@ -27,20 +27,20 @@ import java.time.LocalDateTime;
...
@@ -27,20 +27,20 @@ import java.time.LocalDateTime;
@NoArgsConstructor
@NoArgsConstructor
@Accessors
(
chain
=
true
)
@Accessors
(
chain
=
true
)
@EqualsAndHashCode
(
callSuper
=
false
)
@EqualsAndHashCode
(
callSuper
=
false
)
@TableName
(
"
asset_type
"
)
@TableName
(
"
video_content_cat
"
)
@ApiModel
(
value
=
"视频
分类"
,
description
=
"视频
分类"
)
@ApiModel
(
value
=
"视频
内容分类"
,
description
=
"视频内容
分类"
)
public
class
AssetType
implements
Serializable
{
public
class
VideoContentCat
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
private
static
final
long
serialVersionUID
=
1L
;
@ApiModelProperty
(
"视频分类ID"
)
@ApiModelProperty
(
"视频
内容
分类ID"
)
@TableId
(
value
=
"id"
,
type
=
IdType
.
ASSIGN_ID
)
@TableId
(
value
=
"id"
,
type
=
IdType
.
ASSIGN_ID
)
@NotNull
(
message
=
"视频
分类IDID
不能为空"
,
groups
=
{
Update
.
class
})
@NotNull
(
message
=
"视频
内容分类
不能为空"
,
groups
=
{
Update
.
class
})
private
String
id
;
private
String
id
;
@ApiModelProperty
(
"视频分类名称"
)
@ApiModelProperty
(
"视频
内容
分类名称"
)
@TableField
(
"name"
)
@TableField
(
"name"
)
@NotBlank
(
message
=
"视频分类名称不能为空"
,
groups
=
{
Add
.
class
,
Update
.
class
})
@NotBlank
(
message
=
"视频
内容
分类名称不能为空"
,
groups
=
{
Add
.
class
,
Update
.
class
})
private
String
name
;
private
String
name
;
@ApiModelProperty
(
"备注"
)
@ApiModelProperty
(
"备注"
)
...
@@ -59,7 +59,7 @@ public class AssetType implements Serializable {
...
@@ -59,7 +59,7 @@ public class AssetType implements Serializable {
@TableField
(
value
=
"update_time"
,
fill
=
FieldFill
.
INSERT_UPDATE
)
@TableField
(
value
=
"update_time"
,
fill
=
FieldFill
.
INSERT_UPDATE
)
private
LocalDateTime
updateTime
;
private
LocalDateTime
updateTime
;
@ApiModelProperty
(
"版权方"
)
@ApiModelProperty
(
"版权方
名称
"
)
@TableField
(
exist
=
false
)
@TableField
(
exist
=
false
)
private
String
copyrightOwnerName
;
private
String
copyrightOwnerName
;
...
...
src/main/java/cn/wisenergy/chnmuseum/party/service/LearningContentBoardService.java
View file @
93db1527
...
@@ -23,6 +23,6 @@ public interface LearningContentBoardService extends IService<LearningContentBoa
...
@@ -23,6 +23,6 @@ public interface LearningContentBoardService extends IService<LearningContentBoa
IPage
<
ExhibitionBoard
>
getBoardPageByLearningContentId
(
Page
<
ExhibitionBoard
>
page
,
String
learningContentId
,
String
nameOrCode
);
IPage
<
ExhibitionBoard
>
getBoardPageByLearningContentId
(
Page
<
ExhibitionBoard
>
page
,
String
learningContentId
,
String
nameOrCode
);
IPage
<
Asset
>
getAssetPageByOrganCode
(
Page
<
ExhibitionBoard
>
page
,
String
organCode
);
IPage
<
Asset
>
getAssetPageByOrganCode
(
Page
<
Asset
>
page
,
String
organCode
);
}
}
src/main/java/cn/wisenergy/chnmuseum/party/service/VideoContentCatService.java
0 → 100644
View file @
93db1527
package
cn
.
wisenergy
.
chnmuseum
.
party
.
service
;
import
cn.wisenergy.chnmuseum.party.model.VideoContentCat
;
import
com.baomidou.mybatisplus.extension.service.IService
;
/**
* <p>
* 视频内容分类 服务接口
* </p>
*
* @author Danny Lee
* @since 2021-04-01
*/
public
interface
VideoContentCatService
extends
IService
<
VideoContentCat
>
{
}
src/main/java/cn/wisenergy/chnmuseum/party/service/
AssetType
Service.java
→
src/main/java/cn/wisenergy/chnmuseum/party/service/
VideoContent
Service.java
View file @
93db1527
package
cn
.
wisenergy
.
chnmuseum
.
party
.
service
;
package
cn
.
wisenergy
.
chnmuseum
.
party
.
service
;
import
cn.wisenergy.chnmuseum.party.model.
AssetType
;
import
cn.wisenergy.chnmuseum.party.model.
VideoContent
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.baomidou.mybatisplus.extension.service.IService
;
/**
/**
* <p>
* <p>
* 视频
分类 服务类
* 视频
内容 服务接口
* </p>
* </p>
*
*
* @author Danny Lee
* @author Danny Lee
* @since 2021-0
3-16
* @since 2021-0
4-01
*/
*/
public
interface
AssetTypeService
extends
IService
<
AssetType
>
{
public
interface
VideoContentService
extends
IService
<
VideoContent
>
{
}
}
src/main/java/cn/wisenergy/chnmuseum/party/service/impl/AssetServiceImpl.java
View file @
93db1527
package
cn
.
wisenergy
.
chnmuseum
.
party
.
service
.
impl
;
package
cn
.
wisenergy
.
chnmuseum
.
party
.
service
.
impl
;
import
cn.wisenergy.chnmuseum.party.model.Asset
;
import
cn.wisenergy.chnmuseum.party.mapper.AssetMapper
;
import
cn.wisenergy.chnmuseum.party.mapper.AssetMapper
;
import
cn.wisenergy.chnmuseum.party.model.Asset
;
import
cn.wisenergy.chnmuseum.party.service.AssetService
;
import
cn.wisenergy.chnmuseum.party.service.AssetService
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
...
...
src/main/java/cn/wisenergy/chnmuseum/party/service/impl/LearningContentBoardServiceImpl.java
View file @
93db1527
...
@@ -38,7 +38,7 @@ public class LearningContentBoardServiceImpl extends ServiceImpl<LearningContent
...
@@ -38,7 +38,7 @@ public class LearningContentBoardServiceImpl extends ServiceImpl<LearningContent
}
}
@Override
@Override
public
IPage
<
Asset
>
getAssetPageByOrganCode
(
Page
<
ExhibitionBoard
>
page
,
String
organCode
)
{
public
IPage
<
Asset
>
getAssetPageByOrganCode
(
Page
<
Asset
>
page
,
String
organCode
)
{
return
learningContentBoardMapper
.
selectAssetPageByOrganCode
(
page
,
organCode
);
return
learningContentBoardMapper
.
selectAssetPageByOrganCode
(
page
,
organCode
);
}
}
...
...
src/main/java/cn/wisenergy/chnmuseum/party/service/impl/
AssetType
ServiceImpl.java
→
src/main/java/cn/wisenergy/chnmuseum/party/service/impl/
VideoContentCat
ServiceImpl.java
View file @
93db1527
package
cn
.
wisenergy
.
chnmuseum
.
party
.
service
.
impl
;
package
cn
.
wisenergy
.
chnmuseum
.
party
.
service
.
impl
;
import
cn.wisenergy.chnmuseum.party.m
odel.AssetType
;
import
cn.wisenergy.chnmuseum.party.m
apper.VideoContentCatMapper
;
import
cn.wisenergy.chnmuseum.party.m
apper.AssetTypeMapper
;
import
cn.wisenergy.chnmuseum.party.m
odel.VideoContentCat
;
import
cn.wisenergy.chnmuseum.party.service.
AssetType
Service
;
import
cn.wisenergy.chnmuseum.party.service.
VideoContentCat
Service
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
/**
/**
* <p>
* <p
re
>
* 视频分类 服务实现类
* 视频
内容
分类 服务实现类
* </p>
* </p
re
>
*
*
* @author Danny Lee
* @author Danny Lee
* @since 2021-0
3-16
* @since 2021-0
4-01
*/
*/
@Slf4j
@Service
@Service
public
class
AssetTypeServiceImpl
extends
ServiceImpl
<
AssetTypeMapper
,
AssetType
>
implements
AssetType
Service
{
public
class
VideoContentCatServiceImpl
extends
ServiceImpl
<
VideoContentCatMapper
,
VideoContentCat
>
implements
VideoContentCat
Service
{
}
}
src/main/java/cn/wisenergy/chnmuseum/party/service/impl/VideoContentServiceImpl.java
0 → 100644
View file @
93db1527
package
cn
.
wisenergy
.
chnmuseum
.
party
.
service
.
impl
;
import
cn.wisenergy.chnmuseum.party.model.VideoContent
;
import
cn.wisenergy.chnmuseum.party.mapper.VideoContentMapper
;
import
cn.wisenergy.chnmuseum.party.service.VideoContentService
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.beans.factory.annotation.Autowired
;
/**
* <pre>
* 视频内容 服务实现类
* </pre>
*
* @author Danny Lee
* @since 2021-04-01
*/
@Slf4j
@Service
public
class
VideoContentServiceImpl
extends
ServiceImpl
<
VideoContentMapper
,
VideoContent
>
implements
VideoContentService
{
@Autowired
private
VideoContentMapper
videoContentMapper
;
}
src/main/java/cn/wisenergy/chnmuseum/party/web/controller/ChinaMobileRestApiController.java
View file @
93db1527
...
@@ -2,21 +2,18 @@ package cn.wisenergy.chnmuseum.party.web.controller;
...
@@ -2,21 +2,18 @@ package cn.wisenergy.chnmuseum.party.web.controller;
import
cn.wisenergy.chnmuseum.party.auth.SHA256PasswordEncryptionService
;
import
cn.wisenergy.chnmuseum.party.auth.SHA256PasswordEncryptionService
;
import
cn.wisenergy.chnmuseum.party.auth.util.JwtTokenUtil
;
import
cn.wisenergy.chnmuseum.party.auth.util.JwtTokenUtil
;
import
cn.wisenergy.chnmuseum.party.common.enums.FileCatEnum
;
import
cn.wisenergy.chnmuseum.party.common.enums.FileTypeEnum
;
import
cn.wisenergy.chnmuseum.party.common.enums.LanguageEnum
;
import
cn.wisenergy.chnmuseum.party.common.enums.LanguageEnum
;
import
cn.wisenergy.chnmuseum.party.common.mvc.InterfaceException
;
import
cn.wisenergy.chnmuseum.party.common.mvc.InterfaceException
;
import
cn.wisenergy.chnmuseum.party.common.util.TimeUtils
;
import
cn.wisenergy.chnmuseum.party.common.util.TimeUtils
;
import
cn.wisenergy.chnmuseum.party.common.validator.groups.Add
;
import
cn.wisenergy.chnmuseum.party.common.validator.groups.Add
;
import
cn.wisenergy.chnmuseum.party.common.vo.AudioVo
;
import
cn.wisenergy.chnmuseum.party.common.vo.DatumVo
;
import
cn.wisenergy.chnmuseum.party.common.vo.GenericPageParam
;
import
cn.wisenergy.chnmuseum.party.common.vo.GenericPageParam
;
import
cn.wisenergy.chnmuseum.party.common.vo.VideoVo
;
import
cn.wisenergy.chnmuseum.party.model.*
;
import
cn.wisenergy.chnmuseum.party.model.*
;
import
cn.wisenergy.chnmuseum.party.service.*
;
import
cn.wisenergy.chnmuseum.party.service.*
;
import
cn.wisenergy.chnmuseum.party.service.impl.*
;
import
cn.wisenergy.chnmuseum.party.service.impl.*
;
import
cn.wisenergy.chnmuseum.party.web.controller.base.BaseController
;
import
cn.wisenergy.chnmuseum.party.web.controller.base.BaseController
;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.TypeReference
;
import
com.alibaba.fastjson.parser.Feature
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper
;
import
com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper
;
...
@@ -77,6 +74,9 @@ public class ChinaMobileRestApiController extends BaseController {
...
@@ -77,6 +74,9 @@ public class ChinaMobileRestApiController extends BaseController {
@Resource
@Resource
private
AssetServiceImpl
assetService
;
private
AssetServiceImpl
assetService
;
@Resource
private
VideoContentService
videoContentService
;
@Resource
@Resource
private
TBoxOperationServiceImpl
boxOperationService
;
private
TBoxOperationServiceImpl
boxOperationService
;
...
@@ -116,12 +116,6 @@ public class ChinaMobileRestApiController extends BaseController {
...
@@ -116,12 +116,6 @@ public class ChinaMobileRestApiController extends BaseController {
//用户登录是否被锁定 一小时 redisKey 前缀
//用户登录是否被锁定 一小时 redisKey 前缀
private
static
final
String
SHIRO_IS_LOCK
=
"shiro_is_lock_"
;
private
static
final
String
SHIRO_IS_LOCK
=
"shiro_is_lock_"
;
/**
* 机顶盒激活状态查询
*
* @param
* @return
*/
@ApiOperation
(
value
=
"获取机顶盒密钥"
,
notes
=
"获取机顶盒密钥"
)
@ApiOperation
(
value
=
"获取机顶盒密钥"
,
notes
=
"获取机顶盒密钥"
)
@GetMapping
(
"/equitment/key"
)
@GetMapping
(
"/equitment/key"
)
@RequiresPermissions
(
"equitment:key"
)
@RequiresPermissions
(
"equitment:key"
)
...
@@ -147,12 +141,6 @@ public class ChinaMobileRestApiController extends BaseController {
...
@@ -147,12 +141,6 @@ public class ChinaMobileRestApiController extends BaseController {
return
getFailResult
();
return
getFailResult
();
}
}
/**
* 机顶盒激活状态查询
*
* @param
* @return
*/
@ApiOperation
(
value
=
"机顶盒激活状态查询"
,
notes
=
"机顶盒激活状态查询"
)
@ApiOperation
(
value
=
"机顶盒激活状态查询"
,
notes
=
"机顶盒激活状态查询"
)
@GetMapping
(
"/equitment/activity"
)
@GetMapping
(
"/equitment/activity"
)
@RequiresPermissions
(
"/equitment/activity/"
)
@RequiresPermissions
(
"/equitment/activity/"
)
...
@@ -174,14 +162,6 @@ public class ChinaMobileRestApiController extends BaseController {
...
@@ -174,14 +162,6 @@ public class ChinaMobileRestApiController extends BaseController {
return
getFailResult
();
return
getFailResult
();
}
}
/**
* 管理员ajax登录请求 后端用户登录
*
* @param username
* @param password
* @return
*/
@RequestMapping
(
value
=
"/user/webLogin"
,
method
=
RequestMethod
.
POST
)
@RequestMapping
(
value
=
"/user/webLogin"
,
method
=
RequestMethod
.
POST
)
public
ResponseEntity
<
JSONObject
>
login
(
@RequestParam
(
value
=
"username"
)
String
username
,
public
ResponseEntity
<
JSONObject
>
login
(
@RequestParam
(
value
=
"username"
)
String
username
,
@RequestParam
(
value
=
"password"
)
String
password
,
@RequestParam
(
value
=
"password"
)
String
password
,
...
@@ -373,22 +353,18 @@ public class ChinaMobileRestApiController extends BaseController {
...
@@ -373,22 +353,18 @@ public class ChinaMobileRestApiController extends BaseController {
public
Map
<
String
,
Object
>
getExhibitionBoardPageList
(
@RequestParam
(
value
=
"learningContentId"
)
String
learningContentId
)
{
public
Map
<
String
,
Object
>
getExhibitionBoardPageList
(
@RequestParam
(
value
=
"learningContentId"
)
String
learningContentId
)
{
final
IPage
<
ExhibitionBoard
>
page
=
this
.
learningContentBoardService
.
getBoardPageByLearningContentId
(
getPage
(),
learningContentId
,
null
);
final
IPage
<
ExhibitionBoard
>
page
=
this
.
learningContentBoardService
.
getBoardPageByLearningContentId
(
getPage
(),
learningContentId
,
null
);
for
(
ExhibitionBoard
exhibitionBoard
:
page
.
getRecords
())
{
for
(
ExhibitionBoard
exhibitionBoard
:
page
.
getRecords
())
{
if
(
exhibitionBoard
.
getAssetCopyrightOwnerId
()
!=
null
)
{
exhibitionBoard
.
setLearningContentId
(
learningContentId
);
String
name
=
this
.
copyrightOwnerService
.
getById
(
exhibitionBoard
.
getAssetCopyrightOwnerId
()).
getName
();
if
(
exhibitionBoard
.
getVideoContentCopyrightOwnerId
()
!=
null
)
{
String
name
=
this
.
copyrightOwnerService
.
getById
(
exhibitionBoard
.
getVideoContentCopyrightOwnerId
()).
getName
();
exhibitionBoard
.
setBoardCopyrightOwnerName
(
name
);
exhibitionBoard
.
setBoardCopyrightOwnerName
(
name
);
}
}
if
(
exhibitionBoard
.
getExhibitionBoardCatId
()
!=
null
)
{
if
(
exhibitionBoard
.
getExhibitionBoardCatId
()
!=
null
)
{
String
name
=
this
.
exhibitionBoardCatService
.
getById
(
exhibitionBoard
.
getExhibitionBoardCatId
()).
getName
();
String
name
=
this
.
exhibitionBoardCatService
.
getById
(
exhibitionBoard
.
getExhibitionBoardCatId
()).
getName
();
exhibitionBoard
.
setExhibitionBoardCatName
(
name
);
exhibitionBoard
.
setExhibitionBoardCatName
(
name
);
}
}
final
String
assetId
=
exhibitionBoard
.
getAssetId
();
LambdaQueryWrapper
<
Asset
>
assetQueryWrapper
=
Wrappers
.<
Asset
>
lambdaQuery
().
eq
(
Asset:
:
getRefItemId
,
exhibitionBoard
.
getVideoContentId
()).
eq
(
Asset:
:
getFileType
,
FileTypeEnum
.
VIDEO
.
name
());
final
Asset
asset
=
this
.
assetService
.
getById
(
assetId
);
List
<
Asset
>
videoList
=
this
.
assetService
.
list
(
assetQueryWrapper
);
final
String
videoUrl
=
asset
.
getVideoUrl
();
exhibitionBoard
.
setVideoList
(
videoList
);
final
List
<
VideoVo
>
videoVoList
=
JSONObject
.
parseObject
(
videoUrl
,
new
TypeReference
<
List
<
VideoVo
>>()
{
},
Feature
.
OrderedField
);
exhibitionBoard
.
setVideoUrlList
(
videoVoList
.
stream
().
map
(
VideoVo:
:
getFileUrl
).
collect
(
Collectors
.
toList
()));
exhibitionBoard
.
setVideoUrl
(
videoUrl
);
exhibitionBoard
.
setLearningContentId
(
learningContentId
);
}
}
return
getResult
(
page
);
return
getResult
(
page
);
}
}
...
@@ -409,29 +385,32 @@ public class ChinaMobileRestApiController extends BaseController {
...
@@ -409,29 +385,32 @@ public class ChinaMobileRestApiController extends BaseController {
if
(
boardCopyrightOwnerId
!=
null
)
{
if
(
boardCopyrightOwnerId
!=
null
)
{
exhibitionBoard
.
setBoardCopyrightOwnerName
(
this
.
copyrightOwnerService
.
getById
(
boardCopyrightOwnerId
).
getName
());
exhibitionBoard
.
setBoardCopyrightOwnerName
(
this
.
copyrightOwnerService
.
getById
(
boardCopyrightOwnerId
).
getName
());
}
}
if
(
exhibitionBoard
.
getVideoContentCopyrightOwnerId
()
!=
null
)
{
String
name
=
this
.
copyrightOwnerService
.
getById
(
exhibitionBoard
.
getVideoContentCopyrightOwnerId
()).
getName
();
exhibitionBoard
.
setVideoContentCopyrightOwnerName
(
name
);
}
final
String
guideAudioUrl
=
exhibitionBoard
.
getGuideAudioUrl
();
LambdaQueryWrapper
<
Asset
>
assetQueryWrapper
=
Wrappers
.<
Asset
>
lambdaQuery
().
eq
(
Asset:
:
getRefItemId
,
exhibitionBoard
.
getId
());
final
List
<
AudioVo
>
audioVoList
=
JSONObject
.
parseObject
(
guideAudioUrl
,
new
TypeReference
<
List
<
AudioVo
>>()
{
assetQueryWrapper
.
eq
(
Asset:
:
getFileCat
,
FileCatEnum
.
EXHIBITION_BOARD_AUDIO
.
name
());
},
Feature
.
OrderedField
);
final
List
<
Asset
>
audioList
=
this
.
assetService
.
list
(
assetQueryWrapper
);
exhibitionBoard
.
setAudioUrlList
(
audioVoList
.
stream
().
map
(
AudioVo:
:
getFileUrl
).
collect
(
Collectors
.
toList
()));
exhibitionBoard
.
setAudioList
(
audioList
);
final
String
refMaterialUrl
=
exhibitionBoard
.
getRefMaterialUrl
();
assetQueryWrapper
.
clear
();
final
List
<
AudioVo
>
refMaterialVoList
=
JSONObject
.
parseObject
(
refMaterialUrl
,
new
TypeReference
<
List
<
AudioVo
>>()
{
assetQueryWrapper
=
Wrappers
.<
Asset
>
lambdaQuery
().
eq
(
Asset:
:
getRefItemId
,
exhibitionBoard
.
getId
());
},
Feature
.
OrderedField
);
assetQueryWrapper
.
eq
(
Asset:
:
getFileCat
,
FileCatEnum
.
EXHIBITION_BOARD_DATUM
.
name
());
exhibitionBoard
.
setMaterialUrlList
(
refMaterialVoList
.
stream
().
map
(
AudioVo:
:
getFileUrl
).
collect
(
Collectors
.
toList
()));
final
List
<
Asset
>
datumList
=
this
.
assetService
.
list
(
assetQueryWrapper
);
exhibitionBoard
.
setDatumList
(
datumList
);
String
assetId
=
exhibitionBoard
.
getAssetId
();
if
(
assetId
!=
null
)
{
final
String
videoContentId
=
exhibitionBoard
.
getVideoContentId
();
final
Asset
asset
=
this
.
assetService
.
getById
(
assetId
);
if
(
videoContentId
!=
null
)
{
exhibitionBoard
.
setAssetName
(
this
.
assetService
.
getById
(
assetId
).
getName
());
final
VideoContent
videoContent
=
this
.
videoContentService
.
getById
(
videoContentId
);
final
String
assetCopyrightOwnerId
=
asset
.
getAssetCopyrightOwnerId
();
exhibitionBoard
.
setVideoContentName
(
videoContent
.
getName
());
final
String
assetCopyrightOwnerName
=
this
.
copyrightOwnerService
.
getById
(
assetCopyrightOwnerId
).
getName
();
exhibitionBoard
.
setAssetCopyrightOwnerName
(
assetCopyrightOwnerName
);
assetQueryWrapper
.
clear
();
assetQueryWrapper
=
Wrappers
.<
Asset
>
lambdaQuery
().
eq
(
Asset:
:
getRefItemId
,
videoContentId
);
final
String
videoUrl
=
asset
.
getVideoUrl
();
assetQueryWrapper
.
eq
(
Asset:
:
getFileCat
,
FileCatEnum
.
VIDEO_CONTENT
.
name
());
final
List
<
VideoVo
>
videoVoList
=
JSONObject
.
parseObject
(
videoUrl
,
new
TypeReference
<
List
<
VideoVo
>>()
{
final
List
<
Asset
>
videoList
=
this
.
assetService
.
list
(
assetQueryWrapper
);
},
Feature
.
OrderedField
);
exhibitionBoard
.
setVideoList
(
videoList
);
exhibitionBoard
.
setVideoUrlList
(
videoVoList
.
stream
().
map
(
VideoVo:
:
getFileUrl
).
collect
(
Collectors
.
toList
()));
}
}
return
getResult
(
exhibitionBoard
);
return
getResult
(
exhibitionBoard
);
}
}
...
@@ -547,11 +526,10 @@ public class ChinaMobileRestApiController extends BaseController {
...
@@ -547,11 +526,10 @@ public class ChinaMobileRestApiController extends BaseController {
@ApiOperation
(
value
=
"展板参考资料查询"
,
notes
=
"展板参考资料查询"
)
@ApiOperation
(
value
=
"展板参考资料查询"
,
notes
=
"展板参考资料查询"
)
public
Map
<
String
,
Object
>
getBoardRefMaterial
(
@PathVariable
(
value
=
"boardId"
)
String
boardId
)
{
public
Map
<
String
,
Object
>
getBoardRefMaterial
(
@PathVariable
(
value
=
"boardId"
)
String
boardId
)
{
final
ExhibitionBoard
exhibitionBoard
=
this
.
exhibitionBoardService
.
getById
(
boardId
);
final
ExhibitionBoard
exhibitionBoard
=
this
.
exhibitionBoardService
.
getById
(
boardId
);
final
LambdaQueryWrapper
<
Asset
>
assetQueryWrapper
=
Wrappers
.<
Asset
>
lambdaQuery
().
eq
(
Asset:
:
getRefItemId
,
exhibitionBoard
.
getId
());
final
String
refMaterialUrl
=
exhibitionBoard
.
getRefMaterialUrl
();
assetQueryWrapper
.
eq
(
Asset:
:
getFileCat
,
FileCatEnum
.
EXHIBITION_BOARD_DATUM
.
name
());
final
List
<
DatumVo
>
datumVoList
=
JSONObject
.
parseObject
(
refMaterialUrl
,
new
TypeReference
<
List
<
DatumVo
>>()
{
final
List
<
Asset
>
datumList
=
this
.
assetService
.
list
(
assetQueryWrapper
);
},
Feature
.
OrderedField
);
return
getResult
(
datumList
);
return
getResult
(
datumVoList
);
}
}
@ApiImplicitParams
(
value
=
{
@ApiImplicitParams
(
value
=
{
...
...
src/main/java/cn/wisenergy/chnmuseum/party/web/controller/CopyrightOwnerController.java
View file @
93db1527
...
@@ -5,7 +5,7 @@ import cn.wisenergy.chnmuseum.party.common.util.TimeUtils;
...
@@ -5,7 +5,7 @@ import cn.wisenergy.chnmuseum.party.common.util.TimeUtils;
import
cn.wisenergy.chnmuseum.party.common.validator.groups.Add
;
import
cn.wisenergy.chnmuseum.party.common.validator.groups.Add
;
import
cn.wisenergy.chnmuseum.party.common.validator.groups.Update
;
import
cn.wisenergy.chnmuseum.party.common.validator.groups.Update
;
import
cn.wisenergy.chnmuseum.party.common.vo.GenericPageParam
;
import
cn.wisenergy.chnmuseum.party.common.vo.GenericPageParam
;
import
cn.wisenergy.chnmuseum.party.model.
AssetType
;
import
cn.wisenergy.chnmuseum.party.model.
VideoContentCat
;
import
cn.wisenergy.chnmuseum.party.model.CopyrightOwner
;
import
cn.wisenergy.chnmuseum.party.model.CopyrightOwner
;
import
cn.wisenergy.chnmuseum.party.model.CopyrightOwnerAssetType
;
import
cn.wisenergy.chnmuseum.party.model.CopyrightOwnerAssetType
;
import
cn.wisenergy.chnmuseum.party.model.ExhibitionBoard
;
import
cn.wisenergy.chnmuseum.party.model.ExhibitionBoard
;
...
@@ -182,8 +182,8 @@ public class CopyrightOwnerController extends BaseController {
...
@@ -182,8 +182,8 @@ public class CopyrightOwnerController extends BaseController {
List
<
CopyrightOwnerAssetType
>
CopyrightOwnerAssetTypeList
=
this
.
copyrightOwnerAssetTypeService
.
list
(
Wrappers
.<
CopyrightOwnerAssetType
>
lambdaQuery
().
eq
(
CopyrightOwnerAssetType:
:
getCopyrightOwnerId
,
copyrightOwner
.
getId
()));
List
<
CopyrightOwnerAssetType
>
CopyrightOwnerAssetTypeList
=
this
.
copyrightOwnerAssetTypeService
.
list
(
Wrappers
.<
CopyrightOwnerAssetType
>
lambdaQuery
().
eq
(
CopyrightOwnerAssetType:
:
getCopyrightOwnerId
,
copyrightOwner
.
getId
()));
if
(!
CopyrightOwnerAssetTypeList
.
isEmpty
())
{
if
(!
CopyrightOwnerAssetTypeList
.
isEmpty
())
{
Set
<
String
>
idList
=
CopyrightOwnerAssetTypeList
.
stream
().
map
(
CopyrightOwnerAssetType:
:
getAssetTypeId
).
collect
(
Collectors
.
toSet
());
Set
<
String
>
idList
=
CopyrightOwnerAssetTypeList
.
stream
().
map
(
CopyrightOwnerAssetType:
:
getAssetTypeId
).
collect
(
Collectors
.
toSet
());
List
<
AssetType
>
assetType
List
=
this
.
assetTypeService
.
listByIds
(
idList
);
List
<
VideoContentCat
>
videoContentCat
List
=
this
.
assetTypeService
.
listByIds
(
idList
);
String
assetTypeNameList
=
assetTypeList
.
stream
().
map
(
AssetType
:
:
getName
).
collect
(
Collectors
.
joining
(
"、"
));
String
assetTypeNameList
=
videoContentCatList
.
stream
().
map
(
VideoContentCat
:
:
getName
).
collect
(
Collectors
.
joining
(
"、"
));
copyrightOwner
.
setAssetTypeNames
(
assetTypeNameList
);
copyrightOwner
.
setAssetTypeNames
(
assetTypeNameList
);
}
}
}
else
if
(
CopyrightOwnerTypeEnum
.
EXHIBITION_BOARD
.
name
().
equals
(
genericPageParam
.
getOwnerType
()))
{
}
else
if
(
CopyrightOwnerTypeEnum
.
EXHIBITION_BOARD
.
name
().
equals
(
genericPageParam
.
getOwnerType
()))
{
...
@@ -191,8 +191,8 @@ public class CopyrightOwnerController extends BaseController {
...
@@ -191,8 +191,8 @@ public class CopyrightOwnerController extends BaseController {
List
<
ExhibitionBoard
>
exhibitionBoardList
=
this
.
exhibitionBoardService
.
list
(
lambdaQueryWrapper
);
List
<
ExhibitionBoard
>
exhibitionBoardList
=
this
.
exhibitionBoardService
.
list
(
lambdaQueryWrapper
);
if
(!
exhibitionBoardList
.
isEmpty
())
{
if
(!
exhibitionBoardList
.
isEmpty
())
{
Set
<
String
>
assetTypeIdList
=
exhibitionBoardList
.
stream
().
map
(
ExhibitionBoard:
:
getAssetTypeId
).
collect
(
Collectors
.
toSet
());
Set
<
String
>
assetTypeIdList
=
exhibitionBoardList
.
stream
().
map
(
ExhibitionBoard:
:
getAssetTypeId
).
collect
(
Collectors
.
toSet
());
List
<
AssetType
>
assetType
List
=
this
.
assetTypeService
.
listByIds
(
assetTypeIdList
);
List
<
VideoContentCat
>
videoContentCat
List
=
this
.
assetTypeService
.
listByIds
(
assetTypeIdList
);
String
assetTypeNames
=
assetTypeList
.
stream
().
map
(
AssetType
:
:
getName
).
collect
(
Collectors
.
joining
(
"、"
));
String
assetTypeNames
=
videoContentCatList
.
stream
().
map
(
VideoContentCat
:
:
getName
).
collect
(
Collectors
.
joining
(
"、"
));
copyrightOwner
.
setAssetTypeNames
(
assetTypeNames
);
copyrightOwner
.
setAssetTypeNames
(
assetTypeNames
);
}
}
}
}
...
@@ -215,9 +215,9 @@ public class CopyrightOwnerController extends BaseController {
...
@@ -215,9 +215,9 @@ public class CopyrightOwnerController extends BaseController {
if
(!
copyrightOwnerAssetTypeList
.
isEmpty
())
{
if
(!
copyrightOwnerAssetTypeList
.
isEmpty
())
{
List
<
String
>
assetTypeIdArrayList
=
copyrightOwnerAssetTypeList
.
stream
().
map
(
CopyrightOwnerAssetType:
:
getAssetTypeId
).
distinct
().
collect
(
Collectors
.
toList
());
List
<
String
>
assetTypeIdArrayList
=
copyrightOwnerAssetTypeList
.
stream
().
map
(
CopyrightOwnerAssetType:
:
getAssetTypeId
).
distinct
().
collect
(
Collectors
.
toList
());
copyrightOwner
.
setAssetTypeIdList
(
assetTypeIdArrayList
);
copyrightOwner
.
setAssetTypeIdList
(
assetTypeIdArrayList
);
final
List
<
AssetType
>
assetType
List
=
this
.
assetTypeService
.
listByIds
(
assetTypeIdArrayList
);
final
List
<
VideoContentCat
>
videoContentCat
List
=
this
.
assetTypeService
.
listByIds
(
assetTypeIdArrayList
);
if
(!
assetType
List
.
isEmpty
())
{
if
(!
videoContentCat
List
.
isEmpty
())
{
final
List
<
String
>
assetTypeNameList
=
assetTypeList
.
stream
().
map
(
AssetType
:
:
getName
).
collect
(
Collectors
.
toList
());
final
List
<
String
>
assetTypeNameList
=
videoContentCatList
.
stream
().
map
(
VideoContentCat
:
:
getName
).
collect
(
Collectors
.
toList
());
copyrightOwner
.
setAssetTypeNameList
(
assetTypeNameList
);
copyrightOwner
.
setAssetTypeNameList
(
assetTypeNameList
);
}
}
}
}
...
...
src/main/java/cn/wisenergy/chnmuseum/party/web/controller/ExhibitionBoardController.java
View file @
93db1527
package
cn
.
wisenergy
.
chnmuseum
.
party
.
web
.
controller
;
package
cn
.
wisenergy
.
chnmuseum
.
party
.
web
.
controller
;
import
cn.wisenergy.chnmuseum.party.common.dfs.FastDFSUtils
;
import
cn.wisenergy.chnmuseum.party.common.dfs.FastDFSUtils
;
import
cn.wisenergy.chnmuseum.party.common.enums.AuditOperationEnum
;
import
cn.wisenergy.chnmuseum.party.common.enums.*
;
import
cn.wisenergy.chnmuseum.party.common.enums.AuditStatusEnum
;
import
cn.wisenergy.chnmuseum.party.common.enums.AuditTypeEnum
;
import
cn.wisenergy.chnmuseum.party.common.enums.FileTypeEnum
;
import
cn.wisenergy.chnmuseum.party.common.validator.groups.Add
;
import
cn.wisenergy.chnmuseum.party.common.validator.groups.Add
;
import
cn.wisenergy.chnmuseum.party.common.validator.groups.Update
;
import
cn.wisenergy.chnmuseum.party.common.validator.groups.Update
;
import
cn.wisenergy.chnmuseum.party.common.vo.AudioVo
;
import
cn.wisenergy.chnmuseum.party.common.vo.DatumVo
;
import
cn.wisenergy.chnmuseum.party.common.vo.GenericPageParam
;
import
cn.wisenergy.chnmuseum.party.common.vo.GenericPageParam
;
import
cn.wisenergy.chnmuseum.party.common.vo.VideoVo
;
import
cn.wisenergy.chnmuseum.party.model.Asset
;
import
cn.wisenergy.chnmuseum.party.model.Asset
;
import
cn.wisenergy.chnmuseum.party.model.Audit
;
import
cn.wisenergy.chnmuseum.party.model.Audit
;
import
cn.wisenergy.chnmuseum.party.model.ExhibitionBoard
;
import
cn.wisenergy.chnmuseum.party.model.ExhibitionBoard
;
import
cn.wisenergy.chnmuseum.party.model.VideoContent
;
import
cn.wisenergy.chnmuseum.party.service.*
;
import
cn.wisenergy.chnmuseum.party.service.*
;
import
cn.wisenergy.chnmuseum.party.web.controller.base.BaseController
;
import
cn.wisenergy.chnmuseum.party.web.controller.base.BaseController
;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.TypeReference
;
import
com.alibaba.fastjson.parser.Feature
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.github.tobato.fastdfs.domain.fdfs.MetaData
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiImplicitParams
;
import
io.swagger.annotations.ApiImplicitParams
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.io.FilenameUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.shiro.authz.annotation.RequiresPermissions
;
import
org.apache.shiro.authz.annotation.RequiresPermissions
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
import
javax.annotation.Resource
;
import
java
x.validation.constraints.NotNull
;
import
java
.util.List
;
import
java.util.
*
;
import
java.util.
Map
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
/**
/**
...
@@ -60,6 +50,8 @@ public class ExhibitionBoardController extends BaseController {
...
@@ -60,6 +50,8 @@ public class ExhibitionBoardController extends BaseController {
@Resource
@Resource
private
CopyrightOwnerService
copyrightOwnerService
;
private
CopyrightOwnerService
copyrightOwnerService
;
@Resource
@Resource
private
VideoContentService
videoContentService
;
@Resource
private
AuditService
auditService
;
private
AuditService
auditService
;
@Resource
@Resource
private
AssetService
assetService
;
private
AssetService
assetService
;
...
@@ -68,57 +60,34 @@ public class ExhibitionBoardController extends BaseController {
...
@@ -68,57 +60,34 @@ public class ExhibitionBoardController extends BaseController {
@RequiresPermissions
(
"exhibition:board:save"
)
@RequiresPermissions
(
"exhibition:board:save"
)
@ApiOperation
(
value
=
"添加展板"
,
notes
=
"添加展板"
)
@ApiOperation
(
value
=
"添加展板"
,
notes
=
"添加展板"
)
public
Map
<
String
,
Object
>
saveExhibitionBoard
(
@Validated
(
value
=
{
Add
.
class
})
ExhibitionBoard
exhibitionBoard
)
{
public
Map
<
String
,
Object
>
saveExhibitionBoard
(
@Validated
(
value
=
{
Add
.
class
})
ExhibitionBoard
exhibitionBoard
)
{
final
List
<
AudioVo
>
audioFilesMetadata
=
new
ArrayList
<>(
exhibitionBoard
.
getAudioUrlList
().
size
());
final
List
<
String
>
audioIdList
=
exhibitionBoard
.
getAudioIdList
();
final
List
<
String
>
audioUrlList
=
exhibitionBoard
.
getAudioUrlList
();
if
(
audioIdList
==
null
||
audioIdList
.
isEmpty
())
{
for
(
String
audioUrl
:
audioUrlList
)
{
return
getFailResult
(
"400"
,
"导览音频文件必须上传"
);
final
Set
<
MetaData
>
metaData
=
FastDFSUtils
.
getFileMetaData
(
audioUrl
);
String
fileName
=
metaData
.
stream
().
filter
(
x
->
"fileName"
.
equals
(
x
.
getName
())).
map
(
MetaData:
:
getValue
).
findFirst
().
get
();
Long
fileSize
=
metaData
.
stream
().
filter
(
x
->
"fileSize"
.
equals
(
x
.
getName
())).
map
(
MetaData:
:
getValue
).
map
(
Long:
:
parseLong
).
findFirst
().
get
();
String
fileExtName
=
metaData
.
stream
().
filter
(
x
->
"fileExtName"
.
equals
(
x
.
getName
())).
map
(
MetaData:
:
getValue
).
findFirst
().
get
();
String
updateTime
=
metaData
.
stream
().
filter
(
x
->
"updateTime"
.
equals
(
x
.
getName
())).
map
(
MetaData:
:
getValue
).
findFirst
().
get
();
audioFilesMetadata
.
add
(
AudioVo
.
builder
()
.
fileName
(
fileName
)
.
fileType
(
FileTypeEnum
.
AUDIO
.
name
())
.
fileExtName
(
fileExtName
)
.
fileSize
(
fileSize
)
.
fileUrl
(
audioUrl
)
.
updateTime
(
updateTime
)
.
build
());
}
}
exhibitionBoard
.
setGuideAudioUrl
(
JSONObject
.
toJSONString
(
audioFilesMetadata
));
final
List
<
String
>
datumIdList
=
exhibitionBoard
.
getDatumIdList
();
if
(
datumIdList
==
null
||
datumIdList
.
isEmpty
())
{
final
List
<
DatumVo
>
datumFilesMetadata
=
new
ArrayList
<>(
exhibitionBoard
.
getMaterialUrlList
().
size
());
return
getFailResult
(
"400"
,
"参考资料文件必须上传"
);
final
List
<
String
>
materialUrlList
=
exhibitionBoard
.
getMaterialUrlList
();
for
(
String
materialUrl
:
materialUrlList
)
{
// 原始文件名
Set
<
MetaData
>
metaData
=
FastDFSUtils
.
getFileMetaData
(
materialUrl
);
String
fileName
=
metaData
.
stream
().
filter
(
x
->
"fileName"
.
equals
(
x
.
getName
())).
map
(
MetaData:
:
getValue
).
findFirst
().
get
();
Long
fileSize
=
metaData
.
stream
().
filter
(
x
->
"fileSize"
.
equals
(
x
.
getName
())).
map
(
MetaData:
:
getValue
).
map
(
Long:
:
parseLong
).
findFirst
().
get
();
String
updateTime
=
metaData
.
stream
().
filter
(
x
->
"updateTime"
.
equals
(
x
.
getName
())).
map
(
MetaData:
:
getValue
).
findFirst
().
get
();
Optional
<
String
>
optionalFileExtName
=
metaData
.
stream
().
filter
(
x
->
"fileExtName"
.
equals
(
x
.
getName
())).
map
(
MetaData:
:
getValue
).
findFirst
();
Optional
<
String
>
optionalMd5
=
metaData
.
stream
().
filter
(
x
->
"MD5"
.
equals
(
x
.
getName
())).
map
(
MetaData:
:
getValue
).
findFirst
();
final
DatumVo
datumVo
=
DatumVo
.
builder
()
.
fileName
(
fileName
)
.
fileType
(
FileTypeEnum
.
DATUM
.
name
())
.
fileSize
(
fileSize
)
.
fileUrl
(
materialUrl
)
.
updateTime
(
updateTime
)
.
build
();
if
(
optionalFileExtName
.
isPresent
())
{
datumVo
.
setFileExtName
(
optionalFileExtName
.
get
());
}
else
{
datumVo
.
setFileExtName
(
FilenameUtils
.
getExtension
(
fileName
));
}
optionalMd5
.
ifPresent
(
datumVo:
:
setMd5
);
datumFilesMetadata
.
add
(
datumVo
);
}
}
exhibitionBoard
.
setRefMaterialUrl
(
JSONObject
.
toJSONString
(
datumFilesMetadata
));
exhibitionBoard
.
setAuditStatus
(
AuditStatusEnum
.
TBC
.
name
());
exhibitionBoard
.
setAuditStatus
(
AuditStatusEnum
.
TBC
.
name
());
exhibitionBoard
.
setPublished
(
false
);
exhibitionBoard
.
setPublished
(
false
);
// 保存业务节点信息
// 保存业务节点信息
boolean
result
=
exhibitionBoardService
.
save
(
exhibitionBoard
);
boolean
result
=
exhibitionBoardService
.
save
(
exhibitionBoard
);
// 返回操作结果
// 返回操作结果
if
(
result
)
{
if
(
result
)
{
for
(
String
audioId
:
audioIdList
)
{
final
Asset
asset
=
this
.
assetService
.
getById
(
audioId
);
asset
.
setFileType
(
FileTypeEnum
.
AUDIO
.
name
());
asset
.
setFileCat
(
FileCatEnum
.
EXHIBITION_BOARD_AUDIO
.
name
());
asset
.
setRefItemId
(
exhibitionBoard
.
getId
());
this
.
assetService
.
updateById
(
asset
);
}
for
(
String
datumId
:
datumIdList
)
{
final
Asset
asset
=
this
.
assetService
.
getById
(
datumId
);
asset
.
setFileCat
(
FileCatEnum
.
EXHIBITION_BOARD_DATUM
.
name
());
asset
.
setRefItemId
(
exhibitionBoard
.
getId
());
this
.
assetService
.
updateById
(
asset
);
}
final
Audit
audit
=
Audit
.
builder
().
content
(
""
)
final
Audit
audit
=
Audit
.
builder
().
content
(
""
)
.
isDeleted
(
false
)
.
isDeleted
(
false
)
.
operation
(
AuditOperationEnum
.
ADD
.
name
())
.
operation
(
AuditOperationEnum
.
ADD
.
name
())
...
@@ -137,59 +106,53 @@ public class ExhibitionBoardController extends BaseController {
...
@@ -137,59 +106,53 @@ public class ExhibitionBoardController extends BaseController {
@RequiresPermissions
(
"exhibition:board:update"
)
@RequiresPermissions
(
"exhibition:board:update"
)
@ApiOperation
(
value
=
"修改展板信息"
,
notes
=
"修改展板信息"
)
@ApiOperation
(
value
=
"修改展板信息"
,
notes
=
"修改展板信息"
)
public
Map
<
String
,
Object
>
updateExhibitionBoard
(
@Validated
(
value
=
{
Update
.
class
})
ExhibitionBoard
exhibitionBoard
)
{
public
Map
<
String
,
Object
>
updateExhibitionBoard
(
@Validated
(
value
=
{
Update
.
class
})
ExhibitionBoard
exhibitionBoard
)
{
final
List
<
String
>
audioUrlList
=
exhibitionBoard
.
getAudioUrlList
();
exhibitionBoard
.
setAuditStatus
(
AuditStatusEnum
.
TBC
.
name
());
if
(
audioUrlList
!=
null
&&
!
audioUrlList
.
isEmpty
())
{
exhibitionBoard
.
setPublished
(
false
);
final
List
<
AudioVo
>
audioFilesMetadata
=
new
ArrayList
<>(
audioUrlList
.
size
());
boolean
flag
=
exhibitionBoardService
.
updateById
(
exhibitionBoard
);
for
(
String
audioUrl
:
audioUrlList
)
{
if
(
flag
)
{
final
Set
<
MetaData
>
metaData
=
FastDFSUtils
.
getFileMetaData
(
audioUrl
);
final
List
<
String
>
audioIdList
=
exhibitionBoard
.
getAudioIdList
();
String
fileName
=
metaData
.
stream
().
filter
(
x
->
"fileName"
.
equals
(
x
.
getName
())).
map
(
MetaData:
:
getValue
).
findFirst
().
get
();
if
(
audioIdList
!=
null
&&
!
audioIdList
.
isEmpty
())
{
Long
fileSize
=
metaData
.
stream
().
filter
(
x
->
"fileSize"
.
equals
(
x
.
getName
())).
map
(
MetaData:
:
getValue
).
map
(
Long:
:
parseLong
).
findFirst
().
get
();
final
LambdaQueryWrapper
<
Asset
>
assetQueryWrapper
=
Wrappers
.<
Asset
>
lambdaQuery
().
eq
(
Asset:
:
getRefItemId
,
exhibitionBoard
.
getId
());
String
fileExtName
=
metaData
.
stream
().
filter
(
x
->
"fileExtName"
.
equals
(
x
.
getName
())).
map
(
MetaData:
:
getValue
).
findFirst
().
get
();
assetQueryWrapper
.
eq
(
Asset:
:
getFileCat
,
FileCatEnum
.
EXHIBITION_BOARD_AUDIO
.
name
());
String
updateTime
=
metaData
.
stream
().
filter
(
x
->
"updateTime"
.
equals
(
x
.
getName
())).
map
(
MetaData:
:
getValue
).
findFirst
().
get
();
final
List
<
Asset
>
assetList
=
this
.
assetService
.
list
(
assetQueryWrapper
);
audioFilesMetadata
.
add
(
AudioVo
.
builder
()
final
Map
<
String
,
String
>
collect
=
assetList
.
stream
().
collect
(
Collectors
.
toMap
(
Asset:
:
getId
,
Asset:
:
getFileUrl
));
.
fileName
(
fileName
)
for
(
String
audioId
:
audioIdList
)
{
.
fileType
(
FileTypeEnum
.
AUDIO
.
name
())
final
Asset
asset
=
this
.
assetService
.
getById
(
audioId
);
.
fileExtName
(
fileExtName
)
asset
.
setFileType
(
FileTypeEnum
.
AUDIO
.
name
());
.
fileSize
(
fileSize
)
asset
.
setFileCat
(
FileCatEnum
.
EXHIBITION_BOARD_AUDIO
.
name
());
.
fileUrl
(
audioUrl
)
asset
.
setRefItemId
(
exhibitionBoard
.
getId
());
.
updateTime
(
updateTime
)
this
.
assetService
.
updateById
(
asset
);
.
build
());
collect
.
remove
(
audioId
);
}
collect
.
forEach
((
k
,
v
)
->
{
final
boolean
deleted
=
this
.
assetService
.
removeById
(
k
);
if
(
deleted
)
{
FastDFSUtils
.
deleteFile
(
v
);
}
});
}
}
exhibitionBoard
.
setGuideAudioUrl
(
JSONObject
.
toJSONString
(
audioFilesMetadata
));
}
final
List
<
String
>
materialUrlList
=
exhibitionBoard
.
getMaterialUrlList
();
final
List
<
String
>
datumIdList
=
exhibitionBoard
.
getDatumIdList
();
if
(
materialUrlList
!=
null
&&
!
materialUrlList
.
isEmpty
())
{
if
(
datumIdList
!=
null
&&
!
datumIdList
.
isEmpty
())
{
final
List
<
DatumVo
>
datumFilesMetadata
=
new
ArrayList
<>(
materialUrlList
.
size
());
final
LambdaQueryWrapper
<
Asset
>
assetQueryWrapper
=
Wrappers
.<
Asset
>
lambdaQuery
().
eq
(
Asset:
:
getRefItemId
,
exhibitionBoard
.
getId
());
for
(
String
materialUrl
:
materialUrlList
)
{
assetQueryWrapper
.
eq
(
Asset:
:
getFileCat
,
FileCatEnum
.
EXHIBITION_BOARD_DATUM
.
name
());
Set
<
MetaData
>
metaData
=
FastDFSUtils
.
getFileMetaData
(
materialUrl
);
final
List
<
Asset
>
assetList
=
this
.
assetService
.
list
(
assetQueryWrapper
);
String
fileName
=
metaData
.
stream
().
filter
(
x
->
"fileName"
.
equals
(
x
.
getName
())).
map
(
MetaData:
:
getValue
).
findFirst
().
get
();
final
Map
<
String
,
String
>
collect
=
assetList
.
stream
().
collect
(
Collectors
.
toMap
(
Asset:
:
getId
,
Asset:
:
getFileUrl
));
Long
fileSize
=
metaData
.
stream
().
filter
(
x
->
"fileSize"
.
equals
(
x
.
getName
())).
map
(
MetaData:
:
getValue
).
map
(
Long:
:
parseLong
).
findFirst
().
get
();
for
(
String
datumId
:
datumIdList
)
{
String
updateTime
=
metaData
.
stream
().
filter
(
x
->
"updateTime"
.
equals
(
x
.
getName
())).
map
(
MetaData:
:
getValue
).
findFirst
().
get
();
final
Asset
asset
=
this
.
assetService
.
getById
(
datumId
);
Optional
<
String
>
optionalFileExtName
=
metaData
.
stream
().
filter
(
x
->
"fileExtName"
.
equals
(
x
.
getName
())).
map
(
MetaData:
:
getValue
).
findFirst
();
asset
.
setFileCat
(
FileCatEnum
.
EXHIBITION_BOARD_DATUM
.
name
());
Optional
<
String
>
optionalMd5
=
metaData
.
stream
().
filter
(
x
->
"MD5"
.
equals
(
x
.
getName
())).
map
(
MetaData:
:
getValue
).
findFirst
();
asset
.
setRefItemId
(
exhibitionBoard
.
getId
());
final
DatumVo
datumVo
=
DatumVo
.
builder
()
this
.
assetService
.
updateById
(
asset
);
.
fileName
(
fileName
)
collect
.
remove
(
datumId
);
.
fileType
(
FileTypeEnum
.
DATUM
.
name
())
.
fileSize
(
fileSize
)
.
fileUrl
(
materialUrl
)
.
updateTime
(
updateTime
)
.
build
();
if
(
optionalFileExtName
.
isPresent
())
{
datumVo
.
setFileExtName
(
optionalFileExtName
.
get
());
}
else
{
datumVo
.
setFileExtName
(
FilenameUtils
.
getExtension
(
fileName
));
}
}
optionalMd5
.
ifPresent
(
datumVo:
:
setMd5
);
collect
.
forEach
((
k
,
v
)
->
{
datumFilesMetadata
.
add
(
datumVo
);
final
boolean
deleted
=
this
.
assetService
.
removeById
(
k
);
if
(
deleted
)
{
FastDFSUtils
.
deleteFile
(
v
);
}
});
}
}
exhibitionBoard
.
setRefMaterialUrl
(
JSONObject
.
toJSONString
(
datumFilesMetadata
));
}
exhibitionBoard
.
setAuditStatus
(
AuditStatusEnum
.
TBC
.
name
());
exhibitionBoard
.
setPublished
(
false
);
boolean
flag
=
exhibitionBoardService
.
updateById
(
exhibitionBoard
);
if
(
flag
)
{
final
Audit
audit
=
Audit
.
builder
().
content
(
""
)
final
Audit
audit
=
Audit
.
builder
().
content
(
""
)
.
isDeleted
(
false
)
.
isDeleted
(
false
)
.
operation
(
AuditOperationEnum
.
EDIT
.
name
())
.
operation
(
AuditOperationEnum
.
EDIT
.
name
())
...
@@ -204,24 +167,6 @@ public class ExhibitionBoardController extends BaseController {
...
@@ -204,24 +167,6 @@ public class ExhibitionBoardController extends BaseController {
return
getFailResult
();
return
getFailResult
();
}
}
@PutMapping
(
"/updateAuditStatus/{id}"
)
@RequiresPermissions
(
"exhibition:board:update:audit:status"
)
@ApiOperation
(
value
=
"更新展板审核状态"
,
notes
=
"更新展板审核状态"
)
@ApiImplicitParams
(
value
=
{
@ApiImplicitParam
(
name
=
"id"
,
value
=
"标识ID"
,
dataType
=
"String"
,
paramType
=
"path"
),
@ApiImplicitParam
(
name
=
"status"
,
value
=
"状态"
,
paramType
=
"query"
,
dataType
=
"String"
)
})
public
Map
<
String
,
Object
>
updateStatus
(
@NotNull
(
message
=
"展板ID不能为空"
)
@PathVariable
(
"id"
)
String
id
,
@RequestParam
(
"status"
)
AuditStatusEnum
status
)
{
ExhibitionBoard
exhibitionBoard
=
new
ExhibitionBoard
();
exhibitionBoard
.
setId
(
id
);
exhibitionBoard
.
setAuditStatus
(
status
.
name
());
boolean
flag
=
exhibitionBoardService
.
updateById
(
exhibitionBoard
);
if
(
flag
)
{
return
getSuccessResult
();
}
return
getFailResult
();
}
@DeleteMapping
(
"/delete/{id}"
)
@DeleteMapping
(
"/delete/{id}"
)
@RequiresPermissions
(
"exhibition:board:delete"
)
@RequiresPermissions
(
"exhibition:board:delete"
)
@ApiOperation
(
value
=
"根据ID删除展板"
,
notes
=
"根据ID删除展板"
)
@ApiOperation
(
value
=
"根据ID删除展板"
,
notes
=
"根据ID删除展板"
)
...
@@ -262,10 +207,14 @@ public class ExhibitionBoardController extends BaseController {
...
@@ -262,10 +207,14 @@ public class ExhibitionBoardController extends BaseController {
}
}
List
<
ExhibitionBoard
>
exhibitionBoardList
=
exhibitionBoardService
.
list
();
List
<
ExhibitionBoard
>
exhibitionBoardList
=
exhibitionBoardService
.
list
();
for
(
ExhibitionBoard
exhibitionBoard
:
exhibitionBoardList
)
{
for
(
ExhibitionBoard
exhibitionBoard
:
exhibitionBoardList
)
{
if
(
exhibitionBoard
.
get
Asset
CopyrightOwnerId
()
!=
null
)
{
if
(
exhibitionBoard
.
get
Board
CopyrightOwnerId
()
!=
null
)
{
String
name
=
this
.
copyrightOwnerService
.
getById
(
exhibitionBoard
.
get
Asset
CopyrightOwnerId
()).
getName
();
String
name
=
this
.
copyrightOwnerService
.
getById
(
exhibitionBoard
.
get
Board
CopyrightOwnerId
()).
getName
();
exhibitionBoard
.
setBoardCopyrightOwnerName
(
name
);
exhibitionBoard
.
setBoardCopyrightOwnerName
(
name
);
}
}
if
(
exhibitionBoard
.
getVideoContentCopyrightOwnerId
()
!=
null
)
{
String
name
=
this
.
copyrightOwnerService
.
getById
(
exhibitionBoard
.
getVideoContentCopyrightOwnerId
()).
getName
();
exhibitionBoard
.
setVideoContentCopyrightOwnerName
(
name
);
}
if
(
exhibitionBoard
.
getExhibitionBoardCatId
()
!=
null
)
{
if
(
exhibitionBoard
.
getExhibitionBoardCatId
()
!=
null
)
{
String
name
=
this
.
exhibitionBoardCatService
.
getById
(
exhibitionBoard
.
getExhibitionBoardCatId
()).
getName
();
String
name
=
this
.
exhibitionBoardCatService
.
getById
(
exhibitionBoard
.
getExhibitionBoardCatId
()).
getName
();
exhibitionBoard
.
setExhibitionBoardCatName
(
name
);
exhibitionBoard
.
setExhibitionBoardCatName
(
name
);
...
@@ -293,7 +242,7 @@ public class ExhibitionBoardController extends BaseController {
...
@@ -293,7 +242,7 @@ public class ExhibitionBoardController extends BaseController {
}
}
// 对版权方模糊查询
// 对版权方模糊查询
if
(
StringUtils
.
isNotBlank
(
genericPageParam
.
getBoardCopyrightOwnerId
()))
{
if
(
StringUtils
.
isNotBlank
(
genericPageParam
.
getBoardCopyrightOwnerId
()))
{
queryWrapper
.
like
(
ExhibitionBoard:
:
getAsset
CopyrightOwnerId
,
genericPageParam
.
getBoardCopyrightOwnerId
());
queryWrapper
.
eq
(
ExhibitionBoard:
:
getBoard
CopyrightOwnerId
,
genericPageParam
.
getBoardCopyrightOwnerId
());
}
}
// 根据创建时间区间检索
// 根据创建时间区间检索
if
(
genericPageParam
.
getStartDate
()
!=
null
&&
genericPageParam
.
getEndDate
()
!=
null
)
{
if
(
genericPageParam
.
getStartDate
()
!=
null
&&
genericPageParam
.
getEndDate
()
!=
null
)
{
...
@@ -308,20 +257,28 @@ public class ExhibitionBoardController extends BaseController {
...
@@ -308,20 +257,28 @@ public class ExhibitionBoardController extends BaseController {
ExhibitionBoard:
:
getName
,
ExhibitionBoard:
:
getName
,
ExhibitionBoard:
:
getAuditStatus
,
ExhibitionBoard:
:
getAuditStatus
,
ExhibitionBoard:
:
getPublished
,
ExhibitionBoard:
:
getPublished
,
ExhibitionBoard:
:
get
Asse
tCopyrightOwnerId
,
ExhibitionBoard:
:
get
VideoConten
tCopyrightOwnerId
,
ExhibitionBoard:
:
getExhibitionBoardCatId
,
ExhibitionBoard:
:
getExhibitionBoardCatId
,
ExhibitionBoard:
:
getCreateTime
,
ExhibitionBoard:
:
getCreateTime
,
ExhibitionBoard:
:
getUpdateTime
);
ExhibitionBoard:
:
getUpdateTime
);
Page
<
ExhibitionBoard
>
page
=
this
.
exhibitionBoardService
.
page
(
getPage
(),
queryWrapper
);
Page
<
ExhibitionBoard
>
page
=
this
.
exhibitionBoardService
.
page
(
getPage
(),
queryWrapper
);
for
(
ExhibitionBoard
exhibitionBoard
:
page
.
getRecords
())
{
for
(
ExhibitionBoard
exhibitionBoard
:
page
.
getRecords
())
{
if
(
exhibitionBoard
.
get
Asset
CopyrightOwnerId
()
!=
null
)
{
if
(
exhibitionBoard
.
get
Board
CopyrightOwnerId
()
!=
null
)
{
String
name
=
this
.
copyrightOwnerService
.
getById
(
exhibitionBoard
.
get
Asset
CopyrightOwnerId
()).
getName
();
String
name
=
this
.
copyrightOwnerService
.
getById
(
exhibitionBoard
.
get
Board
CopyrightOwnerId
()).
getName
();
exhibitionBoard
.
setBoardCopyrightOwnerName
(
name
);
exhibitionBoard
.
setBoardCopyrightOwnerName
(
name
);
}
}
if
(
exhibitionBoard
.
getVideoContentCopyrightOwnerId
()
!=
null
)
{
String
name
=
this
.
copyrightOwnerService
.
getById
(
exhibitionBoard
.
getVideoContentCopyrightOwnerId
()).
getName
();
exhibitionBoard
.
setVideoContentCopyrightOwnerName
(
name
);
}
if
(
exhibitionBoard
.
getExhibitionBoardCatId
()
!=
null
)
{
if
(
exhibitionBoard
.
getExhibitionBoardCatId
()
!=
null
)
{
String
name
=
this
.
exhibitionBoardCatService
.
getById
(
exhibitionBoard
.
getExhibitionBoardCatId
()).
getName
();
String
name
=
this
.
exhibitionBoardCatService
.
getById
(
exhibitionBoard
.
getExhibitionBoardCatId
()).
getName
();
exhibitionBoard
.
setExhibitionBoardCatName
(
name
);
exhibitionBoard
.
setExhibitionBoardCatName
(
name
);
}
}
if
(
exhibitionBoard
.
getVideoContentId
()
!=
null
)
{
String
name
=
this
.
videoContentService
.
getById
(
exhibitionBoard
.
getVideoContentId
()).
getName
();
exhibitionBoard
.
setVideoContentName
(
name
);
}
}
}
return
getResult
(
page
);
return
getResult
(
page
);
}
}
...
@@ -342,30 +299,32 @@ public class ExhibitionBoardController extends BaseController {
...
@@ -342,30 +299,32 @@ public class ExhibitionBoardController extends BaseController {
if
(
boardCopyrightOwnerId
!=
null
)
{
if
(
boardCopyrightOwnerId
!=
null
)
{
exhibitionBoard
.
setBoardCopyrightOwnerName
(
this
.
copyrightOwnerService
.
getById
(
boardCopyrightOwnerId
).
getName
());
exhibitionBoard
.
setBoardCopyrightOwnerName
(
this
.
copyrightOwnerService
.
getById
(
boardCopyrightOwnerId
).
getName
());
}
}
if
(
exhibitionBoard
.
getVideoContentCopyrightOwnerId
()
!=
null
)
{
String
name
=
this
.
copyrightOwnerService
.
getById
(
exhibitionBoard
.
getVideoContentCopyrightOwnerId
()).
getName
();
exhibitionBoard
.
setVideoContentCopyrightOwnerName
(
name
);
}
final
String
guideAudioUrl
=
exhibitionBoard
.
getGuideAudioUrl
(
);
LambdaQueryWrapper
<
Asset
>
assetQueryWrapper
=
Wrappers
.<
Asset
>
lambdaQuery
().
eq
(
Asset:
:
getRefItemId
,
exhibitionBoard
.
getId
()
);
final
List
<
AudioVo
>
audioVoList
=
JSONObject
.
parseObject
(
guideAudioUrl
,
new
TypeReference
<
List
<
AudioVo
>>()
{
assetQueryWrapper
.
eq
(
Asset:
:
getFileCat
,
FileCatEnum
.
EXHIBITION_BOARD_AUDIO
.
name
());
},
Feature
.
OrderedField
);
final
List
<
Asset
>
audioList
=
this
.
assetService
.
list
(
assetQueryWrapper
);
exhibitionBoard
.
setAudio
UrlList
(
audioVoList
.
stream
().
map
(
AudioVo:
:
getFileUrl
).
collect
(
Collectors
.
toList
())
);
exhibitionBoard
.
setAudio
List
(
audioList
);
final
String
refMaterialUrl
=
exhibitionBoard
.
getRefMaterialUrl
();
assetQueryWrapper
.
clear
();
final
List
<
DatumVo
>
datumVoList
=
JSONObject
.
parseObject
(
refMaterialUrl
,
new
TypeReference
<
List
<
DatumVo
>>()
{
assetQueryWrapper
=
Wrappers
.<
Asset
>
lambdaQuery
().
eq
(
Asset:
:
getRefItemId
,
exhibitionBoard
.
getId
());
},
Feature
.
OrderedField
);
assetQueryWrapper
.
eq
(
Asset:
:
getFileCat
,
FileCatEnum
.
EXHIBITION_BOARD_DATUM
.
name
());
exhibitionBoard
.
setMaterialUrlList
(
datumVoList
.
stream
().
map
(
DatumVo:
:
getFileUrl
).
collect
(
Collectors
.
toList
()));
final
List
<
Asset
>
datumList
=
this
.
assetService
.
list
(
assetQueryWrapper
);
exhibitionBoard
.
setDatumList
(
datumList
);
String
assetId
=
exhibitionBoard
.
getAssetId
();
final
String
videoContentId
=
exhibitionBoard
.
getVideoContentId
();
if
(
assetId
!=
null
)
{
if
(
videoContentId
!=
null
)
{
final
Asset
asset
=
this
.
assetService
.
getById
(
assetId
);
final
VideoContent
videoContent
=
this
.
videoContentService
.
getById
(
videoContentId
);
exhibitionBoard
.
setAssetName
(
this
.
assetService
.
getById
(
assetId
).
getName
());
exhibitionBoard
.
setVideoContentName
(
videoContent
.
getName
());
final
String
assetCopyrightOwnerId
=
asset
.
getAssetCopyrightOwnerId
();
final
String
assetCopyrightOwnerName
=
this
.
copyrightOwnerService
.
getById
(
assetCopyrightOwnerId
).
getName
();
exhibitionBoard
.
setAssetCopyrightOwnerName
(
assetCopyrightOwnerName
);
final
String
videoUrl
=
asset
.
getVideoUrl
();
assetQueryWrapper
.
clear
();
final
List
<
VideoVo
>
videoVoList
=
JSONObject
.
parseObject
(
videoUrl
,
new
TypeReference
<
List
<
VideoVo
>>()
{
assetQueryWrapper
=
Wrappers
.<
Asset
>
lambdaQuery
().
eq
(
Asset:
:
getRefItemId
,
videoContentId
);
},
Feature
.
OrderedField
);
assetQueryWrapper
.
eq
(
Asset:
:
getFileCat
,
FileCatEnum
.
VIDEO_CONTENT
.
name
()
);
exhibitionBoard
.
setVideoUrl
(
videoUrl
);
final
List
<
Asset
>
videoList
=
this
.
assetService
.
list
(
assetQueryWrapper
);
exhibitionBoard
.
setVideo
UrlList
(
videoVoList
.
stream
().
map
(
VideoVo:
:
getFileUrl
).
collect
(
Collectors
.
toList
())
);
exhibitionBoard
.
setVideo
List
(
videoList
);
}
}
return
getResult
(
exhibitionBoard
);
return
getResult
(
exhibitionBoard
);
}
}
...
...
src/main/java/cn/wisenergy/chnmuseum/party/web/controller/FileUploadController.java
View file @
93db1527
...
@@ -2,13 +2,16 @@ package cn.wisenergy.chnmuseum.party.web.controller;
...
@@ -2,13 +2,16 @@ package cn.wisenergy.chnmuseum.party.web.controller;
import
cn.hutool.core.util.ArrayUtil
;
import
cn.hutool.core.util.ArrayUtil
;
import
cn.wisenergy.chnmuseum.party.common.dfs.FastDFSUtils
;
import
cn.wisenergy.chnmuseum.party.common.dfs.FastDFSUtils
;
import
cn.wisenergy.chnmuseum.party.common.enums.FileTypeEnum
;
import
cn.wisenergy.chnmuseum.party.common.enums.*
;
import
cn.wisenergy.chnmuseum.party.common.enums.HANDLE_STATUS_ENUM
;
import
cn.wisenergy.chnmuseum.party.common.enums.RESPONSE_CODE_ENUM
;
import
cn.wisenergy.chnmuseum.party.common.mvc.InterfaceException
;
import
cn.wisenergy.chnmuseum.party.common.mvc.InterfaceException
;
import
cn.wisenergy.chnmuseum.party.common.util.TimeUtils
;
import
cn.wisenergy.chnmuseum.party.common.vo.BatchUploadResVO
;
import
cn.wisenergy.chnmuseum.party.common.vo.BatchUploadResVO
;
import
cn.wisenergy.chnmuseum.party.common.vo.ImageUploadResult
;
import
cn.wisenergy.chnmuseum.party.common.vo.ImageUploadResult
;
import
cn.wisenergy.chnmuseum.party.model.Asset
;
import
cn.wisenergy.chnmuseum.party.service.AssetService
;
import
cn.wisenergy.chnmuseum.party.web.controller.base.BaseController
;
import
cn.wisenergy.chnmuseum.party.web.controller.base.BaseController
;
import
com.github.tobato.fastdfs.domain.fdfs.FileInfo
;
import
com.github.tobato.fastdfs.domain.fdfs.MetaData
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiImplicitParams
;
import
io.swagger.annotations.ApiImplicitParams
;
...
@@ -17,11 +20,15 @@ import lombok.extern.slf4j.Slf4j;
...
@@ -17,11 +20,15 @@ import lombok.extern.slf4j.Slf4j;
import
org.apache.commons.io.FilenameUtils
;
import
org.apache.commons.io.FilenameUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.shiro.authz.annotation.RequiresPermissions
;
import
org.apache.shiro.authz.annotation.RequiresPermissions
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.http.MediaType
;
import
org.springframework.http.MediaType
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.multipart.MultipartFile
;
import
org.springframework.web.multipart.MultipartFile
;
import
javax.annotation.Resource
;
import
java.io.IOException
;
import
java.io.IOException
;
import
java.time.LocalDateTime
;
import
java.util.*
;
import
java.util.*
;
/**
/**
...
@@ -41,64 +48,30 @@ public class FileUploadController extends BaseController {
...
@@ -41,64 +48,30 @@ public class FileUploadController extends BaseController {
private
static
final
String
[]
IMAGE_TYPE
=
new
String
[]{
"JPG"
,
"JPEG"
,
"PNG"
,
"BMP"
,
"WBMP"
};
private
static
final
String
[]
IMAGE_TYPE
=
new
String
[]{
"JPG"
,
"JPEG"
,
"PNG"
,
"BMP"
,
"WBMP"
};
private
static
final
String
[]
AUDIO_TYPE
=
new
String
[]{
"MP3"
,
"AAC"
,
"WMA"
,
"FLAC"
,
"RM"
,
"OGG"
};
private
static
final
String
[]
AUDIO_TYPE
=
new
String
[]{
"MP3"
,
"AAC"
,
"WMA"
,
"FLAC"
,
"RM"
,
"OGG"
};
private
static
final
String
[]
VIDEO_TYPE
=
new
String
[]{
"MP4"
,
"FLV"
};
private
static
final
String
[]
VIDEO_TYPE
=
new
String
[]{
"MP4"
,
"FLV"
};
private
static
final
String
[]
DOC_TYPE
=
new
String
[]{
"PDF"
,
"DOC"
,
"DOCX"
,
"PPT"
,
"PPTX"
,
"XLS"
,
"XLSX"
};
private
static
final
String
[]
DOC_TYPE
=
new
String
[]{
"PDF"
,
"
.TXT"
,
"
DOC"
,
"DOCX"
,
"PPT"
,
"PPTX"
,
"XLS"
,
"XLSX"
};
private
static
final
String
[]
DATUM_TYPE
=
ArrayUtil
.
addAll
(
DOC_TYPE
,
IMAGE_TYPE
,
VIDEO_TYPE
);
private
static
final
String
[]
DATUM_TYPE
=
ArrayUtil
.
addAll
(
DOC_TYPE
,
IMAGE_TYPE
,
AUDIO_TYPE
,
VIDEO_TYPE
);
// @RequestMapping(value = "/upload", method = RequestMethod.POST)
@Resource
// public ResponseEntity<PicUploadResult> upload(@RequestParam(value = "bc_cover", required = true) MultipartFile uploadFile, HttpServletResponse response) throws Exception {
private
AssetService
assetService
;
// // 校验文件扩展名
// boolean isLegal = false;
@ApiOperation
(
value
=
"根据文件ID刪除文件"
,
notes
=
"根据文件ID刪除文件"
)
// for (String type : IMAGE_TYPE) {
@DeleteMapping
(
value
=
"/delete/{id}"
)
// if (StringUtils.endsWithIgnoreCase(uploadFile.getOriginalFilename(), type)) {
@RequiresPermissions
(
"file:delete"
)
// isLegal = true;
public
ResponseEntity
<
Map
<
String
,
Object
>>
delete
(
@PathVariable
(
value
=
"id"
)
String
id
)
{
// break;
final
Asset
asset
=
assetService
.
getById
(
id
);
// }
if
(
asset
!=
null
)
{
// }
final
String
fileUrl
=
asset
.
getFileUrl
();
// byte[] bytes = uploadFile.getBytes();
FastDFSUtils
.
deleteFile
(
fileUrl
);
// if (ImageUtil.isPicture(uploadFile.getOriginalFilename()) && ImageUtil.isImage(bytes) && ImageUtil.isImage1(bytes)) {
this
.
assetService
.
removeById
(
id
);
// isLegal = true;
}
// } else {
return
ResponseEntity
.
status
(
HttpStatus
.
INTERNAL_SERVER_ERROR
).
build
();
// isLegal = false;
}
// throw new RuntimeException("图片文件不合法");
// }
//
// // 封装Result对象,并且将文件的byte数组放置到result对象中
// PicUploadResult fileUploadResult = new PicUploadResult();
// // 状态
// fileUploadResult.setError(isLegal ? 0 : 1);
// // 文件新路径
// String filePath = FastDFSUtils.uploadPic(bytes, uploadFile.getOriginalFilename(), uploadFile.getSize());
//
// if (log.isDebugEnabled()) {
// log.debug("Pic file upload .[{}] to [{}] .", uploadFile.getOriginalFilename(), filePath);
// }
// String picUrl = IMAGE_BASE_URL + filePath;
// fileUploadResult.setUrl(picUrl);
// isLegal = false;
// try {
// BufferedImage image = ImageIO.read(new URL(picUrl));
// if (image != null) {
// // fileUploadResult.setWidth(image.getWidth() + "");
// // fileUploadResult.setHeight(image.getHeight() + "");
// isLegal = true;
// }
// } catch (IOException e) {
// log.error("check image is legal error! " + e.getMessage());
// }
// isLegal = true;
// fileUploadResult.setError(isLegal ? 0 : 1);
// if (!isLegal) {
// // 不合法,将磁盘上的文件删除
// FastDFSUtils.deletePic(picUrl);
// }
// return ResponseEntity.status(HttpStatus.OK).body(fileUploadResult);
// }
@ApiImplicitParams
({
@ApiImplicitParams
({
@ApiImplicitParam
(
name
=
"file"
,
value
=
"资料"
,
paramType
=
"form"
,
dataType
=
"__file"
,
collectionFormat
=
"array"
,
allowMultiple
=
true
)
@ApiImplicitParam
(
name
=
"file"
,
value
=
"资料"
,
paramType
=
"form"
,
dataType
=
"__file"
,
collectionFormat
=
"array"
,
allowMultiple
=
true
)
})
})
@PostMapping
(
value
=
"/datum/upload"
,
headers
=
"content-type=multipart/form-data"
,
consumes
=
MediaType
.
MULTIPART_FORM_DATA_VALUE
)
@PostMapping
(
value
=
"/datum/upload"
,
headers
=
"content-type=multipart/form-data"
,
consumes
=
MediaType
.
MULTIPART_FORM_DATA_VALUE
)
@ApiOperation
(
value
=
"
资料上传"
,
notes
=
"
资料上传"
)
@ApiOperation
(
value
=
"
展板资料上传"
,
notes
=
"展板
资料上传"
)
public
Map
<
String
,
Object
>
uploadFile
(
@RequestPart
(
value
=
"file"
,
required
=
false
)
MultipartFile
[]
files
)
throws
IOException
{
public
Map
<
String
,
Object
>
uploadFile
(
@RequestPart
(
value
=
"file"
,
required
=
false
)
MultipartFile
[]
files
)
throws
IOException
{
if
(
files
.
length
==
0
)
{
if
(
files
.
length
==
0
)
{
throw
new
InterfaceException
(
RESPONSE_CODE_ENUM
.
SERVER_ERROR
.
getResultCode
(),
"没有文件可供上传"
);
throw
new
InterfaceException
(
RESPONSE_CODE_ENUM
.
SERVER_ERROR
.
getResultCode
(),
"没有文件可供上传"
);
...
@@ -107,7 +80,7 @@ public class FileUploadController extends BaseController {
...
@@ -107,7 +80,7 @@ public class FileUploadController extends BaseController {
int
failureCount
=
0
;
int
failureCount
=
0
;
List
<
BatchUploadResVO
.
HandleResult
>
handleList
=
new
ArrayList
<>();
List
<
BatchUploadResVO
.
HandleResult
>
handleList
=
new
ArrayList
<>();
List
<
String
>
datumUrlList
=
new
ArrayList
<>();
List
<
Asset
>
datumUrlList
=
new
ArrayList
<>();
for
(
MultipartFile
file
:
files
)
{
for
(
MultipartFile
file
:
files
)
{
// 当前维度表下线结果
// 当前维度表下线结果
BatchUploadResVO
.
HandleResult
handleResult
=
new
BatchUploadResVO
.
HandleResult
();
BatchUploadResVO
.
HandleResult
handleResult
=
new
BatchUploadResVO
.
HandleResult
();
...
@@ -115,7 +88,6 @@ public class FileUploadController extends BaseController {
...
@@ -115,7 +88,6 @@ public class FileUploadController extends BaseController {
String
originalFilename
=
file
.
getOriginalFilename
();
String
originalFilename
=
file
.
getOriginalFilename
();
if
(
StringUtils
.
isBlank
(
originalFilename
))
{
if
(
StringUtils
.
isBlank
(
originalFilename
))
{
handleResult
.
setFileName
(
""
);
handleResult
.
setFileName
(
""
);
handleResult
.
setFileType
(
FileTypeEnum
.
DATUM
.
getName
());
handleResult
.
setFileUrl
(
""
);
handleResult
.
setFileUrl
(
""
);
handleResult
.
setHandleResult
(
HANDLE_STATUS_ENUM
.
FAILURE
.
getName
());
handleResult
.
setHandleResult
(
HANDLE_STATUS_ENUM
.
FAILURE
.
getName
());
handleResult
.
setDescription
(
"文件名为空"
);
handleResult
.
setDescription
(
"文件名为空"
);
...
@@ -123,43 +95,78 @@ public class FileUploadController extends BaseController {
...
@@ -123,43 +95,78 @@ public class FileUploadController extends BaseController {
continue
;
continue
;
}
}
handleResult
.
setFileName
(
originalFilename
);
String
extName
=
FilenameUtils
.
getExtension
(
originalFilename
);
handleResult
.
setFileType
(
FileTypeEnum
.
DATUM
.
getName
());
boolean
anyMatch
=
Arrays
.
stream
(
DATUM_TYPE
).
anyMatch
(
s
->
Objects
.
equals
(
s
,
extName
.
toUpperCase
()));
handleResult
.
setHandleResult
(
HANDLE_STATUS_ENUM
.
SUCCESS
.
getName
());
boolean
anyMatch
=
Arrays
.
stream
(
DATUM_TYPE
).
anyMatch
(
s
->
Objects
.
equals
(
s
,
FilenameUtils
.
getExtension
(
originalFilename
).
toUpperCase
()));
if
(
anyMatch
)
{
if
(
anyMatch
)
{
String
url
;
final
Asset
asset
=
Asset
.
builder
()
boolean
anyVideoMatch
=
Arrays
.
stream
(
VIDEO_TYPE
).
anyMatch
(
s
->
Objects
.
equals
(
s
,
FilenameUtils
.
getExtension
(
originalFilename
).
toUpperCase
()));
.
fileName
(
originalFilename
)
if
(
anyVideoMatch
)
{
.
fileExtName
(
extName
)
url
=
FastDFSUtils
.
uploadFile
(
file
.
getInputStream
(),
file
.
getSize
(),
originalFilename
);
.
fileCat
(
FileCatEnum
.
EXHIBITION_BOARD_DATUM
.
name
())
}
else
{
.
build
();
url
=
FastDFSUtils
.
uploadFile
(
file
.
getInputStream
(),
file
.
getSize
(),
originalFilename
);
String
fileUrl
=
null
;
final
Set
<
MetaData
>
metaDataSet
=
new
HashSet
<>();
metaDataSet
.
add
(
new
MetaData
(
"fileName"
,
originalFilename
));
if
(
Arrays
.
stream
(
VIDEO_TYPE
).
anyMatch
(
s
->
Objects
.
equals
(
s
,
extName
.
toUpperCase
())))
{
metaDataSet
.
add
(
new
MetaData
(
"fileType"
,
FileTypeEnum
.
VIDEO
.
name
()));
handleResult
.
setFileType
(
FileTypeEnum
.
VIDEO
.
name
());
asset
.
setFileType
(
FileTypeEnum
.
VIDEO
.
name
());
fileUrl
=
FastDFSUtils
.
uploadVideo
(
file
.
getInputStream
(),
file
.
getSize
(),
originalFilename
,
metaDataSet
);
final
Set
<
MetaData
>
fileMetaData
=
FastDFSUtils
.
getFileMetaData
(
fileUrl
);
String
md5
=
fileMetaData
.
stream
().
filter
(
x
->
"MD5"
.
equals
(
x
.
getName
())).
map
(
MetaData:
:
getValue
).
findFirst
().
get
();
asset
.
setMd5
(
md5
);
}
else
if
(
Arrays
.
stream
(
AUDIO_TYPE
).
anyMatch
(
s
->
Objects
.
equals
(
s
,
extName
.
toUpperCase
())))
{
metaDataSet
.
add
(
new
MetaData
(
"fileType"
,
FileTypeEnum
.
AUDIO
.
name
()));
handleResult
.
setFileType
(
FileTypeEnum
.
AUDIO
.
name
());
asset
.
setFileType
(
FileTypeEnum
.
AUDIO
.
name
());
fileUrl
=
FastDFSUtils
.
uploadFile
(
file
.
getInputStream
(),
file
.
getSize
(),
originalFilename
,
metaDataSet
);
}
else
if
(
Arrays
.
stream
(
IMAGE_TYPE
).
anyMatch
(
s
->
Objects
.
equals
(
s
,
extName
.
toUpperCase
())))
{
metaDataSet
.
add
(
new
MetaData
(
"fileType"
,
FileTypeEnum
.
IMAGE
.
name
()));
handleResult
.
setFileType
(
FileTypeEnum
.
IMAGE
.
name
());
asset
.
setFileType
(
FileTypeEnum
.
IMAGE
.
name
());
fileUrl
=
FastDFSUtils
.
uploadFile
(
file
.
getInputStream
(),
file
.
getSize
(),
originalFilename
,
metaDataSet
);
asset
.
setThumbnail
(
fileUrl
);
}
else
if
(
Arrays
.
stream
(
DOC_TYPE
).
anyMatch
(
s
->
Objects
.
equals
(
s
,
extName
.
toUpperCase
())))
{
metaDataSet
.
add
(
new
MetaData
(
"fileType"
,
FileTypeEnum
.
DOCUMENT
.
name
()));
handleResult
.
setFileType
(
FileTypeEnum
.
DOCUMENT
.
name
());
asset
.
setFileType
(
FileTypeEnum
.
DOCUMENT
.
name
());
fileUrl
=
FastDFSUtils
.
uploadFile
(
file
.
getInputStream
(),
file
.
getSize
(),
originalFilename
,
metaDataSet
);
}
}
handleResult
.
setFileUrl
(
url
);
final
FileInfo
fileInfo
=
FastDFSUtils
.
getFileInfo
(
fileUrl
);
handleResult
.
setDescription
(
"操作成功"
);
final
LocalDateTime
createTime
=
TimeUtils
.
getDateTimeOfTimestamp
(
fileInfo
.
getCreateTime
());
datumUrlList
.
add
(
url
);
asset
.
setFileSize
(
fileInfo
.
getFileSize
());
asset
.
setFileUrl
(
fileUrl
);
asset
.
setFileCat
(
FileCatEnum
.
EXHIBITION_BOARD_DATUM
.
name
());
asset
.
setCreateTime
(
createTime
);
asset
.
setUpdateTime
(
createTime
);
this
.
assetService
.
save
(
asset
);
datumUrlList
.
add
(
asset
);
handleResult
.
setFileUrl
(
fileUrl
);
handleResult
.
setFileName
(
originalFilename
);
handleResult
.
setHandleResult
(
HANDLE_STATUS_ENUM
.
SUCCESS
.
getName
());
handleResult
.
setDescription
(
""
);
successCount
++;
successCount
++;
}
else
{
}
else
{
handleResult
.
setFileUrl
(
""
);
handleResult
.
setFileUrl
(
""
);
handleResult
.
setDescription
(
"文件格式不支持"
);
handleResult
.
setDescription
(
"文件
"
+
originalFilename
+
"
格式不支持"
);
failureCount
++;
failureCount
++;
}
}
// 设置处理的业务表信息
// 设置处理的业务表信息
handleList
.
add
(
handleResult
);
handleList
.
add
(
handleResult
);
}
}
BatchUploadResVO
batchUploadResVO
=
new
BatchUploadResVO
();
BatchUploadResVO
batchUploadResVO
=
new
BatchUploadResVO
();
batchUploadResVO
.
setFailureCount
(
failureCount
);
batchUploadResVO
.
setFailureCount
(
failureCount
);
batchUploadResVO
.
setSuccessCount
(
successCount
);
batchUploadResVO
.
setSuccessCount
(
successCount
);
batchUploadResVO
.
setTotal
(
files
.
length
);
batchUploadResVO
.
setTotal
(
files
.
length
);
batchUploadResVO
.
setHandleList
(
handleList
);
batchUploadResVO
.
setHandleList
(
handleList
);
batchUploadResVO
.
set
Url
List
(
datumUrlList
);
batchUploadResVO
.
set
File
List
(
datumUrlList
);
return
getResult
(
batchUploadResVO
);
return
getResult
(
batchUploadResVO
);
}
}
@PostMapping
(
value
=
"/image/upload"
,
headers
=
"content-type=multipart/form-data"
,
consumes
=
MediaType
.
MULTIPART_FORM_DATA_VALUE
)
@PostMapping
(
value
=
"/image/upload"
,
headers
=
"content-type=multipart/form-data"
,
consumes
=
MediaType
.
MULTIPART_FORM_DATA_VALUE
)
@RequiresPermissions
(
"image:upload"
)
@RequiresPermissions
(
"
file:
image:upload"
)
@ApiOperation
(
value
=
"单图片上传
"
,
notes
=
"单图片上传
"
)
@ApiOperation
(
value
=
"单图片上传
(封面/缩略图)"
,
notes
=
"单图片上传(封面/缩略图)
"
)
public
Map
<
String
,
Object
>
uploadImage
(
@RequestParam
(
value
=
"file"
)
MultipartFile
uploadFile
)
throws
Exception
{
public
Map
<
String
,
Object
>
uploadImage
(
@RequestParam
(
value
=
"file"
)
MultipartFile
uploadFile
)
throws
Exception
{
if
(
uploadFile
==
null
||
uploadFile
.
getSize
()
==
0
)
{
if
(
uploadFile
==
null
||
uploadFile
.
getSize
()
==
0
)
{
throw
new
InterfaceException
(
RESPONSE_CODE_ENUM
.
SERVER_ERROR
.
getResultCode
(),
"没有文件可供上传"
);
throw
new
InterfaceException
(
RESPONSE_CODE_ENUM
.
SERVER_ERROR
.
getResultCode
(),
"没有文件可供上传"
);
...
@@ -174,7 +181,10 @@ public class FileUploadController extends BaseController {
...
@@ -174,7 +181,10 @@ public class FileUploadController extends BaseController {
throw
new
InterfaceException
(
RESPONSE_CODE_ENUM
.
SERVER_ERROR
.
getResultCode
(),
"文件格式不支持"
);
throw
new
InterfaceException
(
RESPONSE_CODE_ENUM
.
SERVER_ERROR
.
getResultCode
(),
"文件格式不支持"
);
}
}
String
url
=
FastDFSUtils
.
uploadFile
(
uploadFile
.
getInputStream
(),
uploadFile
.
getSize
(),
fileName
);
final
Set
<
MetaData
>
metaDataSet
=
new
HashSet
<>();
metaDataSet
.
add
(
new
MetaData
(
"fileName"
,
fileName
));
metaDataSet
.
add
(
new
MetaData
(
"fileType"
,
FileTypeEnum
.
IMAGE
.
name
()));
String
url
=
FastDFSUtils
.
uploadFile
(
uploadFile
.
getInputStream
(),
uploadFile
.
getSize
(),
fileName
,
metaDataSet
);
ImageUploadResult
imageUploadResult
=
new
ImageUploadResult
();
ImageUploadResult
imageUploadResult
=
new
ImageUploadResult
();
imageUploadResult
.
setFileName
(
fileName
);
imageUploadResult
.
setFileName
(
fileName
);
imageUploadResult
.
setFileExtName
(
extension
);
imageUploadResult
.
setFileExtName
(
extension
);
...
@@ -195,12 +205,9 @@ public class FileUploadController extends BaseController {
...
@@ -195,12 +205,9 @@ public class FileUploadController extends BaseController {
if
(
StringUtils
.
isBlank
(
extension
))
{
if
(
StringUtils
.
isBlank
(
extension
))
{
throw
new
InterfaceException
(
RESPONSE_CODE_ENUM
.
SERVER_ERROR
.
getResultCode
(),
"文件格式不支持"
);
throw
new
InterfaceException
(
RESPONSE_CODE_ENUM
.
SERVER_ERROR
.
getResultCode
(),
"文件格式不支持"
);
}
}
// boolean anyMatch = Arrays.stream(IMAGE_TYPE).anyMatch(s -> Objects.equals(s, extension.toUpperCase()));
final
Set
<
MetaData
>
metaDataSet
=
new
HashSet
<>();
// if (!anyMatch) {
metaDataSet
.
add
(
new
MetaData
(
"fileName"
,
fileName
));
// throw new InterfaceException(RESPONSE_CODE_ENUM.SERVER_ERROR.getResultCode(), "文件格式不支持");
String
url
=
FastDFSUtils
.
uploadFile
(
uploadFile
.
getInputStream
(),
uploadFile
.
getSize
(),
fileName
,
metaDataSet
);
// }
String
url
=
FastDFSUtils
.
uploadFile
(
uploadFile
.
getInputStream
(),
uploadFile
.
getSize
(),
fileName
);
ImageUploadResult
imageUploadResult
=
new
ImageUploadResult
();
ImageUploadResult
imageUploadResult
=
new
ImageUploadResult
();
imageUploadResult
.
setFileName
(
fileName
);
imageUploadResult
.
setFileName
(
fileName
);
imageUploadResult
.
setFileExtName
(
extension
);
imageUploadResult
.
setFileExtName
(
extension
);
...
@@ -228,7 +235,7 @@ public class FileUploadController extends BaseController {
...
@@ -228,7 +235,7 @@ public class FileUploadController extends BaseController {
int
failureCount
=
0
;
int
failureCount
=
0
;
List
<
BatchUploadResVO
.
HandleResult
>
handleList
=
new
ArrayList
<>();
List
<
BatchUploadResVO
.
HandleResult
>
handleList
=
new
ArrayList
<>();
List
<
String
>
videoUrlList
=
new
ArrayList
<>();
List
<
Asset
>
videoUrlList
=
new
ArrayList
<>();
for
(
MultipartFile
file
:
files
)
{
for
(
MultipartFile
file
:
files
)
{
// 当前维度表下线结果
// 当前维度表下线结果
BatchUploadResVO
.
HandleResult
handleResult
=
new
BatchUploadResVO
.
HandleResult
();
BatchUploadResVO
.
HandleResult
handleResult
=
new
BatchUploadResVO
.
HandleResult
();
...
@@ -244,19 +251,58 @@ public class FileUploadController extends BaseController {
...
@@ -244,19 +251,58 @@ public class FileUploadController extends BaseController {
continue
;
continue
;
}
}
handleResult
.
setFileName
(
originalFilename
);
String
extName
=
FilenameUtils
.
getExtension
(
originalFilename
);
handleResult
.
setFileType
(
FileTypeEnum
.
AUDIO
.
getName
());
boolean
anyMatch
=
Arrays
.
stream
(
AUDIO_TYPE
).
anyMatch
(
s
->
Objects
.
equals
(
s
,
extName
.
toUpperCase
()));
handleResult
.
setHandleResult
(
HANDLE_STATUS_ENUM
.
SUCCESS
.
getName
());
boolean
anyMatch
=
Arrays
.
stream
(
AUDIO_TYPE
).
anyMatch
(
s
->
Objects
.
equals
(
s
,
FilenameUtils
.
getExtension
(
originalFilename
).
toUpperCase
()));
if
(
anyMatch
)
{
if
(
anyMatch
)
{
String
url
=
FastDFSUtils
.
uploadFile
(
file
.
getInputStream
(),
file
.
getSize
(),
originalFilename
);
String
language
=
null
;
handleResult
.
setFileUrl
(
url
);
final
Set
<
MetaData
>
metaDataSet
=
new
HashSet
<>();
handleResult
.
setDescription
(
"操作成功"
);
metaDataSet
.
add
(
new
MetaData
(
"fileName"
,
originalFilename
));
videoUrlList
.
add
(
url
);
metaDataSet
.
add
(
new
MetaData
(
"fileType"
,
FileTypeEnum
.
AUDIO
.
name
()));
if
(
originalFilename
.
contains
(
"汉语"
))
{
metaDataSet
.
add
(
new
MetaData
(
"language"
,
LanguageEnum
.
CHINESE
.
name
()));
language
=
LanguageEnum
.
CHINESE
.
name
();
}
else
if
(
originalFilename
.
contains
(
"英语"
))
{
metaDataSet
.
add
(
new
MetaData
(
"language"
,
LanguageEnum
.
ENGLISH
.
name
()));
language
=
LanguageEnum
.
ENGLISH
.
name
();
}
else
if
(
originalFilename
.
contains
(
"蒙语"
))
{
metaDataSet
.
add
(
new
MetaData
(
"language"
,
LanguageEnum
.
MONGOLIAN
.
name
()));
language
=
LanguageEnum
.
MONGOLIAN
.
name
();
}
else
if
(
originalFilename
.
contains
(
"藏语"
))
{
metaDataSet
.
add
(
new
MetaData
(
"language"
,
LanguageEnum
.
TIBETAN
.
name
()));
language
=
LanguageEnum
.
TIBETAN
.
name
();
}
else
if
(
originalFilename
.
contains
(
"维吾尔语"
))
{
metaDataSet
.
add
(
new
MetaData
(
"language"
,
LanguageEnum
.
UYGHUR
.
name
()));
language
=
LanguageEnum
.
UYGHUR
.
name
();
}
String
fileUrl
=
FastDFSUtils
.
uploadFile
(
file
.
getInputStream
(),
file
.
getSize
(),
originalFilename
,
metaDataSet
);
final
FileInfo
fileInfo
=
FastDFSUtils
.
getFileInfo
(
fileUrl
);
final
LocalDateTime
createTime
=
TimeUtils
.
getDateTimeOfTimestamp
(
fileInfo
.
getCreateTime
());
final
long
fileSize
=
fileInfo
.
getFileSize
();
final
Asset
asset
=
Asset
.
builder
()
.
fileName
(
originalFilename
)
.
fileExtName
(
extName
)
.
fileType
(
FileTypeEnum
.
AUDIO
.
name
())
.
fileUrl
(
fileUrl
)
.
fileSize
(
fileSize
)
.
fileCat
(
FileCatEnum
.
EXHIBITION_BOARD_AUDIO
.
name
())
.
language
(
language
)
.
createTime
(
createTime
)
.
updateTime
(
createTime
)
.
build
();
this
.
assetService
.
save
(
asset
);
videoUrlList
.
add
(
asset
);
handleResult
.
setFileUrl
(
fileUrl
);
handleResult
.
setFileName
(
originalFilename
);
handleResult
.
setFileType
(
FileTypeEnum
.
AUDIO
.
getName
());
handleResult
.
setHandleResult
(
HANDLE_STATUS_ENUM
.
SUCCESS
.
getName
());
handleResult
.
setDescription
(
""
);
successCount
++;
successCount
++;
}
else
{
}
else
{
handleResult
.
setFileUrl
(
""
);
handleResult
.
setFileUrl
(
""
);
handleResult
.
setDescription
(
"文件格式不支持"
);
handleResult
.
setFileType
(
FileTypeEnum
.
AUDIO
.
getName
());
handleResult
.
setHandleResult
(
HANDLE_STATUS_ENUM
.
FAILURE
.
getName
());
handleResult
.
setDescription
(
"文件"
+
originalFilename
+
"格式不支持"
);
failureCount
++;
failureCount
++;
}
}
// 设置处理的业务表信息
// 设置处理的业务表信息
...
@@ -268,7 +314,7 @@ public class FileUploadController extends BaseController {
...
@@ -268,7 +314,7 @@ public class FileUploadController extends BaseController {
batchUploadResVO
.
setSuccessCount
(
successCount
);
batchUploadResVO
.
setSuccessCount
(
successCount
);
batchUploadResVO
.
setTotal
(
files
.
length
);
batchUploadResVO
.
setTotal
(
files
.
length
);
batchUploadResVO
.
setHandleList
(
handleList
);
batchUploadResVO
.
setHandleList
(
handleList
);
batchUploadResVO
.
set
Url
List
(
videoUrlList
);
batchUploadResVO
.
set
File
List
(
videoUrlList
);
return
getResult
(
batchUploadResVO
);
return
getResult
(
batchUploadResVO
);
}
}
...
@@ -277,21 +323,21 @@ public class FileUploadController extends BaseController {
...
@@ -277,21 +323,21 @@ public class FileUploadController extends BaseController {
})
})
@PostMapping
(
value
=
"/video/upload"
,
headers
=
"content-type=multipart/form-data"
,
consumes
=
MediaType
.
MULTIPART_FORM_DATA_VALUE
)
@PostMapping
(
value
=
"/video/upload"
,
headers
=
"content-type=multipart/form-data"
,
consumes
=
MediaType
.
MULTIPART_FORM_DATA_VALUE
)
@RequiresPermissions
(
"video:upload"
)
@RequiresPermissions
(
"video:upload"
)
@ApiOperation
(
value
=
"
多视频上传"
,
notes
=
"多
视频上传"
)
@ApiOperation
(
value
=
"
视频上传"
,
notes
=
"
视频上传"
)
public
Map
<
String
,
Object
>
uploadVideo
(
@RequestPart
(
value
=
"file"
,
required
=
true
)
MultipartFile
[]
files
)
throws
IOException
{
public
Map
<
String
,
Object
>
uploadVideo
(
@RequestPart
(
value
=
"file"
,
required
=
true
)
MultipartFile
[]
files
)
throws
IOException
{
if
(
files
==
null
||
files
.
length
==
0
)
{
if
(
files
==
null
||
files
.
length
==
0
)
{
throw
new
InterfaceException
(
RESPONSE_CODE_ENUM
.
SERVER_ERROR
.
getResultCode
(),
"没有文件可供上传"
);
throw
new
InterfaceException
(
RESPONSE_CODE_ENUM
.
SERVER_ERROR
.
getResultCode
(),
"没有文件可供上传"
);
}
}
final
boolean
matchChinese
=
Arrays
.
stream
(
files
).
anyMatch
(
s
->
Objects
.
requireNonNull
(
s
.
getOriginalFilename
()).
contains
(
"汉语"
));
final
boolean
matchChinese
=
Arrays
.
stream
(
files
).
anyMatch
(
s
->
Objects
.
requireNonNull
(
s
.
getOriginalFilename
()).
contains
(
"汉语"
));
if
(!
matchChinese
)
{
if
(!
matchChinese
)
{
throw
new
InterfaceException
(
RESPONSE_CODE_ENUM
.
SERVER_ERROR
.
getResultCode
(),
"必须包含汉语视频"
);
throw
new
InterfaceException
(
RESPONSE_CODE_ENUM
.
SERVER_ERROR
.
getResultCode
(),
"
文件
必须包含汉语视频"
);
}
}
int
successCount
=
0
;
int
successCount
=
0
;
int
failureCount
=
0
;
int
failureCount
=
0
;
List
<
BatchUploadResVO
.
HandleResult
>
handleList
=
new
ArrayList
<>();
List
<
BatchUploadResVO
.
HandleResult
>
handleList
=
new
ArrayList
<>();
List
<
String
>
videoUrl
List
=
new
ArrayList
<>();
List
<
Asset
>
file
List
=
new
ArrayList
<>();
for
(
MultipartFile
file
:
files
)
{
for
(
MultipartFile
file
:
files
)
{
// 当前维度表下线结果
// 当前维度表下线结果
BatchUploadResVO
.
HandleResult
handleResult
=
new
BatchUploadResVO
.
HandleResult
();
BatchUploadResVO
.
HandleResult
handleResult
=
new
BatchUploadResVO
.
HandleResult
();
...
@@ -307,19 +353,61 @@ public class FileUploadController extends BaseController {
...
@@ -307,19 +353,61 @@ public class FileUploadController extends BaseController {
continue
;
continue
;
}
}
handleResult
.
setFileName
(
originalFilename
);
String
extName
=
FilenameUtils
.
getExtension
(
originalFilename
);
handleResult
.
setFileType
(
FileTypeEnum
.
VIDEO
.
getName
());
boolean
anyMatch
=
Arrays
.
stream
(
VIDEO_TYPE
).
anyMatch
(
s
->
Objects
.
equals
(
s
,
extName
.
toUpperCase
()));
handleResult
.
setHandleResult
(
HANDLE_STATUS_ENUM
.
SUCCESS
.
getName
());
boolean
anyMatch
=
Arrays
.
stream
(
VIDEO_TYPE
).
anyMatch
(
s
->
Objects
.
equals
(
s
,
FilenameUtils
.
getExtension
(
originalFilename
).
toUpperCase
()));
if
(
anyMatch
)
{
if
(
anyMatch
)
{
String
url
=
FastDFSUtils
.
uploadVideo
(
file
.
getInputStream
(),
file
.
getSize
(),
originalFilename
);
String
language
=
null
;
handleResult
.
setFileUrl
(
url
);
final
Set
<
MetaData
>
metaDataSet
=
new
HashSet
<>();
handleResult
.
setDescription
(
"操作成功"
);
metaDataSet
.
add
(
new
MetaData
(
"fileName"
,
originalFilename
));
videoUrlList
.
add
(
url
);
metaDataSet
.
add
(
new
MetaData
(
"fileType"
,
FileTypeEnum
.
VIDEO
.
name
()));
if
(
originalFilename
.
contains
(
"汉语"
))
{
metaDataSet
.
add
(
new
MetaData
(
"language"
,
LanguageEnum
.
CHINESE
.
name
()));
language
=
LanguageEnum
.
CHINESE
.
name
();
}
else
if
(
originalFilename
.
contains
(
"英语"
))
{
metaDataSet
.
add
(
new
MetaData
(
"language"
,
LanguageEnum
.
ENGLISH
.
name
()));
language
=
LanguageEnum
.
ENGLISH
.
name
();
}
else
if
(
originalFilename
.
contains
(
"蒙语"
))
{
metaDataSet
.
add
(
new
MetaData
(
"language"
,
LanguageEnum
.
MONGOLIAN
.
name
()));
language
=
LanguageEnum
.
MONGOLIAN
.
name
();
}
else
if
(
originalFilename
.
contains
(
"藏语"
))
{
metaDataSet
.
add
(
new
MetaData
(
"language"
,
LanguageEnum
.
TIBETAN
.
name
()));
language
=
LanguageEnum
.
TIBETAN
.
name
();
}
else
if
(
originalFilename
.
contains
(
"维吾尔语"
))
{
metaDataSet
.
add
(
new
MetaData
(
"language"
,
LanguageEnum
.
UYGHUR
.
name
()));
language
=
LanguageEnum
.
UYGHUR
.
name
();
}
String
fileUrl
=
FastDFSUtils
.
uploadVideo
(
file
.
getInputStream
(),
file
.
getSize
(),
originalFilename
,
metaDataSet
);
final
FileInfo
fileInfo
=
FastDFSUtils
.
getFileInfo
(
fileUrl
);
final
Set
<
MetaData
>
fileMetaData
=
FastDFSUtils
.
getFileMetaData
(
fileUrl
);
String
md5
=
fileMetaData
.
stream
().
filter
(
x
->
"MD5"
.
equals
(
x
.
getName
())).
map
(
MetaData:
:
getValue
).
findFirst
().
get
();
final
LocalDateTime
createTime
=
TimeUtils
.
getDateTimeOfTimestamp
(
fileInfo
.
getCreateTime
());
final
long
fileSize
=
fileInfo
.
getFileSize
();
final
Asset
asset
=
Asset
.
builder
()
.
fileName
(
originalFilename
)
.
fileExtName
(
extName
)
.
fileType
(
FileTypeEnum
.
AUDIO
.
name
())
.
fileSize
(
fileSize
)
.
fileUrl
(
fileUrl
)
.
fileCat
(
FileCatEnum
.
VIDEO_CONTENT
.
name
())
.
language
(
language
)
.
md5
(
md5
)
.
createTime
(
createTime
)
.
updateTime
(
createTime
)
.
build
();
this
.
assetService
.
save
(
asset
);
fileList
.
add
(
asset
);
handleResult
.
setFileUrl
(
fileUrl
);
handleResult
.
setFileName
(
originalFilename
);
handleResult
.
setFileType
(
FileTypeEnum
.
VIDEO
.
getName
());
handleResult
.
setHandleResult
(
HANDLE_STATUS_ENUM
.
SUCCESS
.
getName
());
handleResult
.
setHandleResult
(
HANDLE_STATUS_ENUM
.
SUCCESS
.
getName
());
handleResult
.
setDescription
(
""
);
successCount
++;
successCount
++;
}
else
{
}
else
{
handleResult
.
setFileUrl
(
""
);
handleResult
.
setFileUrl
(
""
);
handleResult
.
setDescription
(
"文件格式不支持"
);
handleResult
.
setHandleResult
(
"上传失败"
);
handleResult
.
setDescription
(
"文件"
+
originalFilename
+
"格式不支持"
);
failureCount
++;
failureCount
++;
}
}
// 设置处理的业务表信息
// 设置处理的业务表信息
...
@@ -331,7 +419,7 @@ public class FileUploadController extends BaseController {
...
@@ -331,7 +419,7 @@ public class FileUploadController extends BaseController {
batchUploadResVO
.
setSuccessCount
(
successCount
);
batchUploadResVO
.
setSuccessCount
(
successCount
);
batchUploadResVO
.
setTotal
(
files
.
length
);
batchUploadResVO
.
setTotal
(
files
.
length
);
batchUploadResVO
.
setHandleList
(
handleList
);
batchUploadResVO
.
setHandleList
(
handleList
);
batchUploadResVO
.
set
UrlList
(
videoUrl
List
);
batchUploadResVO
.
set
FileList
(
file
List
);
return
getResult
(
batchUploadResVO
);
return
getResult
(
batchUploadResVO
);
}
}
...
...
src/main/java/cn/wisenergy/chnmuseum/party/web/controller/LearningContentController.java
View file @
93db1527
...
@@ -3,17 +3,13 @@ package cn.wisenergy.chnmuseum.party.web.controller;
...
@@ -3,17 +3,13 @@ package cn.wisenergy.chnmuseum.party.web.controller;
import
cn.wisenergy.chnmuseum.party.common.enums.AuditOperationEnum
;
import
cn.wisenergy.chnmuseum.party.common.enums.AuditOperationEnum
;
import
cn.wisenergy.chnmuseum.party.common.enums.AuditStatusEnum
;
import
cn.wisenergy.chnmuseum.party.common.enums.AuditStatusEnum
;
import
cn.wisenergy.chnmuseum.party.common.enums.AuditTypeEnum
;
import
cn.wisenergy.chnmuseum.party.common.enums.AuditTypeEnum
;
import
cn.wisenergy.chnmuseum.party.common.enums.FileCatEnum
;
import
cn.wisenergy.chnmuseum.party.common.validator.groups.Add
;
import
cn.wisenergy.chnmuseum.party.common.validator.groups.Add
;
import
cn.wisenergy.chnmuseum.party.common.validator.groups.Update
;
import
cn.wisenergy.chnmuseum.party.common.validator.groups.Update
;
import
cn.wisenergy.chnmuseum.party.common.vo.AudioVo
;
import
cn.wisenergy.chnmuseum.party.common.vo.GenericPageParam
;
import
cn.wisenergy.chnmuseum.party.common.vo.GenericPageParam
;
import
cn.wisenergy.chnmuseum.party.common.vo.VideoVo
;
import
cn.wisenergy.chnmuseum.party.model.*
;
import
cn.wisenergy.chnmuseum.party.model.*
;
import
cn.wisenergy.chnmuseum.party.service.*
;
import
cn.wisenergy.chnmuseum.party.service.*
;
import
cn.wisenergy.chnmuseum.party.web.controller.base.BaseController
;
import
cn.wisenergy.chnmuseum.party.web.controller.base.BaseController
;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.TypeReference
;
import
com.alibaba.fastjson.parser.Feature
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper
;
import
com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper
;
...
@@ -51,7 +47,9 @@ public class LearningContentController extends BaseController {
...
@@ -51,7 +47,9 @@ public class LearningContentController extends BaseController {
@Resource
@Resource
private
ExhibitionBoardCatService
exhibitionBoardCatService
;
private
ExhibitionBoardCatService
exhibitionBoardCatService
;
@Resource
@Resource
private
AssetTypeService
assetTypeService
;
private
VideoContentCatService
videoContentCatService
;
@Resource
private
VideoContentService
videoContentService
;
@Resource
@Resource
private
CopyrightOwnerService
copyrightOwnerService
;
private
CopyrightOwnerService
copyrightOwnerService
;
@Resource
@Resource
...
@@ -334,30 +332,32 @@ public class LearningContentController extends BaseController {
...
@@ -334,30 +332,32 @@ public class LearningContentController extends BaseController {
if
(
boardCopyrightOwnerId
!=
null
)
{
if
(
boardCopyrightOwnerId
!=
null
)
{
exhibitionBoard
.
setBoardCopyrightOwnerName
(
this
.
copyrightOwnerService
.
getById
(
boardCopyrightOwnerId
).
getName
());
exhibitionBoard
.
setBoardCopyrightOwnerName
(
this
.
copyrightOwnerService
.
getById
(
boardCopyrightOwnerId
).
getName
());
}
}
if
(
exhibitionBoard
.
getVideoContentCopyrightOwnerId
()
!=
null
)
{
String
name
=
this
.
copyrightOwnerService
.
getById
(
exhibitionBoard
.
getVideoContentCopyrightOwnerId
()).
getName
();
exhibitionBoard
.
setVideoContentCopyrightOwnerName
(
name
);
}
final
String
guideAudioUrl
=
exhibitionBoard
.
getGuideAudioUrl
();
LambdaQueryWrapper
<
Asset
>
assetQueryWrapper
=
Wrappers
.<
Asset
>
lambdaQuery
().
eq
(
Asset:
:
getRefItemId
,
exhibitionBoard
.
getId
());
final
List
<
AudioVo
>
audioVoList
=
JSONObject
.
parseObject
(
guideAudioUrl
,
new
TypeReference
<
List
<
AudioVo
>>()
{
assetQueryWrapper
.
eq
(
Asset:
:
getFileCat
,
FileCatEnum
.
EXHIBITION_BOARD_AUDIO
.
name
());
},
Feature
.
OrderedField
);
final
List
<
Asset
>
audioList
=
this
.
assetService
.
list
(
assetQueryWrapper
);
exhibitionBoard
.
setAudioUrlList
(
audioVoList
.
stream
().
map
(
AudioVo:
:
getFileUrl
).
collect
(
Collectors
.
toList
()));
exhibitionBoard
.
setAudioList
(
audioList
);
final
String
refMaterialUrl
=
exhibitionBoard
.
getRefMaterialUrl
();
assetQueryWrapper
.
clear
();
final
List
<
AudioVo
>
refMaterialVoList
=
JSONObject
.
parseObject
(
refMaterialUrl
,
new
TypeReference
<
List
<
AudioVo
>>()
{
assetQueryWrapper
=
Wrappers
.<
Asset
>
lambdaQuery
().
eq
(
Asset:
:
getRefItemId
,
exhibitionBoard
.
getId
());
},
Feature
.
OrderedField
);
assetQueryWrapper
.
eq
(
Asset:
:
getFileCat
,
FileCatEnum
.
EXHIBITION_BOARD_DATUM
.
name
());
exhibitionBoard
.
setMaterialUrlList
(
refMaterialVoList
.
stream
().
map
(
AudioVo:
:
getFileUrl
).
collect
(
Collectors
.
toList
()));
final
List
<
Asset
>
datumList
=
this
.
assetService
.
list
(
assetQueryWrapper
);
exhibitionBoard
.
setDatumList
(
datumList
);
String
assetId
=
exhibitionBoard
.
getAssetId
();
if
(
assetId
!=
null
)
{
String
videoContentId
=
exhibitionBoard
.
getVideoContentId
();
final
Asset
asset
=
this
.
assetService
.
getById
(
assetId
);
if
(
videoContentId
!=
null
)
{
exhibitionBoard
.
setAssetName
(
this
.
assetService
.
getById
(
assetId
).
getName
());
final
VideoContent
videoContent
=
this
.
videoContentService
.
getById
(
videoContentId
);
final
String
assetCopyrightOwnerId
=
asset
.
getAssetCopyrightOwnerId
();
exhibitionBoard
.
setVideoContentName
(
videoContent
.
getName
());
final
String
assetCopyrightOwnerName
=
this
.
copyrightOwnerService
.
getById
(
assetCopyrightOwnerId
).
getName
();
exhibitionBoard
.
setAssetCopyrightOwnerName
(
assetCopyrightOwnerName
);
assetQueryWrapper
.
clear
();
assetQueryWrapper
=
Wrappers
.<
Asset
>
lambdaQuery
().
eq
(
Asset:
:
getRefItemId
,
videoContentId
);
final
String
videoUrl
=
asset
.
getVideoUrl
();
assetQueryWrapper
.
eq
(
Asset:
:
getFileCat
,
FileCatEnum
.
VIDEO_CONTENT
.
name
());
final
List
<
VideoVo
>
videoVoList
=
JSONObject
.
parseObject
(
videoUrl
,
new
TypeReference
<
List
<
VideoVo
>>()
{
final
List
<
Asset
>
videoList
=
this
.
assetService
.
list
(
assetQueryWrapper
);
},
Feature
.
OrderedField
);
exhibitionBoard
.
setVideoList
(
videoList
);
exhibitionBoard
.
setVideoUrl
(
videoUrl
);
exhibitionBoard
.
setVideoUrlList
(
videoVoList
.
stream
().
map
(
VideoVo:
:
getFileUrl
).
collect
(
Collectors
.
toList
()));
}
}
}
}
learningContent
.
setExhibitionBoardList
(
exhibitionBoardList
);
learningContent
.
setExhibitionBoardList
(
exhibitionBoardList
);
...
...
src/main/java/cn/wisenergy/chnmuseum/party/web/controller/
AssetType
Controller.java
→
src/main/java/cn/wisenergy/chnmuseum/party/web/controller/
VideoContentCat
Controller.java
View file @
93db1527
...
@@ -2,12 +2,12 @@ package cn.wisenergy.chnmuseum.party.web.controller;
...
@@ -2,12 +2,12 @@ package cn.wisenergy.chnmuseum.party.web.controller;
import
cn.wisenergy.chnmuseum.party.common.validator.groups.Add
;
import
cn.wisenergy.chnmuseum.party.common.validator.groups.Add
;
import
cn.wisenergy.chnmuseum.party.common.vo.GenericPageParam
;
import
cn.wisenergy.chnmuseum.party.common.vo.GenericPageParam
;
import
cn.wisenergy.chnmuseum.party.model.Asset
;
import
cn.wisenergy.chnmuseum.party.model.AssetType
;
import
cn.wisenergy.chnmuseum.party.model.CopyrightOwner
;
import
cn.wisenergy.chnmuseum.party.model.CopyrightOwner
;
import
cn.wisenergy.chnmuseum.party.
service.AssetService
;
import
cn.wisenergy.chnmuseum.party.
model.VideoContent
;
import
cn.wisenergy.chnmuseum.party.
service.AssetTypeService
;
import
cn.wisenergy.chnmuseum.party.
model.VideoContentCat
;
import
cn.wisenergy.chnmuseum.party.service.CopyrightOwnerService
;
import
cn.wisenergy.chnmuseum.party.service.CopyrightOwnerService
;
import
cn.wisenergy.chnmuseum.party.service.VideoContentCatService
;
import
cn.wisenergy.chnmuseum.party.service.VideoContentService
;
import
cn.wisenergy.chnmuseum.party.web.controller.base.BaseController
;
import
cn.wisenergy.chnmuseum.party.web.controller.base.BaseController
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
...
@@ -30,7 +30,7 @@ import java.util.stream.Collectors;
...
@@ -30,7 +30,7 @@ import java.util.stream.Collectors;
/**
/**
* <pre>
* <pre>
* 视频分类 前端控制器
* 视频
内容
分类 前端控制器
* </pre>
* </pre>
*
*
* @author Danny Lee
* @author Danny Lee
...
@@ -38,25 +38,25 @@ import java.util.stream.Collectors;
...
@@ -38,25 +38,25 @@ import java.util.stream.Collectors;
*/
*/
@Slf4j
@Slf4j
@RestController
@RestController
@RequestMapping
(
"/
assetType
"
)
@RequestMapping
(
"/
videoContentCat
"
)
@Api
(
tags
=
{
"视频分类接口"
})
@Api
(
tags
=
{
"视频
内容
分类接口"
})
public
class
AssetType
Controller
extends
BaseController
{
public
class
VideoContentCat
Controller
extends
BaseController
{
@Resource
@Resource
private
AssetTypeService
assetType
Service
;
private
VideoContentCatService
videoContentCat
Service
;
@Resource
@Resource
private
AssetService
asse
tService
;
private
VideoContentService
videoConten
tService
;
@Resource
@Resource
private
CopyrightOwnerService
copyrightOwnerService
;
private
CopyrightOwnerService
copyrightOwnerService
;
@PostMapping
(
value
=
"/save"
)
@PostMapping
(
value
=
"/save"
)
@RequiresPermissions
(
"
asset:type
:save"
)
@RequiresPermissions
(
"
video:content:cat
:save"
)
@ApiOperation
(
value
=
"添加视频
分类"
,
notes
=
"添加视频
分类"
)
@ApiOperation
(
value
=
"添加视频
内容分类"
,
notes
=
"添加视频内容
分类"
)
public
Map
<
String
,
Object
>
save
AssetType
(
@Validated
(
value
=
{
Add
.
class
})
AssetType
assetType
)
{
public
Map
<
String
,
Object
>
save
VideoContentCat
(
@Validated
(
value
=
{
Add
.
class
})
VideoContentCat
videoContentCat
)
{
// 保存业务节点信息
// 保存业务节点信息
boolean
result
=
assetTypeService
.
save
(
assetType
);
boolean
result
=
videoContentCatService
.
save
(
videoContentCat
);
// 返回操作结果
// 返回操作结果
if
(
result
)
{
if
(
result
)
{
return
getSuccessResult
();
return
getSuccessResult
();
...
@@ -67,31 +67,21 @@ public class AssetTypeController extends BaseController {
...
@@ -67,31 +67,21 @@ public class AssetTypeController extends BaseController {
}
}
@PutMapping
(
value
=
"/update"
)
@PutMapping
(
value
=
"/update"
)
@ApiOperation
(
value
=
"修改视频
分类信息"
,
notes
=
"修改视频
分类信息"
)
@ApiOperation
(
value
=
"修改视频
内容分类信息"
,
notes
=
"修改视频内容
分类信息"
)
public
Map
<
String
,
Object
>
update
AssetType
(
@Validated
AssetType
assetType
)
{
public
Map
<
String
,
Object
>
update
VideoContentCat
(
@Validated
VideoContentCat
videoContentCat
)
{
boolean
flag
=
assetTypeService
.
updateById
(
assetType
);
boolean
flag
=
videoContentCatService
.
updateById
(
videoContentCat
);
if
(
flag
)
{
if
(
flag
)
{
return
getSuccessResult
();
return
getSuccessResult
();
}
}
return
getFailResult
();
return
getFailResult
();
}
}
@DeleteMapping
(
value
=
"/delete/{id}"
)
@RequiresPermissions
(
"asset:type:delete"
)
@ApiOperation
(
value
=
"根据ID删除视频分类"
,
notes
=
"根据ID删除视频分类"
)
@ApiImplicitParams
(
value
=
{
@ApiImplicitParam
(
name
=
"id"
,
value
=
"标识ID"
,
paramType
=
"path"
,
dataType
=
"String"
)
})
public
Map
<
String
,
Object
>
deleteAssetType
(
@PathVariable
(
"id"
)
String
id
)
{
return
getSuccessResult
();
}
@GetMapping
(
"/getList"
)
@GetMapping
(
"/getList"
)
@RequiresPermissions
(
"
asset:type
:list"
)
@RequiresPermissions
(
"
video:content:cat
:list"
)
@ApiOperation
(
value
=
"获取视频
分类全部列表(无分页)"
,
notes
=
"获取视频
分类全部列表(无分页)"
)
@ApiOperation
(
value
=
"获取视频
内容分类全部列表(无分页)"
,
notes
=
"获取视频内容
分类全部列表(无分页)"
)
public
Map
<
String
,
Object
>
get
AssetType
List
()
{
public
Map
<
String
,
Object
>
get
VideoContentCat
List
()
{
List
<
AssetType
>
assetTypeList
=
assetType
Service
.
list
();
List
<
VideoContentCat
>
videoContentCatList
=
videoContentCat
Service
.
list
();
return
getResult
(
assetType
List
);
return
getResult
(
videoContentCat
List
);
}
}
@ApiImplicitParams
(
value
=
{
@ApiImplicitParams
(
value
=
{
...
@@ -102,51 +92,51 @@ public class AssetTypeController extends BaseController {
...
@@ -102,51 +92,51 @@ public class AssetTypeController extends BaseController {
@ApiImplicitParam
(
name
=
"endDate"
,
value
=
"创建时间-结束"
,
paramType
=
"query"
,
dataType
=
"String"
)
@ApiImplicitParam
(
name
=
"endDate"
,
value
=
"创建时间-结束"
,
paramType
=
"query"
,
dataType
=
"String"
)
})
})
@PostMapping
(
"/getPageList"
)
@PostMapping
(
"/getPageList"
)
@RequiresPermissions
(
"
asset:type
:page"
)
@RequiresPermissions
(
"
video:content:cat
:page"
)
@ApiOperation
(
value
=
"获取视频
分类分页列表"
,
notes
=
"获取视频
分类分页列表"
)
@ApiOperation
(
value
=
"获取视频
内容分类分页列表"
,
notes
=
"获取视频内容
分类分页列表"
)
public
Map
<
String
,
Object
>
get
AssetType
PageList
(
GenericPageParam
genericPageParam
)
{
public
Map
<
String
,
Object
>
get
VideoContentCat
PageList
(
GenericPageParam
genericPageParam
)
{
LambdaQueryWrapper
<
AssetType
>
queryWrapper
=
new
LambdaQueryWrapper
<>();
LambdaQueryWrapper
<
VideoContentCat
>
queryWrapper
=
new
LambdaQueryWrapper
<>();
// 对名称或编码模糊查询
// 对名称或编码模糊查询
if
(
StringUtils
.
isNotBlank
(
genericPageParam
.
getNameOrCode
()))
{
if
(
StringUtils
.
isNotBlank
(
genericPageParam
.
getNameOrCode
()))
{
queryWrapper
.
like
(
AssetType
:
:
getName
,
genericPageParam
.
getNameOrCode
());
queryWrapper
.
like
(
VideoContentCat
:
:
getName
,
genericPageParam
.
getNameOrCode
());
}
}
// 根据创建时间区间检索
// 根据创建时间区间检索
if
(
genericPageParam
.
getStartDate
()
!=
null
&&
genericPageParam
.
getEndDate
()
!=
null
)
{
if
(
genericPageParam
.
getStartDate
()
!=
null
&&
genericPageParam
.
getEndDate
()
!=
null
)
{
queryWrapper
.
ge
(
AssetType
:
:
getCreateTime
,
genericPageParam
.
getStartDate
().
atTime
(
0
,
0
,
0
))
queryWrapper
.
ge
(
VideoContentCat
:
:
getCreateTime
,
genericPageParam
.
getStartDate
().
atTime
(
0
,
0
,
0
))
.
le
(
AssetType
:
:
getCreateTime
,
genericPageParam
.
getEndDate
().
atTime
(
23
,
59
,
59
));
.
le
(
VideoContentCat
:
:
getCreateTime
,
genericPageParam
.
getEndDate
().
atTime
(
23
,
59
,
59
));
}
}
// 设置排序规则
// 设置排序规则
queryWrapper
.
orderByDesc
(
AssetType
:
:
getCreateTime
);
queryWrapper
.
orderByDesc
(
VideoContentCat
:
:
getCreateTime
);
// 设置查询内容
// 设置查询内容
queryWrapper
.
select
(
queryWrapper
.
select
(
AssetType
:
:
getId
,
VideoContentCat
:
:
getId
,
AssetType
:
:
getName
,
VideoContentCat
:
:
getName
,
AssetType
:
:
getCreateTime
,
VideoContentCat
:
:
getCreateTime
,
AssetType
:
:
getUpdateTime
);
VideoContentCat
:
:
getUpdateTime
);
Page
<
AssetType
>
page
=
this
.
assetType
Service
.
page
(
getPage
(),
queryWrapper
);
Page
<
VideoContentCat
>
page
=
this
.
videoContentCat
Service
.
page
(
getPage
(),
queryWrapper
);
for
(
AssetType
assetType
:
page
.
getRecords
())
{
for
(
VideoContentCat
videoContentCat
:
page
.
getRecords
())
{
LambdaQueryWrapper
<
Asset
>
lambdaQueryWrapper
=
Wrappers
.<
Asset
>
lambdaQuery
().
eq
(
Asset:
:
getAssetTypeId
,
assetType
.
getId
());
LambdaQueryWrapper
<
VideoContent
>
lambdaQueryWrapper
=
Wrappers
.<
VideoContent
>
lambdaQuery
().
eq
(
VideoContent:
:
getVideoContentCatId
,
videoContentCat
.
getId
());
lambdaQueryWrapper
=
lambdaQueryWrapper
.
select
(
Asset:
:
getId
).
select
(
Asset:
:
getAsse
tCopyrightOwnerId
);
lambdaQueryWrapper
=
lambdaQueryWrapper
.
select
(
VideoContent:
:
getId
).
select
(
VideoContent:
:
getVideoConten
tCopyrightOwnerId
);
List
<
Asset
>
assetList
=
this
.
asse
tService
.
list
(
lambdaQueryWrapper
);
List
<
VideoContent
>
videoContentList
=
this
.
videoConten
tService
.
list
(
lambdaQueryWrapper
);
if
(!
asse
tList
.
isEmpty
())
{
if
(!
videoConten
tList
.
isEmpty
())
{
final
Set
<
String
>
assetCopyrightOwnerIdList
=
assetList
.
stream
().
map
(
Asset:
:
getAsse
tCopyrightOwnerId
).
collect
(
Collectors
.
toSet
());
final
Set
<
String
>
assetCopyrightOwnerIdList
=
videoContentList
.
stream
().
map
(
VideoContent:
:
getVideoConten
tCopyrightOwnerId
).
collect
(
Collectors
.
toSet
());
List
<
CopyrightOwner
>
copyrightOwnerList
=
this
.
copyrightOwnerService
.
listByIds
(
assetCopyrightOwnerIdList
);
List
<
CopyrightOwner
>
copyrightOwnerList
=
this
.
copyrightOwnerService
.
listByIds
(
assetCopyrightOwnerIdList
);
String
copyrightOwnerName
=
copyrightOwnerList
.
stream
().
map
(
CopyrightOwner:
:
getName
).
collect
(
Collectors
.
joining
(
"、"
));
String
copyrightOwnerName
=
copyrightOwnerList
.
stream
().
map
(
CopyrightOwner:
:
getName
).
collect
(
Collectors
.
joining
(
"、"
));
assetType
.
setCopyrightOwnerName
(
copyrightOwnerName
);
videoContentCat
.
setCopyrightOwnerName
(
copyrightOwnerName
);
}
}
}
}
return
getResult
(
page
);
return
getResult
(
page
);
}
}
@ApiOperation
(
value
=
"获取视频
分类详情"
,
notes
=
"获取视频
分类详情"
)
@ApiOperation
(
value
=
"获取视频
内容分类详情"
,
notes
=
"获取视频内容
分类详情"
)
@ApiImplicitParams
({
@ApiImplicitParams
({
@ApiImplicitParam
(
name
=
"id"
,
value
=
"标识ID"
,
dataType
=
"String"
,
paramType
=
"path"
)
@ApiImplicitParam
(
name
=
"id"
,
value
=
"标识ID"
,
dataType
=
"String"
,
paramType
=
"path"
)
})
})
@GetMapping
(
"/get/{id}"
)
@GetMapping
(
"/get/{id}"
)
@RequiresPermissions
(
"
asset:type
:get:id"
)
@RequiresPermissions
(
"
video:content:cat
:get:id"
)
public
Map
<
String
,
Object
>
getById
(
@PathVariable
(
"id"
)
String
id
)
{
public
Map
<
String
,
Object
>
getById
(
@PathVariable
(
"id"
)
String
id
)
{
AssetType
assetType
=
assetType
Service
.
getById
(
id
);
VideoContentCat
videoContentCat
=
videoContentCat
Service
.
getById
(
id
);
return
getResult
(
assetType
);
return
getResult
(
videoContentCat
);
}
}
}
}
...
...
src/main/java/cn/wisenergy/chnmuseum/party/web/controller/
Asse
tController.java
→
src/main/java/cn/wisenergy/chnmuseum/party/web/controller/
VideoConten
tController.java
View file @
93db1527
package
cn
.
wisenergy
.
chnmuseum
.
party
.
web
.
controller
;
package
cn
.
wisenergy
.
chnmuseum
.
party
.
web
.
controller
;
import
cn.wisenergy.chnmuseum.party.common.dfs.FastDFSUtils
;
import
cn.wisenergy.chnmuseum.party.common.dfs.FastDFSUtils
;
import
cn.wisenergy.chnmuseum.party.common.enums.AuditOperationEnum
;
import
cn.wisenergy.chnmuseum.party.common.enums.*
;
import
cn.wisenergy.chnmuseum.party.common.enums.AuditStatusEnum
;
import
cn.wisenergy.chnmuseum.party.common.enums.AuditTypeEnum
;
import
cn.wisenergy.chnmuseum.party.common.enums.FileTypeEnum
;
import
cn.wisenergy.chnmuseum.party.common.validator.groups.Add
;
import
cn.wisenergy.chnmuseum.party.common.validator.groups.Add
;
import
cn.wisenergy.chnmuseum.party.common.validator.groups.Update
;
import
cn.wisenergy.chnmuseum.party.common.validator.groups.Update
;
import
cn.wisenergy.chnmuseum.party.common.vo.GenericPageParam
;
import
cn.wisenergy.chnmuseum.party.common.vo.GenericPageParam
;
import
cn.wisenergy.chnmuseum.party.common.vo.VideoVo
;
import
cn.wisenergy.chnmuseum.party.model.*
;
import
cn.wisenergy.chnmuseum.party.model.Asset
;
import
cn.wisenergy.chnmuseum.party.service.*
;
import
cn.wisenergy.chnmuseum.party.model.AssetType
;
import
cn.wisenergy.chnmuseum.party.model.Audit
;
import
cn.wisenergy.chnmuseum.party.model.CopyrightOwner
;
import
cn.wisenergy.chnmuseum.party.service.AssetService
;
import
cn.wisenergy.chnmuseum.party.service.AssetTypeService
;
import
cn.wisenergy.chnmuseum.party.service.AuditService
;
import
cn.wisenergy.chnmuseum.party.service.CopyrightOwnerService
;
import
cn.wisenergy.chnmuseum.party.web.controller.base.BaseController
;
import
cn.wisenergy.chnmuseum.party.web.controller.base.BaseController
;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.TypeReference
;
import
com.alibaba.fastjson.parser.Feature
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.github.tobato.fastdfs.domain.fdfs.MetaData
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiImplicitParams
;
import
io.swagger.annotations.ApiImplicitParams
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.io.FilenameUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.shiro.authz.annotation.RequiresPermissions
;
import
org.apache.shiro.authz.annotation.RequiresPermissions
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
import
javax.annotation.Resource
;
import
javax.validation.constraints.NotNull
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Map
;
import
java.util.Set
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
/**
/**
* <pre>
* <pre>
* 视频 前端控制器
* 视频
内容
前端控制器
* </pre>
* </pre>
*
*
* @author Danny Lee
* @author Danny Lee
...
@@ -53,55 +36,51 @@ import java.util.stream.Collectors;
...
@@ -53,55 +36,51 @@ import java.util.stream.Collectors;
*/
*/
@Slf4j
@Slf4j
@RestController
@RestController
@RequestMapping
(
"/
asse
t"
)
@RequestMapping
(
"/
videoConten
t"
)
@Api
(
tags
=
{
"视频接口"
})
@Api
(
tags
=
{
"视频
内容内容
接口"
})
public
class
Asse
tController
extends
BaseController
{
public
class
VideoConten
tController
extends
BaseController
{
@Resource
@Resource
private
AssetService
asse
tService
;
private
VideoContentService
videoConten
tService
;
@Resource
@Resource
private
CopyrightOwnerService
copyrightOwnerService
;
private
CopyrightOwnerService
copyrightOwnerService
;
@Resource
@Resource
private
AssetTypeService
assetTypeService
;
private
VideoContentCatService
videoContentCatService
;
@Resource
private
AssetService
assetService
;
@Resource
@Resource
private
AuditService
auditService
;
private
AuditService
auditService
;
@PostMapping
(
value
=
"/save"
)
@PostMapping
(
value
=
"/save"
)
@RequiresPermissions
(
"asset:save"
)
@RequiresPermissions
(
"video:content:save"
)
@ApiOperation
(
value
=
"添加视频"
,
notes
=
"添加视频"
)
@ApiOperation
(
value
=
"添加视频内容"
,
notes
=
"添加视频内容"
)
public
Map
<
String
,
Object
>
saveAsset
(
@Validated
(
value
=
{
Add
.
class
})
Asset
asset
)
{
public
Map
<
String
,
Object
>
saveAsset
(
@Validated
(
value
=
{
Add
.
class
})
VideoContent
videoContent
)
{
final
List
<
VideoVo
>
filesMetadata
=
new
ArrayList
<>(
asset
.
getVideoUrlList
().
size
());
final
List
<
String
>
videoIdList
=
videoContent
.
getVideoIdList
();
if
(
videoIdList
==
null
||
videoIdList
.
isEmpty
())
{
final
List
<
String
>
videoUrlList
=
asset
.
getVideoUrlList
();
return
getFailResult
(
"400"
,
"视频文件必须上传"
);
for
(
String
videoUrl
:
videoUrlList
)
{
final
Set
<
MetaData
>
metaData
=
FastDFSUtils
.
getFileMetaData
(
videoUrl
);
String
fileName
=
metaData
.
stream
().
filter
(
x
->
"fileName"
.
equals
(
x
.
getName
())).
map
(
MetaData:
:
getValue
).
findFirst
().
get
();
Long
fileSize
=
metaData
.
stream
().
filter
(
x
->
"fileSize"
.
equals
(
x
.
getName
())).
map
(
MetaData:
:
getValue
).
map
(
Long:
:
parseLong
).
findFirst
().
get
();
String
fileExtName
=
FilenameUtils
.
getExtension
(
fileName
);
String
updateTime
=
metaData
.
stream
().
filter
(
x
->
"updateTime"
.
equals
(
x
.
getName
())).
map
(
MetaData:
:
getValue
).
findFirst
().
get
();
String
md5
=
metaData
.
stream
().
filter
(
x
->
"MD5"
.
equals
(
x
.
getName
())).
map
(
MetaData:
:
getValue
).
findFirst
().
get
();
filesMetadata
.
add
(
VideoVo
.
builder
()
.
fileName
(
fileName
)
.
fileType
(
FileTypeEnum
.
VIDEO
.
name
())
.
fileExtName
(
fileExtName
)
.
fileSize
(
fileSize
)
.
fileUrl
(
videoUrl
)
.
updateTime
(
updateTime
)
.
md5
(
md5
).
build
());
}
}
asset
.
setVideoUrl
(
JSONObject
.
toJSONString
(
filesMetadata
));
videoContent
.
setAuditStatus
(
AuditStatusEnum
.
TBC
.
name
(
));
asset
.
setAuditStatus
(
AuditStatusEnum
.
TBC
.
name
()
);
videoContent
.
setPublished
(
false
);
asset
.
setPublish
ed
(
false
);
videoContent
.
setDelet
ed
(
false
);
// 保存业务节点信息
// 保存业务节点信息
boolean
result
=
assetService
.
save
(
asse
t
);
boolean
result
=
videoContentService
.
save
(
videoConten
t
);
// 返回操作结果
// 返回操作结果
if
(
result
)
{
if
(
result
)
{
for
(
String
videoId
:
videoIdList
)
{
final
Asset
asset
=
this
.
assetService
.
getById
(
videoId
);
asset
.
setThumbnail
(
videoContent
.
getThumbnail
());
asset
.
setFileType
(
FileTypeEnum
.
VIDEO
.
name
());
asset
.
setFileCat
(
FileCatEnum
.
VIDEO_CONTENT
.
name
());
asset
.
setRefItemId
(
videoContent
.
getId
());
this
.
assetService
.
updateById
(
asset
);
}
final
Audit
audit
=
Audit
.
builder
().
content
(
""
)
final
Audit
audit
=
Audit
.
builder
().
content
(
""
)
.
isDeleted
(
false
)
.
isDeleted
(
false
)
.
operation
(
AuditOperationEnum
.
ADD
.
name
())
.
operation
(
AuditOperationEnum
.
ADD
.
name
())
.
refItemId
(
asse
t
.
getId
())
.
refItemId
(
videoConten
t
.
getId
())
.
status
(
AuditStatusEnum
.
TBC
.
name
())
.
status
(
AuditStatusEnum
.
TBC
.
name
())
.
type
(
AuditTypeEnum
.
ASSE
T
.
name
()).
build
();
.
type
(
AuditTypeEnum
.
VIDEO_CONTEN
T
.
name
()).
build
();
this
.
auditService
.
save
(
audit
);
this
.
auditService
.
save
(
audit
);
return
getSuccessResult
();
return
getSuccessResult
();
}
}
...
@@ -109,38 +88,42 @@ public class AssetController extends BaseController {
...
@@ -109,38 +88,42 @@ public class AssetController extends BaseController {
}
}
@PutMapping
(
"/update"
)
@PutMapping
(
"/update"
)
@RequiresPermissions
(
"asset:update"
)
@RequiresPermissions
(
"video:content:update"
)
@ApiOperation
(
value
=
"修改视频信息"
,
notes
=
"修改视频信息"
)
@ApiOperation
(
value
=
"修改视频内容信息"
,
notes
=
"修改视频内容信息"
)
public
Map
<
String
,
Object
>
updateAsset
(
@Validated
(
value
=
{
Update
.
class
})
Asset
asset
)
{
public
Map
<
String
,
Object
>
updateAsset
(
@Validated
(
value
=
{
Update
.
class
})
VideoContent
videoContent
)
{
final
List
<
VideoVo
>
filesMetadata
=
new
ArrayList
<>(
asset
.
getVideoUrlList
().
size
());
videoContent
.
setAuditStatus
(
AuditStatusEnum
.
TBC
.
name
());
final
List
<
String
>
videoUrlList
=
asset
.
getVideoUrlList
();
videoContent
.
setPublished
(
false
);
for
(
String
videoUrl
:
videoUrlList
)
{
videoContent
.
setDeleted
(
false
);
final
Set
<
MetaData
>
metaData
=
FastDFSUtils
.
getFileMetaData
(
videoUrl
);
boolean
flag
=
videoContentService
.
updateById
(
videoContent
);
String
fileName
=
metaData
.
stream
().
filter
(
x
->
"fileName"
.
equals
(
x
.
getName
())).
map
(
MetaData:
:
getValue
).
findFirst
().
get
();
Long
fileSize
=
metaData
.
stream
().
filter
(
x
->
"fileSize"
.
equals
(
x
.
getName
())).
map
(
MetaData:
:
getValue
).
map
(
Long:
:
parseLong
).
findFirst
().
get
();
String
fileExtName
=
FilenameUtils
.
getExtension
(
fileName
);
String
updateTime
=
metaData
.
stream
().
filter
(
x
->
"updateTime"
.
equals
(
x
.
getName
())).
map
(
MetaData:
:
getValue
).
findFirst
().
get
();
String
md5
=
metaData
.
stream
().
filter
(
x
->
"MD5"
.
equals
(
x
.
getName
())).
map
(
MetaData:
:
getValue
).
findFirst
().
get
();
filesMetadata
.
add
(
VideoVo
.
builder
()
.
fileName
(
fileName
)
.
fileType
(
FileTypeEnum
.
VIDEO
.
name
())
.
fileExtName
(
fileExtName
)
.
fileSize
(
fileSize
)
.
fileUrl
(
videoUrl
)
.
updateTime
(
updateTime
)
.
md5
(
md5
).
build
());
}
asset
.
setVideoUrl
(
JSONObject
.
toJSONString
(
filesMetadata
));
asset
.
setAuditStatus
(
AuditStatusEnum
.
TBC
.
name
());
asset
.
setPublished
(
false
);
boolean
flag
=
assetService
.
updateById
(
asset
);
if
(
flag
)
{
if
(
flag
)
{
final
List
<
String
>
videoIdList
=
videoContent
.
getVideoIdList
();
if
(
videoIdList
!=
null
&&
!
videoIdList
.
isEmpty
())
{
final
LambdaQueryWrapper
<
Asset
>
assetQueryWrapper
=
Wrappers
.<
Asset
>
lambdaQuery
().
eq
(
Asset:
:
getRefItemId
,
videoContent
.
getId
());
final
List
<
Asset
>
assetList
=
this
.
assetService
.
list
(
assetQueryWrapper
);
final
Map
<
String
,
String
>
collect
=
assetList
.
stream
().
collect
(
Collectors
.
toMap
(
Asset:
:
getId
,
Asset:
:
getFileUrl
));
for
(
String
videoId
:
videoIdList
)
{
final
Asset
asset
=
this
.
assetService
.
getById
(
videoId
);
asset
.
setThumbnail
(
videoContent
.
getThumbnail
());
asset
.
setFileType
(
FileTypeEnum
.
VIDEO
.
name
());
asset
.
setFileCat
(
FileCatEnum
.
VIDEO_CONTENT
.
name
());
asset
.
setRefItemId
(
videoContent
.
getId
());
this
.
assetService
.
updateById
(
asset
);
collect
.
remove
(
videoId
);
}
collect
.
forEach
((
k
,
v
)
->
{
final
boolean
deleted
=
this
.
assetService
.
removeById
(
k
);
if
(
deleted
)
{
FastDFSUtils
.
deleteFile
(
v
);
}
});
}
final
Audit
audit
=
Audit
.
builder
().
content
(
""
)
final
Audit
audit
=
Audit
.
builder
().
content
(
""
)
.
isDeleted
(
false
)
.
isDeleted
(
false
)
.
operation
(
AuditOperationEnum
.
EDIT
.
name
())
.
operation
(
AuditOperationEnum
.
EDIT
.
name
())
.
refItemId
(
asse
t
.
getId
())
.
refItemId
(
videoConten
t
.
getId
())
.
status
(
AuditStatusEnum
.
TBC
.
name
())
.
status
(
AuditStatusEnum
.
TBC
.
name
())
.
type
(
AuditTypeEnum
.
ASSE
T
.
name
())
.
type
(
AuditTypeEnum
.
VIDEO_CONTEN
T
.
name
())
.
build
();
.
build
();
this
.
auditService
.
save
(
audit
);
this
.
auditService
.
save
(
audit
);
...
@@ -149,25 +132,9 @@ public class AssetController extends BaseController {
...
@@ -149,25 +132,9 @@ public class AssetController extends BaseController {
return
getFailResult
();
return
getFailResult
();
}
}
@PutMapping
(
"/updateAuditStatus/{id}"
)
@RequiresPermissions
(
"asset:update:audit:status"
)
@ApiOperation
(
value
=
"更新视频审核状态"
,
notes
=
"更新视频审核状态"
)
@ApiImplicitParams
(
value
=
{
@ApiImplicitParam
(
name
=
"id"
,
value
=
"标识ID"
,
dataType
=
"String"
,
paramType
=
"path"
),
@ApiImplicitParam
(
name
=
"status"
,
value
=
"状态"
,
paramType
=
"query"
,
dataType
=
"String"
)
})
public
Map
<
String
,
Object
>
updateStatus
(
@NotNull
(
message
=
"视频ID不能为空"
)
@PathVariable
(
"id"
)
String
id
,
@RequestParam
(
"status"
)
AuditStatusEnum
status
)
{
Asset
asset
=
Asset
.
builder
().
id
(
id
).
auditStatus
(
status
.
name
()).
build
();
boolean
flag
=
assetService
.
updateById
(
asset
);
if
(
flag
)
{
return
getSuccessResult
();
}
return
getFailResult
();
}
@DeleteMapping
(
"/delete/{id}"
)
@DeleteMapping
(
"/delete/{id}"
)
@RequiresPermissions
(
"
asse
t:delete"
)
@RequiresPermissions
(
"
video:conten
t:delete"
)
@ApiOperation
(
value
=
"根据ID下架视频
"
,
notes
=
"根据ID下架视频
"
)
@ApiOperation
(
value
=
"根据ID下架视频
内容"
,
notes
=
"根据ID下架视频内容
"
)
@ApiImplicitParams
(
value
=
{
@ApiImplicitParams
(
value
=
{
@ApiImplicitParam
(
name
=
"id"
,
value
=
"标识ID"
,
paramType
=
"path"
,
dataType
=
"String"
)
@ApiImplicitParam
(
name
=
"id"
,
value
=
"标识ID"
,
paramType
=
"path"
,
dataType
=
"String"
)
})
})
...
@@ -177,7 +144,7 @@ public class AssetController extends BaseController {
...
@@ -177,7 +144,7 @@ public class AssetController extends BaseController {
.
operation
(
AuditOperationEnum
.
REMOVE
.
name
())
.
operation
(
AuditOperationEnum
.
REMOVE
.
name
())
.
refItemId
(
id
)
.
refItemId
(
id
)
.
status
(
AuditStatusEnum
.
TBC
.
name
())
.
status
(
AuditStatusEnum
.
TBC
.
name
())
.
type
(
AuditTypeEnum
.
ASSE
T
.
name
())
.
type
(
AuditTypeEnum
.
VIDEO_CONTEN
T
.
name
())
.
build
();
.
build
();
final
boolean
result
=
this
.
auditService
.
save
(
audit
);
final
boolean
result
=
this
.
auditService
.
save
(
audit
);
if
(
result
)
{
if
(
result
)
{
...
@@ -187,114 +154,112 @@ public class AssetController extends BaseController {
...
@@ -187,114 +154,112 @@ public class AssetController extends BaseController {
}
}
@GetMapping
(
"/getList"
)
@GetMapping
(
"/getList"
)
@RequiresPermissions
(
"
asse
t:list"
)
@RequiresPermissions
(
"
video:conten
t:list"
)
@ApiOperation
(
value
=
"获取视频
全部列表(无分页)"
,
notes
=
"获取视频
全部列表(无分页)"
)
@ApiOperation
(
value
=
"获取视频
内容全部列表(无分页)"
,
notes
=
"获取视频内容
全部列表(无分页)"
)
@ApiImplicitParams
(
value
=
{
@ApiImplicitParams
(
value
=
{
@ApiImplicitParam
(
name
=
"auditStatus"
,
value
=
"审核状态"
,
paramType
=
"query"
,
dataType
=
"String"
),
@ApiImplicitParam
(
name
=
"auditStatus"
,
value
=
"审核状态"
,
paramType
=
"query"
,
dataType
=
"String"
),
@ApiImplicitParam
(
name
=
"
assetTypeId"
,
value
=
"视频
分类ID"
,
paramType
=
"query"
,
dataType
=
"String"
),
@ApiImplicitParam
(
name
=
"
videoContentCatId"
,
value
=
"视频内容
分类ID"
,
paramType
=
"query"
,
dataType
=
"String"
),
@ApiImplicitParam
(
name
=
"
assetCopyrightOwnerId"
,
value
=
"视频
版权方ID"
,
paramType
=
"query"
,
dataType
=
"String"
)
@ApiImplicitParam
(
name
=
"
videoContentCopyrightOwnerId"
,
value
=
"视频内容
版权方ID"
,
paramType
=
"query"
,
dataType
=
"String"
)
})
})
public
Map
<
String
,
Object
>
get
Asse
tList
(
@RequestParam
(
value
=
"auditStatus"
,
required
=
false
)
AuditStatusEnum
auditStatus
,
public
Map
<
String
,
Object
>
get
VideoConten
tList
(
@RequestParam
(
value
=
"auditStatus"
,
required
=
false
)
AuditStatusEnum
auditStatus
,
@RequestParam
(
value
=
"assetTypeId"
,
required
=
false
)
String
assetType
Id
,
@RequestParam
(
value
=
"videoContentCatId"
,
required
=
false
)
String
videoContentCat
Id
,
@RequestParam
(
value
=
"assetCopyrightOwnerId"
,
required
=
false
)
String
asse
tCopyrightOwnerId
)
{
@RequestParam
(
value
=
"videoContentCopyrightOwnerId"
,
required
=
false
)
String
videoConten
tCopyrightOwnerId
)
{
final
LambdaQueryWrapper
<
Asse
t
>
lambdaQueryWrapper
=
new
LambdaQueryWrapper
<>();
final
LambdaQueryWrapper
<
VideoConten
t
>
lambdaQueryWrapper
=
new
LambdaQueryWrapper
<>();
//lambdaQueryWrapper.eq(Asset::getPublished, true);
//lambdaQueryWrapper.eq(Asset::getPublished, true);
if
(
auditStatus
!=
null
)
{
if
(
auditStatus
!=
null
)
{
lambdaQueryWrapper
.
eq
(
Asse
t:
:
getAuditStatus
,
auditStatus
.
name
());
lambdaQueryWrapper
.
eq
(
VideoConten
t:
:
getAuditStatus
,
auditStatus
.
name
());
}
}
if
(
StringUtils
.
isNotBlank
(
assetType
Id
))
{
if
(
StringUtils
.
isNotBlank
(
videoContentCat
Id
))
{
lambdaQueryWrapper
.
eq
(
Asset:
:
getAssetTypeId
,
assetType
Id
);
lambdaQueryWrapper
.
eq
(
VideoContent:
:
getVideoContentCatId
,
videoContentCat
Id
);
}
}
if
(
StringUtils
.
isNotBlank
(
asse
tCopyrightOwnerId
))
{
if
(
StringUtils
.
isNotBlank
(
videoConten
tCopyrightOwnerId
))
{
lambdaQueryWrapper
.
eq
(
Asset:
:
getAssetCopyrightOwnerId
,
asse
tCopyrightOwnerId
);
lambdaQueryWrapper
.
eq
(
VideoContent:
:
getVideoContentCopyrightOwnerId
,
videoConten
tCopyrightOwnerId
);
}
}
List
<
Asset
>
assetList
=
asse
tService
.
list
(
lambdaQueryWrapper
);
List
<
VideoContent
>
videoContentList
=
videoConten
tService
.
list
(
lambdaQueryWrapper
);
return
getResult
(
asse
tList
);
return
getResult
(
videoConten
tList
);
}
}
@ApiImplicitParams
(
value
=
{
@ApiImplicitParams
(
value
=
{
@ApiImplicitParam
(
name
=
"_index"
,
value
=
"分页起始偏移量"
,
paramType
=
"query"
,
dataType
=
"Integer"
),
@ApiImplicitParam
(
name
=
"_index"
,
value
=
"分页起始偏移量"
,
paramType
=
"query"
,
dataType
=
"Integer"
),
@ApiImplicitParam
(
name
=
"_size"
,
value
=
"返回条数"
,
paramType
=
"query"
,
dataType
=
"Integer"
),
@ApiImplicitParam
(
name
=
"_size"
,
value
=
"返回条数"
,
paramType
=
"query"
,
dataType
=
"Integer"
),
@ApiImplicitParam
(
name
=
"nameOrCode"
,
value
=
"名称或编码"
,
paramType
=
"query"
,
dataType
=
"String"
),
@ApiImplicitParam
(
name
=
"nameOrCode"
,
value
=
"名称或编码"
,
paramType
=
"query"
,
dataType
=
"String"
),
@ApiImplicitParam
(
name
=
"
assetTypeId"
,
value
=
"视频
分类ID"
,
paramType
=
"query"
,
dataType
=
"String"
),
@ApiImplicitParam
(
name
=
"
videoContentCatId"
,
value
=
"视频内容
分类ID"
,
paramType
=
"query"
,
dataType
=
"String"
),
@ApiImplicitParam
(
name
=
"
assetCopyrightOwnerId"
,
value
=
"视频
版权方ID"
,
paramType
=
"query"
,
dataType
=
"String"
),
@ApiImplicitParam
(
name
=
"
videoContentCopyrightOwnerId"
,
value
=
"视频内容
版权方ID"
,
paramType
=
"query"
,
dataType
=
"String"
),
@ApiImplicitParam
(
name
=
"startDate"
,
value
=
"创建时间-开始"
,
paramType
=
"query"
,
dataType
=
"String"
),
@ApiImplicitParam
(
name
=
"startDate"
,
value
=
"创建时间-开始"
,
paramType
=
"query"
,
dataType
=
"String"
),
@ApiImplicitParam
(
name
=
"endDate"
,
value
=
"创建时间-结束"
,
paramType
=
"query"
,
dataType
=
"String"
)
@ApiImplicitParam
(
name
=
"endDate"
,
value
=
"创建时间-结束"
,
paramType
=
"query"
,
dataType
=
"String"
)
})
})
@PostMapping
(
"/getPageList"
)
@PostMapping
(
"/getPageList"
)
@RequiresPermissions
(
"
asse
t:page"
)
@RequiresPermissions
(
"
video:conten
t:page"
)
@ApiOperation
(
value
=
"获取视频
分页列表"
,
notes
=
"获取视频
分页列表"
)
@ApiOperation
(
value
=
"获取视频
内容分页列表"
,
notes
=
"获取视频内容
分页列表"
)
public
Map
<
String
,
Object
>
getAssetPageList
(
GenericPageParam
genericPageParam
)
{
public
Map
<
String
,
Object
>
getAssetPageList
(
GenericPageParam
genericPageParam
)
{
LambdaQueryWrapper
<
Asse
t
>
queryWrapper
=
new
LambdaQueryWrapper
<>();
LambdaQueryWrapper
<
VideoConten
t
>
queryWrapper
=
new
LambdaQueryWrapper
<>();
// 对名称或编码模糊查询
// 对名称或编码模糊查询
if
(
StringUtils
.
isNotBlank
(
genericPageParam
.
getNameOrCode
()))
{
if
(
StringUtils
.
isNotBlank
(
genericPageParam
.
getNameOrCode
()))
{
queryWrapper
.
like
(
Asse
t:
:
getName
,
genericPageParam
.
getNameOrCode
());
queryWrapper
.
like
(
VideoConten
t:
:
getName
,
genericPageParam
.
getNameOrCode
());
}
}
// 对版权方模糊查询
if
(
StringUtils
.
isNotBlank
(
genericPageParam
.
getVideoContentCatId
()))
{
if
(
StringUtils
.
isNotBlank
(
genericPageParam
.
getAssetCopyrightOwnerId
()))
{
queryWrapper
.
eq
(
VideoContent:
:
getVideoContentCatId
,
genericPageParam
.
getVideoContentCatId
());
queryWrapper
.
like
(
Asset:
:
getAssetCopyrightOwnerId
,
genericPageParam
.
getAssetCopyrightOwnerId
());
}
}
// 对版权方模糊查询
if
(
StringUtils
.
isNotBlank
(
genericPageParam
.
getVideoContentCopyrightOwnerId
()))
{
if
(
StringUtils
.
isNotBlank
(
genericPageParam
.
getAssetTypeId
()))
{
queryWrapper
.
eq
(
VideoContent:
:
getVideoContentCopyrightOwnerId
,
genericPageParam
.
getVideoContentCopyrightOwnerId
());
queryWrapper
.
like
(
Asset:
:
getAssetTypeId
,
genericPageParam
.
getAssetTypeId
());
}
}
// 根据创建时间区间检索
// 根据创建时间区间检索
if
(
genericPageParam
.
getStartDate
()
!=
null
&&
genericPageParam
.
getEndDate
()
!=
null
)
{
if
(
genericPageParam
.
getStartDate
()
!=
null
&&
genericPageParam
.
getEndDate
()
!=
null
)
{
queryWrapper
.
ge
(
Asse
t:
:
getCreateTime
,
genericPageParam
.
getStartDate
().
atTime
(
0
,
0
,
0
))
queryWrapper
.
ge
(
VideoConten
t:
:
getCreateTime
,
genericPageParam
.
getStartDate
().
atTime
(
0
,
0
,
0
))
.
le
(
Asse
t:
:
getCreateTime
,
genericPageParam
.
getEndDate
().
atTime
(
23
,
59
,
59
));
.
le
(
VideoConten
t:
:
getCreateTime
,
genericPageParam
.
getEndDate
().
atTime
(
23
,
59
,
59
));
}
}
// 设置排序规则
// 设置排序规则
queryWrapper
.
orderByDesc
(
Asse
t:
:
getCreateTime
);
queryWrapper
.
orderByDesc
(
VideoConten
t:
:
getCreateTime
);
// 设置查询内容
// 设置查询内容
queryWrapper
.
select
(
queryWrapper
.
select
(
Asse
t:
:
getId
,
VideoConten
t:
:
getId
,
Asse
t:
:
getName
,
VideoConten
t:
:
getName
,
Asse
t:
:
getAuditStatus
,
VideoConten
t:
:
getAuditStatus
,
Asse
t:
:
getPublished
,
VideoConten
t:
:
getPublished
,
Asset:
:
getAssetType
Id
,
VideoContent:
:
getVideoContentCat
Id
,
Asset:
:
getAsse
tCopyrightOwnerId
,
VideoContent:
:
getVideoConten
tCopyrightOwnerId
,
Asse
t:
:
getCreateTime
,
VideoConten
t:
:
getCreateTime
,
Asse
t:
:
getUpdateTime
);
VideoConten
t:
:
getUpdateTime
);
Page
<
Asset
>
page
=
this
.
asse
tService
.
page
(
getPage
(),
queryWrapper
);
Page
<
VideoContent
>
page
=
this
.
videoConten
tService
.
page
(
getPage
(),
queryWrapper
);
for
(
Asset
asse
t
:
page
.
getRecords
())
{
for
(
VideoContent
videoConten
t
:
page
.
getRecords
())
{
if
(
asset
.
getAssetType
Id
()
!=
null
)
{
if
(
videoContent
.
getVideoContentCat
Id
()
!=
null
)
{
AssetType
assetType
=
this
.
assetTypeService
.
getById
(
asset
.
getAssetType
Id
());
VideoContentCat
videoContentCat
=
this
.
videoContentCatService
.
getById
(
videoContent
.
getVideoContentCat
Id
());
asset
.
setAssetTypeName
(
assetType
.
getName
());
videoContent
.
setVideoContentCatName
(
videoContentCat
.
getName
());
}
}
if
(
asset
.
getAsse
tCopyrightOwnerId
()
!=
null
)
{
if
(
videoContent
.
getVideoConten
tCopyrightOwnerId
()
!=
null
)
{
CopyrightOwner
copyrightOwner
=
this
.
copyrightOwnerService
.
getById
(
asset
.
getAsse
tCopyrightOwnerId
());
CopyrightOwner
copyrightOwner
=
this
.
copyrightOwnerService
.
getById
(
videoContent
.
getVideoConten
tCopyrightOwnerId
());
asset
.
setAsse
tCopyrightOwnerName
(
copyrightOwner
.
getName
());
videoContent
.
setVideoConten
tCopyrightOwnerName
(
copyrightOwner
.
getName
());
}
}
}
}
return
getResult
(
page
);
return
getResult
(
page
);
}
}
@ApiOperation
(
value
=
"获取视频
详情"
,
notes
=
"获取视频
详情"
)
@ApiOperation
(
value
=
"获取视频
内容详情"
,
notes
=
"获取视频内容
详情"
)
@ApiImplicitParams
({
@ApiImplicitParams
({
@ApiImplicitParam
(
name
=
"id"
,
value
=
"标识ID"
,
dataType
=
"String"
,
paramType
=
"path"
)
@ApiImplicitParam
(
name
=
"id"
,
value
=
"标识ID"
,
dataType
=
"String"
,
paramType
=
"path"
,
required
=
true
)
})
})
@GetMapping
(
"/get/{id}"
)
@GetMapping
(
"/get/{id}"
)
@RequiresPermissions
(
"
asse
t:get:id"
)
@RequiresPermissions
(
"
video:conten
t:get:id"
)
public
Map
<
String
,
Object
>
getById
(
@PathVariable
(
"id"
)
String
id
)
{
public
Map
<
String
,
Object
>
getById
(
@PathVariable
(
"id"
)
String
id
)
{
Asset
asset
=
asse
tService
.
getById
(
id
);
VideoContent
videoContent
=
videoConten
tService
.
getById
(
id
);
if
(
asset
.
getAssetType
Id
()
!=
null
)
{
if
(
videoContent
.
getVideoContentCat
Id
()
!=
null
)
{
AssetType
assetType
=
this
.
assetTypeService
.
getById
(
asset
.
getAssetType
Id
());
VideoContentCat
videoContentCat
=
this
.
videoContentCatService
.
getById
(
videoContent
.
getVideoContentCat
Id
());
if
(
assetType
!=
null
)
{
if
(
videoContentCat
!=
null
)
{
asset
.
setAssetTypeName
(
assetType
.
getName
());
videoContent
.
setVideoContentCatName
(
videoContentCat
.
getName
());
}
}
}
}
if
(
asset
.
getAsse
tCopyrightOwnerId
()
!=
null
)
{
if
(
videoContent
.
getVideoConten
tCopyrightOwnerId
()
!=
null
)
{
CopyrightOwner
copyrightOwner
=
this
.
copyrightOwnerService
.
getById
(
asset
.
getAsse
tCopyrightOwnerId
());
CopyrightOwner
copyrightOwner
=
this
.
copyrightOwnerService
.
getById
(
videoContent
.
getVideoConten
tCopyrightOwnerId
());
if
(
copyrightOwner
!=
null
)
{
if
(
copyrightOwner
!=
null
)
{
asset
.
setAsse
tCopyrightOwnerName
(
copyrightOwner
.
getName
());
videoContent
.
setVideoConten
tCopyrightOwnerName
(
copyrightOwner
.
getName
());
}
}
}
}
final
LambdaQueryWrapper
<
Asset
>
assetQueryWrapper
=
Wrappers
.<
Asset
>
lambdaQuery
().
eq
(
Asset:
:
getRefItemId
,
id
);
assetQueryWrapper
.
eq
(
Asset:
:
getFileCat
,
FileCatEnum
.
VIDEO_CONTENT
.
name
());
final
List
<
Asset
>
videoFileList
=
this
.
assetService
.
list
(
assetQueryWrapper
);
videoContent
.
setVideoFileList
(
videoFileList
);
final
String
videoUrl
=
asset
.
getVideoUrl
();
return
getResult
(
videoContent
);
final
List
<
VideoVo
>
videoVoList
=
JSONObject
.
parseObject
(
videoUrl
,
new
TypeReference
<
List
<
VideoVo
>>()
{
},
Feature
.
OrderedField
);
asset
.
setVideoUrlList
(
videoVoList
.
stream
().
map
(
VideoVo:
:
getFileUrl
).
collect
(
Collectors
.
toList
()));
return
getResult
(
asset
);
}
}
}
}
...
...
src/main/resources/mapper/AssetMapper.xml
View file @
93db1527
...
@@ -3,23 +3,26 @@
...
@@ -3,23 +3,26 @@
<mapper
namespace=
"cn.wisenergy.chnmuseum.party.mapper.AssetMapper"
>
<mapper
namespace=
"cn.wisenergy.chnmuseum.party.mapper.AssetMapper"
>
<!-- 通用查询映射结果 -->
<!-- 通用查询映射结果 -->
<resultMap
id=
"BaseResultMap"
type=
"cn.wisenergy.chnmuseum.party.model.Asset"
>
<resultMap
id=
"BaseResultMap"
type=
"cn.wisenergy.chnmuseum.party.model.VideoContent"
>
<id
column=
"id"
property=
"id"
/>
<id
column=
"id"
property=
"id"
/>
<result
column=
"name"
property=
"name"
/>
<result
column=
"ref_item_id"
property=
"refItemId"
/>
<result
column=
"thumbnail"
property=
"thumbnail"
/>
<result
column=
"file_name"
property=
"fileName"
/>
<result
column=
"asset_type_id"
property=
"assetTypeId"
/>
<result
column=
"file_ext_name"
property=
"fileExtName"
/>
<result
column=
"asset_copyright_owner_id"
property=
"assetCopyrightOwnerId"
/>
<result
column=
"file_type"
property=
"fileType"
/>
<result
column=
"video_url"
property=
"videoUrl"
/>
<result
column=
"file_size"
property=
"fileSize"
/>
<result
column=
"audit_status"
property=
"auditStatus"
/>
<result
column=
"file_cat"
property=
"fileCat"
/>
<result
column=
"is_published"
property=
"isPublished"
/>
<result
column=
"file_url"
property=
"fileUrl"
/>
<result
column=
"is_deleted"
property=
"isDeleted"
/>
<result
column=
"thumbnail"
property=
"thumbnail"
/>
<result
column=
"create_time"
property=
"createTime"
/>
<result
column=
"language"
property=
"language"
/>
<result
column=
"update_time"
property=
"updateTime"
/>
<result
column=
"md5"
property=
"md5"
/>
</resultMap>
<result
column=
"create_time"
property=
"createTime"
/>
<result
column=
"update_time"
property=
"updateTime"
/>
</resultMap>
<!-- 通用查询结果列 -->
<!-- 通用查询结果列 -->
<sql
id=
"Base_Column_List"
>
<sql
id=
"Base_Column_List"
>
id, name, thumbnail, asset_type_id, asset_copyright_owner_id, video_url, audit_status, is_published, is_deleted, create_time, update_time
id, ref_item_id, file_name, file_ext_name, file_type, file_size, file_cat, file_url, thumbnail, language, md5,
create_time, update_time
</sql>
</sql>
</mapper>
</mapper>
src/main/resources/mapper/AuditMapper.xml
View file @
93db1527
...
@@ -54,7 +54,7 @@
...
@@ -54,7 +54,7 @@
a.*,b.`name`,c.user_name AS userName
a.*,b.`name`,c.user_name AS userName
FROM
FROM
t_audit a
t_audit a
LEFT JOIN
asse
t b ON a.ref_item_id = b.id
LEFT JOIN
videoConten
t b ON a.ref_item_id = b.id
LEFT JOIN t_user c ON a.user_id = c.id
LEFT JOIN t_user c ON a.user_id = c.id
${ew.customSqlSegment}
${ew.customSqlSegment}
</select>
</select>
...
...
src/main/resources/mapper/BoardTalkingMapper.xml
View file @
93db1527
...
@@ -8,13 +8,13 @@
...
@@ -8,13 +8,13 @@
<result
column=
"board_id"
property=
"boardId"
/>
<result
column=
"board_id"
property=
"boardId"
/>
<result
column=
"real_name"
property=
"realName"
/>
<result
column=
"real_name"
property=
"realName"
/>
<result
column=
"comment"
property=
"comment"
/>
<result
column=
"comment"
property=
"comment"
/>
<result
column=
"
asset"
property=
"asse
t"
/>
<result
column=
"
videoContent"
property=
"videoConten
t"
/>
<result
column=
"create_time"
property=
"createTime"
/>
<result
column=
"create_time"
property=
"createTime"
/>
</resultMap>
</resultMap>
<!-- 通用查询结果列 -->
<!-- 通用查询结果列 -->
<sql
id=
"Base_Column_List"
>
<sql
id=
"Base_Column_List"
>
id, board_id, real_name, comment,
asse
t, create_time
id, board_id, real_name, comment,
videoConten
t, create_time
</sql>
</sql>
</mapper>
</mapper>
src/main/resources/mapper/ExhibitionBoardMapper.xml
View file @
93db1527
...
@@ -4,29 +4,29 @@
...
@@ -4,29 +4,29 @@
<!-- 通用查询映射结果 -->
<!-- 通用查询映射结果 -->
<resultMap
id=
"BaseResultMap"
type=
"cn.wisenergy.chnmuseum.party.model.ExhibitionBoard"
>
<resultMap
id=
"BaseResultMap"
type=
"cn.wisenergy.chnmuseum.party.model.ExhibitionBoard"
>
<id
column=
"id"
property=
"id"
/>
<id
column=
"id"
property=
"id"
/>
<result
column=
"name"
property=
"name"
/>
<result
column=
"name"
property=
"name"
/>
<result
column=
"board_copyright_owner_id"
property=
"boardCopyrightOwnerId"
/>
<result
column=
"board_copyright_owner_id"
property=
"boardCopyrightOwnerId"
/>
<result
column=
"exhibition_board_cat_id"
property=
"exhibitionBoardCatId"
/>
<result
column=
"exhibition_board_cat_id"
property=
"exhibitionBoardCatId"
/>
<result
column=
"cover"
property=
"cover"
/>
<result
column=
"cover"
property=
"cover"
/>
<result
column=
"qrcode_url"
property=
"qrcodeUrl"
/>
<result
column=
"qrcode_url"
property=
"qrcodeUrl"
/>
<result
column=
"remarks"
property=
"remarks"
/>
<result
column=
"remarks"
property=
"remarks"
/>
<result
column=
"asset_copyright_owner_id"
property=
"assetCopyrightOwnerId"
/>
<result
column=
"video_content_copyright_owner_id"
property=
"videoContentCopyrightOwnerId"
/>
<result
column=
"asset_type_id"
property=
"assetTypeId"
/>
<result
column=
"video_content_cat_id"
property=
"videoContentCatId"
/>
<result
column=
"asset_id"
property=
"assetId"
/>
<result
column=
"video_content_id"
property=
"videoContentId"
/>
<result
column=
"guide_audio_url"
property=
"guideAudioUrl"
/>
<result
column=
"ref_material_dir"
property=
"refMaterialDir"
/>
<result
column=
"ref_material_dir"
property=
"refMaterialDir"
/>
<result
column=
"audit_status"
property=
"auditStatus"
/>
<result
column=
"ref_material_url"
property=
"refMaterialUrl"
/>
<result
column=
"is_published"
property=
"isPublished"
/>
<result
column=
"audit_status"
property=
"auditStatus"
/>
<result
column=
"is_deleted"
property=
"isDeleted"
/>
<result
column=
"is_published"
property=
"isPublished"
/>
<result
column=
"create_time"
property=
"createTime"
/>
<result
column=
"is_deleted"
property=
"isDeleted"
/>
<result
column=
"update_time"
property=
"updateTime"
/>
<result
column=
"create_time"
property=
"createTime"
/>
</resultMap>
<result
column=
"update_time"
property=
"updateTime"
/>
</resultMap>
<!-- 通用查询结果列 -->
<!-- 通用查询结果列 -->
<sql
id=
"Base_Column_List"
>
<sql
id=
"Base_Column_List"
>
id, name, board_copyright_owner_id, exhibition_board_cat_id, cover, qrcode_url, remarks, asset_copyright_owner_id, asset_type_id, asset_id, guide_audio_url, ref_material_dir, ref_material_url, audit_status, is_published, is_deleted, create_time, update_time
id, name, board_copyright_owner_id, exhibition_board_cat_id, cover, qrcode_url, remarks,
video_content_copyright_owner_id, video_content_cat_id, video_content_id, ref_material_dir,
audit_status, is_published, is_deleted, create_time, update_time
</sql>
</sql>
</mapper>
</mapper>
src/main/resources/mapper/
AssetType
Mapper.xml
→
src/main/resources/mapper/
VideoContentCat
Mapper.xml
View file @
93db1527
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"cn.wisenergy.chnmuseum.party.mapper.
AssetType
Mapper"
>
<mapper
namespace=
"cn.wisenergy.chnmuseum.party.mapper.
VideoContentCat
Mapper"
>
<!-- 通用查询映射结果 -->
<!-- 通用查询映射结果 -->
<resultMap
id=
"BaseResultMap"
type=
"cn.wisenergy.chnmuseum.party.model.
AssetType
"
>
<resultMap
id=
"BaseResultMap"
type=
"cn.wisenergy.chnmuseum.party.model.
VideoContentCat
"
>
<id
column=
"id"
property=
"id"
/>
<id
column=
"id"
property=
"id"
/>
<result
column=
"name"
property=
"name"
/>
<result
column=
"name"
property=
"name"
/>
<result
column=
"remarks"
property=
"remarks"
/>
<result
column=
"remarks"
property=
"remarks"
/>
<result
column=
"copyright_owner_id"
property=
"copyrightOwnerId"
/>
<result
column=
"copyright_owner_id"
property=
"copyrightOwnerId"
/>
<result
column=
"create_time"
property=
"createTime"
/>
<result
column=
"create_time"
property=
"createTime"
/>
<result
column=
"update_time"
property=
"updateTime"
/>
<result
column=
"update_time"
property=
"updateTime"
/>
</resultMap>
</resultMap>
<!-- 通用查询结果列 -->
<!-- 通用查询结果列 -->
<sql
id=
"Base_Column_List"
>
<sql
id=
"Base_Column_List"
>
...
...
src/main/resources/mapper/VideoContentMapper.xml
0 → 100644
View file @
93db1527
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"cn.wisenergy.chnmuseum.party.mapper.VideoContentMapper"
>
<!-- 通用查询映射结果 -->
<resultMap
id=
"BaseResultMap"
type=
"cn.wisenergy.chnmuseum.party.model.VideoContent"
>
<id
column=
"id"
property=
"id"
/>
<result
column=
"name"
property=
"name"
/>
<result
column=
"video_content_copyright_owner_id"
property=
"videoContentCopyrightOwnerId"
/>
<result
column=
"video_content_cat_id"
property=
"videoContentCatId"
/>
<result
column=
"thumbnail"
property=
"thumbnail"
/>
<result
column=
"audit_status"
property=
"auditStatus"
/>
<result
column=
"is_published"
property=
"published"
/>
<result
column=
"is_deleted"
property=
"deleted"
/>
<result
column=
"create_time"
property=
"createTime"
/>
<result
column=
"update_time"
property=
"updateTime"
/>
</resultMap>
<!-- 通用查询结果列 -->
<sql
id=
"Base_Column_List"
>
id, name, video_content_copyright_owner_id, video_content_cat_id, thumbnail, audit_status, is_published, is_deleted, create_time, update_time
</sql>
</mapper>
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment