From eb30697ecb2ed35a477ee8ba15c5b778b94648bb Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Sun, 31 May 2020 18:08:26 +0800 Subject: [PATCH] Merge branch 'master' of https://gitee.com/chonggaoxiao/new_excoin.git --- src/main/java/com/xcong/excoin/modules/contract/parameter/dto/SubmitOrderDto.java | 35 +++++++++++++++++ src/main/java/com/xcong/excoin/modules/contract/entity/ContractHoldOrderEntity.java | 19 +++++++++ src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractHoldOrderServiceImpl.java | 28 ++++++++++++++ src/main/java/com/xcong/excoin/modules/contract/controller/ContractOrderController.java | 8 +-- src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractOrderServiceImpl.java | 8 ++++ src/main/java/com/xcong/excoin/modules/contract/service/ContractHoldOrderService.java | 4 ++ src/main/java/com/xcong/excoin/modules/contract/service/ContractOrderService.java | 3 + 7 files changed, 100 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/xcong/excoin/modules/contract/controller/ContractOrderController.java b/src/main/java/com/xcong/excoin/modules/contract/controller/ContractOrderController.java index 79a347c..2257c09 100644 --- a/src/main/java/com/xcong/excoin/modules/contract/controller/ContractOrderController.java +++ b/src/main/java/com/xcong/excoin/modules/contract/controller/ContractOrderController.java @@ -1,13 +1,11 @@ package com.xcong.excoin.modules.contract.controller; import com.xcong.excoin.common.response.Result; +import com.xcong.excoin.modules.contract.parameter.dto.SubmitOrderDto; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; /** * @author wzy @@ -21,7 +19,7 @@ @ApiOperation(value = "市价提交合约订单") @PostMapping(value = "/submitOrder") - public Result submitOrder() { + public Result submitOrder(@RequestBody SubmitOrderDto submitOrderDto) { return null; } diff --git a/src/main/java/com/xcong/excoin/modules/contract/entity/ContractHoldOrderEntity.java b/src/main/java/com/xcong/excoin/modules/contract/entity/ContractHoldOrderEntity.java index 82e377e..989a8ca 100644 --- a/src/main/java/com/xcong/excoin/modules/contract/entity/ContractHoldOrderEntity.java +++ b/src/main/java/com/xcong/excoin/modules/contract/entity/ContractHoldOrderEntity.java @@ -17,6 +17,15 @@ public class ContractHoldOrderEntity extends BaseEntity { /** + * 是否可平仓 1-是 + */ + public static final int ORDER_CAN_CLOSING_Y = 1; + /** + * 是否可平仓 0-否 + */ + public static final int ORDER_CAN_CLOSING_N = 0; + + /** * 会员Id */ private Long memberId; @@ -107,4 +116,14 @@ private BigDecimal forceClosingPrice; private int operateNo; + + /** + * 是否可平仓 0-否 1-是 + */ + private int isCanClosing; + + /** + * 批次号 队列平仓时使用,避免重复 + */ + public String batchNo; } diff --git a/src/main/java/com/xcong/excoin/modules/contract/parameter/dto/SubmitOrderDto.java b/src/main/java/com/xcong/excoin/modules/contract/parameter/dto/SubmitOrderDto.java new file mode 100644 index 0000000..2a6c692 --- /dev/null +++ b/src/main/java/com/xcong/excoin/modules/contract/parameter/dto/SubmitOrderDto.java @@ -0,0 +1,35 @@ +package com.xcong.excoin.modules.contract.parameter.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.Min; +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; + +/** + * @author wzy + * @date 2020-05-31 + **/ +@Data +@ApiModel(value = "SubmitOrderDto", description = "提交订单接口接受类") +public class SubmitOrderDto { + + @NotNull + @ApiModelProperty(value = "订单类型 1开多 2开空", example = "1") + private int orderType; + + @NotBlank + @ApiModelProperty(value = "币种", example = "BTC/USDT") + private String symbol; + + @NotNull + @Min(1) + @ApiModelProperty(value = "币种数量", example = "1") + private int symbolCnt; + + @NotNull + @ApiModelProperty(value = "杠杆倍率", example = "100") + private int leverRatio; +} diff --git a/src/main/java/com/xcong/excoin/modules/contract/service/ContractHoldOrderService.java b/src/main/java/com/xcong/excoin/modules/contract/service/ContractHoldOrderService.java index bfb89a8..5d18bfc 100644 --- a/src/main/java/com/xcong/excoin/modules/contract/service/ContractHoldOrderService.java +++ b/src/main/java/com/xcong/excoin/modules/contract/service/ContractHoldOrderService.java @@ -1,10 +1,14 @@ package com.xcong.excoin.modules.contract.service; import com.baomidou.mybatisplus.extension.service.IService; +import com.xcong.excoin.common.response.Result; import com.xcong.excoin.modules.contract.entity.ContractHoldOrderEntity; +import com.xcong.excoin.modules.contract.parameter.dto.SubmitOrderDto; /** * @author helius */ public interface ContractHoldOrderService extends IService<ContractHoldOrderEntity> { + + public Result submitOrder(SubmitOrderDto submitOrderDto); } diff --git a/src/main/java/com/xcong/excoin/modules/contract/service/ContractOrderService.java b/src/main/java/com/xcong/excoin/modules/contract/service/ContractOrderService.java index 47a59b5..86cbb33 100644 --- a/src/main/java/com/xcong/excoin/modules/contract/service/ContractOrderService.java +++ b/src/main/java/com/xcong/excoin/modules/contract/service/ContractOrderService.java @@ -1,10 +1,13 @@ package com.xcong.excoin.modules.contract.service; import com.baomidou.mybatisplus.extension.service.IService; +import com.xcong.excoin.common.response.Result; import com.xcong.excoin.modules.contract.entity.ContractOrderEntity; +import com.xcong.excoin.modules.contract.parameter.dto.SubmitOrderDto; /** * @author helius */ public interface ContractOrderService extends IService<ContractOrderEntity> { + } diff --git a/src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractHoldOrderServiceImpl.java b/src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractHoldOrderServiceImpl.java index 1d2f01d..9d41ae6 100644 --- a/src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractHoldOrderServiceImpl.java +++ b/src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractHoldOrderServiceImpl.java @@ -1,13 +1,41 @@ package com.xcong.excoin.modules.contract.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.xcong.excoin.common.LoginUserUtils; +import com.xcong.excoin.common.response.Result; import com.xcong.excoin.modules.contract.dao.ContractHoldOrderDao; +import com.xcong.excoin.modules.contract.dao.ContractOrderDao; import com.xcong.excoin.modules.contract.entity.ContractHoldOrderEntity; +import com.xcong.excoin.modules.contract.parameter.dto.SubmitOrderDto; import com.xcong.excoin.modules.contract.service.ContractHoldOrderService; +import com.xcong.excoin.modules.member.entity.MemberEntity; +import com.xcong.excoin.utils.CoinTypeConvert; +import com.xcong.excoin.utils.RedisUtils; + +import javax.annotation.Resource; +import java.math.BigDecimal; /** * @author wzy * @date 2020-05-27 **/ public class ContractHoldOrderServiceImpl extends ServiceImpl<ContractHoldOrderDao, ContractHoldOrderEntity> implements ContractHoldOrderService { + + @Resource + private ContractHoldOrderDao contractHoldOrderDao; + + @Resource + private ContractOrderDao contractOrderDao; + + @Resource + private RedisUtils redisUtils; + + @Override + public Result submitOrder(SubmitOrderDto submitOrderDto) { + MemberEntity memberEntity = LoginUserUtils.getAppLoginUser(); + + // 获取最新价 + BigDecimal newPrice = new BigDecimal(redisUtils.getString(CoinTypeConvert.convertToKey(submitOrderDto.getSymbol()))); + return null; + } } diff --git a/src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractOrderServiceImpl.java b/src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractOrderServiceImpl.java index 3773537..aed7d4d 100644 --- a/src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractOrderServiceImpl.java +++ b/src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractOrderServiceImpl.java @@ -1,13 +1,21 @@ package com.xcong.excoin.modules.contract.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.xcong.excoin.common.response.Result; import com.xcong.excoin.modules.contract.dao.ContractOrderDao; import com.xcong.excoin.modules.contract.entity.ContractOrderEntity; +import com.xcong.excoin.modules.contract.parameter.dto.SubmitOrderDto; import com.xcong.excoin.modules.contract.service.ContractOrderService; +import com.xcong.excoin.utils.CoinTypeConvert; +import com.xcong.excoin.utils.RedisUtils; + +import javax.annotation.Resource; +import java.math.BigDecimal; /** * @author wzy * @date 2020-05-27 **/ public class ContractOrderServiceImpl extends ServiceImpl<ContractOrderDao, ContractOrderEntity> implements ContractOrderService { + } -- Gitblit v1.9.1