Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
H
haoban-manage3.0
Overview
Overview
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
haoban3.0
haoban-manage3.0
Commits
a0ded935
Commit
a0ded935
authored
Mar 05, 2025
by
王祖波
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
立即触发场景限制发送频率
parent
d4672d99
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
34 additions
and
1 deletions
+34
-1
InteractRecordMessageService.java
...service/content/message/InteractRecordMessageService.java
+6
-1
IntervalUtils.java
...ava/com/gic/haoban/manage/service/util/IntervalUtils.java
+28
-0
No files found.
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/content/message/InteractRecordMessageService.java
View file @
a0ded935
...
...
@@ -15,6 +15,7 @@ import com.gic.haoban.manage.service.pojo.bo.content.message.InteractRecordMessa
import
com.gic.haoban.manage.service.service.content.InteractRecordService
;
import
com.gic.haoban.manage.service.service.content.PotentialCustomerService
;
import
com.gic.haoban.manage.service.service.content.adaptor.InteractRecordMessageBuilder
;
import
com.gic.haoban.manage.service.util.IntervalUtils
;
import
com.gic.redis.data.util.RedisUtil
;
import
com.google.common.collect.Lists
;
import
lombok.extern.slf4j.Slf4j
;
...
...
@@ -172,7 +173,11 @@ public class InteractRecordMessageService {
.
enterpriseId
(
interactRecordMessageBO
.
getEnterpriseId
())
.
customerStaticsBos
(
Lists
.
newArrayList
(
new
PotentialCustomerStaticsBO
(
interactRecordBO
.
getClerkId
(),
1
)))
.
build
();
potentialCustomerService
.
sendPotentialCustomerNotice
(
notifyContext
);
// 立即触发场景限制发送频率
boolean
send
=
IntervalUtils
.
tryAddInterval
(
interactRecordBO
.
getClerkId
(),
interactRecordBO
.
getMemberId
(),
interactRecordBO
.
getUnionId
());
if
(
send
)
{
potentialCustomerService
.
sendPotentialCustomerNotice
(
notifyContext
);
}
}
}
}
finally
{
...
...
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/util/IntervalUtils.java
0 → 100644
View file @
a0ded935
package
com
.
gic
.
haoban
.
manage
.
service
.
util
;
import
com.gic.redis.data.util.RedisUtil
;
import
org.redisson.api.RBucket
;
import
org.redisson.api.RedissonClient
;
import
java.util.concurrent.TimeUnit
;
/**
* Created by wangzubo on 2025/3/5.
*/
public
class
IntervalUtils
{
private
static
final
String
INTERVAL_KEY
=
"haoban-manage3-service:interval_potential:%s:%s:%s"
;
public
static
boolean
tryAddInterval
(
String
clerkId
,
String
memberId
,
String
unionId
)
{
String
key
=
String
.
format
(
INTERVAL_KEY
,
clerkId
,
memberId
,
unionId
);
RedissonClient
redisClient
=
RedisUtil
.
getRedisClient
();
RBucket
<
Object
>
bucket
=
redisClient
.
getBucket
(
key
);
boolean
trySet
=
bucket
.
trySet
(
1
,
10
,
TimeUnit
.
SECONDS
);
if
(!
trySet
)
{
return
false
;
}
return
true
;
}
}
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