From 7ba7366a8c6ce8019339e433b218386645cb5312 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Mon, 28 Dec 2020 17:38:53 +0800
Subject: [PATCH] Merge branch 'piot' of https://gitee.com/chonggaoxiao/new_excoin_manage into piot

---
 src/main/java/com/xcong/excoin/modules/trademanage/service/impl/TradeManageServiceImpl.java |  307 +++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 294 insertions(+), 13 deletions(-)

diff --git a/src/main/java/com/xcong/excoin/modules/trademanage/service/impl/TradeManageServiceImpl.java b/src/main/java/com/xcong/excoin/modules/trademanage/service/impl/TradeManageServiceImpl.java
index 16249ac..1ca8f8d 100644
--- a/src/main/java/com/xcong/excoin/modules/trademanage/service/impl/TradeManageServiceImpl.java
+++ b/src/main/java/com/xcong/excoin/modules/trademanage/service/impl/TradeManageServiceImpl.java
@@ -30,6 +30,8 @@
 import com.xcong.excoin.modules.trademanage.mapper.MemberWalletAgentMapper;
 import com.xcong.excoin.modules.trademanage.service.TradeManageService;
 import com.xcong.excoin.modules.trademanage.vo.MemberAccountInfoVo;
+
+import cn.hutool.core.collection.CollUtil;
 import lombok.RequiredArgsConstructor;
 
 @Service
@@ -62,6 +64,20 @@
 		if (records != null) {
             for (ContractHoldOrderEntity holdOrderEntity : records) {
             	MemberEntity selectById = memberMapper.selectById(holdOrderEntity.getMemberId());
+            	
+            	Long memberId = holdOrderEntity.getMemberId();
+				Map<String, Object> columnMap = new HashMap<>();
+				columnMap.put("member_id", memberId);
+				List<MemberAuthenticationEntity> selectByMap = memberAuthenticationMapper.selectByMap(columnMap );
+				if(selectByMap != null && selectByMap.size() > 0) {
+					MemberAuthenticationEntity memberAuthenticationEntity = selectByMap.get(0);
+					String firstName = memberAuthenticationEntity.getFirstName();
+					String secondName = memberAuthenticationEntity.getSecondName();
+					String realName = firstName + secondName;
+					holdOrderEntity.setRealName(realName);
+				}
+            	
+            	
                 // 获取最新价
                 BigDecimal newPrice = new BigDecimal(redisUtils.getString(CoinTypeConvert.convertToKey(holdOrderEntity.getSymbol())));
                 BigDecimal lotNumber = holdOrderEntity.getSymbolSku();
@@ -98,9 +114,21 @@
 		Page<MemberEntity> page = new Page<>(request.getPageNum(), request.getPageSize());
 		IPage<MemberAccountInfoVo> selectMemberListInPage = memberMapper.findMemberAccountInfoListInPage(page, memberEntity);
 		List<MemberAccountInfoVo> records = selectMemberListInPage.getRecords();
-		if(records.size() > 0) {
+		if(CollUtil.isNotEmpty(records)) {
 			for(MemberAccountInfoVo memberAccountInfoVo : records) {
 				Long memberId = memberAccountInfoVo.getId();
+				
+				Map<String, Object> columnMap = new HashMap<>();
+				columnMap.put("member_id", memberId);
+				List<MemberAuthenticationEntity> selectByMap = memberAuthenticationMapper.selectByMap(columnMap );
+				if(CollUtil.isNotEmpty(selectByMap)) {
+					MemberAuthenticationEntity memberAuthenticationEntity = selectByMap.get(0);
+					String firstName = memberAuthenticationEntity.getFirstName();
+					String secondName = memberAuthenticationEntity.getSecondName();
+					String realName = firstName + secondName;
+					memberAccountInfoVo.setRealName(realName);
+				}
+				
 				//总盈亏
 				String rewardratioByMid = memberMapper.selectRewardratioForBasicRealDataBymid(memberId);
 		        BigDecimal bd=new BigDecimal(rewardratioByMid);
@@ -111,11 +139,12 @@
 				}else {
 					memberAccountInfoVo.setIsSuAccount(1);
 				}
-				Map<String, Object> columnMap = new HashMap<>();
+				
+				Map<String, Object> columnMaps = new HashMap<>();
 				columnMap.put("member_id", memberId);
-				List<MemberWalletAgentEntity> selectByMap = memberWalletAgentMapper.selectByMap(columnMap);
-				if(selectByMap.size() > 0) {
-					BigDecimal availableBalance = selectByMap.get(0).getAvailableBalance();
+				List<MemberWalletAgentEntity> selectByMaps = memberWalletAgentMapper.selectByMap(columnMaps);
+				if(CollUtil.isNotEmpty(selectByMaps)) {
+					BigDecimal availableBalance = selectByMaps.get(0).getAvailableBalance();
 					memberAccountInfoVo.setAgentAvailableBalance(availableBalance);
 				}
 				
@@ -129,6 +158,23 @@
 			MemberAccountMoneyChangeEntity memberAccountMoneyChangeEntity, QueryRequest request) {
 		Page<MemberAccountMoneyChangeEntity> page = new Page<>(request.getPageNum(), request.getPageSize());
 		IPage<MemberAccountMoneyChangeEntity> findMemberAccountInfoListInPage = memberAccountMoneyChangeMapper.findMemberAccountInfoListInPage(page, memberAccountMoneyChangeEntity);
+		
+		List<MemberAccountMoneyChangeEntity> records = findMemberAccountInfoListInPage.getRecords();
+		if(CollUtil.isNotEmpty(records)) {
+			for(MemberAccountMoneyChangeEntity memberAccountMoneyChangeEntitys : records) {
+				Long memberId = memberAccountMoneyChangeEntitys.getMemberId();
+				Map<String, Object> columnMap = new HashMap<>();
+				columnMap.put("member_id", memberId);
+				List<MemberAuthenticationEntity> selectByMap = memberAuthenticationMapper.selectByMap(columnMap );
+				if(CollUtil.isNotEmpty(selectByMap)) {
+					MemberAuthenticationEntity memberAuthenticationEntity = selectByMap.get(0);
+					String firstName = memberAuthenticationEntity.getFirstName();
+					String secondName = memberAuthenticationEntity.getSecondName();
+					String realName = firstName + secondName;
+					memberAccountMoneyChangeEntitys.setRealName(realName);
+				}
+			}
+		}
 		return findMemberAccountInfoListInPage;
 	}
 
@@ -153,6 +199,22 @@
 			QueryRequest request) {
 		Page<ContractOrderEntity> page = new Page<>(request.getPageNum(), request.getPageSize());
 		IPage<ContractOrderEntity> findMemberAccountInfoListInPage = contractHoldOrderMapper.findMemberHistoryOrderInfoAllInPage(page, contractOrderEntity);
+		List<ContractOrderEntity> records = findMemberAccountInfoListInPage.getRecords();
+		if(CollUtil.isNotEmpty(records)) {
+			for(ContractOrderEntity contractOrderEntitys : records) {
+				Long memberId = contractOrderEntitys.getMemberId();
+				Map<String, Object> columnMap = new HashMap<>();
+				columnMap.put("member_id", memberId);
+				List<MemberAuthenticationEntity> selectByMap = memberAuthenticationMapper.selectByMap(columnMap );
+				if(selectByMap != null && selectByMap.size() > 0) {
+					MemberAuthenticationEntity memberAuthenticationEntity = selectByMap.get(0);
+					String firstName = memberAuthenticationEntity.getFirstName();
+					String secondName = memberAuthenticationEntity.getSecondName();
+					String realName = firstName + secondName;
+					contractOrderEntitys.setRealName(realName);
+				}
+			}
+		}
 		return findMemberAccountInfoListInPage;
 	}
 
@@ -165,6 +227,20 @@
 		
 		if (records != null) {
             for (ContractHoldOrderEntity holdOrderEntity : records) {
+            	
+            	Long memberId = holdOrderEntity.getMemberId();
+				Map<String, Object> columnMap = new HashMap<>();
+				columnMap.put("member_id", memberId);
+				List<MemberAuthenticationEntity> selectByMap = memberAuthenticationMapper.selectByMap(columnMap );
+				if(selectByMap != null && selectByMap.size() > 0) {
+					MemberAuthenticationEntity memberAuthenticationEntity = selectByMap.get(0);
+					String firstName = memberAuthenticationEntity.getFirstName();
+					String secondName = memberAuthenticationEntity.getSecondName();
+					String realName = firstName + secondName;
+					holdOrderEntity.setRealName(realName);
+				}
+            	
+            	
             	MemberEntity selectById = memberMapper.selectById(holdOrderEntity.getMemberId());
                 // 获取最新价
                 BigDecimal newPrice = new BigDecimal(redisUtils.getString(CoinTypeConvert.convertToKey(holdOrderEntity.getSymbol())));
@@ -202,6 +278,22 @@
 			QueryRequest request) {
 		Page<ContractOrderEntity> page = new Page<>(request.getPageNum(), request.getPageSize());
 		IPage<ContractOrderEntity> findMemberAccountInfoListInPage = contractHoldOrderMapper.findHistoryOrderInfoAloneInfoInPage(page, contractOrderEntity);
+		List<ContractOrderEntity> records = findMemberAccountInfoListInPage.getRecords();
+		if(records != null && records.size() > 0) {
+			for(ContractOrderEntity contractOrderEntitys : records) {
+				Long memberId = contractOrderEntitys.getMemberId();
+				Map<String, Object> columnMap = new HashMap<>();
+				columnMap.put("member_id", memberId);
+				List<MemberAuthenticationEntity> selectByMap = memberAuthenticationMapper.selectByMap(columnMap );
+				if(selectByMap != null && selectByMap.size() > 0) {
+					MemberAuthenticationEntity memberAuthenticationEntity = selectByMap.get(0);
+					String firstName = memberAuthenticationEntity.getFirstName();
+					String secondName = memberAuthenticationEntity.getSecondName();
+					String realName = firstName + secondName;
+					contractOrderEntitys.setRealName(realName);
+				}
+			}
+		}
 		return findMemberAccountInfoListInPage;
 	}
 
@@ -212,15 +304,9 @@
 		IPage<MemberAccountMoneyChangeEntity> findMemberAccountInfoListInPage = 
 				memberAccountMoneyChangeMapper.findMemberAgentReturnInfoAloneInPage(page, memberAccountMoneyChangeEntity);
 		
-		Map<String, Object> columnMaps = new HashMap<>();
-		columnMaps.put("member_id", 8);
-		List<MemberAccountMoneyChangeEntity> selectByMap2 = memberAccountMoneyChangeMapper.selectByMap(columnMaps);
-		MemberAccountMoneyChangeEntity memberAccountMoneyChangeEntity2 = selectByMap2.get(0);
-		String selectYJByMemberId = agentReturnMapper.selectYJByMemberId();
-		memberAccountMoneyChangeEntity2.setAllAmount(selectYJByMemberId);
-		
 		List<MemberAccountMoneyChangeEntity> records = findMemberAccountInfoListInPage.getRecords();
 		if(records != null && records.size() > 0) {
+			String selectYJByMemberId = agentReturnMapper.selectYJByMemberId();
 			for(MemberAccountMoneyChangeEntity accountMoneyChangeEntity : records) {
 				Long memberId = accountMoneyChangeEntity.getMemberId();
 				String allAmount = memberAccountMoneyChangeMapper.selectAccountMoneyChangeByMemberId(memberId);
@@ -235,11 +321,206 @@
 					accountMoneyChangeEntity.setRealName(realName);
 				}
 				accountMoneyChangeEntity.setAllAmount(allAmount);
+				if(memberId == 8) {
+					accountMoneyChangeEntity.setAmount(BigDecimal.ZERO);
+					accountMoneyChangeEntity.setAllAmount(selectYJByMemberId);
+				}
 			}
 		}
-		records.add(memberAccountMoneyChangeEntity2);
 		return findMemberAccountInfoListInPage;
 	}
+
+	@Override
+	public IPage<MemberAccountInfoVo> findmemberAccountInfoAloneListInPage(MemberEntity memberEntity,
+			QueryRequest request) {
+		Page<MemberEntity> page = new Page<>(request.getPageNum(), request.getPageSize());
+		IPage<MemberAccountInfoVo> selectMemberListInPage = memberMapper.findMemberAccountInfoAloneListInPage(page, memberEntity);
+		List<MemberAccountInfoVo> records = selectMemberListInPage.getRecords();
+		if(records.size() > 0) {
+			for(MemberAccountInfoVo memberAccountInfoVo : records) {
+				Long memberId = memberAccountInfoVo.getId();
+				Map<String, Object> columnMap = new HashMap<>();
+				columnMap.put("member_id", memberId);
+				List<MemberAuthenticationEntity> selectByMap = memberAuthenticationMapper.selectByMap(columnMap );
+				if(selectByMap != null && selectByMap.size() > 0) {
+					MemberAuthenticationEntity memberAuthenticationEntity = selectByMap.get(0);
+					String firstName = memberAuthenticationEntity.getFirstName();
+					String secondName = memberAuthenticationEntity.getSecondName();
+					String realName = firstName + secondName;
+					memberAccountInfoVo.setRealName(realName);
+				}
+				//总盈亏
+				String rewardratioByMid = memberMapper.selectRewardratioForBasicRealDataBymid(memberId);
+		        BigDecimal bd=new BigDecimal(rewardratioByMid);
+				memberAccountInfoVo.setRewardratioByMid(bd);
+				String inviteId = memberMapper.selectAgentForAccount(memberId);
+				if("".equals(inviteId) || inviteId == null) {
+					memberAccountInfoVo.setIsSuAccount(0);
+				}else {
+					memberAccountInfoVo.setIsSuAccount(1);
+				}
+				List<MemberWalletAgentEntity> selectByMaps = memberWalletAgentMapper.selectByMap(columnMap);
+				if(selectByMaps.size() > 0) {
+					BigDecimal availableBalance = selectByMaps.get(0).getAvailableBalance();
+					memberAccountInfoVo.setAgentAvailableBalance(availableBalance);
+				}
+				
+			}
+		}
+        return selectMemberListInPage;
+	}
+
+	@Override
+	public IPage<ContractHoldOrderEntity> findContractHoldOrderAloneTestInPage(
+			ContractHoldOrderEntity contractHoldOrderEntity, QueryRequest request) {
+		Page<ContractHoldOrderEntity> page = new Page<>(request.getPageNum(), request.getPageSize());
+		IPage<ContractHoldOrderEntity> findMemberAccountInfoListInPage = contractHoldOrderEntityMapper.findContractHoldOrderAloneTestInPage(page, contractHoldOrderEntity);
+		List<ContractHoldOrderEntity> records = findMemberAccountInfoListInPage.getRecords();
+		
+		if (records != null) {
+            for (ContractHoldOrderEntity holdOrderEntity : records) {
+            	
+            	Long memberId = holdOrderEntity.getMemberId();
+				Map<String, Object> columnMap = new HashMap<>();
+				columnMap.put("member_id", memberId);
+				List<MemberAuthenticationEntity> selectByMap = memberAuthenticationMapper.selectByMap(columnMap );
+				if(selectByMap != null && selectByMap.size() > 0) {
+					MemberAuthenticationEntity memberAuthenticationEntity = selectByMap.get(0);
+					String firstName = memberAuthenticationEntity.getFirstName();
+					String secondName = memberAuthenticationEntity.getSecondName();
+					String realName = firstName + secondName;
+					holdOrderEntity.setRealName(realName);
+				}
+            	
+            	
+            	MemberEntity selectById = memberMapper.selectById(holdOrderEntity.getMemberId());
+                // 获取最新价
+                BigDecimal newPrice = new BigDecimal(redisUtils.getString(CoinTypeConvert.convertToKey(holdOrderEntity.getSymbol())));
+                BigDecimal lotNumber = holdOrderEntity.getSymbolSku();
+                // 盈亏
+                BigDecimal rewardRatio = BigDecimal.ZERO;
+                // 开多
+                if (ContractHoldOrderEntity.OPENING_TYPE_MORE == holdOrderEntity.getOpeningType()) {
+                    // (最新价-开仓价)*规格*张数
+                    rewardRatio = newPrice.subtract(holdOrderEntity.getOpeningPrice()).multiply(lotNumber).multiply(new BigDecimal(holdOrderEntity.getSymbolCnt()));
+                    // 开空
+                } else {
+                    // (开仓价-最新价)*规格*张数
+                    rewardRatio = holdOrderEntity.getOpeningPrice().subtract(newPrice).multiply(lotNumber).multiply(new BigDecimal(holdOrderEntity.getSymbolCnt()));
+                }
+
+                if (selectById.getIsProfit() == MemberEntity.IS_PROFIT_Y) {
+                   String selectTradeSetting = memberMapper.selectTradeSetting();
+                    BigDecimal profitParam=new BigDecimal(selectTradeSetting);  
+                    if (rewardRatio.compareTo(BigDecimal.ZERO) > -1) {
+                        rewardRatio = rewardRatio.multiply(BigDecimal.ONE.subtract(profitParam));
+                    } else {
+                        rewardRatio = rewardRatio.multiply(BigDecimal.ONE.add(profitParam));
+                    }
+                }
+
+                holdOrderEntity.setRewardRatio(rewardRatio);
+            }
+        }
+		return findMemberAccountInfoListInPage;
+	}
+
+	@Override
+	public IPage<ContractOrderEntity> findhistoryOrderInfoAloneTestInfoInPage(ContractOrderEntity contractOrderEntity,
+			QueryRequest request) {
+		Page<ContractOrderEntity> page = new Page<>(request.getPageNum(), request.getPageSize());
+		IPage<ContractOrderEntity> findMemberAccountInfoListInPage = contractHoldOrderMapper.findhistoryOrderInfoAloneTestInfoInPage(page, contractOrderEntity);
+		List<ContractOrderEntity> records = findMemberAccountInfoListInPage.getRecords();
+		if(records != null && records.size() > 0) {
+			for(ContractOrderEntity contractOrderEntitys : records) {
+				Long memberId = contractOrderEntitys.getMemberId();
+				Map<String, Object> columnMap = new HashMap<>();
+				columnMap.put("member_id", memberId);
+				List<MemberAuthenticationEntity> selectByMap = memberAuthenticationMapper.selectByMap(columnMap );
+				if(selectByMap != null && selectByMap.size() > 0) {
+					MemberAuthenticationEntity memberAuthenticationEntity = selectByMap.get(0);
+					String firstName = memberAuthenticationEntity.getFirstName();
+					String secondName = memberAuthenticationEntity.getSecondName();
+					String realName = firstName + secondName;
+					contractOrderEntitys.setRealName(realName);
+				}
+			}
+		}
+		return findMemberAccountInfoListInPage;
+	}
+
+	@Override
+	public IPage<MemberAccountMoneyChangeEntity> findMemberAgentReturnInfoAloneTestInPage(
+			MemberAccountMoneyChangeEntity memberAccountMoneyChangeEntity, QueryRequest request) {
+		Page<MemberAccountMoneyChangeEntity> page = new Page<>(request.getPageNum(), request.getPageSize());
+		IPage<MemberAccountMoneyChangeEntity> findMemberAccountInfoListInPage = 
+				memberAccountMoneyChangeMapper.findMemberAgentReturnInfoAloneTestInPage(page, memberAccountMoneyChangeEntity);
+		
+		List<MemberAccountMoneyChangeEntity> records = findMemberAccountInfoListInPage.getRecords();
+		if(records != null && records.size() > 0) {
+			String selectYJByMemberId = agentReturnMapper.selectYJTestByMemberId();
+			for(MemberAccountMoneyChangeEntity accountMoneyChangeEntity : records) {
+				Long memberId = accountMoneyChangeEntity.getMemberId();
+				String allAmount = memberAccountMoneyChangeMapper.selectAccountMoneyChangeByMemberId(memberId);
+				Map<String, Object> columnMap = new HashMap<>();
+				columnMap.put("member_id", memberId);
+				List<MemberAuthenticationEntity> selectByMap = memberAuthenticationMapper.selectByMap(columnMap );
+				if(selectByMap != null && selectByMap.size() > 0) {
+					MemberAuthenticationEntity memberAuthenticationEntity = selectByMap.get(0);
+					String firstName = memberAuthenticationEntity.getFirstName();
+					String secondName = memberAuthenticationEntity.getSecondName();
+					String realName = firstName + secondName;
+					accountMoneyChangeEntity.setRealName(realName);
+				}
+				accountMoneyChangeEntity.setAllAmount(allAmount);
+				if(memberId == 8) {
+					accountMoneyChangeEntity.setAmount(BigDecimal.ZERO);
+					accountMoneyChangeEntity.setAllAmount(selectYJByMemberId);
+				}
+			}
+		}
+		return findMemberAccountInfoListInPage;
+	}
+
+	@Override
+	public IPage<MemberAccountInfoVo> findmemberAccountInfoAloneTestListInPage(MemberEntity memberEntity,
+			QueryRequest request) {
+		Page<MemberEntity> page = new Page<>(request.getPageNum(), request.getPageSize());
+		IPage<MemberAccountInfoVo> selectMemberListInPage = memberMapper.findmemberAccountInfoAloneTestListInPage(page, memberEntity);
+		List<MemberAccountInfoVo> records = selectMemberListInPage.getRecords();
+		if(records.size() > 0) {
+			for(MemberAccountInfoVo memberAccountInfoVo : records) {
+				Long memberId = memberAccountInfoVo.getId();
+				Map<String, Object> columnMap = new HashMap<>();
+				columnMap.put("member_id", memberId);
+				List<MemberAuthenticationEntity> selectByMap = memberAuthenticationMapper.selectByMap(columnMap );
+				if(selectByMap != null && selectByMap.size() > 0) {
+					MemberAuthenticationEntity memberAuthenticationEntity = selectByMap.get(0);
+					String firstName = memberAuthenticationEntity.getFirstName();
+					String secondName = memberAuthenticationEntity.getSecondName();
+					String realName = firstName + secondName;
+					memberAccountInfoVo.setRealName(realName);
+				}
+				//总盈亏
+				String rewardratioByMid = memberMapper.selectRewardratioForBasicRealDataBymid(memberId);
+		        BigDecimal bd=new BigDecimal(rewardratioByMid);
+				memberAccountInfoVo.setRewardratioByMid(bd);
+				String inviteId = memberMapper.selectAgentForAccount(memberId);
+				if("".equals(inviteId) || inviteId == null) {
+					memberAccountInfoVo.setIsSuAccount(0);
+				}else {
+					memberAccountInfoVo.setIsSuAccount(1);
+				}
+				List<MemberWalletAgentEntity> selectByMaps = memberWalletAgentMapper.selectByMap(columnMap);
+				if(selectByMaps.size() > 0) {
+					BigDecimal availableBalance = selectByMaps.get(0).getAvailableBalance();
+					memberAccountInfoVo.setAgentAvailableBalance(availableBalance);
+				}
+				
+			}
+		}
+        return selectMemberListInPage;
+	}
 	
 	
 	

--
Gitblit v1.9.1