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
e967f0a7
Commit
e967f0a7
authored
Oct 08, 2024
by
王祖波
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
社群活动
parent
4d2e85ba
Hide whitespace changes
Inline
Side-by-side
Showing
51 changed files
with
3380 additions
and
762 deletions
+3380
-762
GroupChatActivityBaseDTO.java
.../haoban/manage/api/dto/chat/GroupChatActivityBaseDTO.java
+350
-0
GroupChatActivityDTO.java
.../gic/haoban/manage/api/dto/chat/GroupChatActivityDTO.java
+44
-0
GroupChatActivityJoinDTO.java
.../haoban/manage/api/dto/chat/GroupChatActivityJoinDTO.java
+118
-0
GroupChatActivityRewardDTO.java
...aoban/manage/api/dto/chat/GroupChatActivityRewardDTO.java
+141
-0
ChatActivityInviteRewardEnum.java
...n/manage/api/enums/chat/ChatActivityInviteRewardEnum.java
+35
-0
ChatActivityJoinEnum.java
...ic/haoban/manage/api/enums/chat/ChatActivityJoinEnum.java
+35
-0
ChatActivityJoinRuleEnum.java
...aoban/manage/api/enums/chat/ChatActivityJoinRuleEnum.java
+37
-0
ChatActivityRewardEnum.java
.../haoban/manage/api/enums/chat/ChatActivityRewardEnum.java
+44
-0
ChatActivityStatusEnum.java
.../haoban/manage/api/enums/chat/ChatActivityStatusEnum.java
+37
-0
GroupChatActivityHmQDTO.java
.../haoban/manage/api/qdto/chat/GroupChatActivityHmQDTO.java
+69
-0
GroupChatActivityJoinQDTO.java
...aoban/manage/api/qdto/chat/GroupChatActivityJoinQDTO.java
+30
-0
GroupChatActivityQDTO.java
...ic/haoban/manage/api/qdto/chat/GroupChatActivityQDTO.java
+340
-0
GroupChatActivitySearchQDTO.java
...ban/manage/api/qdto/chat/GroupChatActivitySearchQDTO.java
+107
-0
GroupChatActivityShareBindQDTO.java
.../manage/api/qdto/chat/GroupChatActivityShareBindQDTO.java
+69
-0
GroupChatActivityApiService.java
.../manage/api/service/chat/GroupChatActivityApiService.java
+77
-0
GroupChatActivityShareApiService.java
...ge/api/service/chat/GroupChatActivityShareApiService.java
+18
-0
pom.xml
haoban-manage3-service/pom.xml
+1
-1
BusinessManager.java
...c/haoban/manage/service/context/chat/BusinessManager.java
+104
-0
GroupChatActivityJoinMapper.java
.../service/dao/mapper/chat/GroupChatActivityJoinMapper.java
+9
-17
GroupChatActivityMapper.java
...nage/service/dao/mapper/chat/GroupChatActivityMapper.java
+24
-25
GroupChatActivityRewardDetailLogMapper.java
...o/mapper/chat/GroupChatActivityRewardDetailLogMapper.java
+0
-17
GroupChatActivityRewardLogMapper.java
...ice/dao/mapper/chat/GroupChatActivityRewardLogMapper.java
+0
-17
GroupChatActivityRewardMapper.java
...ervice/dao/mapper/chat/GroupChatActivityRewardMapper.java
+7
-16
GroupChatActivityShareBindMapper.java
...ice/dao/mapper/chat/GroupChatActivityShareBindMapper.java
+7
-17
TabGroupChatActivityJoin.java
.../manage/service/entity/chat/TabGroupChatActivityJoin.java
+26
-0
GroupChatActivityRewardBO.java
...anage/service/pojo/bo/chat/GroupChatActivityRewardBO.java
+85
-0
GroupChatActivityJoinService.java
...ge/service/service/chat/GroupChatActivityJoinService.java
+27
-0
GroupChatActivityRewardService.java
.../service/service/chat/GroupChatActivityRewardService.java
+25
-0
GroupChatActivityService.java
...manage/service/service/chat/GroupChatActivityService.java
+104
-0
GroupChatActivityShareBindService.java
...rvice/service/chat/GroupChatActivityShareBindService.java
+16
-0
GroupChatActivityJoinServiceImpl.java
...e/service/chat/impl/GroupChatActivityJoinServiceImpl.java
+69
-2
GroupChatActivityRewardServiceImpl.java
...service/chat/impl/GroupChatActivityRewardServiceImpl.java
+55
-2
GroupChatActivityServiceImpl.java
...rvice/service/chat/impl/GroupChatActivityServiceImpl.java
+351
-0
GroupChatActivityShareBindServiceImpl.java
...vice/chat/impl/GroupChatActivityShareBindServiceImpl.java
+47
-2
GroupChatActivityApiServiceImpl.java
...ervice/out/impl/chat/GroupChatActivityApiServiceImpl.java
+122
-0
GroupChatActivityShareServiceImpl.java
...vice/out/impl/chat/GroupChatActivityShareServiceImpl.java
+32
-0
dubbo-haoban-manage-service.xml
...ervice/src/main/resources/dubbo-haoban-manage-service.xml
+3
-0
GroupChatActivityInviteLogMapper.xml
...esources/mapper/chat/GroupChatActivityInviteLogMapper.xml
+5
-62
GroupChatActivityJoinMapper.xml
...ain/resources/mapper/chat/GroupChatActivityJoinMapper.xml
+21
-58
GroupChatActivityMapper.xml
...rc/main/resources/mapper/chat/GroupChatActivityMapper.xml
+77
-292
GroupChatActivityRewardDetailLogMapper.xml
...es/mapper/chat/GroupChatActivityRewardDetailLogMapper.xml
+4
-109
GroupChatActivityRewardLogMapper.xml
...esources/mapper/chat/GroupChatActivityRewardLogMapper.xml
+2
-29
GroupChatActivityRewardMapper.xml
...n/resources/mapper/chat/GroupChatActivityRewardMapper.xml
+13
-49
GroupChatActivityShareBindMapper.xml
...esources/mapper/chat/GroupChatActivityShareBindMapper.xml
+10
-47
pom.xml
haoban-manage3-web/pom.xml
+5
-0
GroupChatActivityController.java
...nage/web/controller/chat/GroupChatActivityController.java
+306
-0
LogRecordAfterGroupChatActivityServiceImpl.java
...e/web/log/LogRecordAfterGroupChatActivityServiceImpl.java
+113
-0
GroupChatActivitySaveQO.java
...ic/haoban/manage/web/qo/chat/GroupChatActivitySaveQO.java
+9
-0
GroupChatActivitySearchQO.java
.../haoban/manage/web/qo/chat/GroupChatActivitySearchQO.java
+98
-0
GroupChatActivityVO.java
...om/gic/haoban/manage/web/vo/chat/GroupChatActivityVO.java
+50
-0
dubbo-haoban-manage-web.xml
...3-web/src/main/webapp/WEB-INF/dubbo-haoban-manage-web.xml
+2
-0
No files found.
haoban-manage3-api/src/main/java/com/gic/haoban/manage/api/dto/chat/GroupChatActivityBaseDTO.java
0 → 100644
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
api
.
dto
.
chat
;
import
com.fasterxml.jackson.annotation.JsonIgnoreProperties
;
import
com.gic.haoban.manage.api.qdto.chat.GroupChatActivityJoinQDTO
;
import
java.io.Serializable
;
import
java.util.Date
;
import
java.util.List
;
/**
* 社群邀请有礼表(TabHaobanGroupChatActivity)实体类
*
* @author makejava
* @since 2024-09-27 16:09:38
*/
public
class
GroupChatActivityBaseDTO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
973688857967269973L
;
/**
* 社群活动id
*/
@JsonIgnoreProperties
(
ignoreUnknown
=
true
)
private
Long
chatActivityId
;
/**
* 活动名称
*/
private
String
activityName
;
/**
* 开始时间
*/
private
Date
startDate
;
/**
* 结束时间
*/
private
Date
endDate
;
/**
* 终止/截止时间
*/
private
Date
limitDate
;
/**
* 活动图片
*/
private
String
activityImg
;
/**
* 活动受邀页图片
*/
private
String
activityInviteImg
;
/**
* 活动说明
*/
private
String
activityDesc
;
/**
* 活动分享标题
*/
private
String
activityShareTitle
;
/**
* 活动分享卡片图片
*/
private
String
activityShareImg
;
/**
* 活动分享海报图片
*/
private
String
activityPosterImg
;
/**
* 状态1未开始2进行中3已终止4已结束
*/
private
Integer
status
;
/**
* 奖励类型 1定额奖励2阶梯奖励
*/
private
Integer
inviteRewardType
;
/**
* 入群方式 1规则入群2定向入群
*/
private
Integer
joinType
;
/**
* 入群规则 1邀请人所在企微群2服务门店3协管门店4LBS定位 逗号分隔
*/
private
String
joinRule
;
/**
* 入群兜底群活码id
*/
@JsonIgnoreProperties
(
ignoreUnknown
=
true
)
private
Long
joinChatHmId
;
/**
* 邀请类型 0不限制1入群前未处于任何企业群聊内算有效邀请2首次加入企业群聊才算有效邀请
*/
private
Integer
inviteType
;
/**
* 邀请会员类型 0所有用户1开卡会员
*/
private
Integer
inviteMemberType
;
/**
* 打标签1是0否
*/
private
Integer
labelFlag
;
/**
* { "options": 1, "id": 1, "name": "标签名称" }
*/
private
String
labelJson
;
/**
* 异常提醒 0 不提醒 1短信提醒
*/
private
Integer
exceptionNotice
;
/**
* 异常提醒数量
*/
private
Integer
exceptionNoticeNum
;
/**
* 企业ID
*/
private
String
enterpriseId
;
/**
* 微信企业ID
*/
private
String
wxEnterpriseId
;
private
Date
createTime
;
private
Date
updateTime
;
private
String
creatorId
;
private
String
creatorName
;
public
Long
getChatActivityId
()
{
return
chatActivityId
;
}
public
void
setChatActivityId
(
Long
chatActivityId
)
{
this
.
chatActivityId
=
chatActivityId
;
}
public
String
getActivityName
()
{
return
activityName
;
}
public
void
setActivityName
(
String
activityName
)
{
this
.
activityName
=
activityName
;
}
public
Date
getStartDate
()
{
return
startDate
;
}
public
void
setStartDate
(
Date
startDate
)
{
this
.
startDate
=
startDate
;
}
public
Date
getEndDate
()
{
return
endDate
;
}
public
void
setEndDate
(
Date
endDate
)
{
this
.
endDate
=
endDate
;
}
public
Date
getLimitDate
()
{
return
limitDate
;
}
public
void
setLimitDate
(
Date
limitDate
)
{
this
.
limitDate
=
limitDate
;
}
public
String
getActivityImg
()
{
return
activityImg
;
}
public
void
setActivityImg
(
String
activityImg
)
{
this
.
activityImg
=
activityImg
;
}
public
String
getActivityInviteImg
()
{
return
activityInviteImg
;
}
public
void
setActivityInviteImg
(
String
activityInviteImg
)
{
this
.
activityInviteImg
=
activityInviteImg
;
}
public
String
getActivityDesc
()
{
return
activityDesc
;
}
public
void
setActivityDesc
(
String
activityDesc
)
{
this
.
activityDesc
=
activityDesc
;
}
public
String
getActivityShareTitle
()
{
return
activityShareTitle
;
}
public
void
setActivityShareTitle
(
String
activityShareTitle
)
{
this
.
activityShareTitle
=
activityShareTitle
;
}
public
String
getActivityShareImg
()
{
return
activityShareImg
;
}
public
void
setActivityShareImg
(
String
activityShareImg
)
{
this
.
activityShareImg
=
activityShareImg
;
}
public
String
getActivityPosterImg
()
{
return
activityPosterImg
;
}
public
void
setActivityPosterImg
(
String
activityPosterImg
)
{
this
.
activityPosterImg
=
activityPosterImg
;
}
public
Integer
getStatus
()
{
return
status
;
}
public
void
setStatus
(
Integer
status
)
{
this
.
status
=
status
;
}
public
Integer
getInviteRewardType
()
{
return
inviteRewardType
;
}
public
void
setInviteRewardType
(
Integer
inviteRewardType
)
{
this
.
inviteRewardType
=
inviteRewardType
;
}
public
Integer
getJoinType
()
{
return
joinType
;
}
public
void
setJoinType
(
Integer
joinType
)
{
this
.
joinType
=
joinType
;
}
public
String
getJoinRule
()
{
return
joinRule
;
}
public
void
setJoinRule
(
String
joinRule
)
{
this
.
joinRule
=
joinRule
;
}
public
Long
getJoinChatHmId
()
{
return
joinChatHmId
;
}
public
void
setJoinChatHmId
(
Long
joinChatHmId
)
{
this
.
joinChatHmId
=
joinChatHmId
;
}
public
Integer
getInviteType
()
{
return
inviteType
;
}
public
void
setInviteType
(
Integer
inviteType
)
{
this
.
inviteType
=
inviteType
;
}
public
Integer
getInviteMemberType
()
{
return
inviteMemberType
;
}
public
void
setInviteMemberType
(
Integer
inviteMemberType
)
{
this
.
inviteMemberType
=
inviteMemberType
;
}
public
Integer
getLabelFlag
()
{
return
labelFlag
;
}
public
void
setLabelFlag
(
Integer
labelFlag
)
{
this
.
labelFlag
=
labelFlag
;
}
public
String
getLabelJson
()
{
return
labelJson
;
}
public
void
setLabelJson
(
String
labelJson
)
{
this
.
labelJson
=
labelJson
;
}
public
Integer
getExceptionNotice
()
{
return
exceptionNotice
;
}
public
void
setExceptionNotice
(
Integer
exceptionNotice
)
{
this
.
exceptionNotice
=
exceptionNotice
;
}
public
Integer
getExceptionNoticeNum
()
{
return
exceptionNoticeNum
;
}
public
void
setExceptionNoticeNum
(
Integer
exceptionNoticeNum
)
{
this
.
exceptionNoticeNum
=
exceptionNoticeNum
;
}
public
String
getEnterpriseId
()
{
return
enterpriseId
;
}
public
void
setEnterpriseId
(
String
enterpriseId
)
{
this
.
enterpriseId
=
enterpriseId
;
}
public
String
getWxEnterpriseId
()
{
return
wxEnterpriseId
;
}
public
void
setWxEnterpriseId
(
String
wxEnterpriseId
)
{
this
.
wxEnterpriseId
=
wxEnterpriseId
;
}
public
Date
getCreateTime
()
{
return
createTime
;
}
public
void
setCreateTime
(
Date
createTime
)
{
this
.
createTime
=
createTime
;
}
public
Date
getUpdateTime
()
{
return
updateTime
;
}
public
void
setUpdateTime
(
Date
updateTime
)
{
this
.
updateTime
=
updateTime
;
}
public
String
getCreatorId
()
{
return
creatorId
;
}
public
void
setCreatorId
(
String
creatorId
)
{
this
.
creatorId
=
creatorId
;
}
public
String
getCreatorName
()
{
return
creatorName
;
}
public
void
setCreatorName
(
String
creatorName
)
{
this
.
creatorName
=
creatorName
;
}
}
haoban-manage3-api/src/main/java/com/gic/haoban/manage/api/dto/chat/GroupChatActivityDTO.java
0 → 100644
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
api
.
dto
.
chat
;
import
com.gic.haoban.manage.api.qdto.chat.GroupChatActivityJoinQDTO
;
import
java.io.Serializable
;
import
java.util.Date
;
import
java.util.List
;
/**
* 社群邀请有礼表(TabHaobanGroupChatActivity)实体类
*
* @author makejava
* @since 2024-09-27 16:09:38
*/
public
class
GroupChatActivityDTO
extends
GroupChatActivityBaseDTO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
973688857967269973L
;
/**
* 奖励规则列表
*/
private
List
<
GroupChatActivityRewardDTO
>
rewardList
;
/**
* 入群规则列表
*/
private
List
<
GroupChatActivityJoinDTO
>
joinList
;
public
List
<
GroupChatActivityRewardDTO
>
getRewardList
()
{
return
rewardList
;
}
public
void
setRewardList
(
List
<
GroupChatActivityRewardDTO
>
rewardList
)
{
this
.
rewardList
=
rewardList
;
}
public
List
<
GroupChatActivityJoinDTO
>
getJoinList
()
{
return
joinList
;
}
public
void
setJoinList
(
List
<
GroupChatActivityJoinDTO
>
joinList
)
{
this
.
joinList
=
joinList
;
}
}
haoban-manage3-api/src/main/java/com/gic/haoban/manage/api/dto/chat/GroupChatActivityJoinDTO.java
0 → 100644
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
api
.
dto
.
chat
;
import
com.fasterxml.jackson.annotation.JsonIgnoreProperties
;
import
com.google.common.base.Objects
;
import
java.io.Serializable
;
import
java.util.Date
;
/**
* 社群邀请有礼入群规则表(TabHaobanGroupChatActivityJoin)实体类
*
* @author makejava
* @since 2024-09-27 16:09:56
*/
public
class
GroupChatActivityJoinDTO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
95747409578903881L
;
/**
* 社群活动入群规则id
*/
@JsonIgnoreProperties
(
ignoreUnknown
=
true
)
private
Long
chatActivityJoinId
;
/**
* 内容活动id
*/
@JsonIgnoreProperties
(
ignoreUnknown
=
true
)
private
Long
chatActivityId
;
/**
* 会员类型(0:会员筛选,1:会员分组)
*/
private
Integer
memberType
;
/**
* 人群
*/
private
String
filterJson
;
/**
* 人群回显
*/
private
String
filterJsonView
;
/**
* 序号 从小到大
*/
private
Integer
index
;
/**
* 群活码id
*/
@JsonIgnoreProperties
(
ignoreUnknown
=
true
)
private
Long
chatHmId
;
public
Long
getChatActivityJoinId
()
{
return
chatActivityJoinId
;
}
public
void
setChatActivityJoinId
(
Long
chatActivityJoinId
)
{
this
.
chatActivityJoinId
=
chatActivityJoinId
;
}
public
Long
getChatActivityId
()
{
return
chatActivityId
;
}
public
void
setChatActivityId
(
Long
chatActivityId
)
{
this
.
chatActivityId
=
chatActivityId
;
}
public
Integer
getMemberType
()
{
return
memberType
;
}
public
void
setMemberType
(
Integer
memberType
)
{
this
.
memberType
=
memberType
;
}
public
String
getFilterJson
()
{
return
filterJson
;
}
public
void
setFilterJson
(
String
filterJson
)
{
this
.
filterJson
=
filterJson
;
}
public
String
getFilterJsonView
()
{
return
filterJsonView
;
}
public
void
setFilterJsonView
(
String
filterJsonView
)
{
this
.
filterJsonView
=
filterJsonView
;
}
public
Integer
getIndex
()
{
return
index
;
}
public
void
setIndex
(
Integer
index
)
{
this
.
index
=
index
;
}
public
Long
getChatHmId
()
{
return
chatHmId
;
}
public
void
setChatHmId
(
Long
chatHmId
)
{
this
.
chatHmId
=
chatHmId
;
}
@Override
public
boolean
equals
(
Object
o
)
{
if
(
this
==
o
)
return
true
;
if
(
o
==
null
||
getClass
()
!=
o
.
getClass
())
return
false
;
GroupChatActivityJoinDTO
that
=
(
GroupChatActivityJoinDTO
)
o
;
return
Objects
.
equal
(
chatActivityId
,
that
.
chatActivityId
)
&&
Objects
.
equal
(
memberType
,
that
.
memberType
)
&&
Objects
.
equal
(
filterJson
,
that
.
filterJson
)
&&
Objects
.
equal
(
index
,
that
.
index
)
&&
Objects
.
equal
(
chatHmId
,
that
.
chatHmId
);
}
@Override
public
int
hashCode
()
{
return
Objects
.
hashCode
(
chatActivityId
,
memberType
,
filterJson
,
index
,
chatHmId
);
}
}
haoban-manage3-api/src/main/java/com/gic/haoban/manage/api/dto/chat/GroupChatActivityRewardDTO.java
0 → 100644
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
api
.
dto
.
chat
;
import
com.fasterxml.jackson.annotation.JsonIgnoreProperties
;
import
com.google.common.base.Objects
;
import
java.io.Serializable
;
import
java.util.Date
;
/**
* 社群邀请有礼奖励规则表(TabHaobanGroupChatActivityReward)实体类
*
* @author makejava
* @since 2024-09-27 16:09:56
*/
public
class
GroupChatActivityRewardDTO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
78111537762472232L
;
/**
* 社群活动奖励规则id
*/
@JsonIgnoreProperties
(
ignoreUnknown
=
true
)
private
Long
chatActivityRewardId
;
/**
* 内容活动id
*/
@JsonIgnoreProperties
(
ignoreUnknown
=
true
)
private
Long
chatActivityId
;
/**
* 奖励邀请人数
*/
private
Integer
inviteNumber
;
/**
* 奖励阶梯 固定奖励默认1
*/
private
Integer
inviteLevel
;
/**
* 奖励人类型 1邀请人2受邀人
*/
private
Integer
rewardInvite
;
/**
* 奖励类型 1积分2成长值3卡券
*/
private
Integer
rewardType
;
/**
* 最多奖励数量
*/
private
Integer
limitReward
;
/**
* 奖励内容 积分值 成长值 卡券id
*/
private
String
rewardValue
;
/**
* 奖励名称 卡券名称
*/
private
String
rewardName
;
public
Long
getChatActivityRewardId
()
{
return
chatActivityRewardId
;
}
public
void
setChatActivityRewardId
(
Long
chatActivityRewardId
)
{
this
.
chatActivityRewardId
=
chatActivityRewardId
;
}
public
Long
getChatActivityId
()
{
return
chatActivityId
;
}
public
void
setChatActivityId
(
Long
chatActivityId
)
{
this
.
chatActivityId
=
chatActivityId
;
}
public
Integer
getInviteNumber
()
{
return
inviteNumber
;
}
public
void
setInviteNumber
(
Integer
inviteNumber
)
{
this
.
inviteNumber
=
inviteNumber
;
}
public
Integer
getInviteLevel
()
{
return
inviteLevel
;
}
public
void
setInviteLevel
(
Integer
inviteLevel
)
{
this
.
inviteLevel
=
inviteLevel
;
}
public
Integer
getRewardInvite
()
{
return
rewardInvite
;
}
public
void
setRewardInvite
(
Integer
rewardInvite
)
{
this
.
rewardInvite
=
rewardInvite
;
}
public
Integer
getRewardType
()
{
return
rewardType
;
}
public
void
setRewardType
(
Integer
rewardType
)
{
this
.
rewardType
=
rewardType
;
}
public
Integer
getLimitReward
()
{
return
limitReward
;
}
public
void
setLimitReward
(
Integer
limitReward
)
{
this
.
limitReward
=
limitReward
;
}
public
String
getRewardValue
()
{
return
rewardValue
;
}
public
void
setRewardValue
(
String
rewardValue
)
{
this
.
rewardValue
=
rewardValue
;
}
public
String
getRewardName
()
{
return
rewardName
;
}
public
void
setRewardName
(
String
rewardName
)
{
this
.
rewardName
=
rewardName
;
}
@Override
public
boolean
equals
(
Object
o
)
{
if
(
this
==
o
)
return
true
;
if
(
o
==
null
||
getClass
()
!=
o
.
getClass
())
return
false
;
GroupChatActivityRewardDTO
that
=
(
GroupChatActivityRewardDTO
)
o
;
return
Objects
.
equal
(
chatActivityId
,
that
.
chatActivityId
)
&&
Objects
.
equal
(
inviteNumber
,
that
.
inviteNumber
)
&&
Objects
.
equal
(
inviteLevel
,
that
.
inviteLevel
)
&&
Objects
.
equal
(
rewardInvite
,
that
.
rewardInvite
)
&&
Objects
.
equal
(
rewardType
,
that
.
rewardType
)
&&
Objects
.
equal
(
limitReward
,
that
.
limitReward
)
&&
Objects
.
equal
(
rewardValue
,
that
.
rewardValue
);
}
@Override
public
int
hashCode
()
{
return
Objects
.
hashCode
(
chatActivityId
,
inviteNumber
,
inviteLevel
,
rewardInvite
,
rewardType
,
limitReward
,
rewardValue
);
}
}
haoban-manage3-api/src/main/java/com/gic/haoban/manage/api/enums/chat/ChatActivityInviteRewardEnum.java
0 → 100644
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
api
.
enums
.
chat
;
import
java.util.Objects
;
/**
* Created by wangzubo on 2023/3/13.
*/
public
enum
ChatActivityInviteRewardEnum
{
/**
* 奖励类型 1定额奖励2阶梯奖励
*/
FIXED_REWARD
(
1
,
"定额奖励"
),
LADDER_REWARD
(
2
,
"阶梯奖励"
),
;
public
final
Integer
value
;
public
final
String
desc
;
ChatActivityInviteRewardEnum
(
Integer
value
,
String
desc
)
{
this
.
value
=
value
;
this
.
desc
=
desc
;
}
public
static
String
getDescByValue
(
Integer
value
)
{
for
(
ChatActivityInviteRewardEnum
inviteRewardEnum
:
ChatActivityInviteRewardEnum
.
values
())
{
if
(
Objects
.
equals
(
value
,
inviteRewardEnum
.
value
))
{
return
inviteRewardEnum
.
desc
;
}
}
return
null
;
}
}
haoban-manage3-api/src/main/java/com/gic/haoban/manage/api/enums/chat/ChatActivityJoinEnum.java
0 → 100644
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
api
.
enums
.
chat
;
import
java.util.Objects
;
/**
* Created by wangzubo on 2023/3/13.
*/
public
enum
ChatActivityJoinEnum
{
/**
* 入群方式 1规则入群2定向入群
*/
RULE
(
1
,
"规则入群"
),
ORIENTED
(
2
,
"定向入群"
),
;
public
final
Integer
value
;
public
final
String
desc
;
ChatActivityJoinEnum
(
Integer
value
,
String
desc
)
{
this
.
value
=
value
;
this
.
desc
=
desc
;
}
public
static
String
getDescByValue
(
Integer
value
)
{
for
(
ChatActivityJoinEnum
joinEnum
:
ChatActivityJoinEnum
.
values
())
{
if
(
Objects
.
equals
(
value
,
joinEnum
.
value
))
{
return
joinEnum
.
desc
;
}
}
return
null
;
}
}
haoban-manage3-api/src/main/java/com/gic/haoban/manage/api/enums/chat/ChatActivityJoinRuleEnum.java
0 → 100644
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
api
.
enums
.
chat
;
import
java.util.Objects
;
/**
* Created by wangzubo on 2023/3/13.
*/
public
enum
ChatActivityJoinRuleEnum
{
/**
* 入群规则 1邀请人所在企微群2服务门店3协管门店4LBS定位
*/
INVITER_CHAT
(
1
,
"邀请人所在企微群"
),
MAIN_STORE
(
2
,
"服务门店"
),
OTHER_STORE
(
3
,
"协管门店"
),
LBS
(
4
,
"LBS定位"
),
;
public
final
Integer
value
;
public
final
String
desc
;
ChatActivityJoinRuleEnum
(
Integer
value
,
String
desc
)
{
this
.
value
=
value
;
this
.
desc
=
desc
;
}
public
static
String
getDescByValue
(
Integer
value
)
{
for
(
ChatActivityJoinRuleEnum
joinRuleEnum
:
ChatActivityJoinRuleEnum
.
values
())
{
if
(
Objects
.
equals
(
value
,
joinRuleEnum
.
value
))
{
return
joinRuleEnum
.
desc
;
}
}
return
null
;
}
}
haoban-manage3-api/src/main/java/com/gic/haoban/manage/api/enums/chat/ChatActivityRewardEnum.java
0 → 100644
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
api
.
enums
.
chat
;
import
java.util.Objects
;
/**
* Created by wangzubo on 2023/3/13.
*/
public
enum
ChatActivityRewardEnum
{
/**
* 奖励类型 1积分2成长值3卡券
*/
INTEGRAL
(
1
,
"积分"
),
GROWTH
(
2
,
"成长值"
),
COUPON
(
3
,
"卡券"
),
;
public
final
Integer
value
;
public
final
String
desc
;
ChatActivityRewardEnum
(
Integer
value
,
String
desc
)
{
this
.
value
=
value
;
this
.
desc
=
desc
;
}
public
static
String
getDescByValue
(
Integer
value
)
{
for
(
ChatActivityRewardEnum
activityRewardEnum
:
ChatActivityRewardEnum
.
values
())
{
if
(
Objects
.
equals
(
value
,
activityRewardEnum
.
value
))
{
return
activityRewardEnum
.
desc
;
}
}
return
null
;
}
public
static
ChatActivityRewardEnum
getByValue
(
Integer
value
)
{
for
(
ChatActivityRewardEnum
activityRewardEnum
:
ChatActivityRewardEnum
.
values
())
{
if
(
Objects
.
equals
(
value
,
activityRewardEnum
.
value
))
{
return
activityRewardEnum
;
}
}
return
null
;
}
}
haoban-manage3-api/src/main/java/com/gic/haoban/manage/api/enums/chat/ChatActivityStatusEnum.java
0 → 100644
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
api
.
enums
.
chat
;
import
java.util.Objects
;
/**
* Created by wangzubo on 2023/3/13.
*/
public
enum
ChatActivityStatusEnum
{
/**
* 活动状态1未开始2进行中3已终止4已结束
*/
NOT_START
(
1
,
"未开始"
),
START
(
2
,
"进行中"
),
STOP
(
3
,
"已终止"
),
END
(
4
,
"已结束"
),
;
public
final
Integer
value
;
public
final
String
desc
;
ChatActivityStatusEnum
(
Integer
value
,
String
desc
)
{
this
.
value
=
value
;
this
.
desc
=
desc
;
}
public
static
String
getDescByValue
(
Integer
value
)
{
for
(
ChatActivityStatusEnum
activityStatusEnum
:
ChatActivityStatusEnum
.
values
())
{
if
(
Objects
.
equals
(
value
,
activityStatusEnum
.
value
))
{
return
activityStatusEnum
.
desc
;
}
}
return
null
;
}
}
haoban-manage3-api/src/main/java/com/gic/haoban/manage/api/qdto/chat/GroupChatActivityHmQDTO.java
0 → 100644
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
api
.
qdto
.
chat
;
import
java.io.Serializable
;
public
class
GroupChatActivityHmQDTO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
28454620622119889L
;
/**
* 社群活动id
*/
private
Long
chatActivityId
;
/**
* 邀请人会员ID
*/
private
String
inviterMemberId
;
/**
* 受邀人会员ID
*/
private
String
inviteeMemberId
;
/**
* 受邀人unionID
*/
private
String
inviteeUnionId
;
/**
* 企业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
getInviteeMemberId
()
{
return
inviteeMemberId
;
}
public
void
setInviteeMemberId
(
String
inviteeMemberId
)
{
this
.
inviteeMemberId
=
inviteeMemberId
;
}
public
String
getInviteeUnionId
()
{
return
inviteeUnionId
;
}
public
void
setInviteeUnionId
(
String
inviteeUnionId
)
{
this
.
inviteeUnionId
=
inviteeUnionId
;
}
public
String
getEnterpriseId
()
{
return
enterpriseId
;
}
public
void
setEnterpriseId
(
String
enterpriseId
)
{
this
.
enterpriseId
=
enterpriseId
;
}
}
haoban-manage3-api/src/main/java/com/gic/haoban/manage/api/qdto/chat/GroupChatActivityJoinQDTO.java
0 → 100644
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
api
.
qdto
.
chat
;
import
com.gic.haoban.manage.api.dto.chat.GroupChatActivityJoinDTO
;
import
java.io.Serializable
;
import
java.util.Date
;
/**
* 社群邀请有礼入群规则表(TabHaobanGroupChatActivityJoin)实体类
*
* @author makejava
* @since 2024-09-27 16:09:56
*/
public
class
GroupChatActivityJoinQDTO
extends
GroupChatActivityJoinDTO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
95747409578903881L
;
/**
* 会员筛选-回显
*/
private
String
filterJsonView
;
public
String
getFilterJsonView
()
{
return
filterJsonView
;
}
public
void
setFilterJsonView
(
String
filterJsonView
)
{
this
.
filterJsonView
=
filterJsonView
;
}
}
haoban-manage3-api/src/main/java/com/gic/haoban/manage/api/qdto/chat/GroupChatActivityQDTO.java
0 → 100644
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
api
.
qdto
.
chat
;
import
com.gic.haoban.manage.api.dto.chat.GroupChatActivityRewardDTO
;
import
java.io.Serializable
;
import
java.util.Date
;
import
java.util.List
;
/**
* 社群邀请有礼表(TabHaobanGroupChatActivity)实体类
*
* @author makejava
* @since 2024-09-27 16:09:38
*/
public
class
GroupChatActivityQDTO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
973688857967269973L
;
/**
* 社群活动id
*/
private
Long
chatActivityId
;
/**
* 活动名称
*/
private
String
activityName
;
/**
* 开始时间
*/
private
Date
startDate
;
/**
* 结束时间
*/
private
Date
endDate
;
/**
* 状态1未开始2进行中3已终止4已结束
*/
private
Integer
status
;
/**
* 活动图片
*/
private
String
activityImg
;
/**
* 活动受邀页图片
*/
private
String
activityInviteImg
;
/**
* 活动说明
*/
private
String
activityDesc
;
/**
* 活动分享标题
*/
private
String
activityShareTitle
;
/**
* 活动分享卡片图片
*/
private
String
activityShareImg
;
/**
* 活动分享海报图片
*/
private
String
activityPosterImg
;
/**
* 奖励类型 1定额奖励2阶梯奖励
*/
private
Integer
inviteRewardType
;
/**
* 入群方式 1规则入群2定向入群
*/
private
Integer
joinType
;
/**
* 入群规则 1邀请人所在企微群2服务门店3协管门店4LBS定位 逗号分隔
*/
private
String
joinRule
;
/**
* 入群兜底群活码id
*/
private
Long
joinChatHmId
;
/**
* 邀请类型 0不限制1入群前未处于任何企业群聊内算有效邀请2首次加入企业群聊才算有效邀请
*/
private
Integer
inviteType
;
/**
* 邀请会员类型 0所有用户1开卡会员
*/
private
Integer
inviteMemberType
;
/**
* 打标签1是0否
*/
private
Integer
labelFlag
;
/**
* { "options": 1, "id": 1, "name": "标签名称" }
*/
private
String
labelJson
;
/**
* 异常提醒 0 不提醒 1短信提醒
*/
private
Integer
exceptionNotice
;
/**
* 异常提醒数量
*/
private
Integer
exceptionNoticeNum
;
/**
* 企业ID
*/
private
String
enterpriseId
;
/**
* 微信企业ID
*/
private
String
wxEnterpriseId
;
private
String
creatorId
;
private
String
creatorName
;
/**
* 奖励规则列表
*/
private
List
<
GroupChatActivityRewardDTO
>
rewardList
;
/**
* 入群规则列表
*/
private
List
<
GroupChatActivityJoinQDTO
>
joinList
;
public
Long
getChatActivityId
()
{
return
chatActivityId
;
}
public
void
setChatActivityId
(
Long
chatActivityId
)
{
this
.
chatActivityId
=
chatActivityId
;
}
public
String
getActivityName
()
{
return
activityName
;
}
public
void
setActivityName
(
String
activityName
)
{
this
.
activityName
=
activityName
;
}
public
Date
getStartDate
()
{
return
startDate
;
}
public
void
setStartDate
(
Date
startDate
)
{
this
.
startDate
=
startDate
;
}
public
Date
getEndDate
()
{
return
endDate
;
}
public
void
setEndDate
(
Date
endDate
)
{
this
.
endDate
=
endDate
;
}
public
Integer
getStatus
()
{
return
status
;
}
public
void
setStatus
(
Integer
status
)
{
this
.
status
=
status
;
}
public
String
getActivityImg
()
{
return
activityImg
;
}
public
void
setActivityImg
(
String
activityImg
)
{
this
.
activityImg
=
activityImg
;
}
public
String
getActivityInviteImg
()
{
return
activityInviteImg
;
}
public
void
setActivityInviteImg
(
String
activityInviteImg
)
{
this
.
activityInviteImg
=
activityInviteImg
;
}
public
String
getActivityDesc
()
{
return
activityDesc
;
}
public
void
setActivityDesc
(
String
activityDesc
)
{
this
.
activityDesc
=
activityDesc
;
}
public
String
getActivityShareTitle
()
{
return
activityShareTitle
;
}
public
void
setActivityShareTitle
(
String
activityShareTitle
)
{
this
.
activityShareTitle
=
activityShareTitle
;
}
public
String
getActivityShareImg
()
{
return
activityShareImg
;
}
public
void
setActivityShareImg
(
String
activityShareImg
)
{
this
.
activityShareImg
=
activityShareImg
;
}
public
String
getActivityPosterImg
()
{
return
activityPosterImg
;
}
public
void
setActivityPosterImg
(
String
activityPosterImg
)
{
this
.
activityPosterImg
=
activityPosterImg
;
}
public
Integer
getInviteRewardType
()
{
return
inviteRewardType
;
}
public
void
setInviteRewardType
(
Integer
inviteRewardType
)
{
this
.
inviteRewardType
=
inviteRewardType
;
}
public
Integer
getJoinType
()
{
return
joinType
;
}
public
void
setJoinType
(
Integer
joinType
)
{
this
.
joinType
=
joinType
;
}
public
String
getJoinRule
()
{
return
joinRule
;
}
public
void
setJoinRule
(
String
joinRule
)
{
this
.
joinRule
=
joinRule
;
}
public
Long
getJoinChatHmId
()
{
return
joinChatHmId
;
}
public
void
setJoinChatHmId
(
Long
joinChatHmId
)
{
this
.
joinChatHmId
=
joinChatHmId
;
}
public
Integer
getInviteType
()
{
return
inviteType
;
}
public
void
setInviteType
(
Integer
inviteType
)
{
this
.
inviteType
=
inviteType
;
}
public
Integer
getInviteMemberType
()
{
return
inviteMemberType
;
}
public
void
setInviteMemberType
(
Integer
inviteMemberType
)
{
this
.
inviteMemberType
=
inviteMemberType
;
}
public
Integer
getLabelFlag
()
{
return
labelFlag
;
}
public
void
setLabelFlag
(
Integer
labelFlag
)
{
this
.
labelFlag
=
labelFlag
;
}
public
String
getLabelJson
()
{
return
labelJson
;
}
public
void
setLabelJson
(
String
labelJson
)
{
this
.
labelJson
=
labelJson
;
}
public
Integer
getExceptionNotice
()
{
return
exceptionNotice
;
}
public
void
setExceptionNotice
(
Integer
exceptionNotice
)
{
this
.
exceptionNotice
=
exceptionNotice
;
}
public
Integer
getExceptionNoticeNum
()
{
return
exceptionNoticeNum
;
}
public
void
setExceptionNoticeNum
(
Integer
exceptionNoticeNum
)
{
this
.
exceptionNoticeNum
=
exceptionNoticeNum
;
}
public
String
getEnterpriseId
()
{
return
enterpriseId
;
}
public
void
setEnterpriseId
(
String
enterpriseId
)
{
this
.
enterpriseId
=
enterpriseId
;
}
public
String
getWxEnterpriseId
()
{
return
wxEnterpriseId
;
}
public
void
setWxEnterpriseId
(
String
wxEnterpriseId
)
{
this
.
wxEnterpriseId
=
wxEnterpriseId
;
}
public
String
getCreatorId
()
{
return
creatorId
;
}
public
void
setCreatorId
(
String
creatorId
)
{
this
.
creatorId
=
creatorId
;
}
public
String
getCreatorName
()
{
return
creatorName
;
}
public
void
setCreatorName
(
String
creatorName
)
{
this
.
creatorName
=
creatorName
;
}
public
List
<
GroupChatActivityRewardDTO
>
getRewardList
()
{
return
rewardList
;
}
public
void
setRewardList
(
List
<
GroupChatActivityRewardDTO
>
rewardList
)
{
this
.
rewardList
=
rewardList
;
}
public
List
<
GroupChatActivityJoinQDTO
>
getJoinList
()
{
return
joinList
;
}
public
void
setJoinList
(
List
<
GroupChatActivityJoinQDTO
>
joinList
)
{
this
.
joinList
=
joinList
;
}
}
haoban-manage3-api/src/main/java/com/gic/haoban/manage/api/qdto/chat/GroupChatActivitySearchQDTO.java
0 → 100644
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
api
.
qdto
.
chat
;
import
java.io.Serializable
;
import
java.util.Date
;
import
java.util.List
;
public
class
GroupChatActivitySearchQDTO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
692426229105512689L
;
private
String
wxEnterpriseId
;
/**
* 搜索内容
*/
private
String
search
;
/**
* 状态1未开始2进行中3已终止4已结束
*/
private
Integer
status
;
/**
* 奖励类型 1定额奖励2阶梯奖励
*/
private
Integer
inviteRewardType
;
/**
* 入群方式 1规则入群2定向入群
*/
private
Integer
joinType
;
/**
* 开始时间
*/
private
Date
beginDate
;
/**
* 结束时间
*/
private
Date
endDate
;
/**
* 创建人id列表
*/
private
List
<
String
>
creatorIdList
;
public
String
getWxEnterpriseId
()
{
return
wxEnterpriseId
;
}
public
void
setWxEnterpriseId
(
String
wxEnterpriseId
)
{
this
.
wxEnterpriseId
=
wxEnterpriseId
;
}
public
String
getSearch
()
{
return
search
;
}
public
void
setSearch
(
String
search
)
{
this
.
search
=
search
;
}
public
Integer
getStatus
()
{
return
status
;
}
public
void
setStatus
(
Integer
status
)
{
this
.
status
=
status
;
}
public
Integer
getInviteRewardType
()
{
return
inviteRewardType
;
}
public
void
setInviteRewardType
(
Integer
inviteRewardType
)
{
this
.
inviteRewardType
=
inviteRewardType
;
}
public
Integer
getJoinType
()
{
return
joinType
;
}
public
void
setJoinType
(
Integer
joinType
)
{
this
.
joinType
=
joinType
;
}
public
Date
getBeginDate
()
{
return
beginDate
;
}
public
void
setBeginDate
(
Date
beginDate
)
{
this
.
beginDate
=
beginDate
;
}
public
Date
getEndDate
()
{
return
endDate
;
}
public
void
setEndDate
(
Date
endDate
)
{
this
.
endDate
=
endDate
;
}
public
List
<
String
>
getCreatorIdList
()
{
return
creatorIdList
;
}
public
void
setCreatorIdList
(
List
<
String
>
creatorIdList
)
{
this
.
creatorIdList
=
creatorIdList
;
}
}
haoban-manage3-api/src/main/java/com/gic/haoban/manage/api/qdto/chat/GroupChatActivityShareBindQDTO.java
0 → 100644
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
api
.
qdto
.
chat
;
import
java.io.Serializable
;
import
java.util.Date
;
public
class
GroupChatActivityShareBindQDTO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
28454620622119889L
;
/**
* 社群活动id
*/
private
Long
chatActivityId
;
/**
* 邀请人会员ID
*/
private
String
inviterMemberId
;
/**
* 受邀人会员ID
*/
private
String
inviteeMemberId
;
/**
* 受邀人unionID
*/
private
String
inviteeUnionId
;
/**
* 企业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
getInviteeMemberId
()
{
return
inviteeMemberId
;
}
public
void
setInviteeMemberId
(
String
inviteeMemberId
)
{
this
.
inviteeMemberId
=
inviteeMemberId
;
}
public
String
getInviteeUnionId
()
{
return
inviteeUnionId
;
}
public
void
setInviteeUnionId
(
String
inviteeUnionId
)
{
this
.
inviteeUnionId
=
inviteeUnionId
;
}
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/chat/GroupChatActivityApiService.java
0 → 100644
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
api
.
service
.
chat
;
import
com.gic.api.base.commons.BasePageInfo
;
import
com.gic.api.base.commons.Page
;
import
com.gic.api.base.commons.ServiceResponse
;
import
com.gic.haoban.manage.api.dto.chat.GroupChatActivityBaseDTO
;
import
com.gic.haoban.manage.api.dto.chat.GroupChatActivityDTO
;
import
com.gic.haoban.manage.api.qdto.chat.GroupChatActivityQDTO
;
import
com.gic.haoban.manage.api.qdto.chat.GroupChatActivitySearchQDTO
;
import
java.util.List
;
/**
* Created by wangzubo on 2022/10/31.
*/
public
interface
GroupChatActivityApiService
{
/**
* 保存互动营销活动
* @param qdto
* @return
*/
ServiceResponse
<
Long
>
saveActivity
(
GroupChatActivityQDTO
qdto
)
;
/**
* 获取活动详情
* @param chatActivityId
* @return
*/
ServiceResponse
<
GroupChatActivityDTO
>
getActivityDetail
(
String
enterpriseId
,
Long
chatActivityId
);
/**
* 获取活动详情(缓存)
* @param chatActivityId
* @return
*/
ServiceResponse
<
GroupChatActivityDTO
>
getActivityDetailCache
(
String
enterpriseId
,
Long
chatActivityId
);
/**
* 通过活动id列表获取
* @param enterpriseId
* @param chatActivityIdList
* @return
*/
ServiceResponse
<
List
<
GroupChatActivityBaseDTO
>>
listByActivityIds
(
String
enterpriseId
,
List
<
Long
>
chatActivityIdList
);
/**
* 通过活动id列表获取(包含已删除)
* @param enterpriseId
* @param chatActivityIdList
* @return
*/
ServiceResponse
<
List
<
GroupChatActivityBaseDTO
>>
listByActivityIdsDel
(
String
enterpriseId
,
List
<
Long
>
chatActivityIdList
);
/**
* 分页查询活动列表
* @param enterpriseId 企业id
* @param searchQDTO 搜索条件
* @return
*/
ServiceResponse
<
Page
<
GroupChatActivityDTO
>>
pageActivity
(
String
enterpriseId
,
GroupChatActivitySearchQDTO
searchQDTO
,
BasePageInfo
pageInfo
);
/**
* 终止活动
* @param enterpriseId 企业id
* @param chatActivityId 活动id
*/
ServiceResponse
<
GroupChatActivityDTO
>
stopActivity
(
String
enterpriseId
,
Long
chatActivityId
)
;
/**
* 删除活动
* @param enterpriseId 企业id
* @param chatActivityId 活动id
*/
ServiceResponse
<
Void
>
delActivity
(
String
enterpriseId
,
Long
chatActivityId
)
;
}
haoban-manage3-api/src/main/java/com/gic/haoban/manage/api/service/chat/GroupChatActivityShareApiService.java
0 → 100644
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
api
.
service
.
chat
;
import
com.gic.api.base.commons.ServiceResponse
;
import
com.gic.haoban.manage.api.qdto.chat.GroupChatActivityShareBindQDTO
;
/**
* Created by wangzubo on 2022/10/31.
*/
public
interface
GroupChatActivityShareApiService
{
/**
* 绑定分享关系
* @param shareBind
*/
ServiceResponse
<
Void
>
shareBing
(
GroupChatActivityShareBindQDTO
shareBind
);
}
haoban-manage3-service/pom.xml
View file @
e967f0a7
...
...
@@ -159,7 +159,7 @@
<dependency>
<groupId>
cn.hutool
</groupId>
<artifactId>
hutool-all
</artifactId>
<version>
5.
5.1
</version>
<version>
5.
6.2
</version>
</dependency>
<dependency>
...
...
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/context/chat/BusinessManager.java
0 → 100644
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
service
.
context
.
chat
;
import
com.gic.api.base.commons.Constant
;
import
com.gic.enterprise.api.service.ScreeningDetailService
;
import
com.gic.haoban.manage.api.dto.chat.GroupChatActivityDTO
;
import
com.gic.haoban.manage.api.dto.chat.GroupChatActivityJoinDTO
;
import
com.gic.haoban.manage.api.dto.chat.GroupChatActivityRewardDTO
;
import
com.gic.haoban.manage.api.enums.chat.ChatActivityRewardEnum
;
import
com.gic.haoban.manage.service.entity.chat.TabGroupChatActivity
;
import
com.gic.haoban.manage.service.entity.chat.TabGroupChatActivityJoin
;
import
com.gic.marketing.api.enums.MarketingBusinessTypeEnum
;
import
com.gic.marketing.api.enums.MarketingTagModuleEnum
;
import
com.gic.marketing.api.qdto.CouponReferAlarmQDTO
;
import
com.gic.marketing.api.service.CouponReferAlarmService
;
import
com.gic.member.tag.api.dto.MemberTagBusinessGroupDTO
;
import
com.gic.member.tag.api.service.MemberTagBusinessGroupApiService
;
import
org.apache.commons.lang3.StringUtils
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Component
;
import
java.util.Arrays
;
import
java.util.List
;
import
java.util.Objects
;
import
java.util.stream.Collectors
;
/**
* Created by wangzubo on 2024/8/23.
*/
@Component
public
class
BusinessManager
{
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
BusinessManager
.
class
);
@Autowired
private
MemberTagBusinessGroupApiService
memberTagBusinessGroupApiService
;
@Autowired
private
ScreeningDetailService
screeningDetailService
;
@Autowired
private
CouponReferAlarmService
couponReferAlarmService
;
public
void
dealMemberTagByActivity
(
TabGroupChatActivity
activityDTO
,
TabGroupChatActivityJoin
activityJoin
,
boolean
delete
)
{
String
enterpriseId
=
activityDTO
.
getEnterpriseId
();
Long
chatActivityId
=
activityDTO
.
getChatActivityId
();
if
(
delete
)
{
logger
.
info
(
"删除计划使用人群分组关联关系chatActivityId:{}"
,
chatActivityId
);
memberTagBusinessGroupApiService
.
deleteByBusinessIdAndEnterpriseId
(
String
.
valueOf
(
chatActivityId
),
enterpriseId
);
return
;
}
Integer
memberType
=
activityJoin
.
getMemberType
();
String
filterJson
=
activityJoin
.
getFilterJson
();
String
filterJsonView
=
activityJoin
.
getFilterJsonView
();
if
(
StringUtils
.
isNotBlank
(
filterJson
)
&&
Objects
.
equals
(
memberType
,
1
))
{
String
[]
split
=
filterJson
.
split
(
","
);
MemberTagBusinessGroupDTO
memberTagBusinessGroupDTO
=
new
MemberTagBusinessGroupDTO
();
memberTagBusinessGroupDTO
.
setTagGroupIdList
(
Arrays
.
asList
(
split
));
memberTagBusinessGroupDTO
.
setBusinessId
(
String
.
valueOf
(
chatActivityId
));
memberTagBusinessGroupDTO
.
setEnterpriseId
(
enterpriseId
);
memberTagBusinessGroupDTO
.
setBusinessType
(
MarketingBusinessTypeEnum
.
Marketing_business_type
.
getCode
());
// todo 社群
memberTagBusinessGroupDTO
.
setBusinessModuleName
(
MarketingTagModuleEnum
.
CONTENT_ACTIVITY
.
getModuleTypeName
());
memberTagBusinessGroupDTO
.
setBusinessName
(
activityDTO
.
getActivityName
());
memberTagBusinessGroupDTO
.
setBusinessLink
(
MarketingTagModuleEnum
.
CONTENT_ACTIVITY
.
getPagePath
());
logger
.
info
(
"处理计划使用人群分组关联关系chatActivityId:{}"
,
chatActivityId
);
memberTagBusinessGroupApiService
.
batchDelAndAddByBusinessId
(
memberTagBusinessGroupDTO
);
}
else
{
// 若使用非人群分组,删除所有关联关系
logger
.
info
(
"删除计划使用人群分组关联关系chatActivityId:{}"
,
chatActivityId
);
memberTagBusinessGroupApiService
.
deleteByBusinessIdAndEnterpriseId
(
String
.
valueOf
(
chatActivityId
),
enterpriseId
);
}
if
(
Objects
.
equals
(
memberType
,
0
)
&&
filterJsonView
!=
null
)
{
screeningDetailService
.
save
(
"GROUP_CHAT_SEARCH_ID_"
+
activityDTO
.
getChatActivityId
()
+
"-"
+
activityJoin
.
getIndex
(),
filterJsonView
);
}
}
public
void
dealCouponAlarmByActivity
(
GroupChatActivityDTO
activityDTO
,
boolean
delete
)
{
if
(
Objects
.
equals
(
activityDTO
.
getExceptionNotice
(),
Constant
.
FLAG_TRUE
)
&&
!
delete
)
{
CouponReferAlarmQDTO
couponReferAlarmQDTO
=
new
CouponReferAlarmQDTO
();
couponReferAlarmQDTO
.
setSystemType
(
0
);
couponReferAlarmQDTO
.
setStartTime
(
activityDTO
.
getStartDate
());
couponReferAlarmQDTO
.
setEndTime
(
activityDTO
.
getLimitDate
()
!=
null
?
activityDTO
.
getLimitDate
()
:
activityDTO
.
getEndDate
());
couponReferAlarmQDTO
.
setCreatorId
(
activityDTO
.
getCreatorId
());
List
<
String
>
couponIdList
=
activityDTO
.
getRewardList
().
stream
()
.
filter
(
x
->
Objects
.
equals
(
x
.
getRewardType
(),
ChatActivityRewardEnum
.
COUPON
.
value
))
.
map
(
GroupChatActivityRewardDTO:
:
getRewardValue
)
.
flatMap
(
x
->
Arrays
.
stream
(
x
.
split
(
","
)))
.
distinct
().
collect
(
Collectors
.
toList
());
couponReferAlarmQDTO
.
setCouponIdList
(
couponIdList
);
couponReferAlarmQDTO
.
setEnterpriseId
(
activityDTO
.
getEnterpriseId
());
couponReferAlarmQDTO
.
setReferType
(
2
);
couponReferAlarmQDTO
.
setSystemType
(
1
);
couponReferAlarmQDTO
.
setReferId
(
String
.
valueOf
(
activityDTO
.
getChatActivityId
()));
couponReferAlarmQDTO
.
setTitle
(
"社群邀请有礼-"
+
activityDTO
.
getActivityName
());
couponReferAlarmQDTO
.
setAlarmStock
(
activityDTO
.
getExceptionNoticeNum
());
couponReferAlarmQDTO
.
setDelAlarmFlag
(
1
);
couponReferAlarmService
.
add
(
couponReferAlarmQDTO
);
}
else
{
couponReferAlarmService
.
del
(
String
.
valueOf
(
activityDTO
.
getChatActivityId
()),
2
);
}
}
}
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/dao/mapper/chat/GroupChatActivityJoinMapper.java
View file @
e967f0a7
...
...
@@ -2,6 +2,7 @@ package com.gic.haoban.manage.service.dao.mapper.chat;
import
com.gic.haoban.manage.service.entity.chat.TabGroupChatActivityJoin
;
import
com.gic.haoban.manage.service.entity.chat.TabGroupChatActivityReward
;
import
org.apache.ibatis.annotations.Param
;
import
org.springframework.data.domain.Pageable
;
...
...
@@ -24,6 +25,14 @@ public interface GroupChatActivityJoinMapper {
TabGroupChatActivityJoin
queryById
(
Long
chatActivityJoinId
);
/**
* 通过ID列表查询多条数据
* @param chatActivityIds
* @return
*/
List
<
TabGroupChatActivityJoin
>
queryByChatActivityIds
(
@Param
(
"chatActivityIds"
)
List
<
Long
>
chatActivityIds
);
/**
* 查询指定行数据
*
* @param tabGroupChatActivityJoin 查询条件
...
...
@@ -49,23 +58,6 @@ public interface GroupChatActivityJoinMapper {
int
insert
(
TabGroupChatActivityJoin
tabGroupChatActivityJoin
);
/**
* 批量新增数据(MyBatis原生foreach方法)
*
* @param entities List<TabHaobanGroupChatActivityJoin> 实例对象列表
* @return 影响行数
*/
int
insertBatch
(
@Param
(
"entities"
)
List
<
TabGroupChatActivityJoin
>
entities
);
/**
* 批量新增或按主键更新数据(MyBatis原生foreach方法)
*
* @param entities List<TabHaobanGroupChatActivityJoin> 实例对象列表
* @return 影响行数
* @throws org.springframework.jdbc.BadSqlGrammarException 入参是空List的时候会抛SQL语句错误的异常,请自行校验入参
*/
int
insertOrUpdateBatch
(
@Param
(
"entities"
)
List
<
TabGroupChatActivityJoin
>
entities
);
/**
* 修改数据
*
* @param tabGroupChatActivityJoin 实例对象
...
...
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/dao/mapper/chat/GroupChatActivityMapper.java
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
service
.
dao
.
mapper
.
chat
;
import
com.gic.haoban.manage.api.qdto.chat.GroupChatActivitySearchQDTO
;
import
com.gic.haoban.manage.service.entity.chat.TabGroupChatActivity
;
import
org.apache.ibatis.annotations.Param
;
import
org.springframework.data.domain.Pageable
;
import
java.util.List
;
...
...
@@ -23,13 +23,29 @@ public interface GroupChatActivityMapper {
TabGroupChatActivity
queryById
(
Long
chatActivityId
);
/**
* 查询指定行数据
*
* @param tabGroupChatActivity 查询条件
* @param pageable 分页对象
* @return 对象列表
* 通过ID列表查询多条数据
* @param chatActivityIds
* @return
*/
List
<
TabGroupChatActivity
>
queryByIds
(
@Param
(
"chatActivityIds"
)
List
<
Long
>
chatActivityIds
);
/**
* 通过ID列表查询多条数据
* @param chatActivityIds
* @return
*/
List
<
TabGroupChatActivity
>
queryAllByLimit
(
TabGroupChatActivity
tabGroupChatActivity
,
@Param
(
"pageable"
)
Pageable
pageable
);
List
<
TabGroupChatActivity
>
queryByIdsDel
(
@Param
(
"chatActivityIds"
)
List
<
Long
>
chatActivityIds
);
/**
* 分页查询数据
* @param enterpriseId
* @param searchQDTO
* @return
*/
List
<
TabGroupChatActivity
>
listActivity
(
@Param
(
"enterpriseId"
)
String
enterpriseId
,
@Param
(
"search"
)
GroupChatActivitySearchQDTO
searchQDTO
);
List
<
TabGroupChatActivity
>
listActivityByDate
(
TabGroupChatActivity
tabGroupChatActivity
);
/**
* 统计总行数
...
...
@@ -48,23 +64,6 @@ public interface GroupChatActivityMapper {
int
insert
(
TabGroupChatActivity
tabGroupChatActivity
);
/**
* 批量新增数据(MyBatis原生foreach方法)
*
* @param entities List<TabHaobanGroupChatActivity> 实例对象列表
* @return 影响行数
*/
int
insertBatch
(
@Param
(
"entities"
)
List
<
TabGroupChatActivity
>
entities
);
/**
* 批量新增或按主键更新数据(MyBatis原生foreach方法)
*
* @param entities List<TabHaobanGroupChatActivity> 实例对象列表
* @return 影响行数
* @throws org.springframework.jdbc.BadSqlGrammarException 入参是空List的时候会抛SQL语句错误的异常,请自行校验入参
*/
int
insertOrUpdateBatch
(
@Param
(
"entities"
)
List
<
TabGroupChatActivity
>
entities
);
/**
* 修改数据
*
* @param tabGroupChatActivity 实例对象
...
...
@@ -78,7 +77,7 @@ public interface GroupChatActivityMapper {
* @param chatActivityId 主键
* @return 影响行数
*/
int
deleteById
(
Long
chatActivityId
);
int
deleteById
(
String
enterpriseId
,
Long
chatActivityId
);
}
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/dao/mapper/chat/GroupChatActivityRewardDetailLogMapper.java
View file @
e967f0a7
...
...
@@ -48,23 +48,6 @@ public interface GroupChatActivityRewardDetailLogMapper {
int
insert
(
TabGroupChatActivityRewardDetailLog
tabGroupChatActivityRewardDetailLog
);
/**
* 批量新增数据(MyBatis原生foreach方法)
*
* @param entities List<TabHaobanGroupChatActivityRewardDetailLog> 实例对象列表
* @return 影响行数
*/
int
insertBatch
(
@Param
(
"entities"
)
List
<
TabGroupChatActivityRewardDetailLog
>
entities
);
/**
* 批量新增或按主键更新数据(MyBatis原生foreach方法)
*
* @param entities List<TabHaobanGroupChatActivityRewardDetailLog> 实例对象列表
* @return 影响行数
* @throws org.springframework.jdbc.BadSqlGrammarException 入参是空List的时候会抛SQL语句错误的异常,请自行校验入参
*/
int
insertOrUpdateBatch
(
@Param
(
"entities"
)
List
<
TabGroupChatActivityRewardDetailLog
>
entities
);
/**
* 修改数据
*
* @param tabGroupChatActivityRewardDetailLog 实例对象
...
...
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/dao/mapper/chat/GroupChatActivityRewardLogMapper.java
View file @
e967f0a7
...
...
@@ -48,23 +48,6 @@ public interface GroupChatActivityRewardLogMapper {
int
insert
(
TabGroupChatActivityRewardLog
tabGroupChatActivityRewardLog
);
/**
* 批量新增数据(MyBatis原生foreach方法)
*
* @param entities List<TabHaobanGroupChatActivityRewardLog> 实例对象列表
* @return 影响行数
*/
int
insertBatch
(
@Param
(
"entities"
)
List
<
TabGroupChatActivityRewardLog
>
entities
);
/**
* 批量新增或按主键更新数据(MyBatis原生foreach方法)
*
* @param entities List<TabHaobanGroupChatActivityRewardLog> 实例对象列表
* @return 影响行数
* @throws org.springframework.jdbc.BadSqlGrammarException 入参是空List的时候会抛SQL语句错误的异常,请自行校验入参
*/
int
insertOrUpdateBatch
(
@Param
(
"entities"
)
List
<
TabGroupChatActivityRewardLog
>
entities
);
/**
* 修改数据
*
* @param tabGroupChatActivityRewardLog 实例对象
...
...
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/dao/mapper/chat/GroupChatActivityRewardMapper.java
View file @
e967f0a7
...
...
@@ -23,6 +23,13 @@ public interface GroupChatActivityRewardMapper {
TabGroupChatActivityReward
queryById
(
Long
chatActivityRewardId
);
/**
* 通过ID列表查询多条数据
* @param chatActivityIds
* @return
*/
List
<
TabGroupChatActivityReward
>
queryByChatActivityIds
(
@Param
(
"chatActivityIds"
)
List
<
Long
>
chatActivityIds
);
/**
* 查询指定行数据
*
* @param tabGroupChatActivityReward 查询条件
...
...
@@ -47,22 +54,6 @@ public interface GroupChatActivityRewardMapper {
*/
int
insert
(
TabGroupChatActivityReward
tabGroupChatActivityReward
);
/**
* 批量新增数据(MyBatis原生foreach方法)
*
* @param entities List<TabHaobanGroupChatActivityReward> 实例对象列表
* @return 影响行数
*/
int
insertBatch
(
@Param
(
"entities"
)
List
<
TabGroupChatActivityReward
>
entities
);
/**
* 批量新增或按主键更新数据(MyBatis原生foreach方法)
*
* @param entities List<TabHaobanGroupChatActivityReward> 实例对象列表
* @return 影响行数
* @throws org.springframework.jdbc.BadSqlGrammarException 入参是空List的时候会抛SQL语句错误的异常,请自行校验入参
*/
int
insertOrUpdateBatch
(
@Param
(
"entities"
)
List
<
TabGroupChatActivityReward
>
entities
);
/**
* 修改数据
...
...
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/dao/mapper/chat/GroupChatActivityShareBindMapper.java
View file @
e967f0a7
...
...
@@ -23,6 +23,13 @@ public interface GroupChatActivityShareBindMapper {
TabGroupChatActivityShareBind
queryById
(
Long
chatActivityBindId
);
/**
* 获取24小时内有效记录
* @param inviteeUnionId
* @return
*/
List
<
TabGroupChatActivityShareBind
>
query24Record
(
String
inviteeUnionId
);
/**
* 查询指定行数据
*
* @param tabGroupChatActivityShareBind 查询条件
...
...
@@ -48,23 +55,6 @@ public interface GroupChatActivityShareBindMapper {
int
insert
(
TabGroupChatActivityShareBind
tabGroupChatActivityShareBind
);
/**
* 批量新增数据(MyBatis原生foreach方法)
*
* @param entities List<TabHaobanGroupChatActivityShareBind> 实例对象列表
* @return 影响行数
*/
int
insertBatch
(
@Param
(
"entities"
)
List
<
TabGroupChatActivityShareBind
>
entities
);
/**
* 批量新增或按主键更新数据(MyBatis原生foreach方法)
*
* @param entities List<TabHaobanGroupChatActivityShareBind> 实例对象列表
* @return 影响行数
* @throws org.springframework.jdbc.BadSqlGrammarException 入参是空List的时候会抛SQL语句错误的异常,请自行校验入参
*/
int
insertOrUpdateBatch
(
@Param
(
"entities"
)
List
<
TabGroupChatActivityShareBind
>
entities
);
/**
* 修改数据
*
* @param tabGroupChatActivityShareBind 实例对象
...
...
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/entity/chat/TabGroupChatActivityJoin.java
View file @
e967f0a7
...
...
@@ -28,9 +28,19 @@ public class TabGroupChatActivityJoin implements Serializable {
*/
private
String
filterJson
;
/**
* 人群回显
*/
private
String
filterJsonView
;
/**
* 序号 从小到大
*/
private
Integer
index
;
/**
* 群活码id
*/
private
Long
chatHmId
;
/**
* 企业ID
*/
...
...
@@ -79,6 +89,14 @@ public class TabGroupChatActivityJoin implements Serializable {
this
.
filterJson
=
filterJson
;
}
public
String
getFilterJsonView
()
{
return
filterJsonView
;
}
public
void
setFilterJsonView
(
String
filterJsonView
)
{
this
.
filterJsonView
=
filterJsonView
;
}
public
Integer
getIndex
()
{
return
index
;
}
...
...
@@ -87,6 +105,14 @@ public class TabGroupChatActivityJoin implements Serializable {
this
.
index
=
index
;
}
public
Long
getChatHmId
()
{
return
chatHmId
;
}
public
void
setChatHmId
(
Long
chatHmId
)
{
this
.
chatHmId
=
chatHmId
;
}
public
String
getEnterpriseId
()
{
return
enterpriseId
;
}
...
...
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/pojo/bo/chat/GroupChatActivityRewardBO.java
0 → 100644
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
service
.
pojo
.
bo
.
chat
;
import
com.google.common.base.Objects
;
import
java.io.Serializable
;
import
java.util.Date
;
/**
* 社群邀请有礼奖励规则表(TabHaobanGroupChatActivityReward)实体类
*
* @author makejava
* @since 2024-09-27 16:09:56
*/
public
class
GroupChatActivityRewardBO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
78111537762472232L
;
/**
* 内容活动id
*/
private
Long
chatActivityId
;
/**
* 奖励阶梯 固定奖励默认1
*/
private
Integer
inviteLevel
;
/**
* 奖励人类型 1邀请人2受邀人
*/
private
Integer
rewardInvite
;
/**
* 奖励类型 1积分2成长值3卡券
*/
private
Integer
rewardType
;
public
GroupChatActivityRewardBO
(
Long
chatActivityId
,
Integer
inviteLevel
,
Integer
rewardInvite
,
Integer
rewardType
)
{
this
.
chatActivityId
=
chatActivityId
;
this
.
inviteLevel
=
inviteLevel
;
this
.
rewardInvite
=
rewardInvite
;
this
.
rewardType
=
rewardType
;
}
public
Long
getChatActivityId
()
{
return
chatActivityId
;
}
public
void
setChatActivityId
(
Long
chatActivityId
)
{
this
.
chatActivityId
=
chatActivityId
;
}
public
Integer
getInviteLevel
()
{
return
inviteLevel
;
}
public
void
setInviteLevel
(
Integer
inviteLevel
)
{
this
.
inviteLevel
=
inviteLevel
;
}
public
Integer
getRewardInvite
()
{
return
rewardInvite
;
}
public
void
setRewardInvite
(
Integer
rewardInvite
)
{
this
.
rewardInvite
=
rewardInvite
;
}
public
Integer
getRewardType
()
{
return
rewardType
;
}
public
void
setRewardType
(
Integer
rewardType
)
{
this
.
rewardType
=
rewardType
;
}
@Override
public
boolean
equals
(
Object
o
)
{
if
(
this
==
o
)
return
true
;
if
(
o
==
null
||
getClass
()
!=
o
.
getClass
())
return
false
;
GroupChatActivityRewardBO
that
=
(
GroupChatActivityRewardBO
)
o
;
return
Objects
.
equal
(
chatActivityId
,
that
.
chatActivityId
)
&&
Objects
.
equal
(
inviteLevel
,
that
.
inviteLevel
)
&&
Objects
.
equal
(
rewardInvite
,
that
.
rewardInvite
)
&&
Objects
.
equal
(
rewardType
,
that
.
rewardType
);
}
@Override
public
int
hashCode
()
{
return
Objects
.
hashCode
(
chatActivityId
,
inviteLevel
,
rewardInvite
,
rewardType
);
}
}
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/chat/GroupChatActivityJoinService.java
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
service
.
service
.
chat
;
import
com.gic.haoban.manage.service.entity.chat.TabGroupChatActivity
;
import
com.gic.haoban.manage.service.entity.chat.TabGroupChatActivityJoin
;
import
java.util.List
;
import
java.util.Map
;
/**
* 社群邀请有礼入群规则表(TabHaobanGroupChatActivityJoin)表服务接口
*
...
...
@@ -8,4 +14,25 @@ package com.gic.haoban.manage.service.service.chat;
*/
public
interface
GroupChatActivityJoinService
{
/**
* 获取活动的入群规则
* @param chatActivityId
* @return
*/
List
<
TabGroupChatActivityJoin
>
listByActivityId
(
Long
chatActivityId
);
/**
* 批量获取活动的入群规则
* @param chatActivityIdList
* @return
*/
Map
<
Long
,
List
<
TabGroupChatActivityJoin
>>
listByActivityIdList
(
List
<
Long
>
chatActivityIdList
);
/**
* 保存活动奖励规则
* @param joinList
*/
void
saveActivityJoin
(
TabGroupChatActivity
activity
,
List
<
TabGroupChatActivityJoin
>
joinList
);
}
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/chat/GroupChatActivityRewardService.java
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
service
.
service
.
chat
;
import
com.gic.haoban.manage.service.entity.chat.TabGroupChatActivityReward
;
import
java.util.List
;
import
java.util.Map
;
/**
* 社群邀请有礼奖励规则表(TabHaobanGroupChatActivityReward)表服务接口
*
...
...
@@ -8,4 +13,24 @@ package com.gic.haoban.manage.service.service.chat;
*/
public
interface
GroupChatActivityRewardService
{
/**
* 获取活动的奖励规则
* @param chatActivityId
* @return
*/
List
<
TabGroupChatActivityReward
>
listByActivityId
(
Long
chatActivityId
);
/**
* 批量获取活动的奖励规则
* @param chatActivityIdList
* @return
*/
Map
<
Long
,
List
<
TabGroupChatActivityReward
>>
listByActivityIdList
(
List
<
Long
>
chatActivityIdList
);
/**
* 保存活动奖励规则
* @param rewardList
*/
void
saveActivityReward
(
Long
chatActivityId
,
List
<
TabGroupChatActivityReward
>
rewardList
);
}
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/chat/GroupChatActivityService.java
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
service
.
service
.
chat
;
import
com.gic.api.base.commons.BasePageInfo
;
import
com.gic.api.base.commons.BusinessException
;
import
com.gic.api.base.commons.Page
;
import
com.gic.haoban.manage.api.dto.chat.GroupChatActivityDTO
;
import
com.gic.haoban.manage.api.qdto.chat.GroupChatActivityHmQDTO
;
import
com.gic.haoban.manage.api.qdto.chat.GroupChatActivityQDTO
;
import
com.gic.haoban.manage.api.qdto.chat.GroupChatActivitySearchQDTO
;
import
com.gic.haoban.manage.service.entity.chat.TabGroupChatActivity
;
import
com.gic.haoban.manage.service.entity.chat.TabGroupChatHm
;
import
java.util.List
;
/**
* 社群邀请有礼表(TabHaobanGroupChatActivity)表服务接口
*
...
...
@@ -8,5 +20,97 @@ package com.gic.haoban.manage.service.service.chat;
*/
public
interface
GroupChatActivityService
{
/**
* 保存社群活动
* @param qdto
* @return
* @throws BusinessException
*/
Long
saveActivity
(
GroupChatActivityQDTO
qdto
)
throws
BusinessException
;
/**
* 获取活动详情
* @param chatActivityId
* @return
*/
GroupChatActivityDTO
getActivityDetail
(
String
enterpriseId
,
Long
chatActivityId
);
/**
* 删除活动缓存
* @param enterpriseId 企业id
* @param chatActivityId 活动id
*/
void
delActivityDetailCache
(
String
enterpriseId
,
Long
chatActivityId
);
/**
* 获取活动详情(缓存)
* @param chatActivityId
* @return
*/
GroupChatActivityDTO
getActivityDetailCache
(
String
enterpriseId
,
Long
chatActivityId
);
/**
* 通过活动id列表获取
* @param enterpriseId 企业id
* @param chatActivityIdList 活动id列表
* @return
*/
List
<
TabGroupChatActivity
>
listByActivityIds
(
String
enterpriseId
,
List
<
Long
>
chatActivityIdList
);
/**
* 通过活动id列表获取(包含删除的)
* @param enterpriseId
* @param chatActivityIdList
* @return
*/
List
<
TabGroupChatActivity
>
listByActivityIdsDel
(
String
enterpriseId
,
List
<
Long
>
chatActivityIdList
);
/**
* 分页查询活动列表
* @param enterpriseId 企业id
* @param searchQDTO 搜索条件
* @return
*/
Page
<
GroupChatActivityDTO
>
pageActivity
(
String
enterpriseId
,
GroupChatActivitySearchQDTO
searchQDTO
,
BasePageInfo
pageInfo
);
/**
* 终止活动
* @param enterpriseId 企业id
* @param chatActivityId 活动id
*/
GroupChatActivityDTO
stopActivity
(
String
enterpriseId
,
Long
chatActivityId
)
throws
BusinessException
;
/**
* 删除活动
* @param enterpriseId 企业id
* @param chatActivityId 活动id
*/
void
delActivity
(
String
enterpriseId
,
Long
chatActivityId
)
throws
BusinessException
;
/**
* 更新活动状态
* @param enterpriseId 企业id
* @param chatActivityId 活动id
* @param status 状态
*/
void
updateStatusActivity
(
String
enterpriseId
,
Long
chatActivityId
,
Integer
status
);
/**
* 获取有效的活动计划列表
* @param enterpriseId 企业id
* @return
*/
List
<
TabGroupChatActivity
>
listEffectiveActivity
(
String
enterpriseId
);
/**
* 定时活动状态更新
*/
void
activityQuartzUpdateStatus
();
/**
* 获取入群活码列表
* @param activityHmQDTO
* @return
*/
List
<
TabGroupChatHm
>
listHm
(
GroupChatActivityHmQDTO
activityHmQDTO
);
}
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/chat/GroupChatActivityShareBindService.java
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
service
.
service
.
chat
;
import
com.gic.haoban.manage.service.entity.chat.TabGroupChatActivityShareBind
;
import
java.util.List
;
/**
* 社群邀请有礼邀请人和受邀人绑定表(TabHaobanGroupChatActivityShareBind)表服务接口
*
...
...
@@ -9,4 +13,16 @@ package com.gic.haoban.manage.service.service.chat;
public
interface
GroupChatActivityShareBindService
{
/**
* 绑定分享关系
* @param shareBind
*/
void
shareBing
(
TabGroupChatActivityShareBind
shareBind
);
/**
* 获取24小时内有效的记录
* @param inviteeUnionId
* @return
*/
List
<
TabGroupChatActivityShareBind
>
getLast
(
String
inviteeUnionId
);
}
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/chat/impl/GroupChatActivityJoinServiceImpl.java
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
service
.
service
.
chat
.
impl
;
import
cn.hutool.core.collection.CollectionUtil
;
import
com.gic.commons.util.UniqueIdUtils
;
import
com.gic.haoban.manage.service.context.chat.BusinessManager
;
import
com.gic.haoban.manage.service.dao.mapper.chat.GroupChatActivityJoinMapper
;
import
com.gic.haoban.manage.service.entity.chat.TabGroupChatActivity
;
import
com.gic.haoban.manage.service.entity.chat.TabGroupChatActivityJoin
;
import
com.gic.haoban.manage.service.service.chat.GroupChatActivityJoinService
;
import
com.google.common.collect.Lists
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
javax.annotation.Resource
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
/**
* 社群邀请有礼入群规则表(TabHaobanGroupChatActivityJoin)表服务实现类
...
...
@@ -14,6 +25,62 @@ import javax.annotation.Resource;
*/
@Service
(
"groupChatActivityJoinService"
)
public
class
GroupChatActivityJoinServiceImpl
implements
GroupChatActivityJoinService
{
@
Resource
@
Autowired
private
GroupChatActivityJoinMapper
groupChatActivityJoinMapper
;
@Autowired
private
BusinessManager
businessManager
;
@Override
public
List
<
TabGroupChatActivityJoin
>
listByActivityId
(
Long
chatActivityId
)
{
if
(
chatActivityId
==
null
)
{
return
new
ArrayList
<>();
}
List
<
TabGroupChatActivityJoin
>
activityRewards
=
groupChatActivityJoinMapper
.
queryByChatActivityIds
(
Lists
.
newArrayList
(
chatActivityId
));
return
activityRewards
;
}
@Override
public
Map
<
Long
,
List
<
TabGroupChatActivityJoin
>>
listByActivityIdList
(
List
<
Long
>
chatActivityIdList
)
{
if
(
CollectionUtil
.
isEmpty
(
chatActivityIdList
))
{
return
new
HashMap
<>();
}
List
<
TabGroupChatActivityJoin
>
list
=
groupChatActivityJoinMapper
.
queryByChatActivityIds
(
Lists
.
newArrayList
(
chatActivityIdList
));
Map
<
Long
,
List
<
TabGroupChatActivityJoin
>>
map
=
list
.
stream
().
collect
(
Collectors
.
groupingBy
(
TabGroupChatActivityJoin:
:
getChatActivityId
));
return
map
;
}
@Override
public
void
saveActivityJoin
(
TabGroupChatActivity
activity
,
List
<
TabGroupChatActivityJoin
>
rewardList
)
{
Long
chatActivityId
=
activity
.
getChatActivityId
();
List
<
TabGroupChatActivityJoin
>
oldJoinList
=
listByActivityId
(
chatActivityId
);
Map
<
Integer
,
TabGroupChatActivityJoin
>
oldRewardMap
=
oldJoinList
.
stream
().
collect
(
Collectors
.
toMap
(
TabGroupChatActivityJoin:
:
getIndex
,
v
->
v
));
rewardList
.
forEach
(
rule
->{
Integer
index
=
rule
.
getIndex
();
TabGroupChatActivityJoin
oldRule
=
oldRewardMap
.
get
(
index
);
if
(
oldRule
!=
null
)
{
oldRewardMap
.
remove
(
index
);
rule
.
setChatActivityJoinId
(
oldRule
.
getChatActivityJoinId
());
}
Long
chatActivityJoinId
=
rule
.
getChatActivityJoinId
();
if
(
chatActivityJoinId
==
null
)
{
rule
.
setChatActivityJoinId
(
UniqueIdUtils
.
uniqueLong
());
groupChatActivityJoinMapper
.
insert
(
rule
);
}
else
{
groupChatActivityJoinMapper
.
update
(
rule
);
}
});
oldRewardMap
.
forEach
((
k
,
v
)
->
groupChatActivityJoinMapper
.
deleteById
(
v
.
getChatActivityJoinId
()));
List
<
TabGroupChatActivityJoin
>
newJoinList
=
listByActivityId
(
chatActivityId
);
//先删除
businessManager
.
dealMemberTagByActivity
(
activity
,
null
,
true
);
for
(
TabGroupChatActivityJoin
activityJoin
:
newJoinList
)
{
//处理会员分组
businessManager
.
dealMemberTagByActivity
(
activity
,
activityJoin
,
false
);
}
}
}
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/chat/impl/GroupChatActivityRewardServiceImpl.java
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
service
.
service
.
chat
.
impl
;
import
cn.hutool.core.collection.CollectionUtil
;
import
com.gic.commons.util.UniqueIdUtils
;
import
com.gic.haoban.manage.service.dao.mapper.chat.GroupChatActivityRewardMapper
;
import
com.gic.haoban.manage.service.entity.chat.TabGroupChatActivityReward
;
import
com.gic.haoban.manage.service.pojo.bo.chat.GroupChatActivityRewardBO
;
import
com.gic.haoban.manage.service.service.chat.GroupChatActivityRewardService
;
import
com.google.common.collect.Lists
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
javax.annotation.Resource
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
/**
* 社群邀请有礼奖励规则表(TabHaobanGroupChatActivityReward)表服务实现类
...
...
@@ -14,7 +24,50 @@ import javax.annotation.Resource;
*/
@Service
(
"groupChatActivityRewardService"
)
public
class
GroupChatActivityRewardServiceImpl
implements
GroupChatActivityRewardService
{
@
Resource
@
Autowired
private
GroupChatActivityRewardMapper
groupChatActivityRewardMapper
;
@Override
public
List
<
TabGroupChatActivityReward
>
listByActivityId
(
Long
chatActivityId
)
{
if
(
chatActivityId
==
null
)
{
return
new
ArrayList
<>();
}
List
<
TabGroupChatActivityReward
>
activityRewards
=
groupChatActivityRewardMapper
.
queryByChatActivityIds
(
Lists
.
newArrayList
(
chatActivityId
));
return
activityRewards
;
}
@Override
public
Map
<
Long
,
List
<
TabGroupChatActivityReward
>>
listByActivityIdList
(
List
<
Long
>
chatActivityIdList
)
{
if
(
CollectionUtil
.
isEmpty
(
chatActivityIdList
))
{
return
new
HashMap
<>();
}
List
<
TabGroupChatActivityReward
>
list
=
groupChatActivityRewardMapper
.
queryByChatActivityIds
(
Lists
.
newArrayList
(
chatActivityIdList
));
Map
<
Long
,
List
<
TabGroupChatActivityReward
>>
map
=
list
.
stream
().
collect
(
Collectors
.
groupingBy
(
TabGroupChatActivityReward:
:
getChatActivityId
));
return
map
;
}
@Override
public
void
saveActivityReward
(
Long
chatActivityId
,
List
<
TabGroupChatActivityReward
>
rewardList
)
{
List
<
TabGroupChatActivityReward
>
oldRewardList
=
listByActivityId
(
chatActivityId
);
Map
<
GroupChatActivityRewardBO
,
TabGroupChatActivityReward
>
oldRewardMap
=
oldRewardList
.
stream
().
collect
(
Collectors
.
toMap
(
x
->
new
GroupChatActivityRewardBO
(
x
.
getChatActivityId
(),
x
.
getInviteLevel
(),
x
.
getRewardInvite
(),
x
.
getRewardType
()),
v
->
v
));
rewardList
.
forEach
(
rule
->{
GroupChatActivityRewardBO
ruleKey
=
new
GroupChatActivityRewardBO
(
rule
.
getChatActivityId
(),
rule
.
getInviteLevel
(),
rule
.
getRewardInvite
(),
rule
.
getRewardType
());
TabGroupChatActivityReward
oldRule
=
oldRewardMap
.
get
(
ruleKey
);
if
(
oldRule
!=
null
)
{
oldRewardMap
.
remove
(
ruleKey
);
rule
.
setChatActivityRewardId
(
oldRule
.
getChatActivityRewardId
());
}
Long
chatActivityRewardId
=
rule
.
getChatActivityRewardId
();
if
(
chatActivityRewardId
==
null
)
{
rule
.
setChatActivityRewardId
(
UniqueIdUtils
.
uniqueLong
());
groupChatActivityRewardMapper
.
insert
(
rule
);
}
else
{
groupChatActivityRewardMapper
.
update
(
rule
);
}
});
oldRewardMap
.
forEach
((
k
,
v
)
->
groupChatActivityRewardMapper
.
deleteById
(
v
.
getChatActivityRewardId
()));
}
}
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/chat/impl/GroupChatActivityServiceImpl.java
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
service
.
service
.
chat
.
impl
;
import
cn.hutool.core.collection.CollUtil
;
import
cn.hutool.core.collection.CollectionUtil
;
import
cn.hutool.core.date.DateTime
;
import
cn.hutool.core.date.DateUtil
;
import
com.alibaba.fastjson.JSON
;
import
com.gic.api.base.commons.BasePageInfo
;
import
com.gic.api.base.commons.BusinessException
;
import
com.gic.api.base.commons.Page
;
import
com.gic.commons.util.EntityUtil
;
import
com.gic.commons.util.PageHelperUtils
;
import
com.gic.commons.util.UniqueIdUtils
;
import
com.gic.content.api.enums.activity.ContentActivityStatusEnum
;
import
com.gic.haoban.manage.api.dto.chat.GroupChatActivityDTO
;
import
com.gic.haoban.manage.api.dto.chat.GroupChatActivityJoinDTO
;
import
com.gic.haoban.manage.api.dto.chat.GroupChatActivityRewardDTO
;
import
com.gic.haoban.manage.api.enums.chat.ChatActivityJoinEnum
;
import
com.gic.haoban.manage.api.enums.chat.ChatActivityStatusEnum
;
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.qdto.chat.GroupChatActivitySearchQDTO
;
import
com.gic.haoban.manage.service.context.chat.BusinessManager
;
import
com.gic.haoban.manage.service.dao.mapper.chat.GroupChatActivityMapper
;
import
com.gic.haoban.manage.service.entity.chat.TabGroupChatActivity
;
import
com.gic.haoban.manage.service.entity.chat.TabGroupChatActivityJoin
;
import
com.gic.haoban.manage.service.entity.chat.TabGroupChatActivityReward
;
import
com.gic.haoban.manage.service.entity.chat.TabGroupChatHm
;
import
com.gic.haoban.manage.service.service.chat.GroupChatActivityJoinService
;
import
com.gic.haoban.manage.service.service.chat.GroupChatActivityRewardService
;
import
com.gic.haoban.manage.service.service.chat.GroupChatActivityService
;
import
com.gic.redis.data.util.RedisUtil
;
import
com.github.pagehelper.PageHelper
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.apache.commons.collections.MapUtils
;
import
org.apache.logging.log4j.LogManager
;
import
org.apache.logging.log4j.Logger
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
javax.annotation.Resource
;
import
java.util.*
;
import
java.util.concurrent.TimeUnit
;
import
java.util.stream.Collectors
;
/**
* 社群邀请有礼表(TabHaobanGroupChatActivity)表服务实现类
...
...
@@ -14,6 +53,318 @@ import javax.annotation.Resource;
*/
@Service
(
"groupChatActivityService"
)
public
class
GroupChatActivityServiceImpl
implements
GroupChatActivityService
{
private
static
final
Logger
logger
=
LogManager
.
getLogger
(
GroupChatActivityService
.
class
);
private
static
final
String
ACTIVITY_KEY
=
"haoban-manage3:group_chat:activity:"
;
@Resource
private
GroupChatActivityMapper
groupChatActivityMapper
;
@Autowired
private
GroupChatActivityRewardService
groupChatActivityRewardService
;
@Autowired
private
GroupChatActivityJoinService
groupChatActivityJoinService
;
@Autowired
private
BusinessManager
businessManager
;
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
Long
saveActivity
(
GroupChatActivityQDTO
qdto
)
throws
BusinessException
{
logger
.
info
(
"保存社群活动:{}"
,
JSON
.
toJSONString
(
qdto
));
boolean
save
=
false
;
Long
contentActivityId
=
qdto
.
getChatActivityId
();
String
enterpriseId
=
qdto
.
getEnterpriseId
();
String
wxEnterpriseId
=
qdto
.
getWxEnterpriseId
();
GroupChatActivityDTO
activityDTO
=
null
;
if
(
contentActivityId
==
null
)
{
save
=
true
;
}
else
{
activityDTO
=
getActivityDetail
(
enterpriseId
,
contentActivityId
);
}
//校验活动参数
checkActivity
(
save
,
qdto
,
activityDTO
);
TabGroupChatActivity
activity
=
EntityUtil
.
changeEntity
(
TabGroupChatActivity
.
class
,
qdto
);
if
(
contentActivityId
==
null
)
{
activity
.
setChatActivityId
(
UniqueIdUtils
.
uniqueLong
());
groupChatActivityMapper
.
insert
(
activity
);
}
else
{
groupChatActivityMapper
.
update
(
activity
);
}
List
<
GroupChatActivityRewardDTO
>
ruleList
=
qdto
.
getRewardList
();
List
<
TabGroupChatActivityReward
>
activityRewards
=
EntityUtil
.
changeEntityListNew
(
TabGroupChatActivityReward
.
class
,
ruleList
);
activityRewards
.
forEach
(
rule
->{
rule
.
setEnterpriseId
(
enterpriseId
);
rule
.
setWxEnterpriseId
(
wxEnterpriseId
);
rule
.
setChatActivityId
(
activity
.
getChatActivityId
());
});
//保存活动奖励规则
groupChatActivityRewardService
.
saveActivityReward
(
activity
.
getChatActivityId
(),
activityRewards
);
List
<
GroupChatActivityJoinQDTO
>
joinList
=
qdto
.
getJoinList
();
if
(
CollectionUtils
.
isNotEmpty
(
joinList
))
{
List
<
TabGroupChatActivityJoin
>
activityJoins
=
EntityUtil
.
changeEntityListNew
(
TabGroupChatActivityJoin
.
class
,
joinList
);
activityJoins
.
forEach
(
rule
->{
rule
.
setEnterpriseId
(
enterpriseId
);
rule
.
setWxEnterpriseId
(
wxEnterpriseId
);
rule
.
setChatActivityId
(
activity
.
getChatActivityId
());
});
//保存活动入群规则
groupChatActivityJoinService
.
saveActivityJoin
(
activity
,
activityJoins
);
}
activityDTO
=
getActivityDetail
(
enterpriseId
,
activity
.
getChatActivityId
());
//处理卡券异常通知
businessManager
.
dealCouponAlarmByActivity
(
activityDTO
,
false
);
return
activity
.
getChatActivityId
();
}
private
void
checkActivity
(
boolean
save
,
GroupChatActivityQDTO
qdto
,
GroupChatActivityDTO
activity
)
throws
BusinessException
{
Long
chatActivityId
=
qdto
.
getChatActivityId
();
String
enterpriseId
=
qdto
.
getEnterpriseId
();
qdto
.
setEndDate
(
DateUtil
.
endOfDay
(
qdto
.
getEndDate
()));
Date
startDate
=
qdto
.
getStartDate
();
List
<
GroupChatActivityRewardDTO
>
rewardList
=
qdto
.
getRewardList
();
if
(
CollectionUtils
.
isEmpty
(
rewardList
))
{
throw
new
BusinessException
(
"500"
,
"奖励规则不能为空"
);
}
List
<
GroupChatActivityJoinQDTO
>
joinList
=
qdto
.
getJoinList
();
Integer
joinType
=
qdto
.
getJoinType
();
if
(
Objects
.
equals
(
joinType
,
ChatActivityJoinEnum
.
ORIENTED
.
value
)
&&
CollectionUtils
.
isEmpty
(
joinList
))
{
throw
new
BusinessException
(
"500"
,
"入群规则不能为空"
);
}
DateTime
now
=
DateUtil
.
date
();
if
(!
save
)
{
if
(
activity
==
null
)
{
throw
new
BusinessException
(
"500"
,
"营销活动不存在"
);
}
Integer
status
=
activity
.
getStatus
();
if
(
Objects
.
equals
(
ChatActivityStatusEnum
.
STOP
.
value
,
status
))
{
throw
new
BusinessException
(
"500"
,
"活动已终止,不支持编辑"
);
}
if
(
Objects
.
equals
(
ChatActivityStatusEnum
.
END
.
value
,
status
))
{
throw
new
BusinessException
(
"500"
,
"活动已结束,不支持编辑"
);
}
if
(
Objects
.
equals
(
ChatActivityStatusEnum
.
START
.
value
,
status
))
{
if
(!
Objects
.
equals
(
qdto
.
getStartDate
(),
activity
.
getStartDate
()))
{
throw
new
BusinessException
(
"500"
,
"活动已开始,活动开始时间不支持编辑"
);
}
if
(
DateUtil
.
compare
(
activity
.
getEndDate
(),
qdto
.
getEndDate
())
>
0
)
{
throw
new
BusinessException
(
"500"
,
"活动已开始,活动结束时间不允许小于之前的时间"
);
}
String
labelJson
=
activity
.
getLabelJson
();
Integer
labelFlag
=
activity
.
getLabelFlag
();
if
(!
Objects
.
equals
(
qdto
.
getLabelFlag
(),
labelFlag
)
||
!
Objects
.
equals
(
qdto
.
getLabelJson
(),
labelJson
))
{
throw
new
BusinessException
(
"500"
,
"活动已开始,客户标签不支持编辑"
);
}
Integer
inviteMemberType
=
activity
.
getInviteMemberType
();
if
(!
Objects
.
equals
(
qdto
.
getInviteMemberType
(),
inviteMemberType
))
{
throw
new
BusinessException
(
"500"
,
"活动已开始,限制入群客户不支持编辑"
);
}
Integer
inviteType
=
activity
.
getInviteType
();
if
(!
Objects
.
equals
(
qdto
.
getInviteType
(),
inviteType
))
{
throw
new
BusinessException
(
"500"
,
"活动已开始,有效邀请限制不支持编辑"
);
}
Integer
inviteRewardType
=
activity
.
getInviteRewardType
();
if
(!
Objects
.
equals
(
qdto
.
getInviteRewardType
(),
inviteRewardType
))
{
throw
new
BusinessException
(
"500"
,
"活动已开始,奖励类型不支持编辑"
);
}
List
<
GroupChatActivityRewardDTO
>
oldRewardList
=
activity
.
getRewardList
();
if
(!
CollUtil
.
isEqualList
(
oldRewardList
,
rewardList
))
{
throw
new
BusinessException
(
"500"
,
"活动已开始,奖励规则不支持编辑"
);
}
if
(!
Objects
.
equals
(
qdto
.
getJoinType
(),
activity
.
getJoinType
()))
{
throw
new
BusinessException
(
"500"
,
"活动已开始,入群方式不支持编辑"
);
}
if
(!
Objects
.
equals
(
qdto
.
getJoinRule
(),
activity
.
getJoinRule
()))
{
throw
new
BusinessException
(
"500"
,
"活动已开始,入群方式层级规则不支持编辑"
);
}
List
<
GroupChatActivityJoinDTO
>
oldJoinList
=
activity
.
getJoinList
();
if
(!
CollUtil
.
isEqualList
(
oldJoinList
,
EntityUtil
.
changeEntityListNew
(
GroupChatActivityJoinDTO
.
class
,
joinList
)))
{
throw
new
BusinessException
(
"500"
,
"活动已开始,入群规则不支持编辑"
);
}
}
}
else
{
if
(
DateUtil
.
compare
(
DateUtil
.
beginOfDay
(
now
),
startDate
)
>
0
)
{
throw
new
BusinessException
(
"500"
,
"活动仅支持选择当前日期及之后的日期"
);
}
}
Date
endDate
=
qdto
.
getEndDate
();
if
(
DateUtil
.
compare
(
now
,
endDate
)
>
0
||
DateUtil
.
compare
(
startDate
,
endDate
)
>
0
)
{
throw
new
BusinessException
(
"500"
,
"活动仅支持选择当前日期及之后的日期,结束时间必须晚于开始日期"
);
}
if
(
DateUtil
.
compare
(
now
,
startDate
)
>
0
)
{
qdto
.
setStatus
(
ChatActivityStatusEnum
.
START
.
value
);
}
else
if
(
DateUtil
.
compare
(
startDate
,
now
)
>=
0
)
{
qdto
.
setStatus
(
ChatActivityStatusEnum
.
NOT_START
.
value
);
}
}
@Override
public
GroupChatActivityDTO
getActivityDetail
(
String
enterpriseId
,
Long
chatActivityId
)
{
TabGroupChatActivity
chatActivity
=
groupChatActivityMapper
.
queryById
(
chatActivityId
);
if
(
chatActivity
==
null
)
{
return
null
;
}
GroupChatActivityDTO
chatActivityDTO
=
EntityUtil
.
changeEntityNew
(
GroupChatActivityDTO
.
class
,
chatActivity
);
//组装奖励规则
List
<
TabGroupChatActivityReward
>
activityRewards
=
groupChatActivityRewardService
.
listByActivityId
(
chatActivityId
);
List
<
GroupChatActivityRewardDTO
>
rewardList
=
EntityUtil
.
changeEntityListNew
(
GroupChatActivityRewardDTO
.
class
,
activityRewards
);
chatActivityDTO
.
setRewardList
(
rewardList
);
//组装奖励规则
List
<
TabGroupChatActivityJoin
>
activityJoins
=
groupChatActivityJoinService
.
listByActivityId
(
chatActivityId
);
List
<
GroupChatActivityJoinDTO
>
joinList
=
EntityUtil
.
changeEntityListNew
(
GroupChatActivityJoinDTO
.
class
,
activityJoins
);
chatActivityDTO
.
setJoinList
(
joinList
);
return
chatActivityDTO
;
}
@Override
public
void
delActivityDetailCache
(
String
enterpriseId
,
Long
chatActivityId
)
{
String
activityKey
=
ACTIVITY_KEY
+
chatActivityId
;
RedisUtil
.
delCache
(
activityKey
);
}
@Override
public
GroupChatActivityDTO
getActivityDetailCache
(
String
enterpriseId
,
Long
chatActivityId
)
{
String
activityKey
=
ACTIVITY_KEY
+
chatActivityId
;
GroupChatActivityDTO
cache
=
RedisUtil
.
getCache
(
activityKey
,
GroupChatActivityDTO
.
class
);
if
(
cache
!=
null
)
{
return
cache
;
}
GroupChatActivityDTO
activityDetail
=
getActivityDetail
(
enterpriseId
,
chatActivityId
);
if
(
activityDetail
==
null
)
{
return
null
;
}
RedisUtil
.
setCache
(
activityKey
,
activityDetail
,
1L
,
TimeUnit
.
HOURS
);
return
activityDetail
;
}
@Override
public
List
<
TabGroupChatActivity
>
listByActivityIds
(
String
enterpriseId
,
List
<
Long
>
chatActivityIdList
)
{
List
<
TabGroupChatActivity
>
chatActivities
=
groupChatActivityMapper
.
queryByIds
(
chatActivityIdList
);
return
chatActivities
;
}
@Override
public
List
<
TabGroupChatActivity
>
listByActivityIdsDel
(
String
enterpriseId
,
List
<
Long
>
chatActivityIdList
)
{
List
<
TabGroupChatActivity
>
chatActivities
=
groupChatActivityMapper
.
queryByIdsDel
(
chatActivityIdList
);
return
chatActivities
;
}
@Override
public
Page
<
GroupChatActivityDTO
>
pageActivity
(
String
enterpriseId
,
GroupChatActivitySearchQDTO
searchQDTO
,
BasePageInfo
pageInfo
)
{
PageHelper
.
startPage
(
pageInfo
);
List
<
TabGroupChatActivity
>
list
=
groupChatActivityMapper
.
listActivity
(
enterpriseId
,
searchQDTO
);
Page
<
GroupChatActivityDTO
>
page
=
PageHelperUtils
.
changePageHelperToCurrentPage
(
list
,
GroupChatActivityDTO
.
class
);
List
<
GroupChatActivityDTO
>
result
=
page
.
getResult
();
if
(
CollectionUtil
.
isNotEmpty
(
result
))
{
List
<
Long
>
activityIdList
=
result
.
stream
().
map
(
GroupChatActivityDTO:
:
getChatActivityId
).
collect
(
Collectors
.
toList
());
Map
<
Long
,
List
<
TabGroupChatActivityReward
>>
rewardMap
=
groupChatActivityRewardService
.
listByActivityIdList
(
activityIdList
);
if
(
MapUtils
.
isNotEmpty
(
rewardMap
))
{
result
.
forEach
(
activity
->{
List
<
TabGroupChatActivityReward
>
activityRewards
=
rewardMap
.
get
(
activity
.
getChatActivityId
());
if
(
CollectionUtils
.
isNotEmpty
(
activityRewards
))
{
activity
.
setRewardList
(
EntityUtil
.
changeEntityListNew
(
GroupChatActivityRewardDTO
.
class
,
activityRewards
));
}
});
}
}
return
page
;
}
@Override
public
GroupChatActivityDTO
stopActivity
(
String
enterpriseId
,
Long
chatActivityId
)
throws
BusinessException
{
GroupChatActivityDTO
detail
=
getActivityDetail
(
enterpriseId
,
chatActivityId
);
if
(
detail
==
null
)
{
return
null
;
}
Integer
status
=
detail
.
getStatus
();
if
(
Objects
.
equals
(
status
,
ChatActivityStatusEnum
.
STOP
.
value
)
||
Objects
.
equals
(
status
,
ChatActivityStatusEnum
.
END
.
value
))
{
throw
new
BusinessException
(
"500"
,
"已终止或已结束的活动无法终止"
);
}
TabGroupChatActivity
chatActivity
=
new
TabGroupChatActivity
();
chatActivity
.
setChatActivityId
(
chatActivityId
);
chatActivity
.
setStatus
(
ChatActivityStatusEnum
.
STOP
.
value
);
chatActivity
.
setLimitDate
(
DateUtil
.
date
());
groupChatActivityMapper
.
update
(
chatActivity
);
detail
.
setStatus
(
ChatActivityStatusEnum
.
STOP
.
value
);
//处理会员分组
businessManager
.
dealMemberTagByActivity
(
EntityUtil
.
changeEntityNew
(
TabGroupChatActivity
.
class
,
detail
),
null
,
true
);
//处理卡券异常通知
businessManager
.
dealCouponAlarmByActivity
(
detail
,
true
);
return
detail
;
}
@Override
public
void
delActivity
(
String
enterpriseId
,
Long
chatActivityId
)
throws
BusinessException
{
int
update
=
groupChatActivityMapper
.
deleteById
(
enterpriseId
,
chatActivityId
);
if
(
update
<=
0
)
{
throw
new
BusinessException
(
"500"
,
"活动已删除"
);
}
}
@Override
public
void
updateStatusActivity
(
String
enterpriseId
,
Long
chatActivityId
,
Integer
status
)
{
TabGroupChatActivity
chatActivity
=
new
TabGroupChatActivity
();
chatActivity
.
setChatActivityId
(
chatActivityId
);
chatActivity
.
setStatus
(
status
);
groupChatActivityMapper
.
update
(
chatActivity
);
delActivityDetailCache
(
enterpriseId
,
chatActivityId
);
}
@Override
public
List
<
TabGroupChatActivity
>
listEffectiveActivity
(
String
enterpriseId
)
{
GroupChatActivitySearchQDTO
searchQDTO
=
new
GroupChatActivitySearchQDTO
();
searchQDTO
.
setStatus
(
ChatActivityStatusEnum
.
START
.
value
);
List
<
TabGroupChatActivity
>
list
=
groupChatActivityMapper
.
listActivity
(
enterpriseId
,
searchQDTO
);
return
list
;
}
@Override
public
void
activityQuartzUpdateStatus
()
{
Date
now
=
DateUtil
.
date
();
logger
.
info
(
"处理活动状态:{}"
,
now
);
TabGroupChatActivity
startSearchQDTO
=
new
TabGroupChatActivity
();
startSearchQDTO
.
setStatus
(
ChatActivityStatusEnum
.
NOT_START
.
value
);
startSearchQDTO
.
setStartDate
(
DateUtil
.
beginOfDay
(
now
));
List
<
TabGroupChatActivity
>
startList
=
groupChatActivityMapper
.
listActivityByDate
(
startSearchQDTO
);
if
(
CollectionUtils
.
isNotEmpty
(
startList
))
{
for
(
TabGroupChatActivity
activity
:
startList
)
{
updateStatusActivity
(
activity
.
getEnterpriseId
(),
activity
.
getChatActivityId
(),
ContentActivityStatusEnum
.
START
.
value
);
}
}
TabGroupChatActivity
endSearchQDTO
=
new
TabGroupChatActivity
();
endSearchQDTO
.
setStatus
(
ChatActivityStatusEnum
.
START
.
value
);
endSearchQDTO
.
setEndDate
(
DateUtil
.
endOfDay
(
DateUtil
.
offsetDay
(
now
,
-
1
)));
List
<
TabGroupChatActivity
>
endList
=
groupChatActivityMapper
.
listActivityByDate
(
endSearchQDTO
);
if
(
CollectionUtils
.
isNotEmpty
(
endList
))
{
for
(
TabGroupChatActivity
activity
:
endList
)
{
updateStatusActivity
(
activity
.
getEnterpriseId
(),
activity
.
getChatActivityId
(),
ContentActivityStatusEnum
.
END
.
value
);
//处理会员分组
businessManager
.
dealMemberTagByActivity
(
activity
,
null
,
true
);
GroupChatActivityDTO
activityDTO
=
EntityUtil
.
changeEntityNew
(
GroupChatActivityDTO
.
class
,
activity
);
//处理卡券异常通知
businessManager
.
dealCouponAlarmByActivity
(
activityDTO
,
true
);
}
}
}
@Override
public
List
<
TabGroupChatHm
>
listHm
(
GroupChatActivityHmQDTO
activityHmQDTO
)
{
Long
chatActivityId
=
activityHmQDTO
.
getChatActivityId
();
TabGroupChatActivity
chatActivity
=
groupChatActivityMapper
.
queryById
(
chatActivityId
);
if
(
chatActivity
==
null
)
{
return
Collections
.
emptyList
();
}
Integer
joinType
=
chatActivity
.
getJoinType
();
if
(
Objects
.
equals
(
ChatActivityJoinEnum
.
RULE
.
value
,
joinType
))
{
}
return
Collections
.
emptyList
();
}
}
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/chat/impl/GroupChatActivityShareBindServiceImpl.java
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
service
.
service
.
chat
.
impl
;
import
com.alibaba.fastjson.JSON
;
import
com.gic.commons.util.UniqueIdUtils
;
import
com.gic.haoban.manage.api.enums.chat.ChatActivityStatusEnum
;
import
com.gic.haoban.manage.service.dao.mapper.chat.GroupChatActivityMapper
;
import
com.gic.haoban.manage.service.dao.mapper.chat.GroupChatActivityShareBindMapper
;
import
com.gic.haoban.manage.service.entity.chat.TabGroupChatActivity
;
import
com.gic.haoban.manage.service.entity.chat.TabGroupChatActivityShareBind
;
import
com.gic.haoban.manage.service.service.chat.GroupChatActivityShareBindService
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.logging.log4j.LogManager
;
import
org.apache.logging.log4j.Logger
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
javax.annotation.Resource
;
import
java.util.List
;
import
java.util.Objects
;
/**
* 社群邀请有礼邀请人和受邀人绑定表(TabHaobanGroupChatActivityShareBind)表服务实现类
...
...
@@ -14,7 +25,41 @@ import javax.annotation.Resource;
*/
@Service
(
"groupChatActivityShareBindService"
)
public
class
GroupChatActivityShareBindServiceImpl
implements
GroupChatActivityShareBindService
{
@Resource
private
static
final
Logger
logger
=
LogManager
.
getLogger
(
GroupChatActivityShareBindService
.
class
);
@Autowired
private
GroupChatActivityShareBindMapper
groupChatActivityShareBindMapper
;
@Autowired
private
GroupChatActivityMapper
groupChatActivityMapper
;
@Override
public
void
shareBing
(
TabGroupChatActivityShareBind
shareBind
)
{
logger
.
info
(
"绑定分享关系参数:{}"
,
JSON
.
toJSONString
(
shareBind
));
Long
chatActivityId
=
shareBind
.
getChatActivityId
();
String
inviteeUnionId
=
shareBind
.
getInviteeUnionId
();
String
inviterMemberId
=
shareBind
.
getInviterMemberId
();
if
(
chatActivityId
==
null
||
StringUtils
.
isAnyBlank
(
inviteeUnionId
,
inviterMemberId
))
{
logger
.
info
(
"绑定分享关系参数异常"
);
return
;
}
TabGroupChatActivity
chatActivity
=
groupChatActivityMapper
.
queryById
(
chatActivityId
);
if
(
chatActivity
==
null
)
{
return
;
}
Integer
status
=
chatActivity
.
getStatus
();
if
(
Objects
.
equals
(
status
,
ChatActivityStatusEnum
.
END
.
value
)
||
Objects
.
equals
(
status
,
ChatActivityStatusEnum
.
STOP
.
value
))
{
logger
.
info
(
"活动已结束"
);
return
;
}
shareBind
.
setEnterpriseId
(
chatActivity
.
getEnterpriseId
());
shareBind
.
setWxEnterpriseId
(
chatActivity
.
getWxEnterpriseId
());
shareBind
.
setChatActivityBindId
(
UniqueIdUtils
.
uniqueLong
());
groupChatActivityShareBindMapper
.
insert
(
shareBind
);
}
@Override
public
List
<
TabGroupChatActivityShareBind
>
getLast
(
String
inviteeUnionId
)
{
return
groupChatActivityShareBindMapper
.
query24Record
(
inviteeUnionId
);
}
}
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/out/impl/chat/GroupChatActivityApiServiceImpl.java
0 → 100644
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
service
.
service
.
out
.
impl
.
chat
;
import
com.gic.api.base.commons.BasePageInfo
;
import
com.gic.api.base.commons.BusinessException
;
import
com.gic.api.base.commons.Page
;
import
com.gic.api.base.commons.ServiceResponse
;
import
com.gic.commons.util.EntityUtil
;
import
com.gic.haoban.manage.api.dto.chat.GroupChatActivityBaseDTO
;
import
com.gic.haoban.manage.api.dto.chat.GroupChatActivityDTO
;
import
com.gic.haoban.manage.api.qdto.chat.GroupChatActivityQDTO
;
import
com.gic.haoban.manage.api.qdto.chat.GroupChatActivitySearchQDTO
;
import
com.gic.haoban.manage.api.service.chat.GroupChatActivityApiService
;
import
com.gic.haoban.manage.service.entity.chat.TabGroupChatActivity
;
import
com.gic.haoban.manage.service.service.chat.GroupChatActivityService
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.List
;
/**
* Created by wangzubo on 2022/11/1.
*/
@Service
(
"groupChatActivityApiService"
)
public
class
GroupChatActivityApiServiceImpl
implements
GroupChatActivityApiService
{
@Autowired
private
GroupChatActivityService
activityService
;
@Override
public
ServiceResponse
<
Long
>
saveActivity
(
GroupChatActivityQDTO
qdto
)
{
if
(
StringUtils
.
isAnyBlank
(
qdto
.
getEnterpriseId
(),
qdto
.
getWxEnterpriseId
(),
qdto
.
getCreatorId
(),
qdto
.
getCreatorName
(),
qdto
.
getActivityName
()))
{
return
ServiceResponse
.
failure
(
"500"
,
"参数异常"
);
}
try
{
Long
chatActivityId
=
activityService
.
saveActivity
(
qdto
);
activityService
.
delActivityDetailCache
(
qdto
.
getEnterpriseId
(),
chatActivityId
);
return
ServiceResponse
.
success
(
chatActivityId
);
}
catch
(
BusinessException
e
)
{
return
ServiceResponse
.
failure
(
e
.
getCode
(),
e
.
getMessage
());
}
}
@Override
public
ServiceResponse
<
GroupChatActivityDTO
>
getActivityDetail
(
String
enterpriseId
,
Long
chatActivityId
)
{
if
(
StringUtils
.
isBlank
(
enterpriseId
)
||
chatActivityId
==
null
)
{
return
ServiceResponse
.
failure
(
"500"
,
"参数异常"
);
}
GroupChatActivityDTO
activityDetail
=
activityService
.
getActivityDetail
(
enterpriseId
,
chatActivityId
);
return
ServiceResponse
.
success
(
activityDetail
);
}
@Override
public
ServiceResponse
<
GroupChatActivityDTO
>
getActivityDetailCache
(
String
enterpriseId
,
Long
chatActivityId
)
{
if
(
StringUtils
.
isBlank
(
enterpriseId
)
||
chatActivityId
==
null
)
{
return
ServiceResponse
.
failure
(
"500"
,
"参数异常"
);
}
GroupChatActivityDTO
activityDetail
=
activityService
.
getActivityDetailCache
(
enterpriseId
,
chatActivityId
);
return
ServiceResponse
.
success
(
activityDetail
);
}
@Override
public
ServiceResponse
<
List
<
GroupChatActivityBaseDTO
>>
listByActivityIds
(
String
enterpriseId
,
List
<
Long
>
chatActivityIdList
)
{
if
(
StringUtils
.
isBlank
(
enterpriseId
)
||
CollectionUtils
.
isEmpty
(
chatActivityIdList
))
{
return
ServiceResponse
.
failure
(
"500"
,
"参数异常"
);
}
List
<
TabGroupChatActivity
>
list
=
activityService
.
listByActivityIds
(
enterpriseId
,
chatActivityIdList
);
return
ServiceResponse
.
success
(
EntityUtil
.
changeEntityListNew
(
GroupChatActivityBaseDTO
.
class
,
list
));
}
@Override
public
ServiceResponse
<
List
<
GroupChatActivityBaseDTO
>>
listByActivityIdsDel
(
String
enterpriseId
,
List
<
Long
>
chatActivityIdList
)
{
if
(
StringUtils
.
isBlank
(
enterpriseId
)
||
CollectionUtils
.
isEmpty
(
chatActivityIdList
))
{
return
ServiceResponse
.
failure
(
"500"
,
"参数异常"
);
}
List
<
TabGroupChatActivity
>
list
=
activityService
.
listByActivityIdsDel
(
enterpriseId
,
chatActivityIdList
);
return
ServiceResponse
.
success
(
EntityUtil
.
changeEntityListNew
(
GroupChatActivityBaseDTO
.
class
,
list
));
}
@Override
public
ServiceResponse
<
Page
<
GroupChatActivityDTO
>>
pageActivity
(
String
enterpriseId
,
GroupChatActivitySearchQDTO
searchQDTO
,
BasePageInfo
pageInfo
)
{
if
(
StringUtils
.
isBlank
(
enterpriseId
))
{
return
ServiceResponse
.
failure
(
"500"
,
"参数异常"
);
}
Page
<
GroupChatActivityDTO
>
page
=
activityService
.
pageActivity
(
enterpriseId
,
searchQDTO
,
pageInfo
);
return
ServiceResponse
.
success
(
page
);
}
@Override
public
ServiceResponse
<
GroupChatActivityDTO
>
stopActivity
(
String
enterpriseId
,
Long
chatActivityId
)
{
if
(
StringUtils
.
isBlank
(
enterpriseId
)
||
chatActivityId
==
null
)
{
return
ServiceResponse
.
failure
(
"500"
,
"参数异常"
);
}
try
{
GroupChatActivityDTO
activityDTO
=
activityService
.
stopActivity
(
enterpriseId
,
chatActivityId
);
activityService
.
delActivityDetailCache
(
enterpriseId
,
chatActivityId
);
return
ServiceResponse
.
success
(
activityDTO
);
}
catch
(
BusinessException
e
)
{
return
ServiceResponse
.
failure
(
e
.
getCode
(),
e
.
getMessage
());
}
}
@Override
public
ServiceResponse
<
Void
>
delActivity
(
String
enterpriseId
,
Long
chatActivityId
)
{
if
(
StringUtils
.
isBlank
(
enterpriseId
)
||
chatActivityId
==
null
)
{
return
ServiceResponse
.
failure
(
"500"
,
"参数异常"
);
}
try
{
activityService
.
delActivity
(
enterpriseId
,
chatActivityId
);
activityService
.
delActivityDetailCache
(
enterpriseId
,
chatActivityId
);
return
ServiceResponse
.
success
();
}
catch
(
BusinessException
e
)
{
return
ServiceResponse
.
failure
(
e
.
getCode
(),
e
.
getMessage
());
}
}
}
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/out/impl/chat/GroupChatActivityShareServiceImpl.java
0 → 100644
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
service
.
service
.
out
.
impl
.
chat
;
import
com.gic.api.base.commons.ServiceResponse
;
import
com.gic.commons.util.EntityUtil
;
import
com.gic.haoban.manage.api.qdto.chat.GroupChatActivityShareBindQDTO
;
import
com.gic.haoban.manage.api.service.chat.GroupChatActivityShareApiService
;
import
com.gic.haoban.manage.service.entity.chat.TabGroupChatActivityShareBind
;
import
com.gic.haoban.manage.service.service.chat.GroupChatActivityShareBindService
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
@Service
(
"groupChatActivityShareApiService"
)
public
class
GroupChatActivityShareServiceImpl
implements
GroupChatActivityShareApiService
{
@Autowired
private
GroupChatActivityShareBindService
activityShareBindService
;
@Override
public
ServiceResponse
<
Void
>
shareBing
(
GroupChatActivityShareBindQDTO
shareBind
)
{
String
enterpriseId
=
shareBind
.
getEnterpriseId
();
Long
chatActivityId
=
shareBind
.
getChatActivityId
();
String
inviterMemberId
=
shareBind
.
getInviterMemberId
();
String
inviteeUnionId
=
shareBind
.
getInviteeUnionId
();
if
(
chatActivityId
==
null
||
StringUtils
.
isAnyBlank
(
enterpriseId
,
inviteeUnionId
,
inviterMemberId
))
{
return
ServiceResponse
.
failure
(
"500"
,
"参数异常"
);
}
TabGroupChatActivityShareBind
bind
=
EntityUtil
.
changeEntityNew
(
TabGroupChatActivityShareBind
.
class
,
shareBind
);
activityShareBindService
.
shareBing
(
bind
);
return
ServiceResponse
.
success
();
}
}
haoban-manage3-service/src/main/resources/dubbo-haoban-manage-service.xml
View file @
e967f0a7
...
...
@@ -28,6 +28,7 @@
<dubbo:service
interface=
"com.gic.haoban.manage.api.service.chat.GroupChatPlanApiService"
ref=
"groupChatPlanApiService"
timeout=
"10000"
/>
<dubbo:service
interface=
"com.gic.haoban.manage.api.service.chat.GroupChatHmApiService"
ref=
"groupChatHmApiService"
timeout=
"10000"
/>
<dubbo:service
interface=
"com.gic.haoban.manage.api.service.chat.GroupChatApiService"
ref=
"groupChatApiService"
timeout=
"10000"
/>
<dubbo:service
interface=
"com.gic.haoban.manage.api.service.chat.GroupChatActivityApiService"
ref=
"groupChatActivityApiService"
timeout=
"10000"
/>
<dubbo:service
interface=
"com.gic.haoban.manage.api.service.HaobanCommonMQApiService"
ref=
"haobanCommonMQApiService"
timeout=
"10000"
/>
<dubbo:service
interface=
"com.gic.haoban.manage.api.service.hm.WxUserAddLogApiService"
ref=
"wxUserAddLogApiService"
timeout=
"10000"
/>
<dubbo:service
interface=
"com.gic.haoban.manage.api.service.KeyDataApiService"
ref=
"keyDataApiService"
timeout=
"10000"
/>
...
...
@@ -198,6 +199,7 @@
<dubbo:reference
interface=
"com.gic.wechat.api.service.qywx.QywxExternalUserService"
id=
"qywxExternalUserService"
/>
<dubbo:reference
interface=
"com.gic.marketing.api.service.SmsService"
id=
"smsService"
timeout=
"10000"
retries=
"0"
/>
<dubbo:reference
interface=
"com.gic.marketing.api.service.AccountOverdueSmsSendService"
id=
"accountOverdueSmsSendService"
timeout=
"10000"
retries=
"0"
/>
<dubbo:reference
interface=
"com.gic.marketing.api.service.CouponReferAlarmService"
id=
"couponReferAlarmService"
retries=
"0"
check=
"false"
/>
<dubbo:reference
interface=
"com.gic.thirdparty.api.service.VoiceService"
id=
"voiceService"
timeout=
"10000"
retries=
"0"
/>
<dubbo:reference
interface=
"com.gic.thirdparty.api.service.CommunicationService"
id=
"communicationService"
timeout=
"10000"
retries=
"0"
/>
...
...
@@ -206,6 +208,7 @@
<dubbo:reference
interface=
"com.gic.wechat.api.service.qywx.QywxChatApiService"
id=
"qywxChatApiService"
timeout=
"10000"
retries=
"0"
/>
<dubbo:reference
interface=
"com.gic.member.tag.api.service.MemberTagGroupApiService"
id=
"memberTagGroupApiService"
timeout=
"10000"
retries=
"0"
/>
<dubbo:reference
interface=
"com.gic.enterprise.api.service.ScreeningDetailService"
id=
"screeningDetailService"
timeout=
"10000"
retries=
"0"
/>
<dubbo:reference
interface=
"com.gic.member.tag.api.service.MemberTagBusinessGroupApiService"
id=
"memberTagBusinessGroupApiService"
timeout=
"100000"
retries=
"0"
check=
"false"
/>
<dubbo:reference
interface=
"com.gic.wechat.api.service.qywx.QywxOrderApiService"
id=
"qywxOrderApiService"
timeout=
"10000"
retries=
"0"
/>
<dubbo:reference
id=
"pay4WXService"
interface=
"com.gic.thirdparty.api.service.Pay4WXService"
timeout=
"10000"
retries=
"0"
check=
"false"
/>
...
...
haoban-manage3-service/src/main/resources/mapper/chat/GroupChatActivityInviteLogMapper.xml
View file @
e967f0a7
...
...
@@ -88,15 +88,6 @@
<if
test=
"wxEnterpriseId != null and wxEnterpriseId != ''"
>
and wx_enterprise_id = #{wxEnterpriseId}
</if>
<if
test=
"createTime != null"
>
and create_time = #{createTime}
</if>
<if
test=
"updateTime != null"
>
and update_time = #{updateTime}
</if>
<if
test=
"deleteFlag != null"
>
and delete_flag = #{deleteFlag}
</if>
</where>
limit #{pageable.offset}, #{pageable.pageSize}
</select>
...
...
@@ -148,67 +139,19 @@
<if
test=
"wxEnterpriseId != null and wxEnterpriseId != ''"
>
and wx_enterprise_id = #{wxEnterpriseId}
</if>
<if
test=
"createTime != null"
>
and create_time = #{createTime}
</if>
<if
test=
"updateTime != null"
>
and update_time = #{updateTime}
</if>
<if
test=
"deleteFlag != null"
>
and delete_flag = #{deleteFlag}
</if>
</where>
</select>
<!--新增所有列-->
<insert
id=
"insert"
keyProperty=
"chatActivityInviteId"
useGeneratedKeys=
"true"
>
insert into tab_haoban_group_chat_activity_invite_log(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)
values (#{chatActivityId}, #{inviterMemberId}, #{inviteeMemberId}, #{inviteeUserId}, #{userName}, #{nickName},
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,
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},
#{groupChatId}, #{inviteType}, #{invalidInviteType}, #{addMemberType}, #{batchNumber}, #{enterpriseId},
#{wxEnterpriseId}
, #{createTime}, #{updateTime}, #{deleteFlag}
)
#{wxEnterpriseId})
</insert>
<insert
id=
"insertBatch"
keyProperty=
"chatActivityInviteId"
useGeneratedKeys=
"true"
>
insert into tab_haoban_group_chat_activity_invite_log(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)
values
<foreach
collection=
"list"
item=
"item"
separator=
","
>
(#{item.chatActivityId}, #{item.inviterMemberId}, #{item.inviteeMemberId}, #{item.inviteeUserId},
#{item.userName},
#{item.nickName}, #{item.groupChatId}, #{item.inviteType}, #{item.invalidInviteType}, #{item.addMemberType},
#{item.batchNumber}, #{item.enterpriseId}, #{item.wxEnterpriseId}, #{item.createTime}, #{item.updateTime},
#{item.deleteFlag})
</foreach>
</insert>
<!-- 修改所有列 -->
<update
id=
"update"
>
update tab_haoban_group_chat_activity_invite_log
set chat_activity_id = #{chatActivityId},
inviter_member_id = #{inviterMemberId},
invitee_member_id = #{inviteeMemberId},
invitee_user_id = #{inviteeUserId},
user_name = #{userName},
nick_name = #{nickName},
group_chat_id = #{groupChatId},
invite_type = #{inviteType},
invalid_invite_type = #{invalidInviteType},
add_member_type = #{addMemberType},
batch_number = #{batchNumber},
enterprise_id = #{enterpriseId},
wx_enterprise_id = #{wxEnterpriseId},
create_time = #{createTime},
update_time = #{updateTime},
delete_flag = #{deleteFlag}
where chat_activity_invite_id = #{chatActivityInviteId}
</update>
<!--通过主键删除-->
<delete
id=
"deleteById"
>
...
...
haoban-manage3-service/src/main/resources/mapper/chat/GroupChatActivityJoinMapper.xml
View file @
e967f0a7
...
...
@@ -7,6 +7,7 @@
<result
property=
"memberType"
column=
"member_type"
jdbcType=
"INTEGER"
/>
<result
property=
"filterJson"
column=
"filter_json"
jdbcType=
"VARCHAR"
/>
<result
property=
"index"
column=
"index"
jdbcType=
"INTEGER"
/>
<result
property=
"chatHmId"
column=
"chat_hm_id"
jdbcType=
"INTEGER"
/>
<result
property=
"enterpriseId"
column=
"enterprise_id"
jdbcType=
"VARCHAR"
/>
<result
property=
"wxEnterpriseId"
column=
"wx_enterprise_id"
jdbcType=
"VARCHAR"
/>
<result
property=
"createTime"
column=
"create_time"
jdbcType=
"TIMESTAMP"
/>
...
...
@@ -16,15 +17,26 @@
<!--查询单个-->
<select
id=
"queryById"
resultMap=
"TabHaobanGroupChatActivityJoinMap"
>
select
chat_activity_join_id,chat_activity_id,member_type,filter_json,index,enterprise_id,wx_enterprise_id,create_time,update_time,delete_flag
select
*
from tab_haoban_group_chat_activity_join
where chat_activity_join_id = #{chatActivityJoinId}
</select>
<select
id=
"queryByChatActivityIds"
resultMap=
"TabHaobanGroupChatActivityJoinMap"
>
select *
from tab_haoban_group_chat_activity_join
where delete_flag = 0 and chat_activity_id in
<foreach
collection=
"chatActivityIds"
open=
"("
close=
")"
separator=
","
item=
"item"
>
#{item}
</foreach>
order by `index` asc
</select>
<!--查询指定行数据-->
<select
id=
"queryAllByLimit"
resultMap=
"TabHaobanGroupChatActivityJoinMap"
>
select
chat_activity_join_id,chat_activity_id,member_type,filter_json,
index
,enterprise_id,wx_enterprise_id,create_time,update_time,delete_flag
chat_activity_join_id,chat_activity_id,member_type,filter_json,
`index`,chat_hm_id
,enterprise_id,wx_enterprise_id,create_time,update_time,delete_flag
from tab_haoban_group_chat_activity_join
<where>
<if
test=
"chatActivityJoinId != null"
>
...
...
@@ -40,7 +52,7 @@
and filter_json = #{filterJson}
</if>
<if
test=
"index != null"
>
and
index
= #{index}
and
`index`
= #{index}
</if>
<if
test=
"enterpriseId != null and enterpriseId != ''"
>
and enterprise_id = #{enterpriseId}
...
...
@@ -48,15 +60,6 @@
<if
test=
"wxEnterpriseId != null and wxEnterpriseId != ''"
>
and wx_enterprise_id = #{wxEnterpriseId}
</if>
<if
test=
"createTime != null"
>
and create_time = #{createTime}
</if>
<if
test=
"updateTime != null"
>
and update_time = #{updateTime}
</if>
<if
test=
"deleteFlag != null"
>
and delete_flag = #{deleteFlag}
</if>
</where>
limit #{pageable.offset}, #{pageable.pageSize}
</select>
...
...
@@ -79,7 +82,7 @@
and filter_json = #{filterJson}
</if>
<if
test=
"index != null"
>
and
index
= #{index}
and
`index`
= #{index}
</if>
<if
test=
"enterpriseId != null and enterpriseId != ''"
>
and enterprise_id = #{enterpriseId}
...
...
@@ -87,46 +90,15 @@
<if
test=
"wxEnterpriseId != null and wxEnterpriseId != ''"
>
and wx_enterprise_id = #{wxEnterpriseId}
</if>
<if
test=
"createTime != null"
>
and create_time = #{createTime}
</if>
<if
test=
"updateTime != null"
>
and update_time = #{updateTime}
</if>
<if
test=
"deleteFlag != null"
>
and delete_flag = #{deleteFlag}
</if>
</where>
</select>
<!--新增所有列-->
<insert
id=
"insert"
keyProperty=
"chatActivityJoinId"
useGeneratedKeys=
"true"
>
insert into tab_haoban_group_chat_activity_join(chat_activity_
id,member_type,filter_json,index,enterprise_id,wx_enterprise_id,create_time,update_time,delete_flag
)
values (#{chatActivity
Id},#{memberType},#{filterJson},#{index},#{enterpriseId},#{wxEnterpriseId},#{createTime},#{updateTime},#{deleteFlag
})
insert into tab_haoban_group_chat_activity_join(chat_activity_
joinId,chat_activity_id,member_type,filter_json,`index`,enterprise_id,wx_enterprise_id
)
values (#{chatActivity
JoinId},#{chatActivityId},#{memberType},#{filterJson},#{index},#{enterpriseId},#{wxEnterpriseId
})
</insert>
<insert
id=
"insertBatch"
keyProperty=
"chatActivityJoinId"
useGeneratedKeys=
"true"
>
insert into
tab_haoban_group_chat_activity_join(chat_activity_id,member_type,filter_json,index,enterprise_id,wx_enterprise_id,create_time,update_time,delete_flag)
values
<foreach
collection=
"entities"
item=
"entity"
separator=
","
>
(#{entity.chatActivityId},#{entity.memberType},#{entity.filterJson},#{entity.index},#{entity.enterpriseId},#{entity.wxEnterpriseId},#{entity.createTime},#{entity.updateTime},#{entity.deleteFlag})
</foreach>
</insert>
<insert
id=
"insertOrUpdateBatch"
keyProperty=
"chatActivityJoinId"
useGeneratedKeys=
"true"
>
insert into
tab_haoban_group_chat_activity_join(chat_activity_id,member_type,filter_json,index,enterprise_id,wx_enterprise_id,create_time,update_time,delete_flag)
values
<foreach
collection=
"entities"
item=
"entity"
separator=
","
>
(#{entity.chatActivityId},#{entity.memberType},#{entity.filterJson},#{entity.index},#{entity.enterpriseId},#{entity.wxEnterpriseId},#{entity.createTime},#{entity.updateTime},#{entity.deleteFlag})
</foreach>
on duplicate key update
chat_activity_id = values(chat_activity_id)member_type = values(member_type)filter_json =
values(filter_json)index = values(index)enterprise_id = values(enterprise_id)wx_enterprise_id =
values(wx_enterprise_id)create_time = values(create_time)update_time = values(update_time)delete_flag =
values(delete_flag)
</insert>
<!--通过主键修改数据-->
<update
id=
"update"
>
...
...
@@ -142,7 +114,7 @@
filter_json = #{filterJson},
</if>
<if
test=
"index != null"
>
index
= #{index},
`index`
= #{index},
</if>
<if
test=
"enterpriseId != null and enterpriseId != ''"
>
enterprise_id = #{enterpriseId},
...
...
@@ -150,23 +122,14 @@
<if
test=
"wxEnterpriseId != null and wxEnterpriseId != ''"
>
wx_enterprise_id = #{wxEnterpriseId},
</if>
<if
test=
"createTime != null"
>
create_time = #{createTime},
</if>
<if
test=
"updateTime != null"
>
update_time = #{updateTime},
</if>
<if
test=
"deleteFlag != null"
>
delete_flag = #{deleteFlag},
</if>
</set>
where chat_activity_join_id = #{chatActivityJoinId}
</update>
<!--通过主键删除-->
<delete
id=
"deleteById"
>
dele
te
from tab_haoban_group_chat_activity_join
upda
te
tab_haoban_group_chat_activity_join set delete_flag = 1
where chat_activity_join_id = #{chatActivityJoinId}
</delete>
</mapper>
...
...
haoban-manage3-service/src/main/resources/mapper/chat/GroupChatActivityMapper.xml
View file @
e967f0a7
...
...
@@ -35,106 +35,81 @@
<!--查询单个-->
<select
id=
"queryById"
resultMap=
"TabHaobanGroupChatActivityMap"
>
select
chat_activity_id, activity_name, start_date, end_date, limit_date, activity_img, activity_invite_img, activity_desc, activity_share_title, activity_share_img, activity_poster_img, status, invite_reward_type, join_type, join_rule, join_chat_hm_id, invite_type, invite_member_type, label_flag, label_json, exception_notice, exception_notice_num, enterprise_id, wx_enterprise_id, create_time, update_time, creator_id, creator_name, delete_flag
select
*
from tab_haoban_group_chat_activity
where chat_activity_id = #{chatActivityId}
where chat_activity_id = #{chatActivityId}
and delete_flag = 0
</select>
<!--查询指定行数据-->
<select
id=
"queryAllByLimit"
resultMap=
"TabHaobanGroupChatActivityMap"
>
select
chat_activity_id, activity_name, start_date, end_date, limit_date, activity_img, activity_invite_img, activity_desc, activity_share_title, activity_share_img, activity_poster_img, status, invite_reward_type, join_type, join_rule, join_chat_hm_id, invite_type, invite_member_type, label_flag, label_json, exception_notice, exception_notice_num, enterprise_id, wx_enterprise_id, create_time, update_time, creator_id, creator_name, delete_flag
<select
id=
"queryByIds"
resultMap=
"TabHaobanGroupChatActivityMap"
>
select *
from tab_haoban_group_chat_activity
<where>
<if
test=
"chatActivityId != null"
>
and chat_activity_id = #{chatActivityId}
</if>
<if
test=
"activityName != null and activityName != ''"
>
and activity_name = #{activityName}
</if>
<if
test=
"startDate != null"
>
and start_date = #{startDate}
</if>
<if
test=
"endDate != null"
>
and end_date = #{endDate}
</if>
<if
test=
"limitDate != null"
>
and limit_date = #{limitDate}
</if>
<if
test=
"activityImg != null and activityImg != ''"
>
and activity_img = #{activityImg}
</if>
<if
test=
"activityInviteImg != null and activityInviteImg != ''"
>
and activity_invite_img = #{activityInviteImg}
</if>
<if
test=
"activityDesc != null and activityDesc != ''"
>
and activity_desc = #{activityDesc}
</if>
<if
test=
"activityShareTitle != null and activityShareTitle != ''"
>
and activity_share_title = #{activityShareTitle}
</if>
<if
test=
"activityShareImg != null and activityShareImg != ''"
>
and activity_share_img = #{activityShareImg}
</if>
<if
test=
"activityPosterImg != null and activityPosterImg != ''"
>
and activity_poster_img = #{activityPosterImg}
</if>
<if
test=
"status != null"
>
and status = #{status}
</if>
<if
test=
"inviteRewardType != null"
>
and invite_reward_type = #{inviteRewardType}
</if>
<if
test=
"joinType != null"
>
and join_type = #{joinType}
</if>
<if
test=
"joinRule != null and joinRule != ''"
>
and join_rule = #{joinRule}
</if>
<if
test=
"joinChatHmId != null"
>
and join_chat_hm_id = #{joinChatHmId}
</if>
<if
test=
"inviteType != null"
>
and invite_type = #{inviteType}
</if>
<if
test=
"inviteMemberType != null"
>
and invite_member_type = #{inviteMemberType}
</if>
<if
test=
"labelFlag != null"
>
and label_flag = #{labelFlag}
</if>
<if
test=
"labelJson != null and labelJson != ''"
>
and label_json = #{labelJson}
</if>
<if
test=
"exceptionNotice != null"
>
and exception_notice = #{exceptionNotice}
</if>
<if
test=
"exceptionNoticeNum != null"
>
and exception_notice_num = #{exceptionNoticeNum}
</if>
<if
test=
"enterpriseId != null and enterpriseId != ''"
>
and enterprise_id = #{enterpriseId}
</if>
<if
test=
"wxEnterpriseId != null and wxEnterpriseId != ''"
>
and wx_enterprise_id = #{wxEnterpriseId}
</if>
<if
test=
"createTime != null"
>
and create_time = #{createTime}
</if>
<if
test=
"updateTime != null"
>
and update_time = #{updateTime}
</if>
<if
test=
"creatorId != null and creatorId != ''"
>
and creator_id = #{creatorId}
</if>
<if
test=
"creatorName != null and creatorName != ''"
>
and creator_name = #{creatorName}
</if>
<if
test=
"deleteFlag != null"
>
and delete_flag = #{deleteFlag}
</if>
</where>
limit #{pageable.offset}, #{pageable.pageSize}
where delete_flag = 0 and chat_activity_id in
<foreach
collection=
"chatActivityIds"
open=
"("
close=
")"
separator=
","
item=
"item"
>
#{item}
</foreach>
order by create_time desc
</select>
<select
id=
"queryByIdsDel"
resultMap=
"TabHaobanGroupChatActivityMap"
>
select *
from tab_haoban_group_chat_activity
where chat_activity_id in
<foreach
collection=
"chatActivityIds"
open=
"("
close=
")"
separator=
","
item=
"item"
>
#{item}
</foreach>
order by create_time desc
</select>
<select
id=
"listActivity"
resultMap=
"TabHaobanGroupChatActivityMap"
>
select
a.*
from tab_haoban_group_chat_activity a
where a.enterprise_id = #{enterpriseId} and a.delete_flag = 0
<if
test=
"search.search != null and search.search != ''"
>
and (a.activity_name like concat('%',#{search.search},'%') or a.chat_activity_id = #{search.search})
</if>
<if
test=
"search.status != null"
>
and a.status = #{search.status}
</if>
<if
test=
"search.joinType != null"
>
and a.join_type = #{joinType}
</if>
<if
test=
"search.inviteRewardType != null"
>
and a.invite_reward_type = #{inviteRewardType}
</if>
<if
test=
"search.beginDate != null"
>
and a.create_time >= #{search.beginDate}
</if>
<if
test=
"search.endDate != null"
>
and a.create_time
<![CDATA[<=]]>
#{search.endDate}
</if>
<if
test=
"search.creatorIdList != null and search.creatorIdList.size > 0 "
>
and a.creator_id in
<foreach
collection=
"search.creatorIdList"
item=
"item"
open=
"("
close=
")"
separator=
","
>
#{item}
</foreach>
</if>
order by a.create_time desc,a.chat_activity_id desc
</select>
<select
id=
"listActivityByDate"
resultMap=
"TabHaobanGroupChatActivityMap"
>
select
a.*
from tab_haoban_group_chat_activity a
where a.delete_flag = 0
<if
test=
"enterpriseId != null and enterpriseId != ''"
>
and enterprise_id = #{enterpriseId}
</if>
<if
test=
"status != null"
>
and status = #{status}
</if>
<if
test=
"startDate != null"
>
and start_date = #{startDate}
</if>
<if
test=
"endDate != null"
>
and end_date = #{endDate}
</if>
order by a.create_time desc,a.chat_activity_id desc
</select>
<!--统计总行数-->
...
...
@@ -214,27 +189,13 @@
<if
test=
"wxEnterpriseId != null and wxEnterpriseId != ''"
>
and wx_enterprise_id = #{wxEnterpriseId}
</if>
<if
test=
"createTime != null"
>
and create_time = #{createTime}
</if>
<if
test=
"updateTime != null"
>
and update_time = #{updateTime}
</if>
<if
test=
"creatorId != null and creatorId != ''"
>
and creator_id = #{creatorId}
</if>
<if
test=
"creatorName != null and creatorName != ''"
>
and creator_name = #{creatorName}
</if>
<if
test=
"deleteFlag != null"
>
and delete_flag = #{deleteFlag}
</if>
</where>
</select>
<!--新增所有列-->
<insert
id=
"insert"
keyProperty=
"chatActivityId"
useGeneratedKeys=
"true"
>
insert into tab_haoban_group_chat_activity(
chat_activity_id,
activity_name,
start_date,
end_date,
...
...
@@ -258,12 +219,10 @@
exception_notice_num,
enterprise_id,
wx_enterprise_id,
create_time,
update_time,
creator_id,
creator_name,
delete_flag)
creator_name)
values (
#{chatActivityId},
#{activityName},
#{startDate},
#{endDate},
...
...
@@ -287,166 +246,8 @@
#{exceptionNoticeNum},
#{enterpriseId},
#{wxEnterpriseId},
#{createTime},
#{updateTime},
#{creatorId},
#{creatorName},
#{deleteFlag})
</insert>
<insert
id=
"insertBatch"
keyProperty=
"chatActivityId"
useGeneratedKeys=
"true"
>
insert into tab_haoban_group_chat_activity(
activity_name,
start_date,
end_date,
limit_date,
activity_img,
activity_invite_img,
activity_desc,
activity_share_title,
activity_share_img,
activity_poster_img,
status,
invite_reward_type,
join_type,
join_rule,
join_chat_hm_id,
invite_type,
invite_member_type,
label_flag,
label_json,
exception_notice,
exception_notice_num,
enterprise_id,
wx_enterprise_id,
create_time,
update_time,
creator_id,
creator_name,
delete_flag)
values
<foreach
collection=
"entities"
item=
"entity"
separator=
","
>
(#{entity.activityName},
#{entity.startDate},
#{entity.endDate},
#{entity.limitDate},
#{entity.activityImg},
#{entity.activityInviteImg},
#{entity.activityDesc},
#{entity.activityShareTitle},
#{entity.activityShareImg},
#{entity.activityPosterImg},
#{entity.status},
#{entity.inviteRewardType},
#{entity.joinType},
#{entity.joinRule},
#{entity.joinChatHmId},
#{entity.inviteType},
#{entity.inviteMemberType},
#{entity.labelFlag},
#{entity.labelJson},
#{entity.exceptionNotice},
#{entity.exceptionNoticeNum},
#{entity.enterpriseId},
#{entity.wxEnterpriseId},
#{entity.createTime},
#{entity.updateTime},
#{entity.creatorId},
#{entity.creatorName},
#{entity.deleteFlag})
</foreach>
</insert>
<insert
id=
"insertOrUpdateBatch"
keyProperty=
"chatActivityId"
useGeneratedKeys=
"true"
>
insert into tab_haoban_group_chat_activity(
activity_name,
start_date,
end_date,
limit_date,
activity_img,
activity_invite_img,
activity_desc,
activity_share_title,
activity_share_img,
activity_poster_img,
status,
invite_reward_type,
join_type,
join_rule,
join_chat_hm_id,
invite_type,
invite_member_type,
label_flag,
label_json,
exception_notice,
exception_notice_num,
enterprise_id,
wx_enterprise_id,
create_time,
update_time,
creator_id,
creator_name,
delete_flag)
values
<foreach
collection=
"entities"
item=
"entity"
separator=
","
>
(#{entity.activityName},
#{entity.startDate},
#{entity.endDate},
#{entity.limitDate},
#{entity.activityImg},
#{entity.activityInviteImg},
#{entity.activityDesc},
#{entity.activityShareTitle},
#{entity.activityShareImg},
#{entity.activityPosterImg},
#{entity.status},
#{entity.inviteRewardType},
#{entity.joinType},
#{entity.joinRule},
#{entity.joinChatHmId},
#{entity.inviteType},
#{entity.inviteMemberType},
#{entity.labelFlag},
#{entity.labelJson},
#{entity.exceptionNotice},
#{entity.exceptionNoticeNum},
#{entity.enterpriseId},
#{entity.wxEnterpriseId},
#{entity.createTime},
#{entity.updateTime},
#{entity.creatorId},
#{entity.creatorName},
#{entity.deleteFlag})
</foreach>
on duplicate key update
activity_name = values(activity_name),
start_date = values(start_date),
end_date = values(end_date),
limit_date = values(limit_date),
activity_img = values(activity_img),
activity_invite_img = values(activity_invite_img),
activity_desc = values(activity_desc),
activity_share_title = values(activity_share_title),
activity_share_img = values(activity_share_img),
activity_poster_img = values(activity_poster_img),
status = values(status),
invite_reward_type = values(invite_reward_type),
join_type = values(join_type),
join_rule = values(join_rule),
join_chat_hm_id = values(join_chat_hm_id),
invite_type = values(invite_type),
invite_member_type = values(invite_member_type),
label_flag = values(label_flag),
label_json = values(label_json),
exception_notice = values(exception_notice),
exception_notice_num = values(exception_notice_num),
enterprise_id = values(enterprise_id),
wx_enterprise_id = values(wx_enterprise_id),
create_time = values(create_time),
update_time = values(update_time),
creator_id = values(creator_id),
creator_name = values(creator_name),
delete_flag = values(delete_flag)
#{creatorName})
</insert>
...
...
@@ -523,30 +324,14 @@
<if
test=
"wxEnterpriseId != null and wxEnterpriseId != ''"
>
wx_enterprise_id = #{wxEnterpriseId},
</if>
<if
test=
"createTime != null"
>
create_time = #{createTime},
</if>
<if
test=
"updateTime != null"
>
update_time = #{updateTime},
</if>
<if
test=
"creatorId != null and creatorId != ''"
>
creator_id = #{creatorId},
</if>
<if
test=
"creatorName != null and creatorName != ''"
>
creator_name = #{creatorName},
</if>
<if
test=
"deleteFlag != null"
>
delete_flag = #{deleteFlag},
</if>
</set>
where chat_activity_id = #{chatActivityId}
</update>
<!--通过主键删除-->
<delete
id=
"deleteById"
>
delete
from tab_haoban_group_chat_activity
where chat_activity_id = #{chatActivityId}
update tab_haoban_group_chat_activity set delete_flag = 1
where enterprise_id = #{enterpriseId} and chat_activity_id = #{chatActivityId} and delete_flag = 0
</delete>
</mapper>
haoban-manage3-service/src/main/resources/mapper/chat/GroupChatActivityRewardDetailLogMapper.xml
View file @
e967f0a7
...
...
@@ -145,6 +145,7 @@
<!--新增所有列-->
<insert
id=
"insert"
keyProperty=
"chatActivityRewardDetailId"
useGeneratedKeys=
"true"
>
insert into tab_haoban_group_chat_activity_reward_detail_log(
chat_activity_reward_detail_id,
chat_activity_reward_id,
chat_activity_id,
activity_reward_id,
...
...
@@ -156,12 +157,10 @@
reward_business_id,
success_flag,
enterprise_id,
wx_enterprise_id,
create_time,
update_time,
delete_flag
wx_enterprise_id
)
values (
#{chatActivityRewardDetailId},
#{chatActivityRewardId},
#{chatActivityId},
#{activityRewardId},
...
...
@@ -173,105 +172,10 @@
#{rewardBusinessId},
#{successFlag},
#{enterpriseId},
#{wxEnterpriseId},
#{createTime},
#{updateTime},
#{deleteFlag}
#{wxEnterpriseId}
)
</insert>
<insert
id=
"insertBatch"
keyProperty=
"chatActivityRewardDetailId"
useGeneratedKeys=
"true"
>
insert into tab_haoban_group_chat_activity_reward_detail_log(
chat_activity_reward_id,
chat_activity_id,
activity_reward_id,
member_id,
reward_type,
reward_value,
reward_name,
reward_remark,
reward_business_id,
success_flag,
enterprise_id,
wx_enterprise_id,
create_time,
update_time,
delete_flag
)
values
<foreach
collection=
"entities"
item=
"entity"
separator=
","
>
(#{entity.chatActivityRewardId},
#{entity.chatActivityId},
#{entity.activityRewardId},
#{entity.memberId},
#{entity.rewardType},
#{entity.rewardValue},
#{entity.rewardName},
#{entity.rewardRemark},
#{entity.rewardBusinessId},
#{entity.successFlag},
#{entity.enterpriseId},
#{entity.wxEnterpriseId},
#{entity.createTime},
#{entity.updateTime},
#{entity.deleteFlag})
</foreach>
</insert>
<insert
id=
"insertOrUpdateBatch"
keyProperty=
"chatActivityRewardDetailId"
useGeneratedKeys=
"true"
>
insert into tab_haoban_group_chat_activity_reward_detail_log(
chat_activity_reward_id,
chat_activity_id,
activity_reward_id,
member_id,
reward_type,
reward_value,
reward_name,
reward_remark,
reward_business_id,
success_flag,
enterprise_id,
wx_enterprise_id,
create_time,
update_time,
delete_flag
)
values
<foreach
collection=
"entities"
item=
"entity"
separator=
","
>
(#{entity.chatActivityRewardId},
#{entity.chatActivityId},
#{entity.activityRewardId},
#{entity.memberId},
#{entity.rewardType},
#{entity.rewardValue},
#{entity.rewardName},
#{entity.rewardRemark},
#{entity.rewardBusinessId},
#{entity.successFlag},
#{entity.enterpriseId},
#{entity.wxEnterpriseId},
#{entity.createTime},
#{entity.updateTime},
#{entity.deleteFlag})
</foreach>
on duplicate key update
chat_activity_reward_id = values(chat_activity_reward_id),
chat_activity_id = values(chat_activity_id),
activity_reward_id = values(activity_reward_id),
member_id = values(member_id),
reward_type = values(reward_type),
reward_value = values(reward_value),
reward_name = values(reward_name),
reward_remark = values(reward_remark),
reward_business_id = values(reward_business_id),
success_flag = values(success_flag),
enterprise_id = values(enterprise_id),
wx_enterprise_id = values(wx_enterprise_id),
create_time = values(create_time),
update_time = values(update_time),
delete_flag = values(delete_flag)
</insert>
<!--通过主键修改数据-->
<update
id=
"update"
>
...
...
@@ -313,15 +217,6 @@
<if
test=
"wxEnterpriseId != null and wxEnterpriseId != ''"
>
wx_enterprise_id = #{wxEnterpriseId},
</if>
<if
test=
"createTime != null"
>
create_time = #{createTime},
</if>
<if
test=
"updateTime != null"
>
update_time = #{updateTime},
</if>
<if
test=
"deleteFlag != null"
>
delete_flag = #{deleteFlag},
</if>
</set>
where chat_activity_reward_detail_id = #{chatActivityRewardDetailId}
</update>
...
...
haoban-manage3-service/src/main/resources/mapper/chat/GroupChatActivityRewardLogMapper.xml
View file @
e967f0a7
...
...
@@ -103,26 +103,8 @@
<!--新增所有列-->
<insert
id=
"insert"
keyProperty=
"chatActivityRewardId"
useGeneratedKeys=
"true"
>
insert into tab_haoban_group_chat_activity_reward_log(chat_activity_id, member_id, reward_invite, invite_level, enterprise_id, wx_enterprise_id, create_time, update_time, delete_flag)
values (#{chatActivityId}, #{memberId}, #{rewardInvite}, #{inviteLevel}, #{enterpriseId}, #{wxEnterpriseId}, #{createTime}, #{updateTime}, #{deleteFlag})
</insert>
<insert
id=
"insertBatch"
keyProperty=
"chatActivityRewardId"
useGeneratedKeys=
"true"
>
insert into tab_haoban_group_chat_activity_reward_log(chat_activity_id, member_id, reward_invite, invite_level, enterprise_id, wx_enterprise_id, create_time, update_time, delete_flag)
values
<foreach
collection=
"entities"
item=
"entity"
separator=
","
>
(#{entity.chatActivityId}, #{entity.memberId}, #{entity.rewardInvite}, #{entity.inviteLevel}, #{entity.enterpriseId}, #{entity.wxEnterpriseId}, #{entity.createTime}, #{entity.updateTime}, #{entity.deleteFlag})
</foreach>
</insert>
<insert
id=
"insertOrUpdateBatch"
keyProperty=
"chatActivityRewardId"
useGeneratedKeys=
"true"
>
insert into tab_haoban_group_chat_activity_reward_log(chat_activity_id, member_id, reward_invite, invite_level, enterprise_id, wx_enterprise_id, create_time, update_time, delete_flag)
values
<foreach
collection=
"entities"
item=
"entity"
separator=
","
>
(#{entity.chatActivityId}, #{entity.memberId}, #{entity.rewardInvite}, #{entity.inviteLevel}, #{entity.enterpriseId}, #{entity.wxEnterpriseId}, #{entity.createTime}, #{entity.updateTime}, #{entity.deleteFlag})
</foreach>
on duplicate key update
chat_activity_id = values(chat_activity_id), member_id = values(member_id), reward_invite = values(reward_invite), invite_level = values(invite_level), enterprise_id = values(enterprise_id), wx_enterprise_id = values(wx_enterprise_id), create_time = values(create_time), update_time = values(update_time), delete_flag = values(delete_flag)
insert into tab_haoban_group_chat_activity_reward_log(chat_activity_reward_id,chat_activity_id, member_id, reward_invite, invite_level, enterprise_id, wx_enterprise_id)
values (#{chatActivityRewardId},#{chatActivityId}, #{memberId}, #{rewardInvite}, #{inviteLevel}, #{enterpriseId}, #{wxEnterpriseId})
</insert>
...
...
@@ -148,15 +130,6 @@
<if
test=
"wxEnterpriseId != null and wxEnterpriseId != ''"
>
wx_enterprise_id = #{wxEnterpriseId},
</if>
<if
test=
"createTime != null"
>
create_time = #{createTime},
</if>
<if
test=
"updateTime != null"
>
update_time = #{updateTime},
</if>
<if
test=
"deleteFlag != null"
>
delete_flag = #{deleteFlag},
</if>
</set>
where chat_activity_reward_id = #{chatActivityRewardId}
</update>
...
...
haoban-manage3-service/src/main/resources/mapper/chat/GroupChatActivityRewardMapper.xml
View file @
e967f0a7
...
...
@@ -25,6 +25,16 @@
where chat_activity_reward_id = #{chatActivityRewardId}
</select>
<select
id=
"queryByChatActivityIds"
resultMap=
"TabHaobanGroupChatActivityRewardMap"
>
select chat_activity_reward_id, chat_activity_id, invite_number, invite_level, reward_invite, reward_type, limit_reward, reward_value, reward_name, enterprise_id, wx_enterprise_id, create_time, update_time, delete_flag
from tab_haoban_group_chat_activity_reward
where delete_flag = 0 and chat_activity_id in
<foreach
collection=
"chatActivityIds"
open=
"("
close=
")"
separator=
","
item=
"item"
>
#{item}
</foreach>
order by reward_invite asc,invite_level asc,reward_type asc
</select>
<!--查询指定行数据-->
<select
id=
"queryAllByLimit"
resultMap=
"TabHaobanGroupChatActivityRewardMap"
>
select
...
...
@@ -64,15 +74,6 @@
<if
test=
"wxEnterpriseId != null and wxEnterpriseId != ''"
>
and wx_enterprise_id = #{wxEnterpriseId}
</if>
<if
test=
"createTime != null"
>
and create_time = #{createTime}
</if>
<if
test=
"updateTime != null"
>
and update_time = #{updateTime}
</if>
<if
test=
"deleteFlag != null"
>
and delete_flag = #{deleteFlag}
</if>
</where>
limit #{pageable.offset}, #{pageable.pageSize}
</select>
...
...
@@ -115,40 +116,13 @@
<if
test=
"wxEnterpriseId != null and wxEnterpriseId != ''"
>
and wx_enterprise_id = #{wxEnterpriseId}
</if>
<if
test=
"createTime != null"
>
and create_time = #{createTime}
</if>
<if
test=
"updateTime != null"
>
and update_time = #{updateTime}
</if>
<if
test=
"deleteFlag != null"
>
and delete_flag = #{deleteFlag}
</if>
</where>
</select>
<!--新增所有列-->
<insert
id=
"insert"
keyProperty=
"chatActivityRewardId"
useGeneratedKeys=
"true"
>
insert into tab_haoban_group_chat_activity_reward(chat_activity_id, invite_number, invite_level, reward_invite, reward_type, limit_reward, reward_value, reward_name, enterprise_id, wx_enterprise_id, create_time, update_time, delete_flag)
values (#{chatActivityId}, #{inviteNumber}, #{inviteLevel}, #{rewardInvite}, #{rewardType}, #{limitReward}, #{rewardValue}, #{rewardName}, #{enterpriseId}, #{wxEnterpriseId}, #{createTime}, #{updateTime}, #{deleteFlag})
</insert>
<insert
id=
"insertBatch"
keyProperty=
"chatActivityRewardId"
useGeneratedKeys=
"true"
>
insert into tab_haoban_group_chat_activity_reward(chat_activity_id, invite_number, invite_level, reward_invite, reward_type, limit_reward, reward_value, reward_name, enterprise_id, wx_enterprise_id, create_time, update_time, delete_flag)
values
<foreach
collection=
"entities"
item=
"entity"
separator=
","
>
(#{entity.chatActivityId}, #{entity.inviteNumber}, #{entity.inviteLevel}, #{entity.rewardInvite}, #{entity.rewardType}, #{entity.limitReward}, #{entity.rewardValue}, #{entity.rewardName}, #{entity.enterpriseId}, #{entity.wxEnterpriseId}, #{entity.createTime}, #{entity.updateTime}, #{entity.deleteFlag})
</foreach>
</insert>
<insert
id=
"insertOrUpdateBatch"
keyProperty=
"chatActivityRewardId"
useGeneratedKeys=
"true"
>
insert into tab_haoban_group_chat_activity_reward(chat_activity_id, invite_number, invite_level, reward_invite, reward_type, limit_reward, reward_value, reward_name, enterprise_id, wx_enterprise_id, create_time, update_time, delete_flag)
values
<foreach
collection=
"entities"
item=
"entity"
separator=
","
>
(#{entity.chatActivityId}, #{entity.inviteNumber}, #{entity.inviteLevel}, #{entity.rewardInvite}, #{entity.rewardType}, #{entity.limitReward}, #{entity.rewardValue}, #{entity.rewardName}, #{entity.enterpriseId}, #{entity.wxEnterpriseId}, #{entity.createTime}, #{entity.updateTime}, #{entity.deleteFlag})
</foreach>
on duplicate key update
chat_activity_id = values(chat_activity_id), invite_number = values(invite_number), invite_level = values(invite_level), reward_invite = values(reward_invite), reward_type = values(reward_type), limit_reward = values(limit_reward), reward_value = values(reward_value), reward_name = values(reward_name), enterprise_id = values(enterprise_id), wx_enterprise_id = values(wx_enterprise_id), create_time = values(create_time), update_time = values(update_time), delete_flag = values(delete_flag)
insert into tab_haoban_group_chat_activity_reward(chat_activity_reward_id,chat_activity_id, invite_number, invite_level, reward_invite, reward_type, limit_reward, reward_value, reward_name, enterprise_id, wx_enterprise_id)
values (#{chatActivityRewardId},#{chatActivityId}, #{inviteNumber}, #{inviteLevel}, #{rewardInvite}, #{rewardType}, #{limitReward}, #{rewardValue}, #{rewardName}, #{enterpriseId}, #{wxEnterpriseId})
</insert>
...
...
@@ -186,23 +160,13 @@
<if
test=
"wxEnterpriseId != null and wxEnterpriseId != ''"
>
wx_enterprise_id = #{wxEnterpriseId},
</if>
<if
test=
"createTime != null"
>
create_time = #{createTime},
</if>
<if
test=
"updateTime != null"
>
update_time = #{updateTime},
</if>
<if
test=
"deleteFlag != null"
>
delete_flag = #{deleteFlag},
</if>
</set>
where chat_activity_reward_id = #{chatActivityRewardId}
</update>
<!--通过主键删除-->
<delete
id=
"deleteById"
>
delete
from tab_haoban_group_chat_activity_reward
update tab_haoban_group_chat_activity_reward set delete_flag = 1
where chat_activity_reward_id = #{chatActivityRewardId}
</delete>
</mapper>
...
...
haoban-manage3-service/src/main/resources/mapper/chat/GroupChatActivityShareBindMapper.xml
View file @
e967f0a7
...
...
@@ -21,6 +21,14 @@
where chat_activity_bind_id = #{chatActivityBindId}
</select>
<select
id=
"query24Record"
resultMap=
"TabHaobanGroupChatActivityShareBindMap"
>
select chat_activity_bind_id, chat_activity_id, inviter_member_id, invitee_member_id, invitee_union_id, enterprise_id, wx_enterprise_id, create_time, update_time, delete_flag
from tab_haoban_group_chat_activity_share_bind
where delete_flag = 0 and invitee_union_id = #{inviteeUnionId} and create_time > now() - interval 1 day
group by chat_activity_id
order by create_time desc
</select>
<!--查询指定行数据-->
<select
id=
"queryAllByLimit"
resultMap=
"TabHaobanGroupChatActivityShareBindMap"
>
select
...
...
@@ -48,15 +56,6 @@
<if
test=
"wxEnterpriseId != null and wxEnterpriseId != ''"
>
and wx_enterprise_id = #{wxEnterpriseId}
</if>
<if
test=
"createTime != null"
>
and create_time = #{createTime}
</if>
<if
test=
"updateTime != null"
>
and update_time = #{updateTime}
</if>
<if
test=
"deleteFlag != null"
>
and delete_flag = #{deleteFlag}
</if>
</where>
limit #{pageable.offset}, #{pageable.pageSize}
</select>
...
...
@@ -87,41 +86,14 @@
<if
test=
"wxEnterpriseId != null and wxEnterpriseId != ''"
>
and wx_enterprise_id = #{wxEnterpriseId}
</if>
<if
test=
"createTime != null"
>
and create_time = #{createTime}
</if>
<if
test=
"updateTime != null"
>
and update_time = #{updateTime}
</if>
<if
test=
"deleteFlag != null"
>
and delete_flag = #{deleteFlag}
</if>
</where>
</select>
<!--新增所有列-->
<!--新增所有列-->
<insert
id=
"insert"
keyProperty=
"chatActivityBindId"
useGeneratedKeys=
"true"
>
insert into tab_haoban_group_chat_activity_bind(chat_activity_bind_id, chat_activity_id, inviter_member_id, invitee_member_id, invitee_union_id, enterprise_id, wx_enterprise_id, create_time, update_time, delete_flag)
values (#{chatActivityBindId}, #{chatActivityId}, #{inviterMemberId}, #{inviteeMemberId}, #{inviteeUnionId}, #{enterpriseId}, #{wxEnterpriseId}, #{createTime}, #{updateTime}, #{deleteFlag})
</insert>
<insert
id=
"insertBatch"
keyProperty=
"chatActivityBindId"
useGeneratedKeys=
"true"
>
insert into tab_haoban_group_chat_activity_bind(chat_activity_bind_id, chat_activity_id, inviter_member_id, invitee_member_id, invitee_union_id, enterprise_id, wx_enterprise_id, create_time, update_time, delete_flag)
values
<foreach
collection=
"entities"
item=
"entity"
separator=
","
>
(#{entity.chatActivityBindId}, #{entity.chatActivityId}, #{entity.inviterMemberId}, #{entity.inviteeMemberId}, #{entity.inviteeUnionId}, #{entity.enterpriseId}, #{entity.wxEnterpriseId}, #{entity.createTime}, #{entity.updateTime}, #{entity.deleteFlag})
</foreach>
</insert>
<insert
id=
"insertOrUpdateBatch"
keyProperty=
"chatActivityBindId"
useGeneratedKeys=
"true"
>
insert into tab_haoban_group_chat_activity_bind(chat_activity_bind_id, chat_activity_id, inviter_member_id, invitee_member_id, invitee_union_id, enterprise_id, wx_enterprise_id, create_time, update_time, delete_flag)
values
<foreach
collection=
"entities"
item=
"entity"
separator=
","
>
(#{entity.chatActivityBindId}, #{entity.chatActivityId}, #{entity.inviterMemberId}, #{entity.inviteeMemberId}, #{entity.inviteeUnionId}, #{entity.enterpriseId}, #{entity.wxEnterpriseId}, #{entity.createTime}, #{entity.updateTime}, #{entity.deleteFlag})
</foreach>
on duplicate key update
chat_activity_bind_id = values(chat_activity_bind_id), chat_activity_id = values(chat_activity_id), inviter_member_id = values(inviter_member_id), invitee_member_id = values(invitee_member_id), invitee_union_id = values(invitee_union_id), enterprise_id = values(enterprise_id), wx_enterprise_id = values(wx_enterprise_id), create_time = values(create_time), update_time = values(update_time), delete_flag = values(delete_flag)
insert into tab_haoban_group_chat_activity_bind(chat_activity_bind_id,chat_activity_bind_id, chat_activity_id, inviter_member_id, invitee_member_id, invitee_union_id, enterprise_id)
values (#{chatActivityBindId},#{chatActivityBindId}, #{chatActivityId}, #{inviterMemberId}, #{inviteeMemberId}, #{inviteeUnionId}, #{enterpriseId}, #{wxEnterpriseId})
</insert>
<!--通过主键修改数据-->
...
...
@@ -146,15 +118,6 @@
<if
test=
"wxEnterpriseId != null and wxEnterpriseId != ''"
>
wx_enterprise_id = #{wxEnterpriseId},
</if>
<if
test=
"createTime != null"
>
create_time = #{createTime},
</if>
<if
test=
"updateTime != null"
>
update_time = #{updateTime},
</if>
<if
test=
"deleteFlag != null"
>
delete_flag = #{deleteFlag},
</if>
</set>
where chat_activity_bind_id = #{chatActivityBindId}
</update>
...
...
haoban-manage3-web/pom.xml
View file @
e967f0a7
...
...
@@ -216,6 +216,11 @@
<artifactId>
gic-marketing-api
</artifactId>
<version>
${gic-marketing-api}
</version>
</dependency>
<dependency>
<groupId>
com.gic
</groupId>
<artifactId>
gic-member-tag-api
</artifactId>
<version>
${gic-member-tag-api}
</version>
</dependency>
</dependencies>
<build>
...
...
haoban-manage3-web/src/main/java/com/gic/haoban/manage/web/controller/chat/GroupChatActivityController.java
0 → 100644
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
web
.
controller
.
chat
;
import
com.gic.api.base.commons.BasePageInfo
;
import
com.gic.api.base.commons.Page
;
import
com.gic.api.base.commons.ServiceResponse
;
import
com.gic.clerk.api.dto.AuthorizedUser
;
import
com.gic.commons.util.EntityUtil
;
import
com.gic.commons.util.PageHelperUtils
;
import
com.gic.commons.webapi.reponse.RestResponse
;
import
com.gic.haoban.base.api.common.pojo.dto.WebLoginDTO
;
import
com.gic.haoban.common.utils.AuthWebRequestUtil
;
import
com.gic.haoban.manage.api.dto.chat.GroupChatActivityDTO
;
import
com.gic.haoban.manage.api.dto.chat.GroupChatActivityJoinDTO
;
import
com.gic.haoban.manage.api.dto.chat.GroupChatActivityRewardDTO
;
import
com.gic.haoban.manage.api.dto.chat.GroupChatHmDTO
;
import
com.gic.haoban.manage.api.dto.qdto.chat.ChatHmSearchQDTO
;
import
com.gic.haoban.manage.api.enums.chat.ChatActivityRewardEnum
;
import
com.gic.haoban.manage.api.qdto.chat.GroupChatActivityQDTO
;
import
com.gic.haoban.manage.api.qdto.chat.GroupChatActivitySearchQDTO
;
import
com.gic.haoban.manage.api.service.chat.GroupChatActivityApiService
;
import
com.gic.haoban.manage.api.service.chat.GroupChatHmApiService
;
import
com.gic.haoban.manage.web.log.LogRecordAfterGroupChatActivityServiceImpl
;
import
com.gic.haoban.manage.web.log.LogRecordUserServiceImpl
;
import
com.gic.haoban.manage.web.qo.chat.GroupChatActivitySaveQO
;
import
com.gic.haoban.manage.web.qo.chat.GroupChatActivitySearchQO
;
import
com.gic.haoban.manage.web.utils.CreatorUtils
;
import
com.gic.haoban.manage.web.vo.MemberTagGroupVO
;
import
com.gic.haoban.manage.web.vo.chat.GroupChatActivityVO
;
import
com.gic.haoban.manage.web.vo.chat.GroupChatHmVO
;
import
com.gic.log.record.anno.GicLogRecord
;
import
com.gic.log.record.util.GicLogRecordCategoryEnum
;
import
com.gic.log.record.util.GicLogRecordEvaluationContext
;
import
com.gic.log.record.util.GicLogRecordOptTypeEnum
;
import
com.gic.marketing.api.dto.card.CardStockAndInvalidDTO
;
import
com.gic.marketing.api.service.CouponCardService
;
import
com.gic.member.tag.api.dto.MemberTagGroupDTO
;
import
com.gic.member.tag.api.service.MemberTagGroupApiService
;
import
com.gic.web.common.utils.SessionContextUtils
;
import
com.google.common.collect.Lists
;
import
com.google.common.collect.Maps
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.apache.commons.lang3.ArrayUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.logging.log4j.LogManager
;
import
org.apache.logging.log4j.Logger
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.ResponseBody
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.util.*
;
import
java.util.stream.Collectors
;
/**
* 社群活动
*/
@RestController
@RequestMapping
(
"/chat"
)
public
class
GroupChatActivityController
{
private
static
Logger
logger
=
LogManager
.
getLogger
(
GroupChatActivityController
.
class
);
@Autowired
private
GroupChatActivityApiService
groupChatActivityApiService
;
@Autowired
private
CouponCardService
couponCardService
;
@Autowired
private
MemberTagGroupApiService
memberTagGroupService
;
@Autowired
private
GroupChatHmApiService
groupChatHmApiService
;
/**
* 社群活动分页查询
*
* @param search search
* @return RestResponse
*/
@RequestMapping
(
"/page-activity"
)
@ResponseBody
public
RestResponse
<
Page
<
GroupChatActivityVO
>>
queryByPage
(
@RequestBody
GroupChatActivitySearchQO
search
)
{
WebLoginDTO
user
=
AuthWebRequestUtil
.
getLoginUser
();
List
<
String
>
creatorIdList
=
CreatorUtils
.
getCreatorIdList
(
search
.
getShowSelfFlag
());
GroupChatActivitySearchQDTO
activitySearchQDTO
=
EntityUtil
.
changeEntityNew
(
GroupChatActivitySearchQDTO
.
class
,
search
);
activitySearchQDTO
.
setCreatorIdList
(
creatorIdList
);
activitySearchQDTO
.
setWxEnterpriseId
(
user
.
getWxEnterpriseId
());
BasePageInfo
basePageInfo
=
search
.
getBasePageInfo
();
ServiceResponse
<
Page
<
GroupChatActivityDTO
>>
response
=
groupChatActivityApiService
.
pageActivity
(
user
.
getEnterpriseId
(),
activitySearchQDTO
,
basePageInfo
);
if
(!
response
.
isSuccess
())
{
return
RestResponse
.
failure
(
response
.
getCode
(),
response
.
getMessage
());
}
Page
<
GroupChatActivityDTO
>
result
=
response
.
getResult
();
Page
<
GroupChatActivityVO
>
ret
=
PageHelperUtils
.
changePageToCurrentPage
(
result
,
GroupChatActivityVO
.
class
);
return
RestResponse
.
successResult
(
ret
);
}
/**
* 社群活动详情查询
*
* @param chatActivityId 主键ID
* @return RestResponse
*/
@RequestMapping
(
"detail-activity"
)
@ResponseBody
public
RestResponse
<
GroupChatActivityVO
>
detailActivity
(
Long
chatActivityId
)
{
WebLoginDTO
user
=
AuthWebRequestUtil
.
getLoginUser
();
ServiceResponse
<
GroupChatActivityDTO
>
response
=
groupChatActivityApiService
.
getActivityDetail
(
user
.
getEnterpriseId
(),
chatActivityId
);
if
(!
response
.
isSuccess
())
{
return
RestResponse
.
failure
(
response
.
getCode
(),
response
.
getMessage
());
}
GroupChatActivityVO
result
=
EntityUtil
.
changeEntityNew
(
GroupChatActivityVO
.
class
,
response
.
getResult
());
buildActivityExtend
(
result
);
return
RestResponse
.
successResult
(
result
);
}
private
void
buildActivityExtend
(
GroupChatActivityVO
activityVO
)
{
if
(
activityVO
==
null
)
{
return
;
}
List
<
Long
>
hmIdList
=
new
ArrayList
<>();
Long
joinChatHmId
=
activityVO
.
getJoinChatHmId
();
if
(
joinChatHmId
!=
null
)
{
hmIdList
.
add
(
joinChatHmId
);
}
//构建卡券map
List
<
String
>
couponIdList
=
activityVO
.
getRewardList
().
stream
()
.
filter
(
x
->
Objects
.
equals
(
x
.
getRewardType
(),
ChatActivityRewardEnum
.
COUPON
.
value
))
.
map
(
GroupChatActivityRewardDTO:
:
getRewardValue
)
.
flatMap
(
rewardValue
->
Arrays
.
stream
(
rewardValue
.
split
(
","
)))
.
distinct
().
collect
(
Collectors
.
toList
());
if
(
CollectionUtils
.
isNotEmpty
(
couponIdList
))
{
Map
<
String
,
CardStockAndInvalidDTO
>
couponMap
=
couponCardService
.
getCardInvalidList
(
couponIdList
);
activityVO
.
setCouponMap
(
couponMap
);
}
//构建会员分组map
List
<
Map
<
String
,
Object
>>
memberWeightViewList
=
Lists
.
newArrayList
();
Map
<
String
,
Object
>
memberWeightView
=
Maps
.
newHashMap
();
List
<
GroupChatActivityJoinDTO
>
joinList
=
activityVO
.
getJoinList
();
if
(
CollectionUtils
.
isNotEmpty
(
joinList
))
{
for
(
GroupChatActivityJoinDTO
joinDTO
:
joinList
)
{
Integer
memberType
=
joinDTO
.
getMemberType
();
// 会员信息
if
(
Objects
.
equals
(
memberType
,
0
))
{
// 查询人群筛选器搜索条件主键ID
memberWeightView
.
put
(
"searchId"
,
"GROUP_CHAT_SEARCH_ID_"
+
joinDTO
.
getChatActivityJoinId
());
}
else
if
(
Objects
.
equals
(
memberType
,
1
))
{
// 会员分组
memberWeightView
.
put
(
"tagGroupList"
,
listMemberTagGroupInfoByGoupIds
(
joinDTO
.
getFilterJson
()));
}
activityVO
.
setMemberWeightViewList
(
memberWeightViewList
);
Long
chatHmId
=
joinDTO
.
getChatHmId
();
if
(
chatHmId
!=
null
)
{
hmIdList
.
add
(
chatHmId
);
}
}
}
//构建活码map
if
(
CollectionUtils
.
isNotEmpty
(
hmIdList
))
{
ChatHmSearchQDTO
hmSearchQDTO
=
new
ChatHmSearchQDTO
();
hmSearchQDTO
.
setEnterpriseId
(
activityVO
.
getEnterpriseId
());
hmSearchQDTO
.
setWxEnterpriseId
(
activityVO
.
getWxEnterpriseId
());
hmSearchQDTO
.
setChatHmIdList
(
hmIdList
);
BasePageInfo
basePageInfo
=
new
BasePageInfo
();
basePageInfo
.
setPageNum
(
1
);
basePageInfo
.
setPageSize
(
1000
);
ServiceResponse
<
Page
<
GroupChatHmDTO
>>
pageResp
=
this
.
groupChatHmApiService
.
listPage
(
hmSearchQDTO
,
basePageInfo
);
if
(
pageResp
.
isSuccess
()
&&
pageResp
.
getResult
()
!=
null
&&
CollectionUtils
.
isNotEmpty
(
pageResp
.
getResult
().
getResult
()))
{
List
<
GroupChatHmDTO
>
chatHmList
=
pageResp
.
getResult
().
getResult
();
Map
<
String
,
GroupChatHmVO
>
chatHmMap
=
chatHmList
.
stream
().
map
(
x
->
EntityUtil
.
changeEntityNew
(
GroupChatHmVO
.
class
,
x
))
.
collect
(
Collectors
.
toMap
(
k
->
String
.
valueOf
(
k
.
getChatHmId
()),
v
->
v
,
(
e
,
x
)
->
e
));
activityVO
.
setChatHmMap
(
chatHmMap
);
}
}
}
public
List
<
MemberTagGroupVO
>
listMemberTagGroupInfoByGoupIds
(
String
tagGroupIds
)
{
List
<
MemberTagGroupVO
>
result
=
new
ArrayList
<>();
if
(
StringUtils
.
isBlank
(
tagGroupIds
))
{
return
result
;
}
String
[]
tagGroupIdArr
=
tagGroupIds
.
split
(
","
);
if
(
ArrayUtils
.
isEmpty
(
tagGroupIdArr
))
{
return
result
;
}
List
<
MemberTagGroupDTO
>
memberTagGroupDTOList
=
memberTagGroupService
.
findListByIds
(
new
ArrayList
<>(
Arrays
.
asList
(
tagGroupIdArr
)));
if
(
CollectionUtils
.
isNotEmpty
(
memberTagGroupDTOList
))
{
for
(
MemberTagGroupDTO
memberTagGroupDTO
:
memberTagGroupDTOList
)
{
MemberTagGroupVO
memberTagGroupVO
=
new
MemberTagGroupVO
();
memberTagGroupVO
.
setGroupName
(
memberTagGroupDTO
.
getGroupName
());
memberTagGroupVO
.
setMemberTagGroupId
(
memberTagGroupDTO
.
getMemberTagGroupId
());
memberTagGroupVO
.
setEffectiveStatus
(
memberTagGroupDTO
.
getEffectiveStatus
());
memberTagGroupVO
.
setIsRealTime
(
memberTagGroupDTO
.
getIsRealTime
());
memberTagGroupVO
.
setFixedType
(
memberTagGroupDTO
.
getFixedType
());
result
.
add
(
memberTagGroupVO
);
}
}
return
result
;
}
/**
* 社群活动终止
*
* @param chatActivityId 主键ID
* @return RestResponse
*/
@RequestMapping
(
"stop-activity"
)
@ResponseBody
@GicLogRecord
(
value
=
"【${#activityName}+${#chatActivityId}】活动被终止"
,
category
=
GicLogRecordCategoryEnum
.
HB_QHM_ACTIVITY
,
optType
=
GicLogRecordOptTypeEnum
.
HB_1005_03
,
optPage
=
"营销-社群营销-社群邀请有礼"
,
userFunc
=
LogRecordUserServiceImpl
.
class
)
public
RestResponse
<
Void
>
stopActivity
(
Long
chatActivityId
)
{
AuthorizedUser
user
=
SessionContextUtils
.
getLoginUser
();
ServiceResponse
<
GroupChatActivityDTO
>
response
=
groupChatActivityApiService
.
stopActivity
(
user
.
getEnterpriseId
(),
chatActivityId
);
if
(!
response
.
isSuccess
())
{
GicLogRecordEvaluationContext
.
noWriteLog
();
return
RestResponse
.
failure
(
response
.
getCode
(),
response
.
getMessage
());
}
GicLogRecordEvaluationContext
.
putAttribute
(
"activityName"
,
response
.
getResult
().
getActivityName
());
GicLogRecordEvaluationContext
.
putAttribute
(
"chatActivityId"
,
chatActivityId
);
return
RestResponse
.
successResult
();
}
/**
* 社群活动删除
*
* @param chatActivityId 主键ID
* @return RestResponse
*/
@RequestMapping
(
"del-activity"
)
@ResponseBody
@GicLogRecord
(
value
=
"【${#activityName}+${#chatActivityId}】活动被删除"
,
category
=
GicLogRecordCategoryEnum
.
HB_QHM_ACTIVITY
,
optType
=
GicLogRecordOptTypeEnum
.
HB_1005_02
,
optPage
=
"营销-社群营销-社群邀请有礼"
,
userFunc
=
LogRecordUserServiceImpl
.
class
)
public
RestResponse
<
Void
>
delActivity
(
Long
chatActivityId
)
{
WebLoginDTO
user
=
AuthWebRequestUtil
.
getLoginUser
();
ServiceResponse
<
GroupChatActivityDTO
>
response
=
groupChatActivityApiService
.
getActivityDetail
(
user
.
getEnterpriseId
(),
chatActivityId
);
if
(!
response
.
isSuccess
())
{
GicLogRecordEvaluationContext
.
noWriteLog
();
return
RestResponse
.
failure
(
response
.
getCode
(),
response
.
getMessage
());
}
ServiceResponse
<
Void
>
delResponse
=
groupChatActivityApiService
.
delActivity
(
user
.
getEnterpriseId
(),
chatActivityId
);
if
(!
delResponse
.
isSuccess
())
{
GicLogRecordEvaluationContext
.
noWriteLog
();
return
RestResponse
.
failure
(
delResponse
.
getCode
(),
delResponse
.
getMessage
());
}
GicLogRecordEvaluationContext
.
putAttribute
(
"activityName"
,
response
.
getResult
().
getActivityName
());
GicLogRecordEvaluationContext
.
putAttribute
(
"chatActivityId"
,
chatActivityId
);
return
RestResponse
.
successResult
();
}
/**
* 社群活动保存
*
* @param activitySaveQO
* @return RestResponse
*/
@GicLogRecord
(
value
=
""
,
category
=
GicLogRecordCategoryEnum
.
HB_QHM_ACTIVITY
,
optType
=
GicLogRecordOptTypeEnum
.
HB_1005_01
,
optPage
=
"营销-社群营销-社群邀请有礼"
,
userFunc
=
LogRecordUserServiceImpl
.
class
,
afterFunc
=
LogRecordAfterGroupChatActivityServiceImpl
.
class
)
@RequestMapping
(
"save-activity"
)
@ResponseBody
public
RestResponse
<
String
>
saveActivity
(
@RequestBody
GroupChatActivitySaveQO
activitySaveQO
)
{
WebLoginDTO
user
=
AuthWebRequestUtil
.
getLoginUser
();
if
(
activitySaveQO
.
getChatActivityId
()
!=
null
)
{
ServiceResponse
<
GroupChatActivityDTO
>
oldResponse
=
groupChatActivityApiService
.
getActivityDetailCache
(
user
.
getEnterpriseId
(),
activitySaveQO
.
getChatActivityId
());
if
(!
oldResponse
.
isSuccess
())
{
return
RestResponse
.
failure
(
oldResponse
.
getCode
(),
oldResponse
.
getMessage
());
}
GicLogRecordEvaluationContext
.
putAttribute
(
"oldActivityDTO"
,
oldResponse
.
getResult
());
}
GroupChatActivityQDTO
activityQDTO
=
EntityUtil
.
changeEntityNew
(
GroupChatActivityQDTO
.
class
,
activitySaveQO
);
activityQDTO
.
setWxEnterpriseId
(
user
.
getWxEnterpriseId
());
activityQDTO
.
setEnterpriseId
(
user
.
getEnterpriseId
());
activityQDTO
.
setCreatorId
(
user
.
getClerkId
());
activityQDTO
.
setCreatorName
(
user
.
getClerkName
());
ServiceResponse
<
Long
>
response
=
groupChatActivityApiService
.
saveActivity
(
activityQDTO
);
if
(!
response
.
isSuccess
())
{
GicLogRecordEvaluationContext
.
noWriteLog
();
return
RestResponse
.
failure
(
response
.
getCode
(),
response
.
getMessage
());
}
if
(
activitySaveQO
.
getChatActivityId
()
!=
null
)
{
ServiceResponse
<
GroupChatActivityDTO
>
newResponse
=
groupChatActivityApiService
.
getActivityDetailCache
(
user
.
getEnterpriseId
(),
activitySaveQO
.
getChatActivityId
());
if
(!
newResponse
.
isSuccess
())
{
return
RestResponse
.
failure
(
newResponse
.
getCode
(),
newResponse
.
getMessage
());
}
GicLogRecordEvaluationContext
.
putAttribute
(
"newActivityDTO"
,
newResponse
.
getResult
());
}
return
RestResponse
.
successResult
(
String
.
valueOf
(
response
.
getResult
()));
}
}
haoban-manage3-web/src/main/java/com/gic/haoban/manage/web/log/LogRecordAfterGroupChatActivityServiceImpl.java
0 → 100644
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
web
.
log
;
import
cn.hutool.core.date.DateUtil
;
import
cn.hutool.core.util.StrUtil
;
import
com.alibaba.fastjson.JSON
;
import
com.gic.haoban.manage.api.dto.chat.GroupChatActivityDTO
;
import
com.gic.log.record.bean.GicLogRecordBean
;
import
com.gic.log.record.service.LogRecordAfterService
;
import
com.gic.log.record.util.GicLogRecordEvaluationContext
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.logging.log4j.LogManager
;
import
org.apache.logging.log4j.Logger
;
import
org.springframework.stereotype.Service
;
import
java.util.Date
;
import
java.util.Objects
;
/**
* Created by wangzubo on 2022/11/14.
*/
@Service
public
class
LogRecordAfterGroupChatActivityServiceImpl
extends
LogRecordAfterService
{
private
static
final
Logger
logger
=
LogManager
.
getLogger
(
LogRecordAfterGroupChatActivityServiceImpl
.
class
);
/**
{活动名称-活动id}的
1、活动名称从【XX】修改为【XX】
2、活动时间从2022.10,23修改为2023.10.23
3、活动图片更换
4、活动说明调整
5、分享配置调整
* @param record
*/
@Override
public
void
deal
(
GicLogRecordBean
record
)
{
try
{
GroupChatActivityDTO
oldActivityDTO
=
GicLogRecordEvaluationContext
.
getAttribute
(
"oldActivityDTO"
,
GroupChatActivityDTO
.
class
);
GroupChatActivityDTO
newActivityDTO
=
GicLogRecordEvaluationContext
.
getAttribute
(
"newActivityDTO"
,
GroupChatActivityDTO
.
class
);
logger
.
info
(
"活动操作前信息 {}"
,
JSON
.
toJSONString
(
oldActivityDTO
));
logger
.
info
(
"活动操作后信息 {}"
,
JSON
.
toJSONString
(
newActivityDTO
));
if
(
oldActivityDTO
==
null
||
newActivityDTO
==
null
)
{
record
.
setStatusFlag
(
0
);
return
;
}
String
content
=
StrUtil
.
format
(
"【{}+{}】"
,
oldActivityDTO
.
getActivityName
(),
oldActivityDTO
.
getChatActivityId
());
StringBuilder
cdSb
=
new
StringBuilder
();
String
oldActivityName
=
oldActivityDTO
.
getActivityName
();
String
newActivityName
=
newActivityDTO
.
getActivityName
();
Date
oldStartDate
=
oldActivityDTO
.
getStartDate
();
Date
oldEndDate
=
oldActivityDTO
.
getEndDate
();
Date
newStartDate
=
newActivityDTO
.
getStartDate
();
Date
newEndDate
=
newActivityDTO
.
getEndDate
();
if
(!
Objects
.
equals
(
oldActivityName
,
newActivityName
))
{
cdSb
.
append
(
" "
)
.
append
(
StrUtil
.
format
(
"活动名称从【{}】修改为【{}】"
,
oldActivityName
,
newActivityName
));
}
if
(!
Objects
.
equals
(
oldStartDate
,
newStartDate
)
||
!
Objects
.
equals
(
oldEndDate
,
newEndDate
))
{
cdSb
.
append
(
" "
)
.
append
(
StrUtil
.
format
(
"活动时间从【{}】修改为【{}】"
,
DateUtil
.
formatDate
(
oldStartDate
)
+
"-"
+
DateUtil
.
formatDate
(
oldEndDate
),
DateUtil
.
formatDate
(
newStartDate
)
+
"-"
+
DateUtil
.
formatDate
(
newEndDate
)));
}
String
oldActivityDesc
=
oldActivityDTO
.
getActivityDesc
();
String
newActivityDesc
=
newActivityDTO
.
getActivityDesc
();
if
(!
Objects
.
equals
(
oldActivityDesc
,
newActivityDesc
))
{
cdSb
.
append
(
" "
)
.
append
(
"活动说明调整"
);
}
String
oldActivityImg
=
oldActivityDTO
.
getActivityImg
();
String
oldActivityInviteImg
=
oldActivityDTO
.
getActivityInviteImg
();
String
newActivityImg
=
newActivityDTO
.
getActivityImg
();
String
newActivityInviteImg
=
newActivityDTO
.
getActivityInviteImg
();
if
(!
Objects
.
equals
(
oldActivityImg
,
newActivityImg
)||
!
Objects
.
equals
(
oldActivityInviteImg
,
newActivityInviteImg
)
)
{
cdSb
.
append
(
" "
)
.
append
(
"活动图片更换"
);
}
String
oldActivityShareTitle
=
oldActivityDTO
.
getActivityShareTitle
();
String
oldActivityPosterImg
=
oldActivityDTO
.
getActivityPosterImg
();
String
oldActivityShareImg
=
oldActivityDTO
.
getActivityShareImg
();
String
newActivityShareTitle
=
newActivityDTO
.
getActivityShareTitle
();
String
newActivityPosterImg
=
newActivityDTO
.
getActivityPosterImg
();
String
newActivityShareImg
=
newActivityDTO
.
getActivityShareImg
();
if
(!
Objects
.
equals
(
oldActivityShareTitle
,
newActivityShareTitle
)
||
!
Objects
.
equals
(
oldActivityShareImg
,
newActivityShareImg
)
||
!
Objects
.
equals
(
oldActivityPosterImg
,
newActivityPosterImg
))
{
cdSb
.
append
(
" "
)
.
append
(
"分享配置调整"
);
}
String
s
=
cdSb
.
toString
();
if
(
StringUtils
.
isBlank
(
s
))
{
GicLogRecordEvaluationContext
.
noWriteLog
();
record
.
setStatusFlag
(
0
);
}
else
{
content
+=
s
;
}
record
.
setContent
(
content
);
}
catch
(
Exception
e
)
{
record
.
setStatusFlag
(
0
);
record
.
setContent
(
"日志记录异常!"
);
logger
.
info
(
"日志记录异常执行失败"
,
e
);
}
}
}
haoban-manage3-web/src/main/java/com/gic/haoban/manage/web/qo/chat/GroupChatActivitySaveQO.java
0 → 100644
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
web
.
qo
.
chat
;
import
com.gic.haoban.manage.api.dto.chat.GroupChatActivityDTO
;
import
java.io.Serializable
;
public
class
GroupChatActivitySaveQO
extends
GroupChatActivityDTO
implements
Serializable
{
}
haoban-manage3-web/src/main/java/com/gic/haoban/manage/web/qo/chat/GroupChatActivitySearchQO.java
0 → 100644
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
web
.
qo
.
chat
;
import
com.fasterxml.jackson.annotation.JsonIgnoreProperties
;
import
com.gic.commons.web.qo.PageQo
;
import
java.io.Serializable
;
import
java.util.Date
;
@JsonIgnoreProperties
(
ignoreUnknown
=
true
)
public
class
GroupChatActivitySearchQO
extends
PageQo
implements
Serializable
{
private
static
final
long
serialVersionUID
=
692426229105512689L
;
/**
* 搜索内容
*/
private
String
search
;
/**
* 状态1未开始2进行中3已终止4已结束
*/
private
Integer
status
;
/**
* 入群方式 1规则入群2定向入群
*/
private
Integer
joinType
;
/**
* 奖励类型 1定额奖励2阶梯奖励
*/
private
Integer
inviteRewardType
;
/**
* 开始时间
*/
private
Date
beginDate
;
/**
* 结束时间
*/
private
Date
endDate
;
private
Integer
showSelfFlag
=
0
;
public
String
getSearch
()
{
return
search
;
}
public
void
setSearch
(
String
search
)
{
this
.
search
=
search
;
}
public
Integer
getStatus
()
{
return
status
;
}
public
void
setStatus
(
Integer
status
)
{
this
.
status
=
status
;
}
public
Integer
getJoinType
()
{
return
joinType
;
}
public
void
setJoinType
(
Integer
joinType
)
{
this
.
joinType
=
joinType
;
}
public
Integer
getInviteRewardType
()
{
return
inviteRewardType
;
}
public
void
setInviteRewardType
(
Integer
inviteRewardType
)
{
this
.
inviteRewardType
=
inviteRewardType
;
}
public
Date
getBeginDate
()
{
return
beginDate
;
}
public
void
setBeginDate
(
Date
beginDate
)
{
this
.
beginDate
=
beginDate
;
}
public
Date
getEndDate
()
{
return
endDate
;
}
public
void
setEndDate
(
Date
endDate
)
{
this
.
endDate
=
endDate
;
}
public
Integer
getShowSelfFlag
()
{
return
showSelfFlag
;
}
public
void
setShowSelfFlag
(
Integer
showSelfFlag
)
{
this
.
showSelfFlag
=
showSelfFlag
;
}
}
haoban-manage3-web/src/main/java/com/gic/haoban/manage/web/vo/chat/GroupChatActivityVO.java
0 → 100644
View file @
e967f0a7
package
com
.
gic
.
haoban
.
manage
.
web
.
vo
.
chat
;
import
com.gic.haoban.manage.api.dto.chat.GroupChatActivityDTO
;
import
com.gic.marketing.api.dto.card.CardStockAndInvalidDTO
;
import
java.io.Serializable
;
import
java.util.List
;
import
java.util.Map
;
public
class
GroupChatActivityVO
extends
GroupChatActivityDTO
implements
Serializable
{
/**
* 卡券信息Map key:卡券id value:卡券基本信息(包括卡券库存、状态、名称)
*/
private
Map
<
String
,
CardStockAndInvalidDTO
>
couponMap
;
/**
* 群活码Map
*/
private
Map
<
String
,
GroupChatHmVO
>
chatHmMap
;
/**
* 人群回显 会员筛选key:searchId,客户分组key:tagGroupList
*/
private
List
<
Map
<
String
,
Object
>>
memberWeightViewList
;
public
Map
<
String
,
CardStockAndInvalidDTO
>
getCouponMap
()
{
return
couponMap
;
}
public
void
setCouponMap
(
Map
<
String
,
CardStockAndInvalidDTO
>
couponMap
)
{
this
.
couponMap
=
couponMap
;
}
public
Map
<
String
,
GroupChatHmVO
>
getChatHmMap
()
{
return
chatHmMap
;
}
public
void
setChatHmMap
(
Map
<
String
,
GroupChatHmVO
>
chatHmMap
)
{
this
.
chatHmMap
=
chatHmMap
;
}
public
List
<
Map
<
String
,
Object
>>
getMemberWeightViewList
()
{
return
memberWeightViewList
;
}
public
void
setMemberWeightViewList
(
List
<
Map
<
String
,
Object
>>
memberWeightViewList
)
{
this
.
memberWeightViewList
=
memberWeightViewList
;
}
}
haoban-manage3-web/src/main/webapp/WEB-INF/dubbo-haoban-manage-web.xml
View file @
e967f0a7
...
...
@@ -25,6 +25,7 @@
<dubbo:reference
interface=
"com.gic.haoban.manage.api.service.chat.GroupChatPlanApiService"
id=
"groupChatPlanApiService"
timeout=
"10000"
/>
<dubbo:reference
interface=
"com.gic.haoban.manage.api.service.chat.GroupChatApiService"
id=
"groupChatApiService"
timeout=
"10000"
/>
<dubbo:reference
interface=
"com.gic.haoban.manage.api.service.chat.GroupChatHmApiService"
id=
"groupChatHmApiService"
timeout=
"10000"
/>
<dubbo:reference
interface=
"com.gic.haoban.manage.api.service.chat.GroupChatActivityApiService"
id=
"groupChatActivityApiService"
timeout=
"10000"
/>
<dubbo:reference
interface=
"com.gic.haoban.manage.api.service.QwFriendApiService"
id=
"qwFriendApiService"
timeout=
"10000"
/>
<dubbo:reference
interface=
"com.gic.haoban.manage.api.service.hm.WxUserAddLogApiService"
id=
"wxUserAddLogApiService"
timeout=
"10000"
/>
<dubbo:reference
interface=
"com.gic.member.tag.api.service.MemberTagApiService"
id=
"memberTagApiService"
timeout=
"10000"
/>
...
...
@@ -139,5 +140,6 @@
<dubbo:reference
interface=
"com.gic.haoban.manage.api.service.licence.LicenceOrderApiService"
id=
"licenceOrderApiService"
/>
<dubbo:reference
id=
"pay4WXService"
interface=
"com.gic.thirdparty.api.service.Pay4WXService"
timeout=
"10000"
retries=
"0"
check=
"false"
/>
<dubbo:reference
id=
"appOrderApiService"
interface=
"com.gic.haoban.manage.api.service.licence.AppOrderApiService"
timeout=
"10000"
retries=
"0"
check=
"false"
/>
<dubbo:reference
id=
"couponCardService"
interface=
"com.gic.marketing.api.service.CouponCardService"
timeout=
"100000"
retries=
"0"
check=
"false"
/>
</beans>
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