|
|
@@ -349,7 +349,7 @@ public class CoinServiceImpl implements CoinService {
|
|
|
|
|
|
result = response.getJSONArray("data");
|
|
|
|
|
|
- renderMainSearch4AllPositionv2(result);
|
|
|
+ renderMainSearch4AllPositionv2(result, params.getInteger("unrealizedPLSort"));
|
|
|
} else if (params.getString("nameEn").equals("orderMarginCoinCurrent")) {
|
|
|
Map<String, String> paramMap = new LinkedHashMap<>();
|
|
|
paramMap.put("productType", "umcbl");
|
|
|
@@ -361,7 +361,7 @@ public class CoinServiceImpl implements CoinService {
|
|
|
|
|
|
result = response.getJSONArray("data");
|
|
|
|
|
|
- renderMainSearch4OrderMarginCoinCurrent(result);
|
|
|
+ renderMainSearch4OrderMarginCoinCurrent(result, params.getInteger("chaRateSort"));
|
|
|
} else if (params.getString("nameEn").equals("orderHistoryProductType")) {
|
|
|
List<CoinHistoryOrder> historyOrderList = coinMapper.findByParams();
|
|
|
|
|
|
@@ -374,7 +374,7 @@ public class CoinServiceImpl implements CoinService {
|
|
|
Connection.Response response = JsoupUtil.requestBody(requestUrl, JsoupUtil.HTTP_GET, InitRunner.proxy, null, null);
|
|
|
result = JSONObject.parseObject(response.body()).getJSONArray("data");
|
|
|
|
|
|
- result = renderMainSearch4MonitorCurrency(result, monitorCurrencyList);
|
|
|
+ result = renderMainSearch4MonitorCurrency(result, monitorCurrencyList, params.getInteger("changeUtcSort"));
|
|
|
} else if (params.getString("nameEn").equals("currentPlan")) {
|
|
|
Map<String, String> paramMap = new LinkedHashMap<>();
|
|
|
paramMap.put("productType", "umcbl");
|
|
|
@@ -387,7 +387,7 @@ public class CoinServiceImpl implements CoinService {
|
|
|
|
|
|
result = response.getJSONArray("data");
|
|
|
|
|
|
- renderMainSearch4CurrentPlan(result);
|
|
|
+ renderMainSearch4CurrentPlan(result, params.getInteger("chaRateSort"));
|
|
|
}
|
|
|
|
|
|
return result;
|
|
|
@@ -398,7 +398,7 @@ public class CoinServiceImpl implements CoinService {
|
|
|
*
|
|
|
* @param result
|
|
|
*/
|
|
|
- private void renderMainSearch4CurrentPlan(JSONArray result) {
|
|
|
+ private void renderMainSearch4CurrentPlan(JSONArray result, Integer chaRateSort) {
|
|
|
forkJoinPool3.submit(() -> result.parallelStream().forEach(e -> {
|
|
|
JSONObject jsonObject = (JSONObject) e;
|
|
|
|
|
|
@@ -432,7 +432,7 @@ public class CoinServiceImpl implements CoinService {
|
|
|
Connection.Response response = JsoupUtil.requestBody(requestUrl, JsoupUtil.HTTP_GET, InitRunner.proxy, null, null);
|
|
|
String last = JSONObject.parseObject(response.body()).getJSONObject("data").getString("last");
|
|
|
|
|
|
- BigDecimal chaRate = null;
|
|
|
+ BigDecimal chaRate = BigDecimal.ZERO;
|
|
|
if ("open_long".equals(side)) {
|
|
|
chaRate = new BigDecimal(last).divide(new BigDecimal(jsonObject.getString("triggerPrice")), 4, RoundingMode.HALF_UP).multiply(BigDecimal.valueOf(100)).setScale(2, RoundingMode.HALF_UP);
|
|
|
} else if ("open_short".equals(side)) {
|
|
|
@@ -441,12 +441,16 @@ public class CoinServiceImpl implements CoinService {
|
|
|
|
|
|
jsonObject.put("last", last);
|
|
|
jsonObject.put("lastStyle", " style=\"color:#252B31;background-color:#C4ADE9;font-weight:bold;\"");
|
|
|
- jsonObject.put("chaRate", chaRate != null ? chaRate : "--");
|
|
|
+ jsonObject.put("chaRate", chaRate);
|
|
|
jsonObject.put("chaRateStyle", " style=\"color:#FFFFFF;background-color:#5EA294;\"");
|
|
|
} catch (Exception ex) {
|
|
|
throw new RuntimeException(ex);
|
|
|
}
|
|
|
})).join();
|
|
|
+
|
|
|
+ if (chaRateSort != 0) {
|
|
|
+ Collections.sort(result, (o1, o2) -> chaRateSort * (((JSONObject) o1).getBigDecimal("chaRate").compareTo(((JSONObject) o2).getBigDecimal("chaRate"))));
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
@@ -454,7 +458,7 @@ public class CoinServiceImpl implements CoinService {
|
|
|
*
|
|
|
* @param monitorCurrencyList
|
|
|
*/
|
|
|
- private JSONArray renderMainSearch4MonitorCurrency(JSONArray result, List<String> monitorCurrencyList) {
|
|
|
+ private JSONArray renderMainSearch4MonitorCurrency(JSONArray result, List<String> monitorCurrencyList, Integer changeUtcSort) {
|
|
|
JSONArray array = result.stream()
|
|
|
.filter(iter -> monitorCurrencyList.contains(((JSONObject) iter).getString("symbol")))
|
|
|
.collect(Collectors.toCollection(JSONArray::new));
|
|
|
@@ -488,6 +492,10 @@ public class CoinServiceImpl implements CoinService {
|
|
|
jsonObject.put("usdtVol", readableFileSize(jsonObject.getDouble("usdtVol")));
|
|
|
})).join();
|
|
|
|
|
|
+ if (changeUtcSort != 0) {
|
|
|
+ Collections.sort(array, (o1, o2) -> changeUtcSort * (((JSONObject) o1).getBigDecimal("changeUtc").compareTo(((JSONObject) o2).getBigDecimal("changeUtc"))));
|
|
|
+ }
|
|
|
+
|
|
|
return array;
|
|
|
}
|
|
|
|
|
|
@@ -539,7 +547,7 @@ public class CoinServiceImpl implements CoinService {
|
|
|
*
|
|
|
* @param result
|
|
|
*/
|
|
|
- private void renderMainSearch4OrderMarginCoinCurrent(JSONArray result) {
|
|
|
+ private void renderMainSearch4OrderMarginCoinCurrent(JSONArray result, Integer chaRateSort) {
|
|
|
forkJoinPool2.submit(() -> result.parallelStream().forEach(e -> {
|
|
|
JSONObject jsonObject = (JSONObject) e;
|
|
|
// 币对名称
|
|
|
@@ -577,7 +585,7 @@ public class CoinServiceImpl implements CoinService {
|
|
|
Connection.Response response = JsoupUtil.requestBody(requestUrl, JsoupUtil.HTTP_GET, InitRunner.proxy, null, null);
|
|
|
String last = JSONObject.parseObject(response.body()).getJSONObject("data").getString("last");
|
|
|
|
|
|
- BigDecimal chaRate = null;
|
|
|
+ BigDecimal chaRate = BigDecimal.ZERO;
|
|
|
if ("open_short".equals(side)) {
|
|
|
chaRate = new BigDecimal(last).divide(new BigDecimal(jsonObject.getString("price")), 4, RoundingMode.HALF_UP).multiply(BigDecimal.valueOf(100)).setScale(2, RoundingMode.HALF_UP);
|
|
|
} else if ("open_long".equals(side)) {
|
|
|
@@ -586,12 +594,16 @@ public class CoinServiceImpl implements CoinService {
|
|
|
|
|
|
jsonObject.put("last", last);
|
|
|
jsonObject.put("lastStyle", " style=\"color:#252B31;background-color:#C4ADE9;font-weight:bold;\"");
|
|
|
- jsonObject.put("chaRate", chaRate != null ? chaRate : "--");
|
|
|
+ jsonObject.put("chaRate", chaRate);
|
|
|
jsonObject.put("chaRateStyle", " style=\"color:#FFFFFF;background-color:#5EA294;\"");
|
|
|
} catch (Exception ex) {
|
|
|
throw new RuntimeException(ex);
|
|
|
}
|
|
|
})).join();
|
|
|
+
|
|
|
+ if (chaRateSort != 0) {
|
|
|
+ Collections.sort(result, (o1, o2) -> chaRateSort * (((JSONObject) o1).getBigDecimal("chaRate").compareTo(((JSONObject) o2).getBigDecimal("chaRate"))));
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
@@ -599,7 +611,7 @@ public class CoinServiceImpl implements CoinService {
|
|
|
*
|
|
|
* @param result
|
|
|
*/
|
|
|
- private void renderMainSearch4AllPositionv2(JSONArray result) {
|
|
|
+ private void renderMainSearch4AllPositionv2(JSONArray result, Integer unrealizedPLSort) {
|
|
|
forkJoinPool4.submit(() -> result.parallelStream().forEach(e -> {
|
|
|
JSONObject jsonObject = (JSONObject) e;
|
|
|
|
|
|
@@ -638,6 +650,10 @@ public class CoinServiceImpl implements CoinService {
|
|
|
jsonObject.put("marketPriceStyle", " style=\"color:#252B31;background-color:#C4ADE9;font-weight:bold;\"");
|
|
|
|
|
|
})).join();
|
|
|
+
|
|
|
+ if (unrealizedPLSort != 0) {
|
|
|
+ Collections.sort(result, (o1, o2) -> unrealizedPLSort * (((JSONObject) o1).getBigDecimal("unrealizedPL").compareTo(((JSONObject) o2).getBigDecimal("unrealizedPL"))));
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
/**
|