| | |
| | | MemberEntity memberEntity = LoginUserUtils.getAppLoginUser(); |
| | | ContractHoldOrderEntity holdOrderEntity = contractHoldOrderDao.selectHoldOrderByMemberIdAndId(memberEntity.getId(), id); |
| | | if (holdOrderEntity == null) { |
| | | return Result.fail("订单不存在"); |
| | | // 订单不存在 |
| | | return Result.fail(MessageSourceUtils.getString("order_service_0027")); |
| | | } |
| | | |
| | | if (ContractHoldOrderEntity.ORDER_CAN_CLOSING_N == holdOrderEntity.getIsCanClosing()) { |
| | | return Result.fail("订单暂不可平仓"); |
| | | // 该订单暂不能平仓 |
| | | return Result.fail(MessageSourceUtils.getString("order_service_0045")); |
| | | } |
| | | |
| | | contractHoldOrderDao.updateHoldOrderIsCanClosingById(ContractHoldOrderEntity.ORDER_CAN_CLOSING_N, id); |
| | |
| | | ids.add(id); |
| | | producer.sendCloseTrade(JSONObject.toJSONString(ids)); |
| | | |
| | | return Result.ok("平仓成功"); |
| | | // 平仓成功 |
| | | return Result.ok(MessageSourceUtils.getString("order_service_0044")); |
| | | } |
| | | |
| | | @Override |
| | | public Result cancelHoldOrder(WholeCloseOrderDto wholeCloseOrderDto) { |
| | | MemberEntity memberEntity = LoginUserUtils.getAppLoginUser(); |
| | | ContractHoldOrderEntity holdOrderEntity = contractHoldOrderDao.selectHoldOrderByMemberIdAndId(memberEntity.getId(), wholeCloseOrderDto.getId()); |
| | | if (holdOrderEntity == null) { |
| | | // 订单不存在 |
| | | return Result.fail(MessageSourceUtils.getString("order_service_0027")); |
| | | } |
| | | |
| | | if (ContractHoldOrderEntity.ORDER_CAN_CLOSING_N == holdOrderEntity.getIsCanClosing()) { |
| | | // 该订单暂不能平仓 |
| | | return Result.fail(MessageSourceUtils.getString("order_service_0045")); |
| | | } |
| | | |
| | | if (wholeCloseOrderDto.getCount() > holdOrderEntity.getSymbolCntSale()) { |
| | | return Result.fail("可平张数不足"); |
| | | } |
| | | |
| | | holdOrderEntity.setSymbolCntSale(holdOrderEntity.getSymbolCntSale() - wholeCloseOrderDto.getCount()); |
| | | contractHoldOrderDao.updateById(holdOrderEntity); |
| | | return null; |
| | | } |
| | | |
| | | @Override |
| | |
| | | } |
| | | producer.sendPriceOperate(JSONObject.toJSONString(model)); |
| | | } |
| | | |
| | | @Override |
| | | public Result changePositionType() { |
| | | MemberEntity member = LoginUserUtils.getAppLoginUser(); |
| | | Integer positionType = member.getContractPositionType() == ContractEntrustOrderEntity.POSITION_TYPE_ADD ? ContractEntrustOrderEntity.POSITION_TYPE_ALL : ContractEntrustOrderEntity.POSITION_TYPE_ADD; |
| | | MemberEntity updateEntity = new MemberEntity(); |
| | | updateEntity.setContractPositionType(positionType); |
| | | updateEntity.setId(member.getId()); |
| | | int i = memberDao.updateById(updateEntity); |
| | | if (i > 0) { |
| | | LoginUserUtils.resetAppLoginUser(member); |
| | | return Result.ok(MessageSourceUtils.getString("member_service_0040")); |
| | | } |
| | | return Result.fail(MessageSourceUtils.getString("member_service_0041")); |
| | | } |
| | | } |