From 09eca02701d369e82b29c08b403688648c1d4bc6 Mon Sep 17 00:00:00 2001
From: Hentua <wangdoubleone@gmail.com>
Date: Tue, 06 Jun 2023 00:27:45 +0800
Subject: [PATCH] 矩阵修改
---
src/main/java/cc/mrbird/febs/rabbit/enumerates/RabbitQueueEnum.java | 6 +
src/main/java/cc/mrbird/febs/rabbit/consumer/AgentConsumer.java | 10 ++
src/main/java/cc/mrbird/febs/common/runner/FebsStartedUpRunner.java | 18 +-
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java | 2
src/main/resources/templates/febs/views/modules/mallMember/mallMemberList.html | 9 +
src/main/java/cc/mrbird/febs/common/configure/RabbitConfigure.java | 20 ++++
src/main/java/cc/mrbird/febs/mall/service/IMatrixTreeNodeService.java | 10 ++
src/main/java/cc/mrbird/febs/mall/service/impl/MatrixTreeNodeServiceImpl.java | 64 ++++++++++++
src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java | 32 +-----
src/main/java/cc/mrbird/febs/common/tree/MatrixTree.java | 30 +++++
src/main/java/cc/mrbird/febs/mall/init/MatrixTreeInit.java | 5
src/main/java/cc/mrbird/febs/mall/service/impl/MemberProfitServiceImpl.java | 6
src/main/java/cc/mrbird/febs/rabbit/constants/QueueConstants.java | 1
src/main/java/cc/mrbird/febs/rabbit/producter/AgentProducer.java | 5 +
src/main/resources/application-dev.yml | 2
src/test/java/cc/mrbird/febs/TreeTest.java | 40 ++++++++
src/main/resources/templates/febs/views/modules/order/orderList.html | 23 ----
17 files changed, 215 insertions(+), 68 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/common/configure/RabbitConfigure.java b/src/main/java/cc/mrbird/febs/common/configure/RabbitConfigure.java
index e1f7784..232d796 100644
--- a/src/main/java/cc/mrbird/febs/common/configure/RabbitConfigure.java
+++ b/src/main/java/cc/mrbird/febs/common/configure/RabbitConfigure.java
@@ -185,4 +185,24 @@
return BindingBuilder.bind(orderBonusQueue()).to(orderBonusExchange()).with(RabbitQueueEnum.ORDER_BONUS.getRoute());
}
//订单分红 end
+
+
+ /**
+ * 矩阵节点
+ * @return
+ */
+ @Bean
+ public DirectExchange matrixTreeExchange() {
+ return new DirectExchange(RabbitQueueEnum.MATRIX_TREE.getExchange());
+ }
+
+ @Bean
+ public Queue matrixTreeQueue() {
+ return new Queue(QueueConstants.MATRIX_TREE);
+ }
+
+ @Bean
+ public Binding matrixTreeBind() {
+ return BindingBuilder.bind(matrixTreeQueue()).to(matrixTreeExchange()).with(RabbitQueueEnum.MATRIX_TREE.getRoute());
+ }
}
diff --git a/src/main/java/cc/mrbird/febs/common/runner/FebsStartedUpRunner.java b/src/main/java/cc/mrbird/febs/common/runner/FebsStartedUpRunner.java
index b6729ba..8cacfac 100644
--- a/src/main/java/cc/mrbird/febs/common/runner/FebsStartedUpRunner.java
+++ b/src/main/java/cc/mrbird/febs/common/runner/FebsStartedUpRunner.java
@@ -65,15 +65,15 @@
log.info(" ");
log.info("国潮奢美 权限系统启动完毕,地址:{}", url);
- boolean auto = febsProperties.isAutoOpenBrowser();
- if (auto && StringUtils.equalsIgnoreCase(active, FebsConstant.DEVELOP)) {
- String os = System.getProperty("os.name");
- // 默认为 windows时才自动打开页面
- if (StringUtils.containsIgnoreCase(os, FebsConstant.SYSTEM_WINDOWS)) {
- //使用默认浏览器打开系统登录页
- Runtime.getRuntime().exec("cmd /c start " + url);
- }
- }
+// boolean auto = febsProperties.isAutoOpenBrowser();
+// if (auto && StringUtils.equalsIgnoreCase(active, FebsConstant.DEVELOP)) {
+// String os = System.getProperty("os.name");
+// // 默认为 windows时才自动打开页面
+// if (StringUtils.containsIgnoreCase(os, FebsConstant.SYSTEM_WINDOWS)) {
+// //使用默认浏览器打开系统登录页
+// Runtime.getRuntime().exec("cmd /c start " + url);
+// }
+// }
}
}
}
diff --git a/src/main/java/cc/mrbird/febs/common/tree/MatrixTree.java b/src/main/java/cc/mrbird/febs/common/tree/MatrixTree.java
index 3356f8f..ebcf9ff 100644
--- a/src/main/java/cc/mrbird/febs/common/tree/MatrixTree.java
+++ b/src/main/java/cc/mrbird/febs/common/tree/MatrixTree.java
@@ -40,7 +40,20 @@
return null;
}
- MemberNode parentNode = findNotWholeNode();
+ MemberNode childTreeRoot = getNode(node.getRefererId());
+
+ MemberNode parentNode = findNotWholeNode(childTreeRoot == null ? root : childTreeRoot);
+ parentNode.addNode(node);
+ return parentNode;
+ }
+
+ public MemberNode addNode(MemberNode node, Long parentNodeId) {
+ if (parentNodeId == null) {
+ root = node;
+ return null;
+ }
+
+ MemberNode parentNode = getNode(parentNodeId);
parentNode.addNode(node);
return parentNode;
}
@@ -49,7 +62,7 @@
* 层级遍历,查到子节点未满3个的节点
* @return
*/
- public MemberNode findNotWholeNode() {
+ public MemberNode findNotWholeNode(MemberNode root) {
ArrayDeque<MemberNode> deque = new ArrayDeque<>();
deque.add(root);
@@ -77,6 +90,10 @@
return result;
}
+ public MemberNode findNotWholeNode() {
+ return findNotWholeNode(root);
+ }
+
/**
* 查找整个树下对应节点
* @param param memberId/address/inviteId
@@ -85,6 +102,10 @@
public MemberNode getNode(Object param) {
if (root == null) {
return null;
+ }
+
+ if (root.getMemberId().equals(param) || root.getPhone().equals(param) || root.getInviteId().equals(param)) {
+ return root;
}
return getNode(root.CHILD, param);
@@ -107,7 +128,10 @@
return node;
}
- return getNode(node.CHILD, param);
+ MemberNode childNode = getNode(node.CHILD, param);
+ if (childNode != null) {
+ return childNode;
+ }
}
return null;
diff --git a/src/main/java/cc/mrbird/febs/mall/init/MatrixTreeInit.java b/src/main/java/cc/mrbird/febs/mall/init/MatrixTreeInit.java
index 419b9c2..333b930 100644
--- a/src/main/java/cc/mrbird/febs/mall/init/MatrixTreeInit.java
+++ b/src/main/java/cc/mrbird/febs/mall/init/MatrixTreeInit.java
@@ -35,8 +35,11 @@
memberNode.setMemberId(node.getTreeNode());
memberNode.setPhone(node.getPhone());
memberNode.setInviteId(node.getInviteId());
- MatrixTree.getInstance().addNode(memberNode);
+ memberNode.setRefererId(node.getReferrerId());
+ MatrixTree.getInstance().addNode(memberNode, node.getParentNode());
}
+
+ MatrixTree instance = MatrixTree.getInstance();
}
diff --git a/src/main/java/cc/mrbird/febs/mall/service/IMatrixTreeNodeService.java b/src/main/java/cc/mrbird/febs/mall/service/IMatrixTreeNodeService.java
new file mode 100644
index 0000000..390f6b6
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/mall/service/IMatrixTreeNodeService.java
@@ -0,0 +1,10 @@
+package cc.mrbird.febs.mall.service;
+
+import cc.mrbird.febs.common.tree.MemberNode;
+import cc.mrbird.febs.mall.entity.MatrixTreeNode;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+public interface IMatrixTreeNodeService extends IService<MatrixTreeNode> {
+
+ public MemberNode addTreeNode(Long memberId);
+}
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java
index 756a322..20e3dd8 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java
@@ -49,8 +49,7 @@
private final SqlSessionTemplate sqlSessionTemplate;
private final MallMoneyFlowMapper mallMoneyFlowMapper;
private final MallMqRecordMapper mallMqRecordMapper;
-
- private final MatrixTreeNodeMapper matrixTreeNodeMapper;
+ private final IMatrixTreeNodeService matrixTreeNodeService;
@Override
@Transactional(rollbackFor = Exception.class)
@@ -61,30 +60,9 @@
return;
}
- MatrixTree tree = MatrixTree.getInstance();
- MemberNode node = tree.getNode(member.getInviteId());
- if (node != null) {
- return;
- }
-
- MatrixTreeNode matrixTreeNode = matrixTreeNodeMapper.selectByTreeNode(memberId);
- if (matrixTreeNode != null) {
- return;
- }
-
- node = new MemberNode();
- node.setInviteId(member.getInviteId());
- node.setPhone(member.getPhone());
- node.setRefererId(member.getReferrerId());
- node.setMemberId(member.getId());
- MemberNode parentNode = tree.addNode(node);
-
- matrixTreeNode = new MatrixTreeNode();
- matrixTreeNode.setTreeNode(memberId);
- matrixTreeNode.setParentNode(parentNode == null ? null : parentNode.getMemberId());
- matrixTreeNodeMapper.insert(matrixTreeNode);
-
+ MemberNode parentNode = matrixTreeNodeService.addTreeNode(memberId);
if (parentNode == null) {
+ log.info("父级节点未找到:{}", memberId);
return;
}
@@ -102,12 +80,12 @@
}
MallMember parentMember = memberMapper.selectById(parentNode.getMemberId());
+ parentMember.setChildNodeCnt(parentNode.CHILD.size());
int levelCode = MemberLevelEnum.getLevelCode(parentMember.getLevel());
if (Integer.parseInt(dic.getValue()) >= levelCode) {
- parentMember.setChildNodeCnt(parentNode.CHILD.size());
parentMember.setLevel(dic.getCode());
- memberMapper.updateById(parentMember);
}
+ memberMapper.updateById(parentMember);
}
/**
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 783f2c1..ff1222a 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
@@ -15,6 +15,7 @@
import cc.mrbird.febs.mall.service.IApiMallMemberWalletService;
import cc.mrbird.febs.mall.service.ICommonService;
import cc.mrbird.febs.mall.vo.*;
+import cc.mrbird.febs.rabbit.producter.AgentProducer;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.IdUtil;
@@ -114,6 +115,7 @@
mallMember.setAccountType(MallMember.ACCOUNT_TYPE_NORMAL);
mallMember.setLevel(AgentLevelEnum.ZERO_LEVEL.getCode());
mallMember.setSex(registerDto.getSex());
+ mallMember.setInsideWith(1);
mallMember.setBindPhone(registerDto.getAccount());
mallMember.setSkin("default");
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/MatrixTreeNodeServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/MatrixTreeNodeServiceImpl.java
new file mode 100644
index 0000000..48885b8
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/MatrixTreeNodeServiceImpl.java
@@ -0,0 +1,64 @@
+package cc.mrbird.febs.mall.service.impl;
+
+import cc.mrbird.febs.common.tree.MatrixTree;
+import cc.mrbird.febs.common.tree.MemberNode;
+import cc.mrbird.febs.mall.entity.MallMember;
+import cc.mrbird.febs.mall.entity.MatrixTreeNode;
+import cc.mrbird.febs.mall.mapper.MallMemberMapper;
+import cc.mrbird.febs.mall.mapper.MatrixTreeNodeMapper;
+import cc.mrbird.febs.mall.service.IMatrixTreeNodeService;
+import cn.hutool.core.util.StrUtil;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Service;
+
+@Slf4j
+@Service
+@RequiredArgsConstructor
+public class MatrixTreeNodeServiceImpl extends ServiceImpl<MatrixTreeNodeMapper, MatrixTreeNode> implements IMatrixTreeNodeService {
+
+ private final MallMemberMapper mallMemberMapper;
+ private final MatrixTreeNodeMapper matrixTreeNodeMapper;
+
+ @Override
+ public MemberNode addTreeNode(Long memberId) {
+ MallMember mallMember = mallMemberMapper.selectById(memberId);
+ if (mallMember == null) {
+ return null;
+ }
+
+ MatrixTree instance = MatrixTree.getInstance();
+ MemberNode node = instance.getNode(memberId);
+ if (node != null) {
+ return null;
+ }
+
+ if (StrUtil.isNotBlank(mallMember.getReferrerId())) {
+ MemberNode parentNode = instance.getNode(mallMember.getReferrerId());
+
+ MemberNode notWholeNode = null;
+ if (parentNode != null) {
+ notWholeNode = instance.findNotWholeNode(parentNode);
+ } else {
+ notWholeNode = instance.findNotWholeNode();
+ }
+
+ MatrixTreeNode treeNode = new MatrixTreeNode();
+ treeNode.setTreeNode(mallMember.getId());
+ treeNode.setParentNode(notWholeNode.getMemberId());
+ matrixTreeNodeMapper.insert(treeNode);
+ } else {
+ MatrixTreeNode treeNode = new MatrixTreeNode();
+ treeNode.setTreeNode(mallMember.getId());
+ matrixTreeNodeMapper.insert(treeNode);
+ }
+
+ node = new MemberNode();
+ node.setPhone(mallMember.getPhone());
+ node.setMemberId(memberId);
+ node.setInviteId(mallMember.getInviteId());
+ node.setRefererId(mallMember.getReferrerId());
+ return instance.addNode(node);
+ }
+}
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 d087269..91d5d4c 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
@@ -116,7 +116,7 @@
} else {
// 判断上级是否与自己购买的套餐符合,若符合则走3级直推逻辑,若不符合则另外一个
- if (parentMember.getAccountLevel() >= item.getGoodsLevel()) {
+ if (parentMember.getAccountLevel() == 1 && item.getGoodsLevel() != 1) {
for (DataDictionaryCustom dataDic : dataDices) {
JSONObject jsonObject = JSONObject.parseObject(dataDic.getValue());
if (directCnt >= jsonObject.getInteger("pushCnt")) {
@@ -149,8 +149,8 @@
int index = 1;
for (MallMember mallMember : mallMembers) {
- if (!item.getGoodsLevel().equals(mallMember.getAccountLevel())) {
- break;
+ if (mallMember.getAccountLevel() == 1) {
+ continue;
}
if (index == 2) {
diff --git a/src/main/java/cc/mrbird/febs/rabbit/constants/QueueConstants.java b/src/main/java/cc/mrbird/febs/rabbit/constants/QueueConstants.java
index 2decbc2..ac8b1cc 100644
--- a/src/main/java/cc/mrbird/febs/rabbit/constants/QueueConstants.java
+++ b/src/main/java/cc/mrbird/febs/rabbit/constants/QueueConstants.java
@@ -11,6 +11,7 @@
public static final String AGENT_RETURN_MONEY = "meye_queue_agent_return_money";
public static final String ORDER_RETURN_MONEY = "meye_queue_order_return_money";
public static final String ORDER_BONUS = "meye_queue_order_bonus";
+ public static final String MATRIX_TREE = "meye_queue_matrix_tree";
/**
* 补贴金额 ,
* 分享补贴,星级补贴
diff --git a/src/main/java/cc/mrbird/febs/rabbit/consumer/AgentConsumer.java b/src/main/java/cc/mrbird/febs/rabbit/consumer/AgentConsumer.java
index 3f74175..eb08a01 100644
--- a/src/main/java/cc/mrbird/febs/rabbit/consumer/AgentConsumer.java
+++ b/src/main/java/cc/mrbird/febs/rabbit/consumer/AgentConsumer.java
@@ -2,6 +2,7 @@
import cc.mrbird.febs.mall.service.IAgentService;
import cc.mrbird.febs.mall.service.IApiMallOrderInfoService;
+import cc.mrbird.febs.mall.service.IMatrixTreeNodeService;
import cc.mrbird.febs.mall.service.IMemberProfitService;
import cc.mrbird.febs.rabbit.constants.QueueConstants;
import cc.mrbird.febs.rabbit.enumerates.RabbitQueueEnum;
@@ -28,6 +29,9 @@
private IAgentService agentService;
@Autowired
private IMemberProfitService memberProfitService;
+
+ @Autowired
+ private IMatrixTreeNodeService matrixTreeNodeService;
@RabbitListener(queues = "meye_queue_order_delay")
public void orderCancelDelay(String id) {
@@ -68,4 +72,10 @@
}
}
+ @RabbitListener(queues = QueueConstants.MATRIX_TREE)
+ public void matrixTree(Long memberId) {
+ log.info("矩阵节点消息:{}", memberId);
+ matrixTreeNodeService.addTreeNode(memberId);
+ }
+
}
diff --git a/src/main/java/cc/mrbird/febs/rabbit/enumerates/RabbitQueueEnum.java b/src/main/java/cc/mrbird/febs/rabbit/enumerates/RabbitQueueEnum.java
index 8e3e72a..4eed134 100644
--- a/src/main/java/cc/mrbird/febs/rabbit/enumerates/RabbitQueueEnum.java
+++ b/src/main/java/cc/mrbird/febs/rabbit/enumerates/RabbitQueueEnum.java
@@ -34,7 +34,11 @@
FORCE_VOUCHER_SALE("meye_exchange_force_voucher_sale",
"meye_route_key_force_voucher_sale",
- "meye_queue_force_voucher_sale");
+ "meye_queue_force_voucher_sale"),
+
+ MATRIX_TREE("meye_exchange_matrix_tree",
+ "meye_route_key_matrix_tree",
+ "meye_queue_matrix_tree");
private String exchange;
diff --git a/src/main/java/cc/mrbird/febs/rabbit/producter/AgentProducer.java b/src/main/java/cc/mrbird/febs/rabbit/producter/AgentProducer.java
index a7552a4..91cc56a 100644
--- a/src/main/java/cc/mrbird/febs/rabbit/producter/AgentProducer.java
+++ b/src/main/java/cc/mrbird/febs/rabbit/producter/AgentProducer.java
@@ -92,4 +92,9 @@
log.info("发送订单分红消息:{}", orderId);
rabbitTemplate.convertAndSend(RabbitQueueEnum.ORDER_BONUS.getExchange(), RabbitQueueEnum.ORDER_BONUS.getRoute(), orderId);
}
+
+ public void sendMatrixTree(Long memberId) {
+ log.info("发送矩阵节点消息:{}", memberId);
+ rabbitTemplate.convertAndSend(RabbitQueueEnum.MATRIX_TREE.getExchange(), RabbitQueueEnum.MATRIX_TREE.getRoute(), memberId);
+ }
}
diff --git a/src/main/resources/application-dev.yml b/src/main/resources/application-dev.yml
index 75b24f3..acc964b 100644
--- a/src/main/resources/application-dev.yml
+++ b/src/main/resources/application-dev.yml
@@ -18,7 +18,7 @@
username: ct_test
password: 123456
driver-class-name: com.mysql.cj.jdbc.Driver
- url: jdbc:mysql://120.27.238.55:3406/db_meiye_prd?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&allowMultiQueries=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2b8
+ url: jdbc:mysql://120.27.238.55:3406/db_meiye_mall?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&allowMultiQueries=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2b8
# username: db_meiye
# password: meiye#@!321
# driver-class-name: com.mysql.cj.jdbc.Driver
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 058c38a..ad54201 100644
--- a/src/main/resources/templates/febs/views/modules/mallMember/mallMemberList.html
+++ b/src/main/resources/templates/febs/views/modules/mallMember/mallMemberList.html
@@ -71,6 +71,14 @@
<input type="checkbox" value={{d.id}} lay-text="正常|禁用" lay-skin="switch" lay-filter="switchStatus">
{{# } }}
</script>
+
+<script type="text/html" id="switchInsideWith">
+ {{# if(d.insideWith === 1) { }}
+ <input type="checkbox" value={{d.id}} lay-text="正常|禁用" checked lay-skin="switch" lay-filter="switchInsideWith">
+ {{# } else { }}
+ <input type="checkbox" value={{d.id}} lay-text="正常|禁用" lay-skin="switch" lay-filter="switchInsideWith">
+ {{# } }}
+</script>
<style>
.layui-form-onswitch {
background-color: #5FB878 !important;
@@ -248,6 +256,7 @@
}
}, minWidth: 100,align:'left'},
{field: 'accountStatus', title: '账号状态', templet: '#switchStatus', minWidth: 100,align:'left'},
+ {field: 'insideWith', title: '余额转增', templet: '#switchInsideWith', minWidth: 100,align:'left'},
{field: 'createdTime', title: '注册时间', minWidth: 180,align:'left'},
// {title: '操作',
// templet: function (d) {
diff --git a/src/main/resources/templates/febs/views/modules/order/orderList.html b/src/main/resources/templates/febs/views/modules/order/orderList.html
index 1b57287..614d757 100644
--- a/src/main/resources/templates/febs/views/modules/order/orderList.html
+++ b/src/main/resources/templates/febs/views/modules/order/orderList.html
@@ -100,8 +100,6 @@
<button class="layui-btn layui-btn-normal layui-btn-xs" type="button" shiro:hasPermission="orderDetail:view" lay-event="seeOrder">详情</button>
<button class="layui-btn layui-btn-normal layui-btn-xs" type="button" shiro:hasPermission="orderMoneyFlow:update" lay-event="orderMoneyFlow">资金流水</button>
{{# } else if(d.status === 7) { }}
-<!-- <button class="layui-btn layui-btn-normal layui-btn-xs" type="button" shiro:hasPermission="orderDetail:view" lay-event="seeOrder">详情</button>-->
-<!-- <button class="layui-btn layui-btn-normal layui-btn-xs" type="button" shiro:hasPermission="orderMoneyFlow:update" lay-event="orderMoneyFlow">资金流水</button>-->
<button class="layui-btn layui-btn-normal layui-btn-xs" type="button" shiro:hasPermission="orderMoneyFlow:update" lay-event="delOrder">删除</button>
{{# } else { }}
<button class="layui-btn layui-btn-normal layui-btn-xs" type="button" shiro:hasPermission="orderDetail:view" lay-event="seeOrder">详情</button>
@@ -330,27 +328,6 @@
{field: 'payOrderNo', title: '支付订单号', minWidth: 200,align:'left'},
{title: '操作', minWidth: 200 ,toolbar: '#mall-order-option',hide:mallOrderOption,align:'left', fixed:'right'},
- // {title: '操作',
- // templet: function (d) {
- // if (d.status === 2) {
- // if(d.deliverType ===2){
- // return '<button class="layui-btn layui-btn-normal layui-btn-xs layui-btn-success" lay-event="takeGoods" shiro:hasPermission="user:update">自提</button>'
- // +'<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="seeOrder" shiro:hasPermission="user:update">详情</button>'
- // +'<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="orderMoneyFlow" shiro:hasPermission="orderMoneyFlow:update">资金流水</button>'
- // }else{
- // return '<button class="layui-btn layui-btn-normal layui-btn-xs layui-btn-success" lay-event="deliverGoods" shiro:hasPermission="user:update">发货</button>'
- // +'<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="seeOrder" shiro:hasPermission="user:update">详情</button>'
- // +'<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="orderMoneyFlow" shiro:hasPermission="orderMoneyFlow:update">资金流水</button>'
- // }
- // }else if(d.status === 7){
- // return '<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="seeOrder" shiro:hasPermission="user:update">详情</button>'
- // +'<button class="layui-btn layui-btn-xs layui-btn-normal layui-btn-danger" lay-event="delOrder" shiro:hasPermission="user:update">删除</button>'
- // +'<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="orderMoneyFlow" shiro:hasPermission="orderMoneyFlow:update">资金流水</button>'
- // }else{
- // return '<button class="layui-btn layui-btn-normal layui-btn-xs " lay-event="seeOrder" shiro:hasPermission="user:update">详情</button>'
- // +'<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="orderMoneyFlow" shiro:hasPermission="orderMoneyFlow:update">资金流水</button>'
- // }
- // },minWidth: 200,align:'center', fixed:'right'}
]]
});
}
diff --git a/src/test/java/cc/mrbird/febs/TreeTest.java b/src/test/java/cc/mrbird/febs/TreeTest.java
index 8312aeb..455ec6d 100644
--- a/src/test/java/cc/mrbird/febs/TreeTest.java
+++ b/src/test/java/cc/mrbird/febs/TreeTest.java
@@ -2,9 +2,20 @@
import cc.mrbird.febs.common.tree.MatrixTree;
import cc.mrbird.febs.common.tree.MemberNode;
+import cc.mrbird.febs.mall.entity.MallMember;
+import cc.mrbird.febs.mall.entity.MallOrderInfo;
+import cc.mrbird.febs.mall.mapper.MallMemberMapper;
+import cc.mrbird.febs.mall.mapper.MallOrderInfoMapper;
+import cc.mrbird.febs.mall.service.IAgentService;
+import cc.mrbird.febs.mall.service.IMatrixTreeNodeService;
+import cn.hutool.core.collection.CollUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import lombok.extern.slf4j.Slf4j;
import org.junit.jupiter.api.Test;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
+
+import java.util.List;
/**
* @author wzy
@@ -27,4 +38,33 @@
System.out.println(111);
}
+
+ @Autowired
+ private MallMemberMapper mallMemberMapper;
+
+ @Autowired
+ private IMatrixTreeNodeService matrixTreeNodeService;
+
+ @Autowired
+ private MallOrderInfoMapper mallOrderInfoMapper;
+
+ @Autowired
+ private IAgentService agentService;
+
+ @Test
+ public void initMemberTreeTest() {
+ LambdaQueryWrapper<MallOrderInfo> orderQuery = new LambdaQueryWrapper<>();
+ orderQuery.eq(MallOrderInfo::getStatus, 2)
+ .eq(MallOrderInfo::getOrderType, 1)
+ .orderByAsc(MallOrderInfo::getId);
+ List<MallOrderInfo> mallOrderInfos = mallOrderInfoMapper.selectList(orderQuery);
+
+ for (MallOrderInfo mallOrderInfo : mallOrderInfos) {
+ agentService.autoUpAgentLevel(mallOrderInfo.getMemberId());
+ }
+
+ MatrixTree instance = MatrixTree.getInstance();
+ System.out.println(111);
+ }
+
}
--
Gitblit v1.9.1