From 171628f9a463f5af3ce55d897fa37b1b80ea4e8b Mon Sep 17 00:00:00 2001
From: zj <1772600164@qq.com>
Date: Thu, 15 Aug 2024 17:17:54 +0800
Subject: [PATCH] 1

---
 src/main/java/project/contract/internal/AdminContractOrderServiceImpl.java  |    4 ++--
 src/main/java/project/futures/internal/AdminFuturesOrderServiceImpl.java    |    2 +-
 src/main/java/project/contract/internal/ContractOrderServiceImpl.java       |    8 ++++++--
 src/main/java/project/project/web/admin/AdminContractOrderController.java   |   13 +++++--------
 src/main/java/project/contract/job/ContractOrderCalculationServiceImpl.java |    1 -
 5 files changed, 14 insertions(+), 14 deletions(-)

diff --git a/src/main/java/project/contract/internal/AdminContractOrderServiceImpl.java b/src/main/java/project/contract/internal/AdminContractOrderServiceImpl.java
index 2362b60..d596320 100644
--- a/src/main/java/project/contract/internal/AdminContractOrderServiceImpl.java
+++ b/src/main/java/project/contract/internal/AdminContractOrderServiceImpl.java
@@ -18,13 +18,13 @@
 		StringBuffer queryString = new StringBuffer(
 				"SELECT orders.UUID id,orders.SYMBOL symbol,orders.AMOUNT_CLOSE amount_close,orders.CLOSE_AVG_PRICE close_avg_price,"
 				+ "orders.STOP_PRICE_PROFIT stop_price_profit,orders.STOP_PRICE_LOSS stop_price_loss,"
-				+ "orders.ORDER_NO order_no,orders.TRADE_AVG_PRICE trade_avg_price,"
+				+ "orders.ORDER_NO order_no,orders.PARTY_ID party_id,orders.TRADE_AVG_PRICE trade_avg_price,"
 				+ "orders.DIRECTION direction,orders.UNIT_AMOUNT unit_amount,"
 				+ "orders.STATE state,orders.FEE fee,orders.PROFIT profit,orders.CREATE_TIME createTime,"
 				+ "orders.DEPOSIT deposit,orders.DEPOSIT_OPEN deposit_open,orders.CLOSE_TIME closeTime,"
 				+ "orders.VOLUME_OPEN volume_open,orders.VOLUME volume,orders.LEVER_RATE as lever_rate,item.NAME itemname,");
 		queryString.append(" wallet.MONEY money,  ");
-		queryString.append(" party.USERNAME username,party.USERCODE usercode,party.ROLENAME rolename  ");
+		queryString.append(" party.USERNAME username,party.USERCODE usercode,party.ROLENAME rolename,party.REMARKS remarks  ");
 
 		queryString.append(
 				" FROM T_CONTRACT_ORDER orders LEFT JOIN PAT_PARTY party ON orders.PARTY_ID = party.UUID LEFT JOIN T_WALLET wallet ON wallet.PARTY_ID = party.UUID  LEFT JOIN T_ITEM item ON orders.SYMBOL=item.SYMBOL WHERE 1 = 1 ");
diff --git a/src/main/java/project/contract/internal/ContractOrderServiceImpl.java b/src/main/java/project/contract/internal/ContractOrderServiceImpl.java
index 99badb6..6e52861 100644
--- a/src/main/java/project/contract/internal/ContractOrderServiceImpl.java
+++ b/src/main/java/project/contract/internal/ContractOrderServiceImpl.java
@@ -329,7 +329,11 @@
 		 */
 		double rate = Arith.div(volume, order.getVolume_open());
 
-		//profit = Arith.mul(Arith.add(order.getDeposit(), order.getProfit()), rate);
+		//平仓收益
+		double mul = Arith.mul(order.getDeposit_open(), order.getLever_rate());//仓位
+		double div = Arith.div(mul, order.getTrade_avg_price());//持有币的数量
+		double amount = Arith.mul(div, Arith.sub(order.getClose_avg_price(), order.getTrade_avg_price()));
+
 		profit = Arith.add(Arith.mul(order.getDeposit_open(),rate),Arith.mul(order.getProfit(),rate));
 		order.setAmount_close(Arith.add(order.getAmount_close(), profit));
 		order.setVolume(Arith.sub(order.getVolume(), volume));
@@ -516,7 +520,7 @@
 							Arith.add(Arith.add(order.getAmount_close(),Arith.mul(order.getProfit(),rate)), order.getDeposit()),
 							order.getDeposit_open())));
 		} else {
-			map.put("profit", df.format(Arith.sub(Arith.add(order.getAmount_close(), order.getDeposit()), order.getDeposit_open())));
+			map.put("profit", df.format(order.getProfit()));
 		}
 //		double currentPrice = Double.parseDouble(map.get("trade_avg_price").toString());
 //
diff --git a/src/main/java/project/contract/job/ContractOrderCalculationServiceImpl.java b/src/main/java/project/contract/job/ContractOrderCalculationServiceImpl.java
index 046f6d4..1fc7433 100644
--- a/src/main/java/project/contract/job/ContractOrderCalculationServiceImpl.java
+++ b/src/main/java/project/contract/job/ContractOrderCalculationServiceImpl.java
@@ -161,7 +161,6 @@
 				if(residueMoney > 0){
 					wallet.setMoney(residueMoney);
 					redisHandler.setSync(WalletRedisKeys.WALLET_PARTY_ID + wallet.getPartyId().toString(), wallet);
-					redisHandler.pushAsyn(WalletRedisKeys.WALLET_QUEUE_UPDATE, new WalletMessage(order.getPartyId().toString(), amount));
 				}
 			}
 		}
diff --git a/src/main/java/project/futures/internal/AdminFuturesOrderServiceImpl.java b/src/main/java/project/futures/internal/AdminFuturesOrderServiceImpl.java
index c36c169..da2d64e 100644
--- a/src/main/java/project/futures/internal/AdminFuturesOrderServiceImpl.java
+++ b/src/main/java/project/futures/internal/AdminFuturesOrderServiceImpl.java
@@ -21,7 +21,7 @@
 
 	public Page pagedQuery(int pageNo, int pageSize, String status, String rolename, String loginPartyId,
 			String username,String orderNo,String symbol,String direction,Double volume) {
-		StringBuffer queryString = new StringBuffer("SELECT party.USERCODE usercode,party.ROLENAME rolename,orders.UUID id,orders.SYMBOL symbol,"
+		StringBuffer queryString = new StringBuffer("SELECT party.USERCODE usercode,party.ROLENAME rolename,party.REMARKS remarks,orders.UUID id,orders.SYMBOL symbol,"
 				+ "orders.ORDER_NO order_no,orders.TRADE_AVG_PRICE trade_avg_price,orders.DIRECTION direction,orders.PROFIT_LOSS profit_loss,"
 				+ "orders.UNIT_AMOUNT unit_amount,orders.STATE state,FORMAT(orders.FEE,1) fee," + "orders.PROFIT profit,"
 				+ "FORMAT(orders.VOLUME,1) volume,item.NAME itemname,orders.TIMENUM timenum,orders.TIMEUNIT timeunit,"
diff --git a/src/main/java/project/project/web/admin/AdminContractOrderController.java b/src/main/java/project/project/web/admin/AdminContractOrderController.java
index 58c4475..af12005 100644
--- a/src/main/java/project/project/web/admin/AdminContractOrderController.java
+++ b/src/main/java/project/project/web/admin/AdminContractOrderController.java
@@ -126,7 +126,7 @@
 				 * 计算全仓收益 保证金
 				 */
 				double profit = 0;
-				List<ContractOrder> contractOrders = contractOrderService.findSubmitted(this.getLoginPartyId(), null, null);
+				List<ContractOrder> contractOrders = contractOrderService.findSubmitted(map.get("party_id").toString(), null, null);
 				for (int f = 0; f < contractOrders.size(); f++) {
 					ContractOrder close_line = contractOrders.get(f);
 					if(close_line.getProfit() > 0){
@@ -134,7 +134,7 @@
 					}else{
 						profit = Arith.add(profit, close_line.getDeposit());
 					}				}
-				Wallet wallet = this.walletService.saveWalletByPartyId(this.getLoginPartyId());
+				Wallet wallet = this.walletService.saveWalletByPartyId(map.get("party_id").toString());
 				double totleMoney = wallet.getMoney();
 				profit = Arith.add(profit,totleMoney);
 
@@ -289,18 +289,15 @@
 				 * 计算全仓收益 保证金
 				 */
 				double profit = 0;
-				List<ContractOrder> contractOrders = contractOrderService.findSubmitted(this.getLoginPartyId(), null, null);
+				List<ContractOrder> contractOrders = contractOrderService.findSubmitted(map.get("party_id").toString(), null, null);
 				for (int f = 0; f < contractOrders.size(); f++) {
 					ContractOrder close_line = contractOrders.get(f);
 					if(close_line.getProfit() > 0){
 						profit = Arith.add(profit, Arith.add(close_line.getProfit(), close_line.getDeposit()));
 					}else{
 						profit = Arith.add(profit, close_line.getDeposit());
-					}
-				}
-				Wallet wallet = this.walletService.saveWalletByPartyId(this.getLoginPartyId());
-				double totleMoney = wallet.getMoney();
-				profit = Arith.add(profit,totleMoney);
+					}				}
+				Wallet wallet = this.walletService.saveWalletByPartyId(map.get("party_id").toString());
 
 
 				if (map.get("direction") != null) {

--
Gitblit v1.9.3