From 2cfba883471ec6dabd94ae07e5f7df5dc9df6912 Mon Sep 17 00:00:00 2001
From: zj <1772600164@qq.com>
Date: Tue, 14 Oct 2025 20:23:19 +0800
Subject: [PATCH] 1
---
trading-order-admin/src/main/java/com/yami/trading/admin/controller/contract/ContractOrderController.java | 57 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 56 insertions(+), 1 deletions(-)
diff --git a/trading-order-admin/src/main/java/com/yami/trading/admin/controller/contract/ContractOrderController.java b/trading-order-admin/src/main/java/com/yami/trading/admin/controller/contract/ContractOrderController.java
index 1f29622..f8fe4ae 100644
--- a/trading-order-admin/src/main/java/com/yami/trading/admin/controller/contract/ContractOrderController.java
+++ b/trading-order-admin/src/main/java/com/yami/trading/admin/controller/contract/ContractOrderController.java
@@ -1,18 +1,24 @@
package com.yami.trading.admin.controller.contract;
+import javax.servlet.http.HttpServletRequest;
import javax.validation.Valid;
import javax.validation.constraints.NotBlank;
import cn.hutool.core.collection.CollectionUtil;
+import cn.hutool.core.util.ObjectUtil;
import com.google.common.collect.Lists;
+import com.yami.trading.admin.model.AdjustProfitsModel;
import com.yami.trading.bean.contract.domain.ContractApplyOrder;
import com.yami.trading.bean.data.domain.Realtime;
+import com.yami.trading.bean.model.User;
import com.yami.trading.common.domain.Result;
+import com.yami.trading.common.exception.BusinessException;
import com.yami.trading.common.exception.YamiShopBindException;
import com.yami.trading.common.query.QueryWrapperGenerator;
import com.yami.trading.common.util.ThreadUtils;
import com.yami.trading.service.data.DataService;
+import com.yami.trading.service.user.UserService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
@@ -30,6 +36,7 @@
import com.yami.trading.bean.contract.mapstruct.ContractOrderWrapper;
import com.yami.trading.service.contract.ContractOrderService;
import com.yami.trading.bean.contract.query.ContractOrderQuery;
+import org.springframework.web.servlet.ModelAndView;
import java.io.IOException;
import java.math.BigDecimal;
@@ -57,6 +64,8 @@
@Autowired(required = false)
@Qualifier("dataService")
private DataService dataService;
+ @Autowired
+ private UserService userService;
/**
* 非按金额订单列表数据
@@ -66,7 +75,9 @@
public Result<IPage<ContractOrderDTO>> list(ContractOrderQuery contractOrderQuery, Page<ContractOrder> page) throws Exception {
IPage<ContractOrderDTO> result = contractOrderService.listRecord(page, contractOrderQuery);
result.getRecords().forEach(d -> {
- String symbol = d.getSymbol();
+ User user = userService.cacheUserBy(d.getPartyId());
+ d.setUserName(user.getUserName());
+ String symbol = d.getSymbol();
List<Realtime> realtimes = dataService.realtime(symbol);
if (CollectionUtil.isEmpty(realtimes)) {
d.setMark_price(BigDecimal.ZERO);
@@ -86,6 +97,50 @@
return Result.succeed(result);
}
+ /**
+ * 调整利润
+ * <p>
+ * order_no 订单号
+ */
+ @PostMapping("adjustProfits.action")
+ @ApiOperation(value = "调整利润")
+ public Result<String> adjustProfits(@RequestBody AdjustProfitsModel model) {
+ try {
+ ContractOrder order = this.contractOrderService.findByOrderNo(model.getOrderNo());
+ if(ObjectUtil.isEmpty(order)){
+ return Result.failed("订单不存在!");
+ }
+ if(!ContractOrder.STATE_SUBMITTED.equals(order.getState())){
+ return Result.failed("订单已平仓!");
+ }
+ order.setProfitLossRatio(model.getProfitLossRatio());
+ contractOrderService.update(order);
+ } catch (Exception e) {
+ log.error("执行调整利润异常", e);
+ throw new YamiShopBindException("执行调整利润异常");
+ }
+ return Result.succeed("success");
+ }
+
+ @PostMapping("updateLave.action")
+ @ApiOperation(value = "调整杠杆")
+ public Result<String> updateLave(@RequestBody AdjustProfitsModel model) {
+ try {
+ ContractOrder order = this.contractOrderService.findByOrderNo(model.getOrderNo());
+ if(ObjectUtil.isEmpty(order)){
+ return Result.failed("订单不存在!");
+ }
+ if(!ContractOrder.STATE_SUBMITTED.equals(order.getState())){
+ return Result.failed("订单已平仓!");
+ }
+ contractOrderService.updateLave(order,model.getLeverRate());
+ } catch (Exception e) {
+ log.error("执行调整杠杆异常", e);
+ throw new YamiShopBindException("执行调整杠杆异常");
+ }
+ return Result.succeed("success");
+ }
+
/**
* 撤单
--
Gitblit v1.9.3