Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
J
jiedao-api-boot-master
Project
Project
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
lanbaoming
jiedao-api-boot-master
Commits
6717c09a
Commit
6717c09a
authored
Aug 09, 2024
by
zhangfeng
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'refs/heads/feature_member_score' into dev
parents
244faeac
a1e8bcbe
Changes
13
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
44 additions
and
28 deletions
+44
-28
ScoreRuleController.java
...ember/controller/admin/scoreRule/ScoreRuleController.java
+3
-3
MemberUserScoreController.java
...controller/admin/userScore/MemberUserScoreController.java
+2
-0
UserAddressController.java
.../member/controller/app/address/UserAddressController.java
+2
-0
OrderInShippingListener.java
...yudao/module/member/listener/OrderInShippingListener.java
+5
-5
AbstractScoreRuleStrategy.java
...ber/mq/consumer/score/core/AbstractScoreRuleStrategy.java
+4
-1
OrderVStrategy.java
.../module/member/mq/consumer/score/core/OrderVStrategy.java
+2
-4
RecommendStrategy.java
...dule/member/mq/consumer/score/core/RecommendStrategy.java
+9
-11
RegisterStrategy.java
...odule/member/mq/consumer/score/core/RegisterStrategy.java
+2
-4
MemberUserService.java
...r/yudao/module/member/service/user/MemberUserService.java
+2
-0
MemberUserServiceImpl.java
...dao/module/member/service/user/MemberUserServiceImpl.java
+5
-0
ScoreRuleBackDetailVO.java
...dao/module/member/vo/scoreRule/ScoreRuleBackDetailVO.java
+2
-0
RedeemRewardController.java
...eward/controller/admin/redeem/RedeemRewardController.java
+3
-0
RewardController.java
...dule/reward/controller/admin/reward/RewardController.java
+3
-0
No files found.
yudao-module-member/yudao-module-member-impl/src/main/java/cn/iocoder/yudao/module/member/controller/admin/scoreRule/ScoreRuleController.java
View file @
6717c09a
...
...
@@ -3,10 +3,9 @@ package cn.iocoder.yudao.module.member.controller.admin.scoreRule;
import
cn.iocoder.yudao.framework.common.pojo.CommonResult
;
import
cn.iocoder.yudao.framework.common.pojo.PageResult
;
import
cn.iocoder.yudao.framework.excel.util.ExcelUtils
;
import
cn.iocoder.yudao.framework.idempotent.core.annotation.Idempotent
;
import
cn.iocoder.yudao.framework.mybatis.core.vo.PageVO
;
import
cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog
;
import
cn.iocoder.yudao.module.depository.service.warehouse.WarehouseService
;
import
cn.iocoder.yudao.module.depository.vo.warehouse.WarehouseTreeRegionVO
;
import
cn.iocoder.yudao.module.member.api.ScoreProducerApi
;
import
cn.iocoder.yudao.module.member.convert.scoreRule.ScoreRuleConvert
;
import
cn.iocoder.yudao.module.member.dal.dataobject.scoreRule.ScoreRuleDO
;
...
...
@@ -16,7 +15,6 @@ import cn.iocoder.yudao.module.member.vo.scoreRule.*;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiOperation
;
import
org.apache.commons.collections4.ListUtils
;
import
org.springframework.context.ApplicationContext
;
import
org.springframework.security.access.prepost.PreAuthorize
;
import
org.springframework.validation.annotation.Validated
;
...
...
@@ -49,6 +47,7 @@ public class ScoreRuleController {
@PostMapping
(
"/create"
)
@ApiOperation
(
"创建积分规则"
)
@Idempotent
(
timeout
=
3
)
@PreAuthorize
(
"@ss.hasPermission('member:score-rule:create')"
)
public
CommonResult
<
Long
>
createScoreRule
(
@Valid
@RequestBody
ScoreRuleCreateReqVO
createReqVO
)
{
return
success
(
scoreRuleService
.
createScoreRule
(
createReqVO
));
...
...
@@ -105,6 +104,7 @@ public class ScoreRuleController {
@PostMapping
(
"/copy"
)
@ApiOperation
(
"复制规则"
)
@Idempotent
(
timeout
=
3
)
@PreAuthorize
(
"@ss.hasPermission('member:score-rule:create')"
)
public
CommonResult
<
Long
>
copyScoreRule
(
@Valid
@RequestBody
IdReqVo
idReqVo
)
{
return
success
(
scoreRuleService
.
copyScoreRule
(
idReqVo
.
getId
()));
...
...
yudao-module-member/yudao-module-member-impl/src/main/java/cn/iocoder/yudao/module/member/controller/admin/userScore/MemberUserScoreController.java
View file @
6717c09a
...
...
@@ -2,6 +2,7 @@ package cn.iocoder.yudao.module.member.controller.admin.userScore;
import
cn.iocoder.yudao.framework.common.pojo.CommonResult
;
import
cn.iocoder.yudao.framework.common.pojo.PageResult
;
import
cn.iocoder.yudao.framework.idempotent.core.annotation.Idempotent
;
import
cn.iocoder.yudao.module.member.api.score.MemberUserScoreApiImpl
;
import
cn.iocoder.yudao.module.member.api.score.dto.MemberUserScoreBatchOperateReqDTO
;
import
cn.iocoder.yudao.module.member.api.score.dto.MemberUserScoreOperateRespDTO
;
...
...
@@ -50,6 +51,7 @@ public class MemberUserScoreController {
@PostMapping
(
"/operate"
)
@ApiOperation
(
"操作积分"
)
@Idempotent
(
timeout
=
5
)
@PreAuthorize
(
"@ss.hasPermission('member:user-score:operate')"
)
public
CommonResult
<
Boolean
>
operate
(
@Valid
@RequestBody
MemberUserScoreOperateQueryVO
query
)
{
Map
<
String
,
Object
>
extParam
=
new
HashMap
<>();
...
...
yudao-module-member/yudao-module-member-impl/src/main/java/cn/iocoder/yudao/module/member/controller/app/address/UserAddressController.java
View file @
6717c09a
package
cn
.
iocoder
.
yudao
.
module
.
member
.
controller
.
app
.
address
;
import
cn.iocoder.yudao.framework.common.pojo.CommonResult
;
import
cn.iocoder.yudao.framework.idempotent.core.annotation.Idempotent
;
import
cn.iocoder.yudao.module.member.convert.address.UserAddressConvert
;
import
cn.iocoder.yudao.module.member.dal.dataobject.address.UserAddressDO
;
import
cn.iocoder.yudao.module.member.service.address.UserAddressService
;
...
...
@@ -30,6 +31,7 @@ public class UserAddressController {
@PostMapping
(
"/create"
)
@ApiOperation
(
"创建会员收货地址"
)
@Idempotent
(
timeout
=
5
)
//@PreAuthenticated
public
CommonResult
<
Long
>
createUserAddress
(
@Valid
@RequestBody
UserAddressCreateReqVO
createReqVO
)
{
return
success
(
userAddressService
.
createUserAddress
(
createReqVO
));
...
...
yudao-module-member/yudao-module-member-impl/src/main/java/cn/iocoder/yudao/module/member/listener/OrderInShippingListener.java
View file @
6717c09a
...
...
@@ -26,9 +26,6 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.context.annotation.Lazy
;
import
org.springframework.context.event.EventListener
;
import
org.springframework.stereotype.Component
;
import
javax.annotation.Resource
;
import
java.math.BigDecimal
;
...
...
@@ -38,7 +35,10 @@ import java.util.HashMap;
import
java.util.List
;
import
java.util.Objects
;
@Component
/**
* 弃用
*/
//@Component
@AllArgsConstructor
@Slf4j
public
class
OrderInShippingListener
{
...
...
@@ -53,7 +53,7 @@ public class OrderInShippingListener {
@Resource
private
CustomerContactsService
customerContactsService
;
@EventListener
(
OrderInShippingEvent
.
class
)
//
@EventListener(OrderInShippingEvent.class)
public
void
listen
(
OrderInShippingEvent
event
)
{
Long
orderId
=
event
.
getOrderId
();
String
orderNo
=
event
.
getOrderNo
();
...
...
yudao-module-member/yudao-module-member-impl/src/main/java/cn/iocoder/yudao/module/member/mq/consumer/score/core/AbstractScoreRuleStrategy.java
View file @
6717c09a
package
cn
.
iocoder
.
yudao
.
module
.
member
.
mq
.
consumer
.
score
.
core
;
import
cn.hutool.core.collection.CollUtil
;
import
cn.iocoder.yudao.module.member.api.score.MemberUserScoreApi
;
import
cn.iocoder.yudao.module.member.dal.dataobject.scoreLog.MemberUserScoreLogDO
;
import
cn.iocoder.yudao.module.member.service.scoreLog.MemberUserScoreLogService
;
import
cn.iocoder.yudao.module.member.service.scoreRule.ScoreRuleService
;
...
...
@@ -18,12 +19,14 @@ public abstract class AbstractScoreRuleStrategy implements ScoreRuleStrategy {
protected
ScoreRuleService
scoreRuleService
;
protected
MemberUserScoreLogService
memberUserScoreLogService
;
protected
MemberUserService
memberUserService
;
protected
MemberUserScoreApi
memberUserScoreApi
;
@Autowired
public
AbstractScoreRuleStrategy
(
ScoreRuleService
scoreRuleService
,
MemberUserScoreLogService
memberUserScoreLogService
,
MemberUserService
memberUserService
)
{
public
AbstractScoreRuleStrategy
(
ScoreRuleService
scoreRuleService
,
MemberUserScoreLogService
memberUserScoreLogService
,
MemberUserService
memberUserService
,
MemberUserScoreApi
memberUserScoreApi
)
{
this
.
scoreRuleService
=
scoreRuleService
;
this
.
memberUserScoreLogService
=
memberUserScoreLogService
;
this
.
memberUserService
=
memberUserService
;
this
.
memberUserScoreApi
=
memberUserScoreApi
;
}
/**
* 计算用户在某一活动获得积分总数
...
...
yudao-module-member/yudao-module-member-impl/src/main/java/cn/iocoder/yudao/module/member/mq/consumer/score/core/OrderVStrategy.java
View file @
6717c09a
...
...
@@ -38,12 +38,10 @@ public class OrderVStrategy extends AbstractScoreRuleStrategy {
@Resource
private
OrderApi
orderApi
;
@Resource
private
MemberUserScoreApi
memberUserScoreApi
;
@Resource
private
CustomerContactsService
customerContactsService
;
public
OrderVStrategy
(
ScoreRuleService
scoreRuleService
,
MemberUserScoreLogService
memberUserScoreLogService
,
MemberUserService
memberUserService
)
{
super
(
scoreRuleService
,
memberUserScoreLogService
,
memberUserService
);
public
OrderVStrategy
(
ScoreRuleService
scoreRuleService
,
MemberUserScoreLogService
memberUserScoreLogService
,
MemberUserService
memberUserService
,
MemberUserScoreApi
memberUserScoreApi
)
{
super
(
scoreRuleService
,
memberUserScoreLogService
,
memberUserService
,
memberUserScoreApi
);
}
@Override
...
...
yudao-module-member/yudao-module-member-impl/src/main/java/cn/iocoder/yudao/module/member/mq/consumer/score/core/RecommendStrategy.java
View file @
6717c09a
...
...
@@ -23,30 +23,28 @@ import java.util.HashMap;
@Service
@Slf4j
public
class
RecommendStrategy
extends
AbstractScoreRuleStrategy
{
@Resource
private
MemberUserScoreApi
memberUserScoreApi
;
@Resource
private
MemberUserService
memberUserService
;
public
RecommendStrategy
(
ScoreRuleService
scoreRuleService
,
MemberUserScoreLogService
memberUserScoreLogService
,
MemberUserService
memberUserService
)
{
super
(
scoreRuleService
,
memberUserScoreLogService
,
memberUserService
);
public
RecommendStrategy
(
ScoreRuleService
scoreRuleService
,
MemberUserScoreLogService
memberUserScoreLogService
,
MemberUserService
memberUserService
,
MemberUserScoreApi
memberUserScoreApi
)
{
super
(
scoreRuleService
,
memberUserScoreLogService
,
memberUserService
,
memberUserScoreApi
);
}
@Override
public
void
addScore
(
ScoreMessage
message
)
{
log
.
info
(
"Received Recommend message,referralCode:{}"
,
message
.
getReferralCode
());
// 根据推荐码获取推荐用户id
Long
userId
=
ReferralCodeUtils
.
getUserId
(
message
.
getReferralCode
());
log
.
info
(
"Received Recommend message,userID:{}"
,
userId
);
MemberUserDO
memberUserDO
=
memberUserService
.
getUserByCode
(
message
.
getReferralCode
());
if
(
memberUserDO
==
null
)
{
log
.
info
(
"Recommend listener: can not find user by referralCode:{}"
,
message
.
getReferralCode
());
return
;
}
Long
userId
=
memberUserDO
.
getId
();
ScoreRuleDO
scoreRuleDO
=
scoreRuleService
.
getEnableScoreRuleByType
(
ScoreRuleTypeEnum
.
RECOMMEND
);
if
(
scoreRuleDO
==
null
)
{
log
.
info
(
"Recommend rule is not exist,userID:{}"
,
userId
);
return
;
}
MemberUserDO
memberUserDO
=
memberUserService
.
getUser
(
userId
);
if
(
memberUserDO
==
null
)
{
log
.
info
(
"Recommend listener: The recommend user does not exist,userID:{}"
,
userId
);
return
;
}
// 校验累计最高分
Integer
userScoreTotalCount
=
getUserScoreTotalCount
(
scoreRuleDO
.
getId
(),
userId
);
if
(
scoreRuleDO
.
getMaxScoreTotal
()
>
0
&&
userScoreTotalCount
>=
scoreRuleDO
.
getMaxScoreTotal
())
{
...
...
yudao-module-member/yudao-module-member-impl/src/main/java/cn/iocoder/yudao/module/member/mq/consumer/score/core/RegisterStrategy.java
View file @
6717c09a
...
...
@@ -24,13 +24,11 @@ import java.util.HashMap;
@Service
@Slf4j
public
class
RegisterStrategy
extends
AbstractScoreRuleStrategy
{
@Resource
private
MemberUserScoreApi
memberUserScoreApi
;
@Resource
private
MemberUserService
memberUserService
;
public
RegisterStrategy
(
ScoreRuleService
scoreRuleService
,
MemberUserScoreLogService
memberUserScoreLogService
,
MemberUserService
memberUserService
)
{
super
(
scoreRuleService
,
memberUserScoreLogService
,
memberUserService
);
public
RegisterStrategy
(
ScoreRuleService
scoreRuleService
,
MemberUserScoreLogService
memberUserScoreLogService
,
MemberUserService
memberUserService
,
MemberUserScoreApi
memberUserScoreApi
)
{
super
(
scoreRuleService
,
memberUserScoreLogService
,
memberUserService
,
memberUserScoreApi
);
}
@Override
...
...
yudao-module-member/yudao-module-member-impl/src/main/java/cn/iocoder/yudao/module/member/service/user/MemberUserService.java
View file @
6717c09a
...
...
@@ -222,4 +222,6 @@ public interface MemberUserService {
List
<
MemberUserDO
>
getByCursor
(
Long
startUserId
,
long
limit
);
void
historyCodeFlush
();
MemberUserDO
getUserByCode
(
String
referralCode
);
}
yudao-module-member/yudao-module-member-impl/src/main/java/cn/iocoder/yudao/module/member/service/user/MemberUserServiceImpl.java
View file @
6717c09a
...
...
@@ -579,6 +579,11 @@ public class MemberUserServiceImpl implements MemberUserService {
}
}
@Override
public
MemberUserDO
getUserByCode
(
String
referralCode
)
{
return
memberUserMapper
.
selectOne
(
"code"
,
referralCode
);
}
private
String
getNextMemberCode
()
{
String
key
=
"memberCode:max:number"
;
String
incrIfExistScript
=
"if redis.call(\"exists\", KEYS[1]) == 1 then\n"
+
...
...
yudao-module-member/yudao-module-member-impl/src/main/java/cn/iocoder/yudao/module/member/vo/scoreRule/ScoreRuleBackDetailVO.java
View file @
6717c09a
...
...
@@ -4,6 +4,7 @@ import cn.iocoder.yudao.module.member.vo.scoreRule.extra.ScoreRuleOrderVExtraVO;
import
cn.iocoder.yudao.module.member.vo.scoreRule.extra.ScoreRuleRegisterExtraVO
;
import
cn.iocoder.yudao.module.member.vo.scoreRule.extra.ScoreRuleShareExtraVO
;
import
cn.iocoder.yudao.module.member.vo.scoreRule.extra.ScoreRulerRecommendExtraVO
;
import
com.fasterxml.jackson.annotation.JsonInclude
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
...
...
@@ -14,6 +15,7 @@ import lombok.ToString;
@ToString
(
callSuper
=
true
)
@EqualsAndHashCode
(
callSuper
=
true
)
@ApiModel
(
"管理后台 - 积分规则详细信息 Response VO"
)
@JsonInclude
(
JsonInclude
.
Include
.
NON_NULL
)
public
class
ScoreRuleBackDetailVO
extends
ScoreRuleBackVO
{
@ApiModelProperty
(
value
=
"扩展字段原始"
)
private
String
extra
;
...
...
yudao-module-reward/yudao-module-reward-impl/src/main/java/cn/iocoder/yudao/module/reward/controller/admin/redeem/RedeemRewardController.java
View file @
6717c09a
...
...
@@ -3,6 +3,7 @@ package cn.iocoder.yudao.module.reward.controller.admin.redeem;
import
cn.iocoder.yudao.framework.common.pojo.CommonResult
;
import
cn.iocoder.yudao.framework.common.pojo.PageResult
;
import
cn.iocoder.yudao.framework.excel.util.ExcelUtils
;
import
cn.iocoder.yudao.framework.idempotent.core.annotation.Idempotent
;
import
cn.iocoder.yudao.module.reward.api.reward.RedeemRewardApi
;
import
cn.iocoder.yudao.module.reward.api.reward.dto.RedeemRewardReqVO
;
import
cn.iocoder.yudao.module.reward.api.reward.dto.RedeemRewardRespDTO
;
...
...
@@ -124,6 +125,7 @@ public class RedeemRewardController {
@PostMapping
(
"/single"
)
@ApiOperation
(
"兑换礼品"
)
@Idempotent
(
timeout
=
5
)
@PreAuthorize
(
"@ss.hasPermission('ecw:giftManagement:exchange')"
)
public
CommonResult
<
Boolean
>
redeemReward
(
@Valid
@RequestBody
RedeemRewardReqVO
redeemRewardReqVO
)
{
return
success
(
redeemRewardApi
.
redeemReward
(
redeemRewardReqVO
));
...
...
@@ -131,6 +133,7 @@ public class RedeemRewardController {
@PostMapping
(
"/batch"
)
@ApiOperation
(
"批量兑换礼品"
)
@Idempotent
(
timeout
=
5
)
@PreAuthorize
(
"@ss.hasPermission('ecw:giftManagement:exchange')"
)
public
CommonResult
<
List
<
RedeemRewardRespDTO
>>
redeemRewards
(
@Valid
@RequestBody
List
<
RedeemRewardReqVO
>
redeemRewardReqVOList
)
{
return
success
(
redeemRewardApi
.
redeemRewards
(
redeemRewardReqVOList
));
...
...
yudao-module-reward/yudao-module-reward-impl/src/main/java/cn/iocoder/yudao/module/reward/controller/admin/reward/RewardController.java
View file @
6717c09a
...
...
@@ -3,6 +3,7 @@ package cn.iocoder.yudao.module.reward.controller.admin.reward;
import
cn.iocoder.yudao.framework.common.pojo.CommonResult
;
import
cn.iocoder.yudao.framework.common.pojo.PageResult
;
import
cn.iocoder.yudao.framework.excel.util.ExcelUtils
;
import
cn.iocoder.yudao.framework.idempotent.core.annotation.Idempotent
;
import
cn.iocoder.yudao.framework.mybatis.core.vo.PageVO
;
import
cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog
;
import
cn.iocoder.yudao.module.reward.convert.reward.RewardConvert
;
...
...
@@ -38,6 +39,7 @@ public class RewardController {
@PostMapping
(
"/create"
)
@ApiOperation
(
"创建礼品"
)
@Idempotent
(
timeout
=
3
)
@PreAuthorize
(
"@ss.hasPermission('ecw:giftManagement:add')"
)
public
CommonResult
<
Long
>
create
(
@Valid
@RequestBody
RewardCreateReqVO
createReqVO
)
{
return
success
(
rewardService
.
create
(
createReqVO
));
...
...
@@ -99,6 +101,7 @@ public class RewardController {
@PostMapping
(
"/copy/{id}"
)
@ApiOperation
(
"复制礼品"
)
@Idempotent
(
timeout
=
3
)
@PreAuthorize
(
"@ss.hasPermission('ecw:giftManagement:copy')"
)
public
CommonResult
<
Long
>
copyReward
(
@NotNull
@PathVariable
Long
id
)
{
return
success
(
rewardService
.
copyReward
(
id
));
...
...
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