From 3f22b35a5c8327b9def2ae5ff0514fdc4c53771f Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Fri, 19 Mar 2021 14:47:36 +0800
Subject: [PATCH] 20210318 活动接口
---
src/main/resources/mapper/activity/ActivityReceiveRecordDao.xml | 17 +
src/main/resources/mapper/contract/ContractOrderDao.xml | 10 +
src/main/java/com/xcong/excoin/modules/activity/dao/ActivityReceiveRecordDao.java | 7
src/main/java/com/xcong/excoin/modules/contract/dao/ContractOrderDao.java | 2
src/main/resources/i18n/messages_en_US.properties | 7
src/main/java/com/xcong/excoin/modules/activity/entity/ActivityReceiveRecord.java | 14
src/main/java/com/xcong/excoin/modules/activity/controller/ActivityController.java | 42 +++
src/main/java/com/xcong/excoin/modules/activity/vo/ActivityMainVo.java | 18 ++
src/main/resources/i18n/messages_zh_CN.properties | 7
/dev/null | 10 -
src/main/java/com/xcong/excoin/modules/platform/service/impl/PlatformBannerServiceImpl.java | 1
src/main/java/com/xcong/excoin/modules/activity/entity/ActivityMain.java | 4
src/main/java/com/xcong/excoin/modules/activity/entity/ActivitySub.java | 16 +
src/main/java/com/xcong/excoin/modules/activity/service/impl/ActivityServiceImpl.java | 240 ++++++++++++++++++++++++++
src/main/java/com/xcong/excoin/modules/activity/vo/ActivityMainDetailVo.java | 47 +++++
src/main/java/com/xcong/excoin/modules/platform/entity/PlatformBannerEntity.java | 7
src/main/resources/mapper/member/MemberAccountMoneyChangeDao.xml | 2
src/main/java/com/xcong/excoin/common/enumerates/MemberWalletCoinEnum.java | 1
src/main/java/com/xcong/excoin/modules/activity/vo/ActivityReceiveRecordVo.java | 32 +++
src/main/java/com/xcong/excoin/modules/activity/service/ActivityService.java | 6
20 files changed, 454 insertions(+), 36 deletions(-)
diff --git a/src/main/java/com/xcong/excoin/common/enumerates/MemberWalletCoinEnum.java b/src/main/java/com/xcong/excoin/common/enumerates/MemberWalletCoinEnum.java
index e4d58dc..e558c7a 100644
--- a/src/main/java/com/xcong/excoin/common/enumerates/MemberWalletCoinEnum.java
+++ b/src/main/java/com/xcong/excoin/common/enumerates/MemberWalletCoinEnum.java
@@ -17,6 +17,7 @@
CONTENTFROMCONTRACT("0004","由合约账户转入"),
CONTENTFROMAGENT("0005","由代理账户转入"),
+ CONTENTFROMACTIVITY("0006","活动激活补贴"),
WALLETCOINCODE("USDT", "USDT"),
diff --git a/src/main/java/com/xcong/excoin/modules/activity/controller/ActivityController.java b/src/main/java/com/xcong/excoin/modules/activity/controller/ActivityController.java
index 6c070d9..f6cfaab 100644
--- a/src/main/java/com/xcong/excoin/modules/activity/controller/ActivityController.java
+++ b/src/main/java/com/xcong/excoin/modules/activity/controller/ActivityController.java
@@ -4,14 +4,17 @@
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
-
import com.xcong.excoin.common.response.Result;
import com.xcong.excoin.modules.activity.service.ActivityService;
-import com.xcong.excoin.modules.activity.vo.ActivityMainListVo;
+import com.xcong.excoin.modules.activity.vo.ActivityMainDetailVo;
+import com.xcong.excoin.modules.activity.vo.ActivityMainVo;
+import com.xcong.excoin.modules.helpCenter.vo.NoticeInfoVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import lombok.extern.slf4j.Slf4j;
@@ -26,13 +29,36 @@
ActivityService activityService;
/**
- * 活动中心
+ * 首页获取活动图片
*/
- @ApiOperation(value="用户协议", notes="用户协议")
- @ApiResponses({@ApiResponse( code = 200, message = "success", response = ActivityMainListVo.class)})
- @GetMapping(value = "/getActivityMainList")
- public Result getActivityMainList() {
- return activityService.getActivityMainList();
+ @ApiOperation(value="首页获取活动图片", notes="首页获取活动图片")
+ @ApiResponses({@ApiResponse( code = 200, message = "success", response = ActivityMainVo.class)})
+ @GetMapping(value = "/getActivityMain")
+ public Result getActivityMain() {
+ return activityService.getActivityMain();
}
+
+ /**
+ * 活动详情
+ */
+ @ApiOperation(value="活动详情", notes="活动详情")
+ @ApiResponses({@ApiResponse( code = 200, message = "success", response = ActivityMainDetailVo.class)})
+ @GetMapping(value = "/getActivityMainDetail")
+ public Result getActivityMainDetail(@ApiParam(name = "活动ID", value = "ID", example = "1")
+ @RequestParam(value = "Id") long Id) {
+ return activityService.getActivityMainDetail(Id);
+ }
+
+ /**
+ * 点击领取
+ */
+ @ApiOperation(value="点击领取", notes="点击领取")
+ @GetMapping(value = "/clinkReceive")
+ public Result clinkReceive(@ApiParam(name = "活动规则ID", value = "subId", example = "1")
+ @RequestParam(value = "subId") long subId) {
+ return activityService.clinkReceive(subId);
+ }
+
+
}
diff --git a/src/main/java/com/xcong/excoin/modules/activity/dao/ActivityReceiveRecordDao.java b/src/main/java/com/xcong/excoin/modules/activity/dao/ActivityReceiveRecordDao.java
index ed7e680..e3dc8fd 100644
--- a/src/main/java/com/xcong/excoin/modules/activity/dao/ActivityReceiveRecordDao.java
+++ b/src/main/java/com/xcong/excoin/modules/activity/dao/ActivityReceiveRecordDao.java
@@ -1,7 +1,12 @@
package com.xcong.excoin.modules.activity.dao;
+import java.util.List;
+
+import org.apache.ibatis.annotations.Param;
+
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.xcong.excoin.modules.activity.entity.ActivityReceiveRecord;
+import com.xcong.excoin.modules.activity.vo.ActivityReceiveRecordVo;
/**
* @description 活动记录表
@@ -10,4 +15,6 @@
*/
public interface ActivityReceiveRecordDao extends BaseMapper<ActivityReceiveRecord>{
+ List<ActivityReceiveRecordVo> selectListByMemberIdAndMainId(@Param("memberId")Long memberId, @Param("mainId")long id);
+
}
\ No newline at end of file
diff --git a/src/main/java/com/xcong/excoin/modules/activity/entity/ActivityMain.java b/src/main/java/com/xcong/excoin/modules/activity/entity/ActivityMain.java
index f2f586c..da64dc0 100644
--- a/src/main/java/com/xcong/excoin/modules/activity/entity/ActivityMain.java
+++ b/src/main/java/com/xcong/excoin/modules/activity/entity/ActivityMain.java
@@ -64,6 +64,10 @@
private BigDecimal amount;
+ /**
+ * banner图Id
+ */
+ private Long bannerId;
diff --git a/src/main/java/com/xcong/excoin/modules/activity/entity/ActivityReceiveRecord.java b/src/main/java/com/xcong/excoin/modules/activity/entity/ActivityReceiveRecord.java
index 5b600f7..6e0a11d 100644
--- a/src/main/java/com/xcong/excoin/modules/activity/entity/ActivityReceiveRecord.java
+++ b/src/main/java/com/xcong/excoin/modules/activity/entity/ActivityReceiveRecord.java
@@ -17,10 +17,7 @@
@TableName("activity_receive_record")
public class ActivityReceiveRecord extends BaseEntity{
private static final long serialVersionUID = 1L;
-
-
-
/**
* 用户ID
@@ -58,10 +55,11 @@
private Long amcId;
/**
- * 激活状态1已激活2未激活
+ *激活状态1已激活2未激活3已失效
*/
-
-
+ public static final Integer RECEIVESTATE_ONE = 1;
+ public static final Integer RECEIVESTATE_TWO = 2;
+ public static final Integer RECEIVESTATE_THREE = 3;
private Integer receiveState;
/**
@@ -74,8 +72,8 @@
/**
* 失效时间
*/
-
-
+ //激活后在当前时间的基础上新增30天
+ public static final long DAYS = 30;
private Date invalidTime;
diff --git a/src/main/java/com/xcong/excoin/modules/activity/entity/ActivitySub.java b/src/main/java/com/xcong/excoin/modules/activity/entity/ActivitySub.java
index 1929353..321f414 100644
--- a/src/main/java/com/xcong/excoin/modules/activity/entity/ActivitySub.java
+++ b/src/main/java/com/xcong/excoin/modules/activity/entity/ActivitySub.java
@@ -14,11 +14,8 @@
@TableName("activity_sub")
public class ActivitySub extends BaseEntity{
private static final long serialVersionUID = 1L;
-
-
-
/**
* 活动主表ID
*/
@@ -29,6 +26,15 @@
/**
* 规则code
*/
+ public static final String CODE_ONE = "CODE_ONE";
+ public static final String CODE_TWO = "CODE_TWO";
+ public static final BigDecimal CODE_TWO_BIG_DECIMAL = new BigDecimal(200);
+ public static final String CODE_THREE = "CODE_THREE";
+ public static final BigDecimal CODE_THREE_BIG_DECIMAL = new BigDecimal(500);
+ public static final String CODE_FOUR = "CODE_FOUR";
+ public static final BigDecimal CODE_FOUR_BIG_DECIMAL = new BigDecimal(900);
+ public static final String CODE_FIVE = "CODE_FIVE";
+ public static final BigDecimal CODE_FIVE_BIG_DECIMAL = new BigDecimal(1900);
private String code;
@@ -38,14 +44,14 @@
*/
- private String name ;
+ private String name;
/**
* 条件
*/
- private String condition;
+ private String conditions;
/**
* 奖励金额
diff --git a/src/main/java/com/xcong/excoin/modules/activity/service/ActivityService.java b/src/main/java/com/xcong/excoin/modules/activity/service/ActivityService.java
index 0c2cf7b..b712b62 100644
--- a/src/main/java/com/xcong/excoin/modules/activity/service/ActivityService.java
+++ b/src/main/java/com/xcong/excoin/modules/activity/service/ActivityService.java
@@ -6,6 +6,10 @@
public interface ActivityService extends IService<ActivityMain> {
- Result getActivityMainList();
+ Result getActivityMain();
+
+ Result getActivityMainDetail(long id);
+
+ Result clinkReceive(long subId);
}
diff --git a/src/main/java/com/xcong/excoin/modules/activity/service/impl/ActivityServiceImpl.java b/src/main/java/com/xcong/excoin/modules/activity/service/impl/ActivityServiceImpl.java
index a4b34d8..10b717f 100644
--- a/src/main/java/com/xcong/excoin/modules/activity/service/impl/ActivityServiceImpl.java
+++ b/src/main/java/com/xcong/excoin/modules/activity/service/impl/ActivityServiceImpl.java
@@ -1,17 +1,46 @@
package com.xcong.excoin.modules.activity.service.impl;
+import java.math.BigDecimal;
+import java.util.Date;
+import java.util.List;
+
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.xcong.excoin.common.LoginUserUtils;
+import com.xcong.excoin.common.enumerates.MemberWalletCoinEnum;
import com.xcong.excoin.common.response.Result;
import com.xcong.excoin.modules.activity.dao.ActivityMainDao;
import com.xcong.excoin.modules.activity.dao.ActivityMemberDetailDao;
import com.xcong.excoin.modules.activity.dao.ActivityReceiveRecordDao;
import com.xcong.excoin.modules.activity.dao.ActivitySubDao;
import com.xcong.excoin.modules.activity.entity.ActivityMain;
+import com.xcong.excoin.modules.activity.entity.ActivityMemberDetail;
+import com.xcong.excoin.modules.activity.entity.ActivityReceiveRecord;
+import com.xcong.excoin.modules.activity.entity.ActivitySub;
import com.xcong.excoin.modules.activity.service.ActivityService;
+import com.xcong.excoin.modules.activity.vo.ActivityMainDetailVo;
+import com.xcong.excoin.modules.activity.vo.ActivityMainVo;
+import com.xcong.excoin.modules.activity.vo.ActivityReceiveRecordVo;
+import com.xcong.excoin.modules.coin.dao.MemberAccountMoneyChangeDao;
+import com.xcong.excoin.modules.coin.entity.MemberAccountMoneyChange;
+import com.xcong.excoin.modules.contract.dao.ContractOrderDao;
+import com.xcong.excoin.modules.contract.entity.ContractOrderEntity;
+import com.xcong.excoin.modules.documentary.vo.MemberIsTradeVo;
+import com.xcong.excoin.modules.member.dao.MemberDao;
+import com.xcong.excoin.modules.member.dao.MemberWalletCoinDao;
+import com.xcong.excoin.modules.member.entity.MemberEntity;
+import com.xcong.excoin.modules.member.entity.MemberWalletCoinEntity;
+import com.xcong.excoin.modules.platform.dao.PlatformBannerDao;
+import com.xcong.excoin.modules.platform.entity.PlatformBannerEntity;
+import com.xcong.excoin.utils.MessageSourceUtils;
+
+import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.util.ObjectUtil;
import lombok.extern.slf4j.Slf4j;
@Slf4j
@@ -26,11 +55,216 @@
private ActivityMemberDetailDao activityMemberDetailDao;
@Resource
private ActivityReceiveRecordDao activityReceiveRecordDao;
+ @Resource
+ private MemberDao memberDao;
+ @Resource
+ PlatformBannerDao platformBannerDao;
+ @Resource
+ ContractOrderDao contractOrderDao;
+ @Resource
+ MemberAccountMoneyChangeDao memberAccountMoneyChangeDao;
+ @Resource
+ MemberWalletCoinDao memberWalletCoinDao;
@Override
- public Result getActivityMainList() {
- // TODO Auto-generated method stub
- return null;
+ public Result getActivityMain() {
+ //登录验证
+ LoginUserUtils.getAppLoginUser().getId();
+
+ ActivityMainVo activityMainVo = new ActivityMainVo();
+ //活动图片
+ QueryWrapper<PlatformBannerEntity> queryWrapper = new QueryWrapper<>();
+ queryWrapper.eq("is_banner",PlatformBannerEntity.BANNER_NO);
+ PlatformBannerEntity platformBannerEntity = platformBannerDao.selectOne(queryWrapper);
+ //查询图片绑定的活动
+ if(ObjectUtil.isNotEmpty(platformBannerEntity)) {
+ activityMainVo.setImageUrl(platformBannerEntity.getImageUrl());
+ activityMainVo.setIsJump(Integer.parseInt(platformBannerEntity.getIsJump()));
+
+ QueryWrapper<ActivityMain> queryWrappers = new QueryWrapper<>();
+ queryWrappers.eq("banner_id",platformBannerEntity.getId());
+ ActivityMain activityMain = activityMainDao.selectOne(queryWrappers);
+ if(ObjectUtil.isNotEmpty(activityMain)) {
+ activityMainVo.setId(activityMain.getId());
+ }
+ }
+ return Result.ok(activityMainVo);
}
+ @Override
+ public Result getActivityMainDetail(long id) {
+ //登录验证
+ Long memberId = LoginUserUtils.getAppLoginUser().getId();
+ ActivityMainDetailVo activityMainDetailVo = new ActivityMainDetailVo();
+
+ /**
+ * 头部信息
+ */
+ QueryWrapper<ActivityMemberDetail> queryWrapper = new QueryWrapper<>();
+ queryWrapper.eq("member_id",memberId);
+ queryWrapper.eq("main_id",id);
+ ActivityMemberDetail activityMemberDetail = activityMemberDetailDao.selectOne(queryWrapper);
+ //获取当前人的累计爆仓金额
+ BigDecimal burstUsdt = contractOrderDao.getBurstUsdtByMemberId(memberId);
+ activityMainDetailVo.setBurstUsdt(burstUsdt);
+ activityMainDetailVo.setReceivedUsdt(activityMemberDetail.getReceivedUsdt());
+ activityMainDetailVo.setSurplusUsdt(activityMemberDetail.getSurplusUsdt());
+ /**
+ * 活动名称
+ */
+ ActivityMain activityMain = activityMainDao.selectById(id);
+ activityMainDetailVo.setName(activityMain.getName());
+ activityMainDetailVo.setContent(activityMain.getContent());
+ activityMainDetailVo.setState(activityMain.getState());
+ activityMainDetailVo.setStartTime(activityMain.getStartTime());
+ activityMainDetailVo.setEndTime(activityMain.getEndTime());
+ /**
+ * 活动细则
+ */
+ //根据活动主表ID和memberID获取对应的活动细则
+ List<ActivityReceiveRecordVo> activityReceiveRecordVos = activityReceiveRecordDao.selectListByMemberIdAndMainId(memberId,id);
+ activityMainDetailVo.setActivityReceiveRecordVos(activityReceiveRecordVos);
+ return Result.ok(activityMainDetailVo);
+ }
+
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public Result clinkReceive(long subId) {
+ //登录验证
+ Long memberId = LoginUserUtils.getAppLoginUser().getId();
+ //验证是否实名认证
+ MemberEntity memberEntity = memberDao.selectById(memberId);
+ Integer certifyStatus = memberEntity.getCertifyStatus();
+ if(MemberEntity.CERTIFY_STATUS_Y != certifyStatus) {
+ return Result.fail(MessageSourceUtils.getString("activity_service_0001"));
+ }
+ //验证领取记录是否失效
+ QueryWrapper<ActivityReceiveRecord> queryWrapperActivityReceiveRecord = new QueryWrapper<>();
+ queryWrapperActivityReceiveRecord.eq("member_id",memberId);
+ queryWrapperActivityReceiveRecord.eq("sub_id",subId);
+ ActivityReceiveRecord activityReceiveRecord = activityReceiveRecordDao.selectOne(queryWrapperActivityReceiveRecord);
+ Date receiveTime = activityReceiveRecord.getReceiveTime();
+ Date date = new Date();
+ if(receiveTime.getTime() - date.getTime() < 0) {
+ return Result.fail(MessageSourceUtils.getString("activity_service_0002"));
+ }
+ //验证当前活动是否结束
+ ActivityMain activityMain = activityMainDao.selectById(activityReceiveRecord.getMainId());
+ Date endTime = activityMain.getEndTime();
+ if(endTime.getTime() - date.getTime() < 0) {
+ return Result.fail(MessageSourceUtils.getString("activity_service_0004"));
+ }
+
+ //处于失效状态
+ Integer receiveState = activityReceiveRecord.getReceiveState();
+ if(ActivityReceiveRecord.RECEIVESTATE_THREE == receiveState) {
+ return Result.fail(MessageSourceUtils.getString("activity_service_0002"));
+ }
+ //不能重复领取
+ if(ActivityReceiveRecord.RECEIVESTATE_ONE == receiveState) {
+ return Result.fail(MessageSourceUtils.getString("activity_service_0003"));
+ }
+
+ //获取对应的规则编码
+ ActivitySub activitySub = activitySubDao.selectById(subId);
+ String code = activitySub.getCode();
+ //获取当前人的累计爆仓金额
+ BigDecimal burstUsdt = contractOrderDao.getBurstUsdtByMemberId(memberId);
+ //判断是否满足领取条件
+ if(ActivitySub.CODE_TWO.equals(code)) {
+ if(ActivitySub.CODE_TWO_BIG_DECIMAL.compareTo(burstUsdt) > 0) {
+ return Result.fail(MessageSourceUtils.getString("activity_service_0005"));
+ }
+ }
+ if(ActivitySub.CODE_THREE.equals(code)) {
+ if(ActivitySub.CODE_THREE_BIG_DECIMAL.compareTo(burstUsdt) > 0) {
+ return Result.fail(MessageSourceUtils.getString("activity_service_0005"));
+ }
+ }
+ if(ActivitySub.CODE_FOUR.equals(code)) {
+ if(ActivitySub.CODE_FOUR_BIG_DECIMAL.compareTo(burstUsdt) > 0) {
+ return Result.fail(MessageSourceUtils.getString("activity_service_0005"));
+ }
+ }
+ if(ActivitySub.CODE_FIVE.equals(code)) {
+ if(ActivitySub.CODE_FIVE_BIG_DECIMAL.compareTo(burstUsdt) > 0) {
+ return Result.fail(MessageSourceUtils.getString("activity_service_0005"));
+ }
+ }
+
+ Long mainId = activitySub.getMainId();
+ BigDecimal amount = activitySub.getAmount();
+ /**
+ * 更新领取记录表
+ */
+ activityReceiveRecord.setReceiveCoinAmount(amount);
+ activityReceiveRecord.setReceiveState(ActivityReceiveRecord.RECEIVESTATE_ONE);
+ activityReceiveRecord.setReceiveTime(new Date());
+ activityReceiveRecordDao.updateById(activityReceiveRecord);
+ /**
+ * 更新个人详情页面信息
+ */
+ QueryWrapper<ActivityMemberDetail> queryWrapperMemberDetail = new QueryWrapper<>();
+ queryWrapperMemberDetail.eq("member_id",memberId);
+ queryWrapperMemberDetail.eq("main_id",mainId);
+ ActivityMemberDetail activityMemberDetail = activityMemberDetailDao.selectOne(queryWrapperMemberDetail);
+ //累计爆仓金额
+ activityMemberDetail.setBurstUsdt(burstUsdt);
+ //已领取USDT
+ BigDecimal receivedUsdt = activityMemberDetail.getReceivedUsdt();
+ BigDecimal addReceivedUsdt = receivedUsdt.add(amount);
+ activityMemberDetail.setReceivedUsdt(addReceivedUsdt);
+ //剩余待领取
+ BigDecimal amountMain = activityMain.getAmount();
+ BigDecimal subtractSurplusUsdt = amountMain.subtract(addReceivedUsdt);
+ activityMemberDetail.setSurplusUsdt(subtractSurplusUsdt);
+ activityMemberDetailDao.updateById(activityMemberDetail);
+ /**
+ * 生成一个币币流水记录
+ */
+ MemberAccountMoneyChange memberAccountMoneyChange = new MemberAccountMoneyChange();
+ memberAccountMoneyChange.setContent(MemberWalletCoinEnum.CONTENTFROMACTIVITY.getValue());
+ memberAccountMoneyChange.setMemberId(memberId);
+ memberAccountMoneyChange.setAmount(amount);
+ memberAccountMoneyChange.setStatus(MemberAccountMoneyChange.STATUS_SUCCESS_INTEGER);
+ memberAccountMoneyChange.setSymbol(MemberWalletCoinEnum.WALLETCOINCODE.getValue());
+ memberAccountMoneyChange.setType(MemberAccountMoneyChange.TYPE_WALLET_COIN);
+ memberAccountMoneyChangeDao.insert(memberAccountMoneyChange);
+ /**
+ * 更新币币账户
+ */
+ MemberWalletCoinEntity memberWalletCoinEntity = memberWalletCoinDao.selectWalletCoinBymIdAndCode(memberId, MemberWalletCoinEnum.WALLETCOINCODE.getValue());
+ BigDecimal availableBalance = memberWalletCoinEntity.getAvailableBalance();
+ BigDecimal totalBalance = memberWalletCoinEntity.getTotalBalance();
+ availableBalance.add(amount);
+ totalBalance.add(amount);
+ memberWalletCoinDao.updateById(memberWalletCoinEntity);
+ return Result.ok(MessageSourceUtils.getString("activity_service_0006"));
+ }
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
}
diff --git a/src/main/java/com/xcong/excoin/modules/activity/vo/ActivityMainDetailVo.java b/src/main/java/com/xcong/excoin/modules/activity/vo/ActivityMainDetailVo.java
new file mode 100644
index 0000000..d495ab8
--- /dev/null
+++ b/src/main/java/com/xcong/excoin/modules/activity/vo/ActivityMainDetailVo.java
@@ -0,0 +1,47 @@
+package com.xcong.excoin.modules.activity.vo;
+
+import java.math.BigDecimal;
+import java.util.Date;
+import java.util.List;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+@ApiModel(value = "ActivityMainDetailVo", description = "参数返回类")
+public class ActivityMainDetailVo {
+
+ /**
+ * 头部信息
+ */
+ @ApiModelProperty("累计爆仓额度")
+ private BigDecimal burstUsdt;
+ @ApiModelProperty("已领取USDT")
+ private BigDecimal receivedUsdt;
+ @ApiModelProperty("剩余待领取")
+ private BigDecimal surplusUsdt;
+ /**
+ * 活动名称
+ */
+ @ApiModelProperty("活动名称")
+ private String name;
+ @ApiModelProperty("内容")
+ private String content;
+ @ApiModelProperty("活动状态1:开始2结束")
+ private Integer state;
+ @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+ @ApiModelProperty("开始时间")
+ private Date startTime;
+ @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+ @ApiModelProperty("结束时间")
+ private Date endTime;
+ /**
+ * 活动细则
+ */
+ @ApiModelProperty("活动卷")
+ private List<ActivityReceiveRecordVo> activityReceiveRecordVos;
+
+}
diff --git a/src/main/java/com/xcong/excoin/modules/activity/vo/ActivityMainListVo.java b/src/main/java/com/xcong/excoin/modules/activity/vo/ActivityMainListVo.java
deleted file mode 100644
index 89ce936..0000000
--- a/src/main/java/com/xcong/excoin/modules/activity/vo/ActivityMainListVo.java
+++ /dev/null
@@ -1,10 +0,0 @@
-package com.xcong.excoin.modules.activity.vo;
-
-import io.swagger.annotations.ApiModel;
-import lombok.Data;
-
-@Data
-@ApiModel(value = "ActivityMainListVo", description = "参数返回类")
-public class ActivityMainListVo {
-
-}
diff --git a/src/main/java/com/xcong/excoin/modules/activity/vo/ActivityMainVo.java b/src/main/java/com/xcong/excoin/modules/activity/vo/ActivityMainVo.java
new file mode 100644
index 0000000..029b57f
--- /dev/null
+++ b/src/main/java/com/xcong/excoin/modules/activity/vo/ActivityMainVo.java
@@ -0,0 +1,18 @@
+package com.xcong.excoin.modules.activity.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+@ApiModel(value = "ActivityMainVo", description = "参数返回类")
+public class ActivityMainVo {
+
+ @ApiModelProperty("图片链接")
+ private String imageUrl;
+ @ApiModelProperty("活动ID")
+ private Long id;
+ @ApiModelProperty("是否可跳转 1-是2-否")
+ private int isJump;
+
+}
diff --git a/src/main/java/com/xcong/excoin/modules/activity/vo/ActivityReceiveRecordVo.java b/src/main/java/com/xcong/excoin/modules/activity/vo/ActivityReceiveRecordVo.java
new file mode 100644
index 0000000..6688af3
--- /dev/null
+++ b/src/main/java/com/xcong/excoin/modules/activity/vo/ActivityReceiveRecordVo.java
@@ -0,0 +1,32 @@
+package com.xcong.excoin.modules.activity.vo;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+@ApiModel(value = "ActivityReceiveRecordVo", description = "参数返回类")
+public class ActivityReceiveRecordVo {
+
+ @ApiModelProperty("活动规则ID")
+ private Long subId;
+ @ApiModelProperty("规则名称")
+ private String subName;
+ @ApiModelProperty("规则code")
+ private String subcode;
+ @ApiModelProperty("规则奖励金额")
+ private BigDecimal subAmount;
+ @ApiModelProperty("条件")
+ private String subConditions;
+ @ApiModelProperty("激活状态1已激活2未激活3已领取")
+ private Integer receiveState;
+ @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+ @ApiModelProperty("失效时间")
+ private Date invalidTime;
+
+}
diff --git a/src/main/java/com/xcong/excoin/modules/contract/dao/ContractOrderDao.java b/src/main/java/com/xcong/excoin/modules/contract/dao/ContractOrderDao.java
index 54137a2..1ef44c6 100644
--- a/src/main/java/com/xcong/excoin/modules/contract/dao/ContractOrderDao.java
+++ b/src/main/java/com/xcong/excoin/modules/contract/dao/ContractOrderDao.java
@@ -31,4 +31,6 @@
BigDecimal selectWholeFeeAmountByOrderNo(@Param("orderNo") String orderNo);
int updateOrderProfitOrLessById(@Param("rewardAmount") BigDecimal rewardAmount, @Param("rewardRatio") BigDecimal rewardRatio, @Param("id") Long id);
+
+ public BigDecimal getBurstUsdtByMemberId(@Param("memberId") Long memberId);
}
diff --git a/src/main/java/com/xcong/excoin/modules/platform/entity/PlatformBannerEntity.java b/src/main/java/com/xcong/excoin/modules/platform/entity/PlatformBannerEntity.java
index 6a511c6..5d0bf28 100644
--- a/src/main/java/com/xcong/excoin/modules/platform/entity/PlatformBannerEntity.java
+++ b/src/main/java/com/xcong/excoin/modules/platform/entity/PlatformBannerEntity.java
@@ -44,4 +44,11 @@
* 是否置顶 1-是2-否
*/
private String isTop;
+ /**
+ * 是不是Banner图 1-是2-否
+ */
+ private int isBanner;
+
+ public static final int BANNER_YES = 1;
+ public static final int BANNER_NO = 2;
}
diff --git a/src/main/java/com/xcong/excoin/modules/platform/service/impl/PlatformBannerServiceImpl.java b/src/main/java/com/xcong/excoin/modules/platform/service/impl/PlatformBannerServiceImpl.java
index a6e0c72..972edd7 100644
--- a/src/main/java/com/xcong/excoin/modules/platform/service/impl/PlatformBannerServiceImpl.java
+++ b/src/main/java/com/xcong/excoin/modules/platform/service/impl/PlatformBannerServiceImpl.java
@@ -23,6 +23,7 @@
@Override
public Result findAll() {
QueryWrapper<PlatformBannerEntity> queryWrapper = new QueryWrapper<>();
+ queryWrapper.eq("is_banner",1);
List<PlatformBannerEntity> paymentMethodList = platformBannerDao.selectList(queryWrapper);
return Result.ok(paymentMethodList);
}
diff --git a/src/main/resources/i18n/messages_en_US.properties b/src/main/resources/i18n/messages_en_US.properties
index 1b5f99a..da67cfb 100644
--- a/src/main/resources/i18n/messages_en_US.properties
+++ b/src/main/resources/i18n/messages_en_US.properties
@@ -233,6 +233,13 @@
documentary_service_0018=In documentary, cannot adjust to full position margin mode
documentary_service_0019=The follower has a documentary contract and cannot kick out
+activity_service_0001=Please pass the real name authentication first
+activity_service_0002=Currently invalid
+activity_service_0003=Cannot activate repeatedly
+activity_service_0004=The activity has ended
+activity_service_0005=Can't get it if you don't meet the conditions
+activity_service_0006=Received successfully, it has been issued to currency account
+
uploadFile_controller_0001=Upload failed
result_success_msg=Operation success
diff --git a/src/main/resources/i18n/messages_zh_CN.properties b/src/main/resources/i18n/messages_zh_CN.properties
index fa50004..339b722 100644
--- a/src/main/resources/i18n/messages_zh_CN.properties
+++ b/src/main/resources/i18n/messages_zh_CN.properties
@@ -233,6 +233,13 @@
documentary_service_0018=正在跟单中,无法调整为全仓保证金模式
documentary_service_0019=跟随者拥有跟单合约,无法踢出
+activity_service_0001=请先通过实名认证
+activity_service_0002=已失效
+activity_service_0003=无法重复激活
+activity_service_0004=活动已结束
+activity_service_0005=不满足领取条件,无法领取
+activity_service_0006=领取成功,已发放至币币账户
+
uploadFile_controller_0001=上传失败
result_success_msg=操作成功
diff --git a/src/main/resources/mapper/activity/ActivityReceiveRecordDao.xml b/src/main/resources/mapper/activity/ActivityReceiveRecordDao.xml
index 23dfcf7..db12e2c 100644
--- a/src/main/resources/mapper/activity/ActivityReceiveRecordDao.xml
+++ b/src/main/resources/mapper/activity/ActivityReceiveRecordDao.xml
@@ -38,4 +38,21 @@
<result property="invalidTime" column="invalid_time" />
</resultMap>
+ <select id="selectListByMemberIdAndMainId" resultType="com.xcong.excoin.modules.activity.vo.ActivityReceiveRecordVo">
+ SELECT
+ a.receive_state receiveState,
+ a.invalid_time invalidTime,
+ b.id subId,
+ b.`name` subName,
+ b.code subcode,
+ b.conditions subConditions,
+ b.amount subAmount
+ FROM
+ activity_receive_record a
+ LEFT JOIN activity_sub b ON a.sub_id = b.id
+ WHERE
+ a.main_id = #{mainId}
+ AND a.member_id = #{memberId}
+ </select>
+
</mapper>
\ No newline at end of file
diff --git a/src/main/resources/mapper/contract/ContractOrderDao.xml b/src/main/resources/mapper/contract/ContractOrderDao.xml
index d0441d5..ff042eb 100644
--- a/src/main/resources/mapper/contract/ContractOrderDao.xml
+++ b/src/main/resources/mapper/contract/ContractOrderDao.xml
@@ -97,4 +97,14 @@
reward_ratio=#{rewardRatio}
where id=#{id}
</update>
+
+ <select id="getBurstUsdtByMemberId" resultType="java.math.BigDecimal">
+ SELECT
+ IFNULL(SUM(reward_amount), 0)
+ FROM
+ contract_order
+ WHERE
+ closing_type IN (4, 5)
+ and member_id=#{memberId}
+ </select>
</mapper>
\ No newline at end of file
diff --git a/src/main/resources/mapper/member/MemberAccountMoneyChangeDao.xml b/src/main/resources/mapper/member/MemberAccountMoneyChangeDao.xml
index 894e026..90a0164 100644
--- a/src/main/resources/mapper/member/MemberAccountMoneyChangeDao.xml
+++ b/src/main/resources/mapper/member/MemberAccountMoneyChangeDao.xml
@@ -64,7 +64,7 @@
<if test="record != null">
<where>
type = 3
- and content like '%佣金到账%'
+ and (content like '%佣金到账%' or content like '%活动%')
<if test="record.memberId != null" >
and member_id=#{record.memberId}
</if>
--
Gitblit v1.9.1