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
6208acb9
Commit
6208acb9
authored
Oct 17, 2024
by
王祖波
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
社群活动邀请逻辑
parent
a4094846
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
27 changed files
with
631 additions
and
88 deletions
+631
-88
GroupChatActivityJoinDTO.java
.../haoban/manage/api/dto/chat/GroupChatActivityJoinDTO.java
+5
-3
GroupChatActivityRewardBaseDTO.java
...n/manage/api/dto/chat/GroupChatActivityRewardBaseDTO.java
+3
-2
GroupChatActivityRewardDetailDTO.java
...manage/api/dto/chat/GroupChatActivityRewardDetailDTO.java
+1
-1
GroupChatActivityRewardDetailLogDTO.java
...age/api/dto/chat/GroupChatActivityRewardDetailLogDTO.java
+1
-1
GroupChatActivityShareQDTO.java
...oban/manage/api/qdto/chat/GroupChatActivityShareQDTO.java
+44
-0
HaobanTimerApiService.java
.../gic/haoban/manage/api/service/HaobanTimerApiService.java
+5
-0
JoinRuleManager.java
...c/haoban/manage/service/context/chat/JoinRuleManager.java
+49
-1
RewardSender.java
.../gic/haoban/manage/service/context/chat/RewardSender.java
+136
-0
GroupChatActivityInviteLogMapper.java
...ice/dao/mapper/chat/GroupChatActivityInviteLogMapper.java
+1
-34
GroupChatActivityRewardDetailLogMapper.java
...o/mapper/chat/GroupChatActivityRewardDetailLogMapper.java
+0
-8
TabGroupChatActivityInviteLog.java
...ge/service/entity/chat/TabGroupChatActivityInviteLog.java
+12
-0
TabGroupChatActivityReward.java
...anage/service/entity/chat/TabGroupChatActivityReward.java
+2
-2
TabGroupChatActivityRewardDetailLog.java
...vice/entity/chat/TabGroupChatActivityRewardDetailLog.java
+1
-1
RewardReturnBO.java
...com/gic/haoban/manage/service/pojo/bo/RewardReturnBO.java
+38
-0
GroupChatActivityBaseContext.java
...ge/service/pojo/bo/chat/GroupChatActivityBaseContext.java
+75
-0
GroupChatActivityContext.java
...manage/service/pojo/bo/chat/GroupChatActivityContext.java
+37
-0
GroupChatActivityInviteLogService.java
...rvice/service/chat/GroupChatActivityInviteLogService.java
+15
-0
GroupChatActivityRewardLogService.java
...rvice/service/chat/GroupChatActivityRewardLogService.java
+8
-0
GroupChatActivityInviteLogServiceImpl.java
...vice/chat/impl/GroupChatActivityInviteLogServiceImpl.java
+0
-0
GroupChatActivityJoinServiceImpl.java
...e/service/chat/impl/GroupChatActivityJoinServiceImpl.java
+2
-2
GroupChatActivityRewardLogServiceImpl.java
...vice/chat/impl/GroupChatActivityRewardLogServiceImpl.java
+0
-0
GroupChatServiceImpl.java
...anage/service/service/chat/impl/GroupChatServiceImpl.java
+4
-0
HaobanTimerApiServiceImpl.java
...e/service/service/out/impl/HaobanTimerApiServiceImpl.java
+9
-0
ExecuteServiceUtil.java
...om/gic/haoban/manage/service/util/ExecuteServiceUtil.java
+26
-0
GroupChatActivityInviteLogMapper.xml
...esources/mapper/chat/GroupChatActivityInviteLogMapper.xml
+9
-21
GroupChatActivityRewardDetailLogMapper.xml
...es/mapper/chat/GroupChatActivityRewardDetailLogMapper.xml
+0
-12
GroupChatTest.java
haoban-manage3-service/src/test/java/GroupChatTest.java
+148
-0
No files found.
haoban-manage3-api/src/main/java/com/gic/haoban/manage/api/dto/chat/GroupChatActivityJoinDTO.java
View file @
6208acb9
package
com
.
gic
.
haoban
.
manage
.
api
.
dto
.
chat
;
import
com.fasterxml.jackson.annotation.JsonIgnoreProperties
;
import
com.fasterxml.jackson.databind.annotation.JsonSerialize
;
import
com.fasterxml.jackson.databind.ser.std.ToStringSerializer
;
import
com.google.common.base.Objects
;
import
java.io.Serializable
;
...
...
@@ -17,12 +19,12 @@ public class GroupChatActivityJoinDTO implements Serializable {
/**
* 社群活动入群规则id
*/
@Json
IgnoreProperties
(
ignoreUnknown
=
true
)
@Json
Serialize
(
using
=
ToStringSerializer
.
class
)
private
Long
chatActivityJoinId
;
/**
* 内容活动id
*/
@Json
IgnoreProperties
(
ignoreUnknown
=
true
)
@Json
Serialize
(
using
=
ToStringSerializer
.
class
)
private
Long
chatActivityId
;
/**
* 会员类型(0:会员筛选,1:会员分组)
...
...
@@ -43,7 +45,7 @@ public class GroupChatActivityJoinDTO implements Serializable {
/**
* 群活码id
*/
@Json
IgnoreProperties
(
ignoreUnknown
=
true
)
@Json
Serialize
(
using
=
ToStringSerializer
.
class
)
private
Long
chatHmId
;
public
Long
getChatActivityJoinId
()
{
...
...
haoban-manage3-api/src/main/java/com/gic/haoban/manage/api/dto/chat/GroupChatActivityRewardBaseDTO.java
View file @
6208acb9
...
...
@@ -3,6 +3,7 @@ package com.gic.haoban.manage.api.dto.chat;
import
com.fasterxml.jackson.databind.annotation.JsonSerialize
;
import
com.fasterxml.jackson.databind.ser.std.ToStringSerializer
;
import
com.google.common.base.Objects
;
import
com.google.common.collect.Lists
;
import
org.apache.commons.collections.CollectionUtils
;
import
java.io.Serializable
;
...
...
@@ -52,7 +53,7 @@ public class GroupChatActivityRewardBaseDTO implements Serializable {
*/
private
String
rewardValue
;
/**
* 奖励名称 积分名称 成长值名称 卡券名称
(逗号分隔)
* 奖励名称 积分名称 成长值名称 卡券名称
*/
private
String
rewardName
;
...
...
@@ -157,7 +158,7 @@ public class GroupChatActivityRewardBaseDTO implements Serializable {
.
collect
(
Collectors
.
groupingBy
(
GroupChatActivityRewardBaseDTO:
:
getRewardInvite
,
Collectors
.
collectingAndThen
(
Collectors
.
groupingBy
(
baseDTO
->
Arrays
.
as
List
(
baseDTO
.
getChatActivityId
(),
baseDTO
.
getInviteLevel
())),
Collectors
.
groupingBy
(
baseDTO
->
Lists
.
newArray
List
(
baseDTO
.
getChatActivityId
(),
baseDTO
.
getInviteLevel
())),
chatActivityGroups
->
chatActivityGroups
.
values
().
stream
()
.
map
(
group
->
{
GroupChatActivityRewardBaseDTO
firstDTO
=
group
.
get
(
0
);
...
...
haoban-manage3-api/src/main/java/com/gic/haoban/manage/api/dto/chat/GroupChatActivityRewardDetailDTO.java
View file @
6208acb9
...
...
@@ -23,7 +23,7 @@ public class GroupChatActivityRewardDetailDTO implements Serializable {
*/
private
String
rewardValue
;
/**
* 奖励名称 积分名称 成长值名称 卡券名称
(逗号分隔)
* 奖励名称 积分名称 成长值名称 卡券名称
*/
private
String
rewardName
;
...
...
haoban-manage3-api/src/main/java/com/gic/haoban/manage/api/dto/chat/GroupChatActivityRewardDetailLogDTO.java
View file @
6208acb9
...
...
@@ -42,7 +42,7 @@ public class GroupChatActivityRewardDetailLogDTO implements Serializable {
private
Integer
rewardType
;
/**
* 奖励内容 积分值 成长值 卡券id
* 奖励内容 积分值 成长值 卡券id
(逗号分隔)
*/
private
String
rewardValue
;
...
...
haoban-manage3-api/src/main/java/com/gic/haoban/manage/api/qdto/chat/GroupChatActivityShareQDTO.java
0 → 100644
View file @
6208acb9
package
com
.
gic
.
haoban
.
manage
.
api
.
qdto
.
chat
;
import
java.io.Serializable
;
public
class
GroupChatActivityShareQDTO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
28454620622119889L
;
/**
* 社群活动id
*/
private
Long
chatActivityId
;
/**
* 邀请人会员ID
*/
private
String
inviterMemberId
;
/**
* 企业ID
*/
private
String
enterpriseId
;
public
Long
getChatActivityId
()
{
return
chatActivityId
;
}
public
void
setChatActivityId
(
Long
chatActivityId
)
{
this
.
chatActivityId
=
chatActivityId
;
}
public
String
getInviterMemberId
()
{
return
inviterMemberId
;
}
public
void
setInviterMemberId
(
String
inviterMemberId
)
{
this
.
inviterMemberId
=
inviterMemberId
;
}
public
String
getEnterpriseId
()
{
return
enterpriseId
;
}
public
void
setEnterpriseId
(
String
enterpriseId
)
{
this
.
enterpriseId
=
enterpriseId
;
}
}
haoban-manage3-api/src/main/java/com/gic/haoban/manage/api/service/HaobanTimerApiService.java
View file @
6208acb9
...
...
@@ -134,4 +134,9 @@ public interface HaobanTimerApiService {
*/
void
openStaffServiceTimer
(
String
params
)
;
/**
* 社群活动定时任务
* @param params
*/
void
groupChatActivityTime
(
String
params
);
}
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/context/chat/JoinRuleManager.java
View file @
6208acb9
...
...
@@ -94,6 +94,12 @@ public class JoinRuleManager {
R
apply
(
T
t
)
throws
BusinessException
;
}
/**
* 获取入群群活码
* @param activityHmQDTO qdto
* @return
* @throws BusinessException
*/
public
List
<
GroupChatHmBO
>
listGroupHm
(
GroupChatActivityHmQDTO
activityHmQDTO
)
throws
BusinessException
{
GroupChatActivityDTO
chatActivity
=
activityHmQDTO
.
getChatActivity
();
String
inviteeMemberId
=
activityHmQDTO
.
getInviteeMemberId
();
...
...
@@ -137,6 +143,13 @@ public class JoinRuleManager {
return
null
;
}
/**
* 校验会员是否满足校验条件
* @param chatActivity 社群活动
* @param joinDTO 入群规则
* @param memberId 受邀人id
* @return
*/
private
boolean
checkActivityMember
(
GroupChatActivityDTO
chatActivity
,
GroupChatActivityJoinDTO
joinDTO
,
String
memberId
)
{
String
enterpriseId
=
chatActivity
.
getEnterpriseId
();
Integer
memberType
=
joinDTO
.
getMemberType
();
...
...
@@ -158,7 +171,7 @@ public class JoinRuleManager {
dto
.
setMemberId
(
memberId
);
exist
=
memberTagGroupApiService
.
memberIsExistGroup
(
dto
);
}
logger
.
info
(
"activity:{},memberId:{}
无权限"
,
chatActivity
.
getChatActivityId
(),
memberId
);
logger
.
info
(
"activity:{},memberId:{}
,joinId:{},有无权限:{}"
,
chatActivity
.
getChatActivityId
(),
memberId
,
joinDTO
.
getChatActivityJoinId
(),
exist
);
return
exist
;
}
...
...
@@ -172,6 +185,11 @@ public class JoinRuleManager {
return
null
;
}
/**
* 获取邀请人所在群群活码
* @param activityHmQDTO qdto
* @return
*/
private
List
<
GroupChatHmBO
>
handleInviterChat
(
GroupChatActivityHmQDTO
activityHmQDTO
)
{
String
wxEnterpriseId
=
activityHmQDTO
.
getChatActivity
().
getWxEnterpriseId
();
String
enterpriseId
=
activityHmQDTO
.
getEnterpriseId
();
...
...
@@ -205,6 +223,11 @@ public class JoinRuleManager {
return
listPage
.
getResult
();
}
/**
* 获取会员主门店群活码
* @param activityHmQDTO qdto
* @return
*/
private
List
<
GroupChatHmBO
>
handleMainStore
(
GroupChatActivityHmQDTO
activityHmQDTO
)
{
String
enterpriseId
=
activityHmQDTO
.
getEnterpriseId
();
String
wxEnterpriseId
=
activityHmQDTO
.
getChatActivity
().
getWxEnterpriseId
();
...
...
@@ -219,6 +242,11 @@ public class JoinRuleManager {
return
getByStoreIdList
(
enterpriseId
,
wxEnterpriseId
,
Lists
.
newArrayList
(
mainStoreId
));
}
/**
* 获取会员协管门店群活码
* @param activityHmQDTO qdto
* @return
*/
private
List
<
GroupChatHmBO
>
handleOtherStore
(
GroupChatActivityHmQDTO
activityHmQDTO
)
{
String
enterpriseId
=
activityHmQDTO
.
getEnterpriseId
();
String
wxEnterpriseId
=
activityHmQDTO
.
getChatActivity
().
getWxEnterpriseId
();
...
...
@@ -233,6 +261,12 @@ public class JoinRuleManager {
return
getByStoreIdList
(
enterpriseId
,
wxEnterpriseId
,
assistantStoreIds
);
}
/**
* 获取会员最近定位门店群活码
* @param activityHmQDTO qdto
* @return
* @throws BusinessException
*/
private
List
<
GroupChatHmBO
>
handleLbs
(
GroupChatActivityHmQDTO
activityHmQDTO
)
throws
BusinessException
{
String
enterpriseId
=
activityHmQDTO
.
getEnterpriseId
();
String
wxEnterpriseId
=
activityHmQDTO
.
getChatActivity
().
getWxEnterpriseId
();
...
...
@@ -280,6 +314,13 @@ public class JoinRuleManager {
return
storeToHmMap
.
get
(
storeId
);
}
/**
* 根据门店id获取群活码
* @param enterpriseId 企业id
* @param wxEnterpriseId 好办企业id
* @param storeIdList 门店id列表
* @return
*/
private
List
<
GroupChatHmBO
>
getByStoreIdList
(
String
enterpriseId
,
String
wxEnterpriseId
,
List
<
String
>
storeIdList
)
{
logger
.
info
(
"门店id列表:{}"
,
JSON
.
toJSONString
(
storeIdList
));
// 获取导购列表
...
...
@@ -327,6 +368,13 @@ public class JoinRuleManager {
}
/**
* 获取门店id对应群活码映射
* @param enterpriseId 企业id
* @param wxEnterpriseId 好办企业id
* @param storeIdList 门店id列表
* @return
*/
private
Map
<
String
,
List
<
GroupChatHmBO
>>
getStoreIdToGroupChatHmBOMap
(
String
enterpriseId
,
String
wxEnterpriseId
,
List
<
String
>
storeIdList
)
{
logger
.
info
(
"门店id列表:{}"
,
JSON
.
toJSONString
(
storeIdList
));
Page
<
ClerkDTO
>
page
=
clerkService
.
pageClerkByNameOrCode
(
enterpriseId
,
""
,
storeIdList
,
1
,
10000
);
...
...
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/context/chat/RewardSender.java
0 → 100644
View file @
6208acb9
package
com
.
gic
.
haoban
.
manage
.
service
.
context
.
chat
;
import
com.alibaba.fastjson.JSON
;
import
com.gic.api.base.commons.BusinessException
;
import
com.gic.api.base.commons.ServiceResponse
;
import
com.gic.content.api.enums.activity.ContentActivityRewardEnum
;
import
com.gic.enterprise.api.enums.PlatformChannelEnum
;
import
com.gic.haoban.manage.service.entity.chat.TabGroupChatActivityRewardDetailLog
;
import
com.gic.haoban.manage.service.pojo.bo.RewardReturnBO
;
import
com.gic.haoban.manage.service.util.ExecuteServiceUtil
;
import
com.gic.marketing.api.dto.CoupCardCode
;
import
com.gic.marketing.api.dto.CoupCardLogDTO
;
import
com.gic.marketing.api.enums.MarketingErrCode
;
import
com.gic.marketing.api.service.CoupCardDistributionService
;
import
com.gic.member.api.constant.integral.IntegralTypeEnum
;
import
com.gic.member.api.dto.integral.req.IntegralOperationFullReq
;
import
com.gic.member.api.dto.integral.resp.IntegralOperationResp
;
import
com.gic.member.api.service.integral.IntegralWriteApiService
;
import
com.gic.member.ext.api.dto.growth.constant.GrowthErrorCode
;
import
com.gic.member.ext.api.dto.growth.req.MemberGrowthChangeValueReq
;
import
com.gic.member.ext.api.dto.growth.resp.MemberGrowthOperateResp
;
import
com.gic.member.ext.api.enums.growth.GrowthRuleEnum
;
import
com.gic.member.ext.api.service.MemberGrowthWriteApiService
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Component
;
import
java.util.Objects
;
@Component
public
class
RewardSender
{
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
RewardSender
.
class
);
private
static
final
String
BUSINESS_NAME
=
"社群邀请有礼"
;
@Autowired
private
IntegralWriteApiService
integralWriteApiService
;
@Autowired
private
CoupCardDistributionService
coupCardDistributionService
;
@Autowired
private
MemberGrowthWriteApiService
memberGrowthWriteApiService
;
public
RewardReturnBO
sendReward
(
TabGroupChatActivityRewardDetailLog
rewardDetailLog
,
String
activityName
)
throws
BusinessException
{
String
enterpriseId
=
rewardDetailLog
.
getEnterpriseId
();
String
memberId
=
rewardDetailLog
.
getMemberId
();
Long
chatActivityId
=
rewardDetailLog
.
getChatActivityId
();
String
rewardDetailLogId
=
String
.
valueOf
(
rewardDetailLog
.
getChatActivityRewardDetailId
());
Integer
rewardType
=
rewardDetailLog
.
getRewardType
();
String
rewardValue
=
rewardDetailLog
.
getRewardValue
();
logger
.
info
(
"处理奖励: enterpriseId={}, memberId={}, rewardType={}, rewardValue={}"
,
enterpriseId
,
memberId
,
rewardType
,
rewardValue
);
switch
(
ContentActivityRewardEnum
.
getByValue
(
rewardType
))
{
case
INTEGRAL:
Integer
integral
=
Integer
.
parseInt
(
rewardValue
);
return
sendIntegral
(
enterpriseId
,
memberId
,
integral
,
BUSINESS_NAME
+
"-"
+
activityName
,
rewardDetailLogId
,
rewardDetailLogId
);
case
GROWTH:
Integer
growthValue
=
Integer
.
parseInt
(
rewardValue
);
return
sendGrowth
(
enterpriseId
,
memberId
,
growthValue
,
activityName
,
rewardDetailLogId
,
rewardDetailLogId
);
case
COUPON:
return
sendCoupon
(
enterpriseId
,
memberId
,
rewardValue
,
String
.
valueOf
(
chatActivityId
));
default
:
throw
new
BusinessException
(
"-1"
,
"不支持的奖励类型"
);
}
}
public
RewardReturnBO
sendIntegral
(
String
enterpriseId
,
String
memberId
,
Integer
integral
,
String
remark
,
String
relationId
,
String
oRelationId
)
throws
BusinessException
{
Integer
integralType
=
integral
>
0
?
IntegralTypeEnum
.
TYPE_1122
.
getCode
()
:
IntegralTypeEnum
.
TYPE_1242
.
getCode
();
IntegralOperationFullReq
req
=
new
IntegralOperationFullReq
();
req
.
setMemberId
(
memberId
);
req
.
setEnterpriseId
(
enterpriseId
);
req
.
setIntegralType
(
integralType
);
req
.
setIntegral
(
integral
);
req
.
setSourceChannel
(
PlatformChannelEnum
.
C_WECHAT_MINI
.
getChannelCode
());
req
.
setRemark
(
remark
);
req
.
setUniqueId
(
relationId
);
req
.
setRelationId
(
relationId
);
req
.
setoRelationId
(
oRelationId
);
logger
.
info
(
"发送积分:{}"
,
JSON
.
toJSONString
(
req
));
ServiceResponse
<
IntegralOperationResp
>
response
=
ExecuteServiceUtil
.
executeService
(()
->
integralWriteApiService
.
integralOperation
(
req
),
"积分处理异常"
);
if
(
response
.
isSuccess
()
&&
response
.
getResult
()
!=
null
)
{
Integer
realOperationIntegral
=
response
.
getResult
().
getRealOperationIntegral
();
return
new
RewardReturnBO
(
response
.
getResult
().
getIntegralLogId
(),
realOperationIntegral
!=
null
?
realOperationIntegral
:
integral
);
}
throw
new
BusinessException
(
"-1"
,
response
.
getMessage
());
}
public
RewardReturnBO
sendGrowth
(
String
enterpriseId
,
String
memberId
,
Integer
growthValue
,
String
remark
,
String
relationId
,
String
oRelationId
)
throws
BusinessException
{
String
ruleCode
=
GrowthRuleEnum
.
INVITE_ACTIVITY
.
getRuleCode
();
MemberGrowthChangeValueReq
req
=
new
MemberGrowthChangeValueReq
();
req
.
setEnterpriseId
(
enterpriseId
);
req
.
setMemberId
(
memberId
);
req
.
setChannelCode
(
PlatformChannelEnum
.
C_WECHAT_MINI
.
getChannelCode
());
req
.
setRuleCode
(
ruleCode
);
req
.
setGrowthChangeValue
(
growthValue
);
req
.
desc
(
BUSINESS_NAME
,
remark
);
req
.
setOuterChangeId
(
relationId
);
req
.
setOriginChangeId
(
oRelationId
);
logger
.
info
(
"发送成长值: {}"
,
JSON
.
toJSONString
(
req
));
ServiceResponse
<
MemberGrowthOperateResp
>
response
=
ExecuteServiceUtil
.
executeService
(()
->
memberGrowthWriteApiService
.
updateMemberGrowthChangeValue
(
req
),
"成长值发放异常"
);
if
(
response
.
isSuccess
()
&&
response
.
getResult
()
!=
null
)
{
MemberGrowthOperateResp
growthResp
=
response
.
getResult
();
return
new
RewardReturnBO
(
String
.
valueOf
(
growthResp
.
getChangeId
()),
growthResp
.
getActualChangeGrowth
());
}
if
(
Objects
.
equals
(
response
.
getCode
(),
GrowthErrorCode
.
MEMBER_GROWTH_IS_ZERO
.
code
()))
{
//当前会员没有成长值,无法进行扣除
return
new
RewardReturnBO
(
""
,
0
);
}
throw
new
BusinessException
(
"-1"
,
response
.
getMessage
());
}
public
RewardReturnBO
sendCoupon
(
String
enterpriseId
,
String
memberId
,
String
cardId
,
String
relationId
)
throws
BusinessException
{
logger
.
info
(
"发送卡券: enterpriseId={}, memberId={}, cardId={}, relationId={}"
,
enterpriseId
,
memberId
,
cardId
,
relationId
);
ServiceResponse
<
CoupCardLogDTO
>
response
=
ExecuteServiceUtil
.
executeService
(()
->
coupCardDistributionService
.
sendCard
(
enterpriseId
,
cardId
,
memberId
,
""
,
CoupCardCode
.
CARD_RECEIVE_CODE_GROUP_CHAT_ACTIVITY
.
getCode
(),
CoupCardCode
.
CARD_RECEIVE_CODE_GROUP_CHAT_ACTIVITY
.
getRelationType
(),
relationId
,
true
),
"卡券发放异常"
);
if
(
response
.
isSuccess
()
&&
response
.
getResult
()
!=
null
)
{
CoupCardLogDTO
cardLogDTO
=
response
.
getResult
();
return
new
RewardReturnBO
(
cardLogDTO
.
getCardLogId
(),
null
);
}
throw
new
BusinessException
(
"-1"
,
MarketingErrCode
.
convertCouponError
(
response
.
getMessage
()));
}
}
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/dao/mapper/chat/GroupChatActivityInviteLogMapper.java
View file @
6208acb9
...
...
@@ -30,7 +30,7 @@ public interface GroupChatActivityInviteLogMapper {
* @param pageable 分页对象
* @return 对象列表
*/
List
<
TabGroupChatActivityInviteLog
>
queryAll
ByLimit
(
TabGroupChatActivityInviteLog
tabGroupChatActivityInviteLog
,
@Param
(
"pageable"
)
Pageable
pageable
);
List
<
TabGroupChatActivityInviteLog
>
queryAll
(
TabGroupChatActivityInviteLog
tabGroupChatActivityInviteLog
);
/**
* 统计总行数
...
...
@@ -49,39 +49,6 @@ public interface GroupChatActivityInviteLogMapper {
int
insert
(
TabGroupChatActivityInviteLog
tabGroupChatActivityInviteLog
);
/**
* 批量新增数据(MyBatis原生foreach方法)
*
* @param entities List<TabHaobanGroupChatActivityInviteLog> 实例对象列表
* @return 影响行数
*/
int
insertBatch
(
@Param
(
"entities"
)
List
<
TabGroupChatActivityInviteLog
>
entities
);
/**
* 批量新增或按主键更新数据(MyBatis原生foreach方法)
*
* @param entities List<TabHaobanGroupChatActivityInviteLog> 实例对象列表
* @return 影响行数
* @throws org.springframework.jdbc.BadSqlGrammarException 入参是空List的时候会抛SQL语句错误的异常,请自行校验入参
*/
int
insertOrUpdateBatch
(
@Param
(
"entities"
)
List
<
TabGroupChatActivityInviteLog
>
entities
);
/**
* 修改数据
*
* @param tabGroupChatActivityInviteLog 实例对象
* @return 影响行数
*/
int
update
(
TabGroupChatActivityInviteLog
tabGroupChatActivityInviteLog
);
/**
* 通过主键删除数据
*
* @param chatActivityInviteId 主键
* @return 影响行数
*/
int
deleteById
(
Long
chatActivityInviteId
);
/**
* 根据活动id和要求人查询当前最大批次
* 有效邀请
*
...
...
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/dao/mapper/chat/GroupChatActivityRewardDetailLogMapper.java
View file @
6208acb9
...
...
@@ -57,14 +57,6 @@ public interface GroupChatActivityRewardDetailLogMapper {
int
update
(
TabGroupChatActivityRewardDetailLog
tabGroupChatActivityRewardDetailLog
);
/**
* 通过主键删除数据
*
* @param chatActivityRewardDetailId 主键
* @return 影响行数
*/
int
deleteById
(
Long
chatActivityRewardDetailId
);
/**
* 批量查询奖励明细
*
* @param rewardDetailLogQDTO
...
...
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/entity/chat/TabGroupChatActivityInviteLog.java
View file @
6208acb9
...
...
@@ -32,6 +32,10 @@ public class TabGroupChatActivityInviteLog implements Serializable {
*/
private
String
inviteeUserId
;
/**
* 受邀人unionId
*/
private
String
inviteeUnionId
;
/**
* 姓名
*/
private
String
userName
;
...
...
@@ -115,6 +119,14 @@ public class TabGroupChatActivityInviteLog implements Serializable {
this
.
inviteeUserId
=
inviteeUserId
;
}
public
String
getInviteeUnionId
()
{
return
inviteeUnionId
;
}
public
void
setInviteeUnionId
(
String
inviteeUnionId
)
{
this
.
inviteeUnionId
=
inviteeUnionId
;
}
public
String
getUserName
()
{
return
userName
;
}
...
...
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/entity/chat/TabGroupChatActivityReward.java
View file @
6208acb9
...
...
@@ -40,11 +40,11 @@ public class TabGroupChatActivityReward implements Serializable {
*/
private
Integer
limitReward
;
/**
* 奖励内容 积分值 成长值 卡券id
* 奖励内容 积分值 成长值 卡券id
(逗号分隔)
*/
private
String
rewardValue
;
/**
* 奖励名称 卡券名称
* 奖励名称
积分名称 成长值名称
卡券名称
*/
private
String
rewardName
;
/**
...
...
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/entity/chat/TabGroupChatActivityRewardDetailLog.java
View file @
6208acb9
...
...
@@ -36,7 +36,7 @@ public class TabGroupChatActivityRewardDetailLog implements Serializable {
*/
private
Integer
rewardType
;
/**
* 奖励内容 积分值 成长值 卡券id
* 奖励内容 积分值 成长值 卡券id
(逗号分隔)
*/
private
String
rewardValue
;
/**
...
...
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/pojo/bo/RewardReturnBO.java
0 → 100644
View file @
6208acb9
package
com
.
gic
.
haoban
.
manage
.
service
.
pojo
.
bo
;
/**
* Created by wangzubo on 2024/8/24.
*/
public
class
RewardReturnBO
{
/**
* 奖励业务日志id
*/
private
String
rewardBusinessId
;
/**
* 奖励或返回实际值
*/
private
Integer
rewardValue
;
public
RewardReturnBO
(
String
rewardBusinessId
,
Integer
rewardValue
)
{
this
.
rewardBusinessId
=
rewardBusinessId
;
this
.
rewardValue
=
rewardValue
;
}
public
String
getRewardBusinessId
()
{
return
rewardBusinessId
;
}
public
void
setRewardBusinessId
(
String
rewardBusinessId
)
{
this
.
rewardBusinessId
=
rewardBusinessId
;
}
public
Integer
getRewardValue
()
{
return
rewardValue
;
}
public
void
setRewardValue
(
Integer
rewardValue
)
{
this
.
rewardValue
=
rewardValue
;
}
}
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/pojo/bo/chat/GroupChatActivityBaseContext.java
0 → 100644
View file @
6208acb9
package
com
.
gic
.
haoban
.
manage
.
service
.
pojo
.
bo
.
chat
;
import
com.gic.haoban.manage.api.dto.chat.GroupChatActivityDTO
;
import
com.gic.haoban.manage.service.entity.chat.TabGroupChatUser
;
/**
* Created by wangzubo on 2024/10/9.
*/
public
class
GroupChatActivityBaseContext
{
/**
* 入群详情id
*/
private
Long
chatUserId
;
/**
* 社群活动id
*/
private
Long
chatActivityId
;
/**
* 邀请人会员ID
*/
private
String
inviterMemberId
;
/**
* 企业id
*/
private
String
enterpriseId
;
/**
* 唯一id
*/
private
String
uniqueId
;
public
Long
getChatUserId
()
{
return
chatUserId
;
}
public
void
setChatUserId
(
Long
chatUserId
)
{
this
.
chatUserId
=
chatUserId
;
}
public
Long
getChatActivityId
()
{
return
chatActivityId
;
}
public
void
setChatActivityId
(
Long
chatActivityId
)
{
this
.
chatActivityId
=
chatActivityId
;
}
public
String
getInviterMemberId
()
{
return
inviterMemberId
;
}
public
void
setInviterMemberId
(
String
inviterMemberId
)
{
this
.
inviterMemberId
=
inviterMemberId
;
}
public
String
getEnterpriseId
()
{
return
enterpriseId
;
}
public
void
setEnterpriseId
(
String
enterpriseId
)
{
this
.
enterpriseId
=
enterpriseId
;
}
public
String
getUniqueId
()
{
return
uniqueId
;
}
public
void
setUniqueId
(
String
uniqueId
)
{
this
.
uniqueId
=
uniqueId
;
}
}
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/pojo/bo/chat/GroupChatActivityContext.java
0 → 100644
View file @
6208acb9
package
com
.
gic
.
haoban
.
manage
.
service
.
pojo
.
bo
.
chat
;
import
com.gic.haoban.manage.api.dto.chat.GroupChatActivityDTO
;
import
com.gic.haoban.manage.service.entity.chat.TabGroupChatUser
;
/**
* Created by wangzubo on 2024/10/9.
*/
public
class
GroupChatActivityContext
extends
GroupChatActivityBaseContext
{
/**
* 群详情
*/
private
TabGroupChatUser
chatUser
;
/**
* 社群活动
*/
private
GroupChatActivityDTO
chatActivityDTO
;
public
TabGroupChatUser
getChatUser
()
{
return
chatUser
;
}
public
void
setChatUser
(
TabGroupChatUser
chatUser
)
{
this
.
chatUser
=
chatUser
;
}
public
GroupChatActivityDTO
getChatActivityDTO
()
{
return
chatActivityDTO
;
}
public
void
setChatActivityDTO
(
GroupChatActivityDTO
chatActivityDTO
)
{
this
.
chatActivityDTO
=
chatActivityDTO
;
}
}
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/chat/GroupChatActivityInviteLogService.java
View file @
6208acb9
...
...
@@ -3,6 +3,9 @@ package com.gic.haoban.manage.service.service.chat;
import
com.gic.api.base.commons.Page
;
import
com.gic.haoban.manage.api.dto.chat.GroupChatActivityInviteLogDTO
;
import
com.gic.haoban.manage.api.qdto.chat.GroupChatActivityInviteLogQDTO
;
import
com.gic.haoban.manage.service.entity.chat.TabGroupChatUser
;
import
com.gic.haoban.manage.service.pojo.bo.chat.GroupChatActivityBaseContext
;
import
com.gic.haoban.manage.service.pojo.bo.chat.GroupChatActivityContext
;
import
java.util.List
;
...
...
@@ -29,4 +32,16 @@ public interface GroupChatActivityInviteLogService {
* @return
*/
Page
<
GroupChatActivityInviteLogDTO
>
queryInviteLogDetails
(
GroupChatActivityInviteLogQDTO
inviteLogQDTO
);
/**
* 入群异步处理参与社群活动
* @param list
*/
void
groupChatInviteMQ
(
List
<
TabGroupChatUser
>
list
);
/**
* 入群参与社群活动
* @param context
*/
void
groupChatInvite
(
GroupChatActivityBaseContext
context
);
}
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/chat/GroupChatActivityRewardLogService.java
View file @
6208acb9
...
...
@@ -4,6 +4,8 @@ import com.gic.api.base.commons.Page;
import
com.gic.haoban.manage.api.dto.chat.GroupChatActivityRewardLogDTO
;
import
com.gic.haoban.manage.api.qdto.chat.GroupChatActivityRewardLogQDTO
;
import
com.gic.haoban.manage.service.pojo.bo.chat.GroupChatActivityContext
;
/**
* 内容活动完成奖励表(TabHaobanGroupChatActivityRewardLog)表服务接口
*
...
...
@@ -21,4 +23,10 @@ public interface GroupChatActivityRewardLogService {
*/
Page
<
GroupChatActivityRewardLogDTO
>
queryRewardLogDetails
(
GroupChatActivityRewardLogQDTO
rewardLogQDTO
);
/**
* 处理奖励发放并保存日志
* @param context
*/
void
dealRewardAndSaveLog
(
GroupChatActivityContext
context
);
}
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/chat/impl/GroupChatActivityInviteLogServiceImpl.java
View file @
6208acb9
This diff is collapsed.
Click to expand it.
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/chat/impl/GroupChatActivityJoinServiceImpl.java
View file @
6208acb9
...
...
@@ -51,14 +51,14 @@ public class GroupChatActivityJoinServiceImpl implements GroupChatActivityJoinSe
}
@Override
public
void
saveActivityJoin
(
TabGroupChatActivity
activity
,
List
<
TabGroupChatActivityJoin
>
reward
List
)
{
public
void
saveActivityJoin
(
TabGroupChatActivity
activity
,
List
<
TabGroupChatActivityJoin
>
join
List
)
{
Long
chatActivityId
=
activity
.
getChatActivityId
();
List
<
TabGroupChatActivityJoin
>
oldJoinList
=
listByActivityId
(
chatActivityId
);
Map
<
Long
,
TabGroupChatActivityJoin
>
oldRewardMap
=
oldJoinList
.
stream
().
collect
(
Collectors
.
toMap
(
TabGroupChatActivityJoin:
:
getChatActivityJoinId
,
v
->
v
));
//先删除
businessManager
.
dealMemberTagByActivity
(
activity
,
null
,
true
);
reward
List
.
forEach
(
rule
->{
join
List
.
forEach
(
rule
->{
Long
chatActivityJoinId
=
rule
.
getChatActivityJoinId
();
if
(
chatActivityJoinId
!=
null
)
{
oldRewardMap
.
remove
(
chatActivityJoinId
);
...
...
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/chat/impl/GroupChatActivityRewardLogServiceImpl.java
View file @
6208acb9
This diff is collapsed.
Click to expand it.
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/chat/impl/GroupChatServiceImpl.java
View file @
6208acb9
...
...
@@ -14,6 +14,7 @@ import com.gic.enterprise.api.dto.StoreDTO;
import
com.gic.enterprise.api.service.StoreService
;
import
com.gic.haoban.manage.service.dao.mapper.WxEnterpriseMapper
;
import
com.gic.haoban.manage.service.service.*
;
import
com.gic.haoban.manage.service.service.chat.GroupChatActivityInviteLogService
;
import
com.gic.member.ext.api.enums.growth.GrowthRuleEnum
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.apache.commons.lang.StringUtils
;
...
...
@@ -128,6 +129,8 @@ public class GroupChatServiceImpl implements GroupChatService {
private
WxEnterpriseMapper
wxEnterpriseMapper
;
@Autowired
private
ExternalMemberService
externalMemberService
;
@Autowired
private
GroupChatActivityInviteLogService
groupChatActivityInviteLogService
;
private
static
GicMQClient
mqClient
=
GICMQClientUtil
.
getClientInstance
();
...
...
@@ -749,6 +752,7 @@ public class GroupChatServiceImpl implements GroupChatService {
}
if
(
CollectionUtils
.
isNotEmpty
(
needAddUserList
))
{
this
.
groupChatUserMapper
.
batchInsert
(
needAddUserList
);
groupChatActivityInviteLogService
.
groupChatInviteMQ
(
needAddUserList
);
}
// 删除退群的人
List
<
Long
>
deleteIdList
=
new
ArrayList
<>();
...
...
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/out/impl/HaobanTimerApiServiceImpl.java
View file @
6208acb9
...
...
@@ -8,6 +8,8 @@ import com.gic.haoban.manage.service.dao.mapper.hm.WxUserAddLogMapper;
import
com.gic.haoban.manage.service.entity.TabHaobanExternalClerkRelated
;
import
com.gic.haoban.manage.service.entity.hm.TabWxUserAddLog
;
import
com.gic.haoban.manage.service.service.*
;
import
com.gic.haoban.manage.service.service.chat.GroupChatActivityInviteLogService
;
import
com.gic.haoban.manage.service.service.chat.GroupChatActivityService
;
import
com.gic.haoban.manage.service.service.chat.GroupChatDataService
;
import
com.gic.haoban.manage.service.util.DingUtils
;
import
com.gic.haoban.manage.service.util.HBQwMonitorUtils
;
...
...
@@ -54,6 +56,8 @@ public class HaobanTimerApiServiceImpl implements HaobanTimerApiService {
private
HaobanCommonMQApiService
haobanCommonMQApiService
;
@Autowired
private
OpenStaffService
openStaffService
;
@Autowired
private
GroupChatActivityService
groupChatActivityService
;
@Override
...
...
@@ -186,4 +190,9 @@ public class HaobanTimerApiServiceImpl implements HaobanTimerApiService {
public
void
openStaffServiceTimer
(
String
params
)
{
this
.
openStaffService
.
openStaffServiceTimer
()
;
}
@Override
public
void
groupChatActivityTime
(
String
params
)
{
groupChatActivityService
.
activityQuartzUpdateStatus
();
}
}
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/util/ExecuteServiceUtil.java
0 → 100644
View file @
6208acb9
package
com
.
gic
.
haoban
.
manage
.
service
.
util
;
import
com.gic.api.base.commons.BusinessException
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
java.util.function.Supplier
;
/**
* Created by wangzubo on 2024/9/8.
*/
public
class
ExecuteServiceUtil
{
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
ExecuteServiceUtil
.
class
);
public
static
<
T
>
T
executeService
(
Supplier
<
T
>
serviceCall
,
String
errorMsg
)
throws
BusinessException
{
try
{
return
serviceCall
.
get
();
}
catch
(
Exception
e
)
{
logger
.
error
(
errorMsg
,
e
);
throw
new
BusinessException
(
"-1"
,
errorMsg
);
}
}
}
haoban-manage3-service/src/main/resources/mapper/chat/GroupChatActivityInviteLogMapper.xml
View file @
6208acb9
...
...
@@ -8,6 +8,7 @@
<result
property=
"inviterMemberId"
column=
"inviter_member_id"
jdbcType=
"VARCHAR"
/>
<result
property=
"inviteeMemberId"
column=
"invitee_member_id"
jdbcType=
"VARCHAR"
/>
<result
property=
"inviteeUserId"
column=
"invitee_user_id"
jdbcType=
"VARCHAR"
/>
<result
property=
"inviteeUnionId"
column=
"invitee_union_id"
jdbcType=
"VARCHAR"
/>
<result
property=
"userName"
column=
"user_name"
jdbcType=
"VARCHAR"
/>
<result
property=
"nickName"
column=
"nick_name"
jdbcType=
"VARCHAR"
/>
<result
property=
"groupChatId"
column=
"group_chat_id"
jdbcType=
"INTEGER"
/>
...
...
@@ -24,7 +25,7 @@
<sql
id=
"Base_Column_List"
>
chat_activity_invite_id
, chat_activity_id, inviter_member_id, invitee_member_id, invitee_user_id,
, chat_activity_id, inviter_member_id, invitee_member_id, invitee_user_id,
invitee_union_id,
user_name, nick_name, group_chat_id, invite_type, invalid_invite_type, add_member_type, batch_number,
enterprise_id, wx_enterprise_id, create_time, update_time, delete_flag
</sql>
...
...
@@ -39,12 +40,12 @@
</select>
<!--查询指定行数据-->
<select
id=
"queryAllByLimit"
resultMap=
"TabHaobanGroupChatActivityInviteLogMap"
>
select chat_activity_invite_id, chat_activity_id, inviter_member_id, invitee_member_id, invitee_user_id,
user_name, nick_name, group_chat_id, invite_type, invalid_invite_type, add_member_type, batch_number,
enterprise_id, wx_enterprise_id, create_time, update_time, delete_flag
<select
id=
"queryAll"
resultMap=
"TabHaobanGroupChatActivityInviteLogMap"
>
select
<include
refid=
"Base_Column_List"
/>
from tab_haoban_group_chat_activity_invite_log
<where>
and enterprise_id = #{enterpriseId} and delete_flag = 0
<if
test=
"chatActivityInviteId != null"
>
and chat_activity_invite_id = #{chatActivityInviteId}
</if>
...
...
@@ -81,14 +82,10 @@
<if
test=
"batchNumber != null"
>
and batch_number = #{batchNumber}
</if>
<if
test=
"enterpriseId != null and enterpriseId != ''"
>
and enterprise_id = #{enterpriseId}
</if>
<if
test=
"wxEnterpriseId != null and wxEnterpriseId != ''"
>
and wx_enterprise_id = #{wxEnterpriseId}
</if>
</where>
limit #{pageable.offset}, #{pageable.pageSize}
</select>
<!--统计总行数-->
...
...
@@ -96,6 +93,7 @@
select count(1)
from tab_haoban_group_chat_activity_invite_log
<where>
and enterprise_id = #{enterpriseId} and delete_flag = 0
<if
test=
"chatActivityInviteId != null"
>
and chat_activity_invite_id = #{chatActivityInviteId}
</if>
...
...
@@ -132,9 +130,6 @@
<if
test=
"batchNumber != null"
>
and batch_number = #{batchNumber}
</if>
<if
test=
"enterpriseId != null and enterpriseId != ''"
>
and enterprise_id = #{enterpriseId}
</if>
<if
test=
"wxEnterpriseId != null and wxEnterpriseId != ''"
>
and wx_enterprise_id = #{wxEnterpriseId}
</if>
...
...
@@ -143,22 +138,15 @@
<!--新增所有列-->
<insert
id=
"insert"
keyProperty=
"chatActivityInviteId"
useGeneratedKeys=
"true"
>
insert into tab_haoban_group_chat_activity_invite_log(chat_activity_invite_id,chat_activity_id, inviter_member_id, invitee_member_id, invitee_user_id,
insert into tab_haoban_group_chat_activity_invite_log(chat_activity_invite_id,chat_activity_id, inviter_member_id, invitee_member_id, invitee_user_id,
invitee_union_id,
user_name, nick_name, group_chat_id, invite_type, invalid_invite_type, add_member_type, batch_number,
enterprise_id, wx_enterprise_id)
values (#{chatActivityInviteId},#{chatActivityId}, #{inviterMemberId}, #{inviteeMemberId}, #{inviteeUserId}, #{userName}, #{nickName},
values (#{chatActivityInviteId},#{chatActivityId}, #{inviterMemberId}, #{inviteeMemberId}, #{inviteeUserId},
#{inviteeUnionId},
#{userName}, #{nickName},
#{groupChatId}, #{inviteType}, #{invalidInviteType}, #{addMemberType}, #{batchNumber}, #{enterpriseId},
#{wxEnterpriseId})
</insert>
<!--通过主键删除-->
<delete
id=
"deleteById"
>
delete
from tab_haoban_group_chat_activity_invite_log
where chat_activity_invite_id = #{chatActivityInviteId}
</delete>
<select
id=
"queryMaxBatchByChatActivityIdAndInviterMemberId"
resultType=
"integer"
>
select max(batch_number)
from tab_haoban_group_chat_activity_invite_log
...
...
haoban-manage3-service/src/main/resources/mapper/chat/GroupChatActivityRewardDetailLogMapper.xml
View file @
6208acb9
...
...
@@ -219,22 +219,10 @@
<if
test=
"successFlag != null"
>
success_flag = #{successFlag},
</if>
<if
test=
"enterpriseId != null and enterpriseId != ''"
>
enterprise_id = #{enterpriseId},
</if>
<if
test=
"wxEnterpriseId != null and wxEnterpriseId != ''"
>
wx_enterprise_id = #{wxEnterpriseId},
</if>
</set>
where chat_activity_reward_detail_id = #{chatActivityRewardDetailId}
</update>
<!--通过主键删除-->
<delete
id=
"deleteById"
>
delete
from tab_haoban_group_chat_activity_reward_detail_log
where chat_activity_reward_detail_id = #{chatActivityRewardDetailId}
</delete>
<select
id=
"queryList"
resultMap=
"TabHaobanGroupChatActivityRewardDetailLogMap"
>
select
...
...
haoban-manage3-service/src/test/java/GroupChatTest.java
0 → 100644
View file @
6208acb9
import
com.alibaba.fastjson.JSONObject
;
import
com.gic.api.base.commons.ServiceResponse
;
import
com.gic.content.api.qdto.activity.ContentActivityQDTO
;
import
com.gic.haoban.manage.api.dto.chat.GroupChatActivityRewardDTO
;
import
com.gic.haoban.manage.api.dto.chat.GroupChatActivityRewardDetailDTO
;
import
com.gic.haoban.manage.api.dto.chat.GroupChatHmDTO
;
import
com.gic.haoban.manage.api.qdto.chat.GroupChatActivityHmQDTO
;
import
com.gic.haoban.manage.api.qdto.chat.GroupChatActivityJoinQDTO
;
import
com.gic.haoban.manage.api.qdto.chat.GroupChatActivityQDTO
;
import
com.gic.haoban.manage.api.service.chat.GroupChatActivityApiService
;
import
com.gic.haoban.manage.api.service.chat.GroupChatActivityShareApiService
;
import
com.gic.haoban.manage.service.pojo.bo.chat.GroupChatActivityBaseContext
;
import
com.gic.haoban.manage.service.pojo.bo.chat.GroupChatActivityContext
;
import
com.gic.haoban.manage.service.service.chat.GroupChatActivityInviteLogService
;
import
com.gic.haoban.manage.service.service.chat.GroupChatActivityRewardLogService
;
import
com.gic.haoban.manage.service.service.chat.GroupChatActivityService
;
import
org.junit.Test
;
import
org.junit.runner.RunWith
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.test.context.ContextConfiguration
;
import
org.springframework.test.context.junit4.SpringJUnit4ClassRunner
;
import
java.util.*
;
@RunWith
(
SpringJUnit4ClassRunner
.
class
)
@ContextConfiguration
(
locations
=
{
"classpath:applicationContext-conf.xml"
})
public
class
GroupChatTest
{
private
static
Logger
logger
=
LoggerFactory
.
getLogger
(
GroupChatTest
.
class
);
@Autowired
private
GroupChatActivityApiService
groupChatActivityApiService
;
@Autowired
private
GroupChatActivityShareApiService
groupChatActivityShareApiService
;
@Autowired
private
GroupChatActivityInviteLogService
groupChatActivityInviteLogService
;
@Test
public
void
saveActivity
()
throws
Exception
{
GroupChatActivityQDTO
qdto
=
new
GroupChatActivityQDTO
();
qdto
.
setActivityName
(
"测试活动2"
);
qdto
.
setStartDate
(
new
Date
(
"2024/10/11"
));
qdto
.
setEndDate
(
new
Date
(
"2025/10/10"
));
qdto
.
setActivityImg
(
"123"
);
qdto
.
setActivityInviteImg
(
"123"
);
qdto
.
setActivityDesc
(
"123"
);
qdto
.
setActivityShareTitle
(
"123"
);
qdto
.
setActivityShareImg
(
"123"
);
qdto
.
setActivityPosterImg
(
"123"
);
qdto
.
setInviteRewardType
(
2
);
qdto
.
setJoinType
(
2
);
// qdto.setJoinRule();
qdto
.
setJoinChatHmId
(
709467854075881635L
);
qdto
.
setInviteType
(
1
);
qdto
.
setInviteMemberType
(
1
);
qdto
.
setLabelFlag
(
0
);
// qdto.setLabelJson();
qdto
.
setExceptionNotice
(
0
);
qdto
.
setExceptionNoticeNum
(
0
);
qdto
.
setEnterpriseId
(
"ff8080815dacd3a2015dacd3ef5c0000"
);
qdto
.
setWxEnterpriseId
(
"ca66a01b79474c40b3e7c7f93daf1a3b"
);
qdto
.
setCreatorId
(
"fefd1c81641711e69d0818c58a146fd2"
);
qdto
.
setCreatorName
(
"达摩管理"
);
List
<
GroupChatActivityRewardDTO
>
rewardList
=
new
ArrayList
<>();
GroupChatActivityRewardDTO
rewardDTO
=
new
GroupChatActivityRewardDTO
();
rewardDTO
.
setInviteNumber
(
1
);
rewardDTO
.
setInviteLevel
(
1
);
rewardDTO
.
setRewardInvite
(
1
);
rewardDTO
.
setLimitReward
(
3
);
Map
<
Integer
,
List
<
GroupChatActivityRewardDTO
>>
rewardMap
=
new
HashMap
<>();
List
<
GroupChatActivityRewardDetailDTO
>
detailList
=
new
ArrayList
<>();
GroupChatActivityRewardDetailDTO
rewardDetail
=
new
GroupChatActivityRewardDetailDTO
();
rewardDetail
.
setRewardType
(
1
);
rewardDetail
.
setRewardValue
(
"2"
);
rewardDetail
.
setRewardName
(
"2积分"
);
detailList
.
add
(
rewardDetail
);
rewardDTO
.
setDetailList
(
detailList
);
rewardList
.
add
(
rewardDTO
);
rewardMap
.
put
(
1
,
rewardList
);
rewardDTO
=
new
GroupChatActivityRewardDTO
();
rewardDTO
.
setInviteNumber
(
1
);
rewardDTO
.
setInviteLevel
(
1
);
rewardDTO
.
setRewardInvite
(
2
);
rewardDTO
.
setLimitReward
(
1
);
List
<
GroupChatActivityRewardDetailDTO
>
detailList2
=
new
ArrayList
<>();
GroupChatActivityRewardDetailDTO
rewardDetail2
=
new
GroupChatActivityRewardDetailDTO
();
rewardDetail2
.
setRewardType
(
1
);
rewardDetail2
.
setRewardValue
(
"8"
);
rewardDetail2
.
setRewardName
(
"8积分"
);
detailList2
.
add
(
rewardDetail2
);
rewardDTO
.
setDetailList
(
detailList2
);
rewardList
.
add
(
rewardDTO
);
rewardMap
.
put
(
2
,
rewardList
);
qdto
.
setRewardMap
(
rewardMap
);
List
<
GroupChatActivityJoinQDTO
>
joinList
=
new
ArrayList
<>();
GroupChatActivityJoinQDTO
join
=
new
GroupChatActivityJoinQDTO
();
join
.
setMemberType
(
0
);
join
.
setFilterJson
(
""
);
join
.
setFilterJsonView
(
""
);
join
.
setIndex
(
2
);
join
.
setChatHmId
(
709467854075881635L
);
joinList
.
add
(
join
);
qdto
.
setJoinList
(
joinList
);
join
=
new
GroupChatActivityJoinQDTO
();
join
.
setMemberType
(
0
);
join
.
setFilterJson
(
""
);
join
.
setFilterJsonView
(
""
);
join
.
setIndex
(
1
);
join
.
setChatHmId
(
709467854075881635L
);
joinList
.
add
(
join
);
qdto
.
setJoinList
(
joinList
);
ServiceResponse
<
Long
>
response
=
groupChatActivityApiService
.
saveActivity
(
qdto
);
System
.
out
.
println
(
JSONObject
.
toJSONString
(
response
));
}
@Test
public
void
listGroupChatHm
()
throws
Exception
{
GroupChatActivityHmQDTO
groupChatActivityHmQDTO
=
new
GroupChatActivityHmQDTO
();
groupChatActivityHmQDTO
.
setChatActivityId
(
716721754221821953L
);
groupChatActivityHmQDTO
.
setInviterMemberId
(
"ff808081906def5201907645bfc7005a"
);
groupChatActivityHmQDTO
.
setInviteeMemberId
(
"ff8080818215878101821949a845003c"
);
groupChatActivityHmQDTO
.
setInviteeUnionId
(
"123456"
);
groupChatActivityHmQDTO
.
setEnterpriseId
(
"ff8080815dacd3a2015dacd3ef5c0000"
);
groupChatActivityHmQDTO
.
setDistrictCode
(
"330100"
);
groupChatActivityHmQDTO
.
setLatitude
(
"30.247100"
);
groupChatActivityHmQDTO
.
setLongitude
(
"120.209000"
);
groupChatActivityHmQDTO
.
setSkipArea
(
false
);
ServiceResponse
<
List
<
GroupChatHmDTO
>>
listServiceResponse
=
groupChatActivityShareApiService
.
listGroupChatHm
(
groupChatActivityHmQDTO
);
System
.
out
.
println
(
JSONObject
.
toJSONString
(
listServiceResponse
));
}
@Test
public
void
groupChatInviteMQ
()
throws
Exception
{
// groupChatActivityInviteLogService.groupChatInviteMQ("ff8080815dacd3a2015dacd3ef5c0000","123456",717384135185809471L);
}
@Test
public
void
dealRewardAndSaveLog
()
throws
Exception
{
GroupChatActivityBaseContext
context
=
new
GroupChatActivityBaseContext
();
context
.
setChatUserId
(
717384135185809471L
);
context
.
setChatActivityId
(
716721754221821953L
);
context
.
setInviterMemberId
(
"ff808081906def5201907645bfc7005a"
);
context
.
setEnterpriseId
(
"ff8080815dacd3a2015dacd3ef5c0000"
);
groupChatActivityInviteLogService
.
groupChatInvite
(
context
);
}
}
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