From 9b27517fe8051d1766bae57eb3c5adbbc40dbbd6 Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Mon, 19 Feb 2024 09:37:52 +0800
Subject: [PATCH] 新增节点,需要添加数据库的信息
---
src/main/resources/templates/febs/views/modules/mallMember/moneyFlowList.html | 4 +-
src/main/java/cc/mrbird/febs/mall/entity/MallMember.java | 2
src/main/java/cc/mrbird/febs/common/utils/AppContants.java | 3 +
src/main/java/cc/mrbird/febs/common/enumerates/DataDictionaryEnum.java | 3 +
src/main/java/cc/mrbird/febs/mall/service/impl/MemberProfitServiceImpl.java | 46 ++++++++++++++++++++++
src/main/java/cc/mrbird/febs/mall/controller/AdminNewsInfoController.java | 8 ++++
src/main/java/cc/mrbird/febs/common/enumerates/MoneyFlowTypeNewEnum.java | 5 +-
src/main/java/cc/mrbird/febs/mall/controller/ViewNewsController.java | 6 +++
src/main/java/cc/mrbird/febs/mall/dto/AdminGfaBasicSetDto.java | 4 ++
src/main/resources/templates/febs/views/modules/news/gfaBasicSet.html | 20 +++++++++
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java | 3 +
src/main/resources/templates/febs/views/modules/mallMember/mallMemberList.html | 2
12 files changed, 97 insertions(+), 9 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/common/enumerates/DataDictionaryEnum.java b/src/main/java/cc/mrbird/febs/common/enumerates/DataDictionaryEnum.java
index 4a538bc..ffdec99 100644
--- a/src/main/java/cc/mrbird/febs/common/enumerates/DataDictionaryEnum.java
+++ b/src/main/java/cc/mrbird/febs/common/enumerates/DataDictionaryEnum.java
@@ -5,6 +5,9 @@
@Getter
public enum DataDictionaryEnum {
+ //销毁数量 按照比例销毁或者返利给节点
+ FCM_DESTORY_TOTAL_PERCENT("FCM_DESTORY_TOTAL_PERCENT","FCM_DESTORY_TOTAL_PERCENT"),
+ FCM_DESTORY_POINT_PERCENT("FCM_DESTORY_POINT_PERCENT","FCM_DESTORY_POINT_PERCENT"),
//直推补贴
BASIC_PERK_DIRECT_FROZEN("BASIC_PERK_DIRECT_FROZEN","BASIC_PERK_DIRECT_FROZEN"),
BASIC_PERK_DIRECT("BASIC_PERK_DIRECT","BASIC_PERK_DIRECT"),
diff --git a/src/main/java/cc/mrbird/febs/common/enumerates/MoneyFlowTypeNewEnum.java b/src/main/java/cc/mrbird/febs/common/enumerates/MoneyFlowTypeNewEnum.java
index 83c4a7d..aaf2bd2 100644
--- a/src/main/java/cc/mrbird/febs/common/enumerates/MoneyFlowTypeNewEnum.java
+++ b/src/main/java/cc/mrbird/febs/common/enumerates/MoneyFlowTypeNewEnum.java
@@ -11,6 +11,7 @@
@Getter
public enum MoneyFlowTypeNewEnum {
+ PERK_POINT(28,"节点收益"),
PERK_CYCLE(27,"收益"),
GSD_GFA(26,"GFD兑换GFA"),
GSD_NFT(25,"GFD兑换卡牌"),
@@ -20,7 +21,7 @@
TEAM_PERK_DIRECT_DONE(21,"团队奖励"),
TEAM_PERK_EQUALS(20,"即将获得平级奖励"),
- TEAM_PERK_DIRECT(19,"即将获得团队奖励"),
+ TEAM_PERK_DIRECT(19,"团队贡献值"),
BASIC_PERK_DIRECT_DONE(18,"直推奖励"),
BASIC_PERK_DIRECT_WRONG(17,"账户冻结,遗憾错失奖励"),
@@ -34,7 +35,7 @@
NFT_IN(9,"GFA动态兑换"),
FCM_OUT_FEE(8,"动态兑换手续费"),
FCM_OUT(7,"GFA动态兑换"),
- TOKEN_BUY_FROZEN(6,"预约冻结宝石"),
+ TOKEN_BUY_FROZEN(6,"消耗宝石"),
TOKEN_INSIDE_IN(5,"宝石转入"),
TOKEN_INSIDE_OUT(4,"宝石转出"),
FCM_INSIDE_IN(3,"GFA代币转入"),
diff --git a/src/main/java/cc/mrbird/febs/common/utils/AppContants.java b/src/main/java/cc/mrbird/febs/common/utils/AppContants.java
index 114c610..de1717f 100644
--- a/src/main/java/cc/mrbird/febs/common/utils/AppContants.java
+++ b/src/main/java/cc/mrbird/febs/common/utils/AppContants.java
@@ -45,6 +45,9 @@
public static final BigDecimal FCM_BASIC = new BigDecimal(10000);
public static final BigDecimal FCM_BASIC_ADD_PRICE = new BigDecimal("0.1");
+
+ public static final BigDecimal BASIC_PERCENT = new BigDecimal("0.01");
+
/**
* 系统推荐人id
*/
diff --git a/src/main/java/cc/mrbird/febs/mall/controller/AdminNewsInfoController.java b/src/main/java/cc/mrbird/febs/mall/controller/AdminNewsInfoController.java
index 2d428d5..d2fa39c 100644
--- a/src/main/java/cc/mrbird/febs/mall/controller/AdminNewsInfoController.java
+++ b/src/main/java/cc/mrbird/febs/mall/controller/AdminNewsInfoController.java
@@ -239,6 +239,14 @@
DataDictionaryEnum.NFT_MIN.getType(),
DataDictionaryEnum.NFT_MIN.getCode(),
gfaBasicSetDto.getNftMin());
+ commonService.updateDataDic(
+ DataDictionaryEnum.FCM_DESTORY_POINT_PERCENT.getType(),
+ DataDictionaryEnum.FCM_DESTORY_POINT_PERCENT.getCode(),
+ gfaBasicSetDto.getFcmDesToryCntPointPercent());
+ commonService.updateDataDic(
+ DataDictionaryEnum.FCM_DESTORY_TOTAL_PERCENT.getType(),
+ DataDictionaryEnum.FCM_DESTORY_TOTAL_PERCENT.getCode(),
+ gfaBasicSetDto.getFcmDesToryCntPercent());
return new FebsResponse().success();
}
diff --git a/src/main/java/cc/mrbird/febs/mall/controller/ViewNewsController.java b/src/main/java/cc/mrbird/febs/mall/controller/ViewNewsController.java
index 9c843dc..9754d75 100644
--- a/src/main/java/cc/mrbird/febs/mall/controller/ViewNewsController.java
+++ b/src/main/java/cc/mrbird/febs/mall/controller/ViewNewsController.java
@@ -190,6 +190,12 @@
gfaBasicSetDto.setMinuteCnt(dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
DataDictionaryEnum.INSURE_END_MINUTE.getType(),
DataDictionaryEnum.INSURE_END_MINUTE.getCode()).getValue());
+ gfaBasicSetDto.setFcmDesToryCntPercent(dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
+ DataDictionaryEnum.FCM_DESTORY_TOTAL_PERCENT.getType(),
+ DataDictionaryEnum.FCM_DESTORY_TOTAL_PERCENT.getCode()).getValue());
+ gfaBasicSetDto.setFcmDesToryCntPointPercent(dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
+ DataDictionaryEnum.FCM_DESTORY_POINT_PERCENT.getType(),
+ DataDictionaryEnum.FCM_DESTORY_POINT_PERCENT.getCode()).getValue());
model.addAttribute("gfaBasicSet", gfaBasicSetDto);
return FebsUtil.view("modules/news/gfaBasicSet");
}
diff --git a/src/main/java/cc/mrbird/febs/mall/dto/AdminGfaBasicSetDto.java b/src/main/java/cc/mrbird/febs/mall/dto/AdminGfaBasicSetDto.java
index cd02bb5..3b21977 100644
--- a/src/main/java/cc/mrbird/febs/mall/dto/AdminGfaBasicSetDto.java
+++ b/src/main/java/cc/mrbird/febs/mall/dto/AdminGfaBasicSetDto.java
@@ -26,4 +26,8 @@
private String minuteCnt;
+ private String fcmDesToryCntPercent;
+
+ private String fcmDesToryCntPointPercent;
+
}
diff --git a/src/main/java/cc/mrbird/febs/mall/entity/MallMember.java b/src/main/java/cc/mrbird/febs/mall/entity/MallMember.java
index f73d8be..1db5513 100644
--- a/src/main/java/cc/mrbird/febs/mall/entity/MallMember.java
+++ b/src/main/java/cc/mrbird/febs/mall/entity/MallMember.java
@@ -148,7 +148,7 @@
private Integer creater;
/**
- * 合伙人 1-是 2-否
+ * 合伙人 1-是 2-否 节点
*/
private Integer partner;
/**
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java
index 16cafbd..be739e4 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java
@@ -109,6 +109,7 @@
mallMember.setAccountType(MallMember.ACCOUNT_TYPE_NORMAL);
mallMember.setLevel(AgentLevelEnum.ZERO_LEVEL.getCode());
mallMember.setIsFrozen(ProductEnum.MEMBER_UNFROZEN.getValue());
+ mallMember.setPartner(2);
// mallMember.setSex("男");
// mallMember.setBindPhone(registerDto.getAccount());
@@ -282,7 +283,7 @@
Integer insureMinute = Integer.parseInt(ObjectUtil.isEmpty(insureMinuteDic) ? "60" : insureMinuteDic.getValue());
mallMemberVo.setMinuteCnt(insureMinute);
- DataDictionaryCustom dic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(AppContants.AGENT_LEVEL, mallMember.getLevel());
+ DataDictionaryCustom dic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(mallMember.getLevel(), mallMember.getLevel());
if (dic != null) {
mallMemberVo.setLevelName(dic.getDescription());
}
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/MemberProfitServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/MemberProfitServiceImpl.java
index 0171700..392321b 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/MemberProfitServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/MemberProfitServiceImpl.java
@@ -64,6 +64,8 @@
private final MallProductBuyMapper mallProductBuyMapper;
private final MallProductSellMapper mallProductSellMapper;
private final MallProductSellRecordMapper mallProductSellRecordMapper;
+ private final MallMemberAmountMapper mallMemberAmountMapper;
+ private final IMallMoneyFlowService iMallMoneyFlowService;
@Override
@Transactional(rollbackFor = Exception.class)
@@ -1113,8 +1115,50 @@
@Override
public void fcmNFTExchangeMsg(String cnt) {
+ /**
+ * 销毁数量 按照比例销毁或者返利给节点
+ */
+ BigDecimal destoryCntTotal = new BigDecimal(cnt);
+
+ DataDictionaryCustom totalPercentDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
+ DataDictionaryEnum.FCM_DESTORY_TOTAL_PERCENT.getType(),
+ DataDictionaryEnum.FCM_DESTORY_TOTAL_PERCENT.getCode()
+ );
+ BigDecimal totalPercent = new BigDecimal(totalPercentDic.getValue()).multiply(AppContants.BASIC_PERCENT);
//销毁数量
- BigDecimal destoryCnt = new BigDecimal(cnt);
+ BigDecimal destoryCnt = destoryCntTotal.multiply(totalPercent).setScale(2,BigDecimal.ROUND_DOWN);
+
+ DataDictionaryCustom pointPercentDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
+ DataDictionaryEnum.FCM_DESTORY_POINT_PERCENT.getType(),
+ DataDictionaryEnum.FCM_DESTORY_POINT_PERCENT.getCode()
+ );
+ BigDecimal pointPercent = new BigDecimal(pointPercentDic.getValue()).multiply(AppContants.BASIC_PERCENT);
+
+ //节点评分总数量
+ BigDecimal pointCnt = destoryCntTotal.multiply(pointPercent).setScale(2,BigDecimal.ROUND_DOWN);
+ //给每个节点平分pointCnt。
+ QueryWrapper<MallMember> queryWrapper = new QueryWrapper<>();
+ queryWrapper.eq("partner",1);
+ List<MallMember> mallMembers = mallMemberMapper.selectList(queryWrapper);
+ if(CollUtil.isNotEmpty(mallMembers)){
+ BigDecimal dividePointCnt = pointCnt.divide(new BigDecimal(mallMembers.size()), 2, BigDecimal.ROUND_DOWN);
+ for(MallMember mallMember : mallMembers){
+ Long memberId = mallMember.getId();
+ MallMemberAmount mallMemberAmount = mallMemberAmountMapper.selectByMemberId(memberId);
+ mallMemberAmount.setFcmCntAva(mallMemberAmount.getFcmCntAva().add(dividePointCnt));
+ mallMemberAmountMapper.updateFcmCntAvaById(mallMemberAmount);
+ String orderNo = MallUtils.getOrderNum("JD");
+ iMallMoneyFlowService.addMoneyFlow(
+ memberId,
+ dividePointCnt,
+ MoneyFlowTypeNewEnum.PERK_POINT.getValue(),
+ orderNo,
+ mallMember.getId(),
+ FlowTypeNewEnum.FCM_COIN.getValue(),
+ MoneyFlowTypeNewEnum.PERK_POINT.getDescrition());
+ }
+ }
+
//更新总销毁数量
DataDictionaryCustom fcmDestoryTotalDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
DataDictionaryEnum.FCM_DESTORY_TOTAL.getType(),
diff --git a/src/main/resources/templates/febs/views/modules/mallMember/mallMemberList.html b/src/main/resources/templates/febs/views/modules/mallMember/mallMemberList.html
index 54ea3be..be228b3 100644
--- a/src/main/resources/templates/febs/views/modules/mallMember/mallMemberList.html
+++ b/src/main/resources/templates/febs/views/modules/mallMember/mallMemberList.html
@@ -329,7 +329,7 @@
// {field: 'storeMaster', title: '线下服务中心', templet:'#switchStoreMaster', minWidth: 120,align:'left',hide:toolbarMallmember},
// {field: 'director', title: '代理商', templet:'#switchDirector', minWidth: 120,align:'left' ,hide:toolbarMallmember},
// {field: 'creater', title: '联创', templet:'#switchCreate', minWidth: 120,align:'left' ,hide:toolbarMallmember},
- // {field: 'partner', title: '合伙人', templet:'#switchPartner', minWidth: 120,align:'left' ,hide:toolbarMallmember},
+ {field: 'partner', title: '节点', templet:'#switchPartner', minWidth: 120,align:'left' ,hide:toolbarMallmember},
// {field: 'insideWith', title: '是否内转', templet:'#switchInsideWith', minWidth: 120,align:'left' ,hide:toolbarMallmember},
// {field: 'outsideWith', title: '是否提现', templet:'#switchOutsideWith', minWidth: 120,align:'left' ,hide:toolbarMallmember},
{field: 'isFrozen', title: '是否冻结', templet:'#switchFrozenWith', minWidth: 120,align:'left' ,hide:toolbarMallmember},
diff --git a/src/main/resources/templates/febs/views/modules/mallMember/moneyFlowList.html b/src/main/resources/templates/febs/views/modules/mallMember/moneyFlowList.html
index 92dafb1..b53d2d7 100644
--- a/src/main/resources/templates/febs/views/modules/mallMember/moneyFlowList.html
+++ b/src/main/resources/templates/febs/views/modules/mallMember/moneyFlowList.html
@@ -23,7 +23,7 @@
<option value="3">代币转入</option>
<option value="4">宝石转出</option>
<option value="5">宝石转入</option>
- <option value="6">预约冻结宝石</option>
+ <option value="6">消耗宝石</option>
<option value="7">GFA动态兑换</option>
<option value="8">动态兑换手续费</option>
<option value="9">GFA动态兑换</option>
@@ -89,7 +89,7 @@
{{# } else if(d.type === 5) { }}
<span class="layui-badge febs-bg-orange">宝石转入</span>
{{# } else if(d.type === 6) { }}
- <span class="layui-badge febs-bg-orange">预约冻结宝石</span>
+ <span class="layui-badge febs-bg-orange">消耗宝石</span>
{{# } else if(d.type === 7) { }}
<span class="layui-badge febs-bg-orange">GFA动态兑换</span>
{{# } else if(d.type === 8) { }}
diff --git a/src/main/resources/templates/febs/views/modules/news/gfaBasicSet.html b/src/main/resources/templates/febs/views/modules/news/gfaBasicSet.html
index e091315..9c36452 100644
--- a/src/main/resources/templates/febs/views/modules/news/gfaBasicSet.html
+++ b/src/main/resources/templates/febs/views/modules/news/gfaBasicSet.html
@@ -41,7 +41,7 @@
<label class="layui-form-label febs-form-item-require">解除冻结:</label>
<div class="layui-input-block">
<input type="text" name="frozenFcmCnt" class="layui-input" readonly>
- <div class="layui-form-mid layui-word-aux">账号解除冻结,需要扣除GFA代币数量</div>
+ <div class="layui-form-mid layui-word-aux">账号解除冻结,需要扣除宝石</div>
</div>
</div>
</div>
@@ -58,6 +58,22 @@
<div class="layui-input-block">
<input type="text" name="fcmDesToryTotal" class="layui-input" readonly>
<div class="layui-form-mid layui-word-aux">GFA销毁总数</div>
+ </div>
+ </div>
+ </div>
+ <div class="layui-form-item">
+ <div class="layui-col-lg6">
+ <label class="layui-form-label febs-form-item-require">销毁(%):</label>
+ <div class="layui-input-block">
+ <input type="text" name="fcmDesToryCntPercent" class="layui-input" readonly>
+ <div class="layui-form-mid layui-word-aux">销毁所占百分比</div>
+ </div>
+ </div>
+ <div class="layui-col-lg6">
+ <label class="layui-form-label febs-form-item-require">节点平分(%):</label>
+ <div class="layui-input-block">
+ <input type="text" name="fcmDesToryCntPointPercent" class="layui-input" readonly>
+ <div class="layui-form-mid layui-word-aux">节点平分所占百分比</div>
</div>
</div>
</div>
@@ -141,6 +157,8 @@
form.render();
function initGfaBasicSetValue() {
form.val("gfa-Basic-set-form", {
+ "fcmDesToryCntPercent": gfaBasicSet.fcmDesToryCntPercent,
+ "fcmDesToryCntPointPercent": gfaBasicSet.fcmDesToryCntPointPercent,
"startTime": gfaBasicSet.startTime,
"outFcmFee": gfaBasicSet.outFcmFee,
"fcmPrice": gfaBasicSet.fcmPrice,
--
Gitblit v1.9.1