Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
S
safe-campus-bbs
Project overview
Project overview
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
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
万成波
safe-campus-bbs
Commits
78afd66a
Commit
78afd66a
authored
Aug 29, 2025
by
万成波
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
积分模块
parent
7109b0ae
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
79 additions
and
48 deletions
+79
-48
safe-campus-points/src/main/java/com/tangguo/controller/BbsUserPointsController.java
.../java/com/tangguo/controller/BbsUserPointsController.java
+2
-2
safe-campus-points/src/main/java/com/tangguo/controller/BbsUserPointsExchangeController.java
...m/tangguo/controller/BbsUserPointsExchangeController.java
+3
-1
safe-campus-points/src/main/java/com/tangguo/service/IBbsUserPointsService.java
.../main/java/com/tangguo/service/IBbsUserPointsService.java
+8
-9
safe-campus-points/src/main/java/com/tangguo/service/impl/BbsUserPointsExchangeServiceImpl.java
...angguo/service/impl/BbsUserPointsExchangeServiceImpl.java
+0
-1
safe-campus-points/src/main/java/com/tangguo/service/impl/BbsUserPointsServiceImpl.java
...va/com/tangguo/service/impl/BbsUserPointsServiceImpl.java
+66
-35
No files found.
safe-campus-points/src/main/java/com/tangguo/controller/BbsUserPointsController.java
View file @
78afd66a
...
@@ -84,7 +84,7 @@ public class BbsUserPointsController extends BaseController {
...
@@ -84,7 +84,7 @@ public class BbsUserPointsController extends BaseController {
@PreAuthorize
(
"@ss.hasPermi('points:points:incr')"
)
@PreAuthorize
(
"@ss.hasPermi('points:points:incr')"
)
@Log
(
title
=
"用户积分"
,
businessType
=
BusinessType
.
UPDATE
)
@Log
(
title
=
"用户积分"
,
businessType
=
BusinessType
.
UPDATE
)
@PutMapping
(
"/incr"
)
@PutMapping
(
"/incr"
)
public
synchronized
AjaxResult
incrUserPoints
(
@RequestBody
BbsUserPoints
points
)
{
public
AjaxResult
incrUserPoints
(
@RequestBody
BbsUserPoints
points
)
{
this
.
bbsUserPointsService
.
addUserPoints
(
points
);
this
.
bbsUserPointsService
.
addUserPoints
(
points
);
return
AjaxResult
.
success
();
return
AjaxResult
.
success
();
}
}
...
@@ -97,7 +97,7 @@ public class BbsUserPointsController extends BaseController {
...
@@ -97,7 +97,7 @@ public class BbsUserPointsController extends BaseController {
@PreAuthorize
(
"@ss.hasPermi('points:points:decr')"
)
@PreAuthorize
(
"@ss.hasPermi('points:points:decr')"
)
@Log
(
title
=
"用户积分"
,
businessType
=
BusinessType
.
UPDATE
)
@Log
(
title
=
"用户积分"
,
businessType
=
BusinessType
.
UPDATE
)
@PutMapping
(
"/decr"
)
@PutMapping
(
"/decr"
)
public
synchronized
AjaxResult
decrUserPoints
(
@RequestBody
BbsUserPoints
points
)
{
public
AjaxResult
decrUserPoints
(
@RequestBody
BbsUserPoints
points
)
{
this
.
bbsUserPointsService
.
deleteUserPoints
(
points
);
this
.
bbsUserPointsService
.
deleteUserPoints
(
points
);
return
AjaxResult
.
success
();
return
AjaxResult
.
success
();
}
}
...
...
safe-campus-points/src/main/java/com/tangguo/controller/BbsUserPointsExchangeController.java
View file @
78afd66a
...
@@ -93,7 +93,9 @@ public class BbsUserPointsExchangeController extends BaseController {
...
@@ -93,7 +93,9 @@ public class BbsUserPointsExchangeController extends BaseController {
@Log
(
title
=
"用户积分兑换"
,
businessType
=
BusinessType
.
INSERT
)
@Log
(
title
=
"用户积分兑换"
,
businessType
=
BusinessType
.
INSERT
)
@PostMapping
(
"/exchange"
)
@PostMapping
(
"/exchange"
)
public
synchronized
AjaxResult
exchange
(
@RequestBody
BbsUserPointsExchange
exchange
)
{
public
synchronized
AjaxResult
exchange
(
@RequestBody
BbsUserPointsExchange
exchange
)
{
this
.
bbsUserPointsExchangeService
.
addUserPointsExchange
(
exchange
);
synchronized
(
exchange
.
getUserName
().
intern
())
{
this
.
bbsUserPointsExchangeService
.
addUserPointsExchange
(
exchange
);
}
return
AjaxResult
.
success
();
return
AjaxResult
.
success
();
}
}
...
...
safe-campus-points/src/main/java/com/tangguo/service/IBbsUserPointsService.java
View file @
78afd66a
...
@@ -2,7 +2,6 @@ package com.tangguo.service;
...
@@ -2,7 +2,6 @@ package com.tangguo.service;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.tangguo.domain.BbsUserPoints
;
import
com.tangguo.domain.BbsUserPoints
;
import
com.tangguo.domain.BbsUserPointsDetail
;
import
com.tangguo.domain.dto.PointsDetailDTO
;
import
com.tangguo.domain.dto.PointsDetailDTO
;
import
java.util.List
;
import
java.util.List
;
...
@@ -36,36 +35,36 @@ public interface IBbsUserPointsService extends IService<BbsUserPoints> {
...
@@ -36,36 +35,36 @@ public interface IBbsUserPointsService extends IService<BbsUserPoints> {
/**
/**
* 增加用户积分
* 增加用户积分
*
*
* @param userName 用户名
* @param points 积分
* @param points 积分
* @param detail 积分明细
*/
*/
void
incrUserPoints
(
String
userName
,
int
points
,
PointsDetailDTO
detail
);
void
addUserPoints
(
BbsUserPoints
points
);
/**
/**
* 扣减用户积分
* 扣减用户积分
*
*
* @param userName 用户名
* @param points 积分
* @param points 积分
* @param detail 积分明细
*/
*/
void
de
crUserPoints
(
String
userName
,
int
points
,
PointsDetailDTO
detail
);
void
de
leteUserPoints
(
BbsUserPoints
points
);
/**
/**
* 增加用户积分
* 增加用户积分
*
*
* @param userName 用户名
* @param points 积分
* @param points 积分
* @param detail 积分明细
*/
*/
void
addUserPoints
(
BbsUserPoints
points
);
void
incrUserPoints
(
String
userName
,
int
points
,
PointsDetailDTO
detail
);
/**
/**
* 扣减用户积分
* 扣减用户积分
*
*
* @param userName 用户名
* @param points 积分
* @param points 积分
* @param detail 积分明细
*/
*/
void
de
leteUserPoints
(
BbsUserPoints
points
);
void
de
crUserPoints
(
String
userName
,
int
points
,
PointsDetailDTO
detail
);
}
}
safe-campus-points/src/main/java/com/tangguo/service/impl/BbsUserPointsExchangeServiceImpl.java
View file @
78afd66a
...
@@ -4,7 +4,6 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
...
@@ -4,7 +4,6 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import
com.tangguo.common.exception.ServiceException
;
import
com.tangguo.common.exception.ServiceException
;
import
com.tangguo.domain.BbsPointsGoods
;
import
com.tangguo.domain.BbsPointsGoods
;
import
com.tangguo.domain.BbsUserPoints
;
import
com.tangguo.domain.BbsUserPoints
;
import
com.tangguo.domain.BbsUserPointsDetail
;
import
com.tangguo.domain.BbsUserPointsExchange
;
import
com.tangguo.domain.BbsUserPointsExchange
;
import
com.tangguo.domain.dto.PointsDetailDTO
;
import
com.tangguo.domain.dto.PointsDetailDTO
;
import
com.tangguo.mapper.BbsUserPointsExchangeMapper
;
import
com.tangguo.mapper.BbsUserPointsExchangeMapper
;
...
...
safe-campus-points/src/main/java/com/tangguo/service/impl/BbsUserPointsServiceImpl.java
View file @
78afd66a
...
@@ -33,6 +33,9 @@ public class BbsUserPointsServiceImpl extends ServiceImpl<BbsUserPointsMapper, B
...
@@ -33,6 +33,9 @@ public class BbsUserPointsServiceImpl extends ServiceImpl<BbsUserPointsMapper, B
@Resource
@Resource
private
IBbsUserPointsDetailService
pointsDetailService
;
private
IBbsUserPointsDetailService
pointsDetailService
;
@Resource
private
BbsUserPointsServiceImpl
userPointsServiceImpl
;
/**
/**
* 查询用户积分列表
* 查询用户积分列表
...
@@ -69,6 +72,38 @@ public class BbsUserPointsServiceImpl extends ServiceImpl<BbsUserPointsMapper, B
...
@@ -69,6 +72,38 @@ public class BbsUserPointsServiceImpl extends ServiceImpl<BbsUserPointsMapper, B
}
}
/**
* 增加用户积分
*
* @param points 积分
*/
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Override
public
void
addUserPoints
(
BbsUserPoints
points
)
{
String
userName
=
points
.
getUserName
();
PointsDetailDTO
detail
=
new
PointsDetailDTO
();
detail
.
setDetailName
(
"后台手动增加"
);
detail
.
setDescription
(
String
.
format
(
"管理员【%s】后台手动增加用户【%s】积分"
,
SecurityUtils
.
getUsername
(),
userName
));
this
.
incrUserPoints
(
userName
,
points
.
getIncrOrDecrPoints
(),
detail
);
}
/**
* 扣减用户积分
*
* @param points 积分
*/
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Override
public
void
deleteUserPoints
(
BbsUserPoints
points
)
{
String
userName
=
points
.
getUserName
();
PointsDetailDTO
detail
=
new
PointsDetailDTO
();
detail
.
setDetailName
(
"后台手动扣减"
);
detail
.
setDescription
(
String
.
format
(
"管理员【%s】后台手动扣减用户【%s】积分"
,
SecurityUtils
.
getUsername
(),
userName
));
this
.
decrUserPoints
(
userName
,
points
.
getIncrOrDecrPoints
(),
detail
);
}
/**
/**
* 增加用户积分
* 增加用户积分
*
*
...
@@ -76,9 +111,38 @@ public class BbsUserPointsServiceImpl extends ServiceImpl<BbsUserPointsMapper, B
...
@@ -76,9 +111,38 @@ public class BbsUserPointsServiceImpl extends ServiceImpl<BbsUserPointsMapper, B
* @param points 积分
* @param points 积分
* @param detail 积分明细
* @param detail 积分明细
*/
*/
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Override
@Override
public
void
incrUserPoints
(
String
userName
,
int
points
,
PointsDetailDTO
detail
)
{
public
void
incrUserPoints
(
String
userName
,
int
points
,
PointsDetailDTO
detail
)
{
synchronized
(
userName
.
intern
())
{
this
.
userPointsServiceImpl
.
execIncrUserPoints
(
userName
,
points
,
detail
);
}
}
/**
* 扣减用户积分
*
* @param userName 用户名
* @param points 积分
* @param detail 积分明细
*/
@Override
public
void
decrUserPoints
(
String
userName
,
int
points
,
PointsDetailDTO
detail
)
{
synchronized
(
userName
.
intern
())
{
this
.
userPointsServiceImpl
.
execDecrUserPoints
(
userName
,
points
,
detail
);
}
}
/**
* 增加用户积分
*
* @param userName 用户名
* @param points 积分
* @param detail 积分明细
*/
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
void
execIncrUserPoints
(
String
userName
,
int
points
,
PointsDetailDTO
detail
)
{
if
(
points
<
1
)
{
if
(
points
<
1
)
{
throw
new
ServiceException
(
"增加用户积分失败,增加的积分分值不能小于0。"
);
throw
new
ServiceException
(
"增加用户积分失败,增加的积分分值不能小于0。"
);
}
}
...
@@ -112,8 +176,7 @@ public class BbsUserPointsServiceImpl extends ServiceImpl<BbsUserPointsMapper, B
...
@@ -112,8 +176,7 @@ public class BbsUserPointsServiceImpl extends ServiceImpl<BbsUserPointsMapper, B
* @param detail 积分明细
* @param detail 积分明细
*/
*/
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Override
public
void
execDecrUserPoints
(
String
userName
,
int
points
,
PointsDetailDTO
detail
)
{
public
void
decrUserPoints
(
String
userName
,
int
points
,
PointsDetailDTO
detail
)
{
if
(
points
<
1
)
{
if
(
points
<
1
)
{
throw
new
ServiceException
(
"扣减用户积分失败,扣减的积分分值不能小于0。"
);
throw
new
ServiceException
(
"扣减用户积分失败,扣减的积分分值不能小于0。"
);
}
}
...
@@ -141,36 +204,4 @@ public class BbsUserPointsServiceImpl extends ServiceImpl<BbsUserPointsMapper, B
...
@@ -141,36 +204,4 @@ public class BbsUserPointsServiceImpl extends ServiceImpl<BbsUserPointsMapper, B
this
.
pointsDetailService
.
save
(
newDetail
);
this
.
pointsDetailService
.
save
(
newDetail
);
}
}
/**
* 增加用户积分
*
* @param points 积分
*/
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Override
public
void
addUserPoints
(
BbsUserPoints
points
)
{
String
userName
=
points
.
getUserName
();
PointsDetailDTO
detail
=
new
PointsDetailDTO
();
detail
.
setDetailName
(
"后台手动增加"
);
detail
.
setDescription
(
String
.
format
(
"管理员【%s】后台手动增加用户【%s】积分"
,
SecurityUtils
.
getUsername
(),
userName
));
this
.
incrUserPoints
(
userName
,
points
.
getIncrOrDecrPoints
(),
detail
);
}
/**
* 扣减用户积分
*
* @param points 积分
*/
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Override
public
void
deleteUserPoints
(
BbsUserPoints
points
)
{
String
userName
=
points
.
getUserName
();
PointsDetailDTO
detail
=
new
PointsDetailDTO
();
detail
.
setDetailName
(
"后台手动扣减"
);
detail
.
setDescription
(
String
.
format
(
"管理员【%s】后台手动扣减用户【%s】积分"
,
SecurityUtils
.
getUsername
(),
userName
));
this
.
decrUserPoints
(
userName
,
points
.
getIncrOrDecrPoints
(),
detail
);
}
}
}
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