Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
O
online-edu-backend
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Redmine
Redmine
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
online-edu
online-edu-backend
Commits
79e857d2
Commit
79e857d2
authored
May 27, 2021
by
liuyang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
完成首页配置接口
parent
6ccfd249
Show whitespace changes
Inline
Side-by-side
Showing
21 changed files
with
456 additions
and
0 deletions
+456
-0
SwiperStatusEnum.java
src/main/java/com/qkdata/biz/enums/SwiperStatusEnum.java
+6
-0
MainPageTagConfigController.java
...iz/management/controller/MainPageTagConfigController.java
+64
-0
RecommendConfigController.java
.../biz/management/controller/RecommendConfigController.java
+53
-0
SwiperConfigController.java
...ata/biz/management/controller/SwiperConfigController.java
+65
-0
CourseTagPO.java
...in/java/com/qkdata/biz/management/entity/CourseTagPO.java
+4
-0
RecommendConfigPO.java
...a/com/qkdata/biz/management/entity/RecommendConfigPO.java
+34
-0
SwiperConfigPO.java
...java/com/qkdata/biz/management/entity/SwiperConfigPO.java
+44
-0
RecommendConfigMapper.java
...m/qkdata/biz/management/mapper/RecommendConfigMapper.java
+18
-0
SwiperConfigMapper.java
.../com/qkdata/biz/management/mapper/SwiperConfigMapper.java
+22
-0
RecommendConfigService.java
...qkdata/biz/management/service/RecommendConfigService.java
+20
-0
SwiperConfigService.java
...om/qkdata/biz/management/service/SwiperConfigService.java
+42
-0
AddMainPageTagConfigModel.java
...m/qkdata/biz/management/vo/AddMainPageTagConfigModel.java
+8
-0
QueryCourseTagModel.java
...ava/com/qkdata/biz/management/vo/QueryCourseTagModel.java
+1
-0
SwiperConfigModel.java
.../java/com/qkdata/biz/management/vo/SwiperConfigModel.java
+30
-0
SwiperLInkCourseModel.java
...a/com/qkdata/biz/management/vo/SwiperLInkCourseModel.java
+9
-0
SwiperModifyStatusModel.java
...com/qkdata/biz/management/vo/SwiperModifyStatusModel.java
+10
-0
V1.0.4__update.sql
src/main/resources/db/migration/V1.0.4__update.sql
+3
-0
V1.0.5__update.sql
src/main/resources/db/migration/V1.0.5__update.sql
+3
-0
course_tagMapper.xml
src/main/resources/mappers/management/course_tagMapper.xml
+3
-0
recommend_configMapper.xml
...n/resources/mappers/management/recommend_configMapper.xml
+5
-0
swiper_configMapper.xml
...main/resources/mappers/management/swiper_configMapper.xml
+12
-0
No files found.
src/main/java/com/qkdata/biz/enums/SwiperStatusEnum.java
0 → 100644
View file @
79e857d2
package
com
.
qkdata
.
biz
.
enums
;
public
enum
SwiperStatusEnum
{
ENABLE
,
DISABLE
}
src/main/java/com/qkdata/biz/management/controller/MainPageTagConfigController.java
0 → 100644
View file @
79e857d2
package
com
.
qkdata
.
biz
.
management
.
controller
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.qkdata.biz.common.BizConstants
;
import
com.qkdata.biz.management.entity.CourseTagPO
;
import
com.qkdata.biz.management.service.CourseTagService
;
import
com.qkdata.biz.management.vo.AddMainPageTagConfigModel
;
import
com.qkdata.biz.management.vo.QueryCourseTagModel
;
import
com.qkdata.common.base.model.PageResult
;
import
com.qkdata.common.base.model.Result
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.apache.shiro.authz.annotation.Logical
;
import
org.apache.shiro.authz.annotation.RequiresRoles
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
import
java.util.List
;
@Api
(
tags
=
"首页标签配置"
)
@RestController
@RequestMapping
(
"/api/mgr/mainPageTagConfig"
)
public
class
MainPageTagConfigController
{
@Autowired
private
CourseTagService
tagService
;
@ApiOperation
(
"获取标签待选列表"
)
@PostMapping
(
"/tags"
)
@RequiresRoles
(
value
=
{
BizConstants
.
ROLE_ADMIN
,
BizConstants
.
ROLE_OPERATOR
},
logical
=
Logical
.
OR
)
public
PageResult
<
CourseTagPO
>
tags
(
@RequestBody
QueryCourseTagModel
model
){
model
.
setIncludeRecommend
(
false
);
return
tagService
.
queryPageList
(
model
);
}
@ApiOperation
(
"获取首页标签配置"
)
@GetMapping
(
""
)
@RequiresRoles
(
value
=
{
BizConstants
.
ROLE_ADMIN
,
BizConstants
.
ROLE_OPERATOR
},
logical
=
Logical
.
OR
)
public
Result
<
List
<
CourseTagPO
>>
getRemommend
(){
List
<
CourseTagPO
>
list
=
tagService
.
list
(
Wrappers
.<
CourseTagPO
>
lambdaQuery
().
eq
(
CourseTagPO:
:
getRecommend
,
true
));
return
Result
.
succeed
(
list
);
}
@ApiOperation
(
"添加标签"
)
@PostMapping
(
"/add"
)
@RequiresRoles
(
value
=
{
BizConstants
.
ROLE_ADMIN
,
BizConstants
.
ROLE_OPERATOR
},
logical
=
Logical
.
OR
)
public
Result
<
String
>
add
(
@RequestBody
AddMainPageTagConfigModel
model
){
CourseTagPO
po
=
new
CourseTagPO
();
po
.
setId
(
model
.
getTagId
());
po
.
setRecommend
(
true
);
tagService
.
updateById
(
po
);
return
Result
.
succeed
(
"ok"
);
}
@ApiOperation
(
"删除标签"
)
@GetMapping
(
"/delete/{tagId}"
)
@RequiresRoles
(
value
=
{
BizConstants
.
ROLE_ADMIN
,
BizConstants
.
ROLE_OPERATOR
},
logical
=
Logical
.
OR
)
public
Result
<
String
>
delete
(
@PathVariable
Long
tagId
){
CourseTagPO
po
=
new
CourseTagPO
();
po
.
setId
(
tagId
);
po
.
setRecommend
(
false
);
tagService
.
updateById
(
po
);
return
Result
.
succeed
(
"ok"
);
}
}
src/main/java/com/qkdata/biz/management/controller/RecommendConfigController.java
0 → 100644
View file @
79e857d2
package
com
.
qkdata
.
biz
.
management
.
controller
;
import
com.qkdata.biz.common.BizConstants
;
import
com.qkdata.biz.management.entity.RecommendConfigPO
;
import
com.qkdata.biz.management.service.RecommendConfigService
;
import
com.qkdata.common.base.model.Result
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.apache.shiro.authz.annotation.Logical
;
import
org.apache.shiro.authz.annotation.RequiresRoles
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
import
java.util.List
;
/**
* <p>
* 推荐课程配置 前端控制器
* </p>
*
* @author liuyang
* @since 2021-05-27
*/
@Api
(
tags
=
"首页推荐配置"
)
@RestController
@RequestMapping
(
"/api/mgr/recommendConfig"
)
public
class
RecommendConfigController
{
@Autowired
private
RecommendConfigService
configService
;
@ApiOperation
(
"获取推荐列表"
)
@GetMapping
(
"/list"
)
@RequiresRoles
(
value
=
{
BizConstants
.
ROLE_ADMIN
,
BizConstants
.
ROLE_OPERATOR
},
logical
=
Logical
.
OR
)
public
Result
<
List
<
RecommendConfigPO
>>
list
(){
Result
.
succeed
(
configService
.
list
());
}
@ApiOperation
(
"添加推荐"
)
@PostMapping
(
"/add"
)
@RequiresRoles
(
value
=
{
BizConstants
.
ROLE_ADMIN
,
BizConstants
.
ROLE_OPERATOR
},
logical
=
Logical
.
OR
)
public
Result
<
String
>
add
(
@RequestBody
RecommendConfigPO
po
){
configService
.
save
(
po
);
return
Result
.
succeed
(
"ok"
);
}
@ApiOperation
(
"删除推荐"
)
@GetMapping
(
"/delete/{id}"
)
@RequiresRoles
(
value
=
{
BizConstants
.
ROLE_ADMIN
,
BizConstants
.
ROLE_OPERATOR
},
logical
=
Logical
.
OR
)
public
Result
<
String
>
delete
(
@PathVariable
Long
id
){
configService
.
removeById
(
id
);
return
Result
.
succeed
(
"ok"
);
}
}
src/main/java/com/qkdata/biz/management/controller/SwiperConfigController.java
0 → 100644
View file @
79e857d2
package
com
.
qkdata
.
biz
.
management
.
controller
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.qkdata.biz.common.BizConstants
;
import
com.qkdata.biz.management.entity.SwiperConfigPO
;
import
com.qkdata.biz.management.service.SwiperConfigService
;
import
com.qkdata.biz.management.vo.SwiperConfigModel
;
import
com.qkdata.biz.management.vo.SwiperLInkCourseModel
;
import
com.qkdata.biz.management.vo.SwiperModifyStatusModel
;
import
com.qkdata.common.base.model.Result
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.apache.shiro.authz.annotation.Logical
;
import
org.apache.shiro.authz.annotation.RequiresRoles
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
import
java.util.List
;
/**
* <p>
* 轮播图配置 前端控制器
* </p>
*
* @author liuyang
* @since 2021-05-27
*/
@Api
(
tags
=
"首页轮播图配置"
)
@RestController
@RequestMapping
(
"/api/mgr/swiperConfig"
)
public
class
SwiperConfigController
{
@Autowired
private
SwiperConfigService
swiperConfigService
;
@ApiOperation
(
"获取轮播图配置"
)
@GetMapping
(
""
)
@RequiresRoles
(
value
=
{
BizConstants
.
ROLE_ADMIN
,
BizConstants
.
ROLE_OPERATOR
},
logical
=
Logical
.
OR
)
public
Result
<
List
<
SwiperConfigModel
>>
list
(){
List
<
SwiperConfigModel
>
list
=
swiperConfigService
.
listConfig
();
return
Result
.
succeed
(
list
);
}
@ApiOperation
(
"添加轮播图"
)
@PostMapping
(
"/save"
)
@RequiresRoles
(
value
=
{
BizConstants
.
ROLE_ADMIN
,
BizConstants
.
ROLE_OPERATOR
},
logical
=
Logical
.
OR
)
public
Result
<
Long
>
add
(
@RequestBody
SwiperConfigPO
po
){
swiperConfigService
.
saveOrUpdate
(
po
);
return
Result
.
succeed
(
0L
);
}
@ApiOperation
(
"关联课程"
)
@PostMapping
(
"/linkCourse"
)
@RequiresRoles
(
value
=
{
BizConstants
.
ROLE_ADMIN
,
BizConstants
.
ROLE_OPERATOR
},
logical
=
Logical
.
OR
)
public
Result
<
String
>
linkCourse
(
@RequestBody
SwiperLInkCourseModel
model
){
swiperConfigService
.
linkCourse
(
model
);
return
Result
.
succeed
(
"ok"
);
}
@ApiOperation
(
"修改状态"
)
@PostMapping
(
"/modifyStatus"
)
@RequiresRoles
(
value
=
{
BizConstants
.
ROLE_ADMIN
,
BizConstants
.
ROLE_OPERATOR
},
logical
=
Logical
.
OR
)
public
Result
<
String
>
modifyStatus
(
@RequestBody
SwiperModifyStatusModel
model
){
swiperConfigService
.
modifyStatus
(
model
);
return
Result
.
succeed
(
"ok"
);
}
}
src/main/java/com/qkdata/biz/management/entity/CourseTagPO.java
View file @
79e857d2
...
@@ -24,6 +24,10 @@ public class CourseTagPO extends BasePO {
...
@@ -24,6 +24,10 @@ public class CourseTagPO extends BasePO {
* 名称
* 名称
*/
*/
private
String
name
;
private
String
name
;
/**
* 首页推荐
*/
private
Boolean
recommend
;
}
}
src/main/java/com/qkdata/biz/management/entity/RecommendConfigPO.java
0 → 100644
View file @
79e857d2
package
com
.
qkdata
.
biz
.
management
.
entity
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.qkdata.common.base.entity.BasePO
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
/**
* <p>
* 推荐课程配置
* </p>
*
* @author liuyang
* @since 2021-05-27
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@TableName
(
"recommend_config"
)
public
class
RecommendConfigPO
extends
BasePO
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 课程ID
*/
private
Long
courseId
;
/**
* 排序号
*/
private
Integer
sortNo
;
}
src/main/java/com/qkdata/biz/management/entity/SwiperConfigPO.java
0 → 100644
View file @
79e857d2
package
com
.
qkdata
.
biz
.
management
.
entity
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.qkdata.biz.enums.SwiperStatusEnum
;
import
com.qkdata.common.base.entity.BasePO
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
/**
* <p>
* 轮播图配置
* </p>
*
* @author liuyang
* @since 2021-05-27
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@TableName
(
"swiper_config"
)
public
class
SwiperConfigPO
extends
BasePO
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 封面图片url
*/
private
String
imageUrl
;
/**
* 课程ID
*/
private
Long
courseId
;
/**
* 排序号
*/
private
Integer
sortNo
;
/**
* 状态
*/
private
SwiperStatusEnum
status
;
}
src/main/java/com/qkdata/biz/management/mapper/RecommendConfigMapper.java
0 → 100644
View file @
79e857d2
package
com
.
qkdata
.
biz
.
management
.
mapper
;
import
com.qkdata.biz.management.entity.RecommendConfigPO
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
org.apache.ibatis.annotations.Mapper
;
/**
* <p>
* 推荐课程配置 Mapper 接口
* </p>
*
* @author liuyang
* @since 2021-05-27
*/
@Mapper
public
interface
RecommendConfigMapper
extends
BaseMapper
<
RecommendConfigPO
>
{
}
src/main/java/com/qkdata/biz/management/mapper/SwiperConfigMapper.java
0 → 100644
View file @
79e857d2
package
com
.
qkdata
.
biz
.
management
.
mapper
;
import
com.qkdata.biz.management.entity.SwiperConfigPO
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.qkdata.biz.management.vo.SwiperConfigModel
;
import
org.apache.ibatis.annotations.Mapper
;
import
java.util.List
;
/**
* <p>
* 轮播图配置 Mapper 接口
* </p>
*
* @author liuyang
* @since 2021-05-27
*/
@Mapper
public
interface
SwiperConfigMapper
extends
BaseMapper
<
SwiperConfigPO
>
{
List
<
SwiperConfigModel
>
listConfig
();
}
src/main/java/com/qkdata/biz/management/service/RecommendConfigService.java
0 → 100644
View file @
79e857d2
package
com
.
qkdata
.
biz
.
management
.
service
;
import
com.qkdata.biz.management.entity.RecommendConfigPO
;
import
com.qkdata.biz.management.mapper.RecommendConfigMapper
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
org.springframework.stereotype.Service
;
/**
* <p>
* $!{table.comment} 服务类
* </p>
*
* @author liuyang
* @since 2021-05-27
*/
@Service
public
class
RecommendConfigService
extends
ServiceImpl
<
RecommendConfigMapper
,
RecommendConfigPO
>
{
}
\ No newline at end of file
src/main/java/com/qkdata/biz/management/service/SwiperConfigService.java
0 → 100644
View file @
79e857d2
package
com
.
qkdata
.
biz
.
management
.
service
;
import
com.qkdata.biz.management.entity.SwiperConfigPO
;
import
com.qkdata.biz.management.mapper.SwiperConfigMapper
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.qkdata.biz.management.vo.SwiperConfigModel
;
import
com.qkdata.biz.management.vo.SwiperLInkCourseModel
;
import
com.qkdata.biz.management.vo.SwiperModifyStatusModel
;
import
org.springframework.stereotype.Service
;
import
java.util.List
;
/**
* <p>
* $!{table.comment} 服务类
* </p>
*
* @author liuyang
* @since 2021-05-27
*/
@Service
public
class
SwiperConfigService
extends
ServiceImpl
<
SwiperConfigMapper
,
SwiperConfigPO
>
{
public
List
<
SwiperConfigModel
>
listConfig
()
{
return
baseMapper
.
listConfig
();
}
public
void
linkCourse
(
SwiperLInkCourseModel
model
)
{
SwiperConfigPO
po
=
new
SwiperConfigPO
();
po
.
setCourseId
(
model
.
getCourseId
());
po
.
setId
(
model
.
getId
());
updateById
(
po
);
}
public
void
modifyStatus
(
SwiperModifyStatusModel
model
)
{
SwiperConfigPO
po
=
new
SwiperConfigPO
();
po
.
setId
(
model
.
getId
());
po
.
setStatus
(
model
.
getStatus
());
updateById
(
po
);
}
}
\ No newline at end of file
src/main/java/com/qkdata/biz/management/vo/AddMainPageTagConfigModel.java
0 → 100644
View file @
79e857d2
package
com
.
qkdata
.
biz
.
management
.
vo
;
import
lombok.Data
;
@Data
public
class
AddMainPageTagConfigModel
{
private
Long
tagId
;
}
src/main/java/com/qkdata/biz/management/vo/QueryCourseTagModel.java
View file @
79e857d2
...
@@ -8,4 +8,5 @@ public class QueryCourseTagModel {
...
@@ -8,4 +8,5 @@ public class QueryCourseTagModel {
private
int
pageIndex
=
Constants
.
DEFAULT_PAGE
;
private
int
pageIndex
=
Constants
.
DEFAULT_PAGE
;
private
int
pageSize
=
Constants
.
DEFAULT_PAGE_SIZE
;
private
int
pageSize
=
Constants
.
DEFAULT_PAGE_SIZE
;
private
String
name
;
private
String
name
;
private
boolean
includeRecommend
=
true
;
}
}
src/main/java/com/qkdata/biz/management/vo/SwiperConfigModel.java
0 → 100644
View file @
79e857d2
package
com
.
qkdata
.
biz
.
management
.
vo
;
import
com.qkdata.biz.enums.SwiperStatusEnum
;
import
lombok.Data
;
@Data
public
class
SwiperConfigModel
{
/**
* 封面图片url
*/
private
String
imageUrl
;
/**
* 课程ID
*/
private
Long
courseId
;
/**
* 课程名
*/
private
String
courseName
;
/**
* 排序号
*/
private
Integer
sortNo
;
/**
* 状态
*/
private
SwiperStatusEnum
status
;
}
src/main/java/com/qkdata/biz/management/vo/SwiperLInkCourseModel.java
0 → 100644
View file @
79e857d2
package
com
.
qkdata
.
biz
.
management
.
vo
;
import
lombok.Data
;
@Data
public
class
SwiperLInkCourseModel
{
private
Long
id
;
private
Long
courseId
;
}
src/main/java/com/qkdata/biz/management/vo/SwiperModifyStatusModel.java
0 → 100644
View file @
79e857d2
package
com
.
qkdata
.
biz
.
management
.
vo
;
import
com.qkdata.biz.enums.SwiperStatusEnum
;
import
lombok.Data
;
@Data
public
class
SwiperModifyStatusModel
{
private
Long
id
;
private
SwiperStatusEnum
status
;
}
src/main/resources/db/migration/V1.0.4__update.sql
0 → 100644
View file @
79e857d2
ALTER
TABLE
`swiper_config`
ADD
COLUMN
`status`
varchar
(
10
)
NULL
COMMENT
'状态(上架、下架)'
AFTER
`update_time`
;
\ No newline at end of file
src/main/resources/db/migration/V1.0.5__update.sql
0 → 100644
View file @
79e857d2
ALTER
TABLE
`course_tag`
ADD
COLUMN
`recommend`
tinyint
(
1
)
NULL
DEFAULT
0
COMMENT
'首页推荐'
AFTER
`update_time`
;
\ No newline at end of file
src/main/resources/mappers/management/course_tagMapper.xml
View file @
79e857d2
...
@@ -8,6 +8,9 @@
...
@@ -8,6 +8,9 @@
<if
test=
"p.name != null"
>
<if
test=
"p.name != null"
>
and name like concat('%',#{p.name},'%')
and name like concat('%',#{p.name},'%')
</if>
</if>
<if
test=
"p.includeRecommend == false"
>
and recommend = 0
</if>
</select>
</select>
<select
id=
"selectListByCourseId"
resultType=
"com.qkdata.biz.management.entity.CourseTagPO"
>
<select
id=
"selectListByCourseId"
resultType=
"com.qkdata.biz.management.entity.CourseTagPO"
>
select t.*
select t.*
...
...
src/main/resources/mappers/management/recommend_configMapper.xml
0 → 100644
View file @
79e857d2
<?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=
"com.qkdata.biz.management.mapper.RecommendConfigMapper"
>
</mapper>
src/main/resources/mappers/management/swiper_configMapper.xml
0 → 100644
View file @
79e857d2
<?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=
"com.qkdata.biz.management.mapper.SwiperConfigMapper"
>
<select
id=
"listConfig"
resultType=
"com.qkdata.biz.management.vo.SwiperConfigModel"
>
SELECT c.*,
s.`name` course_name
from swiper_config c
INNER JOIN course s on c.course_id = s.id
ORDER BY c.sort_no ASC
</select>
</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