From 8e64d903658a8df9eebc873c1c72c68f9b9bda32 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Fri, 29 May 2020 20:00:24 +0800
Subject: [PATCH] finish entrust order interface
---
src/main/java/com/xcong/excoin/modules/contract/parameter/vo/ContractEntrustVo.java | 35 +++++++++++++++++
src/main/java/com/xcong/excoin/modules/contract/dao/ContractEntrustOrderDao.java | 4 ++
src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractEntrustOrderServiceImpl.java | 9 +++-
src/main/java/com/xcong/excoin/modules/contract/controller/ContractEntrustOrderController.java | 6 +-
src/main/resources/mapper/contract/ContractEntrustOrderDao.xml | 4 ++
src/main/resources/logback-spring.xml | 1
src/main/java/com/xcong/excoin/modules/contract/mapper/ContractEntrustOrderEntityMapper.java | 9 ++++
7 files changed, 61 insertions(+), 7 deletions(-)
diff --git a/src/main/java/com/xcong/excoin/modules/contract/controller/ContractEntrustOrderController.java b/src/main/java/com/xcong/excoin/modules/contract/controller/ContractEntrustOrderController.java
index c770cbd..59d3b69 100644
--- a/src/main/java/com/xcong/excoin/modules/contract/controller/ContractEntrustOrderController.java
+++ b/src/main/java/com/xcong/excoin/modules/contract/controller/ContractEntrustOrderController.java
@@ -34,7 +34,7 @@
@ApiOperation(value = "合约提交委托订单", notes = "提交委托订单")
@PostMapping(value = "/submitEntrustOrder")
public Result submitEntrustOrder(@RequestBody @Validated SubmitEntrustDto submitEntrustDto) {
- if (StrUtil.isBlank(SymbolEnum.getNameByValue(submitEntrustDto.getSymbol()))){
+ if (StrUtil.isBlank(SymbolEnum.getNameByValue(submitEntrustDto.getSymbol()))) {
return Result.fail("非法币种");
}
@@ -48,13 +48,13 @@
@ApiOperation(value = "获取当前委托单列表", notes = "获取当前委托单列表")
@GetMapping(value = "/findCurrentEntrustOrderList")
public Result findCurrentEntrustOrderList() {
- return null;
+ return contractEntrustOrderService.findEntrustOrderList();
}
@ApiOperation(value = "撤销委托单", notes = "撤销委托单")
@GetMapping(value = "/cancelEntrustOrder")
- public Result cancelEntrustOrder(@ApiParam(name = "id", value="委托单ID", required = true, example = "1") @RequestParam("id") Long id) {
+ public Result cancelEntrustOrder(@ApiParam(name = "id", value = "委托单ID", required = true, example = "1") @RequestParam("id") Long id) {
return contractEntrustOrderService.cancelEntrustOrder(id);
}
}
diff --git a/src/main/java/com/xcong/excoin/modules/contract/dao/ContractEntrustOrderDao.java b/src/main/java/com/xcong/excoin/modules/contract/dao/ContractEntrustOrderDao.java
index 0b75eb1..add14cb 100644
--- a/src/main/java/com/xcong/excoin/modules/contract/dao/ContractEntrustOrderDao.java
+++ b/src/main/java/com/xcong/excoin/modules/contract/dao/ContractEntrustOrderDao.java
@@ -4,10 +4,14 @@
import com.xcong.excoin.modules.contract.entity.ContractEntrustOrderEntity;
import org.apache.ibatis.annotations.Param;
+import java.util.List;
+
/**
* @author helius
*/
public interface ContractEntrustOrderDao extends BaseMapper<ContractEntrustOrderEntity> {
public ContractEntrustOrderEntity selectEntrustOrderByIdAndMemberId(@Param("id") Long id, @Param("memberId") Long memberId);
+
+ public List<ContractEntrustOrderEntity> selectEntrustOrderListByMemberId(@Param("memberId") Long memberId);
}
diff --git a/src/main/java/com/xcong/excoin/modules/contract/mapper/ContractEntrustOrderEntityMapper.java b/src/main/java/com/xcong/excoin/modules/contract/mapper/ContractEntrustOrderEntityMapper.java
index b432983..bd2d3dc 100644
--- a/src/main/java/com/xcong/excoin/modules/contract/mapper/ContractEntrustOrderEntityMapper.java
+++ b/src/main/java/com/xcong/excoin/modules/contract/mapper/ContractEntrustOrderEntityMapper.java
@@ -3,9 +3,12 @@
import com.xcong.excoin.modules.contract.entity.ContractEntrustOrderEntity;
import com.xcong.excoin.modules.contract.entity.ContractOrderEntity;
import com.xcong.excoin.modules.contract.parameter.dto.SubmitEntrustDto;
+import com.xcong.excoin.modules.contract.parameter.vo.ContractEntrustVo;
import org.mapstruct.Mapper;
import org.mapstruct.Mapping;
import org.mapstruct.factory.Mappers;
+
+import java.util.List;
/**
* @author wzy
@@ -21,4 +24,10 @@
@Mapping(source = "createTime", target = "entrustTime")
public abstract ContractOrderEntity entrustOrderToOrder(ContractEntrustOrderEntity orderEntity);
+ @Mapping(source = "createTime", target = "entrustTime")
+ @Mapping(source = "entrustType", target = "type")
+ public abstract ContractEntrustVo entityToContractEntrustVo(ContractEntrustOrderEntity orderEntity);
+
+ public abstract List<ContractEntrustVo> entityListToVoList(List<ContractEntrustOrderEntity> list);
+
}
diff --git a/src/main/java/com/xcong/excoin/modules/contract/parameter/vo/ContractEntrustVo.java b/src/main/java/com/xcong/excoin/modules/contract/parameter/vo/ContractEntrustVo.java
new file mode 100644
index 0000000..ff930c9
--- /dev/null
+++ b/src/main/java/com/xcong/excoin/modules/contract/parameter/vo/ContractEntrustVo.java
@@ -0,0 +1,35 @@
+package com.xcong.excoin.modules.contract.parameter.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * @author wzy
+ * @date 2020-05-29
+ **/
+@Data
+@ApiModel(value = "ContractEntrustVo", description = "合约委托")
+public class ContractEntrustVo {
+
+ @ApiModelProperty(value = "委托单ID")
+ private Long id;
+
+ @ApiModelProperty(value = "委托价")
+ private BigDecimal entrustPrice;
+
+ @ApiModelProperty(value = "委托数量")
+ private int symbolsCnt;
+
+ @ApiModelProperty(value = "保证金")
+ private BigDecimal bondAmount;
+
+ @ApiModelProperty(value = "委托时间")
+ private Date entrustTime;
+
+ @ApiModelProperty(value = "委托类型 1-开多 2-开空")
+ private int type;
+}
diff --git a/src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractEntrustOrderServiceImpl.java b/src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractEntrustOrderServiceImpl.java
index c779e95..98bbaa7 100644
--- a/src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractEntrustOrderServiceImpl.java
+++ b/src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractEntrustOrderServiceImpl.java
@@ -11,6 +11,7 @@
import com.xcong.excoin.modules.contract.entity.ContractOrderEntity;
import com.xcong.excoin.modules.contract.mapper.ContractEntrustOrderEntityMapper;
import com.xcong.excoin.modules.contract.parameter.dto.SubmitEntrustDto;
+import com.xcong.excoin.modules.contract.parameter.vo.ContractEntrustVo;
import com.xcong.excoin.modules.contract.service.ContractEntrustOrderService;
import com.xcong.excoin.modules.member.dao.MemberWalletContractDao;
import com.xcong.excoin.modules.member.entity.MemberEntity;
@@ -24,6 +25,7 @@
import javax.annotation.Resource;
import java.math.BigDecimal;
+import java.util.List;
/**
* @author wzy
@@ -120,7 +122,10 @@
@Override
public Result findEntrustOrderList() {
- return null;
+ MemberEntity memberEntity = LoginUserUtils.getAppLoginUser();
+ List<ContractEntrustOrderEntity> list = contractEntrustOrderDao.selectEntrustOrderListByMemberId(memberEntity.getId());
+ List<ContractEntrustVo> resultList = ContractEntrustOrderEntityMapper.INSTANCE.entityListToVoList(list);
+ return Result.ok(resultList);
}
@Override
@@ -137,8 +142,6 @@
MemberWalletContractEntity walletContractEntity = memberWalletContractDao.findWalletContractByMemberIdAndSymbol(memberEntity.getId(), MemberWalletCoinEnum.WALLETCOINCODE.getValue());
BigDecimal total = entrustOrderEntity.getEntrustAmount().add(entrustOrderEntity.getBondAmount());
- log.info("{}", total);
- log.info("{}", walletContractEntity.getAvailableBalance());
walletContractEntity.setAvailableBalance(walletContractEntity.getAvailableBalance().add(total));
walletContractEntity.setFrozenBalance(walletContractEntity.getFrozenBalance().subtract(total));
memberWalletContractDao.updateById(walletContractEntity);
diff --git a/src/main/resources/logback-spring.xml b/src/main/resources/logback-spring.xml
index c7d14c3..63b057d 100644
--- a/src/main/resources/logback-spring.xml
+++ b/src/main/resources/logback-spring.xml
@@ -3,7 +3,6 @@
<contextName>logback</contextName>
<!-- name的值是变量的名称,value的值时变量定义的值。通过定义的值会被插入到logger上下文中。定义变量后,可以使“${}”来使用变量。 -->
<property name="log.path" value="logs" />
- <statusListener class="ch.qos.logback.core.status.NopStatusListener" />
<!-- 彩色日志 -->
<!-- 彩色日志依赖的渲染类 -->
diff --git a/src/main/resources/mapper/contract/ContractEntrustOrderDao.xml b/src/main/resources/mapper/contract/ContractEntrustOrderDao.xml
index ecdf398..ede2398 100644
--- a/src/main/resources/mapper/contract/ContractEntrustOrderDao.xml
+++ b/src/main/resources/mapper/contract/ContractEntrustOrderDao.xml
@@ -7,4 +7,8 @@
where id=#{id} and member_id=#{memberId}
</select>
+ <select id="selectEntrustOrderListByMemberId" resultType="com.xcong.excoin.modules.contract.entity.ContractEntrustOrderEntity">
+ select * from contract_entrust_order
+ where member_id=#{memberId}
+ </select>
</mapper>
\ No newline at end of file
--
Gitblit v1.9.1