新增(移动)一些应该放在“管理”形成列表管理,而非放在“设置”形成单一配置的内容
This commit is contained in:
@@ -233,7 +233,7 @@ public class EmoneyIndexScraper {
|
||||
|
||||
try {
|
||||
Files.writeString(
|
||||
Path.of("./conf/extra/nonParamsIndexDetail." + detail.getNameCode() + ".json"),
|
||||
Path.of("./resources/conf/extra/nonParamsIndexDetail." + detail.getNameCode() + ".json"),
|
||||
MAPPER.valueToTree(detail).toPrettyString());
|
||||
} catch (IllegalArgumentException | IOException e) {
|
||||
// TODO Auto-generated catch block
|
||||
|
||||
@@ -4,8 +4,10 @@ import quant.rich.emoney.EmoneyAutoApplication;
|
||||
import quant.rich.emoney.client.EmoneyClient;
|
||||
import quant.rich.emoney.client.WebviewClient;
|
||||
import quant.rich.emoney.client.WebviewClient.WebviewResponseWrapper;
|
||||
import quant.rich.emoney.util.SmartResourceResolver;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.nio.file.Files;
|
||||
import java.nio.file.Path;
|
||||
import java.util.Map.Entry;
|
||||
@@ -21,6 +23,8 @@ import org.springframework.boot.test.context.SpringBootTest;
|
||||
import org.springframework.test.context.ContextConfiguration;
|
||||
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
||||
|
||||
import io.micrometer.core.instrument.util.IOUtils;
|
||||
|
||||
@SpringBootTest
|
||||
@ContextConfiguration(classes = EmoneyAutoApplication.class)
|
||||
@RunWith(SpringJUnit4ClassRunner.class)
|
||||
@@ -31,8 +35,8 @@ public class RelativeEmoneyScraper {
|
||||
|
||||
@Test
|
||||
void test() throws Exception {
|
||||
|
||||
String js = Files.readString(Path.of("./conf/extra/indexJs.js"));
|
||||
|
||||
String js = IOUtils.toString(SmartResourceResolver.loadResource("./conf/extra/indexJs.js"), StandardCharsets.UTF_8);
|
||||
|
||||
String jsArrayText;
|
||||
Matcher m = nonParamsIndexDetailPattern.matcher(js);
|
||||
|
||||
38
src/test/java/quant/rich/SmartResourceLoaderTest.java
Normal file
38
src/test/java/quant/rich/SmartResourceLoaderTest.java
Normal file
@@ -0,0 +1,38 @@
|
||||
package quant.rich;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import quant.rich.emoney.EmoneyAutoApplication;
|
||||
import quant.rich.emoney.client.EmoneyClient;
|
||||
import quant.rich.emoney.client.WebviewClient;
|
||||
import quant.rich.emoney.client.WebviewClient.WebviewResponseWrapper;
|
||||
import quant.rich.emoney.util.SmartResourceResolver;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.nio.file.Files;
|
||||
import java.nio.file.Path;
|
||||
import java.util.Map.Entry;
|
||||
import java.util.regex.Matcher;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
import javax.script.ScriptEngine;
|
||||
import javax.script.ScriptEngineManager;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
import org.springframework.test.context.ContextConfiguration;
|
||||
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
||||
|
||||
@SpringBootTest
|
||||
@ContextConfiguration(classes = EmoneyAutoApplication.class)
|
||||
@RunWith(SpringJUnit4ClassRunner.class)
|
||||
@Slf4j
|
||||
public class SmartResourceLoaderTest {
|
||||
|
||||
|
||||
@Test
|
||||
void test() throws Exception {
|
||||
|
||||
SmartResourceResolver.loadResource("/conf/system/proxy.json");
|
||||
|
||||
}
|
||||
}
|
||||
@@ -1,9 +1,8 @@
|
||||
package quant.rich;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.nio.file.Files;
|
||||
import java.nio.file.Path;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
@@ -11,17 +10,32 @@ import java.util.regex.Matcher;
|
||||
import java.util.regex.Pattern;
|
||||
import org.graalvm.polyglot.*;
|
||||
|
||||
import com.fasterxml.jackson.databind.DeserializationFeature;
|
||||
import com.fasterxml.jackson.databind.JsonNode;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import com.fasterxml.jackson.databind.node.ArrayNode;
|
||||
|
||||
import io.micrometer.core.instrument.util.IOUtils;
|
||||
import quant.rich.emoney.entity.config.SmartViewWriter;
|
||||
import quant.rich.emoney.pojo.dto.IndexDetail;
|
||||
import quant.rich.emoney.pojo.dto.NonParamsIndexDetail;
|
||||
import quant.rich.emoney.util.SmartResourceResolver;
|
||||
|
||||
|
||||
public class TestIndexJsMatch {
|
||||
|
||||
private static final ObjectMapper MAPPER = new ObjectMapper();
|
||||
private static final SmartViewWriter writer = new SmartViewWriter();
|
||||
|
||||
|
||||
static {
|
||||
MAPPER.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
|
||||
}
|
||||
|
||||
public static void main(String[] args) throws IOException {
|
||||
String script = Files.readString(Path.of("./conf/extra/indexJs.js"), StandardCharsets.UTF_8);
|
||||
//String script = Files.readString(Path.of("./conf/extra/indexJs.js"), StandardCharsets.UTF_8);
|
||||
|
||||
String script = IOUtils.toString(SmartResourceResolver.loadResource("./conf/extra/indexJs.js"), StandardCharsets.UTF_8);
|
||||
|
||||
/** 一般来说如果要匹配,只会匹配出一个,但是为了保险起见还是做一个 List 来存储 */
|
||||
|
||||
@@ -30,6 +44,16 @@ public class TestIndexJsMatch {
|
||||
System.out.println("✔ 匹配数组,共 " + array.size() + " 个对象");
|
||||
for (JsonNode obj : array) {
|
||||
System.out.println(obj.toPrettyString());
|
||||
if (!obj.has("nameCode")) continue;
|
||||
String nameCode = obj.get("nameCode").asText();
|
||||
// 载入已有本地文件填充 original 字段
|
||||
String path = "./conf/extra/indexDetail/nonParams/" + nameCode + ".json";
|
||||
InputStream stream = SmartResourceResolver.loadResource(path);
|
||||
NonParamsIndexDetail detail = MAPPER.readValue(stream, NonParamsIndexDetail.class);
|
||||
detail.setOriginal(obj.toString());
|
||||
|
||||
String joString = MAPPER.writerWithView(IndexDetail.class).writeValueAsString(detail);
|
||||
SmartResourceResolver.saveText(path, joString);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user