| | |
| | | private static final String AVGPX_KEY = "avgPx"; |
| | | private static final String STATE_KEY = "state"; |
| | | public static void handleEvent(JSONObject response, RedisUtils redisUtils) { |
| | | |
| | | log.info("开始执行OrderInfoWs......"); |
| | | try { |
| | | JSONArray dataArray = response.getJSONArray(DATA_KEY); |
| | | if (dataArray == null || dataArray.isEmpty()) { |
| | |
| | | JSONObject detail = dataArray.getJSONObject(i); |
| | | |
| | | String instId = detail.getString(INSTID_KEY); |
| | | if (!CoinEnums.HE_YUE.getCode().equals(instId)){ |
| | | log.info( "订单详情-币种: {} 没有成交订单", CoinEnums.HE_YUE.getCode() ); |
| | | continue; |
| | | } |
| | | String ordId = detail.getString(ORDID_KEY); |
| | | String clOrdId = detail.getString(CLORDID_KEY); |
| | | String side = detail.getString(SIDE_KEY); |
| | |
| | | String clOrdIdStr = (String) redisUtils.get(TradeOrderWs.ORDERWS_CHANNEL + ":" + CoinEnums.HE_YUE.getCode() + ":clOrdId"); |
| | | String stateStr = (String) redisUtils.get(TradeOrderWs.ORDERWS_CHANNEL + ":" + CoinEnums.HE_YUE.getCode() + ":state"); |
| | | if ( |
| | | clOrdIdStr != null |
| | | StrUtil.isNotBlank(clOrdIdStr) |
| | | && clOrdId.equals(clOrdIdStr) |
| | | && stateStr != null |
| | | && StrUtil.isNotBlank(stateStr) |
| | | && state.equals(stateStr) |
| | | ){ |
| | | redisUtils.set(TradeOrderWs.ORDERWS_CHANNEL + ":" + CoinEnums.HE_YUE.getCode() + ":state", OrderParamEnums.STATE_1.getValue(), 0); |
| | | redisUtils.set(InstrumentsWs.INSTRUMENTSWS_CHANNEL + ":" + CoinEnums.HE_YUE.getCode() + ":state", OrderParamEnums.STATE_0.getValue(), 0); |
| | | } |
| | | } |
| | | } catch (Exception e) { |