From de9490f5a8a29c79968242461440537949c02244 Mon Sep 17 00:00:00 2001
From: wzy <wzy19931122ai@163.com>
Date: Fri, 30 Oct 2020 20:41:41 +0800
Subject: [PATCH] modify
---
src/main/java/com/xcong/excoin/modules/member/entity/MemberEntity.java | 7 ++
src/main/java/com/xcong/excoin/modules/blackchain/service/EthService.java | 1
src/test/java/com/xcong/excoin/TradeTest.java | 35 +----------
src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java | 7 ++
src/main/java/com/xcong/excoin/processor/DefaultCoinProcessor.java | 22 ++++++-
src/main/java/com/xcong/excoin/utils/mail/Sms106Send.java | 6 +
src/main/java/com/xcong/excoin/modules/coin/service/impl/BlockCoinServiceImpl.java | 8 ++
src/main/resources/mapper/walletCoinOrder/OrderCoinsDao.xml | 27 +++++++-
src/main/java/com/xcong/excoin/quartz/job/CoinTradeInitJob.java | 6 ++
src/main/java/com/xcong/excoin/modules/blackchain/service/UsdtEthService.java | 2
10 files changed, 76 insertions(+), 45 deletions(-)
diff --git a/src/main/java/com/xcong/excoin/modules/blackchain/service/EthService.java b/src/main/java/com/xcong/excoin/modules/blackchain/service/EthService.java
index 9eceda7..a0da771 100644
--- a/src/main/java/com/xcong/excoin/modules/blackchain/service/EthService.java
+++ b/src/main/java/com/xcong/excoin/modules/blackchain/service/EthService.java
@@ -55,6 +55,7 @@
* 服务器地址
*/
//private static final String ETH_UTL = "https://mainnet.infura.io/v3/882c66ebcfc141abbea22b948fa44321";
+ //private static final String ETH_UTL = "http://120.55.86.146:8545";
private static final String ETH_UTL = "http://114.55.250.231:8545";
public EthService() {
diff --git a/src/main/java/com/xcong/excoin/modules/blackchain/service/UsdtEthService.java b/src/main/java/com/xcong/excoin/modules/blackchain/service/UsdtEthService.java
index cbc4459..b2a3813 100644
--- a/src/main/java/com/xcong/excoin/modules/blackchain/service/UsdtEthService.java
+++ b/src/main/java/com/xcong/excoin/modules/blackchain/service/UsdtEthService.java
@@ -100,7 +100,7 @@
// memberCoinChargeDao.updateById(coinCharge);
// }
} else {
- String hash = ethService.ethSend(TOTAL_PRIVATE, TOTAL_ADDRESS, address, ETH_FEE,gasPrice);
+ //String hash = ethService.ethSend(TOTAL_PRIVATE, TOTAL_ADDRESS, address, ETH_FEE,gasPrice);
//log.info("转手续费:{}", hash);
}
}
diff --git a/src/main/java/com/xcong/excoin/modules/coin/service/impl/BlockCoinServiceImpl.java b/src/main/java/com/xcong/excoin/modules/coin/service/impl/BlockCoinServiceImpl.java
index c819b5f..60fc9f5 100644
--- a/src/main/java/com/xcong/excoin/modules/coin/service/impl/BlockCoinServiceImpl.java
+++ b/src/main/java/com/xcong/excoin/modules/coin/service/impl/BlockCoinServiceImpl.java
@@ -553,6 +553,13 @@
if(CollectionUtils.isNotEmpty(memberCoinChargeEntities)){
return;
}
+ // 校验这个交易是否成功
+ EthService ethService = new EthService();
+ boolean b = ethService.checkTransferResult(hash);
+ if(!b){
+ log.info("#USDT假充值:{}#", hash);
+ return;
+ }
MemberCoinAddressEntity coinAddressEntity = memberCoinAddressDao.selectCoinAddressByAddressAndSymbol(address, CoinTypeEnum.USDT.toString());
if (coinAddressEntity == null) {
return;
@@ -614,4 +621,5 @@
memberCoinChargeDao.insert(memberCoinChargeEntity);
return orderNo;
}
+
}
diff --git a/src/main/java/com/xcong/excoin/modules/member/entity/MemberEntity.java b/src/main/java/com/xcong/excoin/modules/member/entity/MemberEntity.java
index aaa7e5e..c22bc65 100644
--- a/src/main/java/com/xcong/excoin/modules/member/entity/MemberEntity.java
+++ b/src/main/java/com/xcong/excoin/modules/member/entity/MemberEntity.java
@@ -149,7 +149,12 @@
* 是否设置预估强平价系数 0-否1-是
*/
private Integer isForce;
-
+
+ /**
+ * shifou xianzhi
+ */
+ private Integer isTrader;
+
/**
* 滑点
*/
diff --git a/src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java b/src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java
index 1834652..7e350ff 100644
--- a/src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java
+++ b/src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java
@@ -469,7 +469,8 @@
@Transactional
public Result memberTradersPwd(@Valid MemberForgetPwdDto memberForgetPwdDto) {
//获取用户ID
- MemberEntity memberEntity = LoginUserUtils.getAppLoginUser();
+ Long memberId = LoginUserUtils.getAppLoginUser().getId();
+ MemberEntity memberEntity = memberDao.selectById(memberId);
String code = memberForgetPwdDto.getCode();
String password = memberForgetPwdDto.getPassword();
@@ -883,6 +884,10 @@
//获取用户ID
Long memberId = LoginUserUtils.getAppLoginUser().getId();
MemberEntity member = memberDao.selectById(memberId);
+ // 判断是否限制
+ if(1 == member.getIsTrader()){
+ return Result.fail("此账号有财务问题,需联系客服");
+ }
if (member.getCertifyStatus() != MemberEntity.CERTIFY_STATUS_Y) {
return Result.fail(MessageSourceUtils.getString("member_service_0077"));
}
diff --git a/src/main/java/com/xcong/excoin/processor/DefaultCoinProcessor.java b/src/main/java/com/xcong/excoin/processor/DefaultCoinProcessor.java
index 6043c7e..a2c2007 100644
--- a/src/main/java/com/xcong/excoin/processor/DefaultCoinProcessor.java
+++ b/src/main/java/com/xcong/excoin/processor/DefaultCoinProcessor.java
@@ -339,10 +339,24 @@
}
// 如果开盘价为0,则设置为前一个价格
if(kLine.getOpen().compareTo(BigDecimal.ZERO) == 0) {
- kLine.setOpen(coinThumb.getClose());
- kLine.setClose(coinThumb.getClose());
- kLine.setLow(coinThumb.getClose());
- kLine.setHigh(coinThumb.getClose());
+ // 查询前一根K线 TODO
+ String key = "KINE_" + symbol + "/USDT_" + period;
+ Object data = redisUtils.get(key);
+ List list = new ArrayList();
+ if (data != null) {
+ list = (List) data;
+ Candlestick o = (Candlestick)list.get(list.size() - 1);
+ kLine.setOpen(o.getClose());
+ kLine.setClose(o.getClose());
+ kLine.setLow(o.getClose());
+ kLine.setHigh(o.getClose());
+ }else{
+ kLine.setOpen(coinThumb.getClose());
+ kLine.setClose(coinThumb.getClose());
+ kLine.setLow(coinThumb.getClose());
+ kLine.setHigh(coinThumb.getClose());
+ }
+
}
//logger.info("generate " + range + rangeUnit + " kline in {},data={}", df.format(new Date(kLine.getTimestamp())), JSON.toJSONString(kLine));
service.saveKLine(symbol,period, kLine);
diff --git a/src/main/java/com/xcong/excoin/quartz/job/CoinTradeInitJob.java b/src/main/java/com/xcong/excoin/quartz/job/CoinTradeInitJob.java
index 2093e84..e5ed3a4 100644
--- a/src/main/java/com/xcong/excoin/quartz/job/CoinTradeInitJob.java
+++ b/src/main/java/com/xcong/excoin/quartz/job/CoinTradeInitJob.java
@@ -87,6 +87,12 @@
List<OrderCoinsEntity> tradingOrders = new ArrayList<>();
List<OrderCoinsEntity> completedOrders = new ArrayList<>();
orders.forEach(order -> {
+ if(order.getDealCnt()==null){
+ order.setDealCnt(BigDecimal.ZERO);
+ }
+ if(order.getDealAmount()==null){
+ order.setDealAmount(BigDecimal.ZERO);
+ }
tradingOrders.add(order);
});
try {
diff --git a/src/main/java/com/xcong/excoin/utils/mail/Sms106Send.java b/src/main/java/com/xcong/excoin/utils/mail/Sms106Send.java
index 71d8497..62549e3 100644
--- a/src/main/java/com/xcong/excoin/utils/mail/Sms106Send.java
+++ b/src/main/java/com/xcong/excoin/utils/mail/Sms106Send.java
@@ -39,13 +39,15 @@
public static boolean sendRechargeMsg(String phone, String time, String orderNo) {
String msg = "尊敬的用户,您的帐号于{}有一笔成功充值订单,订单编号{}";
String content = StrUtil.format(msg, time, orderNo);
- return request(phone, content, "充值");
+ return true;
+ //return request(phone, content, "充值");
}
public static boolean sendWithdrawalMsg(String phone, String time, String orderNo) {
String msg = "尊敬的用户,您的帐号于{}有一笔成功提现订单,订单编号为{}";
String content = StrUtil.format(msg, time, orderNo);
- return request(phone, content, "提现");
+ return true;
+ //return request(phone, content, "提现");
}
private static boolean request(String phone, String content, String tagName) {
diff --git a/src/main/resources/mapper/walletCoinOrder/OrderCoinsDao.xml b/src/main/resources/mapper/walletCoinOrder/OrderCoinsDao.xml
index b443d3d..086de5a 100644
--- a/src/main/resources/mapper/walletCoinOrder/OrderCoinsDao.xml
+++ b/src/main/resources/mapper/walletCoinOrder/OrderCoinsDao.xml
@@ -35,11 +35,30 @@
</select>
<select id="selectCoinOrderOnTrade" resultType="com.xcong.excoin.modules.coin.entity.OrderCoinsEntity">
- select *
- from coins_order
- where order_status=1
+ select a.id,
+ a.deal_price,
+ a.entrust_amount,
+ a.fee_amount,
+ a.entrust_cnt,
+ a.mark_price,
+ a.member_id,
+ a.order_no,
+ a.order_status,
+ a.order_type,
+ a.symbol,
+ a.trade_type,
+ a.version,
+ a.create_by,
+ a.create_time,
+ a.update_by,
+ a.update_time,
+ a.entrust_price,
+ (select sum(symbol_cnt) from coins_order_deal where order_id = a.id) as deal_cnt,
+ (select sum(deal_amount) from coins_order_deal where order_id = a.id) as deal_amount
+ from coins_order a
+ where a.order_status=1
<if test="list != null">
- and symbol in
+ and a.symbol in
<foreach collection="list" separator="," item="item" open="(" close=")">
#{item}
</foreach>
diff --git a/src/test/java/com/xcong/excoin/TradeTest.java b/src/test/java/com/xcong/excoin/TradeTest.java
index c941e4b..b0b10a7 100644
--- a/src/test/java/com/xcong/excoin/TradeTest.java
+++ b/src/test/java/com/xcong/excoin/TradeTest.java
@@ -1,5 +1,6 @@
package com.xcong.excoin;
+import cn.hutool.crypto.SecureUtil;
import com.xcong.excoin.modules.coin.dao.OrderCoinsDao;
import com.xcong.excoin.modules.coin.entity.OrderCoinsEntity;
import com.xcong.excoin.modules.coin.service.OrderCoinService;
@@ -35,37 +36,7 @@
}
public static void main(String[] args) throws InterruptedException {
- // 测试两个地方
- List<String> list = new ArrayList<>();
- list.add("1");
- list.add("2");
- list.add("3");
- list.add("4");
- // 开一个线程
- Thread thread = new Thread(new Runnable() {
- @SneakyThrows
- @Override
- public void run() {
- Thread.sleep(1000);
- synchronized (list){
- Iterator<String> iterator = list.iterator();
- while (iterator.hasNext()){
- System.out.println("线程里"+iterator.next());
- iterator.remove();
- }
- }
-
- }
- });
- thread.start();
- synchronized (list){
- Iterator<String> iterator = list.iterator();
- while (iterator.hasNext()){
- Thread.sleep(1000);
- System.out.println(iterator.next());
- }
- }
-
- //
+ String s = SecureUtil.md5("330021");
+ System.out.println(s);
}
}
--
Gitblit v1.9.1