Commit 4a9bcd21 by xiongjiangtao

邀请奖励

parent 603b3df7
......@@ -3,6 +3,7 @@ package com.gic.haoban.manage.api.qdto.chat;
import com.gic.api.base.commons.BasePageInfo;
import java.io.Serializable;
import java.util.Date;
/**
* @author shangfeng
......@@ -23,6 +24,21 @@ public class GroupChatActivityRewardLogQDTO extends BasePageInfo implements Seri
*/
private String memberId;
/**
* 奖励人类型 1邀请人2受邀人
*/
private Integer rewardInvite;
/**
* 开始时间
*/
private Date beginTime;
/**
* 结束时间
*/
private Date endTime;
public String getEnterpriseId() {
return enterpriseId;
}
......@@ -46,4 +62,28 @@ public class GroupChatActivityRewardLogQDTO extends BasePageInfo implements Seri
public void setMemberId(String memberId) {
this.memberId = memberId;
}
public Integer getRewardInvite() {
return rewardInvite;
}
public void setRewardInvite(Integer rewardInvite) {
this.rewardInvite = rewardInvite;
}
public Date getBeginTime() {
return beginTime;
}
public void setBeginTime(Date beginTime) {
this.beginTime = beginTime;
}
public Date getEndTime() {
return endTime;
}
public void setEndTime(Date endTime) {
this.endTime = endTime;
}
}
package com.gic.haoban.manage.web.handle;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.gic.api.base.commons.Page;
import com.gic.commons.util.DateUtil;
import com.gic.commons.webapi.reponse.RestResponse;
import com.gic.enterprise.api.dto.security.DownloadReportDTO;
import com.gic.haoban.manage.api.qdto.chat.GroupChatActivityRewardLogQDTO;
import com.gic.haoban.manage.web.controller.chat.GroupChatActivityDataController;
import com.gic.haoban.manage.web.qo.chat.GroupChatActivityRewardLogReq;
import com.gic.haoban.manage.web.vo.chat.GroupChatActivityInviteVO;
import com.gic.haoban.manage.web.vo.chat.GroupChatActivityRewardLogExportVO;
import com.gic.haoban.manage.web.vo.chat.GroupChatActivityRewardLogVO;
import com.gic.haoban.manage.web.vo.chat.GroupChatDataJoinDetailVO;
import com.gic.web.common.download.DownloadHandlerAbstract;
import com.gic.web.common.download.context.Context;
import com.google.common.collect.Lists;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang.StringUtils;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
/**
* @author shangfeng
* @date 2024-10-11 17:30:10
*/
@Component
public class GroupChatActivityRewardHandle extends DownloadHandlerAbstract<GroupChatActivityInviteVO> {
public class GroupChatActivityRewardHandle extends DownloadHandlerAbstract<GroupChatActivityRewardLogExportVO> {
private static Logger log = LogManager.getLogger(GroupChatActivityRewardHandle.class);
@Resource
private GroupChatActivityDataController groupChatActivityDataController;
@Override
public List<GroupChatActivityInviteVO> getData(Context context, String s, Integer integer) {
return null;
public List<GroupChatActivityRewardLogExportVO> getData(Context context, String searchDataParams, Integer currentPage) {
GroupChatActivityRewardLogReq rewardLogReq = JSON.parseObject(searchDataParams, GroupChatActivityRewardLogReq.class);
rewardLogReq.setPageNum(currentPage);
rewardLogReq.setPageSize(getPageSize());
log.info("社群邀请有礼奖励明细数据导出,请求参数={}", JSON.toJSONString(rewardLogReq));
RestResponse<Page<GroupChatActivityRewardLogVO>> dataPageVORestResponse = groupChatActivityDataController.rewardDetail(rewardLogReq);
List<GroupChatActivityRewardLogVO> groupChatActivityRewardLogVOS = dataPageVORestResponse.getResult().getResult();
if (CollectionUtils.isEmpty(groupChatActivityRewardLogVOS)) {
return Lists.newArrayList();
}
List<GroupChatActivityRewardLogExportVO> goodsAnalysisInteractionDetailExportVOS = Lists.newArrayList();
for (GroupChatActivityRewardLogVO groupChatActivityRewardLogVO : groupChatActivityRewardLogVOS) {
GroupChatActivityRewardLogExportVO groupChatActivityRewardLogExportVO = new GroupChatActivityRewardLogExportVO();
BeanUtils.copyProperties(groupChatActivityRewardLogVO, groupChatActivityRewardLogExportVO);
groupChatActivityRewardLogExportVO.setRewardTime(DateUtil.datetimeToString(groupChatActivityRewardLogVO.getCreateTime()));
groupChatActivityRewardLogExportVO.setRewardTime(DateUtil.datetimeToString(groupChatActivityRewardLogVO.getCreateTime()));
if (groupChatActivityRewardLogVO.getRewardInvite() == 1) {
groupChatActivityRewardLogExportVO.setInviteLevelType("邀请奖励");
groupChatActivityRewardLogExportVO.setInviteLevelType("达成第" + groupChatActivityRewardLogVO.getInviteLevel() + "阶梯邀请奖励");
} else {
groupChatActivityRewardLogExportVO.setInviteLevelType("受邀奖励");
groupChatActivityRewardLogExportVO.setInviteLevelType("受邀进群奖励");
}
}
log.info("社群邀请有礼奖励明细数据导出={}", JSON.toJSONString(goodsAnalysisInteractionDetailExportVOS));
return goodsAnalysisInteractionDetailExportVOS;
}
@Override
public List<String> getColumnNames() {
return null;
return Lists.newArrayList();
}
@Override
......@@ -32,6 +87,24 @@ public class GroupChatActivityRewardHandle extends DownloadHandlerAbstract<Group
@Override
public List<String> getColumns() {
return null;
return Lists.newArrayList();
}
@Override
public List<String> getColumns(Context context) {
DownloadReportDTO downloadReportDTO = context.getDownloadReportDTO();
String searchDataParams = downloadReportDTO.getSearchDataParams();
JSONObject jsonObject = JSONObject.parseObject(searchDataParams);
List<String> list = (List<String>) jsonObject.get("fieldList");
return list;
}
@Override
public List<String> getColumnNames(Context context) {
DownloadReportDTO downloadReportDTO = context.getDownloadReportDTO();
String searchDataParams = downloadReportDTO.getSearchDataParams();
JSONObject jsonObject = JSONObject.parseObject(searchDataParams);
List<String> list = (List<String>) jsonObject.get("indexList");
return list;
}
}
package com.gic.haoban.manage.web.qo.chat;
import java.io.Serializable;
import java.util.Date;
/**
* @author shangfeng
* @date 2024-10-12 10:54:22
*/
public class GroupChatActivityRewardLogReq implements Serializable {
private static final long serialVersionUID = -8126068400193316985L;
private String enterpriseId;
/**
* 社群活动id
*/
private Long chatActivityId;
/**
* 邀请人会员ID
*/
private String memberId;
/**
* 奖励人类型 1邀请人2受邀人
*/
private Integer rewardInvite;
/**
* 开始时间
*/
private Date beginTime;
/**
* 结束时间
*/
private Date endTime;
private Integer dataType;
private Integer pageNum;
private Integer pageSize;
public String getEnterpriseId() {
return enterpriseId;
}
public void setEnterpriseId(String enterpriseId) {
this.enterpriseId = enterpriseId;
}
public Long getChatActivityId() {
return chatActivityId;
}
public void setChatActivityId(Long chatActivityId) {
this.chatActivityId = chatActivityId;
}
public String getMemberId() {
return memberId;
}
public void setMemberId(String memberId) {
this.memberId = memberId;
}
public Integer getRewardInvite() {
return rewardInvite;
}
public void setRewardInvite(Integer rewardInvite) {
this.rewardInvite = rewardInvite;
}
public Date getBeginTime() {
return beginTime;
}
public void setBeginTime(Date beginTime) {
this.beginTime = beginTime;
}
public Date getEndTime() {
return endTime;
}
public void setEndTime(Date endTime) {
this.endTime = endTime;
}
public Integer getDataType() {
return dataType;
}
public void setDataType(Integer dataType) {
this.dataType = dataType;
}
public Integer getPageNum() {
return pageNum;
}
public void setPageNum(Integer pageNum) {
this.pageNum = pageNum;
}
public Integer getPageSize() {
return pageSize;
}
public void setPageSize(Integer pageSize) {
this.pageSize = pageSize;
}
}
package com.gic.haoban.manage.web.vo.chat;
import java.io.Serializable;
import java.util.Date;
/**
* @author shangfeng
* @date 2024-10-12 11:04:43
*/
public class GroupChatActivityRewardLogExportVO implements Serializable {
private static final long serialVersionUID = 881973792150280113L;
/**
* 会员是否删除
* 0 正常
* 1 已删除
*/
private Integer memberDeleteFlag;
/**
* 奖励人类型 1邀请人2受邀人
*/
private String rewardInviteType;
/**
* 奖励阶梯 阶梯奖励,其他奖励默认1
*/
private String inviteLevelType;
/**
* 奖励时间
*/
private String rewardTime;
/**
* 会员名称
*/
private String name;
/**
* 会员手机
*/
private String phoneNumber;
/**
* 会员别名昵称
*/
private String nickName;
/**
* 奖励积分
*/
private Integer integral;
/**
* 奖励成长值
*/
private Integer growth;
/**
* 奖励卡券
*/
private String cardInfo;
public Integer getMemberDeleteFlag() {
return memberDeleteFlag;
}
public void setMemberDeleteFlag(Integer memberDeleteFlag) {
this.memberDeleteFlag = memberDeleteFlag;
}
public String getRewardInviteType() {
return rewardInviteType;
}
public void setRewardInviteType(String rewardInviteType) {
this.rewardInviteType = rewardInviteType;
}
public String getInviteLevelType() {
return inviteLevelType;
}
public void setInviteLevelType(String inviteLevelType) {
this.inviteLevelType = inviteLevelType;
}
public String getRewardTime() {
return rewardTime;
}
public void setRewardTime(String rewardTime) {
this.rewardTime = rewardTime;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPhoneNumber() {
return phoneNumber;
}
public void setPhoneNumber(String phoneNumber) {
this.phoneNumber = phoneNumber;
}
public String getNickName() {
return nickName;
}
public void setNickName(String nickName) {
this.nickName = nickName;
}
public Integer getIntegral() {
return integral;
}
public void setIntegral(Integer integral) {
this.integral = integral;
}
public Integer getGrowth() {
return growth;
}
public void setGrowth(Integer growth) {
this.growth = growth;
}
public String getCardInfo() {
return cardInfo;
}
public void setCardInfo(String cardInfo) {
this.cardInfo = cardInfo;
}
}
......@@ -8,7 +8,7 @@ import java.util.List;
* @author shangfeng
* @date 2024-10-10 15:40:38
*/
public class GroupChatActivityRewardVO implements Serializable {
public class GroupChatActivityRewardLogVO implements Serializable {
private static final long serialVersionUID = -5069228984771030367L;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment