Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
cfld-liyeyun-admin
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
cfld-backend
cfld-liyeyun-admin
Commits
6810ef4e
Commit
6810ef4e
authored
Nov 29, 2023
by
lixinglin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
轮播视频,上传封面
parent
be5c1e0d
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
175 additions
and
37 deletions
+175
-37
SysCarouselInfoController.java
...om/ruoyi/system/controller/SysCarouselInfoController.java
+39
-17
SysCarouselInfo.java
...rc/main/java/com/ruoyi/system/domain/SysCarouselInfo.java
+41
-16
ISysCarouselInfoService.java
...ava/com/ruoyi/system/service/ISysCarouselInfoService.java
+4
-1
SysCarouselInfoServiceImpl.java
...ruoyi/system/service/impl/SysCarouselInfoServiceImpl.java
+12
-0
SysCarouselInfoMapper.xml
.../main/resources/mapper/carousel/SysCarouselInfoMapper.xml
+7
-2
info.html
...stem/src/main/resources/templates/carousel/info/info.html
+15
-1
video_cover.html
...c/main/resources/templates/carousel/info/video_cover.html
+57
-0
No files found.
ruoyi-system/src/main/java/com/ruoyi/system/controller/SysCarouselInfoController.java
View file @
6810ef4e
package
com
.
ruoyi
.
system
.
controller
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
com.github.pagehelper.PageInfo
;
import
com.ruoyi.common.annotation.Log
;
import
com.ruoyi.common.core.controller.BaseController
;
import
com.ruoyi.common.core.domain.AjaxResult
;
import
com.ruoyi.common.core.page.TableDataInfo
;
import
com.ruoyi.common.enums.BusinessType
;
import
com.ruoyi.common.utils.poi.ExcelUtil
;
import
com.ruoyi.system.VO.BaseInfoParam
;
import
com.ruoyi.system.VO.BaseInfoVO
;
import
com.ruoyi.system.domain.DevelopmentInfo
;
import
com.ruoyi.system.domain.MegalopolisInfo
;
import
com.ruoyi.system.domain.ParkInfo
;
import
com.ruoyi.system.service.*
;
import
com.ruoyi.system.domain.SysCarouselInfo
;
import
com.ruoyi.system.service.IDevelopmentInfoService
;
import
com.ruoyi.system.service.IMegalopolisInfoService
;
import
com.ruoyi.system.service.IParkInfoService
;
import
com.ruoyi.system.service.ISysCarouselInfoService
;
import
org.apache.shiro.authz.annotation.RequiresPermissions
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Controller
;
import
org.springframework.ui.ModelMap
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.PathVariable
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.ResponseBody
;
import
com.ruoyi.common.annotation.Log
;
import
com.ruoyi.common.enums.BusinessType
;
import
com.ruoyi.system.domain.SysCarouselInfo
;
import
com.ruoyi.common.core.controller.BaseController
;
import
com.ruoyi.common.core.domain.AjaxResult
;
import
com.ruoyi.common.utils.poi.ExcelUtil
;
import
com.ruoyi.common.core.page.TableDataInfo
;
import
org.springframework.web.bind.annotation.*
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.stream.Collectors
;
/**
* 轮播图信息Controller
...
...
@@ -62,6 +60,16 @@ public class SysCarouselInfoController extends BaseController
return
prefix
+
"/info"
;
}
@GetMapping
(
"/videoCover"
)
public
String
industry
(
HttpServletRequest
request
,
ModelMap
mmap
)
{
String
id
=
request
.
getParameter
(
"videoId"
);
SysCarouselInfo
sysCarouselInfo
=
sysCarouselInfoService
.
selectSysCarouselInfoById
(
Long
.
parseLong
(
id
));
mmap
.
put
(
"sysCarouselInfo"
,
sysCarouselInfo
);
mmap
.
put
(
"id"
,
id
);
return
prefix
+
"/video_cover"
;
}
/**
* 查询轮播图信息列表
*/
...
...
@@ -122,6 +130,20 @@ public class SysCarouselInfoController extends BaseController
return
prefix
+
"/edit"
;
}
/**
* 保存封面
*/
@Log
(
title
=
"保存封面"
,
businessType
=
BusinessType
.
UPDATE
)
@PostMapping
(
"/editVideoCover"
)
@ResponseBody
public
AjaxResult
editVideoCover
(
SysCarouselInfo
sysCarouselInfo
)
{
return
toAjax
(
sysCarouselInfoService
.
updateVideoCover
(
sysCarouselInfo
));
}
/**
* 修改保存轮播图信息
*/
...
...
ruoyi-system/src/main/java/com/ruoyi/system/domain/SysCarouselInfo.java
View file @
6810ef4e
...
...
@@ -11,47 +11,72 @@ import lombok.Data;
* @date 2023-11-28
*/
@Data
public
class
SysCarouselInfo
extends
BaseEntity
{
public
class
SysCarouselInfo
extends
BaseEntity
{
private
static
final
long
serialVersionUID
=
1L
;
/** 主键id */
/**
* 主键id
*/
private
Long
id
;
/** 图片地址链接 */
/**
* 图片地址链接
*/
@Excel
(
name
=
"图片地址链接"
)
private
String
imgUrl
;
/** 图片描述 */
@Excel
(
name
=
"描述"
)
/**
* 图片描述
*/
@Excel
(
name
=
"图片描述"
)
private
String
description
;
/** 图片状态(0-禁用;1-可用) */
@Excel
(
name
=
"状态"
,
readConverterExp
=
"0=-禁用;1-可用"
)
/**
* 图片状态(0-禁用;1-可用)
*/
@Excel
(
name
=
"图片状态"
,
readConverterExp
=
"0=-禁用;1-可用"
)
private
Integer
status
;
/** 类型(0 -都市圈、1-开发区、2-园区、3-首页) */
@Excel
(
name
=
"资源所属类型"
,
readConverterExp
=
"0=,-=都市圈、1-开发区、2-园区、3-首页"
)
/**
* 类型(0 -都市圈、1-开发区、2-园区、3-首页)
*/
@Excel
(
name
=
"类型"
,
readConverterExp
=
"0=,-=都市圈、1-开发区、2-园区、3-首页"
)
private
Integer
type
;
/** 排序 */
/**
* 排序
*/
@Excel
(
name
=
"排序"
)
private
Integer
orderNumber
;
/** 关联id */
/**
* 关联id
*/
@Excel
(
name
=
"关联id"
)
private
Long
associationId
;
/** 关联名称 */
/**
* 关联名称
*/
@Excel
(
name
=
"关联名称"
)
private
String
associationName
;
/** 转跳链接 */
/**
* 转跳链接
*/
@Excel
(
name
=
"转跳链接"
)
private
String
linkUrl
;
/** 类型 1-图片 2-视频 3-其他 */
@Excel
(
name
=
"类型 1-图片 2-视频 3-其他"
)
/**
* 类型 1-图 2-视频 3.其他
*/
@Excel
(
name
=
"类型 1-图 2-视频 3.其他"
)
private
Integer
urlType
;
/**
* 视频封面
*/
@Excel
(
name
=
"视频封面"
)
private
String
videoCover
;
}
ruoyi-system/src/main/java/com/ruoyi/system/service/ISysCarouselInfoService.java
View file @
6810ef4e
package
com
.
ruoyi
.
system
.
service
;
import
java.util.List
;
import
com.ruoyi.system.domain.SysCarouselInfo
;
import
java.util.List
;
/**
* 轮播图信息Service接口
*
...
...
@@ -43,6 +44,8 @@ public interface ISysCarouselInfoService
*/
public
int
updateSysCarouselInfo
(
SysCarouselInfo
sysCarouselInfo
);
int
updateVideoCover
(
SysCarouselInfo
sysCarouselInfo
);
/**
* 批量删除轮播图信息
*
...
...
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysCarouselInfoServiceImpl.java
View file @
6810ef4e
...
...
@@ -5,6 +5,7 @@ import com.ruoyi.common.utils.DateUtils;
import
com.ruoyi.system.domain.SysCarouselInfo
;
import
com.ruoyi.system.mapper.SysCarouselInfoMapper
;
import
com.ruoyi.system.service.ISysCarouselInfoService
;
import
org.apache.commons.lang3.ObjectUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
...
...
@@ -104,6 +105,17 @@ public class SysCarouselInfoServiceImpl implements ISysCarouselInfoService {
return
sysCarouselInfoMapper
.
updateSysCarouselInfo
(
sysCarouselInfo
);
}
@Override
public
int
updateVideoCover
(
SysCarouselInfo
sysCarouselInfo
)
{
Long
id
=
sysCarouselInfo
.
getId
();
SysCarouselInfo
sysCarouselInfo1
=
sysCarouselInfoMapper
.
selectSysCarouselInfoById
(
id
);
String
videoCover
=
sysCarouselInfo
.
getVideoCover
();
if
(
""
.
equals
(
videoCover
)
||
!
ObjectUtils
.
isEmpty
(
videoCover
))
{
sysCarouselInfo1
.
setVideoCover
(
videoCover
);
}
return
sysCarouselInfoMapper
.
updateSysCarouselInfo
(
sysCarouselInfo1
);
}
/**
* 批量删除轮播图信息
*
...
...
ruoyi-system/src/main/resources/mapper/carousel/SysCarouselInfoMapper.xml
View file @
6810ef4e
...
...
@@ -17,10 +17,11 @@
<result
property=
"associationName"
column=
"association_name"
/>
<result
property=
"linkUrl"
column=
"link_url"
/>
<result
property=
"urlType"
column=
"url_type"
/>
<result
property=
"videoCover"
column=
"video_cover"
/>
</resultMap>
<sql
id=
"selectSysCarouselInfoVo"
>
select id, create_time, update_time, img_url, description, status, type, order_number, association_id, association_name, link_url, url_type from sys_carousel_info
select id, create_time, update_time, img_url, description, status, type, order_number, association_id, association_name, link_url, url_type
, video_cover
from sys_carousel_info
</sql>
<select
id=
"selectSysCarouselInfoList"
parameterType=
"SysCarouselInfo"
resultMap=
"SysCarouselInfoResult"
>
...
...
@@ -34,7 +35,8 @@
<if
test=
"associationId != null "
>
and association_id = #{associationId}
</if>
<if
test=
"associationName != null and associationName != ''"
>
and association_name like concat('%', #{associationName}, '%')
</if>
<if
test=
"linkUrl != null and linkUrl != ''"
>
and link_url = #{linkUrl}
</if>
<if
test=
"urlType != null and urlType != ''"
>
and url_type = #{urlType}
</if>
<if
test=
"urlType != null "
>
and url_type = #{urlType}
</if>
<if
test=
"videoCover != null and videoCover != ''"
>
and video_cover = #{videoCover}
</if>
</where>
</select>
...
...
@@ -57,6 +59,7 @@
<if
test=
"associationName != null"
>
association_name,
</if>
<if
test=
"linkUrl != null"
>
link_url,
</if>
<if
test=
"urlType != null"
>
url_type,
</if>
<if
test=
"videoCover != null"
>
video_cover,
</if>
</trim>
<trim
prefix=
"values ("
suffix=
")"
suffixOverrides=
","
>
<if
test=
"createTime != null"
>
#{createTime},
</if>
...
...
@@ -70,6 +73,7 @@
<if
test=
"associationName != null"
>
#{associationName},
</if>
<if
test=
"linkUrl != null"
>
#{linkUrl},
</if>
<if
test=
"urlType != null"
>
#{urlType},
</if>
<if
test=
"videoCover != null"
>
#{videoCover},
</if>
</trim>
</insert>
...
...
@@ -87,6 +91,7 @@
<if
test=
"associationName != null"
>
association_name = #{associationName},
</if>
<if
test=
"linkUrl != null"
>
link_url = #{linkUrl},
</if>
<if
test=
"urlType != null"
>
url_type = #{urlType},
</if>
<if
test=
"videoCover != null"
>
video_cover = #{videoCover},
</if>
</trim>
where id = #{id}
</update>
...
...
ruoyi-system/src/main/resources/templates/carousel/info/info.html
View file @
6810ef4e
...
...
@@ -91,6 +91,8 @@
removeUrl
:
prefix
+
"/remove"
,
exportUrl
:
prefix
+
"/export"
,
modalName
:
"轮播图信息"
,
sortName
:
"id"
,
sortOrder
:
"desc"
,
columns
:
[{
checkbox
:
true
},
...
...
@@ -108,7 +110,7 @@
actions
.
push
(
'<img style="width:50px;height:50px" src='
+
value
+
'>'
);
}
else
if
(
urlType
==
2
)
{
actions
.
push
(
'<video
width="50px" height="
50px" controls>'
+
(
'<video
style="width:50px;height:
50px" controls>'
+
'<source src="'
+
value
+
'" type="video/mp4">'
+
' 您的浏览器不支持Video标签。'
+
'</video>'
);
...
...
@@ -171,6 +173,18 @@
align
:
'center'
,
formatter
:
function
(
value
,
row
,
index
)
{
var
actions
=
[];
let
urlType
=
row
.
urlType
;
if
(
urlType
==
2
)
{
var
title
=
"
\
'编辑封面
\
'"
;
var
url
=
"
\
'/carousel/info/videoCover?videoId="
+
row
.
id
+
"
\
'"
;
actions
.
push
(
'<a class="btn btn-primary btn-xs '
+
editFlag
+
'" href="javascript:void(0)"'
+
' onclick="$.modal.open('
+
title
+
','
+
url
+
')">'
+
'<i class="fa fa-edit"></i>'
+
'编辑封面</a> '
);
}
actions
.
push
(
'<a class="btn btn-success btn-xs '
+
editFlag
+
'" href="javascript:void(0)" onclick="$.operate.edit(
\'
'
+
row
.
id
+
'
\'
)"><i class="fa fa-edit"></i>编辑</a> '
);
actions
.
push
(
'<a class="btn btn-danger btn-xs '
+
removeFlag
+
'" href="javascript:void(0)" onclick="$.operate.remove(
\'
'
+
row
.
id
+
'
\'
)"><i class="fa fa-remove"></i>删除</a>'
);
return
actions
.
join
(
''
);
...
...
ruoyi-system/src/main/resources/templates/carousel/info/video_cover.html
0 → 100644
View file @
6810ef4e
<!DOCTYPE html>
<html
lang=
"zh"
xmlns:th=
"http://www.thymeleaf.org"
>
<head>
<th:block
th:include=
"include :: header('封面信息')"
/>
<th:block
th:include=
"include :: bootstrap-fileinput-css"
/>
</head>
<body
class=
"white-bg"
>
<div
class=
"wrapper wrapper-content animated fadeInRight ibox-content"
>
<form
class=
"form-horizontal m"
id=
"form-info-edit"
th:object=
"${sysCarouselInfo}"
>
<input
name=
"id"
th:field=
"*{id}"
type=
"hidden"
>
<div
class=
"form-group"
>
<label
class=
"col-sm-3 control-label"
>
图片地址链接:
</label>
<div
class=
"col-sm-8"
>
<input
type=
"hidden"
name=
"videoCover"
th:field=
"*{videoCover}"
>
<div
class=
"file-loading"
>
<input
class=
"form-control img-upload"
id=
"videoCover"
name=
"file"
type=
"file"
accept=
"image/*"
>
</div>
</div>
</div>
</form>
</div>
<th:block
th:include=
"include :: footer"
/>
<th:block
th:include=
"include :: bootstrap-fileinput-js"
/>
<script
th:inline=
"javascript"
>
var
prefix
=
ctx
+
"carousel/info"
$
(
"#form-info-add"
).
validate
({
focusCleanup
:
true
});
function
submitHandler
()
{
if
(
$
.
validate
.
form
())
{
$
.
operate
.
save
(
prefix
+
"/editVideoCover"
,
$
(
'#form-info-edit'
).
serialize
());
}
}
$
(
".img-upload"
).
each
(
function
(
i
)
{
var
val
=
$
(
"input[name='"
+
this
.
id
+
"']"
).
val
()
$
(
this
).
fileinput
({
// 'uploadUrl': ctx + 'common/upload',
'uploadUrl'
:
ctx
+
'sysFile/uploadImgHuawei'
,
initialPreviewAsData
:
true
,
initialPreview
:
[
val
],
maxFileCount
:
1
,
autoReplace
:
true
}).
on
(
'fileuploaded'
,
function
(
event
,
data
,
previewId
,
index
)
{
$
(
"input[name='"
+
event
.
currentTarget
.
id
+
"']"
).
val
(
data
.
response
.
url
)
}).
on
(
'fileremoved'
,
function
(
event
,
id
,
index
)
{
$
(
"input[name='"
+
event
.
currentTarget
.
id
+
"']"
).
val
(
''
);
})
$
(
this
).
fileinput
(
'_initFileActions'
);
});
</script>
</body>
</html>
\ No newline at end of file
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