Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
A
antai-sport-http-server
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
antai-sport
antai-sport-http-server
Commits
081af430
Commit
081af430
authored
Jul 14, 2022
by
liming
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
俱乐部列表
parent
1b4ef4e7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
155 additions
and
8 deletions
+155
-8
ClubController.java
...r/server/api/business/club/controller/ClubController.java
+6
-0
PlayerClubHomeDTO.java
...erver/server/api/business/club/dto/PlayerClubHomeDTO.java
+16
-0
ClubMemberVO.java
.../server/server/api/business/club/dto/vo/ClubMemberVO.java
+24
-0
ClubNoticeVO.java
.../server/server/api/business/club/dto/vo/ClubNoticeVO.java
+20
-0
ClubBusinessMapper.java
...r/server/api/business/club/mapper/ClubBusinessMapper.java
+29
-0
ClubService.java
.../server/server/api/business/club/service/ClubService.java
+23
-0
ClubBusinessMapper.xml
...api/src/main/resources/mapper/club/ClubBusinessMapper.xml
+37
-8
No files found.
server-api/src/main/java/com/antai/sport/http/server/server/api/business/club/controller/ClubController.java
View file @
081af430
...
@@ -73,5 +73,11 @@ public class ClubController {
...
@@ -73,5 +73,11 @@ public class ClubController {
return
success
(
clubService
.
getList
(
dto
));
return
success
(
clubService
.
getList
(
dto
));
}
}
@ApiOperation
(
"俱乐部-列表"
)
@PostMapping
(
"/home/{playerId}"
)
public
ResponseEntity
<
Result
<
PlayerClubHomeDTO
>>
getClubHome
(
@PathVariable
(
"playerId"
)
Long
playerId
)
{
return
success
(
clubService
.
getClubHome
(
playerId
));
}
}
}
server-api/src/main/java/com/antai/sport/http/server/server/api/business/club/dto/PlayerClubHomeDTO.java
0 → 100644
View file @
081af430
package
com
.
antai
.
sport
.
http
.
server
.
server
.
api
.
business
.
club
.
dto
;
import
com.antai.sport.http.server.server.api.business.club.dto.vo.ClubMemberVO
;
import
com.antai.sport.http.server.server.api.business.club.dto.vo.ClubNoticeVO
;
import
io.swagger.annotations.ApiModel
;
import
lombok.Data
;
import
java.util.List
;
@ApiModel
(
"玩家俱乐部主页信息"
)
@Data
public
class
PlayerClubHomeDTO
{
public
ClubRespDTO
club
;
public
List
<
ClubNoticeVO
>
noticeList
;
public
List
<
ClubMemberVO
>
memberList
;
}
server-api/src/main/java/com/antai/sport/http/server/server/api/business/club/dto/vo/ClubMemberVO.java
0 → 100644
View file @
081af430
package
com
.
antai
.
sport
.
http
.
server
.
server
.
api
.
business
.
club
.
dto
.
vo
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.math.BigDecimal
;
@ApiModel
(
"俱乐部会员列表"
)
@Data
public
class
ClubMemberVO
{
@ApiModelProperty
(
"玩家Id"
)
private
Long
sportUserId
;
@ApiModelProperty
(
"类型 1.会长 2.助理 3.会员"
)
private
Integer
type
;
@ApiModelProperty
(
"昵称"
)
private
String
nickname
;
@ApiModelProperty
(
"头像"
)
private
String
avatar
;
@ApiModelProperty
(
"加入时间"
)
private
String
joinTime
;
@ApiModelProperty
(
"得分"
)
private
BigDecimal
score
;
}
server-api/src/main/java/com/antai/sport/http/server/server/api/business/club/dto/vo/ClubNoticeVO.java
0 → 100644
View file @
081af430
package
com
.
antai
.
sport
.
http
.
server
.
server
.
api
.
business
.
club
.
dto
.
vo
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
@ApiModel
(
"俱乐部通知VO"
)
@Data
public
class
ClubNoticeVO
{
@ApiModelProperty
(
"id"
)
private
Long
id
;
@ApiModelProperty
(
"标题"
)
private
String
title
;
@ApiModelProperty
(
"内容"
)
private
String
content
;
@ApiModelProperty
(
"时间"
)
private
String
time
;
@ApiModelProperty
(
"是否置顶"
)
private
Boolean
top
;
}
server-api/src/main/java/com/antai/sport/http/server/server/api/business/club/mapper/ClubBusinessMapper.java
View file @
081af430
...
@@ -2,9 +2,13 @@ package com.antai.sport.http.server.server.api.business.club.mapper;
...
@@ -2,9 +2,13 @@ package com.antai.sport.http.server.server.api.business.club.mapper;
import
com.antai.sport.http.server.server.api.business.club.dto.ClubListReqDTO
;
import
com.antai.sport.http.server.server.api.business.club.dto.ClubListReqDTO
;
import
com.antai.sport.http.server.server.api.business.club.dto.ClubRespDTO
;
import
com.antai.sport.http.server.server.api.business.club.dto.ClubRespDTO
;
import
com.antai.sport.http.server.server.api.business.club.dto.vo.ClubMemberVO
;
import
com.antai.sport.http.server.server.api.business.club.dto.vo.ClubNoticeVO
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
org.apache.ibatis.annotations.Param
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
public
interface
ClubBusinessMapper
{
public
interface
ClubBusinessMapper
{
/**
/**
...
@@ -26,10 +30,35 @@ public interface ClubBusinessMapper {
...
@@ -26,10 +30,35 @@ public interface ClubBusinessMapper {
/**
/**
* 查询俱乐部列表
* 查询俱乐部列表
*
* @param page
* @param page
* @param param
* @param param
* @return
* @return
*/
*/
IPage
<
ClubRespDTO
>
getClubList
(
IPage
<
ClubRespDTO
>
page
,
@Param
(
"param"
)
ClubListReqDTO
param
);
IPage
<
ClubRespDTO
>
getClubList
(
IPage
<
ClubRespDTO
>
page
,
@Param
(
"param"
)
ClubListReqDTO
param
);
/**
* 查询俱乐部信息
*
* @param clubId
* @return
*/
ClubRespDTO
getClubInfo
(
@Param
(
"clubId"
)
Long
clubId
);
/**
* 查询俱乐部通知
*
* @param clubId
* @return
*/
List
<
ClubNoticeVO
>
getClubNotice
(
@Param
(
"clubId"
)
Long
clubId
);
/**
* 获取俱乐部成员列表
*
* @param clubId
* @return
*/
List
<
ClubMemberVO
>
getClubMemberList
(
@Param
(
"clubId"
)
Long
clubId
);
}
}
server-api/src/main/java/com/antai/sport/http/server/server/api/business/club/service/ClubService.java
View file @
081af430
...
@@ -212,6 +212,7 @@ public class ClubService {
...
@@ -212,6 +212,7 @@ public class ClubService {
/**
/**
* 获取俱乐部列表
* 获取俱乐部列表
*
* @param dto
* @param dto
* @return
* @return
*/
*/
...
@@ -220,4 +221,26 @@ public class ClubService {
...
@@ -220,4 +221,26 @@ public class ClubService {
return
clubBusinessMapper
.
getClubList
(
pageParam
,
dto
).
getRecords
();
return
clubBusinessMapper
.
getClubList
(
pageParam
,
dto
).
getRecords
();
}
}
/**
* 获取玩家俱乐部信息
*
* @param sportUserId
* @return
*/
public
PlayerClubHomeDTO
getClubHome
(
Long
sportUserId
)
{
QueryWrapper
<
ClubMember
>
memberQuery
=
new
QueryWrapper
<>();
memberQuery
.
eq
(
"deleted"
,
0
);
memberQuery
.
eq
(
"sport_user_id"
,
sportUserId
);
ClubMember
clubMember
=
clubMemberMapper
.
selectOne
(
memberQuery
);
if
(
clubMember
==
null
)
{
return
null
;
}
PlayerClubHomeDTO
result
=
new
PlayerClubHomeDTO
();
result
.
setClub
(
clubBusinessMapper
.
getClubInfo
(
clubMember
.
getClubId
()));
result
.
setMemberList
(
clubBusinessMapper
.
getClubMemberList
(
clubMember
.
getClubId
()));
result
.
setNoticeList
(
clubBusinessMapper
.
getClubNotice
(
clubMember
.
getClubId
()));
return
result
;
}
}
}
server-api/src/main/resources/mapper/club/ClubBusinessMapper.xml
View file @
081af430
...
@@ -17,20 +17,49 @@
...
@@ -17,20 +17,49 @@
where chairman_id = #{playerId}
where chairman_id = #{playerId}
</select>
</select>
<sql
id=
"clubQuerySql"
>
select t1.id,t1.name as club_name,logo as club_logo,
t2.name as province_name,t3.name as city_name,description,
member_number,total_distance,total_climb_distance,total_duration,
total_calorie,DATE_FORMAT(club_create_time,'%Y-%m-%d') as club_create_time,t1.create_time,
if(t1.city = #{param.cityId},0,1) as base_order
from club t1
left join base_area t2 on t1.province = t2.id
left join base_area t3 on t1.city = t3.id
</sql>
<select
id=
"getClubList"
resultType=
"com.antai.sport.http.server.server.api.business.club.dto.ClubRespDTO"
>
<select
id=
"getClubList"
resultType=
"com.antai.sport.http.server.server.api.business.club.dto.ClubRespDTO"
>
select * from (
select * from (
select t1.id,t1.name as club_name,logo as club_logo,
<include
refid=
"clubQuerySql"
></include>
t2.name as province_name,t3.name as city_name,description,
member_number,total_distance,total_climb_distance,total_duration,
total_calorie,DATE_FORMAT(club_create_time,'%Y-%m-%d') as club_create_time,t1.create_time,
if(t1.city = #{param.cityId},0,1) as base_order
from club t1
left join base_area t2 on t1.province = t2.id
left join base_area t3 on t1.city = t3.id
<if
test=
"param.searchKey != null"
>
<if
test=
"param.searchKey != null"
>
where t1.name like concat('%',#{param.searchKey},'%')
where t1.name like concat('%',#{param.searchKey},'%')
</if>
</if>
) t1
) t1
order by t1.base_order,t1.member_number desc,t1.create_time
order by t1.base_order,t1.member_number desc,t1.create_time
</select>
</select>
<select
id=
"getClubInfo"
resultType=
"com.antai.sport.http.server.server.api.business.club.dto.ClubRespDTO"
>
<include
refid=
"clubQuerySql"
></include>
where t1.id = #{clubId}
</select>
<select
id=
"getClubNotice"
resultType=
"com.antai.sport.http.server.server.api.business.club.dto.vo.ClubNoticeVO"
>
select id,title,content,DATE_FORMAT(create_time,'%Y-%m-%d') as time,top
from club_notice
where club_id = #{clubId} and deleted = 0
order by top desc,create_time desc
</select>
<select
id=
"getClubMemberList"
resultType=
"com.antai.sport.http.server.server.api.business.club.dto.vo.ClubMemberVO"
>
select * from (
select t1.sport_user_id,t1.type,t2.nickname,t2.avatar,DATE_FORMAT(t1.create_time,'%Y-%m-%d') as join_time,
ifnull(t3.score,0) as score,t1.create_time
from club_member t1
left join sport_user t2 on t1.sport_user_id = t2.id
left join sport_user_rank t3 on t1.sport_user_id = t3.player_id
where t1.deleted = 0 and t1.club_id = #{clubId}
) t1
order by t1.type,t1.score,t1.create_time
</select>
</mapper>
</mapper>
\ 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