1
zj
yesterday befbf57e4112d07003bff18102f556a1e5a154de
trading-order-admin/src/main/java/com/yami/trading/api/controller/ApiContractOrderController.java
@@ -26,6 +26,7 @@
import javax.servlet.http.HttpServletRequest;
import java.io.IOException;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.*;
/**
@@ -81,6 +82,10 @@
    @RequestMapping(action + "close.action")
    public Result<String> close(@RequestParam String order_no) {
        try {
            ContractOrder order = contractOrderService.findByOrderNo(order_no);
            if (order != null && ContractOrder.ORDER_FOLLOW == order.getFollow()) {
                return Result.failed("跟单订单不支持手动平仓,请先停止跟单");
            }
            // 建议使用线程池 TODO
            CloseDelayThread lockDelayThread = new CloseDelayThread(SecurityUtils.getCurrentUserId(), order_no, this.contractOrderService, false);
            Thread t = new Thread(lockDelayThread);
@@ -99,6 +104,15 @@
    @RequestMapping(action + "closeAll.action")
    public Result<String> closeAll() {
        try {
            String partyId = SecurityUtils.getCurrentUserId();
            List<ContractOrder> submittedOrders = contractOrderService.findSubmitted(partyId);
            if (submittedOrders != null) {
                for (ContractOrder one : submittedOrders) {
                    if (ContractOrder.ORDER_FOLLOW == one.getFollow()) {
                        return Result.failed("包含跟单订单,不能手动一键平仓,请先停止跟单");
                    }
                }
            }
            CloseDelayThread lockDelayThread = new CloseDelayThread(SecurityUtils.getCurrentUserId(), "", this.contractOrderService, true);
            Thread t = new Thread(lockDelayThread);
            t.start();